Repository navigation
dogfood-gate.yml: the no-manifest guidance names .deed while the Mustfile critical rule requires .a2ml #98
Description
Recorded per the owner's stopping rule of 2026-09-15 — a new scanner finding
does not block a merge; it becomes an issue with acceptance criteria.
CodeRabbit posted CHANGES_REQUESTED on PR #94 (head 9ca8338, 09:36Z) with
one actionable comment, on .github/workflows/dogfood-gate.yml:32-51. PR #94
merged anyway as 3e7c585; all three required contexts (CodeQL, CodeRabbit,
governance / Code quality + docs) were green.
The finding, verified against the tree
CodeRabbit's claim: the manifest requirement disagrees between the dogfood
workflow and the Mustfile contract.
Measured, at 9ca8338:
.github/workflows/dogfood-gate.ymldetects*.a2mlor*.deedand sets
count. It emits::warning::No .deed manifest files found. Every RSR repo should have 0-AI-MANIFEST.deed— but only insideif [ "$COUNT" -eq 0 ].- The step summary has a matching
.deed-naming branch, also only under
A2ML_COUNT -eq 0. - The repo root holds
0-AI-MANIFEST.a2ml(7530 bytes) and no.deed, so
count >= 1and neither.deed-naming branch can execute in this repo. .machine_readable/contractiles/Mustfile.a2ml:33-34requires
test -f 0-AI-MANIFEST.a2ml. That file exists, so the critical rule passes
before and after the merge.
Therefore the disagreement is between two pieces of guidance text, one of which
is unreachable. It is a dormant-code finding, not a live-on-merge defect:
nothing fails, and nothing changed at the merge. That is precisely the category
the owner's rule routes to an issue.
Note also that the warning, were it ever to fire, would advise authoring a
.deed manifest while the repo's own critical Mustfile rule demands an .a2ml
one — so a reader who followed the workflow's advice would break the Mustfile.
The text is not merely redundant; it is contradictory.
Acceptance criteria
- The
count == 0warning and the step-summary text name the same
manifest filename the Mustfile critical rule requires, so following the
workflow's advice cannot break the contract. - If the intended long-term requirement is
0-AI-MANIFEST.deed, then the
Mustfile rule, the checked-in manifest and the workflow guidance change
together, in one commit — not the guidance alone. - A positive control: with no manifest file present, the workflow's advice,
followed literally, produces a tree that passes the Mustfile.
⚠ Scope guard, per the standing ruling: hands off .a2ml grammar. No bulk
rename of the 19,477 .a2ml files, and 0-AI-MANIFEST.a2ml is not renamed here.
Any change to a manifest is a value string only, via sed. This issue is
about the two guidance texts agreeing with the contract, nothing more.
Routing
Folds into the follow-up PR that already carries the issue #95 items
(F2, F4, F6 and the four Minors). It is a text-only change to one workflow file.
Activity
Resolve #95, #97, #98 — toolchain floor, CodeRabbit findings, gate gu…