fix(ask): keep real options, badge recommended, restore tool results after reload #6
No reviewers
Labels
No labels
Agent
Ignore
Agent
In Progress
Agent
Planned
Agent
Planning
Agent
Ready
Agent
Triage
Compat
Breaking
Kind
Bug
Kind
Documentation
Kind
Enhancement
Kind
Feature
Kind
Security
Kind
Testing
Priority
Critical
Priority
High
Priority
Low
Priority
Medium
Reviewed
Confirmed
Reviewed
Duplicate
Reviewed
Invalid
Reviewed
Won't Fix
Status
Abandoned
Status
Blocked
Status
Need More Info
No milestone
No project
No assignees
2 participants
Notifications
Due date
No due date set.
Dependencies
No dependencies set
Reference
lucas/omp-deck!6
Loading…
Reference in a new issue
No description provided.
Delete branch "feat/t-70"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Fixes four bugs in the
askflow. The dialog's "Other"-option filter hid legitimate options; it is replaced by a pattern for free-text deferrals ("Something else", "Different (I'll explain)", …) that only ever checks the last option, in the newapps/web/src/lib/ask-options.ts.recommendednow reaches the dialog throughdeckSelect, so the RECOMMENDED badge shows, andASK_DESCRIPTIONstops telling agents that " (Recommended)" is added for them. The answered ask card now turns the chosen option green even when its label ends in " (Recommended)". When a session is reloaded from history,toolResultmessages now rebuildresult(content + details), so tool cards from earlier turns keep their output after reload, reconnect or session switch; the unusedresultContentfield is removed.Decisions
dialog.options[recommended] === opt. If the recommended option is itself the trailing deferral that gets filtered out, no badge is shown.tool_execution_endresult arrived first, it is kept when the matchingtoolResultmessage comes in afterwards.resultContentdid is no longer applied.Verification
cd apps/web && bun test src/lib: 137 pass, 0 fail (new keep/drop table forfilterOtherOptions; new tests for rebuilding results on reload).cd apps/server && bun test src/bridge: 343 pass, 0 fail.bun run typecheck: protocol, server and web all exit 0.ExtensionUIBridge.deckSelect(..., 0): the dialog-open frame carriesrecommended: 0; withundefinedthe key is absent.renderToStaticMarkup(AskTool):"A (Recommended)"→ that row is green with ▶.initSessionfrom[assistant toolCall, toolResult]→ the selectedBrow is green.renderToStaticMarkup(AskDialog)with options["Typed `details` + unchanged text", "Switch to JSON", "Web-only parse", "Something else"]andrecommended: 0: the first three are shown, option 0 has the RECOMMENDED badge, "Something else" is dropped, and the dialog's own "Other (type your own)" row follows.