docs: restore "all" to the axi tooling rule in AGENTS.md - #7
Conversation
Commit 71db4be dropped the absolute from both instances when compressing four reinforcing mentions into one, causing drift to raw `gh` for a session; raw `gh pr checks` exits non-zero on non-green checks by design, which a caller reading exit code as success/failure discards.
12e66f6 to
a5b5569
Compare
Note:
|
Note:
|
Intent
Restore the word "all" to the axi-tooling rule in AGENTS.md line 109. This is a deliberately tiny, single-line change that must not be widened. Change: 'Use gh-axi for GitHub, chrome-devtools-axi for browser work, and lavish-axi for structured decisions or reports' becomes 'Use gh-axi for all GitHub operations, chrome-devtools-axi for all browser operations, and lavish-axi for structured decisions or reports' (lavish-axi wording unchanged; only the two 'all' insertions are new), keeping the one-line sentence intact. Rationale for the commit body: commit 71db4be ('compress Firstmate contract', 2026-07-15) reduced this from four reinforcing mentions to one and dropped both instances of 'all'; the concrete cost was firstmate drifting to raw gh for an entire session, which matters because gh pr checks exits non-zero by design when checks are not all green, so a caller reading a non-zero exit as an error discards the answer, whereas gh-axi returns the same information as data with exit 0. Scope discipline: an audit found four OTHER weakened or lost rules in the same commit 71db4be; those are explicitly OUT OF SCOPE for this task, must not be restored, mentioned in the diff, or have neighbouring lines improved - only this one line changes. Constraints: one sentence per line in long Markdown (not applicable here, single line edit), never add an agent name as a commit co-author, no migration/script/test changes unless a test genuinely asserts the old wording (none found). The PR body must note that the same weakened line exists in upstream kunchenguid/firstmate, so this fix will need to reach upstream separately or it will be re-inherited on the next update; no upstream PR should be attempted by this task. Acceptance: PR open and ready, checks green, one-line diff to AGENTS.md (CLAUDE.md is a symlink to AGENTS.md and follows automatically, verified, not edited separately).
What Changed
allqualifiers to the axi-tooling line inAGENTS.md(line 109): agents must usegh-axifor all GitHub operations andchrome-devtools-axifor all browser operations. Thelavish-axiclause and the rest of the sentence are unchanged, and the rule stays a single line.71db4be("compress Firstmate contract", 2026-07-15) collapsed four reinforcing mentions into one and dropped both instances ofall. The observed cost was firstmate drifting to rawghfor a whole session, which matters becausegh pr checksexits non-zero by design when checks are not all green, so a caller treating a non-zero exit as an error throws away a valid answer, whereasgh-axireturns the same information as data with exit 0.CLAUDE.mdis a symlink toAGENTS.mdand follows automatically (verified, not edited separately).Note: the same weakened line also exists upstream in
kunchenguid/firstmate. This fix needs to reach upstream separately or it will be re-inherited on the next update; no upstream PR was attempted from this branch.Risk Assessment
✅ Low: Single-line documentation wording restoration exactly as specified, with no code or behavior impact.
Testing
I treated the agent-facing instruction text as the end-user surface and captured it as it is actually delivered: line 109 read through both AGENTS.md and the CLAUDE.md symlink shows the restored "all GitHub operations" / "all browser operations" wording with lavish-axi unchanged, and the full branch diff is a single line, so none of the four other rules weakened in 71db4be leaked in. I added no test, since the only thing such a test could assert is a string in a prose instruction file — the source-grep anti-pattern — and a repo-wide search confirmed nothing asserts the old wording. The closest AGENTS.md-consuming suite, fm-session-start, has one failing case that reproduces identically with the base AGENTS.md restored, so it is pre-existing and unrelated.
Evidence: Restored agent contract line as loaded at session start, plus full one-line diff
Source: Restored agent contract line as loaded at session start, plus full one-line diff
$ sed -n '109p' CLAUDE.md # resolved through the symlink, i.e. what a Claude session actually reads Usegh-axifor all GitHub operations,chrome-devtools-axifor all browser operations, andlavish-axifor structured decisions or reports; consult current help rather than memorizing flags. $ git diff 6ed3006..12e66f6 --numstat 1 1 AGENTS.mdPipeline
Updates from git push no-mistakes
✅ **intent** - passed
✅ No issues found.
✅ **Rebase** - passed
✅ No issues found.
✅ **Review** - passed
✅ No issues found.
tests/fm-session-start.test.sh-tests/fm-session-start.test.shfails on the final case ("MISSING diagnostic did not appear at all"). Verified pre-existing: it fails identically with the base 6ed3006 version of AGENTS.md restored, so it is unrelated to this change.git diff 6ed3006..12e66f6 --numstat— confirmed a single 1-insertion/1-deletion hunk in AGENTS.md onlysed -n '109p' AGENTS.mdandsed -n '109p' CLAUDE.md— restored sentence is what an agent session actually loads through the symlink (ls -l CLAUDE.mdconfirms CLAUDE.md -> AGENTS.md)grep -rn 'for GitHub|browser work|for all GitHub' -I .— no test, script, or fixture asserts the old or new wording (only bin/fm-brief.sh's separate, unmodified prose)bash tests/fm-session-start.test.sh— nearest AGENTS.md-consuming test; ran on target and again with the base AGENTS.md swapped in to prove the one failure is pre-existing✅ **Document** - passed
✅ No issues found.
✅ **Lint** - passed
✅ No issues found.
✅ **Push** - passed
✅ No issues found.