Conversation
A question the user had just answered showed a red "failed" badge. The cause is the transport: AskUserQuestion is answered by DENYING the tool call and handing the user's choice back as the denial reason (the PreToolUse hook), so the CLI reports it as an error result — and the panel paints any error result red. Two invisible consequences rode along: histEntry.failed was set, so restored history showed the failure too, and every question ever asked was counted as "toolErr" in metrics. Fixed where node forwards the result rather than in the UI, so the badge, the history entry and the metric all agree. Node now keeps a tool_use id → tool name map beside the existing id → counter map and suppresses the error flag for AskUserQuestion, with a comment explaining that the deny is our transport and not a failure. Unanswered questions are covered too: cancelling or stopping the turn is not a failure either. Verified in the desktop app on all three answer paths — clicking an option, typing into the card's own free-text box (the reported case), and cancelling via Stop: isError false, no badge, and the answer reaches the model. Also registers the new "questions" suite with run_ai_test_suite and puts QF-1/QF-6 in the quick set so this cannot regress unnoticed.
|
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.



A question the user had just answered showed a red "failed" badge. The cause is the transport: AskUserQuestion is answered by DENYING the tool call and handing the user's choice back as the denial reason (the PreToolUse hook), so the CLI reports it as an error result — and the panel paints any error result red. Two invisible consequences rode along: histEntry.failed was set, so restored history showed the failure too, and every question ever asked was counted as "toolErr" in metrics.
Fixed where node forwards the result rather than in the UI, so the badge, the history entry and the metric all agree. Node now keeps a tool_use id → tool name map beside the existing id → counter map and suppresses the error flag for AskUserQuestion, with a comment explaining that the deny is our transport and not a failure. Unanswered questions are covered too: cancelling or stopping the turn is not a failure either.
Verified in the desktop app on all three answer paths — clicking an option, typing into the card's own free-text box (the reported case), and cancelling via Stop: isError false, no badge, and the answer reaches the model.
Also registers the new "questions" suite with run_ai_test_suite and puts QF-1/QF-6 in the quick set so this cannot regress unnoticed.