fix(mcp): exempt COPILOT review jobs from the done verify-gate #58

Merged
janpeter merged 1 commit from claude/mcp-review-done-gate into main 2026-06-16 22:34:02 +02:00
Owner

Fix-forward op de unified-ReviewLog-rollout (na scrum4me-mcp#57). De live canary op 154 vond een pre-existing done-gate-bug (NIET in #57-code; update-job-status.ts bewoog niet mee toen review-jobs COPILOT-dispatchbaar werden):

Probleem: update_job_status('done') exempteerde idee-jobs van de task-verify-gate, maar IDEA_REVIEW_PLAN alleen bij source=SYSTEM, en PR_REVIEW/SPEC_REVIEW/TASK_REVIEW helemaal niet. dispatch_job maakt review-jobs met source=COPILOT → die vielen in de generieke checkVerifyGate (verify_result=null) → job eindigde FAILED ondanks een geslaagde review (ReviewLog + Forgejo-post + get_review allemaal correct). Phase 2/3 ontsnapten omdat die jobs MANUAL waren (eigen exempt-tak).

Canary-bewijs (154, prod): TAK A IDEA_REVIEW_PLAN job FAILED update_job_status_done_rejected_by_task_verify_gate_for_idea_review_plan; TAK B PR_REVIEW job FAILED ..._verify_required_after_successful_pr_review. Beide: CODEX-claim OK, ReviewLog-rij OK (idea_id resp. pr_commit_id), get_review state=reviewed OK.

Fix: review-kinds (IDEA_REVIEW_PLAN + PR/SPEC/TASK_REVIEW) skippen de verify-gate + git-push ongeacht source — ze completeren via hun eigen sink. IDEA_GRILL/IDEA_MAKE_PLAN blijven onvoorwaardelijk exempt (regressietest toegevoegd). source=ORCHESTRATOR review-jobs blijven WEL door de gate (behoudt de bestaande orchestrator-test/verify-pipeline). MANUAL blijft via de eerdere tak.

Verify: nieuwe __tests__/update-job-status-review-kinds.test.ts (4 COPILOT-kinds → DONE + IDEA_GRILL+ORCHESTRATOR-regressie); npm test = 854 groen; tsc --noEmit clean; bestaande gate/orchestrator/idea-review/manual-tests groen.

Na merge: codex-workers (154+max2) rebuilden + mini-recanary om job->DONE te bevestigen.

🤖 Generated with Claude Code

Fix-forward op de unified-ReviewLog-rollout (na scrum4me-mcp#57). De live canary op 154 vond een **pre-existing** done-gate-bug (NIET in #57-code; update-job-status.ts bewoog niet mee toen review-jobs COPILOT-dispatchbaar werden): **Probleem:** `update_job_status('done')` exempteerde idee-jobs van de task-verify-gate, maar `IDEA_REVIEW_PLAN` alleen bij `source=SYSTEM`, en `PR_REVIEW`/`SPEC_REVIEW`/`TASK_REVIEW` helemaal niet. `dispatch_job` maakt review-jobs met `source=COPILOT` → die vielen in de generieke `checkVerifyGate` (verify_result=null) → **job eindigde FAILED ondanks een geslaagde review** (ReviewLog + Forgejo-post + get_review allemaal correct). Phase 2/3 ontsnapten omdat die jobs MANUAL waren (eigen exempt-tak). **Canary-bewijs (154, prod):** TAK A IDEA_REVIEW_PLAN job FAILED `update_job_status_done_rejected_by_task_verify_gate_for_idea_review_plan`; TAK B PR_REVIEW job FAILED `..._verify_required_after_successful_pr_review`. Beide: CODEX-claim OK, ReviewLog-rij OK (idea_id resp. pr_commit_id), get_review state=reviewed OK. **Fix:** review-kinds (IDEA_REVIEW_PLAN + PR/SPEC/TASK_REVIEW) skippen de verify-gate + git-push ongeacht source — ze completeren via hun eigen sink. IDEA_GRILL/IDEA_MAKE_PLAN blijven onvoorwaardelijk exempt (regressietest toegevoegd). `source=ORCHESTRATOR` review-jobs blijven WEL door de gate (behoudt de bestaande orchestrator-test/verify-pipeline). MANUAL blijft via de eerdere tak. **Verify:** nieuwe `__tests__/update-job-status-review-kinds.test.ts` (4 COPILOT-kinds → DONE + IDEA_GRILL+ORCHESTRATOR-regressie); `npm test` = 854 groen; `tsc --noEmit` clean; bestaande gate/orchestrator/idea-review/manual-tests groen. Na merge: codex-workers (154+max2) rebuilden + mini-recanary om job->DONE te bevestigen. 🤖 Generated with [Claude Code](https://claude.com/claude-code)
IDEA_GRILL/IDEA_MAKE_PLAN blijven onvoorwaardelijk exempt; de review-kinds zijn
exempt behalve source=ORCHESTRATOR (behoudt de orchestrator-verify-gate). Reviews
hebben geen task/worktree/verify_result/branch — ze completeren via hun eigen sink
(submit_review/post_pr_review/update_idea_plan_reviewed). Canary 154 vond dit:
COPILOT-gedispatchte review-jobs eindigden FAILED ondanks geslaagde review.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Sign in to join this conversation.
No reviewers
No labels
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
janpeter/scrum4me-mcp!58
No description provided.