fix(bin): document accepted contribution verdict actors - #6307
Conversation
|
…tain, fleet, maintainer, and nobody in command-emitted help and refusal output. Three focused regressions passed; all three extra-actor mutations were rejected. ShellCheck, syntax, and diff checks passed. Production code remains unchanged
|
Speaking as Kun's firstmate: this is merged. Thank you @mremond — really appreciate you taking the time on this. contract-class: restore — documents the existing closed actor set ( VISION: One captain / peace of mind align (first attempt stops failing on an unnamed closed set). Authority explicit align (documents existing vocabulary; does not widen grants). Scripts own mechanics align. Restart/delegation/fleet/scope: n/a or align (docs-only on an existing operation). Attestation: MATCH ( |
Intent
Fix upstream issue #5225 (labelled ready-for-pr, contract-class restore, docs-only on an existing operation):
bin/fm-contributions.sh verdictrequires an actor argument but its usage line shows only an unnamed placeholder and its refusal says only that the required actor is invalid, so a caller cannot discover the four accepted values (captain, fleet, maintainer, nobody) without reading the source. The maintainer asked for the set to be documented on the command itself only, not copied into AGENTS.md, bearings, or a second doc, and preferred proving the documented set through the command rather than by asserting source text.Keep the change minimal and restore-class: no new default, no new value, no behaviour change beyond the help text and the refusal message naming the accepted values. Open the pull request the same day with Fixes #5225 in its description, with a current no-mistakes attestation and no conflicts with main at opening.
What Changed
captain,fleet,maintainer, andnobodyinfm-contributions.sh verdicthelp and invalid-actor errors, without changing validation behavior.Fixes #5225
Risk Assessment
✅ Low: The change documents the existing actor set without altering validation, ownership checks, or persistence behavior, and adds focused command-level regression coverage.
Testing
All live CLI scenarios passed. The focused suite passed after correcting temporary-home placement, including the previously failing timing check. CLI transcripts and persisted JSON provide the user-facing evidence; no graphical surface applies.
Evidence: Live CLI transcript and baseline reproduction
Source: Live CLI transcript and baseline reproduction
Evidence: Persisted verdicts for all four actors
Source: Persisted verdicts for all four actors
Pipeline
Updates from git push no-mistakes
✅ **intent** - passed
✅ No issues found.
✅ **Rebase** - passed
✅ No issues found.
✅ **Review** - passed
✅ No issues found.
✅ **Test** - passed
✅ No issues found.
python3 ~/.no-mistakes/evidence/01M3VG1X6F50QPEEWXVJPGFS9T/drive-actor-contract.py: 24 real CLI invocations with disposable data; reproduced both original messages at base 589ccec8.bin/fm-test-run.sh tests/fm-contributions.test.sh --json ~/.no-mistakes/evidence/01M3VG1X6F50QPEEWXVJPGFS9T/contributions-suite.json: initial nested-temp setup produced three home-guard failures and one timing failure.Executedvalidate_secondmate_hometo confirm that homes nested inside the repository are refused.bin/fm-test-run.sh tests/fm-contributions.test.sh --json ~/.no-mistakes/evidence/01M3VG1X6F50QPEEWXVJPGFS9T/contributions-suite-rerun.json: passed using the runner's normal ephemeral temp layout.Removed disposable fixtures and verified the unchanged target commit and clean worktree.✅ **Document** - passed
✅ No issues found.
✅ **Lint** - passed
✅ No issues found.
✅ **Push** - passed
✅ No issues found.