proof-aware-crypto-tooling-.../tests
mrwulf 2dae2ca0db audit v3: paper-reality congruence + external-pointer integrity (Fable-5 Socratic pass)
Two Fable-5 inventory agents cross-checked every empirical claim in the
paper against code/deployed log, and every external pointer against the
live internet. Fixes on both sides:

CODE (system brought up to the paper's claims):
- SECURITY: pin-store mutation (incl. permanent poisoning) was reachable
  via receipts whose head signature FAILED verification in two of three
  consumer paths (attestation.py, cli.py) - an unauthenticated forged
  head at the pinned size could poison a consumer's pin forever and
  pollute the equivocation-evidence pair with an unverifiable head,
  contradicting SS5.4's 'validly signed' precondition and Prop 1.
  Both paths now gate the store on a verified Ed25519 head signature
  (logclient.py already did). Regression test added.
- Prop 2 made literally true: _normalize_certificate now derives the
  cleanliness verdict purely from (observed cone, local allowed set) in
  EVERY branch; the operator's axiom_status label is never copied (was
  passed through for non-proven certs), missing cone => unverifiable
  always. Labels can deny, never grant. Test added.
- webdocs: '/v1/sth-history: every head ever signed' -> 'the published
  head history'.

PAPER (claims brought down to reality):
- 'every head ever signed' -> the signed head history since publication
  began (heads for sizes 1-7 predate the mirror and were not retained).
- Run-3 bullet: 'independently checkable by diffing the two commit
  trees' was no longer reproducible (pre-rewrite objects discarded);
  now states the log-internal corroboration (identical cert lists and
  cones across leaves 4-7 vs 8-11) and that tree diffs are not public.
- Appendix A leaf block now actually verbatim: scheme
  openssl-ed25519, verified_backend serial/u64, real Lean version
  (4.30.0-rc2) instead of 4.x.y placeholder, leaf's actual axiom order
  (finalize/new/update), machine_protection note quoted, elisions
  marked; preamble wording matches.
- Appendix C upstream boundary reordered to check.sh's verbatim order.
- '27 lines - all annotation' -> honest description (axiom-list entries
  + operation reordering from one fork's black_box barrier).
- Prop 2 proof + App A: status label consulted only negatively.
- SS7: provenance fields noted as outside the signed payload; consumer
  chain relies on none of them.
- Bibliography: all 20 entries verified against DBLP/RFC-editor - zero
  errors; added missing page numbers to 6 entries; thebibliography
  width 19->20. All URLs verified public; no PlanetMacro leakage.

17 pages, 106 tests green, accumulator untouched (tree_size 12).

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-07-09 21:33:28 +02:00
..
fixtures/mini-ed25519-verified/verification initial proof-aware tooling prototype 2026-07-03 10:51:03 +02:00
test_agent.py add policy-gated agent consequences 2026-07-03 11:05:06 +02:00
test_artifact.py add policy-gated agent consequences 2026-07-03 11:05:06 +02:00
test_attestation.py audit v3: paper-reality congruence + external-pointer integrity (Fable-5 Socratic pass) 2026-07-09 21:33:28 +02:00
test_boundaries.py audit v3: paper-reality congruence + external-pointer integrity (Fable-5 Socratic pass) 2026-07-09 21:33:28 +02:00
test_claim_cards.py initial proof-aware tooling prototype 2026-07-03 10:51:03 +02:00
test_claim_failures.py add policy-gated agent consequences 2026-07-03 11:05:06 +02:00
test_curriculum_notebooks.py curriculum: lecture 11 - the customer's-eye view (requirements card, wish-meets-supply, grow-the-supply) 2026-07-07 22:16:05 +02:00
test_doctor.py add verifier bootstrap and attestation lane 2026-07-03 11:24:13 +02:00
test_dogfood.py The provider eats its own dogfood: root signatures via the merkleized library 2026-07-06 15:21:17 +02:00
test_hygiene.py initial proof-aware tooling prototype 2026-07-03 10:51:03 +02:00
test_lean.py add nested proof check provider 2026-07-03 13:03:58 +02:00
test_manifest_parsing.py initial proof-aware tooling prototype 2026-07-03 10:51:03 +02:00
test_paper_verifiers.py paper: Fable-5 rigor re-audit of the depth pass — fix 3 real defects 2026-07-09 19:46:11 +02:00
test_profiles.py Estate sync: boundary-axiom vocabulary + the four-tier apex reality (R4) 2026-07-06 10:04:43 +02:00
test_provider.py Estate sync: boundary-axiom vocabulary + the four-tier apex reality (R4) 2026-07-06 10:04:43 +02:00
test_quorum.py warden re-audit (Fable 5): fix ledger race, quorum perf, small-order honesty 2026-07-07 08:24:51 +02:00
test_risk.py add verifier bootstrap and attestation lane 2026-07-03 11:24:13 +02:00
test_signing.py add nested proof check provider 2026-07-03 13:03:58 +02:00
test_sthstore.py sthstore: equivocation poisons the pin + retains transferable evidence 2026-07-09 17:53:13 +02:00
test_transparency.py add transparency log trust provider 2026-07-03 14:09:34 +02:00
test_wallet.py warden re-audit (Fable 5): fix ledger race, quorum perf, small-order honesty 2026-07-07 08:24:51 +02:00
test_wallet_hardening.py warden hardening round: policy engine, ledger rotation, MCP UX, treasury LIVE, ops docs 2026-07-07 13:38:42 +02:00
test_walletmcp.py warden tests: quorum taxonomy, wallet firewall/ledger/latch, MCP surface (83 passing) 2026-07-06 23:40:35 +02:00
test_web_and_witness.py remove the pseudonymous paper entirely; fix stale v1-era surfaces (Fable 5 audit) 2026-07-09 18:18:27 +02:00