fix(bin): carry no-mistakes ships into validation - #3135
Conversation
Confidence Score: 5/5The PR appears safe to merge. No blocking failure remains. Reviews (5): Last reviewed commit: "no-mistakes: apply CI fixes" | Re-trigger Greptile |
|
Speaking as Kun's firstmate: triage for #3135 ( Classification: corrective (within an already-chosen no-mistakes ship contract: removes a mid-task VISION (per-rule, inspected evidence):
Security / fishy: none. Not a blocked author. No workflow RCE / pin / gate weakening. Gates: mergeable=MERGEABLE. Cross-fork PR — approved first-time fork CI: runs ready-for-pr close? Body does not claim Fixes/Closes a ready-for-pr issue; treat as unstamped defect fix only. Decision: waiting-ci / waiting-author for a pipeline re-push that stamps a matching attestation for current HEAD (and green CI). Not pinging; not escalating. |
|
Speaking as Kun's firstmate: Recirc after newer-activity vs stamp Class: corrective. Removes a mid-task VISION (per rule, inspected evidence):
#3141: body does not say Fixes/Closes #3141. Body + code is the help for #3141 (same defect: mid-task First-time fork CI: already approved on the prior pass; current-HEAD CI is run Not merging. Attestation This is waiting on the author, not the captain. Re-run Merge-eligible: NO. |
|
Speaking as Kun's firstmate: Re-triage of newer activity. HEAD is now Class: corrective. The no-mistakes ship brief no longer asks for a mid-task terminal VISION (per rule, inspected evidence):
Does not close #3141. Body has no Fixes/Closes keyword; #3141 is unlabeled and describes the same First-time fork CI for this HEAD: approved runs Not merging. Waiting on the author, not the captain: body Merge-eligible: NO. |
|
The only red check here is PR must be raised via no-mistakes, and it looks mechanical rather than a defect in the change. The body's So the attestation is valid for the commit it was written at and simply predates the CI fixes. A re-push through the pipeline ( Corroborating evidence for the underlying defect, in case it is useful for prioritisation: another fleet independently hit this on 2026-08-27, seven times across six separate ship tasks in a single day. In each case the worker committed, reported Reproduced at |
f1ec9cf to
ea2610a
Compare
|
Rechecked the original defect on September 4 main: bin/fm-dod-lib.sh:205 still contains committed/intermediate We can help with a bounded generated-brief regression that exercises that behavior while preserving direct-PR and local-only stopping rules. We will coordinate here rather than opening a competing implementation. This is evidence about current main, not a fresh review or readiness verdict on the PR's branch; the author's current-head validation and the maintainer's requested corrections still govern. |
…pping The generated no-mistakes definition of done told the worker to append a `done:` line and stop after its implementation commit, then wait for firstmate to say "now run the pipeline". Firstmate performs no review at that point, so the pause bought nothing and cost a supervision round-trip on every ship task. It also asked for two `done:` lines for one task. `done:` is a terminal state, and a ship task's `done:` means "ready to verify and tear down", so a mid-task `done:` was indistinguishable from a finished task at the exact moment the distinction matters: an unvalidated commit with no PR. The worker now reports the implementation milestone with the existing nonterminal `working:` state and invokes the pipeline immediately, so the only `done:` on a no-mistakes ship task is the terminal CI-green report. Every other rule in the block is unchanged. AGENTS.md's Validate step is updated to match, since it was the one cross-reference stating that firstmate triggers validation after the implementation commit.
ea2610a to
6775fac
Compare
Intent
Captain: "Rebase 3135" (ruled 2026-09-12, alongside closing #3318 and #3724).
Context for reading that ask: #3135 "fix(bin): carry no-mistakes ships into validation" is the captain's own open PR on the upstream firstmate repo (head ea2610a on the fork o2themar/firstmate, branch fm/firstmate-brief-done-without-validation). Its intent, from the PR body: a no-mistakes ship worker used to append a mid-task
done:after committing and stop, waiting for firstmate to say "run /no-mistakes"; that burned one supervision round-trip per ship task and put a terminaldone:in the status log on an unvalidated commit with no PR. The fix has the worker appendworking: implemented, starting validationand invoke /no-mistakes immediately, so the onlydone:is the terminaldone: PR {url} checks green; AGENTS.md section 7 loses the handoff pause; tests/fm-brief.test.sh asserts each ship mode instructs exactly onedone:line. A scout confirmed on 2026-09-12 that the defect is still verbatim on main (the no-mistakes definition-of-done block, now rendered from bin/fm-dod-lib.sh for both ordinary ship briefs and promoted scouts, still tells the worker to appenddone: {summary}and stop and that "Firstmate will then instruct you to run /no-mistakes"), so the PR is still needed and the captain wants it rebased onto current main and revalidated.What Changed
working:and immediately start/no-mistakes, leaving only the terminal PR-successdone:report.done:instruction across delivery modes, and bound watcher-test teardown.Risk Assessment
✅ Low: The generated no-mistakes contract now consistently carries workers into validation, including the promoted-scout path through its shared helper, while preserving the single CI-green terminal report.
Testing
Focused brief and watcher validation completed. The generated worker-facing Markdown confirms an implementation milestone of
working: implemented, starting validation, immediate no-mistakes invocation, and only the CI-green PR report as terminaldone:; the same contract was verified through scout promotion. No UI applies because this change’s end-user surface is CLI-generated worker instructions, captured as reviewer-visible artifacts.Evidence: Generated no-mistakes worker Definition of done
Source: Generated no-mistakes worker Definition of done
Evidence: Generated promoted-scout no-mistakes Definition of done
Source: Generated promoted-scout no-mistakes Definition of done
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.
bin/fm-test-run.sh tests/fm-brief.test.sh tests/fm-watch-triage.test.shGenerated no-mistakes, direct-PR, and local-only worker briefs viabin/fm-brief.shunder an isolated evidence home; each emitted Definition of done has exactly onedone:instruction.Promoted a scaffolded scout throughbin/fm-promote.sh ... --mode no-mistakes --yolo offand captured the generated ship instructions; the promoted contract also has exactly one terminaldone:instruction.✅ **Document** - passed
✅ No issues found.
✅ **Lint** - passed
✅ No issues found.
✅ **Push** - passed
✅ No issues found.