From d91a1d740c294ffe565f0da6d13a13edb7e3b9f3 Mon Sep 17 00:00:00 2001 From: Dan Shapiro <3732858+danshapiro@users.noreply.github.com> Date: Fri, 31 Jul 2026 16:46:04 -0700 Subject: [PATCH] feat(resume-dialog): remove the always-visible agent picker (kata 1ffd) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Outright removal, per user decision: the Agent dropdown and its "Unverified guess" hint paragraph are gone from ResumeSessionDialog. The parse-derived hint still drives the internal agent guess, and that guess now surfaces ONLY on the no-match escape hatch's "Resume anyway with {agent}" button — the guess drives, the button discloses, and the command form (e.g. "codex resume ") steers it. With no user-facing control left to set it, the agentTouched state is removed and the advisory prefill effect simplified. Tests: picker/hint removal assertions; parse-hint-driven disclosure on the escape hatch (v4 id shape -> claude; "codex resume " -> codex); server-evidence-wins and degraded/no-match guards unchanged. 🤖 Generated with [Amplifier](https://github.com/microsoft/amplifier) Co-Authored-By: Amplifier <240397093+microsoft-amplifier@users.noreply.github.com> --- src/components/ResumeSessionDialog.tsx | 33 +++------------ .../components/ResumeSessionDialog.test.tsx | 40 +++++++++++++------ 2 files changed, 32 insertions(+), 41 deletions(-) diff --git a/src/components/ResumeSessionDialog.tsx b/src/components/ResumeSessionDialog.tsx index d2cdea074..5d557f820 100644 --- a/src/components/ResumeSessionDialog.tsx +++ b/src/components/ResumeSessionDialog.tsx @@ -68,7 +68,6 @@ export function ResumeSessionDialog({ open, onClose, onNavigate }: ResumeSession const store = useStore() const [input, setInput] = useState('') const [agent, setAgent] = useState(providers[0]) - const [agentTouched, setAgentTouched] = useState(false) const [anywayCwd, setAnywayCwd] = useState('~') const [phase, setPhase] = useState({ kind: 'idle' }) // Inline error for confirming a cwd-less match with a blank cwd field. @@ -82,12 +81,14 @@ export function ResumeSessionDialog({ open, onClose, onNavigate }: ResumeSession // homeDir prefill never overwrites a USER-edited working directory. const cwdTouchedRef = useRef(false) - // Advisory hint pre-fills the picker; never overrides a manual choice. + // Advisory parse hint drives the internal agent guess. There is no visible + // picker (kata 1ffd): the guess surfaces only on the no-match escape hatch's + // "Resume anyway with {agent}" button, which is the disclosure point. useEffect(() => { - if (agentTouched || !input) return + if (!input) return const { hint } = parseResumeInput(input) if (hint && providers.includes(hint.provider)) setAgent(hint.provider) - }, [input, agentTouched]) + }, [input]) const finishResume = useCallback( (target: ResumeTarget, note: string) => { @@ -344,30 +345,6 @@ export function ResumeSessionDialog({ open, onClose, onNavigate }: ResumeSession }, 0) }} /> -
- - -
-

- Unverified guess — the session store decides the agent. -