You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
fix: ban phantom Axxxxx codes with guards section 14 (#1489)
## Summary
Closes the recurring class of issues where agents invent error codes in
module docs (`A09104`, `A53007`, …) without catalog entries or emitters,
then we file endless follow-ups.
## Rule (mechanical)
1. **Never** assign an `Axxxxx` number until the check is implemented
**and** registered in `assura-diagnostics` catalog **in the same PR**.
2. Future work is described in prose without a code number.
3. `scripts/guards.sh` **section 14** hard-fails phantom mentions (CI).
## Changes
- guards section 14 + AGENTS.md same-PR rule
- Remove reserved fake codes from taint / quantifier-trigger module docs
- Drop one-off unit test that listed three reserved codes (class-level
guard replaces it)
- Clarify project-check comment (no fake A02000)
## Closes
Closes#1486Closes#1487
These were symptoms of the class, not separate product features. Partial
taint sanitization or richer trigger validation can return as real
features later **with** catalog+emit+tests in one PR, without
pre-reserving numbers.
## Test plan
- [x] `bash scripts/guards.sh` (green)
- [x] Injected phantom `A09104` is detected by guards
- [x] `cargo test -p assura-diagnostics --locked --lib`
- [ ] CI green
---------
Signed-off-by: Sebastien Tardif <sebtardif@ncf.ca>
Copy file name to clipboardExpand all lines: AGENTS.md
+8-3Lines changed: 8 additions & 3 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -83,9 +83,14 @@ Do not improvise a parallel pipeline. Follow the branch that matches your task.
83
83
84
84
Full meanings: `docs/SPECIFICATION.md` §7.2 / Appendix D. Do not fix an `A02` in `assura-smt` or an `A01` in `assura-types` unless the index explicitly says cross-phase.
85
85
86
-
**When you introduce or rely on a code not in the index:** append one row to
87
-
`docs/error-codes.md` in the same PR (high-traffic section is fine). Do not
88
-
regenerate all of Appendix D.
86
+
**When you introduce a new error code:** in the **same PR** (1) implement and
87
+
emit it, (2) add the catalog entry in `assura-diagnostics`, (3) append a row to
88
+
`docs/error-codes.md` (high-traffic section is fine). Do **not** invent `Axxxxx`
89
+
numbers in module docs, comments, or TODOs for unimplemented checks. Describe
90
+
future work in prose without a code number until it is wired. `scripts/guards.sh`
91
+
section 14 hard-fails phantom codes (mentions outside the catalog in
92
+
`crates/**/*.{rs,md}` and `docs/**/*.md`). Sentinels `A00000` / `A88888` /
93
+
`A99999` only. Do not regenerate all of Appendix D.
0 commit comments