Context
Deferred from PR #89 (surfaced in the @claude review there). PR #89 dedups the duplicate queued run a late @claude comment spawns, but does not address this related routing gap.
What to do
In .github/workflows/claude.yml, the post-step "Dispatch claude-code-review.yml on @claude review comment" decides whether to dispatch the dedicated review workflow by inspecting only github.event.comment.body / github.event.review.body — i.e. the original triggering event. It does not see @claude review requests that the session picked up later via the late-comment polling step in the prompt.
Result: if an @claude review arrives as a late comment while a session is already running, the active session absorbs it (and, post-#89, marks it 🚀 so its queued duplicate run skips), but the review workflow is never dispatched for that absorbed request — so no review happens.
"Done" looks like: a late-absorbed @claude review reliably triggers a claude-code-review.yml dispatch exactly once. Possible approaches:
- Have the agent itself dispatch (or signal a post-step to dispatch) the review when it absorbs an
@claude review during polling; or
- Have a post-step re-scan comments newer than the trigger for
@claude review and dispatch accordingly.
Whatever the approach, preserve the existing no-double-dispatch behavior and the dedup marker semantics from #89.
Why not now
Out of scope for #89, which is narrowly about preventing the duplicate queued run from re-handling an absorbed comment. This is a pre-existing gap (the dispatch step never inspected absorbed comments) and warrants its own change.
Context
Deferred from PR #89 (surfaced in the @claude review there). PR #89 dedups the duplicate queued run a late @claude comment spawns, but does not address this related routing gap.
What to do
In
.github/workflows/claude.yml, the post-step "Dispatch claude-code-review.yml on @claude review comment" decides whether to dispatch the dedicated review workflow by inspecting onlygithub.event.comment.body/github.event.review.body— i.e. the original triggering event. It does not see@claude reviewrequests that the session picked up later via the late-comment polling step in the prompt.Result: if an
@claude reviewarrives as a late comment while a session is already running, the active session absorbs it (and, post-#89, marks it 🚀 so its queued duplicate run skips), but the review workflow is never dispatched for that absorbed request — so no review happens."Done" looks like: a late-absorbed
@claude reviewreliably triggers aclaude-code-review.ymldispatch exactly once. Possible approaches:@claude reviewduring polling; or@claude reviewand dispatch accordingly.Whatever the approach, preserve the existing no-double-dispatch behavior and the dedup marker semantics from #89.
Why not now
Out of scope for #89, which is narrowly about preventing the duplicate queued run from re-handling an absorbed comment. This is a pre-existing gap (the dispatch step never inspected absorbed comments) and warrants its own change.