perf(subagents): bound the spawn tool schema - #85
Merged
Conversation
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
subagent_spawnrole prose with a deterministic selection projection: role name, bounded purpose, capability class, and default effortCloses #62.
Design research and peer comparison: #84.
Measured surface
subagent_spawnsurfaceAll 128 role names remain valid enum values. The parent-facing role directory is capped at 4 KiB and reports omitted summaries without weakening runtime validation.
Representative model feature probe
One non-lockstep feature probe used
seal/deepseek-v4-flash-0731-baiduwith the same explicit read-only delegation prompt against baseaf950d5and this branch.explorerand successfully calledsubagent_spawnThis is a feature probe, not a general quality benchmark. It establishes that the compressed projection preserved role selection in a representative model and reduced the request surface in the expected direction. An initial CLI allowlist attempt was invalid because the dynamic tool was not activated; it was aborted and excluded.
Validation
bun run checkgit diff --checkThe existing 12 Effect type warnings in
extensions/file-searchremain unchanged.