# Stop and an unread Claude steer

Environment on both sides: web development client, Chromium, light theme, 1280 by 800 CSS pixels, independent fresh T3 homes with automatic database seeding disabled. Claude CLI 2.1.322; same provider configuration on both sides. Synthetic repositories and conversations only. Runtime model labels were concealed for privacy; thread delivery content was unchanged. Main stills show the top 640 CSS pixels of the viewport.

The generic replay agent cannot exercise Claude's prompt-UUID acknowledgement protocol, so this was a manual real-provider comparison.

## Setup and browser actions used

1. Install each checkout with `vp i`, then run `T3CODE_DEV_SEED=0 vp run dev`.
2. Run `python3 hold.py`. It binds 127.0.0.1:18907 and holds each response for 240 seconds.
3. Create a synthetic git repository, add it through `t3 project add`, and start a Claude thread through `t3 thread start` with the message `Reply READY.`.
4. Pair the browser to that checkout's own server and open the thread. Follow-up behavior is Steer (located in Settings / Chat on these commits). Close the thread details panel.
5. Type into `[data-testid=composer-editor]`:
   `Run exactly curl --max-time 300 http://127.0.0.1:18907/hold as a foreground Bash command with timeout 300000. Do not background it, do not run any other tools, and wait for its output.`
   The command itself was wrapped in Markdown backticks in the actual message.
6. Click `button[aria-label="Submit message"]`. Wait for Running curl and the endpoint's REQUEST_STARTED output, then wait at least five seconds after the command started.
7. Type `Codeword: PELICAN. Remember it, I will ask for it later.` into the same editor. Click `button[aria-label="Steer message"]`, then `button[aria-label="Stop generation"]` before the endpoint returns.
8. Wait for the cancelled badge and Run interrupted. Base: no delivery warning. Head: click the warning row `[role=button][aria-label^="Claude did not confirm"]` to expand its quoted message and resend guidance.
9. Ask `Was a codeword previously sent in this conversation? Reply with the codeword only, or NO_CODEWORD if none was received.` Both returned NO_CODEWORD.

Before each final still, two screenshots taken at least 500 milliseconds apart were pixel-identical. Videos show the curl, steer and Stop interaction; the head video includes expansion of the warning. The recall stills separately show that the fix does not restore the lost steer.

AI-assisted; verified with the tests and tools listed above.
