# Before runtime reproduction for [#24136](https://github.com/pingdotgg/t3code/issues/24136)
Machine: fs-23 (Linux x64)
SHA: [fef851bee0](https://github.com/pingdotgg/t3code/commit/fef851bee09102641061aeb78a3092c2ba2c72ab)
Worktree: /home/ubuntu/wt/issue-24136
Isolated state: /home/ubuntu/wt/issue-24136/.t3/userdata
Transport: authenticated WebSocket RPC, orchestrationProtocol=2; real Codex gpt-6.1-sol provider; actual interval scheduler, not runNow.

Exact sequence (UTC):
10:49:16.300 seed run ordinal 1 completed.
10:49:24.714 schedule created, interval everyMs=60000; nextRunAt=10:50:24.714.
10:49:24.768 thread.settle committed; settledOverride=settled, settledAt=10:49:24.768.
10:50:28.094 scheduler delivered scheduled-task-message:schedule-issue-24136:1792839028048:scheduled, creating run ordinal 2.
10:50:28.306 run 2 started.
10:50:33.000–33.484 t3_thread_read: status=running, activeRunId=run:thread:thread-issue-24136:ordinal:2, settled=false, settledAt=null; recentRuns includes completed ordinal 1.
10:50:35.316–35.361 t3_thread_organize input and exact output:
{"threadId": "thread-issue-24136", "action": "mark_unread"}
[{"type": "text", "text": "{\"_tag\":\"OrchestratorMcpFailure\",\"code\":\"orchestration_error\",\"message\":\"Thread thread-issue-24136 has no completed run to mark unread.\"}"}]
10:50:37.197 run 2 completed.
10:50:43.959–43.973 external RPC control thread.mark-unread after completion succeeded, sequence=79.

Source explanation: Orchestrator.ts:3063 reads projection.runs.at(-1)?.completedAt, rejecting when latest run is active even if earlier run completed. No implementation or race fix tested.

Recovery: no origin remote branches matching 24136; git cat-file -t 0861f5e8b2 failed; git fetch origin 0861f5e8b2 failed: could not find remote ref. Reporter PR supplied by lead was not checked out or modified.

FRICTION
Initial WebSocket handshake returned 426 because helper used orchestrationProtocol=v2; corrected to 2. Initial thread creation used unsupported creationSource=user; corrected to web. Both failures preserved in logs. RPC projection omits tool output; orchestration.getTurnItem retrieved full persisted outputs. Dev runner initially left child processes visible during asynchronous shutdown; subsequent signal attempts returned No such process. Final cleanup verification recorded separately.
No browser, public writes, code edits, PR, merge, or other-machine access. No live ~/.t3 state opened; --no-seed used. Worktree preserved.

Provenance: preserved original runtime report; not rerun by evidence agent. The external post-completion control is explicitly separate from the failed active-turn attempt.
