feat(tool-search): defer optional core toolsets safely - #73290
Open
richardclawbot wants to merge 1 commit into
Open
feat(tool-search): defer optional core toolsets safely#73290richardclawbot wants to merge 1 commit into
richardclawbot wants to merge 1 commit into
Conversation
Collaborator
Contributor
|
Thanks for the careful opt-in design and session-policy pinning work. Problems
Suggested changes
Automated hermes-sweeper review. |
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.
Why
Hermes currently ships every built-in tool schema eagerly even when large optional surfaces are not needed. On the RTrade profile, tool schemas account for roughly 62 KB of fixed prompt payload. This adds bounded progressive disclosure for reviewed optional core toolsets without changing default behavior or weakening the recovery/discovery kernel.
Design
tools.tool_search.defer_core_toolsetsforbrowser,cronjob,image_gen,tts, andvision.tool_callbefore checkpoints, middleware hooks, plugin policy, and loop guardrails so each observes the underlying tool.hermes prompt-sizewith raw/visible/deferred counts and bytes while retaining current skill and toolset attribution.Default
defer_core_toolsets: []is backward compatible.Verification
scripts/run_tests.shon the repaired candidate.git diff --checkpass.Risk / rollout
Opt-in only. Main risk is a deferred catalog becoming inconsistent with session policy; policy pinning and fail-closed regressions cover that boundary. Roll out first on an isolated profile, verify a fresh session can search/describe/call a deferred browser tool, then restart the gateway only after active workers drain. Revert the single commit and remove
defer_core_toolsetsto restore fully eager schemas.