Skip to content

AGENTS.md: add Verification Discipline; sweep prose on a behavior change (#356) - #358

Merged
ptr727 merged 1 commit into
developfrom
verification-discipline-356
Jul 18, 2026
Merged

AGENTS.md: add Verification Discipline; sweep prose on a behavior change (#356)#358
ptr727 merged 1 commit into
developfrom
verification-discipline-356

Conversation

@ptr727

Copy link
Copy Markdown
Owner

Fixes#356, including the amendment.

What lands

New ## Verification Discipline section in AGENTS.md, placed between Documentation Style Conventions and PR Review Etiquette - write it right, verify it, then review. It opens with the unifying property: every failure below is green, so no linter, status check, or review layer catches any of them.

The six from the proposal, plus the amendment's review companion:

  1. A test must assert the mechanism it names.
  2. Gates, filters, and gate-like watchers fail loud, never narrow quietly.
  3. Run the repo's whole lint gate before every push.
  4. Editing CRLF files programmatically: . matches \r.
  5. A green check is not evidence the work happened.
  6. A workflow change is only fully exercised by CI.
  7. A review flags an instance; fix the class.

Rule 7 from the amendment - search for prose asserting the old behavior after changing it - goes under Documentation Style Conventions per your placement note, directly beside the present-tense rule as its maintenance counterpart: that rule governs how to phrase a doc, this one how to keep it true when the behavior underneath moves.

Placement judgment on the companion: you grouped "fix the class" with rule 7 but did not place it. I put it in Verification Discipline rather than the docs section, because it generalizes past stale prose to any flagged defect class (a silent-narrowing pattern, a mis-worded contract). Happy to move it if you'd rather keep the pair together.

Complementing rather than duplicating

You named three adjacent rules; each generalization now cross-references its instance instead of restating it:

I also folded the mirror failure into rule 4: a text-mode rewrite silently flattens CRLF to LF, the inverse of the CRCRLF case. I hit exactly that two days ago - a scripted edit flattened spec/project-types.json and CI caught it, not my local run, which is also rule 3 in action.

README

Rules -> Always gains the two that read as fleet-wide invariants rather than technique: run the whole lint gate before pushing, and make gates fail loud. Both are bullets under an existing heading, so the auto-generated Table of Contents needs no change (and is never hand-edited per its own rule).

Validation

spec/validate.py, markdownlint, CI-scoped cspell, editorconfig-checker: clean. CRLF preserved on both files.

🤖 Generated with Claude Code

…nge (#356)
Seven rules whose unifying property is that every failure is green: a
skipped job and a passing job are indistinguishable in the aggregator, a
pattern that matches less still exits zero, a gate that stops gating
still reports success. No linter, status check, or review layer catches
any of them.
New section "Verification Discipline" (placed between Documentation
Style Conventions and PR Review Etiquette - write it right, verify it,
then review): a test asserts the mechanism it names; gates fail loud
rather than narrowing quietly; the whole lint gate runs before every
push; regex edits on CRLF files capture the carriage return; a green
check is not evidence; a workflow change is only exercised by CI; and a
review flags an instance, so fix the class.
Three of these generalize rules that already exist in narrower form, so
each cross-references its instance instead of restating it: the fail-loud
rule points at WORKFLOW.md D8.4, the lint-gate rule at "Running the
Linters Locally" (which documents how to invoke, not that all must run),
the green-check rule at the changes-job note under Branching Model, and
the CRLF rule at the Line Endings warning it explains the mechanism for.
Per the amendment, the seventh rule - search for prose asserting the old
behavior after changing it - goes under Documentation Style Conventions
beside the present-tense rule, as its maintenance counterpart: that rule
governs how to phrase a doc, this one how to keep it true when the
behavior moves. The review companion ("fix the class") sits in
Verification Discipline, where it generalizes past docs to any flagged
defect class.
README Rules gains the two that read as fleet-wide invariants rather
than technique: run the whole lint gate before pushing, and make gates
fail loud. Both are bullets under an existing heading, so the
auto-generated Table of Contents is untouched.
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
CopilotAI review requested due to automatic review settings July 18, 2026 23:29

CopilotAI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Adds a new "Verification Discipline" section to AGENTS.md and updates adjacent prose so the governance docs explicitly capture the class of failures that still appear "green" in CI, alongside a companion maintenance rule for keeping documentation accurate after behavior changes.

Changes:

  • Add ## Verification Discipline to AGENTS.md, documenting seven verification rules (including the amendment's review companion).
  • Add a new Documentation Style Conventions bullet: when changing behavior, grep for prose that asserts the old behavior and update it.
  • Update README.md's "Rules -> Always" index with two new invariant-style bullets (full lint gate before pushing; gates fail loud).

Reviewed changes

Copilot reviewed 2 out of 2 changed files in this pull request and generated no comments.

FileDescription
README.mdExtends the high-level rules index with two new invariant-style bullets aligned with the new verification discipline guidance.
AGENTS.mdAdds the new Verification Discipline section and the companion doc-maintenance rule near present-tense guidance to keep governance text accurate over time.

@ptr727
ptr727 merged commit c81420d into developJul 18, 2026
7 checks passed
@ptr727
ptr727 deleted the verification-discipline-356 branch July 18, 2026 23:31
Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants

@ptr727