Conversation
`pre_render_for_prompt` was gated entirely on `FormatMode::Unattended`, which meant tools using `Json`, or `FunctionCall` parameter styles would not show the tool call arguments before the approval prompt whenever `run = "ask"`, unless `format = "unattended"` was set. `FormatMode::Ask` exists solely to defer side-effecting *custom* formatters (user-controlled shell commands) until after the user has approved the call. Built-in styles are pure transformations with no side effects, so deferring them serves no safety purpose and actively harms the UX: the user cannot make an informed approval decision without seeing the call arguments. The fix changes the pre-render gate to branch on `ParametersStyle`: `Custom` still respects `FormatMode`; `Json`, `FunctionCall`, and `Off` always pre-render regardless of `format_mode`. Doc comments on `ToolsDefaultsConfig::format` and `ToolConfig::format` are updated to state clearly that the field only affects `ParametersStyle::Custom`. Signed-off-by: Jean Mertz <git@jeanmertz.com>
Signed-off-by: Jean Mertz <git@jeanmertz.com>
Signed-off-by: Jean Mertz <git@jeanmertz.com>
Signed-off-by: Jean Mertz <git@jeanmertz.com>
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.
pre_render_for_promptwas gated entirely onFormatMode::Unattended, which meant tools usingJson, orFunctionCallparameter styles would not show the tool call arguments before the approval prompt wheneverrun = "ask", unlessformat = "unattended"was set.FormatMode::Askexists solely to defer side-effecting custom formatters (user-controlled shell commands) until after the user has approved the call. Built-in styles are pure transformations with no side effects, so deferring them serves no safety purpose and actively harms the UX: the user cannot make an informed approval decision without seeing the call arguments.The fix changes the pre-render gate to branch on
ParametersStyle:Customstill respectsFormatMode;Json,FunctionCall, andOffalways pre-render regardless offormat_mode.Doc comments on
ToolsDefaultsConfig::formatandToolConfig::formatare updated to state clearly that the field only affectsParametersStyle::Custom.