| name | approve-verification |
| description | Human gate for reviewing and approving full verification after Phase 5 |
| user-invocable | true |
/approve-verification -- Human Gate for Full Verification
This command implements the human gate between Phase 5 (partial verification) and Phase 6 (full verification). The analysis pauses here until a human explicitly approves.
Arguments: $ARGUMENTS (ignored)
Step 1: Verify State
-
Read STATE.md. Confirm the current status is human_gate and the current phase is 5.
- If the status is NOT
human_gate, report: "The analysis is not at the human gate. Current status: {status}, phase: {phase}. This command can only be run after Phase 4b review passes." Stop.
- If Phase 4b has not passed review, report: "Phase 5 review has not yet passed. Run the Phase 5 review first." Stop.
-
Read analysis_config.yaml. Confirm verification.approved_for_verification is false.
- If already
true, report: "Verification has already been approved. Phase 6 can proceed." Stop.
Step 2: Gather Review Materials
Read the following files and present a summary to the user:
Draft Analysis Note
- Read the latest
ANALYSIS_NOTE_DRAFT*.md from phase5_inference/5b_partial/exec/
- Summarize: title, analysis question, key methodology choices, 10% observed results, main conclusions
Verification Checklist
- Read the latest
VERIFICATION_CHECKLIST*.md from phase5_inference/5b_partial/exec/
- Present each checklist item with its status (passed/failed/not evaluated)
The checklist should cover:
- Background model validated (closure tests pass in all validation regions)
- Systematic uncertainties evaluated and fit model stable
- Expected results physically sensible
- Signal injection tests confirm fit recovers injected signals
- 10% partial verification shows no unexpected pathologies
- All agent review cycles resolved (arbiter PASS)
- Draft analysis note reviewed and considered publication-ready modulo full observed results
4-bot Review Result
- Read the latest arbiter file from
phase5_inference/5b_partial/review/arbiter/
- Summarize the arbiter's decision and any residual Category B/C items
Key Results Summary
- Read the latest
INFERENCE_PARTIAL*.md from phase5_inference/5b_partial/exec/
- Report: expected vs 10% observed results, goodness-of-fit, any notable nuisance parameter pulls
Step 3: Present to User
Format the summary clearly:
================================================================
VERIFICATION APPROVAL REQUEST -- {analysis_name}
================================================================
DRAFT ANALYSIS NOTE SUMMARY
----------------------------
{summary of the draft note -- 5-10 lines covering the analysis,
methodology, and 10% results}
VERIFICATION CHECKLIST
--------------------
[x] 1. Background model validated -- closure tests pass in all validation regions
[x] 2. Systematic uncertainties evaluated -- fit model stable
[x] 3. Expected results physically sensible
[x] 4. Signal injection tests pass
[x] 5. 10% partial verification -- no unexpected pathologies
[x] 6. Agent review cycles resolved -- arbiter PASS
[x] 7. Draft analysis note reviewed -- publication-ready
4-BOT REVIEW RESULT
--------------------
Decision: PASS
Iterations: {N}
Residual items: {list any B/C items}
KEY RESULTS (10% data)
-----------------------
Expected: {expected result}
Observed (10%): {observed result}
Goodness-of-fit: {GoF metric}
Notable NP pulls: {any pulls > 1 sigma}
================================================================
ARTIFACTS FOR DETAILED REVIEW:
- Draft note: phase5_inference/5b_partial/exec/ANALYSIS_NOTE_DRAFT*.md
- Partial results: phase5_inference/5b_partial/exec/INFERENCE_PARTIAL*.md
- Expected results: phase5_inference/5a_expected/exec/INFERENCE_EXPECTED*.md
- Checklist: phase5_inference/5b_partial/exec/VERIFICATION_CHECKLIST*.md
- Arbiter review: phase5_inference/5b_partial/review/arbiter/
================================================================
Please review the above and respond with one of:
APPROVE -- Proceed to full verification (Phase 6)
REQUEST_CHANGES -- Send Phase 4b back for revisions (describe what to change)
HALT -- Stop the analysis (provide reason)
Step 4: Wait for User Response
The user will respond with one of three decisions. Handle each:
APPROVE
- Update
analysis_config.yaml: set verification.approved_for_verification: true
- Update
STATE.md:
- Phase 5 status:
passed (with note: "human approved")
- Current phase:
6
- Status:
executing
- Timestamp
- Report: "Full verification approved. Proceeding to Phase 6."
- Begin Phase 4c execution:
- Spawn
systematics-fitter to run the full fit on complete dataset
- Spawn
cross-checker to validate consistency
- Then run 1-bot review (with plot-validator)
- Continue the pipeline through Phase 5
REQUEST_CHANGES
- Update
STATE.md:
- Status:
executing (Phase 5 re-execution)
- Add note: "Human requested changes: {description}"
- Timestamp
- Re-spawn the Phase 4b executor via SendMessage with:
- All original inputs
- The human's change request as additional input
- The previous draft note and partial results
- Instruction: "The human reviewer has requested changes before approving verification. Address the following: {user's description}. Produce updated artifacts."
- After executor completes, re-run 4-bot review (with plot-validator) for Phase 4b
- On PASS, return to the human gate (present the updated summary)
HALT
- Update
STATE.md:
- Status:
halted
- Add to Blockers: "Human halted analysis at verification gate. Reason: {user's reason}"
- Timestamp
- Update
analysis_config.yaml: verification.approved_for_verification: false
- Report: "Analysis halted at human request. Reason: {reason}. To resume, the user must address the concerns and re-run
/approve-verification."