Fix Claude and Codex follow-up progress reporting - #16217
Conversation
Always report INPROGRESS for explicit Claude and Codex prompt submissions, preserving prompt boundaries through the task update queue even when cached state is stale after finish-task. Co-Authored-By: Warp <agent@warp.dev>
|
I'm starting a first review of this pull request. You can view the conversation on Warp. I completed the review and no human review was requested for this pull request. Comment Powered by Oz |
There was a problem hiding this comment.
Overview
This PR threads prompt-submit status context through CLI agent session updates so explicit Claude Code and plugin-backed Codex follow-ups can force a fresh InProgress task update even when the local delivered-state cache still says InProgress. The queue changes preserve existing token and normal progress deduplication while adding focused tests for cached progress, in-flight updates, ordering, and token behavior.
Concerns
No blocking concerns found. The added/changed comments explain non-obvious cache and lifecycle behavior rather than restating the code, and the new coverage is at the appropriate unit/model level for the changed queue and event-propagation logic. No approved spec context was available, and the security pass found no security-relevant issues.
Verdict
Found: 0 critical, 0 important, 0 suggestions
Approve
Comment /warp-agent-review on this pull request to retrigger a review (up to 3 times on the same pull request).
Powered by Oz
Description
Explicit prompt submissions now bypass cached INPROGRESS deduplication for Claude Code and plugin-backed Codex. A harness can call finish-task before its stop hook fires, leaving the server completed while the client cache still records INPROGRESS. A follow-up in that interval must report progress again rather than trust the cache.
Forced updates retain their boundaries through the serialized queue, including behind in-flight requests. Other status updates and conversation-token deduplication keep their existing behavior. No server or plugin changes are required.
This addresses suppressed progress reporting only. The original turn's late stop can still close a newer follow-up; turn ordering remains separate work. Codex's legacy OSC 9 fallback is unchanged because it emits no prompt-start event.
Linked Issue
Investigated from staging run 01a0f2e7-b6d5-7579-bfd2-f7a6a071d7d9.
Testing
The original issue isn't easily reproducible due to timing, but tested locally with e2e tests a few times and tests passed on the hot follow up
Agent Mode
Changelog Entries for Stable
CHANGELOG-OZ: Claude Code and Codex follow-ups now report resumed activity even when the client retains a stale in-progress state.
Agent artifacts
Investigation and implementation conversation
Co-Authored-By: Warp agent@warp.dev