Commit 47c4517
docs(proof-debt): add canonical AXIOM: annotations to SafetyLemmas.idr (#163)
## Summary
Follow-up to #161 (which seeded `docs/proof-debt.md` per the estate
[Trusted-Base Reduction
Policy](https://github.com/hyperpolymath/standards/blob/main/docs/TRUSTED-BASE-REDUCTION-POLICY.adoc)
— hyperpolymath/standards#203, enforcement hyperpolymath/standards#211).
`docs/proof-debt.md` already enumerates the 5 class-(J) `believe_me`
sites in `src/abi/Boj/SafetyLemmas.idr`, so the `check-trusted-base.sh`
gate passes via the "documented in proof-debt.md" path. This PR closes
the second path: each marker now also has an inline `AXIOM:` leading
comment, the canonical keyword the script greps. The result: boj-server
satisfies **both** halves of the check, making it the fully canonical
reference implementation cited in standards#203 §"Precedent".
## Changes
- `src/abi/Boj/SafetyLemmas.idr` (38 lines, 5 sites + 1 module header):
- `charEqSound`, `charEqSym`, `unpackLength`, `appendLengthSum`,
`substrLengthBound` each gain an `AXIOM: <name>; class-(J) — ...`
header line citing `docs/proof-debt.md §(c)` and the per-primitive
`docs/backend-assurance/<primitive>.md`.
- Module-header summary updated from "Five axiomatic believe_me" to
use the policy vocabulary ("AXIOM-tagged", "disposition-§(c)
NECESSARY-AXIOM").
- `PROOF-NEEDS.md`: new header note cross-linking `docs/proof-debt.md`
(strategic-goals doc ↔ schema-conformant per-repo index) — mirrors
the pattern from standards#213.
## Marker inventory (unchanged)
5 escape hatches, all `believe_me`, all in
`src/abi/Boj/SafetyLemmas.idr`,
all class-(J) NECESSARY AXIOM (§(c)), all externally validated under
`docs/backend-assurance/`:
| Site | Function | Disposition |
|------|----------|-------------|
| `SafetyLemmas.idr:61` | `charEqSound` | §(c) NECESSARY AXIOM |
| `SafetyLemmas.idr:68` | `charEqSym` | §(c) NECESSARY AXIOM |
| `SafetyLemmas.idr:226` | `unpackLength` | §(c) NECESSARY AXIOM |
| `SafetyLemmas.idr:236` | `appendLengthSum` | §(c) NECESSARY AXIOM |
| `SafetyLemmas.idr:246` | `substrLengthBound` | §(c) NECESSARY AXIOM |
§(a) DISCHARGED: 0. §(b) BUDGETED: 0 (the externally-validated harness
under `docs/backend-assurance/` is §(b)-style discipline applied to §(c)
items per standards#203 §"Precedent"). §(d) DEBT: 0.
## Test plan
- [ ] `bash scripts/check-trusted-base.sh .` (when the standards#211
`trusted-base` job runs against this branch) reports
`[OK] All 5 escape hatch(es) are documented (inline annotation or
entry in: docs/proof-debt.md PROOF-NEEDS.md).`
- [ ] CI green on the trusted-base job specifically.
- [ ] No behavioural change in Idris2 build — `believe_me` bodies and
signatures untouched; only doc-comments edited.
Refs: hyperpolymath/standards#203 (policy), hyperpolymath/standards#211
(enforcement), #161 (proof-debt.md seed).
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
Co-authored-by: Claude Opus 4.7 (1M context) <noreply@anthropic.com>1 parent fabfbbe commit 47c4517
2 files changed
Lines changed: 37 additions & 11 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1 | 1 | | |
2 | 2 | | |
| 3 | + | |
| 4 | + | |
| 5 | + | |
| 6 | + | |
| 7 | + | |
| 8 | + | |
| 9 | + | |
| 10 | + | |
| 11 | + | |
| 12 | + | |
3 | 13 | | |
4 | 14 | | |
5 | 15 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
6 | 6 | | |
7 | 7 | | |
8 | 8 | | |
9 | | - | |
10 | | - | |
11 | | - | |
| 9 | + | |
| 10 | + | |
| 11 | + | |
| 12 | + | |
12 | 13 | | |
13 | | - | |
14 | | - | |
| 14 | + | |
| 15 | + | |
| 16 | + | |
| 17 | + | |
15 | 18 | | |
16 | 19 | | |
17 | 20 | | |
| |||
54 | 57 | | |
55 | 58 | | |
56 | 59 | | |
57 | | - | |
| 60 | + | |
| 61 | + | |
| 62 | + | |
| 63 | + | |
58 | 64 | | |
59 | 65 | | |
60 | 66 | | |
61 | 67 | | |
62 | 68 | | |
63 | 69 | | |
64 | | - | |
| 70 | + | |
| 71 | + | |
| 72 | + | |
65 | 73 | | |
66 | 74 | | |
67 | 75 | | |
| |||
212 | 220 | | |
213 | 221 | | |
214 | 222 | | |
215 | | - | |
| 223 | + | |
| 224 | + | |
| 225 | + | |
| 226 | + | |
216 | 227 | | |
217 | 228 | | |
218 | 229 | | |
219 | 230 | | |
220 | 231 | | |
221 | 232 | | |
222 | | - | |
223 | | - | |
| 233 | + | |
| 234 | + | |
| 235 | + | |
| 236 | + | |
224 | 237 | | |
225 | 238 | | |
226 | 239 | | |
227 | 240 | | |
228 | 241 | | |
229 | 242 | | |
230 | | - | |
| 243 | + | |
| 244 | + | |
| 245 | + | |
| 246 | + | |
231 | 247 | | |
232 | 248 | | |
233 | 249 | | |
| |||
0 commit comments