Skip to content

ci(review): make posting the review the mandatory final step#121

Merged
alexander-wenzel-dev merged 1 commit into
mainfrom
ci/pr-review-force-post
Jul 6, 2026
Merged

ci(review): make posting the review the mandatory final step#121
alexander-wenzel-dev merged 1 commit into
mainfrom
ci/pr-review-force-post

Conversation

@alexander-wenzel-dev

Copy link
Copy Markdown
Owner

Changes

  • claude-pr-review.yml: the review prompt now states that posting the review is the final and mandatory action and that a plain-text reply is discarded. Applied to both branches (tag-mode tracking comment, and dispatch-mode gh pr comment), and both now say to post even when there are no blocking issues.
  • .claude/commands/review-pr.md: the same rule is added to the skill, so it holds for local /review-pr runs too, not just CI.

Why

On PR #120 the review job ended after dispatching the reviewer subagents without posting the summary. The tracking comment stayed at "Review in progress" while the job reported success. The run's own result block confirms the cause: "subtype": "success", "is_error": false, num_turns: 18. It was a clean voluntary stop, not a max-turns error or the 20-minute timeout. The agent's final message was plain text instead of a call to the tracking-comment update tool, and the action reports the CLI's clean exit as success. This matches the injected instruction the action itself logs ("Respond in a single comment by updating your initial comment"). Same failure was seen on #119.

How tested

uv run pre-commit run actionlint --all-files
Lint GitHub Actions workflow files.......................................Passed

Runtime behaviour can only be observed on the next /review-pr run, since the change is prompt text delivered to the action.

Risks

Low, and honest about limits. This is a prompt-reliability nudge, not a guarantee. The root cause is model non-determinism at the end of a long subagent chain, so a stall can still recur; the change reduces its likelihood by making the final-post requirement explicit and mode-aware. No code, no merge-gate surface, no permissions changed.

The PR-review job could end after dispatching the reviewer subagents without
posting the summary, leaving the tracking comment at "in progress" while the
action still reported success, because the CLI exits cleanly (is_error false,
not a max-turns error) even when the final message is plain text instead of a
post. The prompt now states that posting is the final action and a plain-text
reply is discarded, in both the tag-mode and dispatch branches, and the
review-pr skill carries the same rule so it holds for local runs too.
@alexander-wenzel-dev alexander-wenzel-dev merged commit cb2dd73 into main Jul 6, 2026
4 checks passed
@alexander-wenzel-dev alexander-wenzel-dev deleted the ci/pr-review-force-post branch July 6, 2026 17:08
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant