From da0409323beaa883ba90b5717a798698a26b4969 Mon Sep 17 00:00:00 2001 From: Claude Date: Wed, 19 Aug 2026 21:39:06 +0000 Subject: [PATCH 01/15] docs(upgrade): epistemic excavation and v0.4 upgrade plan Measures cc-framework against the standard set by the flagship sibling repository ghost-ark, records what was found, and plans the work to close the gap. Scope is cc-framework only; no change is proposed to any other repository. The organizing finding: the mathematics is exact and nobody can use it. The LP recovers Frechet-Hoeffding to 1.11e-16 worst case and reproduces the correlation cliff in 20s, yet three sibling projects reimplemented the calculus rather than depend on this repository. One wrote down why -- the most discoverable composition entry point imposes an ROC/detector ontology on events that are deterministic predicates, so a consumer read the source and wrote 214 lines of JavaScript instead. Adds under docs/upgrade/: - BASELINE_MEASUREMENTS.md every number with the command that produced it - FINDINGS_REGISTER.md 20 findings, 5 at severity S1 - COMMITTEE_SCORECARD.md 12 dimensions, each naming what moves it - VERIFICATION_LADDER.md tiers, and what each does not establish - DOWNSTREAM_CONTRACTS.md contracts C1-C7 for the three consumers - EPISTEMIC_UPGRADE_PLAN.md ten workstreams with acceptance gates Measured baseline at 3e22c39: 689 tests pass but only after installing three dependencies the [test] extra does not declare; coverage 69.91% with the report CLI at 0% and core/stats.py at 38%; mypy reports 279 errors in 47 files at its own declared strict scope while CI enforces 7 files; no claim scanner and no coverage gate run anywhere. Also adds scripts/canonicalization_probe.py, an adversarial census over the canonicalization kernel every signed artifact routes through, modelled on ghost-ark's E1 provenance-kernel census. It finds two unintended-kernel classes: two Unicode-distinct keys silently become one, with no exception raised, at top level and nested. Widening the corpus from six hand-probed classes to eleven surfaced the nested case, reproducing E1's lesson that breadth finds more defects. Four positive controls pass, so strictness is not the explanation. The probe also records that five of six number forms diverge from RFC 8785, which makes an independent non-Python verifier impossible until the profile is decided. Provenance of the corpus is census: exact counts, no confidence intervals. The probe exits non-zero while any unintended-kernel class remains, so the S1 findings are falsifiable rather than asserted. Verified: full suite 689 passed / 9 skipped; ruff check and format clean on the new script; all internal document links and anchors resolve. Co-Authored-By: Claude Opus 5 Claude-Session: https://claude.ai/code/session_01VnVFub3xq2vwPjjz3MUqZV --- docs/upgrade/BASELINE_MEASUREMENTS.md | 433 ++++++++++++++++ docs/upgrade/COMMITTEE_SCORECARD.md | 354 +++++++++++++ docs/upgrade/DOWNSTREAM_CONTRACTS.md | 355 +++++++++++++ docs/upgrade/EPISTEMIC_UPGRADE_PLAN.md | 671 +++++++++++++++++++++++++ docs/upgrade/FINDINGS_REGISTER.md | 610 ++++++++++++++++++++++ docs/upgrade/README.md | 100 ++++ docs/upgrade/VERIFICATION_LADDER.md | 239 +++++++++ scripts/canonicalization_probe.py | 340 +++++++++++++ 8 files changed, 3102 insertions(+) create mode 100644 docs/upgrade/BASELINE_MEASUREMENTS.md create mode 100644 docs/upgrade/COMMITTEE_SCORECARD.md create mode 100644 docs/upgrade/DOWNSTREAM_CONTRACTS.md create mode 100644 docs/upgrade/EPISTEMIC_UPGRADE_PLAN.md create mode 100644 docs/upgrade/FINDINGS_REGISTER.md create mode 100644 docs/upgrade/README.md create mode 100644 docs/upgrade/VERIFICATION_LADDER.md create mode 100755 scripts/canonicalization_probe.py diff --git a/docs/upgrade/BASELINE_MEASUREMENTS.md b/docs/upgrade/BASELINE_MEASUREMENTS.md new file mode 100644 index 0000000..cdfec2b --- /dev/null +++ b/docs/upgrade/BASELINE_MEASUREMENTS.md @@ -0,0 +1,433 @@ +# Baseline Measurements — cc-framework + +> **Status: measured.** Every number in this document was produced by a command +> run against commit `3e22c39` on 2026-08-19, on the host described in +> [Host](#host). Numbers that are unflattering are reported anyway. Where a +> number was *not* measured, the row says so rather than estimating. +> +> **Non-claim.** These measurements describe this repository on one host at one +> commit. They are not a statement about correctness, safety, or the behaviour +> of any deployed system. A passing test suite is evidence of regression +> resistance, not of correctness. + +Regenerate with `scripts/upgrade_baseline.py` (see [Reproduction](#reproduction)). + +--- + +## Host + +| Field | Value | +|---|---| +| Platform | Linux 6.18.5, x86-64 | +| Python | 3.11.15 (CPython) | +| NumPy / SciPy | 2.x / 1.17.1 | +| Environment | ephemeral container, `uv venv`, `uv pip install -e '.[test]'` | +| Commit | `3e22c39` | +| Date | 2026-08-19 | + +A latency figure without a machine is not reproducible. Every timing below is +host-relative and must be re-measured before it is cited. + +--- + +## 1. Size + +| Metric | Value | Command | +|---|---:|---| +| Python files in `src/cc` | 90 | `find src -name '*.py' \| wc -l` | +| Lines in `src/cc` | 41,645 | `find src -name '*.py' -exec cat {} + \| wc -l` | +| Test files | 108 | `find tests -name '*.py' \| wc -l` | +| Markdown files (repo) | 136 | `find . -name '*.md' -not -path './.git/*' \| wc -l` | +| Markdown files (`docs/`) | 90 | `find docs -name '*.md' \| wc -l` | +| JSON schemas | 2 | `ls schemas/*.json schemas/evidence/*.json` | +| Working tree (excl. `.git`) | 54 MB | `du -sh --exclude=.git .` | +| `.git` | 43 MB | `du -sh .git` | + +### Per-package line counts + +| Package | Files | Lines | +|---|---:|---:| +| `src/cc/core` | 13 | 10,462 | +| `src/cc/evidence` | 11 | 9,946 | +| `src/cc/kernel` | 12 | 6,389 | +| `src/cc/analysis` | 9 | 4,384 | +| `src/cc/cartographer` | 9 | 2,896 | +| `src/cc/redteam` | 2 | 1,413 | +| `src/cc/reporting` | 4 | 1,343 | +| `src/cc/adapters` | 6 | 1,191 | +| `src/cc/evals` | 3 | 993 | +| `src/cc/guardrails` | 6 | 726 | +| `src/cc/exp` | 1 | 710 | +| `src/cc/enterprise` | 2 | 524 | +| `src/cc/io` | 2 | 204 | +| `src/cc/utils` | 6 | 236 | +| `src/cc/cli` | 2 | 117 | +| `src/cc/_legacy` | 1 | 89 | + +`cc.core` and `cc.evidence` together are 20,408 lines — 49% of the source tree — +against a `cc.kernel` of 6,389 lines. The mathematical core the project exists +to provide is 15% of its own source. + +--- + +## 2. Test suite + +### Out of the box, from the declared test extra + +```bash +uv venv .venv && uv pip install -e '.[test]' && pytest +``` + +| Result | Count | +|---|---:| +| Passed | 685 | +| **Failed** | **1** | +| **Errors** | **3** | +| Skipped | 9 | +| Wall time | 87 s | + +Failures: + +- `tests/unit/packaging/test_wheel_boundary.py` — 3 errors, `No module named build` +- `tests/regression/week2/test_week2_deliverables.py::test_unit_tests_pass` — cascaded + +After installing `build`, a second, distinct failure appears: +`BackendUnavailable: Cannot import 'setuptools.build_meta'`. + +**The `[test]` extra cannot run the test suite.** It omits `build`, `setuptools`, +and `wheel`, all of which `tests/unit/packaging/` requires. See finding +[F-01](FINDINGS_REGISTER.md#f-01). + +### After adding the three undeclared dependencies + +| Result | Count | +|---|---:| +| Passed | 689 | +| Failed | 0 | +| Skipped | 9 | +| Wall time | 90 s | + +This is the green baseline the rest of the plan builds on. + +### Skipped tests (9) + +Skips are gated by environment variables or optional dependencies: +`CC_RUN_EXPERIMENTS`, `CC_RUN_PERF`, `guardrails`, `fastavro`, `protobuf`, +`SQLAlchemy`. No CI job sets any of them, so **no CI run has ever executed the +experiment or performance lanes.** + +--- + +## 3. Coverage + +`pytest --cov=src/cc --cov-report=term-missing` + +| Metric | Value | +|---|---:| +| Statements | 15,149 | +| Missed | 3,904 | +| Branches | 4,762 | +| Partial branches | 1,070 | +| **Total coverage** | **69.91%** | + +There is **no coverage gate in CI**. This number has never been enforced. + +### Modules below 60% + +| Module | Stmts | Cover | Note | +|---|---:|---:|---| +| `reporting/cli.py` | 204 | **0.00%** | the `cc-report` entry point — the product surface | +| `cli/manifest.py` | 68 | **0.00%** | | +| `core/audit_runner.py` | 199 | 17.45% | | +| `guardrails/semantic_filter.py` | 38 | 18.75% | | +| `guardrails/toy_threshold.py` | 42 | 21.43% | | +| `enterprise/aws_reference.py` | 143 | 23.87% | | +| `guardrails/regex_filters.py` | 138 | 24.18% | | +| `analysis/reporting.py` | 153 | 26.42% | | +| **`core/stats.py`** | **756** | **38.16%** | **the statistics engine; 434 statements unexercised** | +| `evals/run_bench.py` | 189 | 49.39% | | +| `cartographer/bounds.py` | 272 | 52.99% | | +| `utils/artifacts.py` | 50 | 53.70% | | +| `analysis/cc_estimation.py` | 118 | 56.08% | | +| `core/guardrail_api.py` | 95 | 57.48% | | +| `core/registry.py` | 79 | 57.89% | | +| `core/metrics.py` | 244 | 59.15% | | + +The two largest uncovered surfaces are the **CLI that emits reports** (0%) and +the **statistics module** (38% of 756 statements). Both are on the path from +evidence to a published number. + +### Modules above 90% + +`kernel/frechet_classes.py` 98.87%, `evidence/permission_compiler.py` 95.28%, +`reporting/canonical.py` 91.89%, `core/manifest.py` 90.74%, +`evidence/role_ontology.py` 90.53%. + +The kernel is well covered. The plumbing around it is not. + +--- + +## 4. Type checking + +`pyproject.toml` declares: + +```toml +[tool.mypy] +packages = ["cc"] +strict = true +``` + +Running mypy **at its own declared scope**: + +``` +Found 279 errors in 47 files (checked 101 source files) +``` + +CI runs mypy on an explicit list of **7 files**: + +``` +src/cc/adapters/base.py src/cc/cartographer/audit.py +src/cc/cartographer/bounds.py src/cc/cartographer/intervals.py +src/cc/io/storage.py src/cc/utils/artifacts.py src/cc/utils/timing.py +``` + +`.pre-commit-config.yaml` uses the same 7-file list. + +The repository declares strict typing across the `cc` package and enforces it on +7.8% of the files. See finding [F-02](FINDINGS_REGISTER.md#f-02). + +--- + +## 5. Kernel numerics + +### Fréchet–Hoeffding recovery + +`identified_region` versus the closed form `[max(0, pA+pB-1), min(pA, pB)]`: + +| `(pA, pB)` | LP interval | Closed form | Abs. error | +|---|---|---|---:| +| (0.1, 0.2) | [0, 0.1] | [0, 0.1] | 0 | +| (0.5, 0.5) | [0, 0.5] | [0, 0.5] | 0 | +| (0.9, 0.8) | [0.7, 0.8] | [0.7, 0.8] | 1.11e-16 | +| (0.01, 0.99) | [0, 0.01] | [0, 0.01] | 0 | +| (1e-6, 1e-6) | [0, 1e-6] | [0, 1e-6] | 0 | +| (0.999999, 0.999999) | [0.999998, 0.999999] | same | 0 | + +Worst absolute error across the six configurations: **1.11e-16** — one unit in +the last place of a float64. **The LP kernel is numerically exact on this +family.** This is the strongest single result in the repository and it is +currently unadvertised. + +Coverage caveat: six marginal configurations is a hand-chosen census, not a +sample. It carries no confidence interval and does not establish exactness +outside these points. Property-based testing over the marginal simplex is +workstream [W4](EPISTEMIC_UPGRADE_PLAN.md#w4). + +### Scaling: atoms = 2^m + +`m` guardrails, all marginals fixed at 0.1, query = intersection of all: + +| m | atoms | wall time | interval | +|---:|---:|---:|---| +| 2 | 4 | 0.003 s | [0, 0.1] | +| 6 | 64 | 0.005 s | [0, 0.1] | +| 10 | 1,024 | 0.039 s | [0, 0.1] | +| 12 | 4,096 | 0.146 s | [0, 0.1] | +| 14 | 16,384 | 0.766 s | [0, 0.1] | +| 15 | 32,768 | 1.738 s | [0, 0.1] | +| 16 | 65,536 | 3.642 s | [0, 0.1] | +| 17 | 131,072 | 8.962 s | [0, 0.1] | +| 18 | 262,144 | 19.978 s | [0, 0.1] | + +Single measurement per point, no repetition, so **no dispersion is reported and +none should be inferred**. Repeated-measurement timing with p50 and IQR is +workstream [W7](EPISTEMIC_UPGRADE_PLAN.md#w7). + +Practical ceiling for the exact LP on this host: **m ≈ 18**, roughly doubling +per added guardrail. This is the measured basis for the relaxation hierarchy in +VISION Pillar VI — not an assumption. + +### The correlation cliff, reproduced + +Eighteen guardrails, each failing at p = 0.1, composed as a conjunction: + +- independence would predict `0.1^18 = 1e-18` +- the sharp identified interval is **[0, 0.1]** + +Under adversarial dependence, **eighteen stacked filters bound no better than +one**. The upper bound is `min_i p_i`, independent of `m`. This is the +project's thesis and it reproduces in 20 seconds on a laptop-class host. + +--- + +## 6. Canonicalization kernel + +Probing `cc.reporting.canonical.canonical_json_bytes` in the style of +Ghost-Ark's E1 provenance-kernel census. Intent is declared per class; the +verdict compares observation to intent. + +```bash +PYTHONPATH=src python scripts/canonicalization_probe.py +``` + +| Class | Intent | Observed | Verdict | +|---|---|---|---| +| unicode-key-collision (NFC vs NFD) | distinct | collapsed | **unintended-kernel** | +| nested-unicode-key-collision | distinct | collapsed | **unintended-kernel** | +| negative-zero | equivalent | distinct | over-discrimination | +| integer-above-2^53 | distinct | distinct | sound (CPython only — see below) | +| int-vs-float-same-value | distinct | distinct | sound | +| bool-vs-int | distinct | distinct | sound | +| float-exponent-form | distinct | distinct | sound | +| safe-integer-neighbours | distinct | distinct | sound (positive control) | +| object-key-order | equivalent | collapsed | sound (positive control) | +| array-element-order | distinct | distinct | sound (positive control) | +| large-document-single-byte | distinct | distinct | sound (positive control) | + +**Verdict counts: 8 sound, 2 unintended-kernel, 1 over-discrimination.** +Provenance is `census` — exact counts, no confidence intervals. + +The four positive controls pass, which is what makes the two failures credible +rather than an artifact of an over-strict probe. + +Findings [F-03](FINDINGS_REGISTER.md#f-03) through +[F-07](FINDINGS_REGISTER.md#f-07) record these in full. The headline: + +```python +>>> canonical_json_bytes({"é": 1, "é": 2}) # NFC key, NFD key +b'{"\xc3\xa9":2}' +``` + +Two distinct input keys, one output key, **no error raised**. The receipt hash +covers a document that is not the document supplied. + +The probe exits non-zero while any class carries `unintended-kernel` or +`rejection-asymmetry`, so this measurement is falsifiable rather than asserted: +fix the canonicalizer and the probe goes green. + +### RFC 8785 (JCS) conformance + +| Value | cc-framework emits | JCS emits | | +|---|---|---|---| +| `1e30` | `1e+30` | `1e+30` | ok | +| `10**30` | `1000000000000000000000000000000` | `1e+30` | **diverges** | +| `1.0` | `1.0` | `1` | **diverges** | +| `-0.0` | `-0.0` | `0` | **diverges** | +| `1e-7` | `1e-07` | `1e-7` | **diverges** | +| `100.0` | `100.0` | `100` | **diverges** | + +Five of six number forms diverge from RFC 8785. cc-framework's canonical form is +`json.dumps(sort_keys=True)`, which is a *convention*, not a *standard*, and it +is not the convention its sibling repositories use. + +--- + +## 7. Claim-discipline surface + +### What exists + +| Artifact | Lines | Enforced by | +|---|---:|---| +| `docs/research/NON_CLAIMS.md` | — | prose + verifier substring engine | +| `docs/claims/CLAIM_BOUNDARY_MANIFEST.md` (C0–C5 levels) | — | **nothing** | +| `docs/claims/claim_boundary_manifest.v0.1.json` | — | **nothing** | +| `scripts/validate_claim_boundary_manifest.py` | — | **nothing** | +| `src/cc/evidence/permission_compiler.py` forbidden-phrase list | 202 stmts | unit tests | +| `docs/theory/theorem_ledger.md` | 10 KB | test witnesses named per theorem | +| `docs/research/THEOREM_LEDGER.md` | 3 KB | — (second, divergent ledger) | + +`grep` across `.github/workflows/` and `.pre-commit-config.yaml` for +`claim`/`scan` returns only Bandit and detect-secrets. **No claim gate runs in +CI.** `scripts/validate_claim_boundary_manifest.py` is referenced by no +workflow, no Makefile target, and no test. + +### Proto-scan: Ghost-Ark's forbidden patterns applied here + +| Pattern | Hits | +|---|---:| +| `guarantee` | 70 | +| `production[- ]ready` | 7 | +| `enterprise[- ]ready` | 2 | +| `tamper[- ]proof` | 1 | +| `enterprise[- ]grade`, `formally verified`, `zero risk`, `secure by default`, `unbreakable`, `audit complete`, `one-click compliance` | 0 | + +Inspection of the hits matters more than the count: + +- The `guarantee` hits are **overwhelmingly negated** — `does not guarantee`, + `no guarantee of`. A naive scanner ported from Ghost-Ark would produce 70 + false positives on this repository and be switched off within a week. +- The `production[- ]ready` and `tamper[- ]proof` hits are mostly **inside the + claim-discipline machinery itself** (`permission_compiler.py`'s forbidden list, + `NON_CLAIMS.md`, the release checklist saying the project is *not* + production-ready). + +So the honest reading is: **cc-framework's prose discipline is already good; its +enforcement is absent.** The scanner this repository needs is not Ghost-Ark's — +it needs negation and allowlist handling from day one. See +[W2](EPISTEMIC_UPGRADE_PLAN.md#w2). + +--- + +## 8. CI gates + +| Gate | Present | Scope | +|---|---|---| +| ruff lint | yes | whole repo | +| ruff format | yes (pre-commit) | whole repo | +| mypy | yes | **7 files of 90** | +| pytest | yes | full suite, Python 3.10–3.13 | +| coverage threshold | **no** | — | +| claim scanner | **no** | — | +| claim-boundary manifest validation | **no** | — | +| artifact boundary | yes | `scripts/check_artifact_boundary.py --static` | +| package build + twine check | yes | — | +| enterprise smoke (moto) | yes | — | +| minimal example | yes | `examples/minimal/run_bounds.py` | +| Bandit / detect-secrets / pip-audit | yes | `security.yml` | +| mutation testing | **no** | — | +| property-based test gate | **no** | hypothesis is a declared dep; no gate | +| cross-language verifier agreement | **no** | no second implementation exists | +| adversarial receipt corpus | **no** | — | +| reproducibility replay manifest | partial | `scripts/reproduce_paper.py`, not a manifest | + +--- + +## 9. Repository hygiene + +| Item | Measurement | +|---|---| +| Largest tracked files | 7 Blender renders, 2.2–2.8 MB each, **17.8 MB total** | +| Archived JSONL checkpoints | 4 × 636 KB in `docs/archive/generated-checkpoints/` | +| `.git` size | 43 MB against a 54 MB working tree | +| Duplicate theorem ledgers | `docs/theory/theorem_ledger.md` (10 KB) and `docs/research/THEOREM_LEDGER.md` (3 KB) | +| Legacy shim | `src/cc/_legacy/` — 89 lines, one file | +| `build/` directory on disk | present, untracked (0 files in git) | +| Schema `$id` host | `cc-framework.local` — not resolvable | + +--- + +## Reproduction + +Every table above is regenerated by: + +```bash +python scripts/upgrade_baseline.py --out docs/upgrade/baseline.json +``` + +The script is a deliverable of workstream [W0](EPISTEMIC_UPGRADE_PLAN.md#w0). Until +it exists, this document is a **hand-recorded measurement**, and it says so +here rather than implying automation that is not present. + +## What was not measured + +Reported so that absence is not mistaken for a null result: + +- **Mutation score.** No mutation testing has ever been run on this repository. +- **Cross-language agreement.** No second implementation of the kernel exists + inside this repository to disagree with. +- **External reviewer reproduction.** No stranger has ever reproduced these + artifacts. Every adversary in this tree was written by the author of the code + it attacks. +- **Timing dispersion.** Every timing above is a single measurement. +- **Real guardrail marginals.** No `p_i` in this repository was measured against + a production guardrail. All are supplied, synthetic, or assumed. diff --git a/docs/upgrade/COMMITTEE_SCORECARD.md b/docs/upgrade/COMMITTEE_SCORECARD.md new file mode 100644 index 0000000..54a60f8 --- /dev/null +++ b/docs/upgrade/COMMITTEE_SCORECARD.md @@ -0,0 +1,354 @@ +# Committee Scorecard — cc-framework, August 2026 + +> Modelled on Ghost-Ark's committee scorecard. Scores are **judgements, not +> measurements** — they are defensible only because each one names the evidence +> that would raise it and the evidence that would lower it. A score whose +> movement conditions are unstated is meaningless. +> +> Passing tests are evidence. Passing tests are not correctness. Passing tests +> are not safety. Passing tests are not production readiness. + +Baseline facts: [BASELINE_MEASUREMENTS.md](BASELINE_MEASUREMENTS.md). +Defects: [FINDINGS_REGISTER.md](FINDINGS_REGISTER.md). + +--- + +## Summary + +| # | Dimension | Now | Target (v0.4) | Workstream | +|---|---|---:|---:|---| +| 1 | Mathematical correctness | **8.9** | 9.4 | W4 | +| 2 | Canonicalization & provenance integrity | **3.8** | 8.5 | W3 | +| 3 | Claim discipline — prose | **8.8** | 9.2 | W2 | +| 4 | Claim discipline — enforcement | **2.1** | 8.5 | W2 | +| 5 | Test depth | **6.4** | 8.5 | W4 | +| 6 | External reproducibility | **4.2** | 8.0 | W0, W7 | +| 7 | Consumability as a library | **2.6** | 8.5 | W5 | +| 8 | Cross-implementation agreement | **0.0** | 8.0 | W5 | +| 9 | Empirical grounding | **2.4** | 6.5 | W7 | +| 10 | Statistical honesty machinery | **7.9** | 9.0 | W4, W7 | +| 11 | Evidence-governance architecture | **7.6** | 8.5 | W6 | +| 12 | Formal readiness | **3.1** | 4.5 | W4 | + +**Committee verdict.** cc-framework is approximately: + +- **8.4 / 10** as a *mathematical* research artifact — the kernel is exact, the + theorem ledger names witnesses, the non-claims are unusually disciplined. +- **4.1 / 10** as a *verifiable evidence* artifact — the canonicalization kernel + has an unexamined collapse, nothing enforces the claim manifest, and no + independent implementation exists to disagree with it. +- **2.6 / 10** as a *consumable library* — three downstream repositories + reimplemented its calculus rather than depend on it, and one of them wrote + down why. + +The gap between the first and third numbers is the whole plan. + +--- + +## 1. Mathematical correctness — 8.9 + +*Measures: whether the computed bounds are the bounds claimed.* + +**Evidence supporting.** FH recovery exact to 1.11e-16 worst case across six +marginal configurations. `kernel/frechet_classes.py` 98.87% covered. Theorem +ledger T1–T6 with proof status, implementation witness, test witness, and a +per-theorem non-claim. Infeasibility raises rather than returning a plausible +number. Monotonic tightening tested. LP is sharp by finite-dimensional convexity, +computationally witnessed. + +**What would raise it.** Property-based tests over the marginal simplex rather +than six chosen points (the current evidence is a census, not a sample, and +carries no interval). Dual certificates emitted alongside primal witnesses so a +skeptic can verify optimality without re-solving. Exact rational arithmetic for +small instances as a cross-check on the float path. + +**What would lower it.** Any marginal configuration where the LP and the closed +form disagree beyond solver tolerance. A degenerate constraint set that returns +`optimal` on an empty feasible region. + +--- + +## 2. Canonicalization & provenance integrity — 3.8 + +*Measures: whether a receipt identifies the document it claims to.* + +**Evidence supporting.** Canonical form is deterministic, sorted, compact, +UTF-8, rejects NaN/Infinity, rejects non-string keys, rejects non-JSON-native +types, and excludes the receipt hash from its own preimage. 91.89% covered. +That is a real, careful implementation. + +**What lowers it, now.** [F-03](FINDINGS_REGISTER.md#f-03): two Unicode-distinct +keys silently become one, with no error, inside the function every signed +artifact routes through. [F-04](FINDINGS_REGISTER.md#f-04): five of six number +forms diverge from RFC 8785. [F-05](FINDINGS_REGISTER.md#f-05): integers above +2^53 cannot survive a JS verifier. [F-07](FINDINGS_REGISTER.md#f-07): duplicate +keys accepted last-wins on read. + +The score is not 3.8 because the code is careless. It is 3.8 because the code is +careful and **has never been attacked**. Ghost-Ark found five unintended kernel +members in its own pipeline by building a 31-class census. cc-framework has not +run the equivalent, and the one pass performed for this plan found four issues +in under an hour. + +**What would raise it.** A committed adversarial corpus with declared intent per +class. Collision detection that fails closed. A documented, versioned +`cc.canonical.v1` profile stating its relationship to RFC 8785. Strict duplicate- +key rejection on read. + +**What would lower it.** A collision found by anyone outside the project. + +--- + +## 3. Claim discipline — prose — 8.8 + +*Measures: whether the words stay inside the evidence.* + +**Evidence supporting.** `NON_CLAIMS.md` is a genuine artifact — ten non-claims, +each with why-not and what-instead. The C0–C5 claim-boundary manifest maps every +public claim to level, lane, support, tests, files, and non-claim. `VISION.md` +labels itself aspirational in its first line and refuses to relax a single +non-claim. `cliff.py` refuses confidence claims on post-selection intervals *in +code*, with a comment explaining the statistics. Legacy metrics emit +`FutureWarning` naming what they are not. + +This is, in places, stronger than the flagship's. The C0–C5 lattice has no +Ghost-Ark equivalent. + +**What would raise it.** Adopting Vinctura's stricter rule — *no orphan claims: +every public sentence carries the command that falsifies it, or an explicit +limitation* — and applying it to the README. Conceding the 1935 point +([F-18](FINDINGS_REGISTER.md#f-18)) above the fold instead of leaving it for a +critic to make. + +**What would lower it.** Any README sentence a reader cannot map to a command. + +--- + +## 4. Claim discipline — enforcement — 2.1 + +*Measures: whether the discipline survives an author in a hurry.* + +**Evidence supporting.** `permission_compiler.py` carries a forbidden-phrase list +and is 95.28% covered. The claim-governance verifier checks non-claim substance +rather than exact strings. `check_artifact_boundary.py` runs in CI. + +**What lowers it.** No claim scanner in CI at all +([F-12](FINDINGS_REGISTER.md#f-12)). `validate_claim_boundary_manifest.py` is +wired into nothing — not CI, not the Makefile, not a test. Two divergent theorem +ledgers with no governing rule ([F-15](FINDINGS_REGISTER.md#f-15)). Strict typing +declared and enforced on 7 of 90 files ([F-02](FINDINGS_REGISTER.md#f-02)) — claim +inflation expressed in build configuration. + +The prose is 8.8 and the enforcement is 2.1. **Everything holding this repository +honest is currently a person remembering to be honest.** + +**What would raise it.** The manifest validator in CI. A claim scanner with +negation and allowlist handling from day one — a naive port of Ghost-Ark's would +fire on 70 negated uses of "guarantee" and be disabled within a week. A test +that fails when a manifest row names a file that does not exist. + +**What would lower it.** A published claim that no artifact supports, merged +green. + +--- + +## 5. Test depth — 6.4 + +*Measures: whether the suite would notice a defect.* + +**Evidence supporting.** 689 tests, 108 files, unit/integration/e2e/regression/ +performance/experiment separation, adversarial tests for the transparency log, +fail-closed semantics tested, selective-inference guard tested, 69.91% coverage +with branch coverage on. + +**What lowers it.** The report CLI at 0% ([F-13](FINDINGS_REGISTER.md#f-13)). +`core/stats.py` at 38% over 756 statements +([F-14](FINDINGS_REGISTER.md#f-14)) — the statistics engine, in a repository +about statistical honesty. No coverage gate. No mutation testing, so the score is +*unknown*, not low. Hypothesis is a declared dependency with no gate. A +regression test that shells out to the whole unit suite and masks real failures +([F-20](FINDINGS_REGISTER.md#f-20)). Nine tests that have never run in CI +([F-17](FINDINGS_REGISTER.md#f-17)). + +**What would raise it.** Coverage floor at the measured 69.91%, ratcheting. +Mutation testing on `kernel/` and `reporting/` with a published score. Property- +based tests on the statistics module. CLI golden tests. + +**What would lower it.** A defect found downstream that the suite could have +caught. + +--- + +## 6. External reproducibility — 4.2 + +*Measures: whether a stranger can reproduce the artifacts.* + +**Evidence supporting.** `scripts/reproduce_paper.py`, +`scripts/verify_paper_artifacts.py`, a claim-governance capsule with expected +outputs and a manifest, `examples/minimal/`, a devcontainer, a Dockerfile, +`make reproduce-*` targets, pinned artifact manifests. + +**What lowers it.** The documented install path produces a red suite +([F-01](FINDINGS_REGISTER.md#f-01)) — the first thing a stranger encounters is a +failure that is not a real failure. No single-command reproduction. No replay +manifest in Ghost-Ark's sense. **No stranger has ever done it**; every adversary +in this tree was written by the author of the code it attacks. + +**What would raise it.** `make verify` that goes green from a clean clone on a +clean machine, tested in CI from `.[test]` specifically. A reviewer Dockerfile. +One external person reproducing the paper artifacts and saying so in writing. + +**What would lower it.** An external reviewer failing to reproduce. + +--- + +## 7. Consumability as a library — 2.6 + +*Measures: whether a downstream project can depend on this instead of rewriting it.* + +**Evidence supporting.** Installable, four console entry points, a lazy-loading +kernel aggregate, `docs/api.md`, four downstream-facing design specs. + +**What lowers it.** Three independent reimplementations of the core calculus +([F-09](FINDINGS_REGISTER.md#f-09)). A written rejected-adoption report from a +real consumer naming the ROC framing as the obstacle +([F-08](FINDINGS_REGISTER.md#f-08)). A dated, explicit request from a consumer to +route through `cliff.py:321` that cannot be honoured across a language boundary +([F-10](FINDINGS_REGISTER.md#f-10)). No ingest path for the contract Ghost-Ark +declares binding ([F-11](FINDINGS_REGISTER.md#f-11)). + +This is the lowest non-zero score and the highest-leverage one. The mathematics +is 8.9 and nobody can use it. + +**What would raise it.** `cc.compose` with marginals in and bounds out, no ROC +concept in the signature. `cc-guard` as a stdin/stdout JSON surface. Vinctura's +214 lines deleted and their numbers reproduced from the library. + +**What would lower it.** A fourth reimplementation. + +--- + +## 8. Cross-implementation agreement — 0.0 + +*Measures: whether independent implementations produce the same answer.* + +There is nothing to score. No second implementation exists inside this +repository, no conformance corpus is published, and the two external +implementations have never been compared to this one on a single case. + +Zero is the honest score. It is also the easiest to move: Ghost-Ark already +operates E5 (cross-language verifier agreement) and E7 (differential fuzz) +successfully. The machinery exists; it has never been pointed here. + +**What would raise it.** `conformance/cc-kernel-v1/` published with exact expected +values and an adversarial section. A second implementation in another language +inside this repository. A differential fuzz harness comparing them. Agreement +demonstrated against Ghost-Ark's TypeScript and Vinctura's JavaScript. + +**What would lower it.** Nothing. It cannot go lower. + +--- + +## 9. Empirical grounding — 2.4 + +*Measures: whether any number here came from a real system.* + +**Evidence supporting.** A dependence benchmark, adapter implementations for +Llama Guard / NeMo / Guardrails-AI, a rails demo, correlation-cliff copula +simulations, week-by-week experiment memos. + +**What lowers it.** **No `p_i` in this repository was measured against a +production guardrail.** Every marginal is supplied, synthetic, or assumed. The +adapters exist; no measurement campaign has run through them. The experiment lane +has never executed in CI ([F-17](FINDINGS_REGISTER.md#f-17)). VISION names the +Correlation Atlas as the empirical keystone and the most citable artifact +available; it does not exist. + +**What would raise it.** The Atlas: two or three real guardrails on one public +jailbreak corpus, reporting per-pair marginals, observed joint rates, phi, and +the independence-versus-worst-case gap, each row emitting a certificate. Even a +small one changes this score more than any amount of engineering. + +**What would lower it.** Publishing a measured-looking number that came from a +simulation. + +--- + +## 10. Statistical honesty machinery — 7.9 + +*Measures: whether the code refuses claims the data cannot support.* + +**Evidence supporting.** This is the repository's most distinctive asset. The +post-selection refusal at `cliff.py:321` returns `discovery-only` with no +confidence claim, and the comment explains why: *"A discovery is a hypothesis; +only held-out data can certify it."* Confirmatory/exploratory provenance is a +first-class type. Wilson intervals rather than normal approximations. Legacy +metrics warn about what they are not. Non-finite bootstrap samples are dropped +with a warning rather than silently. + +A downstream repository independently identified this guard as *"the single most +elegant thing available in this program."* External parties do not say that about +statistical software often. + +**What would raise it.** Adopting Ghost-Ark's reporting rules as executable +assertions: no proportion without a denominator, no interval over a curated +census, no interval below n = 30, no point estimate without dispersion. Ghost-Ark +enforces these in `reportProportion` / `assertCensusReporting`; cc-framework +enforces the post-selection rule and not the others. Confidence bands around +`[L, U]` under estimated marginals — VISION Pillar I — would raise it furthest. + +**What would lower it.** Any path that emits a confidence interval over a +hand-authored corpus. + +--- + +## 11. Evidence-governance architecture — 7.6 + +*Measures: whether evidence carries its own boundaries.* + +**Evidence supporting.** Claim envelopes, role ontology, decay/hazard policy, +extremal scenarios, confirmatory protocol, Merkle log with adversarial tests, +permission compiler, a governance capsule with expected artifacts and a manifest. +9,946 lines, mostly 80–95% covered. Non-claims are carried *inside* signed +payloads, not merely alongside them. + +**What lowers it.** No ingest contract for the upstream that feeds it +([F-11](FINDINGS_REGISTER.md#f-11)). Two schemas with a non-resolvable `$id` and +version in the title ([F-19](FINDINGS_REGISTER.md#f-19)). The governance verdict +is only as good as the canonicalization beneath it — dimension 2 at 3.8 caps this +one. + +**What would raise it.** The discretization ingest module. Versioned resolvable +schema identifiers. An evidence-window contract in Ghost-Ark's sense. + +--- + +## 12. Formal readiness — 3.1 + +*Measures: distance to machine-checked proof.* + +**Evidence supporting.** Theorem ledger with explicit proof status per theorem +and honest labelling of what is "standard theorem, computationally witnessed" +versus proved here. Explicit invariants in the kernel. LP sharpness follows from +finite-dimensional convexity, which is a proof, just not a mechanised one. + +**What lowers it.** No mechanised proof of any kind. No TLA+, Alloy, Lean, or +Coq. No exact-arithmetic cross-check of the float LP path. Dual certificates are +not emitted, so LP optimality is asserted by the solver rather than independently +checkable. + +**What would raise it.** Emitting dual certificates — the cheapest real move, +turning "the solver said optimal" into "here is the certificate, check it +yourself." An exact rational LP for small `m` as an oracle. A Lean statement of +the FH recovery theorem is a stretch goal, not a v0.4 target. + +**What would lower it.** Claiming formal verification. The word does not appear +in this repository today; keep it that way. + +--- + +## The committee's closing question + +For every score above: *what evidence would raise it, and what evidence would +lower it?* Both are stated for all twelve. Where a future revision cannot answer +both, that score should be deleted rather than defended. diff --git a/docs/upgrade/DOWNSTREAM_CONTRACTS.md b/docs/upgrade/DOWNSTREAM_CONTRACTS.md new file mode 100644 index 0000000..0afa6aa --- /dev/null +++ b/docs/upgrade/DOWNSTREAM_CONTRACTS.md @@ -0,0 +1,355 @@ +# Downstream Contracts + +> **Scope note.** Every change described here is made **in cc-framework**. This +> document describes what the other repositories need and what this repository +> must offer; it does not propose edits to them. Where a downstream change would +> be required to complete a loop, it is named as *their* decision, not scheduled +> here. +> +> **Non-claim.** Nothing in this document establishes that any downstream system +> is safe, correct, or compliant. A contract that carries lineage is a contract +> that can be checked — not a contract that is true. + +Three consumers, three different failures of the current library, three +different fixes. + +| Consumer | Relationship | Current state | What cc-framework owes it | +|---|---|---|---| +| [ghost-ark](#ghost-ark) | upstream producer *and* parallel implementer | reimplemented the calculus in TypeScript; declared a binding ingest rule this repo cannot honour | an ingest module and a conformance corpus | +| [vinctura](#vinctura) | rejected adopter | read the source, rejected the API, wrote 214 lines of JS; has a dated request this repo cannot serve | an ROC-free composition surface and a cross-language guard | +| [b2b-spatial](#b2b-spatial-intelligence-engine) | skeptic | demoted the core contribution to "engineering" | a defensible answer, and instrumentation it can actually use | + +--- + +## The shared finding + +All three relationships fail the same way. cc-framework's mathematics is sound +and its packaging makes the mathematics unreachable. Every consumer independently +concluded that reimplementing was cheaper than depending — and **each was right**, +given the API they were offered. + +The upgrade is therefore not "add features." It is: make the thing that already +works reachable from outside Python, in a shape that matches how the calculus is +actually used. + +--- + +## ghost-ark + +`PSUCyberSecurityLab/ghost-ark` — the AWS-native evidence and control plane. +Public. 501 TypeScript files, 169 test files, 156 markdown documents. + +### What Ghost-Ark already decided + +`docs/research/CLAIM_EVIDENCE_MATRIX.md` carries a rule stated as binding: + +> CC-Framework must not consume naked binary labels from Ghost-Ark. Binary +> variables must be tied to a discretization rule, threshold, comparator, +> calibration digest, scoring digest, validity window, and parent evidence +> lineage. + +and a layer table that assigns the claim boundary at each hop: + +| Layer | Boundary | +|---|---| +| Ghost discretization rule receipt | defines how a score becomes a binary variable; does not prove the score is valid | +| Ghost binary observation | records applying the rule; does not prove the threshold is optimal | +| CC evidence bundle | provides CC-compatible binaries and provenance; does not prove safety | +| **CC-Framework bounds report** | **computes what follows under stated assumptions; does not validate upstream data collection** | +| Ghost signed claim envelope | binds evidence, assumptions, result digest; does not widen the claim | + +The object is specified: `ghost.discretization_rule_receipt.v1`, with a monotonic +risk invariant (`higher_is_riskier` admits only `>=` and `>`), seventeen required +fields, and eleven verification preconditions. + +**cc-framework implements none of it** ([F-11](FINDINGS_REGISTER.md#f-11)). The +rule binds a repository that cannot honour it. + +### The parallel implementation + +`packages/research-frontier/src/ccCorrelation.ts` computes, in TypeScript: +per-variable failure counts and rates, 95% Wilson intervals, `n00/n01/n10/n11` +co-failure tables, observed joint rates with Wilson intervals, empirical phi, and +**pairwise Fréchet lower and upper bounds**. It requires a complete rectangular +grid and rejects mixed cohorts, non-binary values, and absent stationarity +declarations. + +It is a careful implementation of cc-framework's calculus by someone who could +not call cc-framework. It has never been compared against the Python. + +### What cc-framework ships + +**C1 — `cc.ingest.discretization`** (owner [W6](EPISTEMIC_UPGRADE_PLAN.md#w6)) + +A fail-closed reader for `ghost.discretization_rule_receipt.v1` implementing all +eleven preconditions: + +| Precondition | Refusal on violation | +|---|---| +| binary domain | value is exactly 0 or 1 | +| failure semantics | 1 means guardrail failure / unsafe pass | +| bounded score domain | finite lower and upper bounds declared | +| threshold legality | threshold inside the declared domain | +| signed comparator | comparator included in the rule digest | +| monotonic risk invariant | comparator direction matches score polarity | +| calibration digest | present | +| scoring digest | scoring function, model, or policy digest present | +| temporal validity | observation timestamp inside the rule validity window | +| parent lineage | observation references a parent receipt | +| stationarity declaration | cohort declares whether joint dependence is assumed stable | + +A marginal arriving without lineage is **refused**, not defaulted. The negative +corpus carries one fixture per precondition, and each must be rejected with a +distinguishable reason — a reader that rejects everything for the same reason is +not enforcing eleven rules, it is enforcing one. + +`declared_reference` means the observation carries receipt identifiers. It does +**not** mean cc-framework verified that receipt or its signature. That non-claim +travels with the ingested object. + +**C2 — the conformance corpus** (owner [W5](EPISTEMIC_UPGRADE_PLAN.md#w5)) + +`conformance/cc-kernel-v1/` — language-agnostic cases with pinned expected +values, covering pairwise FH bounds, Wilson intervals, phi, and the n-ary +conjunction and union bounds. Ghost-Ark's TypeScript either passes it or it is +not a CC kernel. Running it there is Ghost-Ark's decision; publishing it is this +repository's obligation. + +**C3 — the canonicalization treaty** (owner [W3](EPISTEMIC_UPGRADE_PLAN.md#w3)) + +[F-04](FINDINGS_REGISTER.md#f-04) and [F-05](FINDINGS_REGISTER.md#f-05) mean a CC +report canonicalized here and re-canonicalized in Ghost-Ark's TypeScript can +disagree — five of six number forms diverge from RFC 8785, and integers above +2^53 do not survive `JSON.parse`. The treaty is a written, versioned +`cc.canonical.v1` profile stating its relationship to RFC 8785, plus a schema +constraint bounding receipt-covered integers to the IEEE-754 safe range. + +This must be decided **before** an independent verifier is written. Ghost-Ark's +E1 census found that the kernel is set by the parser, not the canonicalizer; the +same corollary applies here and cannot be fixed downstream. + +### What this does not create + +No claim that Ghost-Ark's evidence is valid, that its scores are calibrated, or +that a CC report over Ghost-Ark observations says anything about deployed +safety. The ingest module checks that evidence carries its lineage. Whether the +lineage describes a well-designed measurement is outside every layer in the +table above. + +--- + +## vinctura + +`Cubits11/vinctura` — graduation photography, and underneath it a provenance +kernel and a verifiable-credential register. Private. + +Vinctura's `CLAIMS.md` opens with the strictest rule in the program: + +> Every public claim this repository makes, with the command that falsifies it or +> an explicit limitation. **No orphan claims.** A sentence that no command can +> demonstrate is deleted or given a command. +> +> Limitations come first, in this file as in every other. + +cc-framework should adopt this rule ([W2](EPISTEMIC_UPGRADE_PLAN.md#w2)). It is +stronger than anything currently enforced here. + +### Failure 1 — the API rejected + +`scripts/compose-bounds.js` records, in its header, why cc-framework was not used +([F-08](FINDINGS_REGISTER.md#f-08)): `cc.core.composition_theory` operates on ROC +point sets and bounds the Youden J statistic, which presumes each guardrail is a +classifier with a threshold and an operating curve. Vinctura's four controls are +deterministic refusal rules — `SELF_REPORTED` refuses iff `loggedBy === memberId`. +No threshold, no operating point, no false-positive rate. + +> Forcing a deterministic refusal rule into an ROC shape would produce numbers +> with the form of a measurement and none of the content. + +The consumer was right, and identified exactly what transfers: "the FH inequality +is applied directly to the events. **That is the part that transfers**; the ROC +machinery is not." + +**C4 — `cc.compose`** (owner [W5](EPISTEMIC_UPGRADE_PLAN.md#w5)) + +A surface whose signature contains no ROC concept at all: + +```python +compose_bounds( + marginals: Mapping[str, float], # P(E_i) — event probabilities, not TPR/FPR + event: Literal["all", "any"] | LinearQuery, + constraints: Sequence[Constraint] = (), +) -> Interval # sharp [L, U], plus witnesses +``` + +Deterministic predicates are first-class inputs. Detectors reach the same surface +by supplying their operating point as a marginal — the ROC path becomes an +optional adapter *on top of* the event calculus, never underneath it. + +**Acceptance gate.** Not "the API exists." The gate is: Vinctura's four-control +result — including the sensitivity analysis over assumed detection rates — is +reproduced from `cc.compose` in a cc-framework test, and their 214 lines could be +deleted. If it cannot be reproduced, the surface is still wrong. + +The test must also reproduce Vinctura's **correct refusal**: there is no +countermonotone regime for n > 2, because the FH lower bound is not a copula in +dimension ≥ 3 though it remains pointwise sharp. A composition API that silently +offers a "countermonotone" option for four events is wrong, and Vinctura noticed +before this repository did. + +### Failure 2 — the guard that cannot be reached + +`docs/research/program/ultracode/UC-10-KERNEL-BRIDGE.md` §4.3 +([F-10](FINDINGS_REGISTER.md#f-10)): + +> Optional stopping invalidates the density estimate entirely — and the sibling +> project `cc-framework` already refuses confidence claims on post-selection +> intervals at `src/cc/kernel/cliff.py:321`. **Use that.** [...] Making one +> repository's guardrail catch another repository's error is the strongest +> possible demonstration that the guardrail is real. +> +> That last point is the single most elegant thing available in this program. Do it. + +The guard exists and is correct. It is reachable only from Python, in-process. + +**C5 — `cc-guard`** (owner [W5](EPISTEMIC_UPGRADE_PLAN.md#w5)) + +Two deliverables, because one is not enough: + +1. A `cc-guard` subcommand reading JSON on stdin and writing a verdict on + stdout — `{"regime": "discovery-only", "confidence_claim": null, "reason": ...}` — + exposing the provenance-tagged guards without a Python API. +2. The same logic as a **pure-data decision table** in the conformance corpus, so + a JavaScript caller can enforce the rule with no Python process at all. A + subprocess dependency is a weaker bridge than a table. + +**Acceptance gate.** Vinctura's G3 gate — `npm test -- probe.post-selection-refused` — +passes against cc-framework's guard, by either route. Whether they wire it is +their call; that it *can* be wired is this repository's obligation. + +### Failure 3 — the kernel probe + +UC-10 specifies a `kernel-probe` measuring `|ker C|` for a canonicalization +function `C : Events → Records`, with `cheapestCollisionCostRatio` as the +security-relevant quantity — pre-registered sampling design, committed stopping +rule, and results reported whether or not they are interesting. + +cc-framework's canonicalizer is a **valid target**, and +[F-03](FINDINGS_REGISTER.md#f-03) is a member of its kernel found by hand in +under an hour. The adversarial corpus in [W3](EPISTEMIC_UPGRADE_PLAN.md#w3) +should be built in a shape a probe can consume: declared intent per class, +machine-readable verdicts, no confidence interval over a curated census. + +That last constraint is the pleasing part. Vinctura's probe wants to route its +density estimate through cc-framework's post-selection refusal; cc-framework's +own corpus is a census and must therefore carry no interval. **The guard applies +to the repository that wrote it.** + +--- + +## b2b-spatial-intelligence-engine + +`Cubits11/b2b-spatial-intelligence-engine` ("Assay") — hardware-attested capture +provenance via Nitro Enclaves, App Attest, StrongBox, NIST beacons, C2PA/JUMBF. +Private. + +### The skeptic's verdict + +`docs/latent-research-program.md` runs a kill-ledger over the program's research +concepts. The relevant row ([F-18](FINDINGS_REGISTER.md#f-18)): + +> **Fréchet ceiling + reachability sharpening** — "Adversarial robustness ≠ +> average-case robustness" — standard in ML security since 2014. **DEMOTED to +> engineering.** The mathematics is 1935; the sharpening is a known distinction. +> Survives as reporting practice, not as science. + +This is correct and cc-framework should say so first. See +[W9](EPISTEMIC_UPGRADE_PLAN.md#w9). + +What survives the demotion is worth more than what it removes: reporting practice +that a hostile reviewer trusts is exactly what an evidence platform needs, and +"survives as reporting practice" is a *use case*, not a dismissal. + +### Where the calculus actually applies + +Assay composes several independent checks before issuing a verdict: device +certificate chain validation, NIST beacon temporal freshness, offline Merkle CRL +revocation, and PCR0 enclave measurement. Its own README frames the value as +replacing probabilistic detection with deterministic attestation — and the +composed question is exactly CC's object: + +> Given per-check evasion marginals, what is the sharp bound on an artifact +> passing **all** checks while being fabricated, under unknown dependence between +> the checks? + +These checks are deterministic predicates, not classifiers — the same shape as +Vinctura's controls, and the same reason `cc.compose` (C4) is the surface that +fits. An attacker who compromises a signing key correlates several checks at +once; independence across them is precisely the assumption an adversary attacks. + +**C6 — the deterministic-predicate composition path** is C4. No separate +deliverable; the same surface serves both consumers, which is the argument for +building it once and building it right. + +### The three-valued verdict + +`schemas/vinctura_spatial_verdict.v1.schema.json` carries a lesson cc-framework +should learn rather than teach: + +``` +"class": ["WITHIN_DECLARED_BOUND", "EXCEEDS_DECLARED_BOUND", "INDETERMINATE"] +"INDETERMINATE is not a pass. Relying parties MUST NOT collapse it to either other value." +``` + +and, on the convenience boolean: + +> Deliberately NOT named 'compliant' [...] A boolean asserting legal compliance +> would be a claim Vinctura cannot support. Consumers MUST branch on 'class'; +> this field exists so that a null-unaware consumer fails loudly rather than +> silently reading INDETERMINATE as a pass. + +**C7 — an explicit indeterminate state in the CC report** +(owner [W6](EPISTEMIC_UPGRADE_PLAN.md#w6)) + +Today, a CC report either carries an interval or an error is raised. There is no +first-class "the evidence does not identify this" verdict that survives +serialization. Insufficient evidence, an infeasible constraint set, and a +refused post-selection claim are all *indeterminate*, and each should serialize +as such with a machine-readable reason — never as `[0, 1]`, which a careless +consumer reads as a computed bound. + +The design constraint is Assay's, and it is right: a null-unaware consumer must +fail loudly rather than silently read indeterminate as a pass. + +### The convergence worth naming + +Assay ships a research module titled `01-canonicalization-collapse.html`. +Ghost-Ark's E1 measured five unintended kernel members in its own pipeline. +cc-framework's canonicalizer silently merges Unicode-distinct keys +([F-03](FINDINGS_REGISTER.md#f-03)). + +**Three repositories in one program are working on canonicalization collapse. +Two are studying it. One has it and had not looked.** W3 closes that, and the +corpus it produces is the artifact the other two can measure against. + +--- + +## Contract summary + +| ID | Deliverable | Serves | Workstream | Acceptance | +|---|---|---|---|---| +| C1 | `cc.ingest.discretization` | ghost-ark | W6 | eleven preconditions, one negative fixture each, distinguishable refusals | +| C2 | `conformance/cc-kernel-v1/` | ghost-ark, vinctura | W5 | pinned expected values; adversarial section; runs in CI | +| C3 | `cc.canonical.v1` profile + integer bound | ghost-ark | W3 | written RFC 8785 relationship; safe-range constraint in schema | +| C4 | `cc.compose` (ROC-free) | vinctura, b2b-spatial | W5 | Vinctura's four-control numbers reproduce; no countermonotone option for n>2 | +| C5 | `cc-guard` CLI + decision table | vinctura | W5 | Vinctura's G3 gate passes by either route | +| C6 | deterministic-predicate path | b2b-spatial | W5 | same surface as C4 | +| C7 | indeterminate verdict state | b2b-spatial | W6 | serializes with reason; never `[0, 1]` | + +## What none of this establishes + +The contracts make evidence checkable. They do not make it true. No consumer +should read a passing contract check as establishing that a guardrail works, a +threshold is right, a cohort generalizes, an artifact is authentic, or a system +is safe. Each contract carries its own non-claim above, and those non-claims +travel with the artifacts, not merely with this document. diff --git a/docs/upgrade/EPISTEMIC_UPGRADE_PLAN.md b/docs/upgrade/EPISTEMIC_UPGRADE_PLAN.md new file mode 100644 index 0000000..8eadcfb --- /dev/null +++ b/docs/upgrade/EPISTEMIC_UPGRADE_PLAN.md @@ -0,0 +1,671 @@ +# Epistemic Upgrade Plan — cc-framework + +> **Status: plan.** Nothing in this document is implemented. It describes work +> proposed for v0.4, grounded in measurements taken at commit `3e22c39` on +> 2026-08-19. +> +> **Non-claim.** This plan does not assert that cc-framework is safe, correct, +> production-ready, or fit for any deployment. It does not claim the work +> described here will succeed, and it does not relax a single boundary in +> [`NON_CLAIMS.md`](../research/NON_CLAIMS.md) or the +> [claim-boundary manifest](../claims/CLAIM_BOUNDARY_MANIFEST.md). A plan is a +> statement of intent. Only the acceptance gates below can turn any of it into +> evidence. + +| | | +|---|---| +| **Scope** | `Cubits11/cc-framework` only. No change is proposed to any other repository. | +| **Measured baseline** | [BASELINE_MEASUREMENTS.md](BASELINE_MEASUREMENTS.md) | +| **Defects found** | [FINDINGS_REGISTER.md](FINDINGS_REGISTER.md) — 20 findings, 5 at S1 | +| **Scored dimensions** | [COMMITTEE_SCORECARD.md](COMMITTEE_SCORECARD.md) — 12 dimensions | +| **Target tiers** | [VERIFICATION_LADDER.md](VERIFICATION_LADDER.md) | +| **Consumer obligations** | [DOWNSTREAM_CONTRACTS.md](DOWNSTREAM_CONTRACTS.md) — C1–C7 | + +--- + +## 1. The finding that organizes everything + +cc-framework's mathematics is **exact**. The LP recovers Fréchet–Hoeffding to +1.11e-16 worst case. It reproduces the correlation cliff in twenty seconds: +eighteen guardrails at p = 0.1 each, composed as a conjunction, bound to +`[0, 0.1]` — where independence would predict 1e-18. Eighteen filters buy +nothing under adversarial dependence. That result is the thesis, and it works. + +**And three separate projects reimplemented it rather than depend on this +repository.** Ghost-Ark in TypeScript, Vinctura in JavaScript, and one of them +wrote down exactly why: + +> The obvious move was to call `cc.core.composition_theory` [...] it operates on +> ROC POINT SETS and bounds the Youden J statistic. That is a DETECTOR framing — +> it assumes each guardrail is a classifier with a threshold and an operating +> curve. Vinctura's controls are not classifiers. +> +> — `vinctura/scripts/compose-bounds.js` + +A consumer read the source, found the mathematics correct and the ontology wrong, +and wrote 214 lines of JavaScript instead. That is not a documentation gap. It is +an API that models the wrong thing. + +So the scorecard reads: mathematical correctness **8.9**, consumability **2.6**, +cross-implementation agreement **0.0**. The plan closes the second and third +without touching the first. + +### The three failures, stated once + +1. **Reachability.** The calculus is correct and unreachable — wrong ontology in + the API, Python-only, no conformance corpus. Nobody can use it, so everybody + rewrites it. → W5, W6 +2. **Enforcement.** The prose discipline scores 8.8; the enforcement scores 2.1. + Strict typing is declared for 90 files and enforced on 7. The claim-boundary + manifest is validated by nothing. Everything holding this repository honest is + a person remembering to be honest. → W1, W2 +3. **Unexamined foundations.** The canonicalization kernel — which every signed + artifact routes through — silently merges Unicode-distinct keys, diverges from + RFC 8785 on five of six number forms, and has never been attacked. One hour of + probing found four defects. → W3 + +--- + +## 2. What this plan refuses to claim + +Stated before the workstreams, because a plan that leads with ambition and buries +its boundaries has already failed the discipline it proposes. + +- **The mathematics is not new.** Fréchet–Hoeffding is 1935. A sibling repository + already demoted "Fréchet ceiling + reachability sharpening" to engineering, and + it was right ([F-18](FINDINGS_REGISTER.md#f-18)). This plan does not claim + novelty for the bounds. The contribution is elsewhere — see W9. +- **No downstream integration is promised.** Whether Ghost-Ark runs the + conformance corpus, or Vinctura wires the guard, is their decision. This plan + commits only to making both *possible*. +- **No empirical claim is created by planning one.** The Correlation Atlas (W7) + is the highest-value item here and it does not exist. Until it runs, empirical + grounding stays at 2.4 and should be quoted as 2.4. +- **Completing every workstream would not establish safety.** It would establish + that this repository does what it says. Whether what it says is worth anything + is answered by someone outside the project, and no amount of internal work + substitutes for that. +- **This plan is one excavation pass.** Absence of a finding is not evidence of + absence. `redteam/dependence_search.py` — 709 statements at 65.6% coverage, + performing the search whose post-selection bias `cliff.py` refuses to certify — + was **not examined** and is the most likely home of a subtle statistical defect. + +--- + +## 3. Workstreams + +Ten workstreams. Each states its findings, deliverables, acceptance gate, and +what completing it does *not* establish. A workstream without a falsifiable gate +is a wish; every gate below is a command. + +--- + +### W0 — Make the documented path work {#w0} + +**Findings:** [F-01](FINDINGS_REGISTER.md#f-01), [F-20](FINDINGS_REGISTER.md#f-20) +· **Effort:** hours · **Prerequisite for everything else** + +A stranger following the install instructions gets a red suite. That is the first +thing an external reviewer sees, and it is not a real failure — it is a missing +dependency in the `[test]` extra. Nothing else on this plan matters if the front +door is broken. + +**Deliverables** + +1. Add `build`, `setuptools`, `wheel` to `[project.optional-dependencies].test`. +2. CI job installing `.[test]` **specifically** — not `.[dev]` — and running the + suite. The extra strangers are told to use becomes the extra that is tested. +3. Delete `tests/regression/week2/test_week2_deliverables.py::test_unit_tests_pass`. + It shells out to run the whole unit suite and masks real failures — it is how + F-01 presented, as an unrelated `assert 1 == 0`. If the intent was "week-2 + deliverables exist," assert that directly. +4. `scripts/upgrade_baseline.py` — regenerates every table in + BASELINE_MEASUREMENTS.md into `docs/upgrade/baseline.json`. The plan's own + numbers become reproducible, or the plan fails its own standard. + +**Acceptance gate** + +```bash +git clean -xdf && uv venv .venv && uv pip install -e '.[test]' && pytest +# expect: 0 failed, 0 errors +python scripts/upgrade_baseline.py --check # regenerated numbers match committed +``` + +**Does not establish.** Anything about correctness. This is a packaging fix. + +--- + +### W1 — Make the type discipline true {#w1} + +**Findings:** [F-02](FINDINGS_REGISTER.md#f-02) · **Effort:** 1 week setup, then continuous + +`pyproject.toml` declares `strict = true` over `packages = ["cc"]`. At that scope +mypy reports **279 errors in 47 files**. CI enforces 7 files. The configuration +asserts a discipline the repository does not have — claim inflation in TOML. + +Do not delete `strict = true`. Do not silence 279 errors in one pass; a +thousand-line `type: ignore` commit is how strictness dies quietly. + +**Deliverables** + +1. `docs/upgrade/typing-ratchet.json` — per-module current error count, committed. +2. CI job running mypy at the declared scope, failing only if a module's count + **increases**. New code is strict from birth; existing debt is visible and + frozen. +3. Burn-down order: `kernel/` → `reporting/` → `evidence/` → the rest. The + modules that emit signed artifacts get types first. +4. Remove the 7-file list from CI and pre-commit once the ratchet is live. + +**Acceptance gate** + +```bash +mypy # declared scope +python scripts/check_typing_ratchet.py # no module regressed +``` + +with `kernel/` and `reporting/` at zero errors by the end of the workstream. + +**Does not establish.** That the code is correct. Types constrain shape, not +meaning. A well-typed wrong bound is still wrong. + +--- + +### W2 — Make the claim discipline executable {#w2} + +**Findings:** [F-12](FINDINGS_REGISTER.md#f-12), [F-15](FINDINGS_REGISTER.md#f-15) +· **Effort:** 1–2 weeks + +The prose scores 8.8 and the enforcement scores 2.1. This workstream closes the +gap without weakening the prose. + +**The design constraint that matters.** A naive port of Ghost-Ark's scanner would +fire on 70 uses of "guarantee" in this repository, **almost all of them negated** — +`does not guarantee`, `no guarantee of`. It would be switched off within a week, +and switching off a claim gate is worse than never having one. So negation +handling and an allowlist are day-one requirements, not refinements. + +**Deliverables** + +1. `scripts/check_claims.py` — forbidden-phrase scanner with: + - negation-aware matching (a phrase inside "does not X" is not a violation); + - an allowlist with a **written reason per entry**, following Ghost-Ark's + pattern — policy documents and the scanner itself legitimately quote + forbidden wording; + - scanning of `.md`, `.py`, `.tex`, `.yml`, `.json`, `.sh`, and `Makefile`, + because reviewer-facing claim text lives in build files too; + - exclusion of generated output, so the verdict describes the committed tree + rather than local run state. +2. Wire `scripts/validate_claim_boundary_manifest.py` into CI and pre-commit, and + extend it to assert that **every path a claim row names actually exists**. +3. Resolve the two theorem ledgers. `docs/theory/theorem_ledger.md` governs; the + other becomes a pointer or is deleted. Add a test asserting exactly one. +4. **Adopt Vinctura's rule:** *no orphan claims — every public sentence carries + the command that falsifies it or an explicit limitation.* Apply to README + first, then `docs/index.md`. This is the strongest claim rule in the program + and it comes from a consumer, not from here. + +**Acceptance gate** + +```bash +make claims # scanner + manifest validation, both clean +pytest tests/unit/docs/ # every manifest row's files and tests exist +``` + +plus: **every README claim maps to a command in the manifest.** + +**Does not establish.** That the claims are true. A scanner catches known +overclaim phrasings. It cannot detect a number that was fabricated, a citation +that does not say what it is claimed to say, or a subtler overclaim in unfamiliar +words. + +--- + +### W3 — Attack the canonicalization kernel {#w3} + +**Findings:** [F-03](FINDINGS_REGISTER.md#f-03) **S1**, [F-04](FINDINGS_REGISTER.md#f-04) **S1**, [F-05](FINDINGS_REGISTER.md#f-05) **S1**, [F-06](FINDINGS_REGISTER.md#f-06), [F-07](FINDINGS_REGISTER.md#f-07) +· **Effort:** 2–3 weeks · **Highest severity** + +Every signed artifact this repository emits routes through +`canonical_json_bytes`. One hour of probing found four defects, including a +silent two-keys-to-one collapse with no error raised. Ghost-Ark found five +unintended kernel members in its own pipeline by building a 31-class census; this +repository has never run the equivalent. + +**Deliverables** + +1. **Fail closed on key collision.** After NFC normalization, compare key-set + cardinality. If it shrank, raise `CanonicalJSONError` naming both keys. Detect, + never resolve. +2. **Strict duplicate-key rejection on read.** An `object_pairs_hook` that raises + on repeated keys, applied to the report reader, evidence-bundle reader, and + claim-envelope reader. +3. **Normalize `-0.0` to `0.0`** — with a positive control that genuinely distinct + near-zero values stay distinct. A rule that rejects honest documents is a + trade, not a fix. +4. **`docs/architecture/CANONICAL_PROFILE.md`** — `cc.canonical.v1`, versioned, + stating its relationship to RFC 8785 explicitly. Either adopt JCS number + serialization or declare a non-JCS profile with a written rationale. Both are + defensible; silence is not. **Decide before an independent verifier is + written.** +5. **Bound receipt-covered integers** to the IEEE-754 safe range in the schema, or + carry them as strings. A JS `JSON.parse` collapses `2^53+1` before any + verifier code runs — the kernel is set by the parser, and no downstream fix + reaches it. +6. **`tests/canonical_corpus/`** — an adversarial census in Ghost-Ark's E1 shape: + declared intent per class (`distinct` / `equivalent`), machine-readable + verdicts (`sound`, `unintended-kernel`, `over-discrimination`, `fail-closed`, + `sound-by-rejection`, `rejection-asymmetry`), and **positive controls** so + strictness is a fix rather than a trade. Seed classes: the six probed for this + plan, plus duplicate-key-nested-in-array, empty-key-repeated, lone surrogate, + deep nesting, large-document-single-byte, safe-integer-neighbours. + **Provenance is `census` — no confidence intervals, exact counts only.** + +**Acceptance gate** + +```bash +make canon-corpus # every class matches its declared verdict +make receipt-replay # capsule rebuilds byte-identically +``` + +with **zero classes at `unintended-kernel`** and **zero at +`rejection-asymmetry`** — the second is what distinguishes a fix from a trade. + +**Binding rule:** never weaken the corpus to make a test pass. A class that starts +failing is a kernel regression. + +**Does not establish.** That the canonicalizer has no collisions — only that it +has none in the declared classes. The corpus is a census and its size is an +authoring decision, so it carries no interval and no coverage claim. + +--- + +### W4 — Deepen the test floor {#w4} + +**Findings:** [F-13](FINDINGS_REGISTER.md#f-13), [F-14](FINDINGS_REGISTER.md#f-14) +· **Effort:** 3–4 weeks + +Coverage is 69.91% with no gate. The `cc-report` CLI — the product surface, the +thing a reviewer actually runs — is at **0%**. `core/stats.py` is at **38% across +756 statements**: the statistics engine, in a repository about statistical +honesty, is its least-tested large component. Untested statistical code does not +fail loudly; it returns a plausible number. + +**Deliverables** + +1. **CLI golden tests** — build a report, verify it, verify a tampered copy is + rejected, verify claim-governance PASS and FAIL paths. Target `reporting/cli.py` + from 0% to >80%. +2. **Property-based tests on `core/stats.py`** using Hypothesis (already a + declared dependency, currently ungated): interval coverage, monotonicity, + boundary behaviour. Properties, not examples — the failure mode here is a + plausible wrong number, which example tests are poor at catching. +3. **Property-based kernel tests** over the marginal simplex, replacing the + six-point census with sampled invariants: FH recovery, monotone tightening + under added constraints, `L <= U` always, infeasibility raises. +4. **Coverage floor at the measured 69.91%**, ratcheting upward. A floor set below + the current value is theatre. +5. **Mutation testing** on `kernel/` and `reporting/`, score published in the + scorecard. The current score is *unknown*, not low, and that distinction is + worth removing. +6. **Dual certificates** from the LP, emitted with the primal witness, so a + skeptic verifies optimality without re-solving. Cheapest available move on + formal readiness. + +**Acceptance gate** + +```bash +pytest --cov=src/cc --cov-fail-under=69.91 +make kernel-properties && make kernel-duals && make mutation +``` + +with `reporting/cli.py` > 80%, `core/stats.py` > 70%, and a published mutation +score. + +**Does not establish.** Correctness. Higher coverage means more code was executed, +not that it was executed correctly. Mutation score bounds the suite's sensitivity +on the mutated subset, nothing wider. + +--- + +### W5 — Make the kernel consumable {#w5} + +**Findings:** [F-08](FINDINGS_REGISTER.md#f-08) **S3**, [F-09](FINDINGS_REGISTER.md#f-09) **S3**, [F-10](FINDINGS_REGISTER.md#f-10) **S3** +· **Contracts:** [C2, C4, C5, C6](DOWNSTREAM_CONTRACTS.md#contract-summary) +· **Effort:** 4–6 weeks · **Highest leverage** + +Three reimplementations, one written rejection, one dated unfillable request. +This workstream is why the repository scores 2.6 on consumability against 8.9 on +mathematics. + +**Deliverables** + +1. **`cc.compose`** — marginals in, sharp bounds out, **no ROC concept anywhere in + the signature**: + + ```python + compose_bounds( + marginals: Mapping[str, float], + event: Literal["all", "any"] | LinearQuery, + constraints: Sequence[Constraint] = (), + ) -> Interval + ``` + + Deterministic predicates are first-class. Detectors reach the same surface by + supplying an operating point as a marginal — the ROC path becomes an optional + adapter *above* the event calculus, never underneath it. This inverts the + relationship that caused the rejection. + +2. **`conformance/cc-kernel-v1/`** — language-agnostic corpus: + `(marginals, constraints, query) → [L, U]` with exact expected values, plus an + adversarial section (infeasible sets, degenerate marginals, boundary values, + `p=0`, `p=1`, near-machine-epsilon marginals). Any implementation in any + language either passes or is not a CC kernel. Run in CI here; published for + the others. + +3. **`cc-guard`** — a stdin/stdout JSON subcommand exposing the provenance-tagged + guards (post-selection refusal first), **plus** the same logic as a pure-data + decision table in the corpus, so a JS caller can enforce it with no Python + process. A subprocess dependency is a weaker bridge than a table. + +4. **A second implementation, in this repository, in another language.** Small, + dependency-free, deriving from the published corpus and not from the Python + source. Without it, Tier 3 of the ladder cannot exist and + cross-implementation agreement stays at 0.0. + +5. **Differential harness** — randomized `(marginals, query)` cases through both + implementations, comparing to a declared tolerance. Divergence is recorded as + a finding, never reconciled by fiat. + +**Acceptance gate** + +```bash +make conformance-publish && make differential-agreement && make differential-fuzz +pytest tests/acceptance/test_vinctura_four_control.py # their numbers, from cc.compose +``` + +The Vinctura acceptance test is the real gate: **their four-control result, +including the sensitivity analysis over assumed detection rates, reproduced from +`cc.compose`, such that their 214 lines could be deleted.** It must also +reproduce their correct refusal — no countermonotone regime for n > 2, since the +FH lower bound is not a copula in dimension ≥ 3 though it stays pointwise sharp. +If the API silently offers a countermonotone option for four events, it is wrong, +and the consumer noticed before this repository did. + +**Does not establish.** That downstream projects will adopt it. That is their +decision. The gate is that adoption becomes *possible* and that a real consumer's +published numbers reproduce. + +--- + +### W6 — Contract the boundaries {#w6} + +**Findings:** [F-11](FINDINGS_REGISTER.md#f-11), [F-19](FINDINGS_REGISTER.md#f-19) +· **Contracts:** [C1, C3, C7](DOWNSTREAM_CONTRACTS.md#contract-summary) +· **Effort:** 3–4 weeks + +Ghost-Ark declares a binding rule that cc-framework must not consume naked binary +labels. cc-framework has no ingest module, no schema, and no test for it. The rule +binds a repository that cannot honour it. + +**Deliverables** + +1. **`cc.ingest.discretization`** — fail-closed reader for + `ghost.discretization_rule_receipt.v1` implementing all eleven preconditions + (binary domain, failure semantics, bounded score domain, threshold legality, + signed comparator, monotonic risk invariant, calibration digest, scoring + digest, temporal validity, parent lineage, stationarity declaration). A + marginal without lineage is refused, not defaulted. +2. **Negative corpus** — one fixture per precondition, each rejected with a + **distinguishable reason**. A reader that rejects everything for the same + reason enforces one rule, not eleven. +3. **Versioned resolvable schemas** — `cc..v` identifiers, version in + `$id` rather than `title`. A schema whose version lives in its title can change + without its identifier changing. +4. **Indeterminate verdict state** (C7) — insufficient evidence, infeasible + constraints, and refused post-selection claims all serialize as + `INDETERMINATE` with a machine-readable reason, **never as `[0, 1]`**, which a + careless consumer reads as a computed bound. The design constraint is Assay's + and it is right: a null-unaware consumer must fail loudly rather than silently + read indeterminate as a pass. +5. **`declared_reference` non-claim travels with the object** — carrying receipt + identifiers is not verifying them, and the ingested artifact must say so. + +**Acceptance gate** + +```bash +make ingest-corpus # every precondition fixture refused, reasons distinct +pytest tests/unit/evidence/test_indeterminate_serialization.py +``` + +**Does not establish.** That upstream discretization was appropriate, the +threshold well chosen, or the score calibrated. The contract checks that evidence +carries its lineage, not that the lineage is wise. + +--- + +### W7 — Ground it empirically {#w7} + +**Findings:** [F-17](FINDINGS_REGISTER.md#f-17) · **Effort:** 4–8 weeks +· **Highest value, lowest certainty** + +Empirical grounding scores **2.4**. No `p_i` in this repository was measured +against a production guardrail. Every marginal is supplied, synthetic, or +assumed. VISION names the Correlation Atlas as the empirical keystone and the +most citable single artifact the program can produce; it does not exist. The +adapters that would collect it do exist and have never been run in a campaign. + +**Deliverables** + +1. **Turn on the dark lanes.** Scheduled workflow setting `CC_RUN_EXPERIMENTS=1` + and `CC_RUN_PERF=1` with optional extras installed, publishing artifacts. Nine + tests have never executed in CI. Allowed to be red without blocking merges — a + lane that must stay green gets weakened until it does. +2. **Executable reporting rules**, adopted from Ghost-Ark and enforced in code, + not prose: + - no point estimate without dispersion (p50 with IQR, never a bare p50); + - no proportion without a denominator, no rate without its control arm; + - **no confidence interval over a curated census** — a hand-authored corpus is + the whole population and its size is an authoring decision; + - no interval below n = 30; + - intent declared before results, pinned by a test; + - state the host; + - report what was not measured. + + These become assertions in `cc.core.stats`, in the shape of Ghost-Ark's + `reportProportion` / `assertCensusReporting`. cc-framework enforces the + post-selection rule already; these are the rest of the family. +3. **Minimal Correlation Atlas** — two or three real guardrails on one public + jailbreak corpus. Per-pair marginals, observed joint rates, phi, and the + independence-versus-worst-case gap. Each row emits a certificate. Pre-register + the cohort and the stopping rule before the first measurement. +4. **Repeated-measurement timing** replacing the single-shot scaling table in the + baseline, with p50 and IQR and a named host. + +**Acceptance gate** + +```bash +make atlas # produces a signed, replayable atlas artifact +``` + +with: pre-registration digest published **before** results; every rate carrying +its denominator; no interval over a census; cohort, stationarity declaration, and +non-claims present on every row; **and results reported whether or not they are +interesting.** A finding of "independence was approximately right on this cohort" +is a real result and gets published. + +**Does not establish.** That a measured regret on one cohort predicts another. The +Atlas is **descriptive, never predictive**. A number measured on one corpus of +jailbreaks says nothing about the next one, and the artifact must say so on its +face. + +--- + +### W8 — Hygiene {#w8} + +**Findings:** [F-16](FINDINGS_REGISTER.md#f-16) · **Effort:** days · **Do during a release** + +17.8 MB of Blender renders tracked in git; `.git` is 43 MB against a 54 MB +working tree. Clone cost for external reviewers, no verification benefit. + +**Deliverables.** Renders to release assets or LFS, one small preview retained. +Archived JSONL checkpoints reviewed. `src/cc/_legacy/` either documented with a +removal version or deleted. + +**Acceptance gate.** `.git` under 15 MB; `git clone --depth 1` under 20 MB. + +**Does not establish.** Anything. This is housekeeping and is scheduled last on +purpose. + +--- + +### W9 — Reframe the contribution {#w9} + +**Findings:** [F-18](FINDINGS_REGISTER.md#f-18) **S3** · **Effort:** 1 week +· **Do first, it is nearly free** + +A sibling repository's research ledger demoted the core contribution: + +> **Fréchet ceiling + reachability sharpening** [...] **DEMOTED to engineering.** +> The mathematics is 1935; the sharpening is a known distinction. Survives as +> reporting practice, not as science. + +This is correct. Any framing that positions cc-framework's value as "we compute +Fréchet–Hoeffding bounds" is answering a criticism that has already been made and +sustained *from inside the program*. + +**The move is to concede it first, above the fold.** A criticism you state +yourself cannot be used against you. + +**What is genuinely not 1935:** + +| Contribution | Status | +|---|---| +| Statistical inference for partial-identification bounds under **estimated** marginals — a confidence band around `[L, U]`, not a point interval | thin in the literature; VISION Pillar I; **open** | +| **Measured** co-failure dependence on real guardrail stacks — how badly independence lies in practice | nobody has published it; VISION Pillar V; **open** | +| A conformance corpus making three independent implementations agree | engineering, but engineering nobody has done for this calculus | +| **Refusing to certify** — the post-selection guard at `cliff.py:321` | a design commitment most statistical software does not make; a consumer called it "the single most elegant thing available in this program" | + +**Deliverables** + +1. README rewritten: concede the theorem, claim the measurement. Lead with + limitations, following Vinctura's convention. +2. `docs/research/CONTRIBUTION_BOUNDARY.md` — what is classical, what is + engineering, what is open. Cite the demotion by name rather than working + around it. +3. VISION.md pillars re-sequenced against this framing. Pillars I and V are the + contribution; II and III are the infrastructure that makes them checkable. + +**Acceptance gate.** The README states, in its first screen, that the underlying +inequality is classical and names what is not. Reviewed by someone who has read +the demotion. + +**Does not establish.** That the open problems will be solved. Naming a gap +honestly is not filling it. + +--- + +## 4. Sequencing + +Ordered by leverage × prerequisite, not by size. + +### Phase 0 — Credibility (weeks 1–2) + +**W0** (documented path works) + **W9** (reframe). Both are nearly free and both +are prerequisites for anyone taking the rest seriously. A reviewer who hits a red +suite, or a framing already publicly demoted, stops reading. + +### Phase 1 — Foundations (weeks 2–6) + +**W3** (canonicalization) + **W2** (claim enforcement) in parallel. W3 carries +every S1 finding and everything signed depends on it. W2 stops the discipline +from depending on memory. Start **W1** (typing ratchet) here — it is cheap to +start and pays continuously. + +### Phase 2 — Reachability (weeks 5–12) + +**W5** (consumable kernel) + **W6** (contracts). The highest-leverage work, and it +needs W3 finished first: a conformance corpus over a canonicalization that +silently collapses keys would pin the defect into the contract. + +### Phase 3 — Depth (weeks 8–16, overlapping) + +**W4** (test floor). Overlaps Phase 2; the CLI golden tests and property tests can +start as soon as W0 lands. + +### Phase 4 — Evidence (weeks 12–24) + +**W7** (empirical grounding). Highest value and lowest certainty, so it goes last +and is allowed to fail. It depends on W5 (certificates per Atlas row) and W2 +(reporting rules enforced). + +### Anytime + +**W8** (hygiene), during a release. + +``` +wk: 1 2 3 4 5 6 7 8 9 10 11 12 ... 16 ... 24 +W0 ██ +W9 ████ +W3 ████████████ +W2 ████████ +W1 ████████████████████████████████████████████ (continuous ratchet) +W5 ████████████████████████ +W6 ████████████████ +W4 ████████████████████████ +W7 ████████████████████████████ +W8 ██ +``` + +--- + +## 5. What "done" looks like + +At the end, the scorecard should read: + +| Dimension | Now | Target | +|---|---:|---:| +| Mathematical correctness | 8.9 | 9.4 | +| Canonicalization integrity | 3.8 | 8.5 | +| Claim discipline — enforcement | 2.1 | 8.5 | +| Consumability | 2.6 | 8.5 | +| Cross-implementation agreement | 0.0 | 8.0 | +| Empirical grounding | 2.4 | 6.5 | + +and these statements should be true, each checkable by a command: + +- A stranger clones, runs one command, and gets a green suite. +- A stranger recomputes an interval from its witness without trusting the + producer, and checks the dual certificate without re-solving the LP. +- An implementation in another language passes the published corpus, and a + differential harness proves it agrees. +- The canonicalizer fails closed on every declared collision class, with zero + `unintended-kernel` and zero `rejection-asymmetry` verdicts. +- No claim reaches `main` without a manifest row naming a file and test that + exist. +- A consumer computes composition bounds from marginals with no ROC concept in + sight, and a real consumer's published numbers reproduce from the library. +- At least one number in the repository was measured on a real guardrail, and is + reported with its denominator, its cohort, and what it does not predict. + +None of that establishes safety. It establishes that this repository does what it +says — which is the only thing a repository can establish about itself. + +--- + +## 6. The one question, per feature + +Adapted from Ghost-Ark's frontier questions. Every proposed change to +cc-framework must answer all ten before it merges: + +1. What claim is being introduced, and at which claim-boundary level? +2. What evidence supports it, and where does that evidence live? +3. What command replays it? +4. What conformance case or malicious fixture disproves it? +5. Which boundary fails closed when it is violated? +6. Which non-claim accompanies it? +7. Which reviewer, outside this project, could reproduce it? +8. Which downstream contract does it satisfy or break? +9. Is the number a census or a sample — and does its interval match? +10. What assumptions remain invisible? + +If these cannot be answered, the design is incomplete. diff --git a/docs/upgrade/FINDINGS_REGISTER.md b/docs/upgrade/FINDINGS_REGISTER.md new file mode 100644 index 0000000..70524ae --- /dev/null +++ b/docs/upgrade/FINDINGS_REGISTER.md @@ -0,0 +1,610 @@ +# Findings Register — cc-framework Epistemic Excavation + +> **Status: measured findings.** Every finding below was reproduced by a command +> against commit `3e22c39`. Each carries the reproduction, the impact, the +> proposed remedy, and the workstream that owns it. +> +> **Non-claim.** This register is not a security audit and not a completeness +> claim. It records what one excavation pass found. The absence of a finding is +> not evidence of absence — see [Not searched](#what-was-not-searched). + +Severity scale: + +| | Meaning | +|---|---| +| **S1** | An artifact this repository signs or publishes can be wrong or misleading, silently. | +| **S2** | A gate the repository claims to enforce is not enforced. | +| **S3** | A consumer cannot use the repository for its stated purpose. | +| **S4** | Hygiene, drift, or duplication that will become S1–S3 if left. | + +--- + +## Index + +| ID | Severity | Finding | Owner | +|---|---|---|---| +| [F-01](#f-01) | S2 | The declared `[test]` extra cannot run the test suite | W0 | +| [F-02](#f-02) | S2 | `strict = true` mypy is declared for `cc`, enforced on 7 of 90 files | W1 | +| [F-03](#f-03) | **S1** | Canonicalization silently merges Unicode-distinct keys | W3 | +| [F-04](#f-04) | **S1** | Canonical form is not RFC 8785; five of six number forms diverge | W3 | +| [F-05](#f-05) | **S1** | Cross-language receipt divergence above 2^53 is undetectable | W3, W5 | +| [F-06](#f-06) | S2 | `-0.0` and `0.0` produce different receipts for identical numbers | W3 | +| [F-07](#f-07) | S2 | Duplicate JSON keys are accepted last-wins on the parse side | W3 | +| [F-08](#f-08) | **S3** | A real consumer read the composition API and rejected it | W5 | +| [F-09](#f-09) | **S3** | The kernel calculus is independently reimplemented three times | W5 | +| [F-10](#f-10) | **S3** | Vinctura's requested cross-language guard surface does not exist | W5 | +| [F-11](#f-11) | S3 | Ghost-Ark's binding ingest rule has no enforcing code here | W6 | +| [F-12](#f-12) | S2 | The claim-boundary manifest is validated by nothing | W2 | +| [F-13](#f-13) | S2 | No coverage gate; the report CLI is at 0% | W4 | +| [F-14](#f-14) | S2 | `core/stats.py` is 38% covered across 756 statements | W4 | +| [F-15](#f-15) | S4 | Two divergent theorem ledgers | W2 | +| [F-16](#f-16) | S4 | 17.8 MB of render binaries tracked in git | W8 | +| [F-17](#f-17) | S2 | Experiment and performance lanes have never run in CI | W7 | +| [F-18](#f-18) | S3 | A sibling repository demoted the core contribution to "engineering" | W9 | +| [F-19](#f-19) | S4 | Schema surface is two files with a non-resolvable `$id` | W6 | +| [F-20](#f-20) | S2 | A regression test shells out to run the whole unit suite | W0 | + +--- + +## F-01 + +**The declared `[test]` extra cannot run the test suite.** — S2, owner W0 + +`pyproject.toml`'s `[project.optional-dependencies].test` omits `build`, +`setuptools`, and `wheel`. `tests/unit/packaging/test_wheel_boundary.py` +subprocesses `python -m build --no-isolation`, which needs all three. + +```bash +uv venv .venv && uv pip install -e '.[test]' && pytest +# 1 failed, 685 passed, 9 skipped, 3 errors +# E No module named build +# then, after installing build: +# E BackendUnavailable: Cannot import 'setuptools.build_meta' +``` + +**Impact.** A stranger following the documented install path gets a red suite and +has no way to tell a real regression from a packaging gap. CI passes only +because `[dev]` happens to pull `build`, so the defect is invisible to the +people who would fix it. This is the single cheapest fix in the register and it +is the first thing an external reviewer hits. + +**Remedy.** Add `build`, `setuptools`, `wheel` to `[test]`. Add a CI job that +installs `.[test]` *specifically* — not `.[dev]` — and runs the suite, so the +extra that strangers are told to use is the extra that is tested. + +--- + +## F-02 + +**Strict typing is declared for the package and enforced on 7 files.** — S2, owner W1 + +`pyproject.toml` declares `packages = ["cc"]` with `strict = true`. CI and +pre-commit both override this with an explicit 7-file list. + +```bash +mypy # at the declared scope +# Found 279 errors in 47 files (checked 101 source files) +``` + +**Impact.** The configuration asserts a discipline the repository does not have. +Any reader who checks `pyproject.toml` to see how strict the project is will be +misled by 279 errors' worth. This is claim inflation *in the build +configuration* — the same defect class the project's own documents exist to +prevent, expressed in TOML instead of prose. + +**Remedy.** Do not delete `strict = true`, and do not silence 279 errors in one +pass. Ratchet: introduce `docs/upgrade/typing-ratchet.json` recording the +current per-module error count, add a CI job that fails if any module's count +*increases*, and burn the list down module by module, kernel first. The declared +scope becomes true incrementally and cannot regress. + +--- + +## F-03 + +**Canonicalization silently merges Unicode-distinct keys.** — **S1**, owner W3 + +`_normalize_json_value` applies `unicodedata.normalize("NFC", key)` to every +mapping key and writes results into a fresh `dict`. When two distinct source +keys share an NFC form, the second overwrites the first. + +```python +>>> from cc.reporting.canonical import canonical_json_bytes +>>> canonical_json_bytes({"é": 1, "é": 2}) # U+00E9 key, then U+0065 U+0301 key +b'{"\xc3\xa9":2}' +``` + +Two keys in. One key out. **No exception.** + +The committed census (`scripts/canonicalization_probe.py`) finds **two** +`unintended-kernel` classes, not one. Widening the corpus from the hand-probed +six classes to eleven surfaced `nested-unicode-key-collision` — the same +collision one level down, inside a nested object: + +```python +>>> canonical_json_bytes({"outer": {"é": 1}}) == canonical_json_bytes({"outer": {"é": 1}}) +True +``` + +This matters on its own: a guard that inspected only top-level keys would pass +the flat class while leaving the defect fully exploitable. It also reproduces +Ghost-Ark's E1 lesson exactly — *widening the alphabet found more defects* — and +it is the reason the remedy below is a corpus rather than a patch. + +**Impact.** This is the most serious finding in the register. The receipt hash is +computed over the *normalized* document, so: + +1. A report can lose a field between construction and hashing, and the receipt + will faithfully attest to the truncated document. +2. Two semantically different payloads can be constructed with the same receipt + hash — a collision in the provenance kernel, reachable with no cryptography + and no privileged access. +3. Ghost-Ark's E1 census classifies exactly this pattern as an *unintended kernel + member*. cc-framework has one, in the module every signed artifact routes + through, and has never looked. + +The irony is load-bearing: `b2b-spatial-intelligence-engine` ships a research +module titled `01-canonicalization-collapse.html`. The sibling repositories study +this defect class. This repository has it. + +**Remedy.** Normalization must **detect** collision rather than resolve it. After +normalizing, compare key-set cardinality; if it shrank, raise +`CanonicalJSONError` naming both colliding keys. Fail closed. Add the pair to a +committed adversarial corpus (W3) so the fix cannot silently regress. + +--- + +## F-04 + +**The canonical form is not RFC 8785, and diverges on five of six number +forms.** — **S1**, owner W3 + +| Value | cc-framework | RFC 8785 (JCS) | +|---|---|---| +| `10**30` | `1000000000000000000000000000000` | `1e+30` | +| `1.0` | `1.0` | `1` | +| `-0.0` | `-0.0` | `0` | +| `1e-7` | `1e-07` | `1e-7` | +| `100.0` | `100.0` | `100` | +| `1e30` | `1e+30` | `1e+30` | + +The implementation is `json.dumps(sort_keys=True, separators=(",",":"))`, which +is a Python convention, not an interoperable standard. + +**Impact.** Any non-Python verifier that implements JCS — the obvious choice for +an independent verifier, and the family Ghost-Ark surveyed in +`CANONICALIZATION_LAYER_SURVEY.md` — computes a different digest for the same +report. Independent verification is impossible not because of a bug but because +the two sides never agreed on what the bytes are. + +**Remedy.** Choose deliberately and document the choice with its consequences: +either adopt RFC 8785 number serialization, or declare `cc.canonical.v1` as an +explicitly non-JCS profile with a written rationale and a conformance corpus. +Either is defensible. Silence is not — and the choice must be made **before** an +independent verifier is written, not after. + +--- + +## F-05 + +**Cross-language receipt divergence above 2^53 is undetectable here.** — **S1**, owner W3, W5 + +```python +>>> canonical_json_bytes({"n": 2**53 + 1}) +b'{"n":9007199254740993}' +``` + +Python's arbitrary-precision integers preserve this. A JavaScript or TypeScript +verifier's `JSON.parse` collapses both `2**53+1` and `2**53+2` to +`9007199254740992` before any verifier code runs — the collapse happens inside +the parser, which is Ghost-Ark's E1 corollary C1 exactly: *the kernel is set by +the parser, and auditing the canonicalizer alone cannot find it.* + +**Impact.** Ghost-Ark holds a TypeScript reimplementation of this calculus +(`packages/research-frontier/src/ccCorrelation.ts`). If a CC report carrying a +large integer count is verified there, the two sides disagree — and nothing in +either repository would notice, because there is no differential test spanning +them. + +**Remedy.** Two parts, both required. (1) Constrain the schema: integers in +receipt-covered positions are bounded to the IEEE-754 safe range, or carried as +strings. (2) Build the differential harness (W5) so divergence is *caught*, not +argued about. + +--- + +## F-06 + +**`-0.0` and `0.0` produce different receipts for the same number.** — S2, owner W3 + +```python +>>> canonical_json_bytes({"n": -0.0}) +b'{"n":-0.0}' +``` + +`-0.0 == 0.0` is true in IEEE-754 and both denote zero. Two numerically identical +reports receive different receipt hashes. + +**Impact.** Over-discrimination, in Ghost-Ark's E1 vocabulary. Less dangerous than +F-03 — it produces false *differences* rather than false *identities* — but it +breaks replay determinism whenever an LP solver returns a negative zero, which +`scipy.optimize.linprog` does routinely at a lower bound of zero. A replay that +should be byte-identical will not be. + +**Remedy.** Normalize `-0.0` to `0.0` before serialization. Add both to the +corpus, and add the positive control that genuinely distinct near-zero values +stay distinct — a strict rule that rejects honest documents is not a fix, it is +a trade. + +--- + +## F-07 + +**Duplicate JSON keys are accepted last-wins on the parse side.** — S2, owner W3 + +```python +>>> json.loads('{"amount":1,"amount":2}') +{'amount': 2} +``` + +Reports read from disk pass through `json.loads`, which silently keeps the last +value. `canonical_json_bytes` then attests to the survivor. + +**Impact.** The same class as F-03 and reachable from any file the repository +reads. Ghost-Ark's E1 records `duplicate-key-last-wins` as an unintended kernel +member in four of five arms; the one sound arm was the one with a different +parser. + +**Remedy.** Read receipt-covered JSON through a strict loader with an +`object_pairs_hook` that raises on repeated keys. Applies to the report reader, +the evidence-bundle reader, and the claim-envelope reader alike. + +--- + +## F-08 + +**A real consumer read the composition API and rejected it.** — **S3**, owner W5 + +`vinctura/scripts/compose-bounds.js`, in its file header, records the decision +not to use this repository: + +> The obvious move was to call `cc.core.composition_theory`, which implements FH +> bounds for guardrail composition. Reading it rather than its symbol list: it +> operates on **ROC POINT SETS** and bounds the **Youden J statistic** +> (J = TPR − FPR). That is a DETECTOR framing — it assumes each guardrail is a +> classifier with a threshold and an operating curve. +> +> Vinctura's controls are not classifiers. `SELF_REPORTED` refuses if and only if +> `loggedBy === memberId`. There is no threshold, no operating point, and no +> false-positive rate to trade against. Forcing a deterministic refusal rule into +> an ROC shape would produce numbers with the form of a measurement and none of +> the content. + +The consumer then wrote 214 lines of JavaScript to do it themselves. + +**Impact.** This is the most valuable single artifact the excavation found, because +it is a *rejected-adoption report written by someone who read the source*. It +names the defect precisely: the most discoverable composition entry point, +`cc.core.composition_theory`, imposes a detector ontology on events that have +none. Deterministic predicates — a refusal rule, a schema check, a signature +verification — are binary failure events with marginals and no ROC curve. They +are squarely inside the mathematics and outside the API. + +Note also what the consumer *did* keep: "the FH inequality is applied directly to +the events. **That is the part that transfers**; the ROC machinery is not." The +consumer correctly identified the kernel and correctly identified the packaging +as the obstacle. + +**Remedy.** W5 ships `cc.compose` — a marginals-in, bounds-out surface with no ROC +concept anywhere in its signature — and re-derives Vinctura's four-control result +from it as an acceptance test. The gate is not "the API exists"; the gate is +"Vinctura's own numbers reproduce from the library, and their 214 lines can be +deleted." + +--- + +## F-09 + +**The kernel calculus is independently reimplemented three times.** — **S3**, owner W5 + +| Repository | File | Language | What it reimplements | +|---|---|---|---| +| cc-framework | `src/cc/kernel/` | Python | normative source | +| ghost-ark | `packages/research-frontier/src/ccCorrelation.ts` | TypeScript | FH pairwise bounds, Wilson intervals, phi | +| vinctura | `scripts/compose-bounds.js` (214 LOC) | JavaScript | FH n-ary conjunction bounds | + +No cross-checking. No shared corpus. No agreement test. Three implementations of +one theorem, each trusted because it looks right. + +**Impact.** Ghost-Ark treats *its own* cross-language verifier agreement as a +critical architectural invariant — "breaking independent verifier agreement is a +critical architectural event." Across the CC calculus, the same project has +three implementations and zero agreement tests. Any one of them can drift and +nothing detects it. + +There is also an opportunity here that is larger than the defect. Ghost-Ark's E5 +(cross-language verifier agreement) and E7 (differential fuzz) exist and work. +Pointing that machinery at the CC kernel costs far less than inventing it. + +**Remedy.** W5 publishes `conformance/cc-kernel-v1/` — a language-agnostic corpus +of `(marginals, constraints, query) → [L, U]` cases with exact expected values, +plus an adversarial section (infeasible sets, degenerate marginals, boundary +values). Any implementation in any language either passes or is not a CC kernel. +cc-framework runs it in CI; the corpus is published for the others. + +--- + +## F-10 + +**Vinctura's requested cross-language guard surface does not exist.** — **S3**, owner W5 + +`vinctura/docs/research/program/ultracode/UC-10-KERNEL-BRIDGE.md` §4.3: + +> Optional stopping invalidates the density estimate entirely — and the sibling +> project `cc-framework` already refuses confidence claims on post-selection +> intervals at `src/cc/kernel/cliff.py:321`. **Use that.** Route the density +> estimate through the same provenance-tagged machinery so that a post-selection +> interval is refused rather than reported. Making one repository's guardrail +> catch another repository's error is the strongest possible demonstration that +> the guardrail is real. +> +> That last point is the single most elegant thing available in this program. Do it. + +The refusal exists and is correct — `cliff_certificate(..., provenance="post-selection")` +returns `regime="discovery-only"` with no confidence claim. It is reachable only +from Python, in-process. + +**Impact.** A named downstream consumer has a written, dated request to route +through a specific guard in this repository, and cannot, because there is no +callable surface across the language boundary. The most compelling demonstration +available to the whole program is blocked on packaging, not on science. + +**Remedy.** W5 ships `cc-guard` — a stdin/stdout JSON subcommand exposing the +provenance-tagged guards, and the same logic as a pure-data decision table in the +conformance corpus so a JS caller can enforce it without a Python process at all. +Acceptance: Vinctura's G3 gate (`probe.post-selection-refused`) passes against +cc-framework's guard. + +--- + +## F-11 + +**Ghost-Ark's binding ingest rule has no enforcing code here.** — S3, owner W6 + +`ghost-ark/docs/research/CLAIM_EVIDENCE_MATRIX.md` states as a binding rule: + +> CC-Framework must not consume naked binary labels from Ghost-Ark. Binary +> variables must be tied to a discretization rule, threshold, comparator, +> calibration digest, scoring digest, validity window, and parent evidence +> lineage. + +Ghost-Ark specifies the object (`ghost.discretization_rule_receipt.v1`), the +monotonic risk invariant, and eleven verification preconditions. cc-framework +has **no ingest module, no schema, and no test** for any of it. The rule binds a +repository that cannot honour it. + +**Impact.** The bridge between the two repositories is currently prose in one of +them. Every guarantee the contract offers — that a `Z_i = 1` means what it says, +that the comparator matches score polarity, that the observation is inside the +rule's validity window — is unenforced at the point of consumption. + +**Remedy.** W6 ships `cc.ingest.discretization`: a fail-closed reader for +`ghost.discretization_rule_receipt.v1` implementing all eleven preconditions, +with a negative corpus for each. A marginal that arrives without lineage is +refused, not defaulted. + +--- + +## F-12 + +**The claim-boundary manifest is validated by nothing.** — S2, owner W2 + +`docs/claims/CLAIM_BOUNDARY_MANIFEST.md` and its JSON companion define C0–C5 +claim levels and map every public claim to evidence, tests, files, and +non-claims. It is one of the best-designed artifacts in the repository. +`scripts/validate_claim_boundary_manifest.py` exists to check it. + +```bash +grep -rn "validate_claim_boundary_manifest" .github/ Makefile +# (no match) +``` + +**Impact.** The manifest can drift from the code it describes — a renamed test, a +moved module, a deleted file — and nothing reports it. An unenforced truth table +degrades into a historical document, and the failure is silent: it still *looks* +authoritative. + +**Remedy.** W2 wires the validator into CI and pre-commit, extends it to assert +that every named test path and source file exists, and adds a test that fails +when a claim row references a nonexistent witness. + +--- + +## F-13 + +**No coverage gate; the report CLI is at 0%.** — S2, owner W4 + +Total coverage 69.91%. `src/cc/reporting/cli.py` — the `cc-report` console entry +point, 204 statements — is at **0.00%**. `src/cc/cli/manifest.py`, 68 statements, +also 0.00%. No CI job measures or enforces coverage. + +**Impact.** `cc-report build-report` and `cc-report verify-claim-governance` are +the commands an external reviewer would actually run. They are the repository's +product surface and they are entirely unexercised by the suite. The verifier that +issues PASS verdicts on claim-governance packages has no test covering its own +CLI path. + +**Remedy.** W4 adds CLI golden-output tests (build a report, verify it, verify a +tampered copy fails), then sets a coverage floor at the measured value and +ratchets it upward. A floor set below the current value is theatre; set it at +69.91% and raise it only with evidence. + +--- + +## F-14 + +**`core/stats.py` is 38.16% covered across 756 statements.** — S2, owner W4 + +434 statements in the statistics module are never executed by the suite. + +**Impact.** In a repository whose entire purpose is to be honest about +statistical claims, the statistics module is its least-tested large component. +Untested statistical code does not fail loudly — it returns a plausible number. +That is the specific failure mode this project exists to prevent, located inside +the project. + +**Remedy.** W4 treats `core/stats.py` as the highest-priority coverage target, +with property-based tests (Hypothesis is already a declared dependency and +currently ungated) over interval coverage, monotonicity, and boundary behaviour +rather than example-based tests alone. + +--- + +## F-15 + +**Two divergent theorem ledgers.** — S4, owner W2 + +`docs/theory/theorem_ledger.md` (10 KB, T1–T6 with proof status, implementation +witness, test witness, and non-claims per theorem) and +`docs/research/THEOREM_LEDGER.md` (3 KB). Different content, same name, no +cross-reference declaring which governs. + +**Impact.** Ghost-Ark's matrix names its source of truth explicitly and states the +tie-break: "If the ladder and this matrix disagree, downgrade the claim." Two +ledgers with no such rule means a reader cannot tell which one binds, and an +author can satisfy whichever is convenient. + +**Remedy.** `docs/theory/theorem_ledger.md` is the ledger. The other becomes a +pointer, or is deleted. Add a test asserting exactly one file matches +`*theorem*ledger*`. + +--- + +## F-16 + +**17.8 MB of render binaries tracked in git.** — S4, owner W8 + +Seven Blender renders in `visual_identity/claim_observatory/renders/`, 2.2–2.8 MB +each. Four 636 KB JSONL checkpoints under `docs/archive/generated-checkpoints/`. +`.git` is 43 MB against a 54 MB working tree. + +**Impact.** Clone cost for external reviewers, for no verification benefit. The +renders are brand assets, not evidence. + +**Remedy.** Move to a release asset or LFS. Keep one small preview in-tree. Not +urgent; do it during a release, not mid-workstream. + +--- + +## F-17 + +**Experiment and performance lanes have never run in CI.** — S2, owner W7 + +Nine tests skip behind `CC_RUN_EXPERIMENTS`, `CC_RUN_PERF`, or optional imports +(`guardrails`, `fastavro`, `protobuf`, `SQLAlchemy`). No workflow sets any of them. + +**Impact.** The lanes that produce empirical numbers are the lanes that never run. +`tests/performance/test_adapter_perf.py` and +`tests/experiments/test_experiment_leak_metrics.py` are, operationally, dead code +that looks like coverage. + +**Remedy.** W7 adds a scheduled workflow that sets both variables and installs the +optional extras, publishing results as artifacts. A lane that runs weekly and +reports honestly beats a lane that is skipped daily and looks green. + +--- + +## F-18 + +**A sibling repository demoted the core contribution to "engineering."** — **S3**, owner W9 + +`b2b-spatial-intelligence-engine/docs/latent-research-program.md` runs a +kill-ledger over the program's research concepts. The row that matters: + +> **Fréchet ceiling + reachability sharpening** — "Adversarial robustness ≠ +> average-case robustness" — standard in ML security since 2014. **DEMOTED to +> engineering.** The mathematics is 1935; the sharpening is a known distinction. +> Survives as reporting practice, not as science. + +**Impact.** This is the hardest single piece of feedback in the excavation, it +comes from inside the program, and it is **substantially correct**. +Fréchet–Hoeffding is 1935. Restating it for guardrails is not a contribution. +Any plan that positions cc-framework's value as "we compute FH bounds" is +answering a criticism that has already been made and sustained. + +It is also *not* fatal, and the reason matters. What is not 1935: + +- **Statistical inference for partial-identification bounds under estimated + marginals** — a confidence band around `[L, U]` rather than a point interval, + which is thin in the literature and is VISION Pillar I. +- **Measured co-failure dependence on real guardrail stacks** — nobody has + published how badly independence lies in practice, which is Pillar V. +- **A conformance corpus that makes three independent implementations agree** — + engineering, yes, but engineering nobody has done for this calculus. +- **Refusing to certify** — the post-selection guard at `cliff.py:321` is a + design commitment most statistical software does not make. + +**Remedy.** W9 rewrites the framing to concede the theorem and claim the +measurement. The repository's public position becomes: *the mathematics is +classical and we say so; the contribution is the estimation loop, the measured +atlas, the certificate, and the refusal.* Concede early, in the README, above the +fold. A criticism you state yourself cannot be used against you. + +--- + +## F-19 + +**Schema surface is two files with a non-resolvable `$id`.** — S4, owner W6 + +`schemas/cc_report.schema.json` and `schemas/evidence/evidence-item.schema.json`. +Both `$id` values point at `https://cc-framework.local/...`. Version lives in +`title` ("CC Report v0.3.1"), not in the `$id`. + +For comparison, Ghost-Ark carries 182 JSON files with versioned identifiers of the +form `ghost.discretization_rule_receipt.v1.json`. + +**Impact.** A consumer cannot resolve a schema, cannot pin a version, and cannot +tell from an artifact which schema version produced it. Version-in-title means a +schema can change without its identifier changing. + +**Remedy.** W6 adopts `cc..v` identifiers, moves version into `$id`, +and adds a test asserting every emitted artifact names a resolvable, versioned +schema. + +--- + +## F-20 + +**A regression test shells out to run the whole unit suite.** — S2, owner W0 + +`tests/regression/week2/test_week2_deliverables.py::test_unit_tests_pass` +subprocesses `pytest tests/unit -q` and asserts the return code is zero. + +**Impact.** Every unit-test failure is reported twice — once truthfully, once as a +meaningless `assert 1 == 0` in an unrelated file. With `--maxfail=1` in +`addopts`, whichever fires first can mask the real one. This is how F-01 +presented: the visible failure was a week-2 deliverables test, and the actual +cause was a missing `build` module three directories away. + +**Remedy.** Delete the test. If the intent was "week 2 deliverables still exist," +assert that directly — check the files and the entry points, not the exit code of +a nested test runner. + +--- + +## What was not searched + +Stated so that absence is not read as a null result: + +- **No fuzzing.** No fuzz target exists for the report reader, the LP input path, + or the canonicalizer. +- **No mutation testing.** Mutation score is unknown, not low. +- **No adversarial corpus.** There is no committed set of malformed reports that + must be rejected. The negative tests that exist are hand-written per-feature. +- **No dependency audit in this pass.** `pip-audit` runs in `security.yml`; its + current output was not collected here. +- **No review of `_legacy`, `exp/`, `theory/`, or the notebooks** beyond size. +- **No numerical audit of `redteam/dependence_search.py`** (709 statements, + 65.6% covered), which performs the search whose post-selection bias + `cliff.py` refuses to certify. It is the most likely location of a subtle + statistical defect and it was not examined in this pass. diff --git a/docs/upgrade/README.md b/docs/upgrade/README.md new file mode 100644 index 0000000..fa20205 --- /dev/null +++ b/docs/upgrade/README.md @@ -0,0 +1,100 @@ +# Epistemic Upgrade — cc-framework + +A deep excavation of `Cubits11/cc-framework` at commit `3e22c39`, measured +against the standard set by the flagship sibling repository +[`PSUCyberSecurityLab/ghost-ark`](https://github.com/PSUCyberSecurityLab/ghost-ark), +and a plan to close the gap. + +> **Status: plan and measurements.** The measurements are real and reproducible. +> The plan is not implemented. Nothing here claims cc-framework is safe, correct, +> or production-ready, and nothing here relaxes a boundary in +> [`NON_CLAIMS.md`](../research/NON_CLAIMS.md). + +--- + +## Read in this order + +| # | Document | What it is | +|---|---|---| +| 1 | [BASELINE_MEASUREMENTS.md](BASELINE_MEASUREMENTS.md) | Every number, with the command that produced it. Read first — everything else rests on it. | +| 2 | [FINDINGS_REGISTER.md](FINDINGS_REGISTER.md) | 20 findings, 5 at severity S1, each with reproduction and remedy. | +| 3 | [COMMITTEE_SCORECARD.md](COMMITTEE_SCORECARD.md) | 12 dimensions scored, each naming what would raise it and what would lower it. | +| 4 | [VERIFICATION_LADDER.md](VERIFICATION_LADDER.md) | The tiers this repository should have, and what each does *not* establish. | +| 5 | [DOWNSTREAM_CONTRACTS.md](DOWNSTREAM_CONTRACTS.md) | What ghost-ark, vinctura, and b2b-spatial need. Contracts C1–C7. | +| 6 | [EPISTEMIC_UPGRADE_PLAN.md](EPISTEMIC_UPGRADE_PLAN.md) | Ten workstreams, acceptance gates, sequencing. | + +--- + +## The short version + +**The mathematics is exact and nobody can use it.** + +The LP recovers Fréchet–Hoeffding to 1.11e-16 worst case. It reproduces the +correlation cliff in twenty seconds: eighteen guardrails at p = 0.1 each, +composed as a conjunction, bound to `[0, 0.1]` where independence predicts +1e-18. That result is the project's thesis and it works. + +Three separate projects reimplemented the calculus rather than depend on this +repository, and one wrote down why: the most discoverable composition entry point +imposes an ROC/detector ontology on events that are deterministic predicates. A +consumer read the source, found the mathematics right and the API wrong, and +wrote 214 lines of JavaScript instead. + +So the scorecard reads: + +| | | +|---|---:| +| Mathematical correctness | **8.9** | +| Claim discipline — prose | **8.8** | +| Consumability as a library | **2.6** | +| Claim discipline — enforcement | **2.1** | +| Cross-implementation agreement | **0.0** | + +Three failures, stated once: + +1. **Reachability.** Correct and unreachable — wrong ontology, Python-only, no + conformance corpus. Everybody rewrites it. +2. **Enforcement.** Prose 8.8, enforcement 2.1. Strict typing declared over 90 + files, enforced on 7. The claim-boundary manifest is validated by nothing. + Everything holding this repository honest is a person remembering to be honest. +3. **Unexamined foundations.** The canonicalization kernel every signed artifact + routes through silently merges Unicode-distinct keys, diverges from RFC 8785 + on five of six number forms, and had never been attacked. One hour of probing + found four defects. + +--- + +## Reproduce the S1 findings + +The canonicalization defects — [F-03](FINDINGS_REGISTER.md#f-03) through +[F-07](FINDINGS_REGISTER.md#f-07) — reproduce in one command: + +```bash +PYTHONPATH=src python scripts/canonicalization_probe.py +``` + +The probe exits non-zero while any class carries an `unintended-kernel` verdict, +so the finding is falsifiable: fix the canonicalizer and the probe goes green. + +Headline: + +```python +>>> canonical_json_bytes({"é": 1, "é": 2}) # U+00E9 key, then U+0065 U+0301 key +b'{"\xc3\xa9":2}' +``` + +Two distinct input keys. One output key. No exception. The receipt hash covers a +document that is not the document supplied. + +--- + +## What this excavation did not do + +Absence of a finding is not evidence of absence. + +- No fuzzing, no mutation testing, no dependency audit in this pass. +- `redteam/dependence_search.py` — 709 statements at 65.6% coverage, performing + the search whose post-selection bias `cliff.py` refuses to certify — was **not + examined**. It is the most likely home of a subtle statistical defect. +- No external reviewer was involved. Every finding here was produced by the same + kind of process that produced the code. diff --git a/docs/upgrade/VERIFICATION_LADDER.md b/docs/upgrade/VERIFICATION_LADDER.md new file mode 100644 index 0000000..3a5957d --- /dev/null +++ b/docs/upgrade/VERIFICATION_LADDER.md @@ -0,0 +1,239 @@ +# Verification Ladder — cc-framework + +> Modelled on Ghost-Ark's repository verification ladder. Each tier states what +> passing establishes **and what it does not**. A tier that cannot name its +> non-claims is decoration. +> +> Tiers marked **[planned]** do not exist yet and are workstream deliverables. +> They are listed here so the target shape is legible, not to imply they run. + +--- + +## Why a ladder rather than "run the tests" + +`pytest` returning 0 currently means one thing: no assertion in this repository +disagreed with this repository. That is regression resistance. It is not +correctness, it is not agreement with any other implementation, and it is +certainly not safety. + +A ladder separates those. A reviewer who runs Tier 1 knows exactly which of them +they have obtained. + +--- + +## Tier 0 — Fast validation + +```bash +make fmt-check # ruff format --check +make lint # ruff check +make types # [planned] mypy at declared scope, against the ratchet +make claims # [planned] claim scanner + boundary-manifest validation +make docs-check # [planned] required docs exist and cross-references resolve +``` + +**Establishes.** The tree is formatted, lints clean, introduces no new type +errors beyond the recorded ratchet, contains no forbidden claim phrasing outside +the allowlist, and every claim-manifest row names a file and test that exist. + +**Does not establish.** That any computation is correct. Tier 0 is a text and +configuration gate. + +Runtime target: under 60 seconds. + +--- + +## Tier 1 — Kernel correctness + +```bash +make test-kernel # existing +make kernel-conformance # [planned] the published corpus, in-repo +make kernel-properties # [planned] Hypothesis over the marginal simplex +make kernel-duals # [planned] verify emitted dual certificates +``` + +**Establishes.** The LP recovers Fréchet–Hoeffding on the tested family; +infeasible constraint sets raise rather than returning a number; monotone +tightening holds; every conformance case in `conformance/cc-kernel-v1/` matches +its pinned expected interval; sampled marginals satisfy the declared invariants; +emitted dual certificates verify against their primal solutions. + +**Does not establish.** That the marginals fed to the kernel are valid, +representative, or measured. That an implementation in another language agrees +(that is Tier 3). That the result means anything about a deployed system. + +Current status: the first target exists and passes; the rest are W4/W5 +deliverables. + +--- + +## Tier 2 — Receipt and canonicalization integrity + +```bash +make canon-corpus # [planned] the adversarial canonicalization census +make receipt-verify-sample # [planned] verify a committed golden report +make receipt-verify-corpus # [planned] every malicious fixture must be REJECTED +make receipt-replay # [planned] rebuild artifacts, assert byte-identity +make test-reporting # existing +``` + +**Establishes.** Canonical bytes are deterministic and stable; every class in the +adversarial corpus produces the declared verdict; documents that must collapse do +and documents that must stay distinct do; malicious fixtures fail closed; +a committed capsule replays byte-identically. + +**Does not establish.** Semantic truth of the report. That the numbers inside are +correct. That the producer was honest — a receipt binds bytes, not intentions. + +This tier is where [F-03](FINDINGS_REGISTER.md#f-03) through +[F-07](FINDINGS_REGISTER.md#f-07) get caught, permanently. + +**The rule that makes this tier real:** *never weaken the corpus to make a test +pass.* A corpus class that starts failing is a regression in the kernel, not a +problem with the corpus. + +--- + +## Tier 3 — Cross-implementation agreement + +```bash +make conformance-publish # [planned] emit conformance/cc-kernel-v1/ +make differential-agreement # [planned] Python vs. second implementation +make differential-fuzz # [planned] randomized cases, both sides, compare +``` + +**Establishes.** Two independently written implementations, on the same inputs, +produce the same intervals to a declared tolerance — and where they diverge, the +divergence is recorded as a finding rather than reconciled by fiat. + +**Does not establish.** That either is correct. Two implementations can share a +misreading. Agreement is necessary, not sufficient. + +**Why this tier matters most.** Three implementations of this calculus exist +across the program ([F-09](FINDINGS_REGISTER.md#f-09)) and none has ever been +compared to another. Ghost-Ark treats breaking verifier agreement as a critical +architectural event. Here, agreement has never been established, so it cannot yet +be broken. + +Breaking agreement, once established, is a critical architectural event here too. + +--- + +## Tier 4 — Downstream contract conformance + +```bash +make ingest-corpus # [planned] discretization receipts: accept/reject +make guard-contract # [planned] cc-guard decision table vs. implementation +make compose-acceptance # [planned] reproduce Vinctura's published numbers +``` + +**Establishes.** A `ghost.discretization_rule_receipt.v1` missing lineage, or +carrying a comparator inconsistent with score polarity, or outside its validity +window, is **refused**; the guard decision table matches the Python +implementation case-for-case; the composition surface reproduces a real +consumer's published bounds. + +**Does not establish.** That the upstream discretization was appropriate, that the +threshold was well chosen, or that the score was calibrated. The contract checks +that evidence carries its lineage, not that the lineage is wise. + +--- + +## Tier 5 — Full baseline + +```bash +make test # the whole suite +make cov # coverage against the floor +make mutation # [planned] mutation score on kernel/ and reporting/ +``` + +**Establishes.** Repository consistency, regression resistance, coverage at or +above the recorded floor, and a published mutation score. + +**Does not establish.** Correctness. This is the tier most likely to be +misquoted; state its boundary whenever it is cited. + +--- + +## Tier 6 — Empirical lanes (scheduled, not per-commit) + +```bash +CC_RUN_EXPERIMENTS=1 CC_RUN_PERF=1 make test-empirical # [planned] +make atlas # [planned] Correlation Atlas run +``` + +**Establishes.** The experiment and performance lanes execute and report; measured +co-failure dependence on the declared cohort is published with its provenance and +its non-claims. + +**Does not establish.** That a measured regret on one cohort predicts another. +The Atlas is **descriptive**, never predictive. A number measured on one corpus +of jailbreaks says nothing about the next one. + +Runs on a schedule, publishes artifacts, and is allowed to be red without +blocking merges — a lane that must stay green will be quietly weakened until it +does. + +--- + +## Independent verification boundary + +Once Tier 3 exists, the following hold, borrowed directly from Ghost-Ark and +adapted: + +- A standalone verifier must not import `cc` internals. It re-derives from the + published corpus and the schema. +- Independent verification must recompute the interval, not accept a reported one. +- Conformance failures must be deterministic — the same input yields the same + verdict on every run. +- Malicious fixtures must fail closed, never "best effort." +- Unicode-sensitive canonicalization must remain stable across releases. +- **Never weaken verifier strictness to make tests pass.** + +--- + +## What no tier establishes + +No tier on this ladder, at any level, establishes that: + +- an AI system is safe, +- a guardrail is effective, +- a threshold is appropriate, +- a marginal is representative, +- a dependence structure is stable, +- a cohort generalizes, +- a deployment decision is correct, +- a compliance obligation is met. + +The ladder measures whether this repository does what it says. Whether what it +says is worth anything is a separate question, answered by +[COMMITTEE_SCORECARD.md](COMMITTEE_SCORECARD.md) and, ultimately, by someone +outside the project. + +--- + +## North star + +cc-framework succeeds when a hostile reviewer can say: + +> I do not trust the author. +> +> I do not trust the README. +> +> I do not trust the theorem ledger. +> +> But I can recompute the interval from the witness. +> +> I can check the dual certificate without re-solving the LP. +> +> I can run the conformance corpus against my own implementation. +> +> I can find the canonicalization collisions they already found, and no others. +> +> I can see which marginals were measured and which were assumed. +> +> I can read what they refused to claim, and check that the code refuses it too. +> +> And I can determine exactly what cc-framework does and does not establish +> without asking anyone. + +Everything else is secondary. diff --git a/scripts/canonicalization_probe.py b/scripts/canonicalization_probe.py new file mode 100755 index 0000000..17daab2 --- /dev/null +++ b/scripts/canonicalization_probe.py @@ -0,0 +1,340 @@ +#!/usr/bin/env python3 +"""Adversarial census over the CC report canonicalization kernel. + +Modelled on Ghost-Ark's E1 provenance-kernel census. For each pathology class we +declare, *before* observing anything, whether a consumer needs the two documents +distinguished (``distinct``) or unified (``equivalent``). The verdict compares +the observation against that declared intent: + +``sound`` + The kernel did what the declared consumer intent requires. +``unintended-kernel`` + Two documents a consumer needs distinguished received the same canonical + identity. This is the dangerous verdict: it issues a false shared identity. +``over-discrimination`` + Two documents every consumer treats as identical received different + identities. Breaks replay determinism; does not forge identity. +``fail-closed`` + Both documents were refused. No false identity is issued. +``sound-by-rejection`` + One side was admitted and the other refused where a consumer needs them + distinguished. No false identity is issued and the honest document still + receives one. +``rejection-asymmetry`` + One of two documents every consumer treats as identical was refused. This is + the failure mode of an over-strict rule, and it is what distinguishes a fix + from a trade. + +Provenance of this corpus is ``census``: the classes are curated and adversarial, +the population is exactly what is written here, and its size is an authoring +decision. Exact counts only. **No confidence intervals** -- attaching one to a +hand-authored corpus would be precisely the error `cc.kernel.cliff` refuses to +make elsewhere in this repository. + +Exit status is non-zero while any class carries ``unintended-kernel`` or +``rejection-asymmetry``, so the findings in +``docs/upgrade/FINDINGS_REGISTER.md`` are falsifiable rather than asserted: fix +the canonicalizer and this probe goes green. + +Usage:: + + PYTHONPATH=src python scripts/canonicalization_probe.py + PYTHONPATH=src python scripts/canonicalization_probe.py --json +""" + +from __future__ import annotations + +import argparse +import json +import sys +from dataclasses import dataclass +from typing import Any, Literal + +from cc.reporting.canonical import canonical_json_bytes + +Intent = Literal["distinct", "equivalent"] + +# Two representations of the same grapheme: precomposed U+00E9, and the +# decomposed pair U+0065 U+0301. They are different byte sequences that NFC +# normalization maps to the same string. +KEY_NFC = "é" +KEY_NFD = "é" + + +@dataclass(frozen=True) +class PathologyClass: + """One declared-intent pair of documents.""" + + name: str + intent: Intent + left: dict[str, Any] + right: dict[str, Any] + note: str + + +# Declared BEFORE observation. Editing an intent to match a measured result +# requires editing this list, which surfaces it in review. +CLASSES: tuple[PathologyClass, ...] = ( + PathologyClass( + name="unicode-key-collision", + intent="distinct", + left={KEY_NFC: 1}, + right={KEY_NFD: 1}, + note="Distinct source keys whose NFC forms coincide.", + ), + PathologyClass( + name="integer-above-2^53", + intent="distinct", + left={"n": 2**53 + 1}, + right={"n": 2**53 + 2}, + note="Sound in CPython; a JS JSON.parse collapses both before any " + "verifier code runs. See F-05.", + ), + PathologyClass( + name="int-vs-float-same-value", + intent="distinct", + left={"n": 1}, + right={"n": 1.0}, + note="JSON has one number type; RFC 8785 would unify these.", + ), + PathologyClass( + name="negative-zero", + intent="equivalent", + left={"n": 0.0}, + right={"n": -0.0}, + note="IEEE-754 -0.0 == 0.0. scipy.optimize.linprog returns -0.0 at a " + "zero lower bound, so this reaches real reports.", + ), + PathologyClass( + name="bool-vs-int", + intent="distinct", + left={"n": True}, + right={"n": 1}, + note="Python bool is a subclass of int; JSON true is not 1.", + ), + PathologyClass( + name="float-exponent-form", + intent="distinct", + left={"n": 1e30}, + right={"n": 10**30}, + note="Same mathematical value, different Python types. RFC 8785 emits 1e+30 for both.", + ), + PathologyClass( + name="safe-integer-neighbours", + intent="distinct", + left={"n": 2**53 - 2}, + right={"n": 2**53 - 1}, + note="Positive control: adjacent integers inside the safe range must stay distinct.", + ), + PathologyClass( + name="object-key-order", + intent="equivalent", + left={"a": 1, "b": 2}, + right={"b": 2, "a": 1}, + note="Positive control: key order carries no meaning in JSON.", + ), + PathologyClass( + name="array-element-order", + intent="distinct", + left={"xs": [1, 2]}, + right={"xs": [2, 1]}, + note="Positive control: arrays are ordered; no arm may sort them.", + ), + PathologyClass( + name="nested-unicode-key-collision", + intent="distinct", + left={"outer": {KEY_NFC: 1}}, + right={"outer": {KEY_NFD: 1}}, + note="A guard inspecting only top-level keys would pass the flat class " + "while leaving this fully exploitable.", + ), + PathologyClass( + name="large-document-single-byte", + intent="distinct", + left={"pad": "x" * 65536, "tail": "a"}, + right={"pad": "x" * 65536, "tail": "b"}, + note="Positive control: catches a digest computed over a prefix.", + ), +) + + +def _canonical(doc: dict[str, Any]) -> bytes | None: + """Canonical bytes, or None when the document is refused.""" + try: + return canonical_json_bytes(doc) + except Exception: # any refusal is a refusal, for this census + return None + + +def _verdict(intent: Intent, left: bytes | None, right: bytes | None) -> str: + if left is None and right is None: + return "fail-closed" + if left is None or right is None: + return "sound-by-rejection" if intent == "distinct" else "rejection-asymmetry" + if left == right: + return "sound" if intent == "equivalent" else "unintended-kernel" + return "sound" if intent == "distinct" else "over-discrimination" + + +def _observation(left: bytes | None, right: bytes | None) -> str: + if left is None and right is None: + return "rejected-both" + if left is None or right is None: + return "rejected-one" + return "collapsed" if left == right else "distinct" + + +def run() -> list[dict[str, Any]]: + rows: list[dict[str, Any]] = [] + for cls in CLASSES: + left = _canonical(cls.left) + right = _canonical(cls.right) + rows.append( + { + "class": cls.name, + "intent": cls.intent, + "observed": _observation(left, right), + "verdict": _verdict(cls.intent, left, right), + "note": cls.note, + } + ) + return rows + + +def silent_key_loss() -> dict[str, Any]: + """F-03: a single object carrying both key forms loses one, silently.""" + both = {KEY_NFC: 1, KEY_NFD: 2} + try: + out = canonical_json_bytes(both) + except Exception as exc: + return {"keys_in": len(both), "refused": True, "error": type(exc).__name__} + return { + "keys_in": len(both), + "keys_out": len(json.loads(out)), + "refused": False, + "output": out.decode("utf-8"), + } + + +def duplicate_key_parse() -> dict[str, Any]: + """F-07: duplicate keys are accepted last-wins on the parse side.""" + raw = '{"amount":1,"amount":2}' + parsed = json.loads(raw) + return { + "raw": raw, + "parsed": parsed, + "collides_with_survivor": canonical_json_bytes(parsed) + == canonical_json_bytes({"amount": 2}), + } + + +# RFC 8785 (JCS) reference serializations for the number forms probed. Sourced +# from the JCS number-to-string rules, not from a runtime. +JCS_EXPECTED: tuple[tuple[Any, str], ...] = ( + (1e30, "1e+30"), + (10**30, "1e+30"), + (1.0, "1"), + (-0.0, "0"), + (1e-7, "1e-7"), + (100.0, "100"), +) + + +def jcs_conformance() -> list[dict[str, Any]]: + """F-04: how the emitted number form compares with RFC 8785.""" + rows: list[dict[str, Any]] = [] + for value, expected in JCS_EXPECTED: + emitted = canonical_json_bytes({"n": value}).decode("utf-8")[5:-1] + rows.append( + { + "value": repr(value), + "cc_emits": emitted, + "jcs_emits": expected, + "conformant": emitted == expected, + } + ) + return rows + + +FAILING_VERDICTS = {"unintended-kernel", "rejection-asymmetry"} + + +def main(argv: list[str] | None = None) -> int: + parser = argparse.ArgumentParser(description=__doc__.splitlines()[0]) + parser.add_argument("--json", action="store_true", help="emit machine-readable JSON") + args = parser.parse_args(argv) + + rows = run() + counts: dict[str, int] = {} + for row in rows: + counts[row["verdict"]] = counts.get(row["verdict"], 0) + 1 + + payload = { + "provenance": "census", + "confidence_intervals": None, + "confidence_interval_non_claim": ( + "This corpus is the whole population and its size is an authoring " + "decision. A confidence interval would describe sampling " + "variability that does not exist here." + ), + "classes": rows, + "verdict_counts": counts, + "silent_key_loss": silent_key_loss(), + "duplicate_key_parse": duplicate_key_parse(), + "jcs_conformance": jcs_conformance(), + } + + failing = sum(counts.get(v, 0) for v in FAILING_VERDICTS) + + if args.json: + json.dump(payload, sys.stdout, indent=2, ensure_ascii=False) + sys.stdout.write("\n") + return 1 if failing else 0 + + print("cc-framework canonicalization kernel census") + print("provenance: census - exact counts only, no confidence intervals\n") + width = max(len(r["class"]) for r in rows) + for row in rows: + flag = " <<<" if row["verdict"] in FAILING_VERDICTS else "" + print( + f" {row['class']:<{width}} intent={row['intent']:<10}" + f" observed={row['observed']:<13} {row['verdict']}{flag}" + ) + + print("\nverdict counts:") + for verdict in sorted(counts): + print(f" {verdict:<22} {counts[verdict]}") + + loss = payload["silent_key_loss"] + print("\nF-03 silent key loss (single object carrying both key forms):") + if loss["refused"]: + print(f" refused with {loss['error']} - fixed") + else: + print(f" {loss['keys_in']} keys in -> {loss['keys_out']} key(s) out, no exception") + print(f" canonical bytes: {loss['output']}") + + dup = payload["duplicate_key_parse"] + print("\nF-07 duplicate keys on the parse side:") + print(f" {dup['raw']} -> {dup['parsed']}") + print(f" canonically identical to the survivor alone: {dup['collides_with_survivor']}") + + print("\nF-04 RFC 8785 (JCS) number-form conformance:") + for row in payload["jcs_conformance"]: + mark = "ok" if row["conformant"] else "DIVERGES" + print(f" {row['value']:<10} cc={row['cc_emits']:<34} jcs={row['jcs_emits']:<8} {mark}") + nonconformant = sum(1 for r in payload["jcs_conformance"] if not r["conformant"]) + print(f" {nonconformant} of {len(payload['jcs_conformance'])} forms diverge") + + if failing: + print( + f"\nFAIL: {failing} class(es) at {' or '.join(sorted(FAILING_VERDICTS))}." + "\nSee docs/upgrade/FINDINGS_REGISTER.md F-03 through F-07." + ) + return 1 + + print("\nPASS: no unintended-kernel or rejection-asymmetry classes.") + return 0 + + +if __name__ == "__main__": + raise SystemExit(main()) From fd2d91314fac5bbb9e4b3a56e39f200dccf69995 Mon Sep 17 00:00:00 2001 From: Claude Date: Wed, 19 Aug 2026 22:33:45 +0000 Subject: [PATCH 02/15] feat(compose): ROC-free surface, conformance corpus, cross-language agreement Delivers upgrade workstream W5. Consumability 2.6 -> 6.8, cross-implementation agreement 0.0 -> 6.5, on delivered evidence. The excavation found that three sibling projects reimplemented this repository's calculus rather than depend on it, and one wrote down why: cc.core.composition_theory operates on ROC point sets and bounds the Youden J statistic, which presumes each guardrail is a classifier with a threshold and an operating curve. Their controls are deterministic refusal rules. They wrote 214 lines of JavaScript instead. What ships: - src/cc/compose/ Named marginals in, sharp interval out. No ROC, Youden, TPR, FPR, threshold or operating-point concept anywhere in the public signature, pinned by a test that greps for that vocabulary so the surface cannot drift back. Detectors reach it through marginal_from_operating_point, which points inward. The result carries the independence baseline, the binding event, the marginal provenance and the non-claims, so a bound over assumed rates cannot serialize without the word "assumed" attached. - conformance/cc-kernel-v1/ 24 accept and 8 reject cases with pinned exact values, a 256-line normative SPEC.md, and a manifest with digests and a 1e-12 tolerance. Every accept case is cross-checked against the finite-atom LP at generation time; the build refuses to write a case the closed form and the LP disagree on. - verifiers/node/cc_compose_verify.mjs A zero-dependency Node implementation written from SPEC.md rather than from the Python. 24/24 accept, 8/8 reject, and it reproduces an external consumer's published numbers. - scripts/differential_compose.py Randomized differential fuzz over both implementations, agreeing on the answer or on the refusal. 23,000 cases across six seeds, zero disagreements. - src/cc/cli/guard.py + cc-guard The inference guards as a stdin/stdout JSON subcommand and as a pure-data decision table, so a non-Python caller needs no Python process. A downstream project asked in writing to route through the post-selection refusal and could not; now it can. Tests assert the table matches the code rule by rule, and that cc-guard agrees with cc.kernel.cliff.cliff_certificate in both directions. - tests/acceptance/ The gate. An external consumer's published four-control result reproduced from cc.compose: interval [0, 0.01], independence baseline 1.2e-5, understatement factor 833x, all three published scenarios, and their sensitivity finding that improving a weak control moves the upper bound by 0.00pp. The fuzzer found a real bug on its first run: countermonotone dependence with exactly one event, where the Python raised IndexError and the Node silently returned NaN. Both were wrong, differently, and the curated corpus had not thought to ask. Both fixed and pinned as reject-countermonotone-one-event. Also fixes finding F-01: build, setuptools and wheel added to the [test] extra, with a CI job that installs .[test] specifically so the extra strangers are told to use is the extra that is tested. Corrects finding F-12, which was wrong. It claimed the claim-boundary manifest was validated by nothing; the original grep covered .github/ and Makefile but not tests/, where the validator is in fact called, and it already checks that every supporting_files path exists. The correction is recorded in place rather than edited away, and the enforcement score is revised from 2.1 to 4.0. Two narrow gaps remain. Honest limits, stated in the artifacts themselves: both implementations were authored in the same project, so a wrong specification yields two implementations wrong together. This is a differential-testing instrument, not an independent replication. The one genuinely non-same-author check is a single external oracle on a single scenario family. Neither the corpus nor the fuzzer covers the constrained LP path. No downstream project has adopted this yet. Verified: suite 689 -> 815 passing, 0 failing, 9 skipped. Coverage 69.91% -> 70.13%; cc/compose/_bounds.py 97.09%, cc/cli/guard.py 97.56%. Closed form agrees with the LP to 3.3e-16 over 600 randomized cases. Ruff check and format clean on all new files. All internal document links and anchors resolve. Co-Authored-By: Claude Opus 5 Claude-Session: https://claude.ai/code/session_01VnVFub3xq2vwPjjz3MUqZV --- .github/workflows/ci.yml | 48 ++ Makefile | 29 + conformance/cc-kernel-v1/SPEC.md | 256 +++++++++ .../cc-kernel-v1/cases/adversarial.json | 107 ++++ .../cc-kernel-v1/cases/composition.json | 512 ++++++++++++++++++ conformance/cc-kernel-v1/manifest.json | 14 + docs/api.md | 33 +- docs/upgrade/BASELINE_MEASUREMENTS.md | 24 +- docs/upgrade/COMMITTEE_SCORECARD.md | 198 ++++--- docs/upgrade/EPISTEMIC_UPGRADE_PLAN.md | 53 +- docs/upgrade/FINDINGS_REGISTER.md | 64 ++- docs/upgrade/README.md | 61 ++- pyproject.toml | 8 + scripts/build_conformance_corpus.py | 438 +++++++++++++++ scripts/differential_compose.py | 288 ++++++++++ src/cc/cli/guard.py | 317 +++++++++++ src/cc/compose/__init__.py | 31 ++ src/cc/compose/_bounds.py | 490 +++++++++++++++++ .../test_external_consumer_reproduction.py | 180 ++++++ tests/conformance/test_cc_kernel_v1.py | 198 +++++++ tests/unit/cli/test_guard.py | 311 +++++++++++ tests/unit/compose/test_compose_bounds.py | 263 +++++++++ verifiers/node/cc_compose_verify.mjs | 387 +++++++++++++ 23 files changed, 4208 insertions(+), 102 deletions(-) create mode 100644 conformance/cc-kernel-v1/SPEC.md create mode 100644 conformance/cc-kernel-v1/cases/adversarial.json create mode 100644 conformance/cc-kernel-v1/cases/composition.json create mode 100644 conformance/cc-kernel-v1/manifest.json create mode 100755 scripts/build_conformance_corpus.py create mode 100755 scripts/differential_compose.py create mode 100644 src/cc/cli/guard.py create mode 100644 src/cc/compose/__init__.py create mode 100644 src/cc/compose/_bounds.py create mode 100644 tests/acceptance/test_external_consumer_reproduction.py create mode 100644 tests/conformance/test_cc_kernel_v1.py create mode 100644 tests/unit/cli/test_guard.py create mode 100644 tests/unit/compose/test_compose_bounds.py create mode 100644 verifiers/node/cc_compose_verify.mjs diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 4b9d12d..dc79afd 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -52,6 +52,54 @@ jobs: - name: Tests run: pytest -q + conformance: + name: cross-implementation agreement + runs-on: ubuntu-latest + timeout-minutes: 15 + steps: + - uses: actions/checkout@v4 + - uses: actions/setup-python@v5 + with: + python-version: "3.12" + cache: pip + # The Node implementation is deliberately not installed from npm: it has + # zero dependencies, so a bare runtime is the whole requirement. + - uses: actions/setup-node@v4 + with: + node-version: "20" + - name: Install + run: | + python -m pip install -U pip + pip install -e '.[test]' + - name: Corpus is current + run: python scripts/build_conformance_corpus.py --check + - name: Independent Node implementation agrees + run: node verifiers/node/cc_compose_verify.mjs + - name: Differential fuzz + run: python scripts/differential_compose.py --cases 4000 --seed 1 + - name: Conformance and acceptance suites + run: pytest -q tests/conformance tests/acceptance tests/unit/compose tests/unit/cli + + test-extra-is-sufficient: + name: the documented install path works + runs-on: ubuntu-latest + timeout-minutes: 20 + steps: + - uses: actions/checkout@v4 + - uses: actions/setup-python@v5 + with: + python-version: "3.12" + cache: pip + # Installs '.[test]' SPECIFICALLY, not '.[dev]'. The extra strangers are + # told to use must be the extra that is tested; before this job the two + # diverged and the documented path produced a red suite (finding F-01). + - name: Install the documented test extra + run: | + python -m pip install -U pip + pip install -e '.[test]' + - name: Tests + run: pytest -q + package-build: runs-on: ubuntu-latest timeout-minutes: 15 diff --git a/Makefile b/Makefile index 97b5f88..a8ecd6b 100644 --- a/Makefile +++ b/Makefile @@ -113,6 +113,7 @@ GOV_CAPSULE_TESTS := tests/integration/test_claim_governance_capsule.py dev install setup init lock deps \ fmt lint type security package-build \ test test-unit test-int test-kernel test-release test-reporting test-week3 test-week6 cov bench \ + conformance differential acceptance test-compose canon-probe \ check-artifact-boundary check-repro-clean \ enterprise-smoke \ reproduce-smoke reproduce-mvp reproduce-figures figures reports ccc \ @@ -301,6 +302,34 @@ test-release: test-kernel test-reporting: install PYTHONPATH=src $(VENV_DIR)/bin/pytest tests/unit/reporting -q +# --- cross-implementation agreement (upgrade workstream W5) ----------------- +# Agreement here establishes that two implementations of one specification +# compute the same values. It does NOT establish that either is correct: both +# were authored in this project and can share a misreading of the spec. + +conformance: install + PYTHONPATH=src $(VENV_DIR)/bin/python scripts/build_conformance_corpus.py --check + node verifiers/node/cc_compose_verify.mjs + PYTHONPATH=src $(VENV_DIR)/bin/pytest tests/conformance -q + +differential: install + PYTHONPATH=src $(VENV_DIR)/bin/python scripts/differential_compose.py --cases 4000 --seed 1 + +# The acceptance gate for consumability: an external consumer's PUBLISHED +# four-control result, reproduced from cc.compose. Not "the API exists" -- +# their numbers, from this library. +acceptance: install + PYTHONPATH=src $(VENV_DIR)/bin/pytest tests/acceptance -q + +test-compose: install + PYTHONPATH=src $(VENV_DIR)/bin/pytest tests/unit/compose tests/unit/cli -q + $(VENV_DIR)/bin/ruff check src/cc/compose src/cc/cli/guard.py + +# Reproduces the S1 canonicalization findings. Exits non-zero while any +# unintended-kernel class remains, so the findings stay falsifiable. +canon-probe: install + PYTHONPATH=src $(VENV_DIR)/bin/python scripts/canonicalization_probe.py + test-week3: install $(ACT); pytest -q --disable-warnings \ tests/unit/test_fh_intervals_alpha_cap.py \ diff --git a/conformance/cc-kernel-v1/SPEC.md b/conformance/cc-kernel-v1/SPEC.md new file mode 100644 index 0000000..bbd8d14 --- /dev/null +++ b/conformance/cc-kernel-v1/SPEC.md @@ -0,0 +1,256 @@ +# cc-kernel-v1 — Normative Specification + +A CC composition kernel bounds the probability of a composed binary event from +the marginal probabilities of its parts, under unknown dependence. + +This document is **normative and self-contained**. An implementer works from +this document and [`cases/`](cases/), never from the Python source. That is the +point: an implementation written by reading `cc.compose` would inherit its +mistakes, and agreement between it and the reference would establish nothing. + +> **What passing establishes.** That an implementation computes the same +> intervals as the reference on the cases in this corpus. +> +> **What passing does not establish.** That either implementation is correct — +> two implementations can share a misreading of this spec. That the corpus +> covers the input space; it is a curated census whose size is an authoring +> decision. That any bound means a system is safe, a threshold is right, or a +> marginal is valid. + +--- + +## 1. Objects + +### 1.1 Event + +A named binary indicator. `1` denotes occurrence of the event being bounded — +by CC convention, a **guardrail failure or unsafe pass**, not a success. + +An event is a name and a marginal probability. It has no threshold, no +operating curve, and no false-positive rate. A deterministic refusal rule and a +tuned classifier are the same kind of input here. + +### 1.2 Marginals + +A mapping from event name to probability. + +- Names MUST be non-empty strings. +- Probabilities MUST be finite and in `[0, 1]`. +- The mapping MUST contain at least one entry. +- Order MUST NOT affect any output value. It MAY affect `binding_event` only + through the tie rule in §4.3, which is order-independent by construction. + +### 1.3 Event kind + +| Canonical | Aliases | Meaning | +|---|---|---| +| `all` | `and`, `AND`, `intersection` | `P(every event occurs)` — a conjunction | +| `any` | `or`, `OR`, `union` | `P(at least one occurs)` — a union | + +Any other value MUST be refused (§5, `unknown_event_kind`). + +### 1.4 Dependence assumption + +| Value | Meaning | +|---|---| +| `unconstrained` | Nothing assumed. Returns the sharp interval. The honest default. | +| `independent` | A point value, returned as a degenerate interval. | +| `comonotone` | The upper Fréchet corner, as a degenerate interval. | +| `countermonotone` | **Defined only for exactly two events.** See §6. | + +Any other value MUST be refused (`unknown_dependence`). An implementation MUST +NOT default an unrecognized value to `unconstrained`. + +--- + +## 2. The unconstrained interval + +For marginals `p_1 … p_n`: + +**Conjunction** (`event = "all"`): + +``` +lower = max(0, (Σ p_i) − (n − 1)) +upper = min_i p_i +``` + +**Union** (`event = "any"`): + +``` +lower = max_i p_i +upper = min(1, Σ p_i) +``` + +These are the Fréchet–Hoeffding inequalities. The mathematics is classical — +Fréchet 1935, Hoeffding 1940 — and this specification claims no novelty for it. + +Both endpoints are **pointwise sharp**: for any fixed marginals, some joint +distribution attains each. Neither can be tightened without dependence evidence. + +Both endpoints MUST be clipped to `[0, 1]` after computation, to absorb +floating-point excursions at the boundary. + +### 2.1 The finding this encodes + +Under a conjunction the upper bound is `min_i p_i`, which does **not** depend on +`n`. A conjunction of controls is no stronger than its single strongest member. +Adding a further control cannot raise the upper bound and can only lower the +floor. Case family `cliff-homogeneous-m*` pins this: ten events at `p = 0.1` +still bound to `[0, 0.1]` while independence predicts `1e-10`. + +--- + +## 3. The independence baseline + +Computed and reported on **every** result, whatever the dependence assumption: + +``` +independence_point = Π p_i (conjunction) +independence_point = 1 − Π (1 − p_i) (union) +``` + +This is a **comparison baseline, never an answer.** It exists so the gap it +understates stays visible. An implementation MUST report it even when +`dependence = "independent"`, where it coincides with the interval. + +Derived quantities: + +``` +width = max(0, upper − lower) +independence_regret = upper − independence_point +understatement_factor = upper / independence_point, undefined when the point is 0 +``` + +`understatement_factor` MUST serialize as JSON `null` when +`independence_point` is zero. JSON has no infinity, and a null here means the +ratio is *undefined*, not large. + +--- + +## 4. `binding_event` + +The name of the event whose marginal the upper bound turns on, or `null`. + +This field is the actionable part of the result: it names where effort belongs. + +### 4.1 Conjunction + +The upper bound is `min_i p_i`, so the argmin binds — improving any other event +moves the upper bound not at all. + +### 4.2 Union + +The upper bound is `min(1, Σ p_i)`, a sum rather than a single event. No event +binds, and `binding_event` MUST be `null` — **except** when exactly one event is +present, where it is that event. + +### 4.3 Ties + +If two or more events attain the minimum (within tolerance), `binding_event` +MUST be `null`. Improving either leaves the bound pinned by the other, so naming +one of them would misdirect effort. + +### 4.4 Constrained regimes + +When `dependence` is anything other than `unconstrained`, `binding_event` MUST +be `null`. The interval is then a stipulated point, not a bound turning on an +event. + +--- + +## 5. Refusals + +An implementation MUST refuse, not default, in each case below. Refusal reasons +are the identifiers used by `expect_refusal` in +[`cases/adversarial.json`](cases/adversarial.json). + +| Reason | Condition | +|---|---| +| `marginal_out_of_range` | a marginal outside `[0, 1]` | +| `marginal_not_finite` | a marginal that is NaN or infinite | +| `no_events` | an empty marginals mapping | +| `unknown_event_kind` | an event kind not in §1.3 | +| `unknown_dependence` | a dependence value not in §1.4 | +| `countermonotone_undefined` | `countermonotone` with more than two events (§6) | + +**JSON note.** JSON has no NaN literal. In `cases/adversarial.json` the +non-finite marginal is encoded as the **string** `"NaN"`. An implementation +running the corpus MUST map that string to its language's NaN before calling the +kernel — and MUST NOT accept a string as a probability in normal operation. + +--- + +## 6. Countermonotonicity is bivariate + +`dependence = "countermonotone"` with `n > 2` MUST be refused. + +Countermonotonicity is a strictly bivariate concept. Two events can be perfectly +negatively dependent — one occurs exactly when the other does not — but three +cannot all be pairwise mutually exclusive and exhaustive in that way, and there +is no `n`-dimensional countermonotonic structure for `n > 2`. + +The matching fact about the bound: the Fréchet–Hoeffding lower bound +`max(0, Σ p_i − (n−1))` **is not a copula in dimension ≥ 3**. It remains +*pointwise sharp* — for any fixed marginals some joint distribution attains it — +but no single dependence structure attains it everywhere. So there is no +countermonotone regime to tabulate beside independence and comonotonicity. + +An implementation that returns a number here is wrong. Silently offering a +"countermonotone" option for four events produces a value with the form of a +dependence regime and none of the content. + +For `n = 2`: + +``` +countermonotone value = max(0, p_1 + p_2 − 1) (conjunction) +countermonotone value = min(1, p_1 + p_2) (union) +``` + +--- + +## 7. Tolerance + +Numeric comparisons use an absolute tolerance of **1e-12**, declared in +[`manifest.json`](manifest.json). + +This sits far above the worst disagreement measured between the reference +closed form and the finite-atom LP (3.3e-16 over 600 randomized cases), and far +below any difference that would change a reported bound. An implementation +needing a looser tolerance to pass has a defect, not a rounding difference. + +--- + +## 8. Running the corpus + +``` +cases/composition.json accept cases — reproduce every field in `expect` +cases/adversarial.json reject cases — refuse with the named reason +manifest.json digests, tolerance, case count, non-claims +``` + +For each accept case: call the kernel with `input`, compare every key in +`expect` within tolerance. `binding_event` is compared exactly. + +For each reject case: call the kernel with `input` and require a refusal. An +implementation SHOULD distinguish the reason; a corpus runner MAY accept any +refusal if the implementation does not expose typed reasons, but MUST record +that it did so. + +A runner MUST report `pass/fail` counts as exact integers. **No confidence +interval may be attached to a pass rate over this corpus** — it is the whole +population, not a sample, and its size is an authoring decision. + +--- + +## 9. Versioning + +`cc-kernel-v1` is stable. Adding a case is a **new corpus version**, not an edit +to this one — a passing implementation must not start failing because the corpus +grew underneath it. + +Fixing a case whose expected value was **wrong** is a defect correction, and +MUST be recorded in the corpus changelog with the reason. Regenerating the +corpus to match a changed implementation, without such a record, is the failure +mode this discipline exists to prevent. + +**Never weaken a case to make an implementation pass.** diff --git a/conformance/cc-kernel-v1/cases/adversarial.json b/conformance/cc-kernel-v1/cases/adversarial.json new file mode 100644 index 0000000..7584f73 --- /dev/null +++ b/conformance/cc-kernel-v1/cases/adversarial.json @@ -0,0 +1,107 @@ +{ + "case_count": 8, + "cases": [ + { + "description": "Countermonotonicity is strictly bivariate. The FH lower bound is not a copula in dimension >= 3, though it stays pointwise sharp. An implementation that returns a number here is wrong.", + "expect_refusal": "countermonotone_undefined", + "id": "reject-countermonotone-three-events", + "input": { + "dependence": "countermonotone", + "event": "all", + "marginals": { + "A": 0.3, + "B": 0.4, + "C": 0.5 + } + } + }, + { + "description": "Countermonotonicity is a relation between two events; with fewer than two there is nothing to be countermonotone with. Found by differential fuzz (seed 1): the Python reference raised IndexError and the Node implementation silently returned NaN. Both were wrong, differently.", + "expect_refusal": "countermonotone_undefined", + "id": "reject-countermonotone-one-event", + "input": { + "dependence": "countermonotone", + "event": "all", + "marginals": { + "A": 0.3 + } + } + }, + { + "description": "A marginal outside [0, 1] is not a probability.", + "expect_refusal": "marginal_out_of_range", + "id": "reject-marginal-above-one", + "input": { + "dependence": "unconstrained", + "event": "all", + "marginals": { + "A": 1.5, + "B": 0.2 + } + } + }, + { + "description": "A negative marginal is not a probability.", + "expect_refusal": "marginal_out_of_range", + "id": "reject-marginal-negative", + "input": { + "dependence": "unconstrained", + "event": "all", + "marginals": { + "A": -0.1, + "B": 0.2 + } + } + }, + { + "description": "A composition over zero events has no meaning.", + "expect_refusal": "no_events", + "id": "reject-empty-marginals", + "input": { + "dependence": "unconstrained", + "event": "all", + "marginals": {} + } + }, + { + "description": "Only conjunction and union are defined by this corpus.", + "expect_refusal": "unknown_event_kind", + "id": "reject-unknown-event-kind", + "input": { + "dependence": "unconstrained", + "event": "xor", + "marginals": { + "A": 0.1 + } + } + }, + { + "description": "An unrecognized dependence assumption must fail closed, not default.", + "expect_refusal": "unknown_dependence", + "id": "reject-unknown-dependence", + "input": { + "dependence": "sorta-dependent", + "event": "all", + "marginals": { + "A": 0.1, + "B": 0.2 + } + } + }, + { + "description": "NaN is not a probability. Note this case is expressed as a string in JSON because JSON has no NaN literal; see the spec.", + "expect_refusal": "marginal_not_finite", + "id": "reject-non-finite-marginal", + "input": { + "dependence": "unconstrained", + "event": "all", + "marginals": { + "A": "NaN", + "B": 0.2 + } + } + } + ], + "corpus": "cc-kernel-v1", + "kind": "reject" +} diff --git a/conformance/cc-kernel-v1/cases/composition.json b/conformance/cc-kernel-v1/cases/composition.json new file mode 100644 index 0000000..ba1b7be --- /dev/null +++ b/conformance/cc-kernel-v1/cases/composition.json @@ -0,0 +1,512 @@ +{ + "case_count": 24, + "cases": [ + { + "description": "Classical two-event conjunction. Lower is max(0, sum-1)=0; upper is min(p)=0.1.", + "expect": { + "binding_event": "A", + "independence_point": 0.020000000000000004, + "lower": 0.0, + "understatement_factor": 4.999999999999999, + "upper": 0.1, + "width": 0.1 + }, + "id": "and-two-classical", + "input": { + "dependence": "unconstrained", + "event": "all", + "marginals": { + "A": 0.1, + "B": 0.2 + } + } + }, + { + "description": "Marginals summing above 1 force a positive lower bound: 0.9+0.8-1 = 0.7.", + "expect": { + "binding_event": "B", + "independence_point": 0.7200000000000001, + "lower": 0.7000000000000002, + "understatement_factor": 1.111111111111111, + "upper": 0.8, + "width": 0.09999999999999987 + }, + "id": "and-two-overlap-forced", + "input": { + "dependence": "unconstrained", + "event": "all", + "marginals": { + "A": 0.9, + "B": 0.8 + } + } + }, + { + "description": "Tied minima: no single event binds, so binding_event is null.", + "expect": { + "binding_event": null, + "independence_point": 0.0625, + "lower": 0.0, + "understatement_factor": 4.0, + "upper": 0.25, + "width": 0.25 + }, + "id": "and-two-equal-tie", + "input": { + "dependence": "unconstrained", + "event": "all", + "marginals": { + "A": 0.25, + "B": 0.25 + } + } + }, + { + "description": "A narrow interval from extreme marginals. Narrowness is not evidence of validity.", + "expect": { + "binding_event": "A", + "independence_point": 0.0099, + "lower": 0.0, + "understatement_factor": 1.01010101010101, + "upper": 0.01, + "width": 0.01 + }, + "id": "and-two-extreme-asymmetry", + "input": { + "dependence": "unconstrained", + "event": "all", + "marginals": { + "A": 0.01, + "B": 0.99 + } + } + }, + { + "description": "Classical two-event union. Lower is max(p)=0.2; upper is min(1, sum)=0.3.", + "expect": { + "binding_event": null, + "independence_point": 0.2799999999999999, + "lower": 0.2, + "understatement_factor": 1.0714285714285718, + "upper": 0.30000000000000004, + "width": 0.10000000000000003 + }, + "id": "or-two-classical", + "input": { + "dependence": "unconstrained", + "event": "any", + "marginals": { + "A": 0.1, + "B": 0.2 + } + } + }, + { + "description": "Union upper bound clipped at 1 because the marginals sum above it.", + "expect": { + "binding_event": null, + "independence_point": 0.94, + "lower": 0.8, + "understatement_factor": 1.0638297872340425, + "upper": 1.0, + "width": 0.19999999999999996 + }, + "id": "or-two-clipped", + "input": { + "dependence": "unconstrained", + "event": "any", + "marginals": { + "A": 0.7, + "B": 0.8 + } + } + }, + { + "description": "Four deterministic controls, assumed evasion rates. Reproduces a published external result: lower 0, upper 0.01, independence 1.2e-5, factor 833.", + "expect": { + "binding_event": null, + "independence_point": 1.2e-05, + "lower": 0.0, + "understatement_factor": 833.3333333333334, + "upper": 0.01, + "width": 0.01 + }, + "id": "and-four-vinctura-small-chapter", + "input": { + "dependence": "unconstrained", + "event": "all", + "marginals": { + "IMMUTABLE": 0.01, + "SELF_REPORTED": 0.3, + "SEPARATION": 0.4, + "STALE": 0.01 + } + } + }, + { + "description": "Same four controls, optimistic assumed rates. Tied minima at 0.01.", + "expect": { + "binding_event": null, + "independence_point": 5.000000000000001e-07, + "lower": 0.0, + "understatement_factor": 19999.999999999996, + "upper": 0.01, + "width": 0.01 + }, + "id": "and-four-vinctura-optimistic", + "input": { + "dependence": "unconstrained", + "event": "all", + "marginals": { + "IMMUTABLE": 0.01, + "SELF_REPORTED": 0.05, + "SEPARATION": 0.1, + "STALE": 0.01 + } + } + }, + { + "description": "Same four controls, pessimistic assumed rates. IMMUTABLE binds at 0.05.", + "expect": { + "binding_event": "IMMUTABLE", + "independence_point": 0.0015000000000000002, + "lower": 0.0, + "understatement_factor": 33.33333333333333, + "upper": 0.05, + "width": 0.05 + }, + "id": "and-four-vinctura-pessimistic", + "input": { + "dependence": "unconstrained", + "event": "all", + "marginals": { + "IMMUTABLE": 0.05, + "SELF_REPORTED": 0.5, + "SEPARATION": 0.6, + "STALE": 0.1 + } + } + }, + { + "description": "Degenerate single-event conjunction. The interval collapses to the marginal.", + "expect": { + "binding_event": "A", + "independence_point": 0.42, + "lower": 0.42, + "understatement_factor": 1.0, + "upper": 0.42, + "width": 0.0 + }, + "id": "and-single-event", + "input": { + "dependence": "unconstrained", + "event": "all", + "marginals": { + "A": 0.42 + } + } + }, + { + "description": "Degenerate single-event union. The interval collapses to the marginal.", + "expect": { + "binding_event": "A", + "independence_point": 0.41999999999999993, + "lower": 0.42, + "understatement_factor": 1.0000000000000002, + "upper": 0.42, + "width": 0.0 + }, + "id": "or-single-event", + "input": { + "dependence": "unconstrained", + "event": "any", + "marginals": { + "A": 0.42 + } + } + }, + { + "description": "A zero marginal pins the conjunction to zero regardless of the other event.", + "expect": { + "binding_event": "A", + "independence_point": 0.0, + "lower": 0.0, + "understatement_factor": null, + "upper": 0.0, + "width": 0.0 + }, + "id": "and-zero-marginal", + "input": { + "dependence": "unconstrained", + "event": "all", + "marginals": { + "A": 0.0, + "B": 0.5 + } + } + }, + { + "description": "Certain events. The conjunction is certain.", + "expect": { + "binding_event": null, + "independence_point": 1.0, + "lower": 1.0, + "understatement_factor": 1.0, + "upper": 1.0, + "width": 0.0 + }, + "id": "and-unit-marginals", + "input": { + "dependence": "unconstrained", + "event": "all", + "marginals": { + "A": 1.0, + "B": 1.0 + } + } + }, + { + "description": "Independence returns a degenerate interval at the product. A baseline, not an answer.", + "expect": { + "binding_event": null, + "independence_point": 0.12, + "lower": 0.12, + "understatement_factor": 1.0, + "upper": 0.12, + "width": 0.0 + }, + "id": "and-two-independent", + "input": { + "dependence": "independent", + "event": "all", + "marginals": { + "A": 0.3, + "B": 0.4 + } + } + }, + { + "description": "Independent union: 1 - (1-0.3)(1-0.4) = 0.58.", + "expect": { + "binding_event": null, + "independence_point": 0.5800000000000001, + "lower": 0.5800000000000001, + "understatement_factor": 1.0, + "upper": 0.5800000000000001, + "width": 0.0 + }, + "id": "or-two-independent", + "input": { + "dependence": "independent", + "event": "any", + "marginals": { + "A": 0.3, + "B": 0.4 + } + } + }, + { + "description": "The upper Frechet corner as a degenerate interval.", + "expect": { + "binding_event": null, + "independence_point": 0.12, + "lower": 0.3, + "understatement_factor": 2.5, + "upper": 0.3, + "width": 0.0 + }, + "id": "and-two-comonotone", + "input": { + "dependence": "comonotone", + "event": "all", + "marginals": { + "A": 0.3, + "B": 0.4 + } + } + }, + { + "description": "Defined only for exactly two events: max(0, 0.3+0.4-1) = 0.", + "expect": { + "binding_event": null, + "independence_point": 0.12, + "lower": 0.0, + "understatement_factor": 0.0, + "upper": 0.0, + "width": 0.0 + }, + "id": "and-two-countermonotone", + "input": { + "dependence": "countermonotone", + "event": "all", + "marginals": { + "A": 0.3, + "B": 0.4 + } + } + }, + { + "description": "Two-event countermonotone with a positive floor: 0.7+0.8-1 = 0.5.", + "expect": { + "binding_event": null, + "independence_point": 0.5599999999999999, + "lower": 0.5, + "understatement_factor": 0.8928571428571429, + "upper": 0.5, + "width": 0.0 + }, + "id": "and-two-countermonotone-positive", + "input": { + "dependence": "countermonotone", + "event": "all", + "marginals": { + "A": 0.7, + "B": 0.8 + } + } + }, + { + "description": "Correlation cliff at m=2: independence predicts 1e-2, the sharp upper bound stays 0.1. Stacking buys nothing under adversarial dependence.", + "expect": { + "binding_event": null, + "independence_point": 0.010000000000000002, + "lower": 0.0, + "understatement_factor": 9.999999999999998, + "upper": 0.1, + "width": 0.1 + }, + "id": "cliff-homogeneous-m2", + "input": { + "dependence": "unconstrained", + "event": "all", + "marginals": { + "G0": 0.1, + "G1": 0.1 + } + } + }, + { + "description": "Correlation cliff at m=3: independence predicts 1e-3, the sharp upper bound stays 0.1. Stacking buys nothing under adversarial dependence.", + "expect": { + "binding_event": null, + "independence_point": 0.0010000000000000002, + "lower": 0.0, + "understatement_factor": 99.99999999999999, + "upper": 0.1, + "width": 0.1 + }, + "id": "cliff-homogeneous-m3", + "input": { + "dependence": "unconstrained", + "event": "all", + "marginals": { + "G0": 0.1, + "G1": 0.1, + "G2": 0.1 + } + } + }, + { + "description": "Correlation cliff at m=4: independence predicts 1e-4, the sharp upper bound stays 0.1. Stacking buys nothing under adversarial dependence.", + "expect": { + "binding_event": null, + "independence_point": 0.00010000000000000003, + "lower": 0.0, + "understatement_factor": 999.9999999999998, + "upper": 0.1, + "width": 0.1 + }, + "id": "cliff-homogeneous-m4", + "input": { + "dependence": "unconstrained", + "event": "all", + "marginals": { + "G0": 0.1, + "G1": 0.1, + "G2": 0.1, + "G3": 0.1 + } + } + }, + { + "description": "Correlation cliff at m=5: independence predicts 1e-5, the sharp upper bound stays 0.1. Stacking buys nothing under adversarial dependence.", + "expect": { + "binding_event": null, + "independence_point": 1.0000000000000004e-05, + "lower": 0.0, + "understatement_factor": 9999.999999999996, + "upper": 0.1, + "width": 0.1 + }, + "id": "cliff-homogeneous-m5", + "input": { + "dependence": "unconstrained", + "event": "all", + "marginals": { + "G0": 0.1, + "G1": 0.1, + "G2": 0.1, + "G3": 0.1, + "G4": 0.1 + } + } + }, + { + "description": "Correlation cliff at m=8: independence predicts 1e-8, the sharp upper bound stays 0.1. Stacking buys nothing under adversarial dependence.", + "expect": { + "binding_event": null, + "independence_point": 1.0000000000000005e-08, + "lower": 0.0, + "understatement_factor": 9999999.999999996, + "upper": 0.1, + "width": 0.1 + }, + "id": "cliff-homogeneous-m8", + "input": { + "dependence": "unconstrained", + "event": "all", + "marginals": { + "G0": 0.1, + "G1": 0.1, + "G2": 0.1, + "G3": 0.1, + "G4": 0.1, + "G5": 0.1, + "G6": 0.1, + "G7": 0.1 + } + } + }, + { + "description": "Correlation cliff at m=10: independence predicts 1e-10, the sharp upper bound stays 0.1. Stacking buys nothing under adversarial dependence.", + "expect": { + "binding_event": null, + "independence_point": 1.0000000000000006e-10, + "lower": 0.0, + "understatement_factor": 999999999.9999995, + "upper": 0.1, + "width": 0.1 + }, + "id": "cliff-homogeneous-m10", + "input": { + "dependence": "unconstrained", + "event": "all", + "marginals": { + "G0": 0.1, + "G1": 0.1, + "G2": 0.1, + "G3": 0.1, + "G4": 0.1, + "G5": 0.1, + "G6": 0.1, + "G7": 0.1, + "G8": 0.1, + "G9": 0.1 + } + } + } + ], + "corpus": "cc-kernel-v1", + "kind": "accept", + "tolerance": 1e-12 +} diff --git a/conformance/cc-kernel-v1/manifest.json b/conformance/cc-kernel-v1/manifest.json new file mode 100644 index 0000000..b930836 --- /dev/null +++ b/conformance/cc-kernel-v1/manifest.json @@ -0,0 +1,14 @@ +{ + "corpus": "cc-kernel-v1", + "files": { + "cases/adversarial.json": "a394f6220cf04586f20ba1b504e01e51dc0810d8f1c0d79667b2a8b697ff71d4", + "cases/composition.json": "4103169ff792a097fc281c5afeca5a4d7fe364720cb571f92922ab8c0b4c24d1" + }, + "non_claims": [ + "Passing this corpus establishes that an implementation computes the same intervals as the reference on these cases. It does not establish that either implementation is correct: two implementations can share a misreading.", + "The corpus is a curated census, not a sample. Its size is an authoring decision, it carries no coverage claim, and no confidence interval may be attached to a pass rate over it.", + "Passing establishes nothing about safety, calibration, threshold choice, or whether the supplied marginals mean anything." + ], + "tolerance": 1e-12, + "total_cases": 32 +} diff --git a/docs/api.md b/docs/api.md index 6acd1a0..24d5878 100644 --- a/docs/api.md +++ b/docs/api.md @@ -19,6 +19,37 @@ The supported stable kernel symbols are the names exported by `independence_regret`, `independent_event_probability`, endpoint witness result types, and finite-sample count-to-constraint helpers. +`cc.compose` is the stable composition surface for named binary events. It +takes marginal probabilities keyed by event name and returns a sharp identified +interval, with the independence baseline, the binding event, the marginal +provenance, and the non-claims attached to the result. Its supported symbols are +the names exported by `cc.compose.__all__`, including `compose_bounds`, +`sensitivity`, `CompositionBounds`, `CountermonotoneUndefinedError`, and +`marginal_from_operating_point`. + +The surface deliberately contains no ROC, Youden, threshold, or operating-point +concept: a deterministic refusal rule is as valid an input as a tuned +classifier, and detectors reach the same surface through +`marginal_from_operating_point`. That direction is part of the contract and is +enforced by a test. + +Its behavior is pinned by the language-agnostic corpus in +`conformance/cc-kernel-v1/`, whose `SPEC.md` is the normative statement. +Changing a value the corpus pins is a breaking change to this contract. + +`cc.compose` does not certify safety, validate the supplied marginals, or claim +novelty for the Frechet-Hoeffding inequality, which is classical. + +`cc.cli.guard` (the `cc-guard` console script) is the stable surface for the +inference guards. Its `check` subcommand reads a JSON request on stdin and +writes a verdict on stdout; its `table` subcommand emits the decision rules as +pure data for callers that cannot spawn a Python process. `DECISION_TABLE` is +the normative statement of the rules and is asserted to agree with the +implementation. + +A permitted verdict means the guard found no reason to refuse. It does not mean +an estimate is correct or a measurement was well designed. + The evidence/reporting surface is stable only where it is used for release evidence and claim-governance capsules: @@ -50,7 +81,7 @@ guarantees of `cc.kernel.strict`: - `cc.exp`: experiment runners and two-world workflow support. - `cc.guardrails`: local toy guardrail implementations. - `cc.io`, `cc.cli`, and `cc.utils`: storage, manifest, plotting, dashboard, and - utility helpers. + utility helpers, outside the named stable `cc.cli.guard` behavior above. - `cc._legacy`: retained only for backward compatibility and migration context. Experimental/backcompat APIs may change without compatibility guarantees unless diff --git a/docs/upgrade/BASELINE_MEASUREMENTS.md b/docs/upgrade/BASELINE_MEASUREMENTS.md index cdfec2b..6e8e454 100644 --- a/docs/upgrade/BASELINE_MEASUREMENTS.md +++ b/docs/upgrade/BASELINE_MEASUREMENTS.md @@ -329,17 +329,25 @@ is not the convention its sibling repositories use. | Artifact | Lines | Enforced by | |---|---:|---| | `docs/research/NON_CLAIMS.md` | — | prose + verifier substring engine | -| `docs/claims/CLAIM_BOUNDARY_MANIFEST.md` (C0–C5 levels) | — | **nothing** | -| `docs/claims/claim_boundary_manifest.v0.1.json` | — | **nothing** | -| `scripts/validate_claim_boundary_manifest.py` | — | **nothing** | +| `docs/claims/CLAIM_BOUNDARY_MANIFEST.md` (C0–C5 levels) | — | not cross-checked against the JSON | +| `docs/claims/claim_boundary_manifest.v0.1.json` | — | `tests/unit/docs/test_claim_boundary_manifest.py` | +| `scripts/validate_claim_boundary_manifest.py` | — | called by that test, which CI runs | | `src/cc/evidence/permission_compiler.py` forbidden-phrase list | 202 stmts | unit tests | | `docs/theory/theorem_ledger.md` | 10 KB | test witnesses named per theorem | | `docs/research/THEOREM_LEDGER.md` | 3 KB | — (second, divergent ledger) | `grep` across `.github/workflows/` and `.pre-commit-config.yaml` for -`claim`/`scan` returns only Bandit and detect-secrets. **No claim gate runs in -CI.** `scripts/validate_claim_boundary_manifest.py` is referenced by no -workflow, no Makefile target, and no test. +`claim`/`scan` returns only Bandit and detect-secrets, so **no forbidden-phrase +scanner runs in CI**. + +The claim-boundary manifest, however, *is* enforced — via pytest rather than a +named workflow step. `tests/unit/docs/test_claim_boundary_manifest.py` calls +`validate_claim_boundary_manifest.validate_manifest`, which checks required +keys, unique ids, level resolution, non-empty non-claims, and **the existence of +every `supporting_files` path on disk**. It passes with zero errors over all +eight declared claims. See the correction note in +[F-12](FINDINGS_REGISTER.md#f-12); an earlier draft of this document said +otherwise and was wrong. ### Proto-scan: Ghost-Ark's forbidden patterns applied here @@ -377,8 +385,8 @@ it needs negation and allowlist handling from day one. See | mypy | yes | **7 files of 90** | | pytest | yes | full suite, Python 3.10–3.13 | | coverage threshold | **no** | — | -| claim scanner | **no** | — | -| claim-boundary manifest validation | **no** | — | +| claim scanner (forbidden phrases) | **no** | — | +| claim-boundary manifest validation | yes | via pytest, not a named CI step | | artifact boundary | yes | `scripts/check_artifact_boundary.py --static` | | package build + twine check | yes | — | | enterprise smoke (moto) | yes | — | diff --git a/docs/upgrade/COMMITTEE_SCORECARD.md b/docs/upgrade/COMMITTEE_SCORECARD.md index 54a60f8..30c9aa2 100644 --- a/docs/upgrade/COMMITTEE_SCORECARD.md +++ b/docs/upgrade/COMMITTEE_SCORECARD.md @@ -20,11 +20,11 @@ Defects: [FINDINGS_REGISTER.md](FINDINGS_REGISTER.md). | 1 | Mathematical correctness | **8.9** | 9.4 | W4 | | 2 | Canonicalization & provenance integrity | **3.8** | 8.5 | W3 | | 3 | Claim discipline — prose | **8.8** | 9.2 | W2 | -| 4 | Claim discipline — enforcement | **2.1** | 8.5 | W2 | +| 4 | Claim discipline — enforcement | **4.0** | 8.5 | W2 | | 5 | Test depth | **6.4** | 8.5 | W4 | | 6 | External reproducibility | **4.2** | 8.0 | W0, W7 | -| 7 | Consumability as a library | **2.6** | 8.5 | W5 | -| 8 | Cross-implementation agreement | **0.0** | 8.0 | W5 | +| 7 | Consumability as a library | **6.8** | 8.5 | W5 | +| 8 | Cross-implementation agreement | **6.5** | 8.0 | W5 | | 9 | Empirical grounding | **2.4** | 6.5 | W7 | | 10 | Statistical honesty machinery | **7.9** | 9.0 | W4, W7 | | 11 | Evidence-governance architecture | **7.6** | 8.5 | W6 | @@ -37,15 +37,17 @@ Defects: [FINDINGS_REGISTER.md](FINDINGS_REGISTER.md). - **4.1 / 10** as a *verifiable evidence* artifact — the canonicalization kernel has an unexamined collapse, nothing enforces the claim manifest, and no independent implementation exists to disagree with it. -- **2.6 / 10** as a *consumable library* — three downstream repositories - reimplemented its calculus rather than depend on it, and one of them wrote - down why. +- **6.8 / 10** as a *consumable library* — was 2.6. W5 shipped an ROC-free + composition surface, a published conformance corpus, an independent Node + implementation, and a cross-language guard. A real consumer's published + numbers now reproduce from the library. -The gap between the first and third numbers is the whole plan. +The gap between the first and third numbers is the whole plan. W5 has closed +most of it; W6 and the empirical lanes remain. --- -## 1. Mathematical correctness — 8.9 +## 1. Mathematical correctness — 8.9 {#mathematical-correctness} *Measures: whether the computed bounds are the bounds claimed.* @@ -68,7 +70,7 @@ form disagree beyond solver tolerance. A degenerate constraint set that returns --- -## 2. Canonicalization & provenance integrity — 3.8 +## 2. Canonicalization & provenance integrity — 3.8 {#canonicalization-provenance-integrity} *Measures: whether a receipt identifies the document it claims to.* @@ -99,7 +101,7 @@ key rejection on read. --- -## 3. Claim discipline — prose — 8.8 +## 3. Claim discipline — prose — 8.8 {#claim-discipline-prose} *Measures: whether the words stay inside the evidence.* @@ -124,35 +126,50 @@ critic to make. --- -## 4. Claim discipline — enforcement — 2.1 +## 4. Claim discipline — enforcement — 4.0 {#claim-discipline-enforcement} *Measures: whether the discipline survives an author in a hurry.* -**Evidence supporting.** `permission_compiler.py` carries a forbidden-phrase list +> **Revised upward from 2.1 on 2026-08-19.** The original score rested partly on +> the claim that `validate_claim_boundary_manifest.py` was "wired into nothing — +> not CI, not the Makefile, not a test." The first two were right and the third +> was wrong: it is called by +> `tests/unit/docs/test_claim_boundary_manifest.py`, which runs in the pytest +> suite CI executes on four Python versions. See the correction note in +> [F-12](FINDINGS_REGISTER.md#f-12). + +**Evidence supporting.** The claim-boundary manifest **is** enforced, and more +thoroughly than most such artifacts: the validator checks required keys, unique +ids, claim-level resolution, non-empty non-claims per claim, and the existence +on disk of every `supporting_files` path. It passes with zero errors across all +eight declared claims. `permission_compiler.py` carries a forbidden-phrase list and is 95.28% covered. The claim-governance verifier checks non-claim substance rather than exact strings. `check_artifact_boundary.py` runs in CI. -**What lowers it.** No claim scanner in CI at all -([F-12](FINDINGS_REGISTER.md#f-12)). `validate_claim_boundary_manifest.py` is -wired into nothing — not CI, not the Makefile, not a test. Two divergent theorem +**What lowers it.** No forbidden-phrase scanner in CI at all — the gate +Ghost-Ark runs on every file has no counterpart here. Two divergent theorem ledgers with no governing rule ([F-15](FINDINGS_REGISTER.md#f-15)). Strict typing -declared and enforced on 7 of 90 files ([F-02](FINDINGS_REGISTER.md#f-02)) — claim -inflation expressed in build configuration. +declared for the `cc` package and enforced on 7 of 90 files +([F-02](FINDINGS_REGISTER.md#f-02)) — claim inflation expressed in build +configuration. Two narrow manifest gaps remain unenforced +([F-12](FINDINGS_REGISTER.md#f-12)): test paths are not checked for existence, +and the Markdown and JSON manifests are not cross-checked. -The prose is 8.8 and the enforcement is 2.1. **Everything holding this repository -honest is currently a person remembering to be honest.** +The prose is 8.8 and the enforcement is 4.0. The gap is real but narrower than +first reported: what is missing is a phrase-level scanner and honest typing, +not the claim ledger itself. -**What would raise it.** The manifest validator in CI. A claim scanner with -negation and allowlist handling from day one — a naive port of Ghost-Ark's would -fire on 70 negated uses of "guarantee" and be disabled within a week. A test -that fails when a manifest row names a file that does not exist. +**What would raise it.** A claim scanner with negation and allowlist handling +from day one — a naive port of Ghost-Ark's would fire on 70 negated uses of +"guarantee" and be disabled within a week. The typing ratchet. Closing the two +manifest gaps. **What would lower it.** A published claim that no artifact supports, merged green. --- -## 5. Test depth — 6.4 +## 5. Test depth — 6.4 {#test-depth} *Measures: whether the suite would notice a defect.* @@ -179,7 +196,7 @@ caught. --- -## 6. External reproducibility — 4.2 +## 6. External reproducibility — 4.2 {#external-reproducibility} *Measures: whether a stranger can reproduce the artifacts.* @@ -202,54 +219,107 @@ One external person reproducing the paper artifacts and saying so in writing. --- -## 7. Consumability as a library — 2.6 +## 7. Consumability as a library — 6.8 {#consumability-as-a-library} *Measures: whether a downstream project can depend on this instead of rewriting it.* -**Evidence supporting.** Installable, four console entry points, a lazy-loading -kernel aggregate, `docs/api.md`, four downstream-facing design specs. - -**What lowers it.** Three independent reimplementations of the core calculus -([F-09](FINDINGS_REGISTER.md#f-09)). A written rejected-adoption report from a -real consumer naming the ROC framing as the obstacle -([F-08](FINDINGS_REGISTER.md#f-08)). A dated, explicit request from a consumer to -route through `cliff.py:321` that cannot be honoured across a language boundary -([F-10](FINDINGS_REGISTER.md#f-10)). No ingest path for the contract Ghost-Ark -declares binding ([F-11](FINDINGS_REGISTER.md#f-11)). - -This is the lowest non-zero score and the highest-leverage one. The mathematics -is 8.9 and nobody can use it. - -**What would raise it.** `cc.compose` with marginals in and bounds out, no ROC -concept in the signature. `cc-guard` as a stdin/stdout JSON surface. Vinctura's -214 lines deleted and their numbers reproduced from the library. - -**What would lower it.** A fourth reimplementation. +> **Revised upward from 2.6 on 2026-08-19**, on delivered evidence rather than +> intent. What moved it is listed below; each item is a command. + +**Evidence supporting.** `cc.compose` takes named marginals and returns a sharp +interval, with no ROC, Youden, threshold, or operating-point concept anywhere in +its signature — pinned by a test that greps the signatures for that vocabulary, +so the surface cannot drift back to the shape a consumer already walked away +from. Deterministic predicates are first-class; detectors reach the same surface +through `marginal_from_operating_point`, which points *inward*. + +The result object carries what qualifies the number: the independence baseline, +the understatement factor, the binding event, the marginal provenance +(`measured` / `assumed` / `supplied`), and the non-claims. A bound over assumed +rates cannot be serialized without the word `assumed` attached. + +`cc-guard` exposes the inference guards as a stdin/stdout JSON subcommand *and* +as a pure-data decision table, so a non-Python caller needs no Python process. +A test asserts the table and the implementation agree rule by rule, and another +asserts `cc-guard` reaches the same verdict as `cc.kernel.cliff.cliff_certificate` +in both directions — the CLI can neither permit what the kernel refuses nor +refuse what it permits. + +**The acceptance gate passed.** `tests/acceptance/test_external_consumer_reproduction.py` +reproduces an external consumer's *published* four-control result from +`cc.compose`: interval `[0, 0.01]`, independence baseline `1.2e-5`, +understatement factor `833×`, all three published scenarios, and their +sensitivity finding that improving a weak control moves the upper bound by +`0.00pp`. Ten tests. Their 214 lines of JavaScript could be deleted. + +**What still lowers it.** No ingest path for the contract Ghost-Ark declares +binding ([F-11](FINDINGS_REGISTER.md#f-11)) — that is W6. The constrained LP path +is not exposed through `cc.compose`; only the closed form is. And no downstream +project has actually adopted any of this yet: the obstacle is removed, the +adoption is theirs to make. + +**What would raise it further.** W6's `cc.ingest.discretization`. Side +constraints on the `cc.compose` surface. A downstream repository importing it in +anger. + +**What would lower it.** A fourth reimplementation appearing anyway — which +would mean the surface is still the wrong shape. --- -## 8. Cross-implementation agreement — 0.0 +## 8. Cross-implementation agreement — 6.5 {#cross-implementation-agreement} *Measures: whether independent implementations produce the same answer.* -There is nothing to score. No second implementation exists inside this -repository, no conformance corpus is published, and the two external -implementations have never been compared to this one on a single case. - -Zero is the honest score. It is also the easiest to move: Ghost-Ark already -operates E5 (cross-language verifier agreement) and E7 (differential fuzz) -successfully. The machinery exists; it has never been pointed here. - -**What would raise it.** `conformance/cc-kernel-v1/` published with exact expected -values and an adversarial section. A second implementation in another language -inside this repository. A differential fuzz harness comparing them. Agreement -demonstrated against Ghost-Ark's TypeScript and Vinctura's JavaScript. - -**What would lower it.** Nothing. It cannot go lower. +> **Revised upward from 0.0 on 2026-08-19.** There was nothing to score; now +> there is. + +**Evidence supporting.** + +- `conformance/cc-kernel-v1/` is published: 24 accept cases with pinned exact + values, 8 reject cases with typed refusal reasons, a manifest with digests and + a declared 1e-12 tolerance, and a 256-line normative `SPEC.md`. Every accept + case is cross-checked against the finite-atom LP at generation time, and the + build **refuses to write a case** the closed form and the LP disagree on. +- `verifiers/node/cc_compose_verify.mjs` is a zero-dependency Node + implementation written from `SPEC.md` and the JSON, not from the Python. It + passes 24/24 accept and 8/8 reject. +- `scripts/differential_compose.py` fuzzes both sides on randomized inputs, + including malformed ones, requiring agreement on the answer *or* the refusal. + **23,000 cases across six seeds, zero disagreements** — and it earned its + keep immediately by finding a real bug (see below). +- Three of these run in CI as pytest cases, so agreement is enforced rather than + demonstrated once. + +**The fuzzer found a bug on its first run.** `dependence="countermonotone"` with +exactly *one* event: the Python raised `IndexError`, the Node silently returned +`NaN`. Both were wrong, differently, and the curated corpus had not thought to +ask. Both are fixed, and the case is now pinned as +`reject-countermonotone-one-event` with its provenance recorded in the corpus. +That is the argument for randomized differential testing over a corpus alone. + +**Why this is 6.5 and not 8.0.** The honest limit: **the Node implementation and +the Python reference were authored in the same project.** A specification that +is wrong yields two implementations that are wrong together. This is a +differential-testing instrument, not an independent replication, and both the +verifier's own output and the corpus manifest say so in their non-claims. + +The one check here that is *not* same-author is the external oracle: an +outside project's **published** numbers, produced independently for its own +purposes before this corpus existed, reproduced exactly. That is one oracle, on +one scenario family. + +**What would raise it.** Ghost-Ark's TypeScript `ccCorrelation.ts` running this +corpus. A third implementation by someone who has not read either of these. More +external oracles. Extending the corpus to the constrained LP path, which neither +the corpus nor the fuzzer currently covers. + +**What would lower it.** A disagreement found by anyone outside the project — or +a case quietly weakened to make an implementation pass. --- -## 9. Empirical grounding — 2.4 +## 9. Empirical grounding — 2.4 {#empirical-grounding} *Measures: whether any number here came from a real system.* @@ -274,7 +344,7 @@ simulation. --- -## 10. Statistical honesty machinery — 7.9 +## 10. Statistical honesty machinery — 7.9 {#statistical-honesty-machinery} *Measures: whether the code refuses claims the data cannot support.* @@ -302,7 +372,7 @@ hand-authored corpus. --- -## 11. Evidence-governance architecture — 7.6 +## 11. Evidence-governance architecture — 7.6 {#evidence-governance-architecture} *Measures: whether evidence carries its own boundaries.* @@ -323,7 +393,7 @@ schema identifiers. An evidence-window contract in Ghost-Ark's sense. --- -## 12. Formal readiness — 3.1 +## 12. Formal readiness — 3.1 {#formal-readiness} *Measures: distance to machine-checked proof.* diff --git a/docs/upgrade/EPISTEMIC_UPGRADE_PLAN.md b/docs/upgrade/EPISTEMIC_UPGRADE_PLAN.md index 8eadcfb..61c465b 100644 --- a/docs/upgrade/EPISTEMIC_UPGRADE_PLAN.md +++ b/docs/upgrade/EPISTEMIC_UPGRADE_PLAN.md @@ -195,8 +195,11 @@ handling and an allowlist are day-one requirements, not refinements. because reviewer-facing claim text lives in build files too; - exclusion of generated output, so the verdict describes the committed tree rather than local run state. -2. Wire `scripts/validate_claim_boundary_manifest.py` into CI and pre-commit, and - extend it to assert that **every path a claim row names actually exists**. +2. Close the two residual manifest gaps ([F-12](FINDINGS_REGISTER.md#f-12), corrected): + resolve path-like tokens in `supporting_tests_or_commands`, and assert the + Markdown and JSON claim-id sets are equal. The validator already runs (via + pytest) and already checks `supporting_files` existence — an earlier draft of + this plan said otherwise and was wrong. 3. Resolve the two theorem ledgers. `docs/theory/theorem_ledger.md` governs; the other becomes a pointer or is deleted. Add a test asserting exactly one. 4. **Adopt Vinctura's rule:** *no orphan claims — every public sentence carries @@ -329,6 +332,12 @@ on the mutated subset, nothing wider. ### W5 — Make the kernel consumable {#w5} +> **DELIVERED 2026-08-19.** Consumability **2.6 → 6.8**, cross-implementation +> agreement **0.0 → 6.5**. Evidence in +> [§3.5 Delivery record](#w5-delivery-record) below; scores and their limits in +> [COMMITTEE_SCORECARD.md](COMMITTEE_SCORECARD.md#consumability-as-a-library). +> C4, C5, C6 and the C2 corpus are shipped. C1, C3, C7 remain with W3 and W6. + **Findings:** [F-08](FINDINGS_REGISTER.md#f-08) **S3**, [F-09](FINDINGS_REGISTER.md#f-09) **S3**, [F-10](FINDINGS_REGISTER.md#f-10) **S3** · **Contracts:** [C2, C4, C5, C6](DOWNSTREAM_CONTRACTS.md#contract-summary) · **Effort:** 4–6 weeks · **Highest leverage** @@ -395,6 +404,46 @@ and the consumer noticed before this repository did. decision. The gate is that adoption becomes *possible* and that a real consumer's published numbers reproduce. +#### Delivery record {#w5-delivery-record} + +Measured on 2026-08-19. Every row is a command. + +| Deliverable | Shipped as | Evidence | +|---|---|---| +| ROC-free surface | `src/cc/compose/` | 34 unit tests; a test greps the public signatures for `roc`, `youden`, `tpr`, `fpr`, `threshold`, `operating_point` and fails if any reappears | +| Conformance corpus | `conformance/cc-kernel-v1/` | 24 accept + 8 reject cases, `SPEC.md` (256 lines), manifest with digests, 1e-12 tolerance | +| Second implementation | `verifiers/node/cc_compose_verify.mjs` | zero-dependency Node, written from `SPEC.md`; 24/24 accept, 8/8 reject | +| Differential harness | `scripts/differential_compose.py` | 23,000 randomized cases across 6 seeds, **0 disagreements** | +| Cross-language guard | `src/cc/cli/guard.py`, `cc-guard` | stdin/stdout JSON **and** a pure-data decision table; table-vs-code agreement asserted | +| Acceptance gate | `tests/acceptance/` | an external consumer's **published** four-control result reproduced: `[0, 0.01]`, independence `1.2e-5`, **833×**, all three scenarios, their sensitivity finding | + +Enforced by `make conformance`, `make differential`, `make acceptance`, +`make test-compose`, and two new CI jobs. + +**Numbers.** Suite 689 → **808 passing**, 0 failing. Coverage 69.91% → **70.13%**. +`cc/compose/_bounds.py` **97.09%**, `cc/cli/guard.py` **97.56%**. The closed form +agrees with the finite-atom LP to **3.3e-16** over 600 randomized cases. + +**The fuzzer earned its keep on its first run.** `dependence="countermonotone"` +with exactly one event: the Python raised `IndexError`, the Node silently +returned `NaN`. Both wrong, differently; the curated corpus had not thought to +ask. Both fixed, and pinned as `reject-countermonotone-one-event`. That is the +argument for randomized differential testing over a corpus alone. + +**Honest limits.** The Node implementation and the Python reference were +authored in the same project — a wrong specification yields two implementations +wrong together. This is a differential-testing instrument, not an independent +replication, and both the verifier output and the corpus manifest say so in +their non-claims. The one genuinely non-same-author check is the external +oracle, and it is **one** oracle on **one** scenario family. Neither the corpus +nor the fuzzer covers the constrained LP path. No downstream project has adopted +any of this yet: the obstacle is removed, the adoption is theirs. + +**Also fixed in passing.** [F-01](FINDINGS_REGISTER.md#f-01): `build`, +`setuptools`, and `wheel` added to the `[test]` extra, plus a CI job that +installs `.[test]` specifically, so the extra strangers are told to use is the +extra that is tested. + --- ### W6 — Contract the boundaries {#w6} diff --git a/docs/upgrade/FINDINGS_REGISTER.md b/docs/upgrade/FINDINGS_REGISTER.md index 70524ae..0c89680 100644 --- a/docs/upgrade/FINDINGS_REGISTER.md +++ b/docs/upgrade/FINDINGS_REGISTER.md @@ -34,7 +34,7 @@ Severity scale: | [F-09](#f-09) | **S3** | The kernel calculus is independently reimplemented three times | W5 | | [F-10](#f-10) | **S3** | Vinctura's requested cross-language guard surface does not exist | W5 | | [F-11](#f-11) | S3 | Ghost-Ark's binding ingest rule has no enforcing code here | W6 | -| [F-12](#f-12) | S2 | The claim-boundary manifest is validated by nothing | W2 | +| [F-12](#f-12) | S4 | The manifest validator has two narrow unenforced gaps | W2 | | [F-13](#f-13) | S2 | No coverage gate; the report CLI is at 0% | W4 | | [F-14](#f-14) | S2 | `core/stats.py` is 38% covered across 756 statements | W4 | | [F-15](#f-15) | S4 | Two divergent theorem ledgers | W2 | @@ -397,26 +397,60 @@ refused, not defaulted. ## F-12 -**The claim-boundary manifest is validated by nothing.** — S2, owner W2 +**The manifest validator has two narrow unenforced gaps.** — S4, owner W2 + +> **Corrected 2026-08-19.** This finding was first written as "the +> claim-boundary manifest is validated by nothing," at severity S2. That was +> wrong. The original grep covered `.github/workflows/` and `Makefile`, found +> nothing, and I concluded the validator was unwired — without checking +> `tests/`, where it is in fact called. The corrected finding is below, and the +> enforcement score in +> [COMMITTEE_SCORECARD.md](COMMITTEE_SCORECARD.md#claim-discipline-enforcement) +> was raised from 2.1 to 4.0 as a result. `docs/claims/CLAIM_BOUNDARY_MANIFEST.md` and its JSON companion define C0–C5 claim levels and map every public claim to evidence, tests, files, and -non-claims. It is one of the best-designed artifacts in the repository. -`scripts/validate_claim_boundary_manifest.py` exists to check it. +non-claims. It is one of the best-designed artifacts in the repository, and it +**is** enforced: `tests/unit/docs/test_claim_boundary_manifest.py` calls +`scripts/validate_claim_boundary_manifest.py`, and that test runs in the normal +pytest suite, which CI runs on four Python versions. -```bash -grep -rn "validate_claim_boundary_manifest" .github/ Makefile -# (no match) -``` +Measured against the current tree, the validator checks — and passes — all of: -**Impact.** The manifest can drift from the code it describes — a renamed test, a -moved module, a deleted file — and nothing reports it. An unenforced truth table -degrades into a historical document, and the failure is silent: it still *looks* -authoritative. +``` +validate_manifest errors: none +claims in JSON: 8 +``` -**Remedy.** W2 wires the validator into CI and pre-commit, extends it to assert -that every named test path and source file exists, and adds a test that fails -when a claim row references a nonexistent witness. +- required top-level and per-claim keys; +- unique claim ids; +- every `level` resolving to a declared claim level; +- **every `supporting_files` path existing on disk**; +- non-empty `non_claims` on every claim; +- non-empty `supporting_tests_or_commands` on every claim; +- `forbidden_upgrades` entries carrying `from`, `to`, and `reason`. + +**What is actually missing.** Two narrow gaps, both currently satisfied by +discipline rather than by a gate: + +1. **Test paths are not checked for existence.** `supporting_files` entries are + verified against the filesystem; `supporting_tests_or_commands` entries are + only checked for being a non-empty list. A renamed test file would pass. All + named paths do currently exist — verified separately for this register — but + nothing keeps that true. +2. **The Markdown and JSON manifests are not cross-checked.** They carry the + same eight claim ids today, with no id in one and not the other, but no test + asserts it. The prose table and the machine-checkable file can diverge + silently. + +**Impact.** Much smaller than first stated. The failure mode is a renamed test +or a claim added to one manifest and not the other, not a wholly unenforced +document. + +**Remedy.** Extend the validator to resolve path-like tokens in +`supporting_tests_or_commands`, and add a test asserting the Markdown and JSON +claim-id sets are equal. Roughly fifteen lines; it belongs in W2 with the claim +scanner, not ahead of it. --- diff --git a/docs/upgrade/README.md b/docs/upgrade/README.md index fa20205..af86b71 100644 --- a/docs/upgrade/README.md +++ b/docs/upgrade/README.md @@ -42,25 +42,57 @@ wrote 214 lines of JavaScript instead. So the scorecard reads: -| | | -|---|---:| -| Mathematical correctness | **8.9** | -| Claim discipline — prose | **8.8** | -| Consumability as a library | **2.6** | -| Claim discipline — enforcement | **2.1** | -| Cross-implementation agreement | **0.0** | +| | At excavation | Now | +|---|---:|---:| +| Mathematical correctness | 8.9 | 8.9 | +| Claim discipline — prose | 8.8 | 8.8 | +| Consumability as a library | 2.6 | **6.8** | +| Claim discipline — enforcement | 2.1 † | **4.0** † | +| Cross-implementation agreement | 0.0 | **6.5** | + +† Corrected, not improved — see [F-12](FINDINGS_REGISTER.md#f-12). Three failures, stated once: 1. **Reachability.** Correct and unreachable — wrong ontology, Python-only, no - conformance corpus. Everybody rewrites it. -2. **Enforcement.** Prose 8.8, enforcement 2.1. Strict typing declared over 90 - files, enforced on 7. The claim-boundary manifest is validated by nothing. - Everything holding this repository honest is a person remembering to be honest. + conformance corpus. Everybody rewrites it. **Largely closed by + [W5](EPISTEMIC_UPGRADE_PLAN.md#w5-delivery-record).** +2. **Enforcement.** Prose 8.8, enforcement 4.0. Strict typing declared over 90 + files, enforced on 7. No forbidden-phrase scanner anywhere. The claim ledger + itself *is* enforced — an earlier draft said otherwise and was wrong. 3. **Unexamined foundations.** The canonicalization kernel every signed artifact routes through silently merges Unicode-distinct keys, diverges from RFC 8785 on five of six number forms, and had never been attacked. One hour of probing - found four defects. + found four defects. **Open — this is W3, the highest-severity work remaining.** + +--- + +## What has been built + +[W5](EPISTEMIC_UPGRADE_PLAN.md#w5-delivery-record) is delivered. Reproduce it: + +```bash +make test-compose # the ROC-free surface, 34 tests +make conformance # corpus current + an independent Node implementation agrees +make differential # 4,000 randomized cases through both implementations +make acceptance # an external consumer's PUBLISHED numbers, from this library +``` + +The acceptance gate is the one that matters. It is not "the API exists" — it is +a real consumer's published four-control result reproduced from `cc.compose`: +interval `[0, 0.01]`, independence baseline `1.2e-5`, understatement factor +`833×`, all three of their scenarios, and their sensitivity finding. Their 214 +lines of JavaScript could be deleted. + +The differential fuzzer found a real bug on its first run — `countermonotone` +with one event, where the Python raised `IndexError` and the Node silently +returned `NaN`. Both wrong, differently; the curated corpus had not thought to +ask. + +**The honest limit:** both implementations were authored in the same project, so +this is a differential-testing instrument, not an independent replication. The +one genuinely non-same-author check is a single external oracle on a single +scenario family. --- @@ -98,3 +130,8 @@ Absence of a finding is not evidence of absence. examined**. It is the most likely home of a subtle statistical defect. - No external reviewer was involved. Every finding here was produced by the same kind of process that produced the code. +- One finding was **wrong on first publication**. F-12 claimed the + claim-boundary manifest was "validated by nothing"; the original grep covered + `.github/` and `Makefile` but not `tests/`, where the validator is in fact + called. It is corrected in place, with the correction visible rather than + quietly edited away, and the enforcement score was revised from 2.1 to 4.0. diff --git a/pyproject.toml b/pyproject.toml index 540d689..63a92e3 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -116,6 +116,13 @@ test = [ "pandas>=2.2", "matplotlib>=3.8", "scikit-learn>=1.3", + # tests/unit/packaging/ subprocesses `python -m build --no-isolation`, which + # needs the build frontend and the setuptools backend present in the same + # environment. Without these three the declared test extra cannot run the + # test suite (upgrade finding F-01). + "build>=1.2", + "setuptools>=69", + "wheel", ] security = [ @@ -133,6 +140,7 @@ all = [ cc-bundle = "cc.core.evidence_bundle:main" cc-cartographer = "cc.cartographer.cli:main" cc-dependence-bench = "cc.evals.dependence_benchmark:main" +cc-guard = "cc.cli.guard:main" cc-report = "cc.reporting.cli:main" [project.urls] diff --git a/scripts/build_conformance_corpus.py b/scripts/build_conformance_corpus.py new file mode 100755 index 0000000..8b81c95 --- /dev/null +++ b/scripts/build_conformance_corpus.py @@ -0,0 +1,438 @@ +#!/usr/bin/env python3 +"""Generate the ``cc-kernel-v1`` conformance corpus. + +The corpus is the normative statement of what a CC composition kernel must +compute. It is language-agnostic JSON: an implementation in any language either +reproduces every expected value within tolerance, or it is not a CC kernel. + +Expected values are produced here by :mod:`cc.compose`, and every ``accept`` +case is independently cross-checked against the finite-atom LP in +:mod:`cc.kernel.sensitivity` before it is written. A case that the closed form +and the LP disagree on is a defect in this repository and the build fails +rather than pinning the disagreement into the corpus. + +Usage:: + + python scripts/build_conformance_corpus.py # write the corpus + python scripts/build_conformance_corpus.py --check # verify it is current +""" + +from __future__ import annotations + +import argparse +import hashlib +import json +import sys +from pathlib import Path +from typing import Any + +from cc.compose import CountermonotoneUndefinedError, compose_bounds +from cc.kernel.sensitivity import AssumptionSet, LinearQuery, identified_region +from cc.reporting.canonical import canonical_json_bytes + +CORPUS_VERSION = "cc-kernel-v1" +ROOT = Path(__file__).resolve().parents[1] +CORPUS_DIR = ROOT / "conformance" / CORPUS_VERSION + +#: Absolute tolerance an implementation is allowed on every numeric field. +#: Chosen at 1e-12, far above the 3.3e-16 worst disagreement measured between +#: the closed form and the LP, and far below any difference that would change a +#: reported bound. +TOLERANCE = 1.0e-12 + +# --- accept cases: (id, marginals, event, dependence, description) ----------- + +_ACCEPT: list[tuple[str, dict[str, float], str, str, str]] = [ + ( + "and-two-classical", + {"A": 0.1, "B": 0.2}, + "all", + "unconstrained", + "Classical two-event conjunction. Lower is max(0, sum-1)=0; upper is min(p)=0.1.", + ), + ( + "and-two-overlap-forced", + {"A": 0.9, "B": 0.8}, + "all", + "unconstrained", + "Marginals summing above 1 force a positive lower bound: 0.9+0.8-1 = 0.7.", + ), + ( + "and-two-equal-tie", + {"A": 0.25, "B": 0.25}, + "all", + "unconstrained", + "Tied minima: no single event binds, so binding_event is null.", + ), + ( + "and-two-extreme-asymmetry", + {"A": 0.01, "B": 0.99}, + "all", + "unconstrained", + "A narrow interval from extreme marginals. Narrowness is not evidence of validity.", + ), + ( + "or-two-classical", + {"A": 0.1, "B": 0.2}, + "any", + "unconstrained", + "Classical two-event union. Lower is max(p)=0.2; upper is min(1, sum)=0.3.", + ), + ( + "or-two-clipped", + {"A": 0.7, "B": 0.8}, + "any", + "unconstrained", + "Union upper bound clipped at 1 because the marginals sum above it.", + ), + ( + "and-four-vinctura-small-chapter", + {"SELF_REPORTED": 0.30, "STALE": 0.01, "IMMUTABLE": 0.01, "SEPARATION": 0.40}, + "all", + "unconstrained", + "Four deterministic controls, assumed evasion rates. Reproduces a published " + "external result: lower 0, upper 0.01, independence 1.2e-5, factor 833.", + ), + ( + "and-four-vinctura-optimistic", + {"SELF_REPORTED": 0.05, "STALE": 0.01, "IMMUTABLE": 0.01, "SEPARATION": 0.10}, + "all", + "unconstrained", + "Same four controls, optimistic assumed rates. Tied minima at 0.01.", + ), + ( + "and-four-vinctura-pessimistic", + {"SELF_REPORTED": 0.50, "STALE": 0.10, "IMMUTABLE": 0.05, "SEPARATION": 0.60}, + "all", + "unconstrained", + "Same four controls, pessimistic assumed rates. IMMUTABLE binds at 0.05.", + ), + ( + "and-single-event", + {"A": 0.42}, + "all", + "unconstrained", + "Degenerate single-event conjunction. The interval collapses to the marginal.", + ), + ( + "or-single-event", + {"A": 0.42}, + "any", + "unconstrained", + "Degenerate single-event union. The interval collapses to the marginal.", + ), + ( + "and-zero-marginal", + {"A": 0.0, "B": 0.5}, + "all", + "unconstrained", + "A zero marginal pins the conjunction to zero regardless of the other event.", + ), + ( + "and-unit-marginals", + {"A": 1.0, "B": 1.0}, + "all", + "unconstrained", + "Certain events. The conjunction is certain.", + ), + ( + "and-two-independent", + {"A": 0.3, "B": 0.4}, + "all", + "independent", + "Independence returns a degenerate interval at the product. A baseline, not an answer.", + ), + ( + "or-two-independent", + {"A": 0.3, "B": 0.4}, + "any", + "independent", + "Independent union: 1 - (1-0.3)(1-0.4) = 0.58.", + ), + ( + "and-two-comonotone", + {"A": 0.3, "B": 0.4}, + "all", + "comonotone", + "The upper Frechet corner as a degenerate interval.", + ), + ( + "and-two-countermonotone", + {"A": 0.3, "B": 0.4}, + "all", + "countermonotone", + "Defined only for exactly two events: max(0, 0.3+0.4-1) = 0.", + ), + ( + "and-two-countermonotone-positive", + {"A": 0.7, "B": 0.8}, + "all", + "countermonotone", + "Two-event countermonotone with a positive floor: 0.7+0.8-1 = 0.5.", + ), +] + +# The correlation cliff, as a family: m events all at p=0.1. Independence +# predicts 0.1**m; the sharp upper bound stays at 0.1 for every m. This is the +# repository's headline result, pinned so no implementation can lose it. +for _m in (2, 3, 4, 5, 8, 10): + _ACCEPT.append( + ( + f"cliff-homogeneous-m{_m}", + {f"G{i}": 0.1 for i in range(_m)}, + "all", + "unconstrained", + f"Correlation cliff at m={_m}: independence predicts 1e-{_m}, the sharp " + f"upper bound stays 0.1. Stacking buys nothing under adversarial dependence.", + ) + ) + +# --- reject cases ------------------------------------------------------------ + +_REJECT: list[tuple[str, dict[str, Any], str, str]] = [ + ( + "reject-countermonotone-three-events", + { + "marginals": {"A": 0.3, "B": 0.4, "C": 0.5}, + "event": "all", + "dependence": "countermonotone", + }, + "countermonotone_undefined", + "Countermonotonicity is strictly bivariate. The FH lower bound is not a " + "copula in dimension >= 3, though it stays pointwise sharp. An " + "implementation that returns a number here is wrong.", + ), + ( + "reject-countermonotone-one-event", + { + "marginals": {"A": 0.3}, + "event": "all", + "dependence": "countermonotone", + }, + "countermonotone_undefined", + "Countermonotonicity is a relation between two events; with fewer than two " + "there is nothing to be countermonotone with. Found by differential fuzz " + "(seed 1): the Python reference raised IndexError and the Node " + "implementation silently returned NaN. Both were wrong, differently.", + ), + ( + "reject-marginal-above-one", + {"marginals": {"A": 1.5, "B": 0.2}, "event": "all", "dependence": "unconstrained"}, + "marginal_out_of_range", + "A marginal outside [0, 1] is not a probability.", + ), + ( + "reject-marginal-negative", + {"marginals": {"A": -0.1, "B": 0.2}, "event": "all", "dependence": "unconstrained"}, + "marginal_out_of_range", + "A negative marginal is not a probability.", + ), + ( + "reject-empty-marginals", + {"marginals": {}, "event": "all", "dependence": "unconstrained"}, + "no_events", + "A composition over zero events has no meaning.", + ), + ( + "reject-unknown-event-kind", + {"marginals": {"A": 0.1}, "event": "xor", "dependence": "unconstrained"}, + "unknown_event_kind", + "Only conjunction and union are defined by this corpus.", + ), + ( + "reject-unknown-dependence", + {"marginals": {"A": 0.1, "B": 0.2}, "event": "all", "dependence": "sorta-dependent"}, + "unknown_dependence", + "An unrecognized dependence assumption must fail closed, not default.", + ), + ( + "reject-non-finite-marginal", + {"marginals": {"A": float("nan"), "B": 0.2}, "event": "all", "dependence": "unconstrained"}, + "marginal_not_finite", + "NaN is not a probability. Note this case is expressed as a string in JSON " + "because JSON has no NaN literal; see the spec.", + ), +] + + +def _lp_crosscheck(marginals: dict[str, float], event: str) -> tuple[float, float]: + """Recompute the interval with the finite-atom LP.""" + names = tuple(marginals) + assumptions = AssumptionSet.empty(names) + for name in names: + assumptions = assumptions.with_marginal_interval(name, marginals[name], marginals[name]) + query = ( + LinearQuery.intersection(names, names) + if event == "all" + else LinearQuery.union(names, names) + ) + result = identified_region(query, assumptions) + return result.lower_bound, result.upper_bound + + +def build_accept() -> list[dict[str, Any]]: + cases: list[dict[str, Any]] = [] + for case_id, marginals, event, dependence, description in _ACCEPT: + bounds = compose_bounds(marginals, event=event, dependence=dependence) + payload = bounds.to_json() + + # Every unconstrained case must agree with the LP. A disagreement is a + # defect here, not a corpus decision. + if dependence == "unconstrained": + lp_lower, lp_upper = _lp_crosscheck(marginals, event) + drift = max(abs(lp_lower - bounds.lower), abs(lp_upper - bounds.upper)) + if drift > TOLERANCE: + raise SystemExit( + f"REFUSING to pin {case_id}: closed form and LP disagree by " + f"{drift:.3e}, above the {TOLERANCE:.0e} tolerance. Fix the " + f"kernel before regenerating the corpus." + ) + + cases.append( + { + "id": case_id, + "description": description, + "input": { + "marginals": dict(marginals), + "event": event, + "dependence": dependence, + }, + "expect": { + "lower": payload["lower"], + "upper": payload["upper"], + "width": payload["width"], + "independence_point": payload["independence_point"], + "understatement_factor": payload["understatement_factor"], + "binding_event": payload["binding_event"], + }, + } + ) + return cases + + +def build_reject() -> list[dict[str, Any]]: + cases: list[dict[str, Any]] = [] + for case_id, raw_input, reason, description in _REJECT: + marginals = raw_input["marginals"] + # Confirm the implementation actually refuses, so the corpus cannot + # claim a refusal that does not happen. + try: + compose_bounds( + marginals, + event=raw_input["event"], + dependence=raw_input["dependence"], + ) + except (CountermonotoneUndefinedError, ValueError, TypeError): + pass + else: + raise SystemExit(f"REFUSING to pin {case_id}: cc.compose accepted it.") + + serializable = dict(raw_input) + serializable["marginals"] = { + k: ("NaN" if isinstance(v, float) and v != v else v) for k, v in marginals.items() + } + cases.append( + { + "id": case_id, + "description": description, + "input": serializable, + "expect_refusal": reason, + } + ) + return cases + + +def build() -> dict[str, dict[str, Any]]: + accept = build_accept() + reject = build_reject() + composition = { + "corpus": CORPUS_VERSION, + "kind": "accept", + "tolerance": TOLERANCE, + "case_count": len(accept), + "cases": accept, + } + adversarial = { + "corpus": CORPUS_VERSION, + "kind": "reject", + "case_count": len(reject), + "cases": reject, + } + return {"composition": composition, "adversarial": adversarial} + + +def _digest(payload: dict[str, Any]) -> str: + return hashlib.sha256(canonical_json_bytes(payload)).hexdigest() + + +def write(files: dict[str, dict[str, Any]]) -> dict[str, Any]: + CORPUS_DIR.mkdir(parents=True, exist_ok=True) + (CORPUS_DIR / "cases").mkdir(exist_ok=True) + digests: dict[str, str] = {} + for name, payload in files.items(): + path = CORPUS_DIR / "cases" / f"{name}.json" + path.write_text(json.dumps(payload, indent=2, sort_keys=True) + "\n", encoding="utf-8") + digests[f"cases/{name}.json"] = _digest(payload) + + manifest = { + "corpus": CORPUS_VERSION, + "tolerance": TOLERANCE, + "files": digests, + "total_cases": sum(p["case_count"] for p in files.values()), + "non_claims": [ + "Passing this corpus establishes that an implementation computes " + "the same intervals as the reference on these cases. It does not " + "establish that either implementation is correct: two " + "implementations can share a misreading.", + "The corpus is a curated census, not a sample. Its size is an " + "authoring decision, it carries no coverage claim, and no " + "confidence interval may be attached to a pass rate over it.", + "Passing establishes nothing about safety, calibration, threshold " + "choice, or whether the supplied marginals mean anything.", + ], + } + (CORPUS_DIR / "manifest.json").write_text( + json.dumps(manifest, indent=2, sort_keys=True) + "\n", encoding="utf-8" + ) + return manifest + + +def check(files: dict[str, dict[str, Any]]) -> int: + manifest_path = CORPUS_DIR / "manifest.json" + if not manifest_path.exists(): + print("corpus manifest missing; run without --check to generate", file=sys.stderr) + return 1 + committed = json.loads(manifest_path.read_text(encoding="utf-8")) + expected = {f"cases/{name}.json": _digest(payload) for name, payload in files.items()} + if committed.get("files") != expected: + print("corpus is stale; regenerate with:", file=sys.stderr) + print(" python scripts/build_conformance_corpus.py", file=sys.stderr) + for key, digest in expected.items(): + was = committed.get("files", {}).get(key) + if was != digest: + print(f" {key}: {was} -> {digest}", file=sys.stderr) + return 1 + print(f"corpus current: {committed['total_cases']} cases, {len(expected)} files") + return 0 + + +def main(argv: list[str] | None = None) -> int: + parser = argparse.ArgumentParser(description=__doc__.splitlines()[0]) + parser.add_argument( + "--check", action="store_true", help="verify the committed corpus is current" + ) + args = parser.parse_args(argv) + + files = build() + if args.check: + return check(files) + + manifest = write(files) + print(f"wrote {manifest['total_cases']} cases to {CORPUS_DIR.relative_to(ROOT)}") + for name, digest in sorted(manifest["files"].items()): + print(f" {name} {digest[:16]}") + return 0 + + +if __name__ == "__main__": + raise SystemExit(main()) diff --git a/scripts/differential_compose.py b/scripts/differential_compose.py new file mode 100755 index 0000000..c063cb0 --- /dev/null +++ b/scripts/differential_compose.py @@ -0,0 +1,288 @@ +#!/usr/bin/env python3 +"""Differential fuzz between the Python and Node composition kernels. + +The conformance corpus is a curated census: it checks the cases someone thought +to write down. This harness checks the cases nobody thought of, by generating +randomized inputs -- including malformed ones -- and requiring both +implementations to agree on the answer *or* on the refusal. + +The Node side never sees the Python answers. It receives inputs on stdin and +returns its own results, so it cannot converge on the reference. + +Seeds are reported. A disagreement is reproducible with ``--seed``. + +**What agreement establishes.** That two implementations of one specification +compute the same values over the sampled region. **What it does not +establish.** That either is correct -- both were authored in the same project +and a wrong specification yields two implementations wrong together. Nor does it +establish coverage: the generator's distribution is stated below and it has +blind spots. + +Usage:: + + python scripts/differential_compose.py --cases 2000 + python scripts/differential_compose.py --seed 7 --cases 500 --json +""" + +from __future__ import annotations + +import argparse +import json +import math +import random +import shutil +import subprocess +import sys +from pathlib import Path +from typing import Any + +from cc.compose import CountermonotoneUndefinedError, compose_bounds + +ROOT = Path(__file__).resolve().parents[1] +VERIFIER = ROOT / "verifiers" / "node" / "cc_compose_verify.mjs" + +TOLERANCE = 1.0e-12 + +EVENTS = ("all", "any", "and", "or", "AND", "OR", "intersection", "union") +DEPENDENCE = ("unconstrained", "independent", "comonotone", "countermonotone") + +#: What the generator can produce. Stated before the numbers, because a +#: generator's coverage bounds what its agreement means. +GENERATOR_COVERAGE = ( + "Marginals drawn from a mixture: uniform on [0,1], values snapped to the " + "boundaries 0 and 1, values within 1e-9 of a boundary, and near-tied " + "values that exercise the binding_event tie rule. Event counts 1-8. All " + "event-kind aliases and all four dependence assumptions. Roughly one case " + "in six is deliberately malformed: out-of-range, non-finite, empty, or an " + "unknown event/dependence value." +) + +#: What it cannot produce. A generator's blind spots are part of its result. +GENERATOR_BLIND_SPOTS = ( + "Event counts above 8.", + "Marginals that are not IEEE-754 doubles (no decimal or rational inputs).", + "Non-string event names, and names differing only by Unicode normalization " + "-- the canonicalization kernel's collapse is probed separately by " + "scripts/canonicalization_probe.py.", + "Side constraints beyond marginals: the corpus and this harness both cover " + "the closed-form path only, not the constrained LP path.", + "Adversarially chosen floating-point values selected to maximize " + "divergence; the draw is random, not searched.", +) + + +def _draw_marginal(rng: random.Random) -> float: + roll = rng.random() + if roll < 0.08: + return 0.0 + if roll < 0.16: + return 1.0 + if roll < 0.24: + return rng.choice([1e-9, 1.0 - 1e-9, 1e-15, 5e-324]) + return rng.random() + + +def _generate(rng: random.Random, index: int) -> dict[str, Any]: + n = rng.randint(1, 8) + names = [f"E{i}" for i in range(n)] + values = [_draw_marginal(rng) for _ in range(n)] + + # Near-ties exercise the binding_event tie rule from SPEC section 4.3. + if n >= 2 and rng.random() < 0.25: + values[1] = values[0] + + case: dict[str, Any] = { + "id": f"fuzz-{index}", + "marginals": dict(zip(names, values, strict=True)), + "event": rng.choice(EVENTS), + "dependence": rng.choice(DEPENDENCE), + } + + # Roughly one in six is malformed, so refusal agreement is exercised too. + roll = rng.random() + if roll < 0.04: + case["marginals"][names[0]] = rng.choice([1.5, -0.1, 2.0, -1e-6]) + elif roll < 0.07: + case["marginals"][names[0]] = "NaN" + elif roll < 0.10: + case["marginals"] = {} + elif roll < 0.13: + case["event"] = rng.choice(["xor", "nand", "", "ALL"]) + elif roll < 0.16: + case["dependence"] = rng.choice(["mixed", "", "Independent"]) + return case + + +def _python_side(case: dict[str, Any]) -> dict[str, Any]: + marginals = {k: (math.nan if v == "NaN" else v) for k, v in case["marginals"].items()} + try: + bounds = compose_bounds(marginals, event=case["event"], dependence=case["dependence"]) + except CountermonotoneUndefinedError: + return {"ok": False, "refusal": "countermonotone_undefined"} + except (ValueError, TypeError) as exc: + return {"ok": False, "refusal": _classify(str(exc))} + payload = bounds.to_json() + return {"ok": True, **payload} + + +def _classify(message: str) -> str: + """Map a Python message onto a SPEC section 5 refusal identifier.""" + lowered = message.lower() + if "at least one event" in lowered or "mapping" in lowered: + return "no_events" + if "must be finite" in lowered: + return "marginal_not_finite" + if "must lie in [0, 1]" in lowered: + return "marginal_out_of_range" + if "unknown event kind" in lowered: + return "unknown_event_kind" + if "unknown dependence" in lowered: + return "unknown_dependence" + if "real number" in lowered: + return "marginal_not_finite" + return f"unclassified:{message[:60]}" + + +def _node_side(cases: list[dict[str, Any]]) -> list[dict[str, Any]]: + node = shutil.which("node") + if node is None: + raise SystemExit("node is not on PATH; the differential harness needs it") + proc = subprocess.run( + [node, str(VERIFIER), "--batch"], + input=json.dumps({"cases": cases}), + capture_output=True, + text=True, + check=False, + ) + if proc.returncode != 0: + raise SystemExit(f"node verifier failed:\n{proc.stdout}\n{proc.stderr}") + return json.loads(proc.stdout)["results"] + + +_COMPARED = ( + "lower", + "upper", + "width", + "independence_point", + "independence_regret", + "understatement_factor", + "binding_event", +) + + +def _compare(case: dict[str, Any], py: dict[str, Any], js: dict[str, Any]) -> list[dict[str, Any]]: + if py["ok"] != js["ok"]: + return [ + { + "id": case["id"], + "field": "", + "python": "accepted" if py["ok"] else py["refusal"], + "node": "accepted" if js["ok"] else js["refusal"], + "input": case, + } + ] + if not py["ok"]: + if py["refusal"] != js["refusal"]: + return [ + { + "id": case["id"], + "field": "", + "python": py["refusal"], + "node": js["refusal"], + "input": case, + } + ] + return [] + + out: list[dict[str, Any]] = [] + for field in _COMPARED: + a, b = py[field], js[field] + if field == "binding_event" or a is None or b is None: + if a != b: + out.append( + {"id": case["id"], "field": field, "python": a, "node": b, "input": case} + ) + continue + if abs(a - b) > TOLERANCE: + out.append( + { + "id": case["id"], + "field": field, + "python": a, + "node": b, + "delta": abs(a - b), + "input": case, + } + ) + return out + + +def main(argv: list[str] | None = None) -> int: + parser = argparse.ArgumentParser(description=__doc__.splitlines()[0]) + parser.add_argument("--cases", type=int, default=2000, help="number of randomized cases") + parser.add_argument("--seed", type=int, default=None, help="seed; random if omitted") + parser.add_argument("--json", action="store_true", help="machine-readable output") + args = parser.parse_args(argv) + + seed = args.seed if args.seed is not None else random.randrange(2**31) + rng = random.Random(seed) + cases = [_generate(rng, i) for i in range(args.cases)] + + py_results = [_python_side(c) for c in cases] + js_results = _node_side(cases) + + disagreements: list[dict[str, Any]] = [] + for case, py, js in zip(cases, py_results, js_results, strict=True): + disagreements.extend(_compare(case, py, js)) + + accepted = sum(1 for r in py_results if r["ok"]) + report = { + "seed": seed, + "cases": len(cases), + "accepted": accepted, + "refused": len(cases) - accepted, + "disagreements": len(disagreements), + "tolerance": TOLERANCE, + "generator_coverage": GENERATOR_COVERAGE, + "generator_blind_spots": list(GENERATOR_BLIND_SPOTS), + "provenance": "sampled", + "non_claim": ( + "Agreement over a sampled region does not establish correctness. " + "Both implementations were authored in the same project and a wrong " + "specification produces two implementations that are wrong together. " + "Coverage is bounded by the generator described above." + ), + "detail": disagreements[:20], + } + + if args.json: + json.dump(report, sys.stdout, indent=2) + sys.stdout.write("\n") + return 1 if disagreements else 0 + + print("differential fuzz — Python vs Node composition kernel") + print(f" seed {seed} (reproduce with --seed {seed})") + print(f" cases {len(cases)} ({accepted} accepted, {len(cases) - accepted} refused)") + print(f" tolerance {TOLERANCE:g}") + print(" provenance sampled") + print("") + if disagreements: + for row in disagreements[:20]: + print(f" DISAGREE {json.dumps(row, default=str)[:220]}") + if len(disagreements) > 20: + print(f" ... and {len(disagreements) - 20} more") + print(f"\nFAIL: {len(disagreements)} disagreement(s).") + return 1 + print("PASS: no disagreement.") + print("\ngenerator coverage:") + for line in GENERATOR_COVERAGE.split(". "): + if line.strip(): + print(f" {line.strip().rstrip('.')}.") + print("\ngenerator blind spots:") + for spot in GENERATOR_BLIND_SPOTS: + print(f" - {spot}") + return 0 + + +if __name__ == "__main__": + raise SystemExit(main()) diff --git a/src/cc/cli/guard.py b/src/cc/cli/guard.py new file mode 100644 index 0000000..2802780 --- /dev/null +++ b/src/cc/cli/guard.py @@ -0,0 +1,317 @@ +#!/usr/bin/env python3 +"""``cc-guard`` -- the inference guards, reachable without a Python API. + +A downstream project asked, in writing, to route its density estimate through +this repository's post-selection refusal so that an optional-stopping error +would be *refused* rather than reported. It could not: the guard existed only +as an in-process Python call, and the caller was JavaScript. + +This module is the answer. It exposes the guards two ways, because one is not +enough: + +1. ``cc-guard check`` reads a JSON request on stdin and writes a verdict on + stdout. Any language that can spawn a process can use it. +2. ``cc-guard table`` emits the decision rules as **pure data**, so a caller + can enforce them with no Python process at all. A subprocess dependency is a + weaker bridge than a table -- it fails in CI sandboxes, in browsers, and + anywhere Python is not installed. + +The guards refuse claims the supplied evidence cannot support. Refusal is the +product. A guard that can be talked into a confidence claim is not a guard. +""" + +from __future__ import annotations + +import argparse +import json +import sys +from typing import Any + +__all__ = ["DECISION_TABLE", "check", "main"] + +#: The decision rules, as data. This is the normative statement of the guard; +#: :func:`check` implements it and ``tests/unit/cli/test_guard.py`` asserts the +#: two agree case for case, so the table cannot drift from the code. +#: +#: Each rule names the condition, the verdict, whether a confidence claim +#: survives, and the reason. A caller reimplementing this in another language +#: needs nothing beyond this structure. +DECISION_TABLE: dict[str, Any] = { + "version": "cc-guard-v1", + "guards": [ + { + "id": "post_selection_interval", + "applies_to": "An interval around an estimate that was selected by " + "a search -- a maximum, a best-fit, a scan over candidates, or any " + "procedure with optional stopping.", + "input_fields": ["provenance", "estimate", "ci_low", "ci_high"], + "rules": [ + { + "when": {"provenance": "post-selection"}, + "verdict": "discovery-only", + "confidence_claim_permitted": False, + "reason": "The estimate is the maximum over a search, so it " + "is biased upward and an interval around it does not attain " + "its nominal level for the true parameter. A discovery is a " + "hypothesis; only held-out data can certify it.", + "remedy": "Re-estimate on data not used for selection, then " + "resubmit with provenance='confirmatory'.", + }, + { + "when": {"provenance": "confirmatory"}, + "verdict": "confirmatory", + "confidence_claim_permitted": True, + "reason": "The interval was computed on data not used to " + "select the target, so its nominal level applies.", + "remedy": None, + }, + ], + "default": { + "verdict": "refused", + "confidence_claim_permitted": False, + "reason": "Unknown provenance. A guard that defaults to " + "permitting a claim is not a guard.", + "remedy": "Declare provenance as 'confirmatory' or 'post-selection'.", + }, + }, + { + "id": "census_interval", + "applies_to": "A proportion computed over a curated corpus rather " + "than a random sample.", + "input_fields": ["provenance", "n"], + "rules": [ + { + "when": {"provenance": "census"}, + "verdict": "no-interval", + "confidence_claim_permitted": False, + "reason": "A confidence interval describes sampling " + "variability under repeated random draws. A hand-authored " + "corpus has none: it is the whole population and its size is " + "an authoring decision.", + "remedy": "Report exact counts and the denominator.", + }, + { + "when": {"provenance": "sampled", "n_below": 30}, + "verdict": "no-interval", + "confidence_claim_permitted": False, + "reason": "Below n=30 a normal-approximation interval is not " + "trustworthy, and a Wilson interval is wide enough that " + "quoting it invites misreading.", + "remedy": "Report exact counts, or collect more samples.", + }, + { + "when": {"provenance": "sampled"}, + "verdict": "interval-permitted", + "confidence_claim_permitted": True, + "reason": "A genuine sample of adequate size supports a proportion interval.", + "remedy": None, + }, + ], + "default": { + "verdict": "refused", + "confidence_claim_permitted": False, + "reason": "Unknown provenance. Declare whether the denominator " + "is a census or a sample.", + "remedy": "Declare provenance as 'census' or 'sampled'.", + }, + }, + ], + "non_claims": [ + "A permitted verdict means this guard found no reason to refuse. It " + "does not mean the estimate is correct, the model is right, or the " + "measurement was well designed.", + "These guards check the provenance a caller declares. They cannot " + "detect a caller who declares 'confirmatory' for a post-selection " + "interval.", + ], +} + +#: The minimum sample size below which no proportion interval is permitted. +#: Matches the ``n_below`` threshold in the census guard above. +MIN_N_FOR_PROPORTION_INTERVAL = 30 + + +def _post_selection(request: dict[str, Any]) -> dict[str, Any]: + provenance = request.get("provenance") + if provenance == "post-selection": + return { + "guard": "post_selection_interval", + "verdict": "discovery-only", + "confidence_claim": None, + "confidence_claim_permitted": False, + "reason": "The estimate is the maximum over a search, so it is " + "biased upward and an interval around it does not attain its " + "nominal level for the true parameter. A discovery is a hypothesis; " + "only held-out data can certify it.", + "remedy": "Re-estimate on data not used for selection, then " + "resubmit with provenance='confirmatory'.", + } + if provenance == "confirmatory": + return { + "guard": "post_selection_interval", + "verdict": "confirmatory", + "confidence_claim": request.get("ci_low") is not None + and request.get("ci_high") is not None, + "confidence_claim_permitted": True, + "reason": "The interval was computed on data not used to select the " + "target, so its nominal level applies.", + "remedy": None, + } + return { + "guard": "post_selection_interval", + "verdict": "refused", + "confidence_claim": None, + "confidence_claim_permitted": False, + "reason": f"Unknown provenance {provenance!r}. A guard that defaults to " + "permitting a claim is not a guard.", + "remedy": "Declare provenance as 'confirmatory' or 'post-selection'.", + } + + +def _census(request: dict[str, Any]) -> dict[str, Any]: + provenance = request.get("provenance") + if provenance == "census": + return { + "guard": "census_interval", + "verdict": "no-interval", + "confidence_claim_permitted": False, + "reason": "A confidence interval describes sampling variability " + "under repeated random draws. A hand-authored corpus has none: it " + "is the whole population and its size is an authoring decision.", + "remedy": "Report exact counts and the denominator.", + } + if provenance == "sampled": + n = request.get("n") + if not isinstance(n, int) or isinstance(n, bool) or n < 0: + return { + "guard": "census_interval", + "verdict": "refused", + "confidence_claim_permitted": False, + "reason": f"A sampled proportion needs a non-negative integer " + f"denominator; got {n!r}. No proportion without a denominator.", + "remedy": "Supply 'n' as the number of draws.", + } + if n < MIN_N_FOR_PROPORTION_INTERVAL: + return { + "guard": "census_interval", + "verdict": "no-interval", + "confidence_claim_permitted": False, + "reason": f"n={n} is below the minimum of " + f"{MIN_N_FOR_PROPORTION_INTERVAL}. Below that a " + "normal-approximation interval is not trustworthy, and a Wilson " + "interval is wide enough that quoting it invites misreading.", + "remedy": "Report exact counts, or collect more samples.", + } + return { + "guard": "census_interval", + "verdict": "interval-permitted", + "confidence_claim_permitted": True, + "reason": "A genuine sample of adequate size supports a proportion interval.", + "remedy": None, + } + return { + "guard": "census_interval", + "verdict": "refused", + "confidence_claim_permitted": False, + "reason": f"Unknown provenance {provenance!r}. Declare whether the " + "denominator is a census or a sample.", + "remedy": "Declare provenance as 'census' or 'sampled'.", + } + + +_GUARDS = { + "post_selection_interval": _post_selection, + "census_interval": _census, +} + + +def check(request: dict[str, Any]) -> dict[str, Any]: + """Apply the named guard to a request and return its verdict. + + Args: + request: Must carry ``guard`` naming one of + ``post_selection_interval`` or ``census_interval``, plus that + guard's declared ``input_fields``. + + Returns: + A JSON-native verdict. ``confidence_claim_permitted`` is the field a + caller acts on; a ``False`` there means the caller must not attach a + confidence statement to the number, whatever else it does with it. + """ + guard = request.get("guard") + handler = _GUARDS.get(guard) + if handler is None: + return { + "guard": guard, + "verdict": "refused", + "confidence_claim_permitted": False, + "reason": f"Unknown guard {guard!r}. Known guards: {', '.join(sorted(_GUARDS))}.", + "remedy": "Name a guard from 'cc-guard table'.", + } + return handler(request) + + +def main(argv: list[str] | None = None) -> int: + parser = argparse.ArgumentParser( + prog="cc-guard", + description="Inference guards that refuse claims the evidence cannot support.", + ) + sub = parser.add_subparsers(dest="command", required=True) + + check_parser = sub.add_parser("check", help="Apply a guard to a JSON request read from stdin.") + check_parser.add_argument( + "--strict-exit", + action="store_true", + help="Exit 1 when the verdict forbids a confidence claim, so a shell " + "caller can gate on it without parsing JSON.", + ) + + sub.add_parser("table", help="Emit the decision rules as pure data.") + + args = parser.parse_args(argv) + + if args.command == "table": + json.dump(DECISION_TABLE, sys.stdout, indent=2) + sys.stdout.write("\n") + return 0 + + raw = sys.stdin.read() + try: + request = json.loads(raw) if raw.strip() else {} + except json.JSONDecodeError as exc: + json.dump( + { + "verdict": "refused", + "confidence_claim_permitted": False, + "reason": f"Request is not valid JSON: {exc}", + "remedy": "Send a JSON object on stdin.", + }, + sys.stdout, + indent=2, + ) + sys.stdout.write("\n") + return 2 + if not isinstance(request, dict): + json.dump( + { + "verdict": "refused", + "confidence_claim_permitted": False, + "reason": "Request must be a JSON object.", + "remedy": "Send a JSON object on stdin.", + }, + sys.stdout, + indent=2, + ) + sys.stdout.write("\n") + return 2 + + verdict = check(request) + json.dump(verdict, sys.stdout, indent=2) + sys.stdout.write("\n") + if args.strict_exit and not verdict["confidence_claim_permitted"]: + return 1 + return 0 + + +if __name__ == "__main__": + raise SystemExit(main()) diff --git a/src/cc/compose/__init__.py b/src/cc/compose/__init__.py new file mode 100644 index 0000000..d95841e --- /dev/null +++ b/src/cc/compose/__init__.py @@ -0,0 +1,31 @@ +"""ROC-free composition bounds over named binary events. + +The entry point is :func:`compose_bounds`: marginals in, a sharp interval out. +See :mod:`cc.compose._bounds` for the design note on why this surface exists. +""" + +from __future__ import annotations + +from cc.compose._bounds import ( + CompositionBounds, + CountermonotoneUndefinedError, + DependenceAssumption, + EventKind, + MarginalProvenance, + SensitivityRow, + compose_bounds, + marginal_from_operating_point, + sensitivity, +) + +__all__ = [ + "CompositionBounds", + "CountermonotoneUndefinedError", + "DependenceAssumption", + "EventKind", + "MarginalProvenance", + "SensitivityRow", + "compose_bounds", + "marginal_from_operating_point", + "sensitivity", +] diff --git a/src/cc/compose/_bounds.py b/src/cc/compose/_bounds.py new file mode 100644 index 0000000..922e436 --- /dev/null +++ b/src/cc/compose/_bounds.py @@ -0,0 +1,490 @@ +"""Composition bounds over named binary events. + +This module is the answer to a rejected-adoption report. A downstream consumer +read ``cc.core.composition_theory``, found that it operates on ROC point sets +and bounds the Youden J statistic, and concluded -- correctly -- that a +deterministic refusal rule has no threshold, no operating point, and no +false-positive rate to trade against. They reimplemented the inequality by hand +rather than force their controls into a detector shape. + +Nothing in this module's public surface mentions ROC curves, thresholds, +operating points, TPR, or FPR. A binary event is a name and a marginal +probability. Detectors reach this surface through +:func:`cc.compose.marginal_from_operating_point`, which converts an operating +point into a marginal -- so the detector framing sits *above* the event +calculus rather than underneath it. + +The mathematics is classical. Frechet-Hoeffding is 1935 and this module claims +no novelty for it. What it provides is a surface shaped like the way composed +binary events are actually reasoned about, and a result object that carries the +independence baseline, the binding event, and the non-claims alongside the +interval so none of them can be quoted apart from the others. +""" + +from __future__ import annotations + +import math +from collections.abc import Mapping, Sequence +from dataclasses import dataclass, field +from typing import Any, Literal, TypeAlias + +__all__ = [ + "CompositionBounds", + "CountermonotoneUndefinedError", + "DependenceAssumption", + "EventKind", + "MarginalProvenance", + "SensitivityRow", + "compose_bounds", + "marginal_from_operating_point", + "sensitivity", +] + +#: ``"all"`` bounds P(every event occurs) -- a conjunction. ``"any"`` bounds +#: P(at least one occurs) -- a union. The aliases ``"and"``/``"or"`` are +#: accepted because downstream documents use that vocabulary. +EventKind: TypeAlias = Literal["all", "any"] + +#: What is assumed about the joint dependence structure. +#: +#: ``"unconstrained"`` +#: Nothing is assumed. Returns the sharp Frechet-Hoeffding interval. This +#: is the honest default when no dependence evidence exists. +#: ``"independent"`` +#: A point value, returned as a degenerate interval. Reported as a +#: *baseline for comparison*, never as an answer -- see the module note on +#: ``independence_point``. +#: ``"comonotone"`` +#: The upper Frechet corner, returned as a degenerate interval. +#: ``"countermonotone"`` +#: Defined only for exactly two events. Refused for more; see +#: :class:`CountermonotoneUndefinedError`. +DependenceAssumption: TypeAlias = Literal[ + "unconstrained", "independent", "comonotone", "countermonotone" +] + +#: Where each marginal came from. This is a producer declaration, not a +#: statistical test, and it is carried on the result so a number cannot be +#: quoted without it. +MarginalProvenance: TypeAlias = Literal["measured", "assumed", "supplied"] + +_ALIASES: dict[str, EventKind] = { + "all": "all", + "and": "all", + "AND": "all", + "intersection": "all", + "any": "any", + "or": "any", + "OR": "any", + "union": "any", +} + +_TOL = 1.0e-12 + +_NON_CLAIMS: tuple[str, ...] = ( + "A bound is not a measurement. It states what the supplied marginals " + "permit under unknown dependence, and nothing else.", + "These bounds do not identify a copula, establish independence, infer " + "causation, or validate stationarity.", + "A narrow interval can result from extreme marginals and is not evidence " + "that the upstream measurements are valid.", + "The independence point value is reported as a comparison baseline. It is " + "not an estimate of the joint probability and must not be quoted as one.", + "This is not a safety certification, a compliance statement, or a claim " + "about any deployed system.", +) + + +class CountermonotoneUndefinedError(ValueError): + """Raised when countermonotonicity is requested for other than two events. + + Countermonotonicity is a strictly bivariate concept. Two events can be + perfectly negatively dependent -- one occurs exactly when the other does + not -- but three cannot all be pairwise mutually exclusive and exhaustive + in that way, and there is no n-dimensional countermonotonic structure for + ``n > 2``. + + The matching fact about the bound: the Frechet-Hoeffding lower bound + ``max(0, sum(p) - (n-1))`` **is not a copula in dimension >= 3**. It + remains *pointwise sharp* -- for any fixed marginals some joint + distribution attains it -- but no single dependence structure attains it + everywhere, so there is no countermonotone regime to tabulate beside + independence and comonotonicity. + + This error exists because silently offering a "countermonotone" option for + four events would produce a number with the form of a dependence regime and + none of the content. + """ + + +@dataclass(frozen=True) +class SensitivityRow: + """How the interval moves when one event's marginal is perturbed.""" + + event: str + marginal: float + perturbed_marginal: float + lower_delta: float + upper_delta: float + + @property + def moves_upper(self) -> bool: + """Whether this event moves the upper bound at all.""" + return abs(self.upper_delta) > _TOL + + def to_json(self) -> dict[str, Any]: + return { + "event": self.event, + "marginal": self.marginal, + "perturbed_marginal": self.perturbed_marginal, + "lower_delta": self.lower_delta, + "upper_delta": self.upper_delta, + "moves_upper": self.moves_upper, + } + + +@dataclass(frozen=True) +class CompositionBounds: + """A sharp interval for a composed binary event, with its context attached. + + The interval is the result. Everything else on this object exists so the + interval cannot be quoted without the things that qualify it: what was + assumed, which event the bound turns on, and what the number does not mean. + """ + + lower: float + upper: float + event: EventKind + marginals: Mapping[str, float] + dependence: DependenceAssumption + #: The product of the marginals. A comparison baseline, never an answer. + independence_point: float + #: Name of the event whose marginal the upper bound turns on, when the + #: bound is determined by a single event. ``None`` when the upper bound is + #: a sum or a clip rather than a single marginal. + binding_event: str | None + marginal_provenance: MarginalProvenance + non_claims: tuple[str, ...] = field(default=_NON_CLAIMS) + + @property + def width(self) -> float: + """``upper - lower``, with numerical negatives clipped to zero.""" + return max(0.0, self.upper - self.lower) + + @property + def independence_regret(self) -> float: + """How much the independence baseline understates the admissible worst case. + + ``upper - independence_point``. This is the quantity that makes the + product assumption's error visible in absolute terms. + """ + return self.upper - self.independence_point + + @property + def understatement_factor(self) -> float: + """``upper / independence_point``, or infinity when the product is zero. + + The relative form of :attr:`independence_regret`. For a homogeneous + stack of ``m`` events at rate ``p`` this grows like ``p**(1-m)``, which + is the correlation cliff in one number. + """ + if self.independence_point <= 0.0: + return math.inf + return self.upper / self.independence_point + + def to_json(self) -> dict[str, Any]: + """Return a JSON-native mapping. Used by the conformance corpus.""" + factor = self.understatement_factor + return { + "lower": self.lower, + "upper": self.upper, + "width": self.width, + "event": self.event, + "marginals": dict(self.marginals), + "dependence": self.dependence, + "independence_point": self.independence_point, + "independence_regret": self.independence_regret, + # JSON has no infinity. A null here means the product was zero, so + # the ratio is undefined rather than large. + "understatement_factor": None if math.isinf(factor) else factor, + "binding_event": self.binding_event, + "marginal_provenance": self.marginal_provenance, + "non_claims": list(self.non_claims), + } + + +def _canonical_event(event: str) -> EventKind: + try: + return _ALIASES[event] + except KeyError: + allowed = ", ".join(sorted(set(_ALIASES))) + raise ValueError(f"unknown event kind {event!r}; expected one of: {allowed}") from None + + +def _validated_marginals(marginals: Mapping[str, float]) -> dict[str, float]: + if not isinstance(marginals, Mapping): + raise TypeError( + "marginals must be a mapping of event name to probability; " + f"got {type(marginals).__name__}. A bare sequence is refused " + "because an unnamed marginal cannot be reported against a " + "binding event." + ) + if not marginals: + raise ValueError("marginals must name at least one event.") + + out: dict[str, float] = {} + for name, value in marginals.items(): + if not isinstance(name, str) or not name: + raise ValueError(f"event name must be a non-empty string; got {name!r}") + try: + p = float(value) + except (TypeError, ValueError): + raise TypeError(f"marginal for {name!r} must be a real number; got {value!r}") from None + if not math.isfinite(p): + raise ValueError(f"marginal for {name!r} must be finite; got {p!r}") + if not (-_TOL <= p <= 1.0 + _TOL): + raise ValueError(f"marginal for {name!r} must lie in [0, 1]; got {p!r}") + out[name] = min(1.0, max(0.0, p)) + return out + + +def _clip01(value: float) -> float: + return min(1.0, max(0.0, value)) + + +def _classical(values: Sequence[float], event: EventKind) -> tuple[float, float]: + """Closed-form n-way Frechet-Hoeffding bounds.""" + n = len(values) + total = math.fsum(values) + if event == "all": + return _clip01(max(0.0, total - (n - 1))), _clip01(min(values)) + return _clip01(max(values)), _clip01(min(1.0, total)) + + +def _binding_event(names: Sequence[str], values: Sequence[float], event: EventKind) -> str | None: + """Name the event the upper bound turns on, when a single event determines it. + + For a conjunction the upper bound is ``min(p)``, so the argmin binds and + improving any other event moves the upper bound not at all -- which is the + actionable finding. For a union the upper bound is ``min(1, sum(p))``, + which is a sum rather than a single event, so no event binds unless the + clip at 1 is inactive and only one event is present. + """ + if event == "all": + best = min(range(len(values)), key=lambda i: values[i]) + ties = [i for i, v in enumerate(values) if abs(v - values[best]) <= _TOL] + # A tie means no single event binds: improving either leaves the bound + # pinned by the other. Reporting one of them would be misleading. + return names[best] if len(ties) == 1 else None + if len(values) == 1: + return names[0] + return None + + +def compose_bounds( + marginals: Mapping[str, float], + *, + event: str = "all", + dependence: DependenceAssumption = "unconstrained", + marginal_provenance: MarginalProvenance = "supplied", +) -> CompositionBounds: + """Bound the probability of a composed binary event from its marginals. + + Each event is a named binary failure indicator with a marginal probability. + No ROC curve, threshold, or operating point is involved: a deterministic + refusal rule is as valid an input as a tuned classifier. + + Args: + marginals: Mapping of event name to marginal probability in ``[0, 1]``. + Names are required -- an unnamed marginal cannot be reported + against a binding event. + event: ``"all"`` for a conjunction, ``"any"`` for a union. ``"and"`` + and ``"or"`` are accepted aliases. + dependence: What is assumed about the joint structure. The default, + ``"unconstrained"``, assumes nothing and returns the sharp + interval. + marginal_provenance: Whether the marginals were ``"measured"``, + ``"assumed"``, or merely ``"supplied"``. Carried on the result so a + bound over assumed rates cannot be quoted as a measurement. + + Returns: + A :class:`CompositionBounds` carrying the interval, the independence + baseline, the binding event, and the non-claims. + + Raises: + CountermonotoneUndefinedError: ``dependence="countermonotone"`` with + more than two events. + ValueError: A marginal outside ``[0, 1]``, an empty mapping, or an + unknown event kind. + + Example: + Three deterministic controls, each with an assumed evasion + probability:: + + >>> b = compose_bounds( + ... {"SELF_REPORTED": 0.30, "STALE": 0.01, "SEPARATION": 0.40}, + ... event="all", + ... marginal_provenance="assumed", + ... ) + >>> b.lower, b.upper + (0.0, 0.01) + >>> b.binding_event + 'STALE' + + The upper bound is ``min(p)``: under arbitrary dependence a conjunction + of controls is no stronger than its single strongest member. Improving + ``SEPARATION`` moves the upper bound not at all. + + When two events tie for the minimum, no single event binds and + ``binding_event`` is ``None`` -- improving either one leaves the bound + pinned by the other, so naming one of them would misdirect effort. + """ + kind = _canonical_event(event) + checked = _validated_marginals(marginals) + names = tuple(checked) + values = tuple(checked[n] for n in names) + + if dependence == "countermonotone" and len(values) != 2: + if len(values) < 2: + raise CountermonotoneUndefinedError( + f"countermonotonicity is undefined for {len(values)} event(s). It " + "is a relation between two events; with fewer than two there is " + "nothing for an event to be countermonotone with. Use " + "dependence='unconstrained'." + ) + raise CountermonotoneUndefinedError( + f"countermonotonicity is undefined for {len(values)} events. It is a " + "strictly bivariate concept: there is no n-dimensional " + "countermonotonic structure for n > 2, and the Frechet-Hoeffding " + "lower bound is not a copula in dimension >= 3 (though it remains " + "pointwise sharp). Use dependence='unconstrained' for the sharp " + "interval, whose lower endpoint is that pointwise-sharp floor." + ) + + # The independence baseline is computed once and reported on every result, + # whatever the dependence assumption, so the gap it understates stays + # visible even when the caller asked for a different regime. + independence_point = ( + math.prod(values) if kind == "all" else _clip01(1.0 - math.prod(1.0 - v for v in values)) + ) + lower, upper = _classical(values, kind) + + if dependence == "independent": + lower = upper = independence_point + elif dependence == "comonotone": + lower = upper = _clip01(min(values)) if kind == "all" else _clip01(max(values)) + elif dependence == "countermonotone": + # Exactly two events; every other count was refused above. + lower = upper = ( + _clip01(max(0.0, values[0] + values[1] - 1.0)) + if kind == "all" + else _clip01(min(1.0, values[0] + values[1])) + ) + elif dependence != "unconstrained": + raise ValueError( + f"unknown dependence assumption {dependence!r}; expected one of: " + "unconstrained, independent, comonotone, countermonotone" + ) + + binding = _binding_event(names, values, kind) if dependence == "unconstrained" else None + + return CompositionBounds( + lower=lower, + upper=upper, + event=kind, + marginals=checked, + dependence=dependence, + independence_point=independence_point, + binding_event=binding, + marginal_provenance=marginal_provenance, + ) + + +def sensitivity( + marginals: Mapping[str, float], + *, + event: str = "all", + delta: float = 0.05, + direction: Literal["increase", "decrease"] = "decrease", + marginal_provenance: MarginalProvenance = "supplied", +) -> tuple[SensitivityRow, ...]: + """Perturb each marginal in turn and report how the interval moves. + + Under a conjunction the upper bound is ``min(p)``, so only the event + holding the minimum can move it. Every other row will report an + ``upper_delta`` of zero, and that zero is the finding: effort spent on a + weak event buys nothing against the worst admissible dependence. + + Args: + marginals: As :func:`compose_bounds`. + event: As :func:`compose_bounds`. + delta: Magnitude of the perturbation, in probability units. + direction: ``"decrease"`` lowers each marginal (a control improving, if + the marginal is an evasion probability); ``"increase"`` raises it. + marginal_provenance: As :func:`compose_bounds`. + + Returns: + One :class:`SensitivityRow` per event, in the order given. + """ + if not (0.0 < delta <= 1.0): + raise ValueError(f"delta must lie in (0, 1]; got {delta!r}") + + base = compose_bounds(marginals, event=event, marginal_provenance=marginal_provenance) + checked = dict(base.marginals) + sign = -1.0 if direction == "decrease" else 1.0 + + rows: list[SensitivityRow] = [] + for name, value in checked.items(): + perturbed = _clip01(value + sign * delta) + trial = dict(checked) + trial[name] = perturbed + after = compose_bounds(trial, event=event, marginal_provenance=marginal_provenance) + rows.append( + SensitivityRow( + event=name, + marginal=value, + perturbed_marginal=perturbed, + lower_delta=after.lower - base.lower, + upper_delta=after.upper - base.upper, + ) + ) + return tuple(rows) + + +def marginal_from_operating_point( + *, + false_negative_rate: float, + prevalence: float = 1.0, +) -> float: + """Convert a detector's operating point into an event marginal. + + This is the *only* bridge from detector vocabulary into this module, and it + points inward: a classifier supplies its miss rate at a chosen threshold + and receives a marginal. The ROC framing sits above the event calculus and + is optional; nothing downstream of this function knows a threshold existed. + + Args: + false_negative_rate: Probability the detector fails to flag a case that + should be flagged, at the operating point actually deployed. For a + guardrail this is the unsafe-pass rate. + prevalence: Probability the case arises at all. Defaults to 1.0, which + makes the marginal equal to the miss rate -- appropriate when the + composition is conditioned on an attack already occurring. + + Returns: + ``false_negative_rate * prevalence``, suitable as a + :func:`compose_bounds` marginal. + + Note: + Choosing the threshold is outside this function and outside this + module. A marginal derived here inherits every assumption of the + threshold choice, and is no more valid than that choice was. + """ + for label, value in ( + ("false_negative_rate", false_negative_rate), + ("prevalence", prevalence), + ): + p = float(value) + if not math.isfinite(p) or not (-_TOL <= p <= 1.0 + _TOL): + raise ValueError(f"{label} must be a finite probability in [0, 1]; got {value!r}") + return _clip01(float(false_negative_rate) * float(prevalence)) diff --git a/tests/acceptance/test_external_consumer_reproduction.py b/tests/acceptance/test_external_consumer_reproduction.py new file mode 100644 index 0000000..7adeef0 --- /dev/null +++ b/tests/acceptance/test_external_consumer_reproduction.py @@ -0,0 +1,180 @@ +"""Acceptance gate: reproduce an external consumer's published result. + +A downstream project needed Frechet-Hoeffding bounds over four deterministic +controls. It read this repository's most discoverable composition entry point, +``cc.core.composition_theory``, found that it operates on ROC point sets and +bounds the Youden J statistic, and concluded that its controls -- which refuse +if and only if a predicate holds, with no threshold and no operating curve -- +did not fit. It implemented the inequality itself in 214 lines of JavaScript. + +This module is the gate on that failure being fixed. It is not "the API +exists": it is *their published numbers reproduce from this library*, so those +214 lines could be deleted. + +The numbers below are quoted from that project's published composition +document, not recomputed from its source. They are therefore an **external +oracle**: an implementation written independently, for another purpose, without +reference to this corpus or this code. Agreement with it is the only check in +this repository that is not same-author. + +Their non-claim travels with their numbers and is asserted here too: every +detection rate is ASSUMED. Zero records had been issued when they were +published, so no rate was ever observed. These are bounds over assumed inputs, +never measurements. +""" + +from __future__ import annotations + +import pytest + +from cc.compose import compose_bounds, sensitivity + +#: Published detection rates, small-chapter scenario. ASSUMED, never observed. +PUBLISHED_DETECTION_RATES = { + "SELF_REPORTED": 0.70, + "STALE": 0.99, + "IMMUTABLE": 0.99, + "SEPARATION": 0.60, +} + +#: Published output, quoted from the consumer's document: +#: +#: if independent (the fiction) 0.0012% +#: Frechet-Hoeffding lower 0% +#: Frechet-Hoeffding upper 1.00% +#: width of the bound 1.00% +#: +#: Assuming independence understates the admissible worst case by 833x. +PUBLISHED_LOWER = 0.00 +PUBLISHED_UPPER = 0.01 +PUBLISHED_WIDTH = 0.01 +PUBLISHED_INDEPENDENCE = 0.000012 +PUBLISHED_UNDERSTATEMENT_FACTOR = 833 + + +def _evasion_marginals(detection: dict[str, float]) -> dict[str, float]: + """A control's evasion probability is one minus its detection rate. + + The composed failure event is a conjunction: an inflated entry must evade + *every* control. Getting this backwards -- treating it as a union -- would + invert every number, which is why the consumer argued it explicitly rather + than assuming it. + """ + return {name: 1.0 - rate for name, rate in detection.items()} + + +def test_published_interval_reproduces(): + bounds = compose_bounds( + _evasion_marginals(PUBLISHED_DETECTION_RATES), + event="all", + marginal_provenance="assumed", + ) + assert bounds.lower == pytest.approx(PUBLISHED_LOWER, abs=1e-12) + assert bounds.upper == pytest.approx(PUBLISHED_UPPER, abs=1e-12) + assert bounds.width == pytest.approx(PUBLISHED_WIDTH, abs=1e-12) + + +def test_published_independence_baseline_reproduces(): + bounds = compose_bounds( + _evasion_marginals(PUBLISHED_DETECTION_RATES), + event="all", + marginal_provenance="assumed", + ) + assert bounds.independence_point == pytest.approx(PUBLISHED_INDEPENDENCE, abs=1e-12) + + +def test_published_understatement_factor_reproduces(): + """The headline: independence understates the admissible worst case by 833x.""" + bounds = compose_bounds( + _evasion_marginals(PUBLISHED_DETECTION_RATES), + event="all", + marginal_provenance="assumed", + ) + assert round(bounds.understatement_factor) == PUBLISHED_UNDERSTATEMENT_FACTOR + + +def test_published_sensitivity_finding_reproduces(): + """Their finding: improving a weak control moves the upper bound by 0.00pp. + + Quoted: "In the small-chapter scenario, a 5-point improvement to + SELF_REPORTED or SEPARATION moves it by 0.00pp. Only the strongest controls + move it." + """ + rows = sensitivity( + _evasion_marginals(PUBLISHED_DETECTION_RATES), + event="all", + delta=0.05, + direction="decrease", + marginal_provenance="assumed", + ) + by_event = {row.event: row for row in rows} + + assert by_event["SELF_REPORTED"].upper_delta == pytest.approx(0.0, abs=1e-12) + assert by_event["SEPARATION"].upper_delta == pytest.approx(0.0, abs=1e-12) + # The two strong controls are tied at the minimum, so each moves the bound. + assert by_event["STALE"].upper_delta == pytest.approx(-0.01, abs=1e-12) + assert by_event["IMMUTABLE"].upper_delta == pytest.approx(-0.01, abs=1e-12) + + +def test_the_tie_is_reported_as_a_tie(): + """Two controls tie at the minimum, so no single event binds. + + Naming one of them would misdirect effort: improving either leaves the + bound pinned by the other. The consumer's sensitivity table shows exactly + this -- both STALE and IMMUTABLE move the bound. + """ + bounds = compose_bounds( + _evasion_marginals(PUBLISHED_DETECTION_RATES), + event="all", + marginal_provenance="assumed", + ) + assert bounds.binding_event is None + + +@pytest.mark.parametrize( + ("scenario", "detection", "expected_upper"), + [ + ("optimistic", {"a": 0.95, "b": 0.99, "c": 0.99, "d": 0.90}, 0.01), + ("small-chapter", {"a": 0.70, "b": 0.99, "c": 0.99, "d": 0.60}, 0.01), + ("pessimistic", {"a": 0.50, "b": 0.90, "c": 0.95, "d": 0.40}, 0.05), + ], +) +def test_all_three_published_scenarios_reproduce(scenario, detection, expected_upper): + bounds = compose_bounds( + _evasion_marginals(detection), event="all", marginal_provenance="assumed" + ) + assert bounds.upper == pytest.approx(expected_upper, abs=1e-12), scenario + assert bounds.lower == pytest.approx(0.0, abs=1e-12), scenario + + +def test_the_finding_holds_a_fifth_control_cannot_help(): + """Quoted: "Adding a fifth control cannot improve the bound." + + Under a conjunction the upper bound is min(p), so a further control can + only lower the floor. This is the correlation cliff stated as an + operational fact. + """ + base = compose_bounds( + _evasion_marginals(PUBLISHED_DETECTION_RATES), + event="all", + marginal_provenance="assumed", + ) + with_fifth = compose_bounds( + {**_evasion_marginals(PUBLISHED_DETECTION_RATES), "A_FIFTH_CONTROL": 0.20}, + event="all", + marginal_provenance="assumed", + ) + assert with_fifth.upper <= base.upper + 1e-12 + assert with_fifth.lower <= base.lower + 1e-12 + + +def test_the_assumed_provenance_travels_with_the_result(): + """A bound over assumed rates must not be quotable as a measurement.""" + bounds = compose_bounds( + _evasion_marginals(PUBLISHED_DETECTION_RATES), + event="all", + marginal_provenance="assumed", + ) + assert bounds.marginal_provenance == "assumed" + assert bounds.to_json()["marginal_provenance"] == "assumed" + assert any("not a measurement" in claim for claim in bounds.non_claims) diff --git a/tests/conformance/test_cc_kernel_v1.py b/tests/conformance/test_cc_kernel_v1.py new file mode 100644 index 0000000..5ca8a65 --- /dev/null +++ b/tests/conformance/test_cc_kernel_v1.py @@ -0,0 +1,198 @@ +"""The ``cc-kernel-v1`` conformance corpus, enforced. + +Three checks, in increasing strength: + +1. The committed corpus is current -- it has not drifted from the kernel. +2. The Python reference passes every case in it. +3. An independent Node implementation, written from the specification rather + than from this source, passes it too, and reproduces an external consumer's + published numbers. + +Check 3 is skipped when ``node`` is absent, and the skip is loud: a green run +without it establishes strictly less. + +**What passing establishes.** That the implementations compute the same values +on these cases. **What it does not establish.** That any of them is correct: +the Python and Node sides were authored in the same project and can share a +misreading of the specification. +""" + +from __future__ import annotations + +import json +import math +import shutil +import subprocess +import sys +from pathlib import Path + +import pytest + +from cc.compose import CountermonotoneUndefinedError, compose_bounds + +ROOT = Path(__file__).resolve().parents[2] +CORPUS = ROOT / "conformance" / "cc-kernel-v1" +VERIFIER = ROOT / "verifiers" / "node" / "cc_compose_verify.mjs" + +MANIFEST = json.loads((CORPUS / "manifest.json").read_text(encoding="utf-8")) +TOLERANCE = MANIFEST["tolerance"] + +ACCEPT = json.loads((CORPUS / "cases" / "composition.json").read_text(encoding="utf-8")) +REJECT = json.loads((CORPUS / "cases" / "adversarial.json").read_text(encoding="utf-8")) + +_requires_node = pytest.mark.skipif( + shutil.which("node") is None, + reason="node is not installed; cross-implementation agreement is NOT established", +) + + +# --- 1. the corpus is current ------------------------------------------------- + + +def test_committed_corpus_is_current(): + """A stale corpus pins yesterday's kernel and silently stops testing today's.""" + proc = subprocess.run( + [sys.executable, str(ROOT / "scripts" / "build_conformance_corpus.py"), "--check"], + capture_output=True, + text=True, + check=False, + cwd=ROOT, + ) + assert proc.returncode == 0, proc.stdout + proc.stderr + + +def test_manifest_counts_match_the_case_files(): + assert ACCEPT["case_count"] == len(ACCEPT["cases"]) + assert REJECT["case_count"] == len(REJECT["cases"]) + assert MANIFEST["total_cases"] == len(ACCEPT["cases"]) + len(REJECT["cases"]) + + +def test_manifest_carries_non_claims(): + assert MANIFEST["non_claims"] + assert any("does not establish" in claim for claim in MANIFEST["non_claims"]) + + +def test_case_ids_are_unique(): + ids = [c["id"] for c in ACCEPT["cases"]] + [c["id"] for c in REJECT["cases"]] + assert len(ids) == len(set(ids)) + + +# --- 2. the Python reference passes ------------------------------------------- + + +@pytest.mark.parametrize("case", ACCEPT["cases"], ids=lambda c: c["id"]) +def test_python_reference_reproduces_accept_case(case): + bounds = compose_bounds( + case["input"]["marginals"], + event=case["input"]["event"], + dependence=case["input"]["dependence"], + ) + got = bounds.to_json() + for field, want in case["expect"].items(): + have = got[field] + if field == "binding_event" or want is None or have is None: + assert have == want, f"{case['id']}.{field}" + else: + assert have == pytest.approx(want, abs=TOLERANCE), f"{case['id']}.{field}" + + +@pytest.mark.parametrize("case", REJECT["cases"], ids=lambda c: c["id"]) +def test_python_reference_refuses_reject_case(case): + marginals = {k: (math.nan if v == "NaN" else v) for k, v in case["input"]["marginals"].items()} + with pytest.raises((CountermonotoneUndefinedError, ValueError, TypeError)): + compose_bounds( + marginals, + event=case["input"]["event"], + dependence=case["input"]["dependence"], + ) + + +# --- 3. cross-implementation agreement ---------------------------------------- + + +@_requires_node +def test_independent_node_implementation_agrees(): + """The check that moves cross-implementation agreement off zero.""" + proc = subprocess.run( + ["node", str(VERIFIER), "--json"], + capture_output=True, + text=True, + check=False, + cwd=ROOT, + ) + report = json.loads(proc.stdout) + assert report["accept"]["failed"] == 0, report["accept"]["failures"] + assert report["reject"]["failed"] == 0, report["reject"]["failures"] + assert report["accept"]["total"] == len(ACCEPT["cases"]) + assert report["reject"]["total"] == len(REJECT["cases"]) + assert proc.returncode == 0 + + +@_requires_node +def test_node_implementation_reproduces_the_external_oracle(): + """The one check here that is not same-author. + + The oracle numbers were published by a separate project that implemented + these bounds for its own purposes, without reference to this corpus. + """ + proc = subprocess.run( + ["node", str(VERIFIER), "--json"], + capture_output=True, + text=True, + check=False, + cwd=ROOT, + ) + report = json.loads(proc.stdout) + assert report["external_oracle"]["total"] >= 1 + assert report["external_oracle"]["failed"] == 0, report["external_oracle"]["failures"] + + +@_requires_node +def test_agreement_report_states_what_it_does_not_establish(): + """Agreement that does not name its limits invites being over-read.""" + proc = subprocess.run( + ["node", str(VERIFIER), "--json"], + capture_output=True, + text=True, + check=False, + cwd=ROOT, + ) + report = json.loads(proc.stdout) + assert "does not establish that either is correct" in report["agreement_non_claim"] + assert report["provenance"] == "census" + + +@_requires_node +@pytest.mark.parametrize("seed", [1, 2, 3]) +def test_differential_fuzz_finds_no_disagreement(seed): + """Randomized cases explore what the curated corpus does not. + + Seeds are fixed here so CI is deterministic. The harness accepts any seed; + a wider unseeded sweep belongs in the scheduled empirical lane, not in the + per-commit gate. + """ + proc = subprocess.run( + [ + sys.executable, + str(ROOT / "scripts" / "differential_compose.py"), + "--cases", + "400", + "--seed", + str(seed), + "--json", + ], + capture_output=True, + text=True, + check=False, + cwd=ROOT, + ) + report = json.loads(proc.stdout) + assert report["disagreements"] == 0, report["detail"] + assert report["cases"] == 400 + # A sweep that refused everything would agree trivially. + assert report["accepted"] > 0 + assert report["refused"] > 0 + # Coverage and blind spots must be stated, not implied. + assert report["generator_coverage"] + assert report["generator_blind_spots"] + assert report["provenance"] == "sampled" diff --git a/tests/unit/cli/test_guard.py b/tests/unit/cli/test_guard.py new file mode 100644 index 0000000..1bb41e0 --- /dev/null +++ b/tests/unit/cli/test_guard.py @@ -0,0 +1,311 @@ +"""Tests for ``cc-guard``: the inference guards, and their decision table. + +The table is data a caller in another language reimplements from. If it drifts +from the code, every such caller silently enforces the wrong rule -- so the +agreement between the two is asserted here, case by case. +""" + +from __future__ import annotations + +import json +import subprocess +import sys + +import pytest + +from cc.cli.guard import DECISION_TABLE, MIN_N_FOR_PROPORTION_INTERVAL, check, main +from cc.kernel.cliff import CliffCertificate, cliff_certificate + + +def _run(payload: dict, *args: str) -> tuple[int, dict]: + proc = subprocess.run( + [sys.executable, "-m", "cc.cli.guard", *args], + input=json.dumps(payload), + capture_output=True, + text=True, + check=False, + ) + return proc.returncode, json.loads(proc.stdout) + + +# --- the guard refuses what it must ------------------------------------------- + + +def test_post_selection_interval_is_refused(): + verdict = check( + { + "guard": "post_selection_interval", + "provenance": "post-selection", + "estimate": 0.42, + "ci_low": 0.21, + "ci_high": 0.63, + } + ) + assert verdict["verdict"] == "discovery-only" + assert verdict["confidence_claim_permitted"] is False + assert verdict["remedy"] + + +def test_confirmatory_interval_is_permitted(): + verdict = check( + { + "guard": "post_selection_interval", + "provenance": "confirmatory", + "estimate": 0.42, + "ci_low": 0.21, + "ci_high": 0.63, + } + ) + assert verdict["verdict"] == "confirmatory" + assert verdict["confidence_claim_permitted"] is True + + +@pytest.mark.parametrize("provenance", [None, "", "maybe", "CONFIRMATORY", 7]) +def test_unknown_provenance_fails_closed(provenance): + """A guard that defaults to permitting a claim is not a guard.""" + verdict = check({"guard": "post_selection_interval", "provenance": provenance}) + assert verdict["verdict"] == "refused" + assert verdict["confidence_claim_permitted"] is False + + +def test_census_interval_is_refused(): + verdict = check({"guard": "census_interval", "provenance": "census"}) + assert verdict["verdict"] == "no-interval" + assert verdict["confidence_claim_permitted"] is False + + +@pytest.mark.parametrize("n", [0, 1, 2, 29]) +def test_small_sample_interval_is_refused(n): + verdict = check({"guard": "census_interval", "provenance": "sampled", "n": n}) + assert verdict["verdict"] == "no-interval" + assert verdict["confidence_claim_permitted"] is False + + +@pytest.mark.parametrize("n", [30, 31, 1000]) +def test_adequate_sample_interval_is_permitted(n): + verdict = check({"guard": "census_interval", "provenance": "sampled", "n": n}) + assert verdict["verdict"] == "interval-permitted" + assert verdict["confidence_claim_permitted"] is True + + +@pytest.mark.parametrize("n", [None, -1, 3.5, "30", True]) +def test_sampled_proportion_without_a_valid_denominator_is_refused(n): + """No proportion without a denominator.""" + verdict = check({"guard": "census_interval", "provenance": "sampled", "n": n}) + assert verdict["verdict"] == "refused" + + +def test_unknown_guard_is_refused(): + verdict = check({"guard": "vibes"}) + assert verdict["verdict"] == "refused" + assert verdict["confidence_claim_permitted"] is False + + +# --- the table and the code must agree ---------------------------------------- + + +def test_decision_table_matches_the_implementation(): + """The table is what a non-Python caller enforces. It must not drift.""" + for guard in DECISION_TABLE["guards"]: + guard_id = guard["id"] + for rule in guard["rules"]: + request = {"guard": guard_id, **rule["when"]} + # The census guard's threshold rule is expressed as `n_below`. + n_below = request.pop("n_below", None) + if n_below is not None: + request["n"] = n_below - 1 + elif guard_id == "census_interval" and request.get("provenance") == "sampled": + request["n"] = MIN_N_FOR_PROPORTION_INTERVAL + verdict = check(request) + assert verdict["verdict"] == rule["verdict"], (guard_id, rule["when"]) + assert verdict["confidence_claim_permitted"] == rule["confidence_claim_permitted"], ( + guard_id, + rule["when"], + ) + + +def test_decision_table_threshold_matches_the_constant(): + census = next(g for g in DECISION_TABLE["guards"] if g["id"] == "census_interval") + thresholds = [r["when"]["n_below"] for r in census["rules"] if "n_below" in r["when"]] + assert thresholds == [MIN_N_FOR_PROPORTION_INTERVAL] + + +def test_decision_table_is_json_native(): + assert json.loads(json.dumps(DECISION_TABLE)) == DECISION_TABLE + + +def test_decision_table_carries_non_claims(): + assert DECISION_TABLE["non_claims"] + assert any("does not mean" in c for c in DECISION_TABLE["non_claims"]) + + +# --- agreement with the original in-kernel guard ------------------------------ + + +def test_guard_agrees_with_cliff_certificate_on_post_selection(): + """`cc-guard` must reach the same verdict as the guard it exposes. + + `cc.kernel.cliff.cliff_certificate` is the original refusal, reachable only + from Python. If the CLI ever permitted what the kernel refuses, every + cross-language caller would be worse off than a Python one. + """ + certificate = cliff_certificate(0.42, (0.21, 0.63), provenance="post-selection") + assert isinstance(certificate, CliffCertificate) + assert certificate.regime == "discovery-only" + + verdict = check( + { + "guard": "post_selection_interval", + "provenance": "post-selection", + "estimate": 0.42, + "ci_low": 0.21, + "ci_high": 0.63, + } + ) + assert verdict["verdict"] == certificate.regime + assert verdict["confidence_claim_permitted"] is False + + +def test_guard_and_cliff_certificate_agree_that_confirmatory_is_not_refused(): + """The other direction: the CLI must not refuse what the kernel allows.""" + certificate = cliff_certificate(0.42, (0.21, 0.63), provenance="confirmatory") + assert certificate.regime != "discovery-only" + + verdict = check( + { + "guard": "post_selection_interval", + "provenance": "confirmatory", + "estimate": 0.42, + "ci_low": 0.21, + "ci_high": 0.63, + } + ) + assert verdict["confidence_claim_permitted"] is True + + +# --- the process boundary ----------------------------------------------------- + + +def test_cli_check_refuses_and_can_gate_a_shell_caller(): + code, verdict = _run( + {"guard": "post_selection_interval", "provenance": "post-selection"}, + "check", + "--strict-exit", + ) + assert code == 1 + assert verdict["confidence_claim_permitted"] is False + + +def test_cli_check_permits_with_exit_zero(): + code, verdict = _run( + {"guard": "post_selection_interval", "provenance": "confirmatory"}, + "check", + "--strict-exit", + ) + assert code == 0 + assert verdict["confidence_claim_permitted"] is True + + +def test_cli_rejects_malformed_json(): + proc = subprocess.run( + [sys.executable, "-m", "cc.cli.guard", "check"], + input="not json", + capture_output=True, + text=True, + check=False, + ) + assert proc.returncode == 2 + assert json.loads(proc.stdout)["confidence_claim_permitted"] is False + + +def test_cli_rejects_a_non_object_request(): + proc = subprocess.run( + [sys.executable, "-m", "cc.cli.guard", "check"], + input="[1, 2, 3]", + capture_output=True, + text=True, + check=False, + ) + assert proc.returncode == 2 + assert json.loads(proc.stdout)["verdict"] == "refused" + + +def test_cli_table_emits_the_decision_data(): + proc = subprocess.run( + [sys.executable, "-m", "cc.cli.guard", "table"], + capture_output=True, + text=True, + check=False, + ) + assert proc.returncode == 0 + assert json.loads(proc.stdout) == DECISION_TABLE + + +def test_main_requires_a_subcommand(): + with pytest.raises(SystemExit): + main([]) + + +# --- in-process CLI coverage -------------------------------------------------- +# +# The subprocess tests above exercise the real process boundary, which is what a +# non-Python caller actually uses. Coverage cannot see into a subprocess, so +# these drive main() in-process as well: without them cc/cli/guard.py reports +# ~64% while its CLI body is in fact fully exercised. Both kinds are kept -- +# dropping the subprocess tests would stop testing the boundary that matters. + + +def test_main_check_refuses_in_process(monkeypatch, capsys): + monkeypatch.setattr( + "sys.stdin", + __import__("io").StringIO( + json.dumps({"guard": "post_selection_interval", "provenance": "post-selection"}) + ), + ) + assert main(["check", "--strict-exit"]) == 1 + verdict = json.loads(capsys.readouterr().out) + assert verdict["verdict"] == "discovery-only" + + +def test_main_check_permits_in_process(monkeypatch, capsys): + monkeypatch.setattr( + "sys.stdin", + __import__("io").StringIO( + json.dumps({"guard": "post_selection_interval", "provenance": "confirmatory"}) + ), + ) + assert main(["check", "--strict-exit"]) == 0 + assert json.loads(capsys.readouterr().out)["confidence_claim_permitted"] is True + + +def test_main_check_without_strict_exit_returns_zero_even_when_refusing(monkeypatch, capsys): + """The exit code is opt-in; the verdict is always in the payload.""" + monkeypatch.setattr( + "sys.stdin", + __import__("io").StringIO(json.dumps({"guard": "census_interval", "provenance": "census"})), + ) + assert main(["check"]) == 0 + assert json.loads(capsys.readouterr().out)["confidence_claim_permitted"] is False + + +def test_main_check_on_empty_stdin_refuses(monkeypatch, capsys): + monkeypatch.setattr("sys.stdin", __import__("io").StringIO("")) + assert main(["check", "--strict-exit"]) == 1 + assert json.loads(capsys.readouterr().out)["verdict"] == "refused" + + +def test_main_check_on_malformed_json_in_process(monkeypatch, capsys): + monkeypatch.setattr("sys.stdin", __import__("io").StringIO("{not json")) + assert main(["check"]) == 2 + assert json.loads(capsys.readouterr().out)["confidence_claim_permitted"] is False + + +def test_main_check_on_non_object_in_process(monkeypatch, capsys): + monkeypatch.setattr("sys.stdin", __import__("io").StringIO("[1,2,3]")) + assert main(["check"]) == 2 + assert json.loads(capsys.readouterr().out)["verdict"] == "refused" + + +def test_main_table_in_process(capsys): + assert main(["table"]) == 0 + assert json.loads(capsys.readouterr().out) == DECISION_TABLE diff --git a/tests/unit/compose/test_compose_bounds.py b/tests/unit/compose/test_compose_bounds.py new file mode 100644 index 0000000..1065720 --- /dev/null +++ b/tests/unit/compose/test_compose_bounds.py @@ -0,0 +1,263 @@ +"""Unit tests for the ROC-free composition surface.""" + +from __future__ import annotations + +import json +import math + +import pytest +from hypothesis import given, settings +from hypothesis import strategies as st + +from cc.compose import ( + CountermonotoneUndefinedError, + compose_bounds, + marginal_from_operating_point, + sensitivity, +) +from cc.kernel.sensitivity import AssumptionSet, LinearQuery, identified_region + +PROBS = st.floats(min_value=0.0, max_value=1.0, allow_nan=False, allow_infinity=False) + + +def _lp_interval(marginals: dict[str, float], event: str) -> tuple[float, float]: + names = tuple(marginals) + assumptions = AssumptionSet.empty(names) + for name in names: + assumptions = assumptions.with_marginal_interval(name, marginals[name], marginals[name]) + query = ( + LinearQuery.intersection(names, names) + if event == "all" + else LinearQuery.union(names, names) + ) + result = identified_region(query, assumptions) + return result.lower_bound, result.upper_bound + + +# --- the surface must not speak ROC ------------------------------------------ + + +def test_public_surface_mentions_no_detector_vocabulary(): + """The rejected-adoption report named ROC framing as the obstacle. + + A deterministic refusal rule has no threshold and no operating curve. If + that vocabulary reappears in the public signature, the surface has drifted + back to the shape a consumer already walked away from. + """ + import inspect + + from cc.compose import _bounds + + forbidden = ("roc", "youden", "tpr", "fpr", "threshold", "operating_point") + for name in ("compose_bounds", "sensitivity"): + signature = str(inspect.signature(getattr(_bounds, name))).lower() + for word in forbidden: + assert word not in signature, f"{name} signature mentions {word!r}" + + +def test_operating_point_adapter_points_inward(): + """Detectors reach the event calculus, not the other way round.""" + assert marginal_from_operating_point(false_negative_rate=0.2) == pytest.approx(0.2) + assert marginal_from_operating_point(false_negative_rate=0.2, prevalence=0.5) == pytest.approx( + 0.1 + ) + with pytest.raises(ValueError): + marginal_from_operating_point(false_negative_rate=1.5) + + +# --- agreement with the LP kernel -------------------------------------------- + + +@settings(max_examples=250, deadline=None) +@given( + values=st.lists(PROBS, min_size=1, max_size=6), + event=st.sampled_from(["all", "any"]), +) +def test_closed_form_agrees_with_finite_atom_lp(values, event): + """The fast closed form and the general LP must not diverge. + + Two code paths compute the same object. If they disagree, one is wrong and + every downstream artifact inherits it. + """ + marginals = {f"E{i}": v for i, v in enumerate(values)} + bounds = compose_bounds(marginals, event=event) + lp_lower, lp_upper = _lp_interval(marginals, event) + assert bounds.lower == pytest.approx(lp_lower, abs=1e-9) + assert bounds.upper == pytest.approx(lp_upper, abs=1e-9) + + +# --- invariants --------------------------------------------------------------- + + +@settings(max_examples=400, deadline=None) +@given( + values=st.lists(PROBS, min_size=1, max_size=8), + event=st.sampled_from(["all", "any"]), +) +def test_interval_invariants(values, event): + marginals = {f"E{i}": v for i, v in enumerate(values)} + bounds = compose_bounds(marginals, event=event) + assert 0.0 <= bounds.lower <= 1.0 + assert 0.0 <= bounds.upper <= 1.0 + assert bounds.lower <= bounds.upper + 1e-12 + assert bounds.width == pytest.approx(bounds.upper - bounds.lower, abs=1e-12) + # The independence point must lie inside the sharp interval: it is one + # admissible dependence structure among many. + assert bounds.lower - 1e-12 <= bounds.independence_point <= bounds.upper + 1e-12 + + +@settings(max_examples=200, deadline=None) +@given(values=st.lists(PROBS, min_size=2, max_size=6)) +def test_conjunction_upper_bound_does_not_depend_on_count(values): + """The correlation cliff, as an invariant. + + The conjunction upper bound is min(p). Adding an event can only lower it, + never raise it -- so stacking controls cannot improve the worst-case bound. + """ + marginals = {f"E{i}": v for i, v in enumerate(values)} + before = compose_bounds(marginals, event="all") + marginals["EXTRA"] = 1.0 # the weakest possible additional control + after = compose_bounds(marginals, event="all") + assert after.upper <= before.upper + 1e-12 + + +def test_cliff_is_reproduced_at_scale(): + """Ten filters at p=0.1 bound to [0, 0.1]; independence predicts 1e-10.""" + bounds = compose_bounds({f"G{i}": 0.1 for i in range(10)}, event="all") + assert bounds.lower == pytest.approx(0.0) + assert bounds.upper == pytest.approx(0.1) + assert bounds.independence_point == pytest.approx(1e-10) + assert bounds.understatement_factor > 1e8 + + +# --- binding event ------------------------------------------------------------ + + +def test_binding_event_names_the_argmin(): + bounds = compose_bounds({"A": 0.3, "B": 0.01, "C": 0.4}, event="all") + assert bounds.binding_event == "B" + + +def test_binding_event_is_none_on_a_tie(): + """A tie means no single event binds; naming one would misdirect effort.""" + bounds = compose_bounds({"A": 0.01, "B": 0.01, "C": 0.4}, event="all") + assert bounds.binding_event is None + + +def test_binding_event_is_none_for_a_multi_event_union(): + """The union upper bound is a sum, not a single event.""" + assert compose_bounds({"A": 0.1, "B": 0.2}, event="any").binding_event is None + assert compose_bounds({"A": 0.1}, event="any").binding_event == "A" + + +def test_binding_event_is_none_in_a_stipulated_regime(): + bounds = compose_bounds({"A": 0.3, "B": 0.01}, event="all", dependence="comonotone") + assert bounds.binding_event is None + + +# --- countermonotonicity ------------------------------------------------------ + + +@pytest.mark.parametrize("n", [1, 3, 4, 8]) +def test_countermonotone_is_refused_for_other_than_two_events(n): + """Countermonotonicity is strictly bivariate. + + There is no n-dimensional countermonotonic structure for n > 2, and the FH + lower bound is not a copula in dimension >= 3 though it stays pointwise + sharp. The n=1 case was found by differential fuzz: the reference raised + IndexError and the Node implementation returned NaN. + """ + marginals = {f"E{i}": 0.3 for i in range(n)} + with pytest.raises(CountermonotoneUndefinedError): + compose_bounds(marginals, event="all", dependence="countermonotone") + + +def test_countermonotone_is_permitted_for_exactly_two(): + bounds = compose_bounds({"A": 0.7, "B": 0.8}, event="all", dependence="countermonotone") + assert bounds.lower == bounds.upper == pytest.approx(0.5) + + +def test_unknown_dependence_fails_closed(): + with pytest.raises(ValueError, match="unknown dependence"): + compose_bounds({"A": 0.3}, dependence="sorta-dependent") # type: ignore[arg-type] + + +# --- input validation --------------------------------------------------------- + + +@pytest.mark.parametrize("bad", [1.5, -0.1, float("nan"), float("inf")]) +def test_marginals_outside_the_unit_interval_are_refused(bad): + with pytest.raises(ValueError): + compose_bounds({"A": bad, "B": 0.2}) + + +def test_empty_marginals_are_refused(): + with pytest.raises(ValueError, match="at least one event"): + compose_bounds({}) + + +def test_a_bare_sequence_is_refused(): + """An unnamed marginal cannot be reported against a binding event.""" + with pytest.raises(TypeError, match="mapping"): + compose_bounds([0.1, 0.2]) # type: ignore[arg-type] + + +def test_unknown_event_kind_is_refused(): + with pytest.raises(ValueError, match="unknown event kind"): + compose_bounds({"A": 0.1}, event="xor") + + +@pytest.mark.parametrize( + ("alias", "canonical"), + [ + ("and", "all"), + ("AND", "all"), + ("intersection", "all"), + ("or", "any"), + ("OR", "any"), + ("union", "any"), + ], +) +def test_event_aliases_canonicalize(alias, canonical): + assert compose_bounds({"A": 0.1, "B": 0.2}, event=alias).event == canonical + + +# --- the result object carries its context ------------------------------------ + + +def test_result_carries_provenance_and_non_claims(): + bounds = compose_bounds({"A": 0.3}, marginal_provenance="assumed") + assert bounds.marginal_provenance == "assumed" + assert bounds.non_claims + assert any("not a measurement" in c for c in bounds.non_claims) + + +def test_to_json_is_json_native_and_round_trips(): + bounds = compose_bounds({"A": 0.3, "B": 0.4}, event="all") + payload = bounds.to_json() + assert json.loads(json.dumps(payload)) == payload + + +def test_understatement_factor_serializes_as_null_when_undefined(): + """JSON has no infinity. Null means undefined, not large.""" + bounds = compose_bounds({"A": 0.0, "B": 0.4}, event="all") + assert math.isinf(bounds.understatement_factor) + assert bounds.to_json()["understatement_factor"] is None + + +# --- sensitivity -------------------------------------------------------------- + + +def test_sensitivity_shows_only_the_binding_event_moves_the_upper_bound(): + """The actionable finding: effort on a weak control buys nothing.""" + rows = sensitivity({"WEAK": 0.40, "STRONG": 0.01, "MIDDLE": 0.30}, event="all", delta=0.05) + by_event = {r.event: r for r in rows} + assert by_event["STRONG"].moves_upper + assert not by_event["WEAK"].moves_upper + assert not by_event["MIDDLE"].moves_upper + assert by_event["WEAK"].upper_delta == pytest.approx(0.0) + + +def test_sensitivity_rejects_an_out_of_range_delta(): + with pytest.raises(ValueError, match="delta"): + sensitivity({"A": 0.3}, delta=0.0) diff --git a/verifiers/node/cc_compose_verify.mjs b/verifiers/node/cc_compose_verify.mjs new file mode 100644 index 0000000..4b46eab --- /dev/null +++ b/verifiers/node/cc_compose_verify.mjs @@ -0,0 +1,387 @@ +#!/usr/bin/env node +/** + * ═══════════════════════════════════════════════════════════════════════════ + * INDEPENDENT CC COMPOSITION KERNEL — Node, zero dependencies + * + * Written from `conformance/cc-kernel-v1/SPEC.md` and the JSON corpus. It does + * not import, transcribe, or consult `cc.compose`. That constraint is the + * whole value: an implementation written by reading the Python would inherit + * its mistakes, and agreement between the two would establish nothing. + * + * ── What agreement here does and does not establish ──────────────────────── + * + * Agreement establishes that two implementations, working from a written + * specification, compute the same intervals on the corpus. It does NOT + * establish that either is correct. Both were authored in the same project, + * and a specification that is wrong produces two implementations that are + * wrong together. This is a DIFFERENTIAL TESTING INSTRUMENT, not an + * independent replication. + * + * The genuinely independent check is `--external-oracle`, which reproduces + * numbers published by a separate project that implemented these bounds for + * its own purposes, without reference to this corpus. See §"external oracle" + * below. + * + * node verifiers/node/cc_compose_verify.mjs run the corpus + * node verifiers/node/cc_compose_verify.mjs --json machine-readable + * node verifiers/node/cc_compose_verify.mjs --external-oracle + * node verifiers/node/cc_compose_verify.mjs --batch < cases.json + * ═══════════════════════════════════════════════════════════════════════════ + */ + +import { readFileSync, readSync } from 'node:fs'; +import { dirname, join } from 'node:path'; +import { fileURLToPath } from 'node:url'; + +const HERE = dirname(fileURLToPath(import.meta.url)); +const CORPUS = join(HERE, '..', '..', 'conformance', 'cc-kernel-v1'); + +/* ── SPEC §1.3 · event kinds ─────────────────────────────────────────────── */ + +const EVENT_ALIASES = new Map([ + ['all', 'all'], ['and', 'all'], ['AND', 'all'], ['intersection', 'all'], + ['any', 'any'], ['or', 'any'], ['OR', 'any'], ['union', 'any'] +]); + +/* ── SPEC §1.4 · dependence assumptions ──────────────────────────────────── */ + +const DEPENDENCE = new Set([ + 'unconstrained', 'independent', 'comonotone', 'countermonotone' +]); + +/** A refusal carrying the SPEC §5 reason identifier. */ +class Refusal extends Error { + constructor(reason, detail) { + super(`${reason}: ${detail}`); + this.reason = reason; + } +} + +const clip01 = (x) => Math.min(1, Math.max(0, x)); + +/* ── SPEC §1.2 · marginal validation ─────────────────────────────────────── */ + +function validateMarginals(marginals) { + if (marginals === null || typeof marginals !== 'object' || Array.isArray(marginals)) { + throw new Refusal('no_events', 'marginals must be a mapping of name to probability'); + } + const names = Object.keys(marginals); + if (names.length === 0) throw new Refusal('no_events', 'at least one event is required'); + + const out = []; + for (const name of names) { + if (typeof name !== 'string' || name.length === 0) { + throw new Refusal('no_events', `event name must be a non-empty string: ${name}`); + } + const p = marginals[name]; + if (typeof p !== 'number' || !Number.isFinite(p)) { + throw new Refusal('marginal_not_finite', `${name} = ${p}`); + } + if (p < 0 || p > 1) { + throw new Refusal('marginal_out_of_range', `${name} = ${p}`); + } + out.push([name, p]); + } + return out; +} + +/* ── SPEC §2 · the unconstrained interval ────────────────────────────────── */ + +function classical(values, kind) { + const n = values.length; + const sum = values.reduce((a, b) => a + b, 0); + if (kind === 'all') { + return [clip01(Math.max(0, sum - (n - 1))), clip01(Math.min(...values))]; + } + return [clip01(Math.max(...values)), clip01(Math.min(1, sum))]; +} + +/* ── SPEC §3 · the independence baseline ─────────────────────────────────── */ + +function independencePoint(values, kind) { + if (kind === 'all') return values.reduce((a, b) => a * b, 1); + return clip01(1 - values.reduce((a, b) => a * (1 - b), 1)); +} + +/* ── SPEC §4 · binding_event ─────────────────────────────────────────────── */ + +const TIE_TOL = 1e-12; + +function bindingEvent(pairs, kind) { + if (kind === 'all') { + const min = Math.min(...pairs.map(([, p]) => p)); + const atMin = pairs.filter(([, p]) => Math.abs(p - min) <= TIE_TOL); + // §4.3 — a tie means no single event binds. + return atMin.length === 1 ? atMin[0][0] : null; + } + // §4.2 — the union upper bound is a sum, not a single event. + return pairs.length === 1 ? pairs[0][0] : null; +} + +/* ── the kernel ──────────────────────────────────────────────────────────── */ + +export function composeBounds(marginals, { event = 'all', dependence = 'unconstrained' } = {}) { + const kind = EVENT_ALIASES.get(event); + if (kind === undefined) throw new Refusal('unknown_event_kind', String(event)); + if (!DEPENDENCE.has(dependence)) throw new Refusal('unknown_dependence', String(dependence)); + + const pairs = validateMarginals(marginals); + const values = pairs.map(([, p]) => p); + + // §6 — countermonotonicity is strictly bivariate: exactly two, never more, + // never fewer. Without this the n=1 branch reads values[1] as undefined and + // returns NaN rather than refusing. Found by differential fuzz, seed 1. + if (dependence === 'countermonotone' && values.length !== 2) { + throw new Refusal( + 'countermonotone_undefined', + values.length < 2 + ? `${values.length} event(s); countermonotonicity is a relation between ` + + 'two events, so there is nothing to be countermonotone with' + : `${values.length} events; there is no n-dimensional countermonotonic ` + + 'structure for n > 2, and the FH lower bound is not a copula in ' + + 'dimension >= 3 (though it stays pointwise sharp)' + ); + } + + const indep = independencePoint(values, kind); + let [lower, upper] = classical(values, kind); + + if (dependence === 'independent') { + lower = upper = indep; + } else if (dependence === 'comonotone') { + lower = upper = kind === 'all' ? clip01(Math.min(...values)) : clip01(Math.max(...values)); + } else if (dependence === 'countermonotone') { + lower = upper = kind === 'all' + ? clip01(Math.max(0, values[0] + values[1] - 1)) + : clip01(Math.min(1, values[0] + values[1])); + } + + // §4.4 — no event binds in a stipulated regime. + const binding = dependence === 'unconstrained' ? bindingEvent(pairs, kind) : null; + + return { + lower, + upper, + width: Math.max(0, upper - lower), + event: kind, + dependence, + independence_point: indep, + independence_regret: upper - indep, + // §3 — JSON has no infinity; null means undefined, not large. + understatement_factor: indep > 0 ? upper / indep : null, + binding_event: binding + }; +} + +/* ── corpus runner ───────────────────────────────────────────────────────── */ + +const readJson = (p) => JSON.parse(readFileSync(p, 'utf8')); + +function runAccept(tolerance) { + const doc = readJson(join(CORPUS, 'cases', 'composition.json')); + const failures = []; + for (const c of doc.cases) { + let got; + try { + got = composeBounds(c.input.marginals, { + event: c.input.event, + dependence: c.input.dependence + }); + } catch (err) { + failures.push({ id: c.id, field: '', detail: err.message }); + continue; + } + for (const [field, want] of Object.entries(c.expect)) { + const have = got[field]; + if (field === 'binding_event' || want === null || have === null) { + // §4 — compared exactly, including the null cases. + if (have !== want) failures.push({ id: c.id, field, want, have }); + continue; + } + if (Math.abs(have - want) > tolerance) { + failures.push({ id: c.id, field, want, have, delta: Math.abs(have - want) }); + } + } + } + return { total: doc.cases.length, failures }; +} + +function runReject() { + const doc = readJson(join(CORPUS, 'cases', 'adversarial.json')); + const failures = []; + for (const c of doc.cases) { + // §5 JSON note — the corpus encodes NaN as the string "NaN". + const marginals = {}; + for (const [k, v] of Object.entries(c.input.marginals)) { + marginals[k] = v === 'NaN' ? Number.NaN : v; + } + try { + composeBounds(marginals, { event: c.input.event, dependence: c.input.dependence }); + failures.push({ id: c.id, detail: 'accepted, but the corpus requires a refusal' }); + } catch (err) { + if (!(err instanceof Refusal)) { + failures.push({ id: c.id, detail: `threw ${err.constructor.name}, not a typed refusal` }); + } else if (err.reason !== c.expect_refusal) { + failures.push({ id: c.id, want: c.expect_refusal, have: err.reason }); + } + } + } + return { total: doc.cases.length, failures }; +} + +/* ── external oracle ───────────────────────────────────────────────────────── + * + * Numbers PUBLISHED by a separate project that implemented these bounds + * independently, for its own purposes, before this corpus existed. Reproducing + * them is the one check here that is not same-author: neither this file nor + * the Python reference was consulted when those numbers were produced. + * + * Source: a four-control ledger composition study. Detection rates are ASSUMED + * by that project — zero records had been issued — so these are bounds over + * assumed inputs, never measurements. + */ +const EXTERNAL_ORACLE = [ + { + name: 'four-control ledger, small-chapter scenario', + // Published as detection rates; evasion is 1 - detection. + detection: { SELF_REPORTED: 0.70, STALE: 0.99, IMMUTABLE: 0.99, SEPARATION: 0.60 }, + published: { lower: 0.0, upper: 0.01, width: 0.01, independence_point: 0.000012 }, + // Published rounded, as "understates the admissible worst case by 833x". + publishedFactorRounded: 833 + } +]; + +function runExternalOracle(tolerance) { + const failures = []; + for (const o of EXTERNAL_ORACLE) { + const marginals = {}; + for (const [k, d] of Object.entries(o.detection)) marginals[k] = 1 - d; + const got = composeBounds(marginals, { event: 'all' }); + for (const [field, want] of Object.entries(o.published)) { + if (Math.abs(got[field] - want) > tolerance) { + failures.push({ oracle: o.name, field, want, have: got[field] }); + } + } + const factor = Math.round(got.understatement_factor); + if (factor !== o.publishedFactorRounded) { + failures.push({ + oracle: o.name, field: 'understatement_factor(rounded)', + want: o.publishedFactorRounded, have: factor + }); + } + } + return { total: EXTERNAL_ORACLE.length, failures }; +} + +/* ── batch mode, for the differential harness ──────────────────────────────── + * + * Reads {"cases":[{"id","marginals","event","dependence"}]} on stdin and emits + * one result or one typed refusal per case. The harness on the other side + * compares; this side never sees the reference answers, so it cannot converge + * on them. + */ +/** + * Read all of stdin. `readFileSync(0)` returns only the first chunk when stdin + * is a pipe, which silently truncated large batches at 64 KiB. + */ +function readStdin() { + const chunks = []; + const buf = Buffer.alloc(1 << 16); + for (;;) { + let n; + try { + n = readSync(0, buf, 0, buf.length, null); + } catch (err) { + if (err.code === 'EAGAIN') continue; + if (err.code === 'EOF') break; + throw err; + } + if (n === 0) break; + chunks.push(Buffer.from(buf.subarray(0, n))); + } + return Buffer.concat(chunks).toString('utf8'); +} + +function runBatch() { + const doc = JSON.parse(readStdin()); + const results = doc.cases.map((c) => { + try { + const got = composeBounds(c.marginals, { + event: c.event ?? 'all', + dependence: c.dependence ?? 'unconstrained' + }); + return { id: c.id, ok: true, ...got }; + } catch (err) { + return { + id: c.id, + ok: false, + refusal: err instanceof Refusal ? err.reason : `untyped:${err.constructor.name}` + }; + } + }); + process.stdout.write(JSON.stringify({ results })); + return 0; +} + +/* ── main ────────────────────────────────────────────────────────────────── */ + +function main(argv) { + if (argv.includes('--batch')) return runBatch(); + const wantJson = argv.includes('--json'); + const oracleOnly = argv.includes('--external-oracle'); + const manifest = readJson(join(CORPUS, 'manifest.json')); + const tol = manifest.tolerance; + + // The oracle numbers are published to 1e-6, not to the corpus tolerance. + const oracle = runExternalOracle(1e-9); + const accept = oracleOnly ? { total: 0, failures: [] } : runAccept(tol); + const reject = oracleOnly ? { total: 0, failures: [] } : runReject(); + + const failed = accept.failures.length + reject.failures.length + oracle.failures.length; + const report = { + corpus: manifest.corpus, + tolerance: tol, + implementation: 'verifiers/node/cc_compose_verify.mjs', + derived_from: 'conformance/cc-kernel-v1/SPEC.md', + accept: { total: accept.total, failed: accept.failures.length, failures: accept.failures }, + reject: { total: reject.total, failed: reject.failures.length, failures: reject.failures }, + external_oracle: { total: oracle.total, failed: oracle.failures.length, failures: oracle.failures }, + // Provenance: exact counts, no interval. The corpus is the whole + // population, not a sample. + provenance: 'census', + agreement_non_claim: + 'Agreement establishes that two implementations of one specification ' + + 'compute the same values. It does not establish that either is correct: ' + + 'both were authored in the same project and can share a misreading. ' + + 'Only external_oracle is not same-author.' + }; + + if (wantJson) { + console.log(JSON.stringify(report, null, 2)); + return failed ? 1 : 0; + } + + console.log('independent CC composition kernel — corpus agreement'); + console.log(` corpus ${manifest.corpus} (tolerance ${tol})`); + console.log(` derived ${report.derived_from}`); + console.log(''); + if (!oracleOnly) { + console.log(` accept ${accept.total - accept.failures.length}/${accept.total} agree`); + console.log(` reject ${reject.total - reject.failures.length}/${reject.total} refuse correctly`); + } + console.log(` oracle ${oracle.total - oracle.failures.length}/${oracle.total} external published results reproduced`); + console.log(''); + for (const f of [...accept.failures, ...reject.failures, ...oracle.failures]) { + console.log(` FAIL ${JSON.stringify(f)}`); + } + console.log(failed ? `FAIL: ${failed} disagreement(s).` : 'PASS: full agreement.'); + console.log('\n ' + report.agreement_non_claim.replace(/(.{72}) /g, '$1\n ')); + return failed ? 1 : 0; +} + +if (import.meta.url === `file://${process.argv[1]}`) { + // NOT process.exit(): it discards pending stdout writes to a pipe, which + // truncated batch output at the 64 KiB pipe buffer. Setting exitCode lets + // Node flush and exit on its own. + process.exitCode = main(process.argv.slice(2)); +} From 7e007eaac73f562ee259d3457caee802f891ebdd Mon Sep 17 00:00:00 2001 From: Claude Date: Wed, 19 Aug 2026 23:04:29 +0000 Subject: [PATCH 03/15] fix(canonical): adopt RFC 8785, retire the silent key merge Delivers upgrade workstream W3. Canonicalization and provenance integrity 3.8 -> 8.2. All five findings in this dimension are fixed: F-03, F-04, F-05 at severity S1, and F-06, F-07 at S2. A receipt identifies a document only up to the kernel of its canonicalizer. The old kernel had two members it should not have had. It applied NFC normalization to every mapping key and wrote the results into a fresh dict, so two byte-distinct keys sharing a normal form silently became one, with no exception, at top level and nested. The receipt then attested faithfully to a document with a field missing. It also emitted Python repr number forms, which diverge from RFC 8785 on five of six probed forms, so no verifier in another language could agree on the bytes. cc.canonical.v2 implements RFC 8785: ECMAScript Number::toString number forms, UTF-16 code-unit key ordering, no normalization, and unpaired surrogates refused. 15 of 15 probed number forms conform. The remedy is not the one the plan proposed. The plan said normalization must detect collision and fail closed. The better fix, taken instead, was to stop normalizing: RFC 8785 makes normalization the producer's responsibility, and a canonicalizer that mutates content is not a canonicalizer. Two keys differing in Unicode form are two keys, which is what JSON says they are, so there is nothing left to collide. The detection survives as assert_no_confusable_keys, an opt-in producer lint deliberately kept off the hash path -- the original mistake was exactly that a content-altering rule lived inside canonicalization. One declared narrowing of RFC 8785: integers beyond the IEEE-754 safe range are refused rather than emitted, because JCS is defined over doubles and Python's int is unbounded. Emitting bytes that cannot survive a round trip through a conforming parser would produce a receipt nobody else can check. The narrowing is documented rather than left as an undocumented difference. cc.canonical.v1 is retained read-only and remains bug-compatible. Verification dispatches on the profile each receipt declares, so pre-migration receipts stay verifiable; recomputing one under RFC 8785 would report a mismatch for a report that is intact, which is the opposite of what a receipt is for. A test asserts v1 still carries its defects, so it cannot be silently "fixed" out from under history. strict_json_loads refuses repeated keys at any nesting depth and is wired into the report CLI reader, the claim-governance report and artifact readers, and the Merkle transparency-log line reader. Migration was verified, not assumed. Every regenerated capsule artifact was diffed with hashes, hash-derived ids, and the profile identifier scrubbed; all eleven were byte-identical under that scrub. No content, no claim text, and no non-claim changed -- only hashes moved. Two existing tests were rewritten because they asserted the defect as a feature. test_merkle_log_normalizes_unicode_nfc_like_reporting required that a composed and a decomposed spelling produce the SAME leaf hash; under RFC 8785 they are two strings and must not. Its replacement asserts the corrected behavior and records why. One probe intent was corrected: int-vs-float-same-value moved from distinct to equivalent. The original declaration described Python's type system rather than JSON's, which has exactly one number type. Correcting a declaration that was wrong about the domain is legitimate; correcting one to flatter a measured result is not. Recorded in the probe source and the profile document rather than edited away. Honest limits, stated in the artifacts: no fuzzing of the canonicalizer, so the census establishes that the declared classes behave as declared and nothing about the rest of the input space. No cross-language differential on receipts yet -- the conformance corpus covers the composition kernel, but nothing re-canonicalizes a CC report in another language and compares digests, so "cross-language verifiable" describes v2's design rather than a demonstrated result. No external reviewer has attacked either profile. Census under v2: 12 sound, 1 fail-closed, 1 sound-by-rejection; zero unintended-kernel, zero rejection-asymmetry, zero over-discrimination, with four positive controls passing. Verified: suite 816 -> 873 passing, 0 failing, 9 skipped. Capsule replays byte-identically. Node conformance agreement and differential fuzz both still pass. Ruff check and format clean on every touched file. All document links and anchors resolve. Co-Authored-By: Claude Opus 5 Claude-Session: https://claude.ai/code/session_01VnVFub3xq2vwPjjz3MUqZV --- .github/workflows/ci.yml | 8 +- Makefile | 1 + conformance/cc-kernel-v1/manifest.json | 2 +- docs/architecture/CANONICAL_PROFILE.md | 212 +++++++++ docs/upgrade/COMMITTEE_SCORECARD.md | 62 ++- docs/upgrade/EPISTEMIC_UPGRADE_PLAN.md | 49 ++ docs/upgrade/FINDINGS_REGISTER.md | 96 +++- .../expected/cc_report.json | 8 +- .../expected/claim_envelope.json | 10 +- .../expected/claim_governance_audit.json | 14 +- .../expected/extremal_lower.json | 2 +- .../expected/extremal_upper.json | 2 +- .../manifest.expected.json | 14 +- schemas/cc_report.schema.json | 130 +++++- scripts/canonicalization_probe.py | 262 ++++++++--- src/cc/evidence/claim_governance.py | 7 +- src/cc/evidence/merkle_log.py | 9 +- src/cc/reporting/canonical.py | 434 ++++++++++++++++-- src/cc/reporting/cli.py | 6 +- src/cc/reporting/report.py | 27 +- .../unit/canonical/test_canonical_profiles.py | 303 ++++++++++++ .../test_transparency_log_adversarial.py | 41 +- tests/unit/reporting/test_reporting.py | 12 +- 23 files changed, 1477 insertions(+), 234 deletions(-) create mode 100644 docs/architecture/CANONICAL_PROFILE.md create mode 100644 tests/unit/canonical/test_canonical_profiles.py diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index dc79afd..ba75a05 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -71,14 +71,18 @@ jobs: run: | python -m pip install -U pip pip install -e '.[test]' + - name: Canonicalization census + # Gates on cc.canonical.v2 only. v1 is retained read-only for + # historical receipts and is expected to carry its known defects. + run: python scripts/canonicalization_probe.py - name: Corpus is current run: python scripts/build_conformance_corpus.py --check - name: Independent Node implementation agrees run: node verifiers/node/cc_compose_verify.mjs - name: Differential fuzz run: python scripts/differential_compose.py --cases 4000 --seed 1 - - name: Conformance and acceptance suites - run: pytest -q tests/conformance tests/acceptance tests/unit/compose tests/unit/cli + - name: Conformance, canonicalization and acceptance suites + run: pytest -q tests/conformance tests/acceptance tests/unit/compose tests/unit/cli tests/unit/canonical test-extra-is-sufficient: name: the documented install path works diff --git a/Makefile b/Makefile index a8ecd6b..716ed6c 100644 --- a/Makefile +++ b/Makefile @@ -329,6 +329,7 @@ test-compose: install # unintended-kernel class remains, so the findings stay falsifiable. canon-probe: install PYTHONPATH=src $(VENV_DIR)/bin/python scripts/canonicalization_probe.py + PYTHONPATH=src $(VENV_DIR)/bin/pytest tests/unit/canonical -q test-week3: install $(ACT); pytest -q --disable-warnings \ diff --git a/conformance/cc-kernel-v1/manifest.json b/conformance/cc-kernel-v1/manifest.json index b930836..72dd3b5 100644 --- a/conformance/cc-kernel-v1/manifest.json +++ b/conformance/cc-kernel-v1/manifest.json @@ -2,7 +2,7 @@ "corpus": "cc-kernel-v1", "files": { "cases/adversarial.json": "a394f6220cf04586f20ba1b504e01e51dc0810d8f1c0d79667b2a8b697ff71d4", - "cases/composition.json": "4103169ff792a097fc281c5afeca5a4d7fe364720cb571f92922ab8c0b4c24d1" + "cases/composition.json": "71740d53edd0b9e9fb297e6b84a6d1c508c1ee2c5fde27e6bf9b496e623b7492" }, "non_claims": [ "Passing this corpus establishes that an implementation computes the same intervals as the reference on these cases. It does not establish that either implementation is correct: two implementations can share a misreading.", diff --git a/docs/architecture/CANONICAL_PROFILE.md b/docs/architecture/CANONICAL_PROFILE.md new file mode 100644 index 0000000..bd3620d --- /dev/null +++ b/docs/architecture/CANONICAL_PROFILE.md @@ -0,0 +1,212 @@ +# Canonicalization Profiles + +> **Status: implemented.** `cc.canonical.v2` is the default for artifacts +> written by this repository. `cc.canonical.v1` is retained read-only. +> +> **Non-claim.** A canonicalization profile determines which documents share a +> receipt identity. It does not establish that a document is true, that its +> producer was honest, or that the system it describes is safe. A receipt binds +> bytes, not intentions. + +A receipt identifies a document only up to the **kernel** of its canonicalizer: +the set of distinct documents that receive the same canonical bytes. Every +member of that kernel is a pair of documents a receipt cannot tell apart. The +job of a profile is to keep that kernel equal to JSON equality — no larger, and +no smaller. + +Every receipt names its profile in `receipt.canonicalization_method`, and +verification dispatches on that name rather than assuming the current default. + +--- + +## The two profiles + +| | `cc.canonical.v1` | `cc.canonical.v2` | +|---|---|---| +| Identifier | `json.dumps(sort_keys=True,separators=(',', ':'),ensure_ascii=False,allow_nan=False); receipt.canonical_hash excluded` | `cc.canonical.v2/RFC8785; receipt.canonical_hash excluded` | +| Status | **read-only**, historical | **default** for new artifacts | +| Basis | Python `json.dumps` conventions | RFC 8785 (JCS) | +| Key order | Unicode code point | **UTF-16 code unit** | +| Unicode normalization | NFC applied to keys and values | **none** | +| Number form | Python `repr` | **ECMAScript `Number::toString`** | +| Integer domain | unbounded Python `int` | **IEEE-754 safe range** | +| Unpaired surrogates | emitted | **refused** | +| Cross-language verifiable | no | yes | + +--- + +## Why v1 was replaced + +An adversarial census — `scripts/canonicalization_probe.py`, modelled on +Ghost-Ark's E1 provenance-kernel census — found two `unintended-kernel` classes +in v1: documents a consumer needs distinguished that received identical bytes. + +### The silent key merge + +v1 applied `unicodedata.normalize("NFC", …)` to every mapping key and wrote the +results into a fresh dict. Two byte-distinct keys sharing an NFC form silently +became one: + +```python +>>> canonical_json_bytes({"é": 1, "é": 2}, profile=LEGACY_SORT_KEYS) +b'{"\xc3\xa9":2}' +``` + +Two keys in, one key out, **no exception**. The receipt then attested faithfully +to a document with a field missing. The same collapse occurred nested inside an +object, which a guard inspecting only top-level keys would have missed. + +Recorded as [F-03](../upgrade/FINDINGS_REGISTER.md#f-03). + +### Bytes no other language could agree on + +v1 emitted Python `repr` number forms — `1.0`, `-0.0`, `1e-07` — which diverge +from RFC 8785 on five of six probed forms. A verifier written in any other +language computes different bytes for the same document, so independent +verification was impossible: not because of a bug, but because the two sides +never agreed on what the bytes are. + +v1 also emitted Python integers of unbounded size. A JavaScript `JSON.parse` +collapses values beyond 2⁵³ before any verifier code runs — the kernel is set by +the parser, and no downstream fix reaches it. + +Recorded as [F-04](../upgrade/FINDINGS_REGISTER.md#f-04) and +[F-05](../upgrade/FINDINGS_REGISTER.md#f-05). + +--- + +## What v2 does + +### It does not normalize + +RFC 8785 is explicit that Unicode normalization is the **producer's** +responsibility, not the canonicalizer's. v2 follows it. + +This is the fix for F-03, and it is a fix by construction rather than by patch: +two keys that differ in Unicode form are two keys, which is what JSON says they +are, so there is nothing left to collide. A canonicalizer that mutates content +is not a canonicalizer. + +Producers that would rather refuse such a document can call +`assert_no_confusable_keys` before hashing. It is deliberately **not** on the +hash path — v1's mistake was exactly that a content-altering rule lived inside +canonicalization. + +### Numbers follow ECMAScript + +`Number::toString`, as RFC 8785 requires. Python's `repr` already yields the +shortest round-tripping digits; what v2 supplies is the *formatting* of those +digits. + +| Value | v1 emitted | v2 emits | +|---|---|---| +| `1.0` | `1.0` | `1` | +| `-0.0` | `-0.0` | `0` | +| `1e-7` | `1e-07` | `1e-7` | +| `100.0` | `100.0` | `100` | +| `1e20` | `1e+20` | `100000000000000000000` | +| `1e21` | `1e+21` | `1e+21` | + +The `-0.0` case is not academic: `scipy.optimize.linprog` returns a negative +zero at a lower bound of zero, so under v1 two numerically identical reports +could receive different receipts. + +### Keys sort by UTF-16 code unit + +Not by code point. The orders disagree above the BMP: U+10000 encodes as the +surrogate pair D800 DC00, so it sorts *before* U+FFFD under UTF-16 and *after* +it under code point. Comparing big-endian UTF-16 bytes reproduces the required +order exactly. + +### One declared narrowing: the integer domain + +RFC 8785 is defined over JSON numbers, which are IEEE-754 doubles. Python's +`int` has no such bound, so a profile must supply one. + +v2 refuses any integer with `|n| > 2**53 - 1`. That bound is the standard +`MAX_SAFE_INTEGER` — the largest *n* for which both *n* and *n+1* are exactly +representable — which conservatively also refuses 2⁵³ itself. Floats are +unaffected: they are already doubles, so `1e300` serializes normally. + +**This is a narrowing of JCS, and it is declared here rather than left as an +undocumented difference.** A caller needing a larger integer must carry it as a +string. Refusing is the fail-closed choice: emitting bytes that cannot survive a +round trip through a conforming parser would produce a receipt no one else can +check. + +--- + +## Migration + +The change altered every receipt hash in the repository. Two things made that +safe to do: + +1. **Verification dispatches on the declared profile.** A pre-migration receipt + names v1 and is recomputed under v1. Recomputing it under RFC 8785 would + report a mismatch for a report that is in fact intact — the opposite of what + a receipt is for. Breaking historical receipts to fix the canonicalizer would + trade one integrity failure for another. +2. **The regenerated artifacts were diffed before being accepted.** Every file + in the claim-governance capsule was compared with hashes, hash-derived ids, + and the profile identifier scrubbed. All eleven were byte-identical under + that scrub: no content, no claim text, and no non-claim changed. Only the + hashes moved. + +`cc.canonical.v1` is not deprecated-but-available. It is **read-only**: nothing +in the repository writes it, and a test asserts that its known defects are still +present. If v1 were ever "fixed", every pre-migration receipt would silently +become unverifiable. + +--- + +## Verification + +```bash +make canon-probe # the adversarial census, both profiles +pytest tests/unit/canonical +``` + +The census gates on v2 only. v1 is **expected to fail** — that is why it was +replaced — and a test asserts it still does. + +Current v2 census: **12 sound, 1 fail-closed, 1 sound-by-rejection**; zero +`unintended-kernel`, zero `rejection-asymmetry`, zero `over-discrimination`; 15 +of 15 number forms conformant. + +### One intent was corrected during this work + +The class `int-vs-float-same-value` was originally declared with intent +`distinct`. That declaration described Python's type system, not JSON's: JSON +has exactly one number type, so `1` and `1.0` are the same JSON number, and a +consumer needing them distinguished is asking JSON for something it does not +provide. The intent is now `equivalent`. + +Correcting a declaration because it was wrong about the domain is legitimate. +Correcting one to flatter a measured result is not. This was the former, and it +is recorded in the probe source and here rather than edited away. + +--- + +## What a clean census does not establish + +That the kernel has no other members. The corpus is **curated** — its coverage +is an authoring decision, not a measurement — and it carries no confidence +interval, because it is the whole population rather than a sample. + +Known gaps, stated so absence is not read as a null result: + +- **No fuzzing of the canonicalizer.** Every class was authored by hand. +- **No cross-language differential test on receipts.** `conformance/cc-kernel-v1/` + establishes agreement on the *composition kernel*; nothing yet re-canonicalizes + a CC report in another language and compares digests. That is the natural next + step now that v2 makes it possible, and until it runs, "cross-language + verifiable" describes the profile's design rather than a demonstrated result. +- **No external reviewer** has attacked either profile. + +## Binding rules + +- **Never weaken a corpus class to make a test pass.** A class that starts + failing is a kernel regression. +- **Never change a profile in place.** A new canonicalization is a new profile + identifier, so existing receipts keep verifying. +- **Never write v1.** It exists to read history. diff --git a/docs/upgrade/COMMITTEE_SCORECARD.md b/docs/upgrade/COMMITTEE_SCORECARD.md index 30c9aa2..07dd6aa 100644 --- a/docs/upgrade/COMMITTEE_SCORECARD.md +++ b/docs/upgrade/COMMITTEE_SCORECARD.md @@ -18,7 +18,7 @@ Defects: [FINDINGS_REGISTER.md](FINDINGS_REGISTER.md). | # | Dimension | Now | Target (v0.4) | Workstream | |---|---|---:|---:|---| | 1 | Mathematical correctness | **8.9** | 9.4 | W4 | -| 2 | Canonicalization & provenance integrity | **3.8** | 8.5 | W3 | +| 2 | Canonicalization & provenance integrity | **8.2** | 8.5 | W3 | | 3 | Claim discipline — prose | **8.8** | 9.2 | W2 | | 4 | Claim discipline — enforcement | **4.0** | 8.5 | W2 | | 5 | Test depth | **6.4** | 8.5 | W4 | @@ -70,32 +70,46 @@ form disagree beyond solver tolerance. A degenerate constraint set that returns --- -## 2. Canonicalization & provenance integrity — 3.8 {#canonicalization-provenance-integrity} +## 2. Canonicalization & provenance integrity — 8.2 {#canonicalization-provenance-integrity} *Measures: whether a receipt identifies the document it claims to.* -**Evidence supporting.** Canonical form is deterministic, sorted, compact, -UTF-8, rejects NaN/Infinity, rejects non-string keys, rejects non-JSON-native -types, and excludes the receipt hash from its own preimage. 91.89% covered. -That is a real, careful implementation. - -**What lowers it, now.** [F-03](FINDINGS_REGISTER.md#f-03): two Unicode-distinct -keys silently become one, with no error, inside the function every signed -artifact routes through. [F-04](FINDINGS_REGISTER.md#f-04): five of six number -forms diverge from RFC 8785. [F-05](FINDINGS_REGISTER.md#f-05): integers above -2^53 cannot survive a JS verifier. [F-07](FINDINGS_REGISTER.md#f-07): duplicate -keys accepted last-wins on read. - -The score is not 3.8 because the code is careless. It is 3.8 because the code is -careful and **has never been attacked**. Ghost-Ark found five unintended kernel -members in its own pipeline by building a 31-class census. cc-framework has not -run the equivalent, and the one pass performed for this plan found four issues -in under an hour. - -**What would raise it.** A committed adversarial corpus with declared intent per -class. Collision detection that fails closed. A documented, versioned -`cc.canonical.v1` profile stating its relationship to RFC 8785. Strict duplicate- -key rejection on read. +> **Revised upward from 3.8 on 2026-08-19**, on delivered evidence. Every S1 +> finding in this dimension is fixed. See +> [CANONICAL_PROFILE.md](../architecture/CANONICAL_PROFILE.md). + +**Evidence supporting.** `cc.canonical.v2` implements RFC 8785: ECMAScript +`Number::toString` number forms, UTF-16 code-unit key ordering, no +normalization, and one declared narrowing (the IEEE-754 safe integer range) +documented rather than left implicit. 15 of 15 probed number forms conform. + +The census at `scripts/canonicalization_probe.py` runs 14 declared-intent +classes across both profiles and reports, under v2: **12 sound, 1 fail-closed, +1 sound-by-rejection** — zero `unintended-kernel`, zero `rejection-asymmetry`, +zero `over-discrimination`. Four positive controls pass, which is what makes the +result a fix rather than a trade. `tests/unit/canonical/` holds all of it with 57 +tests, and a further test asserts v1 *still* carries its defects, so the legacy +profile cannot be silently "fixed" out from under historical receipts. + +Duplicate keys are refused on read at any nesting depth, wired into the report +CLI, the claim-governance readers, and the Merkle log. + +Migration was done without breaking history: verification dispatches on the +profile each receipt declares, and every regenerated capsule artifact was diffed +with hashes, hash-derived ids, and the profile identifier scrubbed. All eleven +were byte-identical under that scrub — only hashes moved. + +**What still lowers it.** No fuzzing of the canonicalizer: every class was +authored by hand, so the census establishes that the declared classes behave as +declared and nothing about the rest of the input space. **No cross-language +differential test on receipts** — the corpus establishes agreement on the +composition kernel, but nothing yet re-canonicalizes a CC report in another +language and compares digests, so "cross-language verifiable" currently +describes v2's design rather than a demonstrated result. No external reviewer +has attacked either profile. + +**What would raise it further.** A receipt-level differential against a +non-Python JCS implementation. A fuzzer over the canonicalizer. **What would lower it.** A collision found by anyone outside the project. diff --git a/docs/upgrade/EPISTEMIC_UPGRADE_PLAN.md b/docs/upgrade/EPISTEMIC_UPGRADE_PLAN.md index 61c465b..65b8069 100644 --- a/docs/upgrade/EPISTEMIC_UPGRADE_PLAN.md +++ b/docs/upgrade/EPISTEMIC_UPGRADE_PLAN.md @@ -225,6 +225,14 @@ words. ### W3 — Attack the canonicalization kernel {#w3} +> **DELIVERED 2026-08-19.** Canonicalization & provenance integrity +> **3.8 → 8.2**. All five findings fixed (F-03, F-04, F-05 at S1; F-06, F-07 at +> S2). `cc.canonical.v2` (RFC 8785) is the default; `cc.canonical.v1` is +> read-only so historical receipts stay verifiable. Delivery record in +> [§3.3 below](#w3-delivery-record); profile documented in +> [CANONICAL_PROFILE.md](../architecture/CANONICAL_PROFILE.md). Contract +> [C3](DOWNSTREAM_CONTRACTS.md#contract-summary) is shipped. + **Findings:** [F-03](FINDINGS_REGISTER.md#f-03) **S1**, [F-04](FINDINGS_REGISTER.md#f-04) **S1**, [F-05](FINDINGS_REGISTER.md#f-05) **S1**, [F-06](FINDINGS_REGISTER.md#f-06), [F-07](FINDINGS_REGISTER.md#f-07) · **Effort:** 2–3 weeks · **Highest severity** @@ -280,6 +288,47 @@ failing is a kernel regression. has none in the declared classes. The corpus is a census and its size is an authoring decision, so it carries no interval and no coverage claim. +#### Delivery record {#w3-delivery-record} + +| Deliverable | Shipped as | Evidence | +|---|---|---| +| RFC 8785 profile | `cc.canonical.v2` in `src/cc/reporting/canonical.py` | 15/15 probed number forms conform; 16 pinned individually | +| Legacy profile retained | `cc.canonical.v1`, read-only | verification dispatches on the declared profile; a test asserts v1 still carries its defects | +| Collision fixed | no normalization, per RFC 8785 | two byte-distinct keys go in, two come out, at top level and nested | +| Producer lint | `assert_no_confusable_keys` | opt-in, deliberately off the hash path | +| Strict reads | `strict_json_loads` | wired into the report CLI, claim-governance readers, Merkle log | +| Integer bound | `MAX_SAFE_INTEGER` | declared narrowing of JCS, documented not implicit | +| Census | `scripts/canonicalization_probe.py` | 14 classes, both profiles, 4 positive controls | +| Corpus | `tests/unit/canonical/` | 57 tests | + +**The remedy shipped is not the one first proposed here.** The plan said +normalization must *detect* collision and fail closed. The better fix, taken +instead, was to stop normalizing: RFC 8785 makes normalization the producer's +job, and a canonicalizer that mutates content is not a canonicalizer. With no +normalization there is nothing left to collide. + +**Numbers.** v2 census: 12 sound, 1 fail-closed, 1 sound-by-rejection; zero +`unintended-kernel`, zero `rejection-asymmetry`, zero `over-discrimination`. +Suite 816 → **873 passing**, 0 failing. + +**Migration was verified, not assumed.** Every regenerated capsule artifact was +diffed with hashes, hash-derived ids, and the profile identifier scrubbed; all +eleven were byte-identical under that scrub. No content, no claim text, and no +non-claim changed — only hashes moved. + +**One intent was corrected.** `int-vs-float-same-value` moved from `distinct` to +`equivalent`: the original declaration described Python's type system, not +JSON's, which has one number type. Correcting a declaration that was wrong about +the domain is legitimate; correcting one to flatter a result is not. Recorded in +the probe source and the profile doc rather than edited away. + +**Honest limits.** No fuzzing of the canonicalizer — every class was authored by +hand. **No cross-language differential on receipts yet**: the corpus establishes +agreement on the composition kernel, but nothing re-canonicalizes a CC report in +another language and compares digests, so "cross-language verifiable" describes +v2's design rather than a demonstrated result. No external reviewer has attacked +either profile. + --- ### W4 — Deepen the test floor {#w4} diff --git a/docs/upgrade/FINDINGS_REGISTER.md b/docs/upgrade/FINDINGS_REGISTER.md index 0c89680..ac857b4 100644 --- a/docs/upgrade/FINDINGS_REGISTER.md +++ b/docs/upgrade/FINDINGS_REGISTER.md @@ -25,11 +25,11 @@ Severity scale: |---|---|---|---| | [F-01](#f-01) | S2 | The declared `[test]` extra cannot run the test suite | W0 | | [F-02](#f-02) | S2 | `strict = true` mypy is declared for `cc`, enforced on 7 of 90 files | W1 | -| [F-03](#f-03) | **S1** | Canonicalization silently merges Unicode-distinct keys | W3 | -| [F-04](#f-04) | **S1** | Canonical form is not RFC 8785; five of six number forms diverge | W3 | -| [F-05](#f-05) | **S1** | Cross-language receipt divergence above 2^53 is undetectable | W3, W5 | -| [F-06](#f-06) | S2 | `-0.0` and `0.0` produce different receipts for identical numbers | W3 | -| [F-07](#f-07) | S2 | Duplicate JSON keys are accepted last-wins on the parse side | W3 | +| [F-03](#f-03) | ~~S1~~ **FIXED** | Canonicalization silently merges Unicode-distinct keys | W3 | +| [F-04](#f-04) | ~~S1~~ **FIXED** | Canonical form is not RFC 8785; five of six number forms diverge | W3 | +| [F-05](#f-05) | ~~S1~~ **FIXED** | Cross-language receipt divergence above 2^53 is undetectable | W3, W5 | +| [F-06](#f-06) | ~~S2~~ **FIXED** | `-0.0` and `0.0` produce different receipts for identical numbers | W3 | +| [F-07](#f-07) | ~~S2~~ **FIXED** | Duplicate JSON keys are accepted last-wins on the parse side | W3 | | [F-08](#f-08) | **S3** | A real consumer read the composition API and rejected it | W5 | | [F-09](#f-09) | **S3** | The kernel calculus is independently reimplemented three times | W5 | | [F-10](#f-10) | **S3** | Vinctura's requested cross-language guard surface does not exist | W5 | @@ -102,6 +102,14 @@ scope becomes true incrementally and cannot regress. ## F-03 +> **FIXED 2026-08-19 by W3.** `cc.canonical.v2` (RFC 8785) is now the default +> profile; `cc.canonical.v1` is retained read-only so pre-migration receipts stay +> verifiable, and verification dispatches on the profile each receipt declares. +> See [CANONICAL_PROFILE.md](../architecture/CANONICAL_PROFILE.md). The census +> at `scripts/canonicalization_probe.py` now reports zero `unintended-kernel`, +> zero `rejection-asymmetry`, and zero `over-discrimination` under v2, and +> `tests/unit/canonical/` holds it there. + **Canonicalization silently merges Unicode-distinct keys.** — **S1**, owner W3 `_normalize_json_value` applies `unicodedata.normalize("NFC", key)` to every @@ -147,15 +155,29 @@ The irony is load-bearing: `b2b-spatial-intelligence-engine` ships a research module titled `01-canonicalization-collapse.html`. The sibling repositories study this defect class. This repository has it. -**Remedy.** Normalization must **detect** collision rather than resolve it. After -normalizing, compare key-set cardinality; if it shrank, raise -`CanonicalJSONError` naming both colliding keys. Fail closed. Add the pair to a -committed adversarial corpus (W3) so the fix cannot silently regress. +**Remedy as shipped** — and it is *not* the remedy first proposed here. The +original plan was to detect the collision and fail closed. The better fix, taken +instead, was to stop normalizing at all: RFC 8785 is explicit that normalization +is the producer's responsibility, and a canonicalizer that mutates content is not +a canonicalizer. Two keys that differ in Unicode form are two keys, which is what +JSON says they are, so there is nothing left to collide. + +The detection is still available as `assert_no_confusable_keys`, an **opt-in +producer lint** that is deliberately off the hash path — v1's mistake was +precisely that a content-altering rule lived inside canonicalization. --- ## F-04 +> **FIXED 2026-08-19 by W3.** `cc.canonical.v2` (RFC 8785) is now the default +> profile; `cc.canonical.v1` is retained read-only so pre-migration receipts stay +> verifiable, and verification dispatches on the profile each receipt declares. +> See [CANONICAL_PROFILE.md](../architecture/CANONICAL_PROFILE.md). The census +> at `scripts/canonicalization_probe.py` now reports zero `unintended-kernel`, +> zero `rejection-asymmetry`, and zero `over-discrimination` under v2, and +> `tests/unit/canonical/` holds it there. + **The canonical form is not RFC 8785, and diverges on five of six number forms.** — **S1**, owner W3 @@ -177,16 +199,22 @@ an independent verifier, and the family Ghost-Ark surveyed in report. Independent verification is impossible not because of a bug but because the two sides never agreed on what the bytes are. -**Remedy.** Choose deliberately and document the choice with its consequences: -either adopt RFC 8785 number serialization, or declare `cc.canonical.v1` as an -explicitly non-JCS profile with a written rationale and a conformance corpus. -Either is defensible. Silence is not — and the choice must be made **before** an -independent verifier is written, not after. +**Remedy as shipped.** RFC 8785 adopted. `_es_number_to_string` implements the +ECMAScript `Number::toString` algorithm; 15 of 15 probed forms now conform, and +`tests/unit/canonical/` pins 16 of them individually. --- ## F-05 +> **FIXED 2026-08-19 by W3.** `cc.canonical.v2` (RFC 8785) is now the default +> profile; `cc.canonical.v1` is retained read-only so pre-migration receipts stay +> verifiable, and verification dispatches on the profile each receipt declares. +> See [CANONICAL_PROFILE.md](../architecture/CANONICAL_PROFILE.md). The census +> at `scripts/canonicalization_probe.py` now reports zero `unintended-kernel`, +> zero `rejection-asymmetry`, and zero `over-discrimination` under v2, and +> `tests/unit/canonical/` holds it there. + **Cross-language receipt divergence above 2^53 is undetectable here.** — **S1**, owner W3, W5 ```python @@ -206,15 +234,25 @@ large integer count is verified there, the two sides disagree — and nothing in either repository would notice, because there is no differential test spanning them. -**Remedy.** Two parts, both required. (1) Constrain the schema: integers in -receipt-covered positions are bounded to the IEEE-754 safe range, or carried as -strings. (2) Build the differential harness (W5) so divergence is *caught*, not -argued about. +**Remedy as shipped.** v2 refuses any integer with `|n| > 2**53 - 1` rather +than emitting bytes that cannot survive a round trip through a conforming parser. +This is a declared *narrowing* of RFC 8785 — JCS is defined over doubles, and +Python's `int` has no such bound — documented in +[CANONICAL_PROFILE.md](../architecture/CANONICAL_PROFILE.md) rather than left as +an undocumented difference. Floats are unaffected. --- ## F-06 +> **FIXED 2026-08-19 by W3.** `cc.canonical.v2` (RFC 8785) is now the default +> profile; `cc.canonical.v1` is retained read-only so pre-migration receipts stay +> verifiable, and verification dispatches on the profile each receipt declares. +> See [CANONICAL_PROFILE.md](../architecture/CANONICAL_PROFILE.md). The census +> at `scripts/canonicalization_probe.py` now reports zero `unintended-kernel`, +> zero `rejection-asymmetry`, and zero `over-discrimination` under v2, and +> `tests/unit/canonical/` holds it there. + **`-0.0` and `0.0` produce different receipts for the same number.** — S2, owner W3 ```python @@ -231,15 +269,22 @@ breaks replay determinism whenever an LP solver returns a negative zero, which `scipy.optimize.linprog` does routinely at a lower bound of zero. A replay that should be byte-identical will not be. -**Remedy.** Normalize `-0.0` to `0.0` before serialization. Add both to the -corpus, and add the positive control that genuinely distinct near-zero values -stay distinct — a strict rule that rejects honest documents is not a fix, it is -a trade. +**Remedy as shipped.** Fixed as a consequence of adopting RFC 8785, which +requires `-0` to serialize as `0`. The positive controls hold: `5e-324` and other +genuinely distinct near-zero values remain distinct. --- ## F-07 +> **FIXED 2026-08-19 by W3.** `cc.canonical.v2` (RFC 8785) is now the default +> profile; `cc.canonical.v1` is retained read-only so pre-migration receipts stay +> verifiable, and verification dispatches on the profile each receipt declares. +> See [CANONICAL_PROFILE.md](../architecture/CANONICAL_PROFILE.md). The census +> at `scripts/canonicalization_probe.py` now reports zero `unintended-kernel`, +> zero `rejection-asymmetry`, and zero `over-discrimination` under v2, and +> `tests/unit/canonical/` holds it there. + **Duplicate JSON keys are accepted last-wins on the parse side.** — S2, owner W3 ```python @@ -255,9 +300,10 @@ reads. Ghost-Ark's E1 records `duplicate-key-last-wins` as an unintended kernel member in four of five arms; the one sound arm was the one with a different parser. -**Remedy.** Read receipt-covered JSON through a strict loader with an -`object_pairs_hook` that raises on repeated keys. Applies to the report reader, -the evidence-bundle reader, and the claim-envelope reader alike. +**Remedy as shipped.** `strict_json_loads` raises `DuplicateJSONKeyError` on +any repeated key, at any nesting depth, and is wired into the report CLI reader, +the claim-governance report and artifact readers, and the Merkle transparency-log +line reader. --- diff --git a/examples/claim_governance_capsule/expected/cc_report.json b/examples/claim_governance_capsule/expected/cc_report.json index 274ddb7..3c252a0 100644 --- a/examples/claim_governance_capsule/expected/cc_report.json +++ b/examples/claim_governance_capsule/expected/cc_report.json @@ -73,13 +73,13 @@ "bytes": 4559, "path": "extremal_lower.json", "role": "extremal_scenario", - "sha256": "ab5bf859ed132c8f9f68262a00470d6312c035953b14696e7dda368a569d437f" + "sha256": "bb9e9cf4e1aec1aef6e670c06e10bad89cb96ccdb7222d1ec3919e79b3c7a120" }, { "bytes": 4557, "path": "extremal_upper.json", "role": "extremal_scenario", - "sha256": "ce08e2c34974d8187824413deec8b7314e3a95559c1a2b5c0d53beaf15dceba3" + "sha256": "f2aaf4d8b700069449f3364068fc024f28f718173aa9f9312137b29788541925" } ], "audit_log": { @@ -111,8 +111,8 @@ } }, "receipt": { - "canonical_hash": "209fa93b57dda3ceccf4b7680211a19f2e07105fc6b1561c89b64ab8093fd811", - "canonicalization_method": "json.dumps(sort_keys=True,separators=(',', ':'),ensure_ascii=False,allow_nan=False); receipt.canonical_hash excluded", + "canonical_hash": "78242a02a5af310883110c3692c8f477418e63d59b69487792ae7a579ce6d5de", + "canonicalization_method": "cc.canonical.v2/RFC8785; receipt.canonical_hash excluded", "hash_algorithm": "sha256", "previous_hash": null }, diff --git a/examples/claim_governance_capsule/expected/claim_envelope.json b/examples/claim_governance_capsule/expected/claim_envelope.json index a553612..a829bc8 100644 --- a/examples/claim_governance_capsule/expected/claim_envelope.json +++ b/examples/claim_governance_capsule/expected/claim_envelope.json @@ -118,7 +118,7 @@ "claim_id": "cc-claim-governance-capsule", "created_at": "2026-01-01T00:00:00Z", "evaluated_at": "2026-01-02T00:00:00Z", - "source_report_hash": "209fa93b57dda3ceccf4b7680211a19f2e07105fc6b1561c89b64ab8093fd811", + "source_report_hash": "78242a02a5af310883110c3692c8f477418e63d59b69487792ae7a579ce6d5de", "source_report_id": "cc-claim-governance-capsule", "source_report_schema": "cc.report.v0.3.1", "subject_ref": "cc.report.v0.3.1:cc-claim-governance-capsule" @@ -220,7 +220,7 @@ "reason": null, "role": "measurement_evidence", "schema": "cc.report.measurement.v0.3.1", - "sha256": "569331caa16c17cdaf1531a4cbc318f1b6ccf44204dc0d0018dfa1af4a0c261b", + "sha256": "dac150e456c0fbd1294e866cc24b76f11e6d553ef51a7a87a72b74be01fad717", "status": null, "subject_ref": "cc.report.v0.3.1:cc-claim-governance-capsule" }, @@ -322,7 +322,7 @@ "reason": "Canonical report receipt binds the report bytes and named evidence hashes.", "role": "receipt_integrity", "schema": "cc.report.receipt.v0.3.1", - "sha256": "209fa93b57dda3ceccf4b7680211a19f2e07105fc6b1561c89b64ab8093fd811", + "sha256": "78242a02a5af310883110c3692c8f477418e63d59b69487792ae7a579ce6d5de", "status": null, "subject_ref": "cc.report.v0.3.1:cc-claim-governance-capsule" } @@ -339,7 +339,7 @@ "reason": "Evidence artifact hash and byte count verified.", "role": "extremal_scenario", "schema": null, - "sha256": "ab5bf859ed132c8f9f68262a00470d6312c035953b14696e7dda368a569d437f", + "sha256": "bb9e9cf4e1aec1aef6e670c06e10bad89cb96ccdb7222d1ec3919e79b3c7a120", "status": "present", "subject_ref": "cc.report.v0.3.1:cc-claim-governance-capsule" }, @@ -353,7 +353,7 @@ "reason": "Evidence artifact hash and byte count verified.", "role": "extremal_scenario", "schema": null, - "sha256": "ce08e2c34974d8187824413deec8b7314e3a95559c1a2b5c0d53beaf15dceba3", + "sha256": "f2aaf4d8b700069449f3364068fc024f28f718173aa9f9312137b29788541925", "status": "present", "subject_ref": "cc.report.v0.3.1:cc-claim-governance-capsule" } diff --git a/examples/claim_governance_capsule/expected/claim_governance_audit.json b/examples/claim_governance_capsule/expected/claim_governance_audit.json index 87e799b..d7feb0d 100644 --- a/examples/claim_governance_capsule/expected/claim_governance_audit.json +++ b/examples/claim_governance_capsule/expected/claim_governance_audit.json @@ -192,8 +192,8 @@ "path": "extremal_lower.json", "reason": "Evidence artifact hash and byte count verified.", "role": "extremal_scenario", - "sha256_actual": "ab5bf859ed132c8f9f68262a00470d6312c035953b14696e7dda368a569d437f", - "sha256_expected": "ab5bf859ed132c8f9f68262a00470d6312c035953b14696e7dda368a569d437f", + "sha256_actual": "bb9e9cf4e1aec1aef6e670c06e10bad89cb96ccdb7222d1ec3919e79b3c7a120", + "sha256_expected": "bb9e9cf4e1aec1aef6e670c06e10bad89cb96ccdb7222d1ec3919e79b3c7a120", "status": "present" }, { @@ -202,8 +202,8 @@ "path": "extremal_upper.json", "reason": "Evidence artifact hash and byte count verified.", "role": "extremal_scenario", - "sha256_actual": "ce08e2c34974d8187824413deec8b7314e3a95559c1a2b5c0d53beaf15dceba3", - "sha256_expected": "ce08e2c34974d8187824413deec8b7314e3a95559c1a2b5c0d53beaf15dceba3", + "sha256_actual": "f2aaf4d8b700069449f3364068fc024f28f718173aa9f9312137b29788541925", + "sha256_expected": "f2aaf4d8b700069449f3364068fc024f28f718173aa9f9312137b29788541925", "status": "present" }, { @@ -247,7 +247,7 @@ "reasons": [], "receipt": { "artifact_hashes_verified": true, - "canonical_hash": "209fa93b57dda3ceccf4b7680211a19f2e07105fc6b1561c89b64ab8093fd811", + "canonical_hash": "78242a02a5af310883110c3692c8f477418e63d59b69487792ae7a579ce6d5de", "reason": "Canonical report hash verified. Evidence artifact hashes verified. Receipt verification checks artifact integrity only; it does not prove statistical validity, deployment safety, production readiness, or compliance.", "report_hash_verified": true }, @@ -270,8 +270,8 @@ "present": true, "scenario_count": 2, "scenario_ids": [ - "scenario-frechet-lower-7a00219842c1", - "scenario-frechet-upper-bff6e6e0b031" + "scenario-frechet-lower-83135b67bb38", + "scenario-frechet-upper-2292c147ab06" ] }, "schema": "cc/claim-governance-audit.v1", diff --git a/examples/claim_governance_capsule/expected/extremal_lower.json b/examples/claim_governance_capsule/expected/extremal_lower.json index 47e7f55..a4713c9 100644 --- a/examples/claim_governance_capsule/expected/extremal_lower.json +++ b/examples/claim_governance_capsule/expected/extremal_lower.json @@ -139,7 +139,7 @@ "Scenario kind and feasibility status are evidence-artifact properties, not claim lifecycle states." ], "objective": null, - "scenario_id": "scenario-frechet-lower-7a00219842c1", + "scenario_id": "scenario-frechet-lower-83135b67bb38", "schema": "cc.extremal_scenario.v1", "schema_version": "cc.extremal_scenario.v1", "source": "frechet", diff --git a/examples/claim_governance_capsule/expected/extremal_upper.json b/examples/claim_governance_capsule/expected/extremal_upper.json index 61e70d2..bac642c 100644 --- a/examples/claim_governance_capsule/expected/extremal_upper.json +++ b/examples/claim_governance_capsule/expected/extremal_upper.json @@ -139,7 +139,7 @@ "Scenario kind and feasibility status are evidence-artifact properties, not claim lifecycle states." ], "objective": null, - "scenario_id": "scenario-frechet-upper-bff6e6e0b031", + "scenario_id": "scenario-frechet-upper-2292c147ab06", "schema": "cc.extremal_scenario.v1", "schema_version": "cc.extremal_scenario.v1", "source": "frechet", diff --git a/examples/claim_governance_capsule/manifest.expected.json b/examples/claim_governance_capsule/manifest.expected.json index adb5f3d..046855c 100644 --- a/examples/claim_governance_capsule/manifest.expected.json +++ b/examples/claim_governance_capsule/manifest.expected.json @@ -20,22 +20,22 @@ "sha256": "fb6632f6958567326a2e31a41e62a839dd31ea751ff0af69a562adeccaded014" }, { - "bytes": 4702, + "bytes": 4642, "filename": "cc_report.json", "role": "cc_report", - "sha256": "faad40a4f2018b2031593452c32c8f1e33fe8d139fe7b96c4b158f41961ff012" + "sha256": "1b146071b42260efd2965b93ca5f2b50c926150aa70b7f20fa6cfc60fb245bf5" }, { "bytes": 21103, "filename": "claim_envelope.json", "role": "claim_envelope", - "sha256": "2f686a9b0e095f19f4af6ca7d36f4c7ed19e386bc8f83d1412f83b3eeaa75658" + "sha256": "130c53195c2ebd2be37aebfc5fb9a4e22e29e74d1e8984f0a744a0f1a3192e9d" }, { "bytes": 13150, "filename": "claim_governance_audit.json", "role": "claim_governance_audit", - "sha256": "9af0d97908983987051b78703fc7c7b13caea859202fff307daaeb9061cf0498" + "sha256": "cf9f6c659f9f99581f975e9bbb81e9b3ee116ec3582d3136a848cfabb3f4ec7a" }, { "bytes": 3712, @@ -59,13 +59,13 @@ "bytes": 4559, "filename": "extremal_lower.json", "role": "extremal_scenario", - "sha256": "ab5bf859ed132c8f9f68262a00470d6312c035953b14696e7dda368a569d437f" + "sha256": "bb9e9cf4e1aec1aef6e670c06e10bad89cb96ccdb7222d1ec3919e79b3c7a120" }, { "bytes": 4557, "filename": "extremal_upper.json", "role": "extremal_scenario", - "sha256": "ce08e2c34974d8187824413deec8b7314e3a95559c1a2b5c0d53beaf15dceba3" + "sha256": "f2aaf4d8b700069449f3364068fc024f28f718173aa9f9312137b29788541925" } ], "fixed_now": "2026-01-02T00:00:00Z", @@ -85,7 +85,7 @@ ], "pass_caveat": "PASS means internal consistency under verifier rules; it does not mean the AI system is safe in deployment.", "report_id": "cc-claim-governance-capsule", - "report_receipt_sha256": "209fa93b57dda3ceccf4b7680211a19f2e07105fc6b1561c89b64ab8093fd811", + "report_receipt_sha256": "78242a02a5af310883110c3692c8f477418e63d59b69487792ae7a579ce6d5de", "schema_version": "cc.claim_governance_capsule_manifest.v1", "seed": 314159 } diff --git a/schemas/cc_report.schema.json b/schemas/cc_report.schema.json index 9e553d0..68f2657 100644 --- a/schemas/cc_report.schema.json +++ b/schemas/cc_report.schema.json @@ -40,23 +40,36 @@ "git": { "type": "object", "additionalProperties": false, - "required": ["commit", "dirty", "branch"], + "required": [ + "commit", + "dirty", + "branch" + ], "properties": { "commit": { - "type": ["string", "null"] + "type": [ + "string", + "null" + ] }, "dirty": { "type": "boolean" }, "branch": { - "type": ["string", "null"] + "type": [ + "string", + "null" + ] } } }, "environment": { "type": "object", "additionalProperties": false, - "required": ["python_version", "platform"], + "required": [ + "python_version", + "platform" + ], "properties": { "python_version": { "type": "string", @@ -81,24 +94,42 @@ "run": { "type": "object", "additionalProperties": false, - "required": ["run_id", "config_path", "config_hash", "seed", "command"], + "required": [ + "run_id", + "config_path", + "config_hash", + "seed", + "command" + ], "properties": { "run_id": { "type": "string", "minLength": 1 }, "config_path": { - "type": ["string", "null"] + "type": [ + "string", + "null" + ] }, "config_hash": { - "type": ["string", "null"], + "type": [ + "string", + "null" + ], "pattern": "^[0-9a-f]{64}$" }, "seed": { - "type": ["integer", "null"] + "type": [ + "integer", + "null" + ] }, "command": { - "type": ["string", "null"] + "type": [ + "string", + "null" + ] } } }, @@ -121,17 +152,26 @@ ], "properties": { "target_fpr": { - "type": ["number", "null"], + "type": [ + "number", + "null" + ], "minimum": 0, "maximum": 1 }, "alpha_cap": { - "type": ["number", "null"], + "type": [ + "number", + "null" + ], "minimum": 0, "maximum": 1 }, "realized_fpr": { - "type": ["number", "null"], + "type": [ + "number", + "null" + ], "minimum": 0, "maximum": 1 }, @@ -139,10 +179,16 @@ "type": "object" }, "threshold": { - "type": ["number", "null"] + "type": [ + "number", + "null" + ] }, "status": { - "enum": ["pass", "fail"] + "enum": [ + "pass", + "fail" + ] } }, "anyOf": [ @@ -185,7 +231,10 @@ "interval": { "type": "object", "additionalProperties": false, - "required": ["lower", "upper"], + "required": [ + "lower", + "upper" + ], "properties": { "lower": { "type": "number" @@ -196,12 +245,18 @@ } }, "confidence_level": { - "type": ["number", "null"], + "type": [ + "number", + "null" + ], "minimum": 0, "maximum": 1 }, "delta": { - "type": ["number", "null"], + "type": [ + "number", + "null" + ], "minimum": 0, "maximum": 1 }, @@ -239,7 +294,11 @@ "type": "object", "description": "Evidence references bound by SHA-256 hashes. These hashes identify bytes for audit; they do not prove that the evidence is sufficient for release or compliance.", "additionalProperties": false, - "required": ["artifacts", "audit_log", "figure_manifest"], + "required": [ + "artifacts", + "audit_log", + "figure_manifest" + ], "properties": { "artifacts": { "type": "array", @@ -273,7 +332,11 @@ "type": "object", "description": "The single claim this report is allowed to support, plus explicit boundaries on what the report does not claim.", "additionalProperties": false, - "required": ["statement", "allowed_claim_level", "non_claims"], + "required": [ + "statement", + "allowed_claim_level", + "non_claims" + ], "properties": { "statement": { "type": "string", @@ -295,10 +358,16 @@ "allOf": [ { "if": { - "required": ["allowed_claim_level"], + "required": [ + "allowed_claim_level" + ], "properties": { "allowed_claim_level": { - "enum": ["bounded_empirical", "reproducible_run", "release_claim"] + "enum": [ + "bounded_empirical", + "reproducible_run", + "release_claim" + ] } } }, @@ -332,11 +401,17 @@ "const": "sha256" }, "canonicalization_method": { - "description": "Exact deterministic JSON method used before hashing. All report fields except receipt.canonical_hash are included.", - "const": "json.dumps(sort_keys=True,separators=(',', ':'),ensure_ascii=False,allow_nan=False); receipt.canonical_hash excluded" + "description": "Canonicalization profile used before hashing. All report fields except receipt.canonical_hash are included. Verification MUST dispatch on this value rather than assuming the current default: pre-migration receipts carry the legacy profile and must stay verifiable. See docs/architecture/CANONICAL_PROFILE.md.", + "enum": [ + "cc.canonical.v2/RFC8785; receipt.canonical_hash excluded", + "json.dumps(sort_keys=True,separators=(',', ':'),ensure_ascii=False,allow_nan=False); receipt.canonical_hash excluded" + ] }, "previous_hash": { - "type": ["string", "null"], + "type": [ + "string", + "null" + ], "pattern": "^[0-9a-f]{64}$" } } @@ -368,7 +443,12 @@ "type": "object", "description": "Named evidence file with its byte count and SHA-256 digest.", "additionalProperties": false, - "required": ["path", "sha256", "bytes", "role"], + "required": [ + "path", + "sha256", + "bytes", + "role" + ], "properties": { "path": { "type": "string", diff --git a/scripts/canonicalization_probe.py b/scripts/canonicalization_probe.py index 17daab2..130a266 100755 --- a/scripts/canonicalization_probe.py +++ b/scripts/canonicalization_probe.py @@ -50,7 +50,13 @@ from dataclasses import dataclass from typing import Any, Literal -from cc.reporting.canonical import canonical_json_bytes +from cc.reporting.canonical import ( + LEGACY_SORT_KEYS, + RFC8785, + DuplicateJSONKeyError, + canonical_json_bytes, + strict_json_loads, +) Intent = Literal["distinct", "equivalent"] @@ -87,15 +93,23 @@ class PathologyClass: intent="distinct", left={"n": 2**53 + 1}, right={"n": 2**53 + 2}, - note="Sound in CPython; a JS JSON.parse collapses both before any " - "verifier code runs. See F-05.", + note="v1 emitted both, but a JS JSON.parse collapses them before any " + "verifier code runs -- the kernel is set by the parser, and no " + "downstream fix reaches it. v2 refuses both rather than emitting bytes " + "that cannot survive a round trip (F-05).", ), PathologyClass( name="int-vs-float-same-value", - intent="distinct", + intent="equivalent", left={"n": 1}, right={"n": 1.0}, - note="JSON has one number type; RFC 8785 would unify these.", + note="INTENT CORRECTED 2026-08-19, from 'distinct' to 'equivalent'. The " + "original declaration described Python's type system, not JSON's: JSON " + "has exactly one number type, so 1 and 1.0 are the same JSON number, and " + "a consumer needing them distinguished is asking JSON for something it " + "does not provide. Correcting a declaration because it was wrong about " + "the domain is legitimate; correcting one to flatter a measured result " + "is not. This is the former, recorded here rather than edited away.", ), PathologyClass( name="negative-zero", @@ -117,7 +131,9 @@ class PathologyClass: intent="distinct", left={"n": 1e30}, right={"n": 10**30}, - note="Same mathematical value, different Python types. RFC 8785 emits 1e+30 for both.", + note="A float and a Python int of the same magnitude. Under v2 the int " + "is refused for exceeding the IEEE-754 safe range, so no false shared " + "identity is issued and the float still receives one.", ), PathologyClass( name="safe-integer-neighbours", @@ -148,6 +164,33 @@ class PathologyClass: note="A guard inspecting only top-level keys would pass the flat class " "while leaving this fully exploitable.", ), + PathologyClass( + name="utf16-vs-codepoint-key-order", + intent="distinct", + left={"\ufffd": 1, "\U00010000": 2}, + right={"\ufffd": 2, "\U00010000": 1}, + note="Positive control for key ordering. RFC 8785 sorts by UTF-16 code " + "unit, not code point, and the orders disagree above the BMP: U+10000 " + "encodes as D800 DC00, so it sorts before U+FFFD under UTF-16 and after " + "it under code point. Different values under the same keys must stay " + "distinct whichever order is used.", + ), + PathologyClass( + name="control-character-escape", + intent="distinct", + left={"k": "a\u0001b"}, + right={"k": "a\u0002b"}, + note="Positive control: C0 control characters are escaped as \\u00XX " + "and must not collapse to one another.", + ), + PathologyClass( + name="tab-vs-escaped-tab-text", + intent="distinct", + left={"k": "a\tb"}, + right={"k": "a\\tb"}, + note="Positive control: a real tab and the two-character text " + "backslash-t are different strings and must stay distinct after escaping.", + ), PathologyClass( name="large-document-single-byte", intent="distinct", @@ -158,10 +201,10 @@ class PathologyClass: ) -def _canonical(doc: dict[str, Any]) -> bytes | None: +def _canonical(doc: dict[str, Any], profile: str) -> bytes | None: """Canonical bytes, or None when the document is refused.""" try: - return canonical_json_bytes(doc) + return canonical_json_bytes(doc, profile=profile) # type: ignore[arg-type] except Exception: # any refusal is a refusal, for this census return None @@ -184,11 +227,11 @@ def _observation(left: bytes | None, right: bytes | None) -> str: return "collapsed" if left == right else "distinct" -def run() -> list[dict[str, Any]]: +def run(profile: str) -> list[dict[str, Any]]: rows: list[dict[str, Any]] = [] for cls in CLASSES: - left = _canonical(cls.left) - right = _canonical(cls.right) + left = _canonical(cls.left, profile) + right = _canonical(cls.right, profile) rows.append( { "class": cls.name, @@ -201,55 +244,88 @@ def run() -> list[dict[str, Any]]: return rows -def silent_key_loss() -> dict[str, Any]: - """F-03: a single object carrying both key forms loses one, silently.""" +def silent_key_loss(profile: str) -> dict[str, Any]: + """F-03: under v1 a single object carrying both key forms loses one, silently. + + Under v2 nothing is normalized, so the two keys stay two keys and the + canonical bytes carry both -- which is what JSON says the document is. + """ both = {KEY_NFC: 1, KEY_NFD: 2} try: - out = canonical_json_bytes(both) + out = canonical_json_bytes(both, profile=profile) # type: ignore[arg-type] except Exception as exc: return {"keys_in": len(both), "refused": True, "error": type(exc).__name__} return { "keys_in": len(both), - "keys_out": len(json.loads(out)), + "keys_out": len(strict_json_loads(out)), "refused": False, "output": out.decode("utf-8"), } def duplicate_key_parse() -> dict[str, Any]: - """F-07: duplicate keys are accepted last-wins on the parse side.""" + """F-07: the permissive parser keeps the last key; the strict one refuses.""" raw = '{"amount":1,"amount":2}' - parsed = json.loads(raw) + permissive = json.loads(raw) + try: + strict_json_loads(raw) + except DuplicateJSONKeyError: + strict_refused = True + else: + strict_refused = False return { "raw": raw, - "parsed": parsed, - "collides_with_survivor": canonical_json_bytes(parsed) + "permissive_parse": permissive, + "permissive_collides_with_survivor": canonical_json_bytes(permissive) == canonical_json_bytes({"amount": 2}), + "strict_json_loads_refuses": strict_refused, } -# RFC 8785 (JCS) reference serializations for the number forms probed. Sourced -# from the JCS number-to-string rules, not from a runtime. -JCS_EXPECTED: tuple[tuple[Any, str], ...] = ( +# Expected serializations under **cc.canonical.v2**, which is RFC 8785 plus one +# declared narrowing: a Python ``int`` outside the IEEE-754 safe integer range +# is refused rather than emitted. JCS is defined over JSON numbers, which are +# doubles; Python ints have no such bound, so the profile must supply one. The +# bound is the standard ``2**53 - 1`` -- the largest n for which both n and n+1 +# are exactly representable -- which conservatively also refuses 2**53 itself. +# +# ``None`` means "must be refused". A refusal that JCS would have serialized is +# a narrowing, and it is declared in docs/architecture/CANONICAL_PROFILE.md +# rather than left as an undocumented difference. +JCS_EXPECTED: tuple[tuple[Any, str | None], ...] = ( (1e30, "1e+30"), - (10**30, "1e+30"), + (10**30, None), # int beyond the safe range (1.0, "1"), (-0.0, "0"), (1e-7, "1e-7"), (100.0, "100"), + (0.1, "0.1"), + (1e21, "1e+21"), + (1e20, "100000000000000000000"), # float: no int bound applies + (5e-324, "5e-324"), + (1.7976931348623157e308, "1.7976931348623157e+308"), + (float(2**53), "9007199254740992"), # float is unaffected by the int rule + (2**53, None), # int at the boundary: conservatively refused + (2**53 - 1, "9007199254740991"), # the largest int the profile accepts + (2**53 + 1, None), ) -def jcs_conformance() -> list[dict[str, Any]]: +def jcs_conformance(profile: str) -> list[dict[str, Any]]: """F-04: how the emitted number form compares with RFC 8785.""" rows: list[dict[str, Any]] = [] for value, expected in JCS_EXPECTED: - emitted = canonical_json_bytes({"n": value}).decode("utf-8")[5:-1] + try: + emitted: str | None = canonical_json_bytes({"n": value}, profile=profile).decode( # type: ignore[arg-type] + "utf-8" + )[5:-1] + except Exception: + emitted = None rows.append( { "value": repr(value), - "cc_emits": emitted, - "jcs_emits": expected, + "emitted": emitted, + "jcs_expects": expected, "conformant": emitted == expected, } ) @@ -259,15 +335,40 @@ def jcs_conformance() -> list[dict[str, Any]]: FAILING_VERDICTS = {"unintended-kernel", "rejection-asymmetry"} +PROFILES: dict[str, str] = {"v1": LEGACY_SORT_KEYS, "v2": RFC8785} + + +def census(profile_name: str) -> dict[str, Any]: + profile = PROFILES[profile_name] + rows = run(profile) + counts: dict[str, int] = {} + for row in rows: + counts[row["verdict"]] = counts.get(row["verdict"], 0) + 1 + return { + "profile": profile_name, + "profile_id": profile, + "classes": rows, + "verdict_counts": counts, + "failing": sum(counts.get(v, 0) for v in FAILING_VERDICTS), + "silent_key_loss": silent_key_loss(profile), + "jcs_conformance": jcs_conformance(profile), + } + + def main(argv: list[str] | None = None) -> int: parser = argparse.ArgumentParser(description=__doc__.splitlines()[0]) parser.add_argument("--json", action="store_true", help="emit machine-readable JSON") + parser.add_argument( + "--profile", + choices=("v2", "v1", "both"), + default="both", + help="which canonicalization profile to census (default: both, so the " + "migration is visible)", + ) args = parser.parse_args(argv) - rows = run() - counts: dict[str, int] = {} - for row in rows: - counts[row["verdict"]] = counts.get(row["verdict"], 0) + 1 + names = ["v1", "v2"] if args.profile == "both" else [args.profile] + results = {name: census(name) for name in names} payload = { "provenance": "census", @@ -277,62 +378,83 @@ def main(argv: list[str] | None = None) -> int: "decision. A confidence interval would describe sampling " "variability that does not exist here." ), - "classes": rows, - "verdict_counts": counts, - "silent_key_loss": silent_key_loss(), + "profiles": results, "duplicate_key_parse": duplicate_key_parse(), - "jcs_conformance": jcs_conformance(), + "gated_profile": "v2", + "gate_non_claim": ( + "A clean census establishes that the declared classes behave as " + "declared. It does not establish that the kernel has no other " + "members: the corpus is curated, and its coverage is an authoring " + "decision, not a measurement." + ), } - failing = sum(counts.get(v, 0) for v in FAILING_VERDICTS) + # Only the default profile gates. v1 is retained read-only for historical + # receipts and is EXPECTED to fail -- that is why it was replaced. + failed = results["v2"]["failing"] if "v2" in results else 0 if args.json: json.dump(payload, sys.stdout, indent=2, ensure_ascii=False) sys.stdout.write("\n") - return 1 if failing else 0 + return 1 if failed else 0 print("cc-framework canonicalization kernel census") print("provenance: census - exact counts only, no confidence intervals\n") - width = max(len(r["class"]) for r in rows) - for row in rows: - flag = " <<<" if row["verdict"] in FAILING_VERDICTS else "" + + for name in names: + result = results[name] + gated = " (GATED)" if name == "v2" else " (read-only, historical)" + print(f"profile {name}{gated} {result['profile_id']}") + width = max(len(r["class"]) for r in result["classes"]) + for row in result["classes"]: + flag = " <<<" if row["verdict"] in FAILING_VERDICTS else "" + print( + f" {row['class']:<{width}} intent={row['intent']:<10}" + f" observed={row['observed']:<13} {row['verdict']}{flag}" + ) + counts = result["verdict_counts"] + print(" counts: " + ", ".join(f"{k}={counts[k]}" for k in sorted(counts))) + + loss = result["silent_key_loss"] + if loss["refused"]: + print(f" both-key-forms document: refused with {loss['error']}") + elif loss["keys_out"] < loss["keys_in"]: + print( + f" both-key-forms document: {loss['keys_in']} keys in -> " + f"{loss['keys_out']} out, NO EXCEPTION <<< silent key loss" + ) + else: + print( + f" both-key-forms document: {loss['keys_in']} keys in -> " + f"{loss['keys_out']} out, no loss" + ) + + nonconf = [r for r in result["jcs_conformance"] if not r["conformant"]] print( - f" {row['class']:<{width}} intent={row['intent']:<10}" - f" observed={row['observed']:<13} {row['verdict']}{flag}" + f" RFC 8785 number forms: " + f"{len(result['jcs_conformance']) - len(nonconf)}" + f"/{len(result['jcs_conformance'])} conformant" ) - - print("\nverdict counts:") - for verdict in sorted(counts): - print(f" {verdict:<22} {counts[verdict]}") - - loss = payload["silent_key_loss"] - print("\nF-03 silent key loss (single object carrying both key forms):") - if loss["refused"]: - print(f" refused with {loss['error']} - fixed") - else: - print(f" {loss['keys_in']} keys in -> {loss['keys_out']} key(s) out, no exception") - print(f" canonical bytes: {loss['output']}") + for row in nonconf: + print( + f" diverges {row['value']:<12} emitted={row['emitted']!s:<26}" + f" jcs={row['jcs_expects']!s}" + ) + print("") dup = payload["duplicate_key_parse"] - print("\nF-07 duplicate keys on the parse side:") - print(f" {dup['raw']} -> {dup['parsed']}") - print(f" canonically identical to the survivor alone: {dup['collides_with_survivor']}") - - print("\nF-04 RFC 8785 (JCS) number-form conformance:") - for row in payload["jcs_conformance"]: - mark = "ok" if row["conformant"] else "DIVERGES" - print(f" {row['value']:<10} cc={row['cc_emits']:<34} jcs={row['jcs_emits']:<8} {mark}") - nonconformant = sum(1 for r in payload["jcs_conformance"] if not r["conformant"]) - print(f" {nonconformant} of {len(payload['jcs_conformance'])} forms diverge") - - if failing: + print("duplicate keys on the parse side:") + print(f" {dup['raw']} -> json.loads gives {dup['permissive_parse']}") + print(f" strict_json_loads refuses it: {dup['strict_json_loads_refuses']}") + print("") + + if failed: print( - f"\nFAIL: {failing} class(es) at {' or '.join(sorted(FAILING_VERDICTS))}." - "\nSee docs/upgrade/FINDINGS_REGISTER.md F-03 through F-07." + f"FAIL: profile v2 has {failed} class(es) at {' or '.join(sorted(FAILING_VERDICTS))}." ) return 1 - - print("\nPASS: no unintended-kernel or rejection-asymmetry classes.") + print("PASS: profile v2 has no unintended-kernel or rejection-asymmetry class.") + print("\n " + payload["gate_non_claim"].replace("(.{70}) ", "")) return 0 diff --git a/src/cc/evidence/claim_governance.py b/src/cc/evidence/claim_governance.py index 57fb627..1b673a6 100644 --- a/src/cc/evidence/claim_governance.py +++ b/src/cc/evidence/claim_governance.py @@ -73,7 +73,7 @@ roles_requiring_semantic_payload_validation, validate_role_payload, ) -from cc.reporting.canonical import sha256_canonical +from cc.reporting.canonical import sha256_canonical, strict_json_loads from cc.reporting.report import ( ALLOWED_CLAIM_LEVELS, CLAIM_LEVELS, @@ -325,7 +325,8 @@ def verify_claim_governance( evaluated_at = _utc_iso(evaluation_time) try: - report = json.loads(report_file.read_text(encoding="utf-8")) + # A repeated key here would change which report is verified (F-07). + report = strict_json_loads(report_file.read_text(encoding="utf-8")) except Exception as exc: return _failure_audit( report_id=report_file.stem or "", @@ -824,7 +825,7 @@ def _read_semantic_payload( root_dir: Path, ) -> Mapping[str, Any] | None: try: - payload = json.loads(_resolve_path(artifact_audit.path, root_dir).read_text()) + payload = strict_json_loads(_resolve_path(artifact_audit.path, root_dir).read_text()) except Exception as exc: artifact_audit.status = EvidenceRoleStatus.UNREADABLE artifact_audit.reason = f"Artifact could not be parsed as JSON: {exc}" diff --git a/src/cc/evidence/merkle_log.py b/src/cc/evidence/merkle_log.py index 8840228..f779712 100644 --- a/src/cc/evidence/merkle_log.py +++ b/src/cc/evidence/merkle_log.py @@ -20,7 +20,7 @@ from pathlib import Path from typing import Any -from cc.reporting.canonical import canonical_json_bytes +from cc.reporting.canonical import CanonicalJSONError, canonical_json_bytes, strict_json_loads EMPTY_ROOT_HASH = hashlib.sha256(b"").hexdigest() LOG_RECORD_SCHEMA = "cc/merkle-log-record.v1" @@ -422,9 +422,14 @@ def _load(self) -> None: if not raw.strip(): continue try: - entry = json.loads(raw) + # A log line that repeats a key must not be silently + # resolved: the leaf hash would cover the survivor, not the + # line as written (finding F-07). + entry = strict_json_loads(raw) except json.JSONDecodeError as exc: raise MerkleLogError(f"line {line_number}: invalid JSON") from exc + except CanonicalJSONError as exc: + raise MerkleLogError(f"line {line_number}: {exc}") from exc if not isinstance(entry, Mapping): raise MerkleLogError(f"line {line_number}: log entry must be an object") if entry.get("schema") != LOG_RECORD_SCHEMA: diff --git a/src/cc/reporting/canonical.py b/src/cc/reporting/canonical.py index 2681896..8eada83 100644 --- a/src/cc/reporting/canonical.py +++ b/src/cc/reporting/canonical.py @@ -1,7 +1,55 @@ -"""Canonical JSON helpers for CC report receipts. +"""Canonical JSON for CC receipts, as versioned profiles. -The receipt hash is SHA-256 over a strict JSON representation: -sorted object keys, compact separators, UTF-8 bytes, and no NaN/Infinity. +A receipt identifies a document only up to the kernel of its canonicalizer: +the set of distinct documents that receive the same canonical bytes. Every +member of that kernel is a pair of documents a receipt cannot tell apart. The +job here is to keep that kernel equal to JSON equality -- no larger, and no +smaller. + +Two profiles exist. + +``cc.canonical.v2`` (:data:`RFC8785`) is the default for new artifacts and +implements RFC 8785, the JSON Canonicalization Scheme. It is what makes an +independent verifier in another language possible: JCS pins number formatting +to the ECMAScript ``Number::toString`` algorithm and key ordering to UTF-16 +code-unit order, so a conforming implementation in any language produces the +same bytes. + +``cc.canonical.v1`` (:data:`LEGACY_SORT_KEYS`) is the original +``json.dumps(sort_keys=True, ...)`` method. It is retained **read-only** so +receipts written before the migration stay verifiable. Breaking historical +receipts to fix the canonicalizer would trade one integrity failure for +another. + +Every receipt names its profile in ``receipt.canonicalization_method``, and +verification dispatches on that name rather than assuming the current default. + +Why v1 is not merely "the old one" +---------------------------------- + +An adversarial census (``scripts/canonicalization_probe.py``) found two +``unintended-kernel`` classes in v1 -- documents a consumer needs +distinguished that received identical bytes: + +* v1 applied ``unicodedata.normalize("NFC", ...)`` to every mapping key and + wrote the results into a fresh dict. Two byte-distinct keys sharing an NFC + form silently became one, with no error, at top level and nested. The receipt + then attested to a document with a field missing. +* v1 emitted Python ``repr`` number forms (``1.0``, ``-0.0``, ``1e-07``), + which diverge from RFC 8785 on five of six probed forms, so no non-Python + verifier could agree on the bytes. + +v2 fixes both by construction rather than by patch. It does **not** normalize: +RFC 8785 is explicit that normalization is the producer's responsibility, and a +canonicalizer that mutates content is not a canonicalizer. Two keys that differ +in Unicode form are two keys, which is what JSON says they are, so there is +nothing left to collide. Producers that want the stricter reading can call +:func:`assert_no_confusable_keys` as a separate lint -- it is deliberately not +part of the hash path. + +Both profiles reject non-finite floats, non-string keys, and non-JSON-native +values. v2 additionally rejects integers outside the IEEE-754 safe range (see +:data:`MAX_SAFE_INTEGER`) and strings containing unpaired surrogates. """ from __future__ import annotations @@ -11,60 +59,232 @@ import math import unicodedata from collections.abc import Mapping, Sequence -from typing import Any +from decimal import Decimal +from typing import Any, Final, Literal, TypeAlias JsonValue = str | int | float | bool | None | list["JsonValue"] | dict[str, "JsonValue"] +#: Identifier written into ``receipt.canonicalization_method`` by the original +#: method. Retained verbatim so pre-migration receipts still validate. +LEGACY_SORT_KEYS: Final = ( + "json.dumps(sort_keys=True,separators=(',', ':'),ensure_ascii=False,allow_nan=False); " + "receipt.canonical_hash excluded" +) + +#: Identifier for the RFC 8785 profile. Default for new artifacts. +RFC8785: Final = "cc.canonical.v2/RFC8785; receipt.canonical_hash excluded" + +CanonicalProfile: TypeAlias = Literal[ + "json.dumps(sort_keys=True,separators=(',', ':'),ensure_ascii=False,allow_nan=False); " + "receipt.canonical_hash excluded", + "cc.canonical.v2/RFC8785; receipt.canonical_hash excluded", +] + +DEFAULT_PROFILE: Final[CanonicalProfile] = RFC8785 + +#: ``2**53 - 1``. Integers beyond this are not exactly representable as IEEE-754 +#: doubles, so a JavaScript ``JSON.parse`` collapses neighbouring values before +#: any verifier code runs -- the kernel is set by the parser, and no downstream +#: fix reaches it. v2 refuses them rather than emitting bytes that cannot +#: survive a round trip. +MAX_SAFE_INTEGER: Final = 9007199254740991 + +__all__ = [ + "DEFAULT_PROFILE", + "LEGACY_SORT_KEYS", + "MAX_SAFE_INTEGER", + "RFC8785", + "CanonicalJSONError", + "CanonicalProfile", + "ConfusableKeyError", + "assert_no_confusable_keys", + "canonical_json_bytes", + "sha256_canonical", + "strict_json_loads", +] + class CanonicalJSONError(TypeError): """Raised when a value cannot be represented in canonical report JSON.""" -def canonical_json_bytes(obj: Mapping[str, Any]) -> bytes: - """Return deterministic UTF-8 JSON bytes for a JSON-native mapping. +class ConfusableKeyError(CanonicalJSONError): + """Raised when two byte-distinct keys share a Unicode normal form. - Non-string mapping keys, non-finite floats, bytes, sets, and arbitrary - objects are rejected instead of being stringified implicitly. + Under RFC 8785 these are two separate keys and canonicalization proceeds. + This error is raised only by the opt-in :func:`assert_no_confusable_keys` + lint, because a document containing both is nearly always a producer bug -- + two fields where one was meant. """ - normalized = _normalize_json_value(obj, path="$") - if not isinstance(normalized, dict): - raise CanonicalJSONError("canonical_json_bytes requires a JSON object at the top level") - return json.dumps( - normalized, - sort_keys=True, - separators=(",", ":"), - ensure_ascii=False, - allow_nan=False, - ).encode("utf-8") +class DuplicateJSONKeyError(CanonicalJSONError): + """Raised when a parsed JSON object repeats a key. + + ``json.loads`` keeps the last occurrence silently, so a receipt computed + over the parsed result attests to a document the sender did not send. + """ + + +# -------------------------------------------------------------------------- +# RFC 8785 number serialization +# -------------------------------------------------------------------------- -def sha256_canonical(obj: Mapping[str, Any], *, exclude_receipt_hash: bool = True) -> str: - """Hash canonical JSON bytes with SHA-256. - When ``exclude_receipt_hash`` is true, ``receipt.canonical_hash`` is removed - before hashing so reports can contain their own receipt without a circular - dependency. +def _es_number_to_string(value: float) -> str: + """Serialize a double per the ECMAScript ``Number::toString`` algorithm. + + RFC 8785 section 3.2.2.3 defers to ECMA-262. Python's ``repr`` already + yields the shortest round-tripping digits; what differs is the *formatting* + of those digits, which this function supplies. """ + if not math.isfinite(value): + raise CanonicalJSONError(f"non-finite numbers are not JSON: {value!r}") + # Covers -0.0, which RFC 8785 requires be emitted as "0". + if value == 0.0: + return "0" + if value < 0: + return "-" + _es_number_to_string(-value) - payload: Mapping[str, Any] = _without_receipt_hash(obj) if exclude_receipt_hash else obj - return hashlib.sha256(canonical_json_bytes(payload)).hexdigest() + _, raw_digits, exponent = Decimal(repr(value)).as_tuple() + digits = "".join(str(d) for d in raw_digits) + exponent = int(exponent) + # Trailing zeros are an artifact of repr ("1.0" -> digits "10"); the ES + # algorithm requires the shortest digit string k. + while len(digits) > 1 and digits.endswith("0"): + digits = digits[:-1] + exponent += 1 + k = len(digits) + n = k + exponent # value == 0. * 10**n + + if k <= n <= 21: + return digits + "0" * (n - k) + if 0 < n <= 21: + return digits[:n] + "." + digits[n:] + if -6 < n <= 0: + return "0." + "0" * (-n) + digits + sign = "+" if n - 1 >= 0 else "-" + exp = f"e{sign}{abs(n - 1)}" + if k == 1: + return digits + exp + return digits[0] + "." + digits[1:] + exp + + +_SHORT_ESCAPES: Final[dict[str, str]] = { + '"': '\\"', + "\\": "\\\\", + "\b": "\\b", + "\f": "\\f", + "\n": "\\n", + "\r": "\\r", + "\t": "\\t", +} + + +def _es_quote(text: str) -> str: + """Quote a string per RFC 8785 section 3.2.2.2. + + Control characters below 0x20 are escaped, using the short forms where they + exist; everything else is emitted literally as UTF-8. Non-ASCII is **not** + escaped, and no normalization is applied. + """ + out = ['"'] + for char in text: + escape = _SHORT_ESCAPES.get(char) + if escape is not None: + out.append(escape) + elif char < "\x20": + out.append(f"\\u{ord(char):04x}") + elif "\ud800" <= char <= "\udfff": + # An unpaired surrogate cannot be encoded as UTF-8. Emitting one + # would produce bytes no conforming parser can read, so refuse. + raise CanonicalJSONError( + f"string contains an unpaired surrogate U+{ord(char):04X}; " + "it has no UTF-8 encoding and cannot be canonicalized" + ) + else: + out.append(char) + out.append('"') + return "".join(out) + + +def _utf16_sort_key(key: str) -> bytes: + """Return a sort key ordering strings by UTF-16 code unit. + + RFC 8785 sorts object keys by UTF-16 code units, **not** by code point. + The two orders differ above the BMP: U+10000 encodes as the surrogate pair + D800 DC00, so it sorts *before* U+FFFD under UTF-16 and *after* it under + code point. Comparing big-endian UTF-16 bytes reproduces the required + order exactly. + """ + try: + return key.encode("utf-16-be") + except UnicodeEncodeError as exc: + raise CanonicalJSONError( + f"object key {key!r} contains an unpaired surrogate and cannot be ordered" + ) from exc + + +def _serialize_rfc8785(value: Any, *, path: str) -> str: + if value is None: + return "null" + # bool must precede int: Python's bool is an int subclass. + if isinstance(value, bool): + return "true" if value else "false" + if isinstance(value, str): + return _es_quote(value) + if isinstance(value, int): + if abs(value) > MAX_SAFE_INTEGER: + raise CanonicalJSONError( + f"{path} integer {value} exceeds the IEEE-754 safe range " + f"(|n| <= {MAX_SAFE_INTEGER}). A JSON parser backed by doubles " + "collapses values beyond it, so no cross-language verifier " + "could agree on this document. Carry the value as a string." + ) + return str(value) + if isinstance(value, float): + if not math.isfinite(value): + raise CanonicalJSONError(f"{path} must be finite, got {value!r}") + return _es_number_to_string(value) + if isinstance(value, Mapping): + items = [] + seen: set[str] = set() + for key in value: + if not isinstance(key, str): + raise CanonicalJSONError(f"{path} contains non-string key {key!r}") + if key in seen: # pragma: no cover - a dict cannot repeat a key + raise CanonicalJSONError(f"{path} repeats key {key!r}") + seen.add(key) + items.append(key) + items.sort(key=_utf16_sort_key) + parts = [ + f"{_es_quote(key)}:{_serialize_rfc8785(value[key], path=f'{path}.{key}')}" + for key in items + ] + return "{" + ",".join(parts) + "}" + if isinstance(value, Sequence) and not isinstance(value, (bytes, bytearray, str)): + parts = [ + _serialize_rfc8785(item, path=f"{path}[{index}]") for index, item in enumerate(value) + ] + return "[" + ",".join(parts) + "]" + raise CanonicalJSONError( + f"{path} contains non-JSON-native value of type {type(value).__name__}" + ) -def _without_receipt_hash(obj: Mapping[str, Any]) -> dict[str, Any]: - normalized = _normalize_json_value(obj, path="$") - if not isinstance(normalized, dict): - raise CanonicalJSONError("report payload must be a JSON object") - report = dict(normalized) - receipt = report.get("receipt") - if isinstance(receipt, dict): - receipt_copy = dict(receipt) - receipt_copy.pop("canonical_hash", None) - report["receipt"] = receipt_copy - return report +# -------------------------------------------------------------------------- +# Legacy profile (read-only) +# -------------------------------------------------------------------------- -def _normalize_json_value(value: Any, *, path: str) -> JsonValue: + +def _normalize_legacy(value: Any, *, path: str) -> JsonValue: + """Reproduce the v1 normalization exactly, including its NFC key merge. + + This is deliberately bug-compatible. Its purpose is to recompute the hash a + pre-migration receipt actually carries; "fixing" it here would make old + receipts unverifiable, which is the failure this profile exists to prevent. + """ if value is None or isinstance(value, bool): return value if isinstance(value, str): @@ -81,12 +301,144 @@ def _normalize_json_value(value: Any, *, path: str) -> JsonValue: if not isinstance(key, str): raise CanonicalJSONError(f"{path} contains non-string key {key!r}") norm_key = unicodedata.normalize("NFC", key) - out[norm_key] = _normalize_json_value(item, path=f"{path}.{norm_key}") + out[norm_key] = _normalize_legacy(item, path=f"{path}.{norm_key}") return out if isinstance(value, Sequence) and not isinstance(value, (bytes, bytearray, str)): - return [ - _normalize_json_value(item, path=f"{path}[{idx}]") for idx, item in enumerate(value) - ] + return [_normalize_legacy(item, path=f"{path}[{i}]") for i, item in enumerate(value)] raise CanonicalJSONError( f"{path} contains non-JSON-native value of type {type(value).__name__}" ) + + +def _serialize_legacy(obj: Mapping[str, Any]) -> bytes: + normalized = _normalize_legacy(obj, path="$") + if not isinstance(normalized, dict): + raise CanonicalJSONError("canonical_json_bytes requires a JSON object at the top level") + return json.dumps( + normalized, + sort_keys=True, + separators=(",", ":"), + ensure_ascii=False, + allow_nan=False, + ).encode("utf-8") + + +# -------------------------------------------------------------------------- +# Public surface +# -------------------------------------------------------------------------- + + +def canonical_json_bytes( + obj: Mapping[str, Any], + *, + profile: CanonicalProfile = DEFAULT_PROFILE, +) -> bytes: + """Return deterministic UTF-8 JSON bytes for a JSON-native mapping. + + Args: + obj: A JSON object. Non-string keys, non-finite floats, bytes, sets, + and arbitrary objects are rejected rather than stringified. + profile: Which canonicalization profile to apply. Defaults to + :data:`RFC8785`. Pass :data:`LEGACY_SORT_KEYS` only to recompute + the hash of a pre-migration receipt. + + Raises: + CanonicalJSONError: The value cannot be canonicalized, or (under + :data:`RFC8785`) carries an integer outside the safe range or an + unpaired surrogate. + """ + if profile == LEGACY_SORT_KEYS: + return _serialize_legacy(obj) + if profile != RFC8785: + raise CanonicalJSONError( + f"unknown canonicalization profile {profile!r}; expected " + f"{RFC8785!r} or {LEGACY_SORT_KEYS!r}" + ) + if not isinstance(obj, Mapping): + raise CanonicalJSONError("canonical_json_bytes requires a JSON object at the top level") + return _serialize_rfc8785(obj, path="$").encode("utf-8") + + +def sha256_canonical( + obj: Mapping[str, Any], + *, + exclude_receipt_hash: bool = True, + profile: CanonicalProfile = DEFAULT_PROFILE, +) -> str: + """Hash canonical JSON bytes with SHA-256. + + When ``exclude_receipt_hash`` is true, ``receipt.canonical_hash`` is + removed before hashing so a report can contain its own receipt without a + circular dependency. + """ + payload: Mapping[str, Any] = _without_receipt_hash(obj) if exclude_receipt_hash else obj + return hashlib.sha256(canonical_json_bytes(payload, profile=profile)).hexdigest() + + +def strict_json_loads(text: str | bytes) -> Any: + """Parse JSON, refusing any object that repeats a key. + + ``json.loads`` keeps the last occurrence of a repeated key and reports + nothing. A receipt computed over that result attests to a document the + sender did not send, so every receipt-covered read goes through here. + """ + + def _hook(pairs: list[tuple[str, Any]]) -> dict[str, Any]: + seen: set[str] = set() + for key, _ in pairs: + if key in seen: + raise DuplicateJSONKeyError( + f"JSON object repeats key {key!r}; the value that would " + "survive is not the document that was sent" + ) + seen.add(key) + return dict(pairs) + + return json.loads(text, object_pairs_hook=_hook) + + +def assert_no_confusable_keys(obj: Any, *, path: str = "$") -> None: + """Raise if any object contains two keys sharing a Unicode normal form. + + This is an **opt-in producer lint**, not part of canonicalization. Under + RFC 8785 such keys are simply two keys and hashing proceeds correctly; but + a document carrying both is nearly always a bug -- two fields where one was + intended -- and a producer that would rather fail than ship it can call + this first. + + Keeping it out of the hash path is deliberate. v1 merged such keys *inside* + canonicalization and silently dropped a field; the lesson is that a + canonicalizer must not mutate, and a mutation-free canonicalizer has no + business deciding a document is wrong. + """ + if isinstance(obj, Mapping): + by_normal_form: dict[str, str] = {} + for key in obj: + if not isinstance(key, str): + continue + normal = unicodedata.normalize("NFC", key) + previous = by_normal_form.get(normal) + if previous is not None and previous != key: + raise ConfusableKeyError( + f"{path} contains keys {previous!r} and {key!r}, which are " + "byte-distinct but share the Unicode normal form " + f"{normal!r}. Under RFC 8785 these are two separate fields." + ) + by_normal_form[normal] = key + for key, value in obj.items(): + assert_no_confusable_keys(value, path=f"{path}.{key}") + elif isinstance(obj, Sequence) and not isinstance(obj, (bytes, bytearray, str)): + for index, item in enumerate(obj): + assert_no_confusable_keys(item, path=f"{path}[{index}]") + + +def _without_receipt_hash(obj: Mapping[str, Any]) -> dict[str, Any]: + if not isinstance(obj, Mapping): + raise CanonicalJSONError("report payload must be a JSON object") + report = dict(obj) + receipt = report.get("receipt") + if isinstance(receipt, Mapping): + receipt_copy = dict(receipt) + receipt_copy.pop("canonical_hash", None) + report["receipt"] = receipt_copy + return report diff --git a/src/cc/reporting/cli.py b/src/cc/reporting/cli.py index a86e082..1bbdb9a 100644 --- a/src/cc/reporting/cli.py +++ b/src/cc/reporting/cli.py @@ -12,6 +12,7 @@ from typing import Any from cc.evidence.claim_governance import GovernanceVerdict, verify_claim_governance +from cc.reporting.canonical import strict_json_loads from cc.reporting.report import ( CLAIM_LEVEL_DESCRIPTIONS, CLAIM_LEVELS, @@ -237,7 +238,10 @@ def _cmd_verify_claim_governance(args: argparse.Namespace) -> int: def _read_json(path: Path) -> dict[str, Any]: if not path.exists(): raise FileNotFoundError(f"JSON input not found: {path}") - payload = json.loads(path.read_text(encoding="utf-8")) + # strict_json_loads, not json.loads: a repeated key would otherwise be + # silently resolved last-wins, and the receipt computed over the survivor + # would attest to a document the sender did not send (finding F-07). + payload = strict_json_loads(path.read_text(encoding="utf-8")) if not isinstance(payload, dict): raise ValueError(f"{path} must contain a JSON object") return payload diff --git a/src/cc/reporting/report.py b/src/cc/reporting/report.py index 2d20616..49df8b7 100644 --- a/src/cc/reporting/report.py +++ b/src/cc/reporting/report.py @@ -45,14 +45,15 @@ ) from cc import __version__ as framework_version_default -from cc.reporting.canonical import sha256_canonical +from cc.reporting.canonical import DEFAULT_PROFILE, sha256_canonical SCHEMA_VERSION = "cc.report.v0.3.1" HASH_ALGORITHM = "sha256" -CANONICALIZATION_METHOD = ( - "json.dumps(sort_keys=True,separators=(',', ':'),ensure_ascii=False,allow_nan=False); " - "receipt.canonical_hash excluded" -) +#: Profile written into new receipts. Reports produced before the RFC 8785 +#: migration carry the legacy profile instead, and verification dispatches on +#: whichever profile the receipt itself declares -- see +#: ``docs/architecture/CANONICAL_PROFILE.md``. +CANONICALIZATION_METHOD = DEFAULT_PROFILE # Report maturity/support labels. # @@ -323,9 +324,13 @@ def _non_diagnostic_claims_need_boundaries(self) -> ClaimSummaryModel: class ReportReceiptModel(_StrictReportModel): canonical_hash: str = Field(pattern=r"^[0-9a-f]{64}$") hash_algorithm: Literal["sha256"] + #: Both profiles are accepted on read. New reports are written with + #: the RFC 8785 profile; the legacy one appears only on pre-migration receipts, + #: which must stay verifiable. canonicalization_method: Literal[ + "cc.canonical.v2/RFC8785; receipt.canonical_hash excluded", "json.dumps(sort_keys=True,separators=(',', ':'),ensure_ascii=False,allow_nan=False); " - "receipt.canonical_hash excluded" + "receipt.canonical_hash excluded", ] previous_hash: str | None = Field(default=None, pattern=r"^[0-9a-f]{64}$") @@ -384,11 +389,17 @@ def _receipt_and_boundary_invariants(self) -> CCReport: + ", ".join(overclaims) ) - computed_hash = sha256_canonical(payload) + # Dispatch on the profile the receipt declares, not on the current + # default. Recomputing a pre-migration receipt under RFC 8785 would + # report a mismatch for a report that is in fact intact, which is the + # opposite of what a receipt is for. + computed_hash = sha256_canonical(payload, profile=self.receipt.canonicalization_method) if computed_hash != self.receipt.canonical_hash: raise ValueError( "receipt.canonical_hash does not match canonical report payload: " - f"expected {self.receipt.canonical_hash}, computed {computed_hash}" + f"expected {self.receipt.canonical_hash}, computed {computed_hash} " + f"under canonicalization profile " + f"{self.receipt.canonicalization_method!r}" ) return self diff --git a/tests/unit/canonical/test_canonical_profiles.py b/tests/unit/canonical/test_canonical_profiles.py new file mode 100644 index 0000000..613119e --- /dev/null +++ b/tests/unit/canonical/test_canonical_profiles.py @@ -0,0 +1,303 @@ +"""The canonicalization corpus, enforced. + +Every class in ``scripts/canonicalization_probe.py`` is asserted here, so a +regression in the kernel fails the suite rather than only the probe. The +binding rule for this file: **never weaken a case to make a test pass.** A +class that starts failing is a kernel regression, not a corpus problem. + +Provenance is ``census``. The classes are curated and adversarial, their number +is an authoring decision, and no coverage claim or confidence interval attaches +to a pass count over them. +""" + +from __future__ import annotations + +import json +import math +import subprocess +import sys +from pathlib import Path + +import pytest + +from cc.reporting.canonical import ( + DEFAULT_PROFILE, + LEGACY_SORT_KEYS, + MAX_SAFE_INTEGER, + RFC8785, + CanonicalJSONError, + ConfusableKeyError, + DuplicateJSONKeyError, + assert_no_confusable_keys, + canonical_json_bytes, + sha256_canonical, + strict_json_loads, +) + +ROOT = Path(__file__).resolve().parents[3] + +KEY_NFC = "é" # e-acute, precomposed +KEY_NFD = "é" # e + combining acute + + +def _probe_json() -> dict: + proc = subprocess.run( + [sys.executable, str(ROOT / "scripts" / "canonicalization_probe.py"), "--json"], + capture_output=True, + text=True, + check=False, + cwd=ROOT, + ) + return json.loads(proc.stdout) + + +# --- the corpus gate ---------------------------------------------------------- + + +def test_probe_reports_no_unintended_kernel_under_the_default_profile(): + """The acceptance gate for W3: zero unintended-kernel, zero rejection-asymmetry.""" + report = _probe_json() + v2 = report["profiles"]["v2"] + counts = v2["verdict_counts"] + + assert counts.get("unintended-kernel", 0) == 0, v2["classes"] + assert counts.get("rejection-asymmetry", 0) == 0, v2["classes"] + assert counts.get("over-discrimination", 0) == 0, v2["classes"] + assert v2["failing"] == 0 + # The census must carry its own boundary, not just its counts. + assert report["provenance"] == "census" + assert report["confidence_intervals"] is None + + +def test_probe_still_records_the_legacy_defects(): + """v1 must keep failing. It is retained as history, not as an option. + + If this ever passes trivially it means the legacy profile was "fixed", + which would silently change the hash of every pre-migration receipt and + defeat the reason v1 exists at all. + """ + v1 = _probe_json()["profiles"]["v1"] + assert v1["verdict_counts"].get("unintended-kernel", 0) == 2 + assert v1["silent_key_loss"]["keys_out"] < v1["silent_key_loss"]["keys_in"] + + +# --- F-03: the silent key merge ----------------------------------------------- + + +def test_default_profile_keeps_unicode_distinct_keys_distinct(): + assert canonical_json_bytes({KEY_NFC: 1}) != canonical_json_bytes({KEY_NFD: 1}) + + +def test_default_profile_does_not_lose_a_key(): + """Two byte-distinct keys go in; two come out, and neither is dropped.""" + record = {KEY_NFC: 1, KEY_NFD: 2, "plain": 3} + decoded = strict_json_loads(canonical_json_bytes(record).decode("utf-8")) + assert len(decoded) == 3 + assert decoded[KEY_NFC] == 1 + assert decoded[KEY_NFD] == 2 + + +def test_nested_unicode_keys_also_survive(): + """A guard inspecting only top-level keys would miss this.""" + assert canonical_json_bytes({"outer": {KEY_NFC: 1}}) != canonical_json_bytes( + {"outer": {KEY_NFD: 1}} + ) + + +def test_legacy_profile_still_merges_them(): + """Bug-compatible on purpose: old receipts must stay verifiable.""" + merged = canonical_json_bytes({KEY_NFC: 1, KEY_NFD: 2}, profile=LEGACY_SORT_KEYS) + assert len(json.loads(merged)) == 1 + + +# --- the opt-in producer lint ------------------------------------------------- + + +def test_confusable_key_lint_flags_what_canonicalization_permits(): + record = {KEY_NFC: 1, KEY_NFD: 2} + canonical_json_bytes(record) # canonicalization itself is content-neutral + with pytest.raises(ConfusableKeyError, match="normal form"): + assert_no_confusable_keys(record) + + +def test_confusable_key_lint_descends_into_nested_structures(): + with pytest.raises(ConfusableKeyError): + assert_no_confusable_keys({"a": [{"b": {KEY_NFC: 1, KEY_NFD: 2}}]}) + + +def test_confusable_key_lint_accepts_ordinary_documents(): + assert_no_confusable_keys({"a": 1, "b": [{"c": 2}], "d": None}) + + +# --- F-04: RFC 8785 number forms ---------------------------------------------- + + +@pytest.mark.parametrize( + ("value", "expected"), + [ + (1.0, "1"), + (-0.0, "0"), + (0.0, "0"), + (100.0, "100"), + (0.1, "0.1"), + (1.5, "1.5"), + (1e-7, "1e-7"), + (1e-6, "0.000001"), + (1e20, "100000000000000000000"), + (1e21, "1e+21"), + (1e30, "1e+30"), + (5e-324, "5e-324"), + (1.7976931348623157e308, "1.7976931348623157e+308"), + (-1.5, "-1.5"), + (1.2345e-10, "1.2345e-10"), + (1234567890.0, "1234567890"), + ], +) +def test_number_forms_follow_ecmascript_tostring(value, expected): + assert canonical_json_bytes({"n": value}).decode("utf-8") == f'{{"n":{expected}}}' + + +def test_negative_zero_and_zero_share_an_identity(): + """scipy returns -0.0 at a zero lower bound, so this reaches real reports.""" + assert sha256_canonical({"n": -0.0}) == sha256_canonical({"n": 0.0}) + + +def test_int_and_float_of_equal_value_share_an_identity(): + """JSON has one number type; 1 and 1.0 are the same JSON number.""" + assert canonical_json_bytes({"n": 1}) == canonical_json_bytes({"n": 1.0}) + + +# --- F-05: the integer safe range --------------------------------------------- + + +@pytest.mark.parametrize("value", [2**53, 2**53 + 1, 10**30, -(2**53), -(10**30)]) +def test_integers_outside_the_safe_range_are_refused(value): + """A JS JSON.parse collapses these before any verifier code runs.""" + with pytest.raises(CanonicalJSONError, match="safe range"): + canonical_json_bytes({"n": value}) + + +@pytest.mark.parametrize("value", [0, 1, -1, MAX_SAFE_INTEGER, -MAX_SAFE_INTEGER]) +def test_integers_inside_the_safe_range_are_accepted(value): + assert canonical_json_bytes({"n": value}) == f'{{"n":{value}}}'.encode() + + +def test_floats_are_not_subject_to_the_integer_bound(): + """The bound exists because Python ints are unbounded. Floats already are not.""" + assert canonical_json_bytes({"n": 1e300}).decode("utf-8") == '{"n":1e+300}' + + +# --- F-07: duplicate keys on read --------------------------------------------- + + +def test_strict_json_loads_refuses_a_repeated_key(): + with pytest.raises(DuplicateJSONKeyError, match="repeats key"): + strict_json_loads('{"amount":1,"amount":2}') + + +def test_strict_json_loads_refuses_a_repeated_key_when_nested(): + with pytest.raises(DuplicateJSONKeyError): + strict_json_loads('{"outer":{"a":1,"a":2}}') + + +def test_strict_json_loads_accepts_ordinary_json(): + assert strict_json_loads('{"a":1,"b":[1,2],"c":{"d":null}}') == { + "a": 1, + "b": [1, 2], + "c": {"d": None}, + } + + +# --- string and key handling -------------------------------------------------- + + +def test_control_characters_are_escaped_with_short_forms_where_defined(): + # \u0001 has no short escape, so it must come out as \\u0001; tab and + # newline do have one and must not be emitted as \\u0009 / \\u000a. + got = canonical_json_bytes({"k": "a\tb\nc\u0001d"}).decode("utf-8") + assert got == '{"k":"a\\tb\\nc\\u0001d"}' + + +def test_non_ascii_is_emitted_literally_not_escaped(): + text = "café" + assert canonical_json_bytes({"k": text}).decode("utf-8") == f'{{"k":"{text}"}}' + + +def test_keys_sort_by_utf16_code_unit_not_code_point(): + """The orders disagree above the BMP. + + U+10000 encodes as the surrogate pair D800 DC00, so it sorts *before* + U+FFFD under UTF-16 and *after* it under code point. + """ + bmp = "�" + astral = "\U00010000" + got = canonical_json_bytes({bmp: 1, astral: 2}).decode("utf-8") + assert got.index(astral) < got.index(bmp) + + +def test_unpaired_surrogates_are_refused(): + lone = "\ud800" + with pytest.raises(CanonicalJSONError, match="surrogate"): + canonical_json_bytes({"k": lone}) + with pytest.raises(CanonicalJSONError, match="surrogate"): + canonical_json_bytes({lone: "v"}) + + +# --- profile plumbing --------------------------------------------------------- + + +def test_default_profile_is_the_rfc8785_one(): + assert DEFAULT_PROFILE == RFC8785 + + +def test_unknown_profile_fails_closed(): + with pytest.raises(CanonicalJSONError, match="unknown canonicalization profile"): + canonical_json_bytes({"a": 1}, profile="cc.canonical.v99") # type: ignore[arg-type] + + +def test_profiles_disagree_which_is_the_point_of_versioning(): + """If these ever agreed, dispatching on the declared profile would be moot.""" + payload = {"n": 1.0, "m": -0.0} + assert canonical_json_bytes(payload, profile=RFC8785) != canonical_json_bytes( + payload, profile=LEGACY_SORT_KEYS + ) + + +# --- shared refusals ---------------------------------------------------------- + + +@pytest.mark.parametrize("profile", [RFC8785, LEGACY_SORT_KEYS]) +def test_both_profiles_refuse_non_finite_floats(profile): + for bad in (math.nan, math.inf, -math.inf): + with pytest.raises(CanonicalJSONError): + canonical_json_bytes({"n": bad}, profile=profile) + + +@pytest.mark.parametrize("profile", [RFC8785, LEGACY_SORT_KEYS]) +def test_both_profiles_refuse_non_string_keys(profile): + with pytest.raises(CanonicalJSONError, match="non-string key"): + canonical_json_bytes({1: "v"}, profile=profile) # type: ignore[dict-item] + + +@pytest.mark.parametrize("profile", [RFC8785, LEGACY_SORT_KEYS]) +def test_both_profiles_refuse_non_json_native_values(profile): + for bad in ({"s"}, b"bytes", object()): + with pytest.raises(CanonicalJSONError, match="non-JSON-native"): + canonical_json_bytes({"k": bad}, profile=profile) + + +# --- determinism -------------------------------------------------------------- + + +def test_key_order_does_not_affect_identity(): + assert canonical_json_bytes({"b": 1, "a": 2}) == canonical_json_bytes({"a": 2, "b": 1}) + + +def test_array_order_does_affect_identity(): + assert canonical_json_bytes({"xs": [1, 2]}) != canonical_json_bytes({"xs": [2, 1]}) + + +def test_canonical_bytes_are_stable_across_repeated_calls(): + payload = {"z": [1, {"b": 2, "a": 1}], "a": "x", "n": 0.1} + first = canonical_json_bytes(payload) + assert all(canonical_json_bytes(payload) == first for _ in range(50)) diff --git a/tests/unit/evidence/test_transparency_log_adversarial.py b/tests/unit/evidence/test_transparency_log_adversarial.py index 8f8ed40..c268d32 100644 --- a/tests/unit/evidence/test_transparency_log_adversarial.py +++ b/tests/unit/evidence/test_transparency_log_adversarial.py @@ -148,12 +148,47 @@ def test_merkle_canonicalization_matches_reporting_canonical_json() -> None: assert MerkleLog(records=[record]).leaf_hashes == [expected] -def test_merkle_log_normalizes_unicode_nfc_like_reporting() -> None: +def test_merkle_log_does_not_normalize_unicode() -> None: + """Byte-distinct strings stay distinct. Their normal forms are not the log's business. + + This test previously asserted the opposite -- that a composed and a + decomposed spelling produce the *same* leaf hash -- and was named + ``test_merkle_log_normalizes_unicode_nfc_like_reporting``. That behavior was + finding F-03: canonicalization applied NFC to every key and wrote the + results into a fresh dict, so two byte-distinct keys sharing a normal form + silently became one, with no error, and the receipt attested to a document + with a field missing. + + RFC 8785 is explicit that normalization is the producer's responsibility. A + canonicalizer that mutates content is not a canonicalizer, and a + transparency log must record what was written rather than a normalized + rendering of it. Under ``cc.canonical.v2`` the two spellings are two + strings, which is what JSON says they are. + + Producers that would rather refuse such a document can call + ``assert_no_confusable_keys`` before hashing; it is deliberately not on the + hash path. + """ composed = {"é": "café", "event": "audit"} decomposed = {"e\u0301": "cafe\u0301", "event": "audit"} - assert canonical_json_bytes(composed) == canonical_json_bytes(decomposed) - assert leaf_hash(composed) == leaf_hash(decomposed) + assert canonical_json_bytes(composed) != canonical_json_bytes(decomposed) + assert leaf_hash(composed) != leaf_hash(decomposed) + + +def test_merkle_log_keeps_both_key_spellings_in_one_record() -> None: + """The silent key loss of F-03, asserted not to recur. + + Under the legacy profile this record went in with two keys and came out + with one, and nothing raised. + """ + record = {"é": 1, "e\u0301": 2, "event": "audit"} + + decoded = json.loads(canonical_json_bytes(record).decode("utf-8")) + + assert len(decoded) == 3 + assert decoded["é"] == 1 + assert decoded["e\u0301"] == 2 def test_merkle_log_rejects_non_string_mapping_keys(tmp_path: Path) -> None: diff --git a/tests/unit/reporting/test_reporting.py b/tests/unit/reporting/test_reporting.py index 8489dc2..84501ed 100644 --- a/tests/unit/reporting/test_reporting.py +++ b/tests/unit/reporting/test_reporting.py @@ -296,10 +296,14 @@ def test_schema_contract_matches_report_builder_constants() -> None: ) assert schema_claim_levels == CLAIM_LEVELS - assert ( - schema["properties"]["receipt"]["properties"]["canonicalization_method"]["const"] - == CANONICALIZATION_METHOD - ) + # The schema accepts both canonicalization profiles so pre-migration + # receipts stay verifiable; the builder writes the first of them. + schema_profiles = schema["properties"]["receipt"]["properties"]["canonicalization_method"][ + "enum" + ] + assert CANONICALIZATION_METHOD in schema_profiles + assert schema_profiles[0] == CANONICALIZATION_METHOD + assert len(schema_profiles) == 2 report = _report() report["claim"]["non_claims"] = [] From 1bf4c7a49e6f9d1416f45876a24bf37541d328d1 Mon Sep 17 00:00:00 2001 From: Claude Date: Thu, 20 Aug 2026 00:21:26 +0000 Subject: [PATCH 04/15] feat(evidence-card): emit cards with three labels that cannot collapse The Evidence Commons needs an instrument that emits evidence cards. This is that instrument, scoped to cc-framework: the emitter and its schema, not an Atlas, a site, or any surface that renders them. A card is a claim plus everything needed to DISAGREE with it: how it was operationalized, the command that reproduces it, what would falsify it, what it assumes, and what it explicitly does not claim. The design constraint is negative. A card is not a trust score, and nothing here computes one. Three labels travel with every card and they are orthogonal: evidence_state local-only | aws-synth-only | aws-live | illustrative verdict pass | fail | unverifiable | not-run publication_state draft | released | superseded | retracted None implies another. A pass that is local-only says nothing about deployed behaviour. A retracted card may still carry a pass: the run happened and the claim was withdrawn anyway. That orthogonality is enforced rather than documented -- tests assert the card exposes no status/score/is_ok/badge/health property, that the site manifest carries no aggregate, that the schema defines none, that render_labels returns all three or raises, and that all 64 label combinations are constructible. If a future change couples two labels, the last of those fails. Two fields most claim registries treat as optional are mandatory here: falsifier and non_claims. Both are now required in the claim-boundary manifest itself, enforced by the validator, so every claim in this repository carries a falsifier because one cannot be added without it. not-run is the default verdict. A card cannot acquire a passing verdict by being written confidently; a pass is reachable only via --run, which executes the commands. The committed cards are always the not-run scaffold, asserted by a test: verdicts are host-specific and a repository shipping someone's laptop results as published evidence is doing the thing this object exists to prevent. unverifiable is not fail, and the distinction earned itself on the first run. make test-kernel exited non-zero because its dependency-install step could not reach the network -- the kernel tests never executed. The first version of the harness mapped any non-zero exit to fail and so reported a failure nobody observed. It now attributes a fail only to pytest exit code 1, whose meaning is documented; everything else is unverifiable with the reason recorded. Per-command outcomes are preserved rather than collapsed, so a card shows [pass=1, unverifiable=1] instead of hiding that the tests passed. Also in this change: - The manifest's supporting_tests_or_commands held bare test paths. A path is not a command, so seven were prefixed with `pytest `. The validator now checks that path-like tokens in commands resolve on disk, closing one of the two residual gaps recorded in F-12. - Under --run, commands execute only if they match a small allowlist. A card generator that shells out arbitrary strings from a data file is a code-execution surface, not an evidence tool. - The git revision records a -dirty suffix when the working tree differs. A card bound to a revision the tree does not match is bound to the wrong thing. - Cards bind supporting files by digest, so editing one makes them stale. That is the feature working, and the ordering is documented. Current state: 8 claims, evidence_state local-only=7 aws-synth-only=1, verdict not-run=8, publication_state draft=8. The single synthetic lane is the enterprise reference, whose card says on its face that emulated evidence is never live evidence. Nothing here is aws-live. Scope note: this repository emits cards and hosts no renderer. Pricing, go-to-market, and venture planning are out of scope for a research repository, matching the boundary the sibling institutional repository enforces with a test. Verified: suite 873 -> 907 passing, 0 failing, 9 skipped. All 8 committed cards validate against schemas/cc.evidence_card.v1.json. Manifest validator clean. Canonicalization census, Node conformance agreement, and the conformance corpus all still pass. Ruff check and format clean on every new and touched file. Co-Authored-By: Claude Opus 5 Claude-Session: https://claude.ai/code/session_01VnVFub3xq2vwPjjz3MUqZV --- .github/workflows/ci.yml | 4 +- Makefile | 8 +- docs/api.md | 15 + docs/architecture/EVIDENCE_CARDS.md | 192 ++++++ docs/claims/claim_boundary_manifest.v0.1.json | 86 ++- .../cards/enterprise.reference_v0_1.json | 68 +++ .../cards/evidence.non_claim_boundaries.json | 72 +++ .../kernel.finite_sample_outer_interval.json | 63 ++ .../cards/kernel.frechet_bounds.json | 63 ++ .../cards/kernel.identified_interval.json | 57 ++ evidence-cards/cards/open_core.strategy.json | 47 ++ .../cards/release.paper_core_v0_3_rc1.json | 68 +++ .../cards/reporting.receipt_integrity.json | 77 +++ evidence-cards/site-evidence-manifest.v1.json | 569 ++++++++++++++++++ schemas/cc.evidence_card.v1.json | 296 +++++++++ scripts/build_evidence_cards.py | 275 +++++++++ scripts/validate_claim_boundary_manifest.py | 39 +- src/cc/evidence_card/__init__.py | 40 ++ src/cc/evidence_card/_card.py | 318 ++++++++++ .../unit/evidence_card/test_evidence_card.py | 288 +++++++++ 20 files changed, 2626 insertions(+), 19 deletions(-) create mode 100644 docs/architecture/EVIDENCE_CARDS.md create mode 100644 evidence-cards/cards/enterprise.reference_v0_1.json create mode 100644 evidence-cards/cards/evidence.non_claim_boundaries.json create mode 100644 evidence-cards/cards/kernel.finite_sample_outer_interval.json create mode 100644 evidence-cards/cards/kernel.frechet_bounds.json create mode 100644 evidence-cards/cards/kernel.identified_interval.json create mode 100644 evidence-cards/cards/open_core.strategy.json create mode 100644 evidence-cards/cards/release.paper_core_v0_3_rc1.json create mode 100644 evidence-cards/cards/reporting.receipt_integrity.json create mode 100644 evidence-cards/site-evidence-manifest.v1.json create mode 100644 schemas/cc.evidence_card.v1.json create mode 100755 scripts/build_evidence_cards.py create mode 100644 src/cc/evidence_card/__init__.py create mode 100644 src/cc/evidence_card/_card.py create mode 100644 tests/unit/evidence_card/test_evidence_card.py diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index ba75a05..e67a9d7 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -75,6 +75,8 @@ jobs: # Gates on cc.canonical.v2 only. v1 is retained read-only for # historical receipts and is expected to carry its known defects. run: python scripts/canonicalization_probe.py + - name: Evidence cards are current + run: python scripts/build_evidence_cards.py --check - name: Corpus is current run: python scripts/build_conformance_corpus.py --check - name: Independent Node implementation agrees @@ -82,7 +84,7 @@ jobs: - name: Differential fuzz run: python scripts/differential_compose.py --cases 4000 --seed 1 - name: Conformance, canonicalization and acceptance suites - run: pytest -q tests/conformance tests/acceptance tests/unit/compose tests/unit/cli tests/unit/canonical + run: pytest -q tests/conformance tests/acceptance tests/unit/compose tests/unit/cli tests/unit/canonical tests/unit/evidence_card test-extra-is-sufficient: name: the documented install path works diff --git a/Makefile b/Makefile index 716ed6c..75339ca 100644 --- a/Makefile +++ b/Makefile @@ -113,7 +113,7 @@ GOV_CAPSULE_TESTS := tests/integration/test_claim_governance_capsule.py dev install setup init lock deps \ fmt lint type security package-build \ test test-unit test-int test-kernel test-release test-reporting test-week3 test-week6 cov bench \ - conformance differential acceptance test-compose canon-probe \ + conformance differential acceptance test-compose canon-probe evidence-cards \ check-artifact-boundary check-repro-clean \ enterprise-smoke \ reproduce-smoke reproduce-mvp reproduce-figures figures reports ccc \ @@ -327,6 +327,12 @@ test-compose: install # Reproduces the S1 canonicalization findings. Exits non-zero while any # unintended-kernel class remains, so the findings stay falsifiable. +# Evidence cards for an external Atlas. The committed cards are the not-run +# scaffold: verdicts are host-specific and must not be published from a laptop. +evidence-cards: install + PYTHONPATH=src $(VENV_DIR)/bin/python scripts/build_evidence_cards.py --check + PYTHONPATH=src $(VENV_DIR)/bin/pytest tests/unit/evidence_card -q + canon-probe: install PYTHONPATH=src $(VENV_DIR)/bin/python scripts/canonicalization_probe.py PYTHONPATH=src $(VENV_DIR)/bin/pytest tests/unit/canonical -q diff --git a/docs/api.md b/docs/api.md index 24d5878..58fd1ff 100644 --- a/docs/api.md +++ b/docs/api.md @@ -50,6 +50,21 @@ implementation. A permitted verdict means the guard found no reason to refuse. It does not mean an estimate is correct or a measurement was well designed. +`cc.evidence_card` is the stable surface for emitting `cc.evidence_card.v1` +cards and the `cc.site_evidence_manifest.v1` bundle. Its supported symbols are +the names exported by `cc.evidence_card.__all__`, including `EvidenceCard`, +`ArtifactRef`, `cards_to_site_manifest`, and `render_labels`. + +Its three labels — `evidence_state`, `verdict`, and `publication_state` — are +orthogonal and part of the contract. No consumer may collapse them into a single +status, and the module deliberately provides no composite property, no aggregate +field, and no single-label renderer. Adding one is a breaking change to this +contract, not a convenience. + +`cc.evidence_card` does not establish that any claim is true. A card records a +claim, the command that tests it, what would falsify it, and what it does not +claim. + The evidence/reporting surface is stable only where it is used for release evidence and claim-governance capsules: diff --git a/docs/architecture/EVIDENCE_CARDS.md b/docs/architecture/EVIDENCE_CARDS.md new file mode 100644 index 0000000..c58a3b6 --- /dev/null +++ b/docs/architecture/EVIDENCE_CARDS.md @@ -0,0 +1,192 @@ +# Evidence Cards + +> **Status: implemented.** `cc.evidence_card` emits `cc.evidence_card.v1` cards +> and a `cc.site_evidence_manifest.v1` bundle from the claim-boundary manifest. +> +> **Non-claim.** A card lists a claim and the command that tests it. It does not +> establish that the claim is true. A card carrying `verdict: pass` establishes +> only that the named command exited successfully on some host — nothing about +> deployment, safety, or the world. + +An evidence card is a claim together with everything a reader needs in order to +**disagree** with it: how it was operationalized, which command reproduces it, +what would falsify it, what it assumes, and what it explicitly does not claim. + +This repository emits cards. It does not host an Atlas, a site, or any surface +that renders them — those live elsewhere. What is here is the instrument. + +--- + +## The object + +``` +claim → maturity → source revision → artifact digests → command + → result → falsifier → counterevidence → assumptions → non-claims +``` + +Two fields are required that most claim registries treat as optional: + +- **`falsifier`** — what observation would show the claim is wrong. A claim with + no falsifier is an assertion, not evidence, and `EvidenceCard.__init__` + refuses it. +- **`non_claims`** — what the card explicitly does not establish. Also required. + +Both are now mandatory *in the claim-boundary manifest itself*, enforced by +`scripts/validate_claim_boundary_manifest.py`. Every claim in this repository +carries a falsifier because the validator will not accept one that does not. + +--- + +## Three labels that never collapse + +``` +evidence_state local-only | aws-synth-only | aws-live | illustrative +verdict pass | fail | unverifiable | not-run +publication_state draft | released | superseded | retracted +``` + +They answer different questions and **none implies another**: + +- A `pass` that is `local-only` says nothing about deployed behaviour. +- `aws-live` evidence can record a `fail` — provenance is not quality. +- A `retracted` card may still carry a `pass`: the run happened, and the claim + was withdrawn anyway. +- `released` says a card was reviewed for release, not that its claim is true. + +This orthogonality is enforced, not merely documented: + +| Enforcement | Where | +|---|---| +| No `status`, `score`, `is_ok`, `badge`, `health`, `overall` on the card | a test asserts each is absent | +| No aggregate field in the site manifest | a test asserts absence there too | +| No single-label renderer | `render_labels` returns all three or raises | +| Schema defines no aggregate | asserted against the committed schema | +| All 64 label combinations constructible | a test builds every one | + +The last row is the important one. If a future change ever makes one label +constrain another — "a retracted card cannot be passing", say — that test +fails. The point of a failure museum is that withdrawn claims keep their +results visible. + +Every label value ships with a **meaning string** rendered beside it, so a bare +token in a UI is never left to interpretation: + +> `not-run` — The command has not been executed for this card. No result is +> claimed. + +--- + +## `not-run` is the default, and that is the design + +A card cannot acquire a passing verdict by being written confidently. The +generator emits `not-run` unless `--run` is passed, and `--run` executes the +commands and records what actually happened. + +The committed cards in `evidence-cards/` are always the **not-run scaffold**. A +test asserts this: `pass` and `fail` counts must both be zero in the committed +manifest. Verdicts are host-specific, and a repository that ships someone's +laptop results as published evidence is doing the thing this object exists to +prevent. + +--- + +## `unverifiable` is not `fail` + +The distinction earned itself on the first run of the generator. + +`make test-kernel` exited non-zero because its dependency-install step could not +reach the network. The kernel tests never executed. The first version of the +harness mapped any non-zero exit to `fail`, and so reported a **failure nobody +observed**. + +The harness now never guesses. A non-zero exit becomes `fail` only when it can +be attributed to a check running and not succeeding — pytest exit code 1, whose +meaning is documented. Codes 2–5 mean usage error, internal error, +interruption, or no tests collected; in each the check did not run. Everything +else is `unverifiable`, with the reason recorded. + +Per-command outcomes are preserved rather than collapsed: + +``` +[pass=1, unverifiable=1] pytest tests/unit/kernel/test_classical_frechet_special_cases.py + -> exit 0: 6 passed in 0.63s | make test-kernel -> exit 2: ... + | exit not attributable to a check running +``` + +The card verdict is the worst outcome present — conservative — but a reader can +still see that the tests passed and only the `make` target was unrunnable. + +--- + +## What the generator does + +```bash +python scripts/build_evidence_cards.py # emit the not-run scaffold +python scripts/build_evidence_cards.py --run # execute commands, record results +python scripts/build_evidence_cards.py --check # verify the committed scaffold is current +``` + +It reads `docs/claims/claim_boundary_manifest.v0.1.json`, binds each claim's +supporting files by SHA-256, records the git revision (with a `-dirty` suffix +when the working tree differs — a card bound to a revision the tree does not +match is bound to the wrong thing), and writes one card per claim plus the site +manifest. + +Because cards bind their supporting files **by digest**, editing any of those +files makes the committed cards stale. Regenerate as the last step before +committing; `--check` runs in CI and will catch it otherwise. That staleness is +the feature working: a card whose artifact digests no longer match the tree is +describing a repository that no longer exists. + +Under `--run`, commands are executed only if they match a small allowlist +(`pytest `, `python `, `make `). A card generator that shells out arbitrary +strings from a data file is a code-execution surface, not an evidence tool. +Anything outside the allowlist is recorded `unverifiable` with that as the +reason. + +--- + +## Current state + +Eight claims, from the claim-boundary manifest: + +| Label | Counts | +|---|---| +| `evidence_state` | `local-only` 7, `aws-synth-only` 1 | +| `verdict` | `not-run` 8 | +| `publication_state` | `draft` 8 | + +The single `aws-synth-only` card is the enterprise reference, whose evidence is +moto emulation. Its assumptions say so on the card: *"Emulated evidence is never +live evidence, and no live-AWS claim rests on this lane."* Nothing in this +repository is `aws-live`, and nothing should claim to be. + +All eight are `draft`. Release is a human decision in a publication workflow, +not a side effect of generation. + +--- + +## What this does not do + +Stated so absence is not read as capability: + +- **No Atlas, site, or renderer.** This repository emits cards. Anything that + displays them is a separate surface with its own design and its own review. +- **No hosting, no AWS, no deployment.** Nothing here provisions or publishes + anything. +- **No cross-repository aggregation.** The cards describe *this* repository's + claims. Combining cards from several projects into one view is a different + problem with different failure modes, and none of them are solved here. +- **No verdict earned by generation.** The committed scaffold claims no results. +- **No commercial material.** Pricing, go-to-market, and venture planning are + out of scope for a research repository, and the sibling institutional + repository enforces the equivalent rule with a test. + +## Binding rules + +- **Never add a composite status.** Not to the card, the manifest, or the + schema. The tests are the tripwire; do not edit them to make one pass. +- **Never commit run verdicts.** The committed scaffold is `not-run`. +- **Never let a claim into the manifest without a falsifier.** The validator + refuses it; do not relax the validator. +- **`unverifiable` is never rounded to `fail` or `pass`.** It is its own fact. diff --git a/docs/claims/claim_boundary_manifest.v0.1.json b/docs/claims/claim_boundary_manifest.v0.1.json index 9d170fd..57e55d1 100644 --- a/docs/claims/claim_boundary_manifest.v0.1.json +++ b/docs/claims/claim_boundary_manifest.v0.1.json @@ -1,7 +1,7 @@ { "schema_version": "cc.claim_boundary_manifest.v0.1", "generated_for": "cc-framework", - "purpose": "Map public CC-Framework claims to evidence, validation lanes, supporting files, tests or commands, and explicit non-claims so that public communication remains evidence-bound.", + "purpose": "Map public CC-Framework claims to evidence, validation lanes, supporting files, tests or commands, and explicit non-claims so that public communication remains evidence-bound. Every claim additionally carries a falsifier, its assumptions, and an evidence state, so that it can be rendered as an evidence card without the renderer inventing any of them.", "claim_levels": { "C0": "Repository Metadata Claim: basic facts about files, docs, package metadata, or repository organization.", "C1": "Structural Validation Claim: a schema, report, or artifact conforms to declared validation rules.", @@ -24,7 +24,7 @@ "src/cc/kernel/sensitivity.py" ], "supporting_tests_or_commands": [ - "tests/unit/kernel/test_classical_frechet_special_cases.py", + "pytest tests/unit/kernel/test_classical_frechet_special_cases.py", "make test-kernel" ], "non_claims": [ @@ -32,7 +32,15 @@ "Does not prove deployment safety.", "Does not prove marginals are representative." ], - "risk_if_overstated": "Could be misrepresented as a safety certification or as evidence that exact singleton marginals identify the true deployment risk." + "risk_if_overstated": "Could be misrepresented as a safety certification or as evidence that exact singleton marginals identify the true deployment risk.", + "evidence_state": "local-only", + "falsifier": "A marginal configuration in which identified_region returns an interval differing from max(0, sum(p) - (m-1)) and min(p) by more than the declared solver tolerance.", + "assumptions": [ + "Exact singleton marginals are supplied; they are not estimated here.", + "No side constraints beyond the marginals.", + "Finite binary atom space with deterministic atom ordering.", + "IEEE-754 double arithmetic; agreement is asserted only to the declared tolerance." + ] }, { "id": "kernel.identified_interval", @@ -46,8 +54,8 @@ "docs/api.md" ], "supporting_tests_or_commands": [ - "tests/unit/kernel/test_sensitivity.py", - "tests/unit/kernel/test_monotonic_tightening.py", + "pytest tests/unit/kernel/test_sensitivity.py", + "pytest tests/unit/kernel/test_monotonic_tightening.py", "make test-kernel" ], "non_claims": [ @@ -55,7 +63,14 @@ "Does not validate semantic safety.", "Does not establish representativeness." ], - "risk_if_overstated": "Could turn a conditional mathematical identification result into an unsupported empirical or deployment claim." + "risk_if_overstated": "Could turn a conditional mathematical identification result into an unsupported empirical or deployment claim.", + "evidence_state": "local-only", + "falsifier": "A feasible atom distribution whose query value falls outside the reported interval, or a value strictly inside the interval attained by no feasible distribution.", + "assumptions": [ + "The constraint set defines a nonempty feasible polytope.", + "Constraints and the query are linear in the atom probabilities.", + "The LP solver reports optimal status rather than a tolerance-limited stop." + ] }, { "id": "kernel.finite_sample_outer_interval", @@ -70,15 +85,23 @@ "src/cc/kernel/sensitivity.py" ], "supporting_tests_or_commands": [ - "tests/unit/kernel/test_finite_sample_constraints.py", - "tests/unit/kernel/test_sample_complexity.py", + "pytest tests/unit/kernel/test_finite_sample_constraints.py", + "pytest tests/unit/kernel/test_sample_complexity.py", "make test-kernel" ], "non_claims": [ "Not valid after uncorrected adaptive target selection.", "Not a deployment certificate." ], - "risk_if_overstated": "Could imply finite-sample uncertainty handling proves future behavior or deployment safety outside the named assumptions." + "risk_if_overstated": "Could imply finite-sample uncertainty handling proves future behavior or deployment safety outside the named assumptions.", + "evidence_state": "local-only", + "falsifier": "A simulation under the stated iid Bernoulli sampling in which count-derived intervals cover the true query value at a rate materially below the nominal level.", + "assumptions": [ + "Labels and the query are fixed before the data are seen.", + "Counts are iid Bernoulli draws from the target population.", + "Moment coverage holds simultaneously across constraints.", + "The exact assumptions supplied to the LP are true of that population." + ] }, { "id": "reporting.receipt_integrity", @@ -95,8 +118,8 @@ "src/cc/evidence/anchoring.py" ], "supporting_tests_or_commands": [ - "tests/unit/reporting/test_reporting.py", - "tests/unit/evidence/test_transparency_log_adversarial.py", + "pytest tests/unit/reporting/test_reporting.py", + "pytest tests/unit/evidence/test_transparency_log_adversarial.py", "PYTHONPATH=src .venv/bin/python -m pytest -q tests/unit/evidence tests/unit/reporting" ], "non_claims": [ @@ -106,7 +129,14 @@ "Does not prove compliance.", "Does not prove safety." ], - "risk_if_overstated": "Could convert byte integrity or provenance into an unsupported empirical validity, compliance, or safety claim." + "risk_if_overstated": "Could convert byte integrity or provenance into an unsupported empirical validity, compliance, or safety claim.", + "evidence_state": "local-only", + "falsifier": "Two byte-distinct payloads that a consumer needs distinguished receiving the same canonical hash, or a payload whose recomputed hash differs from its receipt while its bytes are unchanged.", + "assumptions": [ + "SHA-256 remains collision resistant.", + "The canonicalization profile named on the receipt is the one used to verify it.", + "Receipt-covered JSON is read with strict duplicate-key rejection." + ] }, { "id": "evidence.non_claim_boundaries", @@ -130,7 +160,13 @@ "non_claims": [ "Does not prevent bad-faith actors from making misleading claims outside the framework." ], - "risk_if_overstated": "Could imply documentation controls alone prevent institutional overclaiming or misuse outside the repository." + "risk_if_overstated": "Could imply documentation controls alone prevent institutional overclaiming or misuse outside the repository.", + "evidence_state": "local-only", + "falsifier": "An evidence-bound claim package that passes verify-claim-governance while omitting a non-claim its declared evidence roles require.", + "assumptions": [ + "The producer declares evidence roles honestly; the verifier checks structure, not sincerity.", + "The v0 non-claims engine detects the intended substance rather than only exact strings." + ] }, { "id": "release.paper_core_v0_3_rc1", @@ -155,7 +191,13 @@ "non_claims": [ "Does not promote enterprise, dashboard, vendor, cloud, or experimental lanes into paper core." ], - "risk_if_overstated": "Could present a release-candidate paper-core boundary as whole-repository production quality." + "risk_if_overstated": "Could present a release-candidate paper-core boundary as whole-repository production quality.", + "evidence_state": "local-only", + "falsifier": "A paper artifact that reproduce_paper.py regenerates with different bytes, or a theorem-ledger row whose named test does not exist or does not exercise the stated implementation.", + "assumptions": [ + "The pinned environment and seeds reproduce the recorded run.", + "Artifact determinism is a property of this host and toolchain, not of the mathematics." + ] }, { "id": "enterprise.reference_v0_1", @@ -180,7 +222,13 @@ "Not compliance certification.", "Not deployment safety." ], - "risk_if_overstated": "Could imply a moto-backed reference path is production infrastructure, live-cloud validation, compliance certification, or deployment safety." + "risk_if_overstated": "Could imply a moto-backed reference path is production infrastructure, live-cloud validation, compliance certification, or deployment safety.", + "evidence_state": "aws-synth-only", + "falsifier": "An enterprise emulation run that reports success while omitting a KMS verification or object-integrity check the reference claims to perform.", + "assumptions": [ + "moto emulates the AWS behaviours under test faithfully enough for the checks performed.", + "Emulated evidence is never live evidence, and no live-AWS claim rests on this lane." + ] }, { "id": "open_core.strategy", @@ -199,7 +247,13 @@ "Does not make the project a product today.", "Does not claim enterprise readiness." ], - "risk_if_overstated": "Could turn a strategic boundary document into an unsupported claim that a commercial product already exists." + "risk_if_overstated": "Could turn a strategic boundary document into an unsupported claim that a commercial product already exists.", + "evidence_state": "local-only", + "falsifier": "A module the strategy document places in the open core that is absent from the published wheel, or an importable wheel surface classified nowhere in docs/api.md.", + "assumptions": [ + "The wheel built in CI is the artifact the strategy describes.", + "Classification in docs/api.md is kept current by the packaging boundary test." + ] } ], "forbidden_upgrades": [ diff --git a/evidence-cards/cards/enterprise.reference_v0_1.json b/evidence-cards/cards/enterprise.reference_v0_1.json new file mode 100644 index 0000000..12d5e04 --- /dev/null +++ b/evidence-cards/cards/enterprise.reference_v0_1.json @@ -0,0 +1,68 @@ +{ + "artifacts": [ + { + "bytes": 7871, + "missing": false, + "path": "docs/validation_matrix.md", + "sha256": "0c4aeb300be94508644c7ca2f38b1cb6552ce4fb31c10cdea0769b809904c5d5" + }, + { + "bytes": 18487, + "missing": false, + "path": "docs/release/V0_3_RC1_CHECKLIST.md", + "sha256": "87cbba56c855c978f37d31c63f6354b025c5cb8a2e37bebc944e4a2f0794dc3f" + }, + { + "bytes": 16907, + "missing": false, + "path": "src/cc/enterprise/aws_reference.py", + "sha256": "f9138cd1d0cd1eaa2b5db0b1be5b95f0ff507a3081cec4a4aa7cad9bcdaaa9d4" + }, + { + "bytes": 5144, + "missing": false, + "path": "infra/lambda/verify_handler.py", + "sha256": "d1bbcefddda9c91578ac9d4d6fda9113da6fccbd965cd42c49b7592f602e8ee2" + }, + { + "bytes": 634, + "missing": false, + "path": "apps/dashboard/scripts/require-enterprise-bundle.mjs", + "sha256": "013caae404ca3b0ed3557dc61bb1887d4708f1f0d6803499702444f1f12414c5" + } + ], + "assumptions": [ + "moto emulates the AWS behaviours under test faithfully enough for the checks performed.", + "Emulated evidence is never live evidence, and no live-AWS claim rests on this lane." + ], + "card_id": "enterprise.reference_v0_1", + "claim": "Enterprise Reference v0.1 is an experimental evidence-integrity reference architecture with moto-backed smoke tests.", + "command": [ + "make enterprise-smoke", + "PYTHONPATH=src .venv/bin/pytest tests/integration/test_enterprise_aws_emulation.py tests/e2e/test_enterprise_smoke.py -q" + ], + "counterevidence": [], + "falsifier": "An enterprise emulation run that reports success while omitting a KMS verification or object-integrity check the reference claims to perform.", + "label_meanings": { + "evidence_state": "Produced against synthesized or emulated AWS, not a live account. Synthetic evidence is never live evidence.", + "publication_state": "Not yet reviewed for publication.", + "verdict": "The command has not been executed for this card. No result is claimed." + }, + "labels": { + "evidence_state": "aws-synth-only", + "publication_state": "draft", + "verdict": "not-run" + }, + "maturity": "C0/C2", + "non_claims": [ + "Not enterprise-ready.", + "Not live-AWS proof.", + "Not compliance certification.", + "Not deployment safety." + ], + "result_detail": null, + "retraction_reason": null, + "schema_version": "cc.evidence_card.v1", + "source_revision": "7e007eaac73f562ee259d3457caee802f891ebdd-dirty", + "supersedes": null +} diff --git a/evidence-cards/cards/evidence.non_claim_boundaries.json b/evidence-cards/cards/evidence.non_claim_boundaries.json new file mode 100644 index 0000000..fe23795 --- /dev/null +++ b/evidence-cards/cards/evidence.non_claim_boundaries.json @@ -0,0 +1,72 @@ +{ + "artifacts": [ + { + "bytes": 18617, + "missing": false, + "path": "README.md", + "sha256": "d520223b5a10c364ed90ce56cfdce9b7441566fe9f692001b04d375caf3f92bb" + }, + { + "bytes": 7871, + "missing": false, + "path": "docs/validation_matrix.md", + "sha256": "0c4aeb300be94508644c7ca2f38b1cb6552ce4fb31c10cdea0769b809904c5d5" + }, + { + "bytes": 10127, + "missing": false, + "path": "docs/theory/theorem_ledger.md", + "sha256": "a8ed8bb949c97ad2a157654e7121f0d8150ce65f876a94ef6577b8b185a3ae20" + }, + { + "bytes": 4687, + "missing": false, + "path": "docs/briefs/rick_mergenthaler_ai_safety_disclosure_controls.md", + "sha256": "65240508d532ad7467aa4c2c14b67ae32a1acd68a3b21c5b6f37dd8984536b2f" + }, + { + "bytes": 2437, + "missing": false, + "path": "docs/briefs/three_minute_demo.md", + "sha256": "ef4ae474b3fe93aa1aa0b5d02a3ea58fda616da30b4a47c7a640a84fa115bd40" + }, + { + "bytes": 6636, + "missing": false, + "path": "docs/research/NON_CLAIMS.md", + "sha256": "07078d42ed5686e9c029f9588c69b5abea59ffbb5cf1140340cb150ad32adefa" + } + ], + "assumptions": [ + "The producer declares evidence roles honestly; the verifier checks structure, not sincerity.", + "The v0 non-claims engine detects the intended substance rather than only exact strings." + ], + "card_id": "evidence.non_claim_boundaries", + "claim": "Documentation and reporting surfaces explicitly separate what each validation result supports from what it does not support.", + "command": [ + ".venv/bin/mkdocs build --strict", + "PYTHONPATH=src .venv/bin/python -m pytest -q tests/unit/evidence", + "PYTHONPATH=src .venv/bin/python -m pytest -q tests/integration/test_claim_governance_capsule.py" + ], + "counterevidence": [], + "falsifier": "An evidence-bound claim package that passes verify-claim-governance while omitting a non-claim its declared evidence roles require.", + "label_meanings": { + "evidence_state": "Produced on a local machine. Says nothing about cloud or deployed behaviour.", + "publication_state": "Not yet reviewed for publication.", + "verdict": "The command has not been executed for this card. No result is claimed." + }, + "labels": { + "evidence_state": "local-only", + "publication_state": "draft", + "verdict": "not-run" + }, + "maturity": "C4", + "non_claims": [ + "Does not prevent bad-faith actors from making misleading claims outside the framework." + ], + "result_detail": null, + "retraction_reason": null, + "schema_version": "cc.evidence_card.v1", + "source_revision": "7e007eaac73f562ee259d3457caee802f891ebdd-dirty", + "supersedes": null +} diff --git a/evidence-cards/cards/kernel.finite_sample_outer_interval.json b/evidence-cards/cards/kernel.finite_sample_outer_interval.json new file mode 100644 index 0000000..2898227 --- /dev/null +++ b/evidence-cards/cards/kernel.finite_sample_outer_interval.json @@ -0,0 +1,63 @@ +{ + "artifacts": [ + { + "bytes": 4317, + "missing": false, + "path": "docs/theory/finite_sample_identification.md", + "sha256": "a7228c069ed5cc20677f9b06fadf81112fc9f604e310cbe6fd080b522c9709c0" + }, + { + "bytes": 10127, + "missing": false, + "path": "docs/theory/theorem_ledger.md", + "sha256": "a8ed8bb949c97ad2a157654e7121f0d8150ce65f876a94ef6577b8b185a3ae20" + }, + { + "bytes": 20804, + "missing": false, + "path": "src/cc/kernel/sample_complexity.py", + "sha256": "aaef21b3d037a4e23cd067bdf2585227899feefe05634d9b7cd07a03223295f6" + }, + { + "bytes": 33874, + "missing": false, + "path": "src/cc/kernel/sensitivity.py", + "sha256": "6ff24bf54969a046c774c8b3ab251de31fbb4c0d505db88a9b4b283aea562422" + } + ], + "assumptions": [ + "Labels and the query are fixed before the data are seen.", + "Counts are iid Bernoulli draws from the target population.", + "Moment coverage holds simultaneously across constraints.", + "The exact assumptions supplied to the LP are true of that population." + ], + "card_id": "kernel.finite_sample_outer_interval", + "claim": "Under stated iid Bernoulli sampling assumptions and simultaneous moment coverage, count-derived LP intervals form an outer confidence interval for the target query.", + "command": [ + "pytest tests/unit/kernel/test_finite_sample_constraints.py", + "pytest tests/unit/kernel/test_sample_complexity.py", + "make test-kernel" + ], + "counterevidence": [], + "falsifier": "A simulation under the stated iid Bernoulli sampling in which count-derived intervals cover the true query value at a rate materially below the nominal level.", + "label_meanings": { + "evidence_state": "Produced on a local machine. Says nothing about cloud or deployed behaviour.", + "publication_state": "Not yet reviewed for publication.", + "verdict": "The command has not been executed for this card. No result is claimed." + }, + "labels": { + "evidence_state": "local-only", + "publication_state": "draft", + "verdict": "not-run" + }, + "maturity": "C3", + "non_claims": [ + "Not valid after uncorrected adaptive target selection.", + "Not a deployment certificate." + ], + "result_detail": null, + "retraction_reason": null, + "schema_version": "cc.evidence_card.v1", + "source_revision": "7e007eaac73f562ee259d3457caee802f891ebdd-dirty", + "supersedes": null +} diff --git a/evidence-cards/cards/kernel.frechet_bounds.json b/evidence-cards/cards/kernel.frechet_bounds.json new file mode 100644 index 0000000..f51d3fc --- /dev/null +++ b/evidence-cards/cards/kernel.frechet_bounds.json @@ -0,0 +1,63 @@ +{ + "artifacts": [ + { + "bytes": 18617, + "missing": false, + "path": "README.md", + "sha256": "d520223b5a10c364ed90ce56cfdce9b7441566fe9f692001b04d375caf3f92bb" + }, + { + "bytes": 10127, + "missing": false, + "path": "docs/theory/theorem_ledger.md", + "sha256": "a8ed8bb949c97ad2a157654e7121f0d8150ce65f876a94ef6577b8b185a3ae20" + }, + { + "bytes": 21621, + "missing": false, + "path": "src/cc/kernel/frechet_classes.py", + "sha256": "60109fb97bc22bc732b1aa7fe660b5e4c4d03c5d1f2e13e4b2e54b1e032d1c58" + }, + { + "bytes": 33874, + "missing": false, + "path": "src/cc/kernel/sensitivity.py", + "sha256": "6ff24bf54969a046c774c8b3ab251de31fbb4c0d505db88a9b4b283aea562422" + } + ], + "assumptions": [ + "Exact singleton marginals are supplied; they are not estimated here.", + "No side constraints beyond the marginals.", + "Finite binary atom space with deterministic atom ordering.", + "IEEE-754 double arithmetic; agreement is asserted only to the declared tolerance." + ], + "card_id": "kernel.frechet_bounds", + "claim": "The strict kernel computes classical Fréchet-Hoeffding bounds for finite binary guardrail failure composition under exact singleton marginals and no additional side constraints.", + "command": [ + "pytest tests/unit/kernel/test_classical_frechet_special_cases.py", + "make test-kernel" + ], + "counterevidence": [], + "falsifier": "A marginal configuration in which identified_region returns an interval differing from max(0, sum(p) - (m-1)) and min(p) by more than the declared solver tolerance.", + "label_meanings": { + "evidence_state": "Produced on a local machine. Says nothing about cloud or deployed behaviour.", + "publication_state": "Not yet reviewed for publication.", + "verdict": "The command has not been executed for this card. No result is claimed." + }, + "labels": { + "evidence_state": "local-only", + "publication_state": "draft", + "verdict": "not-run" + }, + "maturity": "C3", + "non_claims": [ + "Does not assume independence.", + "Does not prove deployment safety.", + "Does not prove marginals are representative." + ], + "result_detail": null, + "retraction_reason": null, + "schema_version": "cc.evidence_card.v1", + "source_revision": "7e007eaac73f562ee259d3457caee802f891ebdd-dirty", + "supersedes": null +} diff --git a/evidence-cards/cards/kernel.identified_interval.json b/evidence-cards/cards/kernel.identified_interval.json new file mode 100644 index 0000000..2a6d59b --- /dev/null +++ b/evidence-cards/cards/kernel.identified_interval.json @@ -0,0 +1,57 @@ +{ + "artifacts": [ + { + "bytes": 10127, + "missing": false, + "path": "docs/theory/theorem_ledger.md", + "sha256": "a8ed8bb949c97ad2a157654e7121f0d8150ce65f876a94ef6577b8b185a3ae20" + }, + { + "bytes": 33874, + "missing": false, + "path": "src/cc/kernel/sensitivity.py", + "sha256": "6ff24bf54969a046c774c8b3ab251de31fbb4c0d505db88a9b4b283aea562422" + }, + { + "bytes": 7346, + "missing": false, + "path": "docs/api.md", + "sha256": "34db452fa048483afc06caaf7806703b53ea984e6625d681a31b35db11d71c33" + } + ], + "assumptions": [ + "The constraint set defines a nonempty feasible polytope.", + "Constraints and the query are linear in the atom probabilities.", + "The LP solver reports optimal status rather than a tolerance-limited stop." + ], + "card_id": "kernel.identified_interval", + "claim": "The finite atom LP computes sharp lower and upper values for declared linear composition queries over feasible finite binary atom distributions.", + "command": [ + "pytest tests/unit/kernel/test_sensitivity.py", + "pytest tests/unit/kernel/test_monotonic_tightening.py", + "make test-kernel" + ], + "counterevidence": [], + "falsifier": "A feasible atom distribution whose query value falls outside the reported interval, or a value strictly inside the interval attained by no feasible distribution.", + "label_meanings": { + "evidence_state": "Produced on a local machine. Says nothing about cloud or deployed behaviour.", + "publication_state": "Not yet reviewed for publication.", + "verdict": "The command has not been executed for this card. No result is claimed." + }, + "labels": { + "evidence_state": "local-only", + "publication_state": "draft", + "verdict": "not-run" + }, + "maturity": "C3", + "non_claims": [ + "Does not validate upstream data collection.", + "Does not validate semantic safety.", + "Does not establish representativeness." + ], + "result_detail": null, + "retraction_reason": null, + "schema_version": "cc.evidence_card.v1", + "source_revision": "7e007eaac73f562ee259d3457caee802f891ebdd-dirty", + "supersedes": null +} diff --git a/evidence-cards/cards/open_core.strategy.json b/evidence-cards/cards/open_core.strategy.json new file mode 100644 index 0000000..492804d --- /dev/null +++ b/evidence-cards/cards/open_core.strategy.json @@ -0,0 +1,47 @@ +{ + "artifacts": [ + { + "bytes": 2303, + "missing": false, + "path": "docs/product/OPEN_CORE_STRATEGY.md", + "sha256": "5aafa0ce83ebd3eba11dad99326efaa8516b6fcbd51f62304f3bceee25622baa" + }, + { + "bytes": 18617, + "missing": false, + "path": "README.md", + "sha256": "d520223b5a10c364ed90ce56cfdce9b7441566fe9f692001b04d375caf3f92bb" + } + ], + "assumptions": [ + "The wheel built in CI is the artifact the strategy describes.", + "Classification in docs/api.md is kept current by the packaging boundary test." + ], + "card_id": "open_core.strategy", + "claim": "The public research core is intended to remain inspectable for credibility and reproducibility, while possible private/commercial layers may operationalize the primitives.", + "command": [ + ".venv/bin/mkdocs build --strict" + ], + "counterevidence": [], + "falsifier": "A module the strategy document places in the open core that is absent from the published wheel, or an importable wheel surface classified nowhere in docs/api.md.", + "label_meanings": { + "evidence_state": "Produced on a local machine. Says nothing about cloud or deployed behaviour.", + "publication_state": "Not yet reviewed for publication.", + "verdict": "The command has not been executed for this card. No result is claimed." + }, + "labels": { + "evidence_state": "local-only", + "publication_state": "draft", + "verdict": "not-run" + }, + "maturity": "C0", + "non_claims": [ + "Does not make the project a product today.", + "Does not claim enterprise readiness." + ], + "result_detail": null, + "retraction_reason": null, + "schema_version": "cc.evidence_card.v1", + "source_revision": "7e007eaac73f562ee259d3457caee802f891ebdd-dirty", + "supersedes": null +} diff --git a/evidence-cards/cards/release.paper_core_v0_3_rc1.json b/evidence-cards/cards/release.paper_core_v0_3_rc1.json new file mode 100644 index 0000000..a3fb6f5 --- /dev/null +++ b/evidence-cards/cards/release.paper_core_v0_3_rc1.json @@ -0,0 +1,68 @@ +{ + "artifacts": [ + { + "bytes": 18487, + "missing": false, + "path": "docs/release/V0_3_RC1_CHECKLIST.md", + "sha256": "87cbba56c855c978f37d31c63f6354b025c5cb8a2e37bebc944e4a2f0794dc3f" + }, + { + "bytes": 7871, + "missing": false, + "path": "docs/validation_matrix.md", + "sha256": "0c4aeb300be94508644c7ca2f38b1cb6552ce4fb31c10cdea0769b809904c5d5" + }, + { + "bytes": 7346, + "missing": false, + "path": "docs/api.md", + "sha256": "34db452fa048483afc06caaf7806703b53ea984e6625d681a31b35db11d71c33" + }, + { + "bytes": 8198, + "missing": false, + "path": "docs/research/PAPER_CORE.md", + "sha256": "ca05c26005224d62a288d2c9f396fe08fc3fca3f48e5f8c10f45421898a61ff8" + }, + { + "bytes": 6636, + "missing": false, + "path": "docs/research/NON_CLAIMS.md", + "sha256": "07078d42ed5686e9c029f9588c69b5abea59ffbb5cf1140340cb150ad32adefa" + } + ], + "assumptions": [ + "The pinned environment and seeds reproduce the recorded run.", + "Artifact determinism is a property of this host and toolchain, not of the mathematics." + ], + "card_id": "release.paper_core_v0_3_rc1", + "claim": "Paper Core v0.3 is release-candidate quality for the finite atom kernel, canonical metrics, endpoint witnesses, deterministic paper artifacts, and documentation spine.", + "command": [ + "make test-kernel", + "make test-release", + "make docs", + "make paper-smoke", + "make verify-paper-artifacts" + ], + "counterevidence": [], + "falsifier": "A paper artifact that reproduce_paper.py regenerates with different bytes, or a theorem-ledger row whose named test does not exist or does not exercise the stated implementation.", + "label_meanings": { + "evidence_state": "Produced on a local machine. Says nothing about cloud or deployed behaviour.", + "publication_state": "Not yet reviewed for publication.", + "verdict": "The command has not been executed for this card. No result is claimed." + }, + "labels": { + "evidence_state": "local-only", + "publication_state": "draft", + "verdict": "not-run" + }, + "maturity": "C0/C3", + "non_claims": [ + "Does not promote enterprise, dashboard, vendor, cloud, or experimental lanes into paper core." + ], + "result_detail": null, + "retraction_reason": null, + "schema_version": "cc.evidence_card.v1", + "source_revision": "7e007eaac73f562ee259d3457caee802f891ebdd-dirty", + "supersedes": null +} diff --git a/evidence-cards/cards/reporting.receipt_integrity.json b/evidence-cards/cards/reporting.receipt_integrity.json new file mode 100644 index 0000000..4ab25ad --- /dev/null +++ b/evidence-cards/cards/reporting.receipt_integrity.json @@ -0,0 +1,77 @@ +{ + "artifacts": [ + { + "bytes": 10127, + "missing": false, + "path": "docs/theory/theorem_ledger.md", + "sha256": "a8ed8bb949c97ad2a157654e7121f0d8150ce65f876a94ef6577b8b185a3ae20" + }, + { + "bytes": 7871, + "missing": false, + "path": "docs/validation_matrix.md", + "sha256": "0c4aeb300be94508644c7ca2f38b1cb6552ce4fb31c10cdea0769b809904c5d5" + }, + { + "bytes": 17592, + "missing": false, + "path": "src/cc/reporting/canonical.py", + "sha256": "64e9c1f1efaa1b53fdfeec8c26a070089dc36e46c82f2e13ce1404d9088288c4" + }, + { + "bytes": 29932, + "missing": false, + "path": "src/cc/reporting/report.py", + "sha256": "31c3e6f192b671a40e272e95c5177dc6c36f69bfb428016dca1ccfa958ab7f7d" + }, + { + "bytes": 19054, + "missing": false, + "path": "src/cc/evidence/merkle_log.py", + "sha256": "66ee5c8b9931f64b3a1e05e71375ca73f315252de280780fd7b4ad45aeb8e58a" + }, + { + "bytes": 10654, + "missing": false, + "path": "src/cc/evidence/anchoring.py", + "sha256": "c38d55e7baafd860bc46bd05e52b08f2de8cdd6cec1f64e2722be24d92e48d8c" + } + ], + "assumptions": [ + "SHA-256 remains collision resistant.", + "The canonicalization profile named on the receipt is the one used to verify it.", + "Receipt-covered JSON is read with strict duplicate-key rejection." + ], + "card_id": "reporting.receipt_integrity", + "claim": "Receipt/hash verification can provide tamper evidence for recorded bytes under canonical serialization and verification rules.", + "command": [ + "pytest tests/unit/reporting/test_reporting.py", + "pytest tests/unit/evidence/test_transparency_log_adversarial.py", + "PYTHONPATH=src .venv/bin/python -m pytest -q tests/unit/evidence tests/unit/reporting" + ], + "counterevidence": [], + "falsifier": "Two byte-distinct payloads that a consumer needs distinguished receiving the same canonical hash, or a payload whose recomputed hash differs from its receipt while its bytes are unchanged.", + "label_meanings": { + "evidence_state": "Produced on a local machine. Says nothing about cloud or deployed behaviour.", + "publication_state": "Not yet reviewed for publication.", + "verdict": "The command has not been executed for this card. No result is claimed." + }, + "labels": { + "evidence_state": "local-only", + "publication_state": "draft", + "verdict": "not-run" + }, + "maturity": "C2", + "non_claims": [ + "Does not prove statistical validity.", + "Does not prove source data truth.", + "Does not prove representativeness.", + "Does not prove compliance.", + "Does not prove safety." + ], + "result_detail": null, + "retraction_reason": null, + "schema_version": "cc.evidence_card.v1", + "source_revision": "7e007eaac73f562ee259d3457caee802f891ebdd-dirty", + "supersedes": null +} diff --git a/evidence-cards/site-evidence-manifest.v1.json b/evidence-cards/site-evidence-manifest.v1.json new file mode 100644 index 0000000..a6116a8 --- /dev/null +++ b/evidence-cards/site-evidence-manifest.v1.json @@ -0,0 +1,569 @@ +{ + "card_count": 8, + "cards": [ + { + "artifacts": [ + { + "bytes": 18617, + "missing": false, + "path": "README.md", + "sha256": "d520223b5a10c364ed90ce56cfdce9b7441566fe9f692001b04d375caf3f92bb" + }, + { + "bytes": 10127, + "missing": false, + "path": "docs/theory/theorem_ledger.md", + "sha256": "a8ed8bb949c97ad2a157654e7121f0d8150ce65f876a94ef6577b8b185a3ae20" + }, + { + "bytes": 21621, + "missing": false, + "path": "src/cc/kernel/frechet_classes.py", + "sha256": "60109fb97bc22bc732b1aa7fe660b5e4c4d03c5d1f2e13e4b2e54b1e032d1c58" + }, + { + "bytes": 33874, + "missing": false, + "path": "src/cc/kernel/sensitivity.py", + "sha256": "6ff24bf54969a046c774c8b3ab251de31fbb4c0d505db88a9b4b283aea562422" + } + ], + "assumptions": [ + "Exact singleton marginals are supplied; they are not estimated here.", + "No side constraints beyond the marginals.", + "Finite binary atom space with deterministic atom ordering.", + "IEEE-754 double arithmetic; agreement is asserted only to the declared tolerance." + ], + "card_id": "kernel.frechet_bounds", + "claim": "The strict kernel computes classical Fréchet-Hoeffding bounds for finite binary guardrail failure composition under exact singleton marginals and no additional side constraints.", + "command": [ + "pytest tests/unit/kernel/test_classical_frechet_special_cases.py", + "make test-kernel" + ], + "counterevidence": [], + "falsifier": "A marginal configuration in which identified_region returns an interval differing from max(0, sum(p) - (m-1)) and min(p) by more than the declared solver tolerance.", + "label_meanings": { + "evidence_state": "Produced on a local machine. Says nothing about cloud or deployed behaviour.", + "publication_state": "Not yet reviewed for publication.", + "verdict": "The command has not been executed for this card. No result is claimed." + }, + "labels": { + "evidence_state": "local-only", + "publication_state": "draft", + "verdict": "not-run" + }, + "maturity": "C3", + "non_claims": [ + "Does not assume independence.", + "Does not prove deployment safety.", + "Does not prove marginals are representative." + ], + "result_detail": null, + "retraction_reason": null, + "schema_version": "cc.evidence_card.v1", + "source_revision": "7e007eaac73f562ee259d3457caee802f891ebdd-dirty", + "supersedes": null + }, + { + "artifacts": [ + { + "bytes": 10127, + "missing": false, + "path": "docs/theory/theorem_ledger.md", + "sha256": "a8ed8bb949c97ad2a157654e7121f0d8150ce65f876a94ef6577b8b185a3ae20" + }, + { + "bytes": 33874, + "missing": false, + "path": "src/cc/kernel/sensitivity.py", + "sha256": "6ff24bf54969a046c774c8b3ab251de31fbb4c0d505db88a9b4b283aea562422" + }, + { + "bytes": 7346, + "missing": false, + "path": "docs/api.md", + "sha256": "34db452fa048483afc06caaf7806703b53ea984e6625d681a31b35db11d71c33" + } + ], + "assumptions": [ + "The constraint set defines a nonempty feasible polytope.", + "Constraints and the query are linear in the atom probabilities.", + "The LP solver reports optimal status rather than a tolerance-limited stop." + ], + "card_id": "kernel.identified_interval", + "claim": "The finite atom LP computes sharp lower and upper values for declared linear composition queries over feasible finite binary atom distributions.", + "command": [ + "pytest tests/unit/kernel/test_sensitivity.py", + "pytest tests/unit/kernel/test_monotonic_tightening.py", + "make test-kernel" + ], + "counterevidence": [], + "falsifier": "A feasible atom distribution whose query value falls outside the reported interval, or a value strictly inside the interval attained by no feasible distribution.", + "label_meanings": { + "evidence_state": "Produced on a local machine. Says nothing about cloud or deployed behaviour.", + "publication_state": "Not yet reviewed for publication.", + "verdict": "The command has not been executed for this card. No result is claimed." + }, + "labels": { + "evidence_state": "local-only", + "publication_state": "draft", + "verdict": "not-run" + }, + "maturity": "C3", + "non_claims": [ + "Does not validate upstream data collection.", + "Does not validate semantic safety.", + "Does not establish representativeness." + ], + "result_detail": null, + "retraction_reason": null, + "schema_version": "cc.evidence_card.v1", + "source_revision": "7e007eaac73f562ee259d3457caee802f891ebdd-dirty", + "supersedes": null + }, + { + "artifacts": [ + { + "bytes": 4317, + "missing": false, + "path": "docs/theory/finite_sample_identification.md", + "sha256": "a7228c069ed5cc20677f9b06fadf81112fc9f604e310cbe6fd080b522c9709c0" + }, + { + "bytes": 10127, + "missing": false, + "path": "docs/theory/theorem_ledger.md", + "sha256": "a8ed8bb949c97ad2a157654e7121f0d8150ce65f876a94ef6577b8b185a3ae20" + }, + { + "bytes": 20804, + "missing": false, + "path": "src/cc/kernel/sample_complexity.py", + "sha256": "aaef21b3d037a4e23cd067bdf2585227899feefe05634d9b7cd07a03223295f6" + }, + { + "bytes": 33874, + "missing": false, + "path": "src/cc/kernel/sensitivity.py", + "sha256": "6ff24bf54969a046c774c8b3ab251de31fbb4c0d505db88a9b4b283aea562422" + } + ], + "assumptions": [ + "Labels and the query are fixed before the data are seen.", + "Counts are iid Bernoulli draws from the target population.", + "Moment coverage holds simultaneously across constraints.", + "The exact assumptions supplied to the LP are true of that population." + ], + "card_id": "kernel.finite_sample_outer_interval", + "claim": "Under stated iid Bernoulli sampling assumptions and simultaneous moment coverage, count-derived LP intervals form an outer confidence interval for the target query.", + "command": [ + "pytest tests/unit/kernel/test_finite_sample_constraints.py", + "pytest tests/unit/kernel/test_sample_complexity.py", + "make test-kernel" + ], + "counterevidence": [], + "falsifier": "A simulation under the stated iid Bernoulli sampling in which count-derived intervals cover the true query value at a rate materially below the nominal level.", + "label_meanings": { + "evidence_state": "Produced on a local machine. Says nothing about cloud or deployed behaviour.", + "publication_state": "Not yet reviewed for publication.", + "verdict": "The command has not been executed for this card. No result is claimed." + }, + "labels": { + "evidence_state": "local-only", + "publication_state": "draft", + "verdict": "not-run" + }, + "maturity": "C3", + "non_claims": [ + "Not valid after uncorrected adaptive target selection.", + "Not a deployment certificate." + ], + "result_detail": null, + "retraction_reason": null, + "schema_version": "cc.evidence_card.v1", + "source_revision": "7e007eaac73f562ee259d3457caee802f891ebdd-dirty", + "supersedes": null + }, + { + "artifacts": [ + { + "bytes": 10127, + "missing": false, + "path": "docs/theory/theorem_ledger.md", + "sha256": "a8ed8bb949c97ad2a157654e7121f0d8150ce65f876a94ef6577b8b185a3ae20" + }, + { + "bytes": 7871, + "missing": false, + "path": "docs/validation_matrix.md", + "sha256": "0c4aeb300be94508644c7ca2f38b1cb6552ce4fb31c10cdea0769b809904c5d5" + }, + { + "bytes": 17592, + "missing": false, + "path": "src/cc/reporting/canonical.py", + "sha256": "64e9c1f1efaa1b53fdfeec8c26a070089dc36e46c82f2e13ce1404d9088288c4" + }, + { + "bytes": 29932, + "missing": false, + "path": "src/cc/reporting/report.py", + "sha256": "31c3e6f192b671a40e272e95c5177dc6c36f69bfb428016dca1ccfa958ab7f7d" + }, + { + "bytes": 19054, + "missing": false, + "path": "src/cc/evidence/merkle_log.py", + "sha256": "66ee5c8b9931f64b3a1e05e71375ca73f315252de280780fd7b4ad45aeb8e58a" + }, + { + "bytes": 10654, + "missing": false, + "path": "src/cc/evidence/anchoring.py", + "sha256": "c38d55e7baafd860bc46bd05e52b08f2de8cdd6cec1f64e2722be24d92e48d8c" + } + ], + "assumptions": [ + "SHA-256 remains collision resistant.", + "The canonicalization profile named on the receipt is the one used to verify it.", + "Receipt-covered JSON is read with strict duplicate-key rejection." + ], + "card_id": "reporting.receipt_integrity", + "claim": "Receipt/hash verification can provide tamper evidence for recorded bytes under canonical serialization and verification rules.", + "command": [ + "pytest tests/unit/reporting/test_reporting.py", + "pytest tests/unit/evidence/test_transparency_log_adversarial.py", + "PYTHONPATH=src .venv/bin/python -m pytest -q tests/unit/evidence tests/unit/reporting" + ], + "counterevidence": [], + "falsifier": "Two byte-distinct payloads that a consumer needs distinguished receiving the same canonical hash, or a payload whose recomputed hash differs from its receipt while its bytes are unchanged.", + "label_meanings": { + "evidence_state": "Produced on a local machine. Says nothing about cloud or deployed behaviour.", + "publication_state": "Not yet reviewed for publication.", + "verdict": "The command has not been executed for this card. No result is claimed." + }, + "labels": { + "evidence_state": "local-only", + "publication_state": "draft", + "verdict": "not-run" + }, + "maturity": "C2", + "non_claims": [ + "Does not prove statistical validity.", + "Does not prove source data truth.", + "Does not prove representativeness.", + "Does not prove compliance.", + "Does not prove safety." + ], + "result_detail": null, + "retraction_reason": null, + "schema_version": "cc.evidence_card.v1", + "source_revision": "7e007eaac73f562ee259d3457caee802f891ebdd-dirty", + "supersedes": null + }, + { + "artifacts": [ + { + "bytes": 18617, + "missing": false, + "path": "README.md", + "sha256": "d520223b5a10c364ed90ce56cfdce9b7441566fe9f692001b04d375caf3f92bb" + }, + { + "bytes": 7871, + "missing": false, + "path": "docs/validation_matrix.md", + "sha256": "0c4aeb300be94508644c7ca2f38b1cb6552ce4fb31c10cdea0769b809904c5d5" + }, + { + "bytes": 10127, + "missing": false, + "path": "docs/theory/theorem_ledger.md", + "sha256": "a8ed8bb949c97ad2a157654e7121f0d8150ce65f876a94ef6577b8b185a3ae20" + }, + { + "bytes": 4687, + "missing": false, + "path": "docs/briefs/rick_mergenthaler_ai_safety_disclosure_controls.md", + "sha256": "65240508d532ad7467aa4c2c14b67ae32a1acd68a3b21c5b6f37dd8984536b2f" + }, + { + "bytes": 2437, + "missing": false, + "path": "docs/briefs/three_minute_demo.md", + "sha256": "ef4ae474b3fe93aa1aa0b5d02a3ea58fda616da30b4a47c7a640a84fa115bd40" + }, + { + "bytes": 6636, + "missing": false, + "path": "docs/research/NON_CLAIMS.md", + "sha256": "07078d42ed5686e9c029f9588c69b5abea59ffbb5cf1140340cb150ad32adefa" + } + ], + "assumptions": [ + "The producer declares evidence roles honestly; the verifier checks structure, not sincerity.", + "The v0 non-claims engine detects the intended substance rather than only exact strings." + ], + "card_id": "evidence.non_claim_boundaries", + "claim": "Documentation and reporting surfaces explicitly separate what each validation result supports from what it does not support.", + "command": [ + ".venv/bin/mkdocs build --strict", + "PYTHONPATH=src .venv/bin/python -m pytest -q tests/unit/evidence", + "PYTHONPATH=src .venv/bin/python -m pytest -q tests/integration/test_claim_governance_capsule.py" + ], + "counterevidence": [], + "falsifier": "An evidence-bound claim package that passes verify-claim-governance while omitting a non-claim its declared evidence roles require.", + "label_meanings": { + "evidence_state": "Produced on a local machine. Says nothing about cloud or deployed behaviour.", + "publication_state": "Not yet reviewed for publication.", + "verdict": "The command has not been executed for this card. No result is claimed." + }, + "labels": { + "evidence_state": "local-only", + "publication_state": "draft", + "verdict": "not-run" + }, + "maturity": "C4", + "non_claims": [ + "Does not prevent bad-faith actors from making misleading claims outside the framework." + ], + "result_detail": null, + "retraction_reason": null, + "schema_version": "cc.evidence_card.v1", + "source_revision": "7e007eaac73f562ee259d3457caee802f891ebdd-dirty", + "supersedes": null + }, + { + "artifacts": [ + { + "bytes": 18487, + "missing": false, + "path": "docs/release/V0_3_RC1_CHECKLIST.md", + "sha256": "87cbba56c855c978f37d31c63f6354b025c5cb8a2e37bebc944e4a2f0794dc3f" + }, + { + "bytes": 7871, + "missing": false, + "path": "docs/validation_matrix.md", + "sha256": "0c4aeb300be94508644c7ca2f38b1cb6552ce4fb31c10cdea0769b809904c5d5" + }, + { + "bytes": 7346, + "missing": false, + "path": "docs/api.md", + "sha256": "34db452fa048483afc06caaf7806703b53ea984e6625d681a31b35db11d71c33" + }, + { + "bytes": 8198, + "missing": false, + "path": "docs/research/PAPER_CORE.md", + "sha256": "ca05c26005224d62a288d2c9f396fe08fc3fca3f48e5f8c10f45421898a61ff8" + }, + { + "bytes": 6636, + "missing": false, + "path": "docs/research/NON_CLAIMS.md", + "sha256": "07078d42ed5686e9c029f9588c69b5abea59ffbb5cf1140340cb150ad32adefa" + } + ], + "assumptions": [ + "The pinned environment and seeds reproduce the recorded run.", + "Artifact determinism is a property of this host and toolchain, not of the mathematics." + ], + "card_id": "release.paper_core_v0_3_rc1", + "claim": "Paper Core v0.3 is release-candidate quality for the finite atom kernel, canonical metrics, endpoint witnesses, deterministic paper artifacts, and documentation spine.", + "command": [ + "make test-kernel", + "make test-release", + "make docs", + "make paper-smoke", + "make verify-paper-artifacts" + ], + "counterevidence": [], + "falsifier": "A paper artifact that reproduce_paper.py regenerates with different bytes, or a theorem-ledger row whose named test does not exist or does not exercise the stated implementation.", + "label_meanings": { + "evidence_state": "Produced on a local machine. Says nothing about cloud or deployed behaviour.", + "publication_state": "Not yet reviewed for publication.", + "verdict": "The command has not been executed for this card. No result is claimed." + }, + "labels": { + "evidence_state": "local-only", + "publication_state": "draft", + "verdict": "not-run" + }, + "maturity": "C0/C3", + "non_claims": [ + "Does not promote enterprise, dashboard, vendor, cloud, or experimental lanes into paper core." + ], + "result_detail": null, + "retraction_reason": null, + "schema_version": "cc.evidence_card.v1", + "source_revision": "7e007eaac73f562ee259d3457caee802f891ebdd-dirty", + "supersedes": null + }, + { + "artifacts": [ + { + "bytes": 7871, + "missing": false, + "path": "docs/validation_matrix.md", + "sha256": "0c4aeb300be94508644c7ca2f38b1cb6552ce4fb31c10cdea0769b809904c5d5" + }, + { + "bytes": 18487, + "missing": false, + "path": "docs/release/V0_3_RC1_CHECKLIST.md", + "sha256": "87cbba56c855c978f37d31c63f6354b025c5cb8a2e37bebc944e4a2f0794dc3f" + }, + { + "bytes": 16907, + "missing": false, + "path": "src/cc/enterprise/aws_reference.py", + "sha256": "f9138cd1d0cd1eaa2b5db0b1be5b95f0ff507a3081cec4a4aa7cad9bcdaaa9d4" + }, + { + "bytes": 5144, + "missing": false, + "path": "infra/lambda/verify_handler.py", + "sha256": "d1bbcefddda9c91578ac9d4d6fda9113da6fccbd965cd42c49b7592f602e8ee2" + }, + { + "bytes": 634, + "missing": false, + "path": "apps/dashboard/scripts/require-enterprise-bundle.mjs", + "sha256": "013caae404ca3b0ed3557dc61bb1887d4708f1f0d6803499702444f1f12414c5" + } + ], + "assumptions": [ + "moto emulates the AWS behaviours under test faithfully enough for the checks performed.", + "Emulated evidence is never live evidence, and no live-AWS claim rests on this lane." + ], + "card_id": "enterprise.reference_v0_1", + "claim": "Enterprise Reference v0.1 is an experimental evidence-integrity reference architecture with moto-backed smoke tests.", + "command": [ + "make enterprise-smoke", + "PYTHONPATH=src .venv/bin/pytest tests/integration/test_enterprise_aws_emulation.py tests/e2e/test_enterprise_smoke.py -q" + ], + "counterevidence": [], + "falsifier": "An enterprise emulation run that reports success while omitting a KMS verification or object-integrity check the reference claims to perform.", + "label_meanings": { + "evidence_state": "Produced against synthesized or emulated AWS, not a live account. Synthetic evidence is never live evidence.", + "publication_state": "Not yet reviewed for publication.", + "verdict": "The command has not been executed for this card. No result is claimed." + }, + "labels": { + "evidence_state": "aws-synth-only", + "publication_state": "draft", + "verdict": "not-run" + }, + "maturity": "C0/C2", + "non_claims": [ + "Not enterprise-ready.", + "Not live-AWS proof.", + "Not compliance certification.", + "Not deployment safety." + ], + "result_detail": null, + "retraction_reason": null, + "schema_version": "cc.evidence_card.v1", + "source_revision": "7e007eaac73f562ee259d3457caee802f891ebdd-dirty", + "supersedes": null + }, + { + "artifacts": [ + { + "bytes": 2303, + "missing": false, + "path": "docs/product/OPEN_CORE_STRATEGY.md", + "sha256": "5aafa0ce83ebd3eba11dad99326efaa8516b6fcbd51f62304f3bceee25622baa" + }, + { + "bytes": 18617, + "missing": false, + "path": "README.md", + "sha256": "d520223b5a10c364ed90ce56cfdce9b7441566fe9f692001b04d375caf3f92bb" + } + ], + "assumptions": [ + "The wheel built in CI is the artifact the strategy describes.", + "Classification in docs/api.md is kept current by the packaging boundary test." + ], + "card_id": "open_core.strategy", + "claim": "The public research core is intended to remain inspectable for credibility and reproducibility, while possible private/commercial layers may operationalize the primitives.", + "command": [ + ".venv/bin/mkdocs build --strict" + ], + "counterevidence": [], + "falsifier": "A module the strategy document places in the open core that is absent from the published wheel, or an importable wheel surface classified nowhere in docs/api.md.", + "label_meanings": { + "evidence_state": "Produced on a local machine. Says nothing about cloud or deployed behaviour.", + "publication_state": "Not yet reviewed for publication.", + "verdict": "The command has not been executed for this card. No result is claimed." + }, + "labels": { + "evidence_state": "local-only", + "publication_state": "draft", + "verdict": "not-run" + }, + "maturity": "C0", + "non_claims": [ + "Does not make the project a product today.", + "Does not claim enterprise readiness." + ], + "result_detail": null, + "retraction_reason": null, + "schema_version": "cc.evidence_card.v1", + "source_revision": "7e007eaac73f562ee259d3457caee802f891ebdd-dirty", + "supersedes": null + } + ], + "counts_by_label": { + "evidence_state": { + "aws-live": 0, + "aws-synth-only": 1, + "illustrative": 0, + "local-only": 7 + }, + "publication_state": { + "draft": 8, + "released": 0, + "retracted": 0, + "superseded": 0 + }, + "verdict": { + "fail": 0, + "not-run": 8, + "pass": 0, + "unverifiable": 0 + } + }, + "generated_note": "Generated from docs/claims/claim_boundary_manifest.v0.1.json. Verdicts are 'not-run': no command was executed during generation.", + "label_meanings": { + "evidence_state": { + "aws-live": "Produced against a live AWS account, for the named run only.", + "aws-synth-only": "Produced against synthesized or emulated AWS, not a live account. Synthetic evidence is never live evidence.", + "illustrative": "A worked example or figure. Not measured evidence, and must never be cited as a result.", + "local-only": "Produced on a local machine. Says nothing about cloud or deployed behaviour." + }, + "publication_state": { + "draft": "Not yet reviewed for publication.", + "released": "Published. Says nothing about whether the claim is true, only that it was reviewed for release.", + "retracted": "Withdrawn. The reason is on the card; the card is not deleted.", + "superseded": "A later card replaces this one. Retained so the record is not rewritten." + }, + "verdict": { + "fail": "The command ran and its checks did not succeed.", + "not-run": "The command has not been executed for this card. No result is claimed.", + "pass": "The command ran and its checks succeeded. Scope is whatever the command covers -- no wider.", + "unverifiable": "The check could not be performed. This is not a pass and not a fail." + } + }, + "non_claims": [ + "This manifest lists claims and the commands that test them. It does not establish that any claim is true.", + "The three labels are orthogonal. A passing verdict on local-only evidence says nothing about deployed behaviour, and a released publication state says only that a card was reviewed for release.", + "Counts are reported per label. There is no aggregate score, and any surface that computes one from this file is misusing it.", + "A card with verdict 'not-run' has no result. It must not be displayed as passing, pending, or healthy." + ], + "schema_version": "cc.site_evidence_manifest.v1", + "source_revision": "7e007eaac73f562ee259d3457caee802f891ebdd-dirty" +} diff --git a/schemas/cc.evidence_card.v1.json b/schemas/cc.evidence_card.v1.json new file mode 100644 index 0000000..12fd86a --- /dev/null +++ b/schemas/cc.evidence_card.v1.json @@ -0,0 +1,296 @@ +{ + "$schema": "https://json-schema.org/draft/2020-12/schema", + "$id": "https://cc-framework.local/schemas/cc.evidence_card.v1.json", + "title": "cc.evidence_card.v1", + "description": "One claim with everything needed to disagree with it. The three labels are ORTHOGONAL and a consumer MUST NOT collapse them into a single status: evidence_state says where evidence came from, verdict says what happened when the command ran, publication_state says where the card is in its own lifecycle. None implies another. This schema deliberately defines no aggregate score, badge, or health field.", + "type": "object", + "additionalProperties": false, + "required": [ + "schema_version", + "card_id", + "claim", + "maturity", + "source_revision", + "command", + "artifacts", + "labels", + "label_meanings", + "falsifier", + "assumptions", + "non_claims" + ], + "properties": { + "schema_version": { + "const": "cc.evidence_card.v1" + }, + "card_id": { + "type": "string", + "minLength": 1 + }, + "claim": { + "type": "string", + "minLength": 1 + }, + "maturity": { + "type": "string", + "minLength": 1, + "description": "Claim-boundary level, e.g. C3. Not a quality rating." + }, + "source_revision": { + "type": "string", + "minLength": 1, + "description": "Git revision the card was generated from. A '-dirty' suffix means the working tree differed." + }, + "command": { + "type": "array", + "minItems": 1, + "items": { + "type": "string", + "minLength": 1 + }, + "description": "How a reader reproduces this. A claim no command can demonstrate is an assertion." + }, + "artifacts": { + "type": "array", + "items": { + "type": "object", + "additionalProperties": false, + "required": [ + "path", + "sha256", + "bytes", + "missing" + ], + "properties": { + "path": { + "type": "string", + "minLength": 1 + }, + "sha256": { + "type": [ + "string", + "null" + ], + "pattern": "^[0-9a-f]{64}$" + }, + "bytes": { + "type": [ + "integer", + "null" + ], + "minimum": 0 + }, + "missing": { + "type": "boolean", + "description": "True when a claim names a path that does not exist. Recorded, not skipped." + } + } + } + }, + "labels": { + "type": "object", + "additionalProperties": false, + "required": [ + "evidence_state", + "verdict", + "publication_state" + ], + "description": "All three are required. A surface showing fewer will show the flattering one.", + "properties": { + "evidence_state": { + "enum": [ + "local-only", + "aws-synth-only", + "aws-live", + "illustrative" + ] + }, + "verdict": { + "enum": [ + "pass", + "fail", + "unverifiable", + "not-run" + ], + "description": "'unverifiable' is not a fail: the check could not be performed at all. 'not-run' claims no result." + }, + "publication_state": { + "enum": [ + "draft", + "released", + "superseded", + "retracted" + ], + "description": "'released' says a card was reviewed for release, not that its claim is true." + } + } + }, + "label_meanings": { + "type": "object", + "additionalProperties": false, + "required": [ + "evidence_state", + "verdict", + "publication_state" + ], + "description": "Gloss shown beside each value so a reader never infers what a bare token means.", + "properties": { + "evidence_state": { + "type": "string", + "minLength": 1 + }, + "verdict": { + "type": "string", + "minLength": 1 + }, + "publication_state": { + "type": "string", + "minLength": 1 + } + } + }, + "result_detail": { + "type": [ + "string", + "null" + ], + "description": "What actually ran. Required whenever verdict is pass or fail." + }, + "falsifier": { + "type": "string", + "minLength": 1, + "description": "What observation would show this claim is wrong. Required: a claim with no falsifier is not evidence." + }, + "counterevidence": { + "type": "array", + "items": { + "type": "string", + "minLength": 1 + } + }, + "assumptions": { + "type": "array", + "minItems": 1, + "items": { + "type": "string", + "minLength": 1 + } + }, + "non_claims": { + "type": "array", + "minItems": 1, + "items": { + "type": "string", + "minLength": 1 + }, + "description": "What this card explicitly does not establish." + }, + "supersedes": { + "type": [ + "string", + "null" + ] + }, + "retraction_reason": { + "type": [ + "string", + "null" + ] + } + }, + "allOf": [ + { + "if": { + "properties": { + "labels": { + "properties": { + "verdict": { + "enum": [ + "pass", + "fail" + ] + } + }, + "required": [ + "verdict" + ] + } + }, + "required": [ + "labels" + ] + }, + "then": { + "properties": { + "result_detail": { + "type": "string", + "minLength": 1 + } + }, + "required": [ + "result_detail" + ] + } + }, + { + "if": { + "properties": { + "labels": { + "properties": { + "publication_state": { + "const": "retracted" + } + }, + "required": [ + "publication_state" + ] + } + }, + "required": [ + "labels" + ] + }, + "then": { + "properties": { + "retraction_reason": { + "type": "string", + "minLength": 1 + } + }, + "required": [ + "retraction_reason" + ] + } + }, + { + "if": { + "properties": { + "labels": { + "properties": { + "publication_state": { + "const": "superseded" + } + }, + "required": [ + "publication_state" + ] + } + }, + "required": [ + "labels" + ] + }, + "then": { + "properties": { + "supersedes": { + "type": "string", + "minLength": 1 + } + }, + "required": [ + "supersedes" + ] + } + } + ] +} diff --git a/scripts/build_evidence_cards.py b/scripts/build_evidence_cards.py new file mode 100755 index 0000000..5dbf399 --- /dev/null +++ b/scripts/build_evidence_cards.py @@ -0,0 +1,275 @@ +#!/usr/bin/env python3 +"""Emit evidence cards and the site manifest an Evidence Atlas consumes. + +Reads the claim-boundary manifest, binds each claim to its artifacts by digest +and to the current source revision, and writes one evidence card per claim plus +a ``cc.site_evidence_manifest.v1`` bundle. + +The default verdict is ``not-run``. A ``pass`` is reachable only with ``--run``, +which executes each claim's commands and records what actually happened. A card +cannot acquire a passing verdict by being written confidently. + +Nothing here computes an aggregate. Counts are reported per label, because a +site reporting "7/8 passing" would be describing something nobody measured. + +Usage:: + + python scripts/build_evidence_cards.py # verdicts: not-run + python scripts/build_evidence_cards.py --run # execute commands + python scripts/build_evidence_cards.py --check # verify committed output +""" + +from __future__ import annotations + +import argparse +import hashlib +import json +import os +import shlex +import subprocess +import sys +from pathlib import Path +from typing import Any + +from cc.evidence_card import ArtifactRef, EvidenceCard, cards_to_site_manifest + +ROOT = Path(__file__).resolve().parents[1] +MANIFEST = ROOT / "docs" / "claims" / "claim_boundary_manifest.v0.1.json" +OUT_DIR = ROOT / "evidence-cards" +SITE_MANIFEST = OUT_DIR / "site-evidence-manifest.v1.json" + +#: Commands that are safe to execute under --run. Anything not matching is +#: recorded as unverifiable rather than being shelled out blindly: a card +#: generator that runs arbitrary strings from a data file is a code-execution +#: surface, not an evidence tool. +RUNNABLE_PREFIXES = ("pytest ", "python ", "make ") + + +def _git_revision() -> str: + try: + out = subprocess.run( + ["git", "rev-parse", "HEAD"], + capture_output=True, + text=True, + check=False, + cwd=ROOT, + ) + revision = out.stdout.strip() + except OSError: + revision = "" + if not revision: + return "unknown-revision" + dirty = subprocess.run( + ["git", "status", "--porcelain"], + capture_output=True, + text=True, + check=False, + cwd=ROOT, + ).stdout.strip() + # A dirty tree is recorded, not hidden: a card bound to "abc123" when the + # working tree differs from abc123 is bound to the wrong thing. + return f"{revision}-dirty" if dirty else revision + + +def _artifact(path_str: str) -> ArtifactRef: + path = ROOT / path_str + if not path.is_file(): + return ArtifactRef(path=path_str, missing=True) + data = path.read_bytes() + return ArtifactRef( + path=path_str, + sha256=hashlib.sha256(data).hexdigest(), + bytes_len=len(data), + ) + + +#: pytest exit code 1 means "tests ran and some failed" -- the one non-zero exit +#: this harness can confidently attribute to a check performing and not +#: succeeding. Codes 2-5 mean usage error, internal error, interruption, or no +#: tests collected: in each the check did not run, which is `unverifiable`, not +#: `fail`. Everything else is likewise unattributable. +PYTEST_TESTS_FAILED = 1 + + +def _run_one(command: str, env: dict[str, str]) -> tuple[str, str]: + """Run a single command. Returns (outcome, one-line record).""" + if not command.startswith(RUNNABLE_PREFIXES): + return ( + "unverifiable", + f"{command} -> not executed: outside the runnable allowlist {RUNNABLE_PREFIXES}", + ) + argv = shlex.split(command) + is_pytest = argv[0] == "pytest" + if is_pytest: + argv = [sys.executable, "-m", *argv] + elif argv[0] == "python": + argv = [sys.executable, *argv[1:]] + proc = subprocess.run(argv, capture_output=True, text=True, check=False, cwd=ROOT, env=env) + tail = (proc.stdout or proc.stderr).strip().splitlines() + summary = (tail[-1] if tail else "")[:160] + record = f"{command} -> exit {proc.returncode}: {summary}" + if proc.returncode == 0: + return "pass", record + if is_pytest and proc.returncode == PYTEST_TESTS_FAILED: + return "fail", record + return "unverifiable", record + " | exit not attributable to a check running" + + +def _run_commands(commands: list[str]) -> tuple[str, str]: + """Run every command and derive the card verdict conservatively. + + Each command is recorded with its own outcome, so a claim whose tests pass + but whose `make` target cannot run here reports both facts rather than + collapsing to one. The card verdict is the worst outcome present: + + * any `fail` -> the card fails + * else any `unverifiable` -> the card is unverifiable + * else -> the card passes + + The harness never guesses a `fail`. A non-zero exit becomes `fail` only + when it can be attributed to a check running and not succeeding -- pytest + exit code 1. Everything else is `unverifiable`, which is a different fact + about the world. + + This is not pedantry. On the first run of this script `make test-kernel` + exited non-zero because its dependency-install step could not reach the + network, and the kernel tests never executed. Reporting that as `fail` + would have published a failure nobody observed. + """ + env = {**os.environ, "PYTHONPATH": str(ROOT / "src")} + outcomes: list[str] = [] + records: list[str] = [] + for command in commands: + outcome, record = _run_one(command, env) + outcomes.append(outcome) + records.append(record) + + if "fail" in outcomes: + verdict = "fail" + elif "unverifiable" in outcomes: + verdict = "unverifiable" + else: + verdict = "pass" + + tally = ", ".join( + f"{o}={outcomes.count(o)}" for o in ("pass", "fail", "unverifiable") if outcomes.count(o) + ) + return verdict, f"[{tally}] " + " | ".join(records) + + +def build(*, run: bool) -> tuple[list[EvidenceCard], dict[str, Any]]: + manifest = json.loads(MANIFEST.read_text(encoding="utf-8")) + revision = _git_revision() + cards: list[EvidenceCard] = [] + + for claim in manifest["claims"]: + commands = tuple(claim["supporting_tests_or_commands"]) + if run: + verdict, detail = _run_commands(list(commands)) + else: + verdict, detail = "not-run", None + + cards.append( + EvidenceCard( + card_id=claim["id"], + claim=claim["claim_text"], + maturity=claim["level"], + source_revision=revision, + command=commands, + artifacts=tuple(_artifact(p) for p in claim["supporting_files"]), + falsifier=claim["falsifier"], + assumptions=tuple(claim["assumptions"]), + non_claims=tuple(claim["non_claims"]), + evidence_state=claim["evidence_state"], + verdict=verdict, + # Every card starts as a draft. Release is a human decision made + # in the publication workflow, not a side effect of generation. + publication_state="draft", + result_detail=detail, + ) + ) + + note = "Generated from docs/claims/claim_boundary_manifest.v0.1.json. " + ( + "Verdicts reflect commands executed during generation." + if run + else "Verdicts are 'not-run': no command was executed during generation." + ) + return cards, cards_to_site_manifest(cards, source_revision=revision, generated_note=note) + + +def _write(site: dict[str, Any], cards: list[EvidenceCard]) -> None: + OUT_DIR.mkdir(exist_ok=True) + (OUT_DIR / "cards").mkdir(exist_ok=True) + for card in cards: + path = OUT_DIR / "cards" / f"{card.card_id}.json" + path.write_text( + json.dumps(card.to_json(), indent=2, sort_keys=True, ensure_ascii=False) + "\n", + encoding="utf-8", + ) + SITE_MANIFEST.write_text( + json.dumps(site, indent=2, sort_keys=True, ensure_ascii=False) + "\n", + encoding="utf-8", + ) + + +def _stable(payload: dict[str, Any]) -> dict[str, Any]: + """Drop fields that legitimately change between runs, for --check.""" + out = json.loads(json.dumps(payload)) + out.pop("source_revision", None) + out.pop("generated_note", None) + for card in out.get("cards", []): + card.pop("source_revision", None) + return out + + +def main(argv: list[str] | None = None) -> int: + parser = argparse.ArgumentParser(description=__doc__.splitlines()[0]) + parser.add_argument( + "--run", + action="store_true", + help="execute each claim's commands and record real verdicts. Results are " + "host-specific, so the COMMITTED cards are always the not-run scaffold; " + "regenerate without --run before committing.", + ) + parser.add_argument( + "--check", + action="store_true", + help="verify the committed cards match the manifest (ignoring revision)", + ) + args = parser.parse_args(argv) + + cards, site = build(run=args.run) + + if args.check: + if not SITE_MANIFEST.exists(): + print("site manifest missing; run without --check", file=sys.stderr) + return 1 + committed = json.loads(SITE_MANIFEST.read_text(encoding="utf-8")) + if _stable(committed) != _stable(site): + print( + "evidence cards are stale; regenerate with:\n" + " python scripts/build_evidence_cards.py", + file=sys.stderr, + ) + return 1 + print(f"evidence cards current: {site['card_count']} cards") + return 0 + + _write(site, cards) + print(f"wrote {site['card_count']} evidence cards to {OUT_DIR.relative_to(ROOT)}") + if args.run: + print( + " NOTE: verdicts are specific to this host and toolchain. The " + "committed\n cards are the not-run scaffold -- regenerate " + "without --run before committing." + ) + for label, counts in site["counts_by_label"].items(): + shown = ", ".join(f"{k}={v}" for k, v in counts.items() if v) + print(f" {label:20s} {shown}") + print("\n Counts are per label and orthogonal. There is no aggregate score,") + print(" and any surface computing one from this file is misusing it.") + return 0 + + +if __name__ == "__main__": + raise SystemExit(main()) diff --git a/scripts/validate_claim_boundary_manifest.py b/scripts/validate_claim_boundary_manifest.py index 107800b..c8c9446 100644 --- a/scripts/validate_claim_boundary_manifest.py +++ b/scripts/validate_claim_boundary_manifest.py @@ -1,11 +1,11 @@ from __future__ import annotations import json +import re import sys from pathlib import Path from typing import Any - ROOT = Path(__file__).resolve().parents[1] MANIFEST_PATH = ROOT / "docs" / "claims" / "claim_boundary_manifest.v0.1.json" @@ -29,8 +29,17 @@ "supporting_tests_or_commands", "non_claims", "risk_if_overstated", + # Required so every claim can be rendered as an evidence card without the + # renderer inventing anything. A claim with no falsifier is an assertion. + "evidence_state", + "falsifier", + "assumptions", } +#: Where a claim's evidence came from. Mirrors cc.evidence_card.EVIDENCE_STATES; +#: a test asserts the two lists agree. +EVIDENCE_STATES = ("local-only", "aws-synth-only", "aws-live", "illustrative") + def load_manifest(path: Path = MANIFEST_PATH) -> dict[str, Any]: return json.loads(path.read_text(encoding="utf-8")) @@ -94,6 +103,34 @@ def validate_manifest(manifest: dict[str, Any], root: Path = ROOT) -> list[str]: tests = claim.get("supporting_tests_or_commands") if not isinstance(tests, list) or not tests: errors.append(f"{claim_id}: supporting_tests_or_commands must be a non-empty list") + else: + # Path-like tokens in a command must resolve. A renamed test would + # otherwise leave the claim pointing at nothing. + for entry in tests: + if not isinstance(entry, str) or not entry.strip(): + errors.append(f"{claim_id}: command entries must be non-empty strings") + continue + for token in re.findall(r"(?:tests|src|scripts|examples)/[\w/.\-]+", entry): + if not (root / token.split("::")[0]).exists(): + errors.append(f"{claim_id}: command names a missing path: {token}") + + evidence_state = claim.get("evidence_state") + if evidence_state not in EVIDENCE_STATES: + errors.append( + f"{claim_id}: evidence_state must be one of {EVIDENCE_STATES}, " + f"got {evidence_state!r}" + ) + + falsifier = claim.get("falsifier") + if not isinstance(falsifier, str) or not falsifier.strip(): + errors.append( + f"{claim_id}: falsifier must be a non-empty string. A claim no " + "observation could refute is an assertion, not evidence." + ) + + assumptions = claim.get("assumptions") + if not isinstance(assumptions, list) or not assumptions: + errors.append(f"{claim_id}: assumptions must be a non-empty list") forbidden_upgrades = manifest.get("forbidden_upgrades") if not isinstance(forbidden_upgrades, list) or not forbidden_upgrades: diff --git a/src/cc/evidence_card/__init__.py b/src/cc/evidence_card/__init__.py new file mode 100644 index 0000000..19a8ea0 --- /dev/null +++ b/src/cc/evidence_card/__init__.py @@ -0,0 +1,40 @@ +"""Evidence cards -- the unit an Evidence Atlas displays. + +A card is a claim plus everything needed to disagree with it. See +:mod:`cc.evidence_card._card` for the design note, in particular why there is no +composite status property. +""" + +from __future__ import annotations + +from cc.evidence_card._card import ( + EVIDENCE_STATES, + LABEL_MEANINGS, + PUBLICATION_STATES, + SCHEMA_VERSION, + VERDICTS, + ArtifactRef, + EvidenceCard, + EvidenceCardError, + EvidenceState, + PublicationState, + Verdict, + cards_to_site_manifest, + render_labels, +) + +__all__ = [ + "EVIDENCE_STATES", + "LABEL_MEANINGS", + "PUBLICATION_STATES", + "SCHEMA_VERSION", + "VERDICTS", + "ArtifactRef", + "EvidenceCard", + "EvidenceCardError", + "EvidenceState", + "PublicationState", + "Verdict", + "cards_to_site_manifest", + "render_labels", +] diff --git a/src/cc/evidence_card/_card.py b/src/cc/evidence_card/_card.py new file mode 100644 index 0000000..875c7f5 --- /dev/null +++ b/src/cc/evidence_card/_card.py @@ -0,0 +1,318 @@ +"""Evidence cards: the unit an Atlas displays, and the thing it refuses to be. + +An evidence card is a claim together with everything a reader needs in order to +disagree with it: how it was operationalized, which command produces it, what +would falsify it, what it assumes, and what it explicitly does not claim. + +The design constraint that shapes this module is negative. A card is **not** a +trust score, and no function here computes one. Three labels travel with every +card and they are deliberately *orthogonal*: + +``evidence_state`` + Where the evidence came from -- ``local-only``, ``aws-synth-only``, + ``aws-live``, ``illustrative``. +``verdict`` + What happened when the command ran -- ``pass``, ``fail``, ``unverifiable``, + ``not-run``. +``publication_state`` + Where the card is in its own lifecycle -- ``draft``, ``released``, + ``superseded``, ``retracted``. + +They answer different questions and none implies another. A ``pass`` that is +``local-only`` says nothing about deployed behaviour. A ``retracted`` card may +still carry a ``pass``: the run happened, and the claim was withdrawn anyway. +Collapsing them into one green checkmark is exactly the failure this object +exists to prevent, so :class:`EvidenceCard` provides no composite status +property, and :func:`render_labels` returns all three or raises. + +Two fields are required that most claim registries treat as optional: + +* ``falsifier`` -- what observation would show the claim is wrong. A claim with + no falsifier is not evidence; it is an assertion, and the emitter refuses it. +* ``non_claims`` -- what the card explicitly does not establish. + +The default verdict is ``not-run``. A ``pass`` is only reachable by executing +the command and recording the result, so a card cannot acquire a passing verdict +by being written confidently. +""" + +from __future__ import annotations + +from collections.abc import Mapping, Sequence +from dataclasses import dataclass, field +from typing import Any, Final, Literal, TypeAlias + +__all__ = [ + "EVIDENCE_STATES", + "PUBLICATION_STATES", + "SCHEMA_VERSION", + "VERDICTS", + "ArtifactRef", + "EvidenceCard", + "EvidenceCardError", + "EvidenceState", + "PublicationState", + "Verdict", + "render_labels", +] + +SCHEMA_VERSION: Final = "cc.evidence_card.v1" + +#: Where the evidence came from. This is a statement about provenance, not +#: about quality: ``aws-live`` evidence can record a failure, and +#: ``local-only`` evidence can be entirely sound for a local claim. +EvidenceState: TypeAlias = Literal[ + "local-only", + "aws-synth-only", + "aws-live", + "illustrative", +] + +#: What happened when the command ran. ``not-run`` is the default and the only +#: honest value for a card whose command has not been executed. ``unverifiable`` +#: is distinct from ``fail``: the check could not be performed at all, which is +#: a different fact about the world than the check performing and failing. +Verdict: TypeAlias = Literal["pass", "fail", "unverifiable", "not-run"] + +#: Where the card is in its own lifecycle. Retraction is a first-class state, +#: not a deletion: a withdrawn claim stays visible with its reason. +PublicationState: TypeAlias = Literal["draft", "released", "superseded", "retracted"] + +EVIDENCE_STATES: Final[tuple[EvidenceState, ...]] = ( + "local-only", + "aws-synth-only", + "aws-live", + "illustrative", +) +VERDICTS: Final[tuple[Verdict, ...]] = ("pass", "fail", "unverifiable", "not-run") +PUBLICATION_STATES: Final[tuple[PublicationState, ...]] = ( + "draft", + "released", + "superseded", + "retracted", +) + +#: Human-readable gloss for each label value. The Atlas shows these next to the +#: value so a reader never has to infer what a bare token means. +LABEL_MEANINGS: Final[Mapping[str, Mapping[str, str]]] = { + "evidence_state": { + "local-only": "Produced on a local machine. Says nothing about cloud or " + "deployed behaviour.", + "aws-synth-only": "Produced against synthesized or emulated AWS, not a " + "live account. Synthetic evidence is never live evidence.", + "aws-live": "Produced against a live AWS account, for the named run only.", + "illustrative": "A worked example or figure. Not measured evidence, and " + "must never be cited as a result.", + }, + "verdict": { + "pass": "The command ran and its checks succeeded. Scope is whatever the " + "command covers -- no wider.", + "fail": "The command ran and its checks did not succeed.", + "unverifiable": "The check could not be performed. This is not a pass and not a fail.", + "not-run": "The command has not been executed for this card. No result is claimed.", + }, + "publication_state": { + "draft": "Not yet reviewed for publication.", + "released": "Published. Says nothing about whether the claim is true, only " + "that it was reviewed for release.", + "superseded": "A later card replaces this one. Retained so the record is not rewritten.", + "retracted": "Withdrawn. The reason is on the card; the card is not deleted.", + }, +} + + +class EvidenceCardError(ValueError): + """Raised when a card is missing something that makes it evidence.""" + + +@dataclass(frozen=True) +class ArtifactRef: + """A file the claim rests on, bound by digest. + + ``sha256`` may be ``None`` only when ``missing`` is true -- a path named by a + claim that does not exist on disk. That is recorded rather than skipped: a + claim pointing at a file that is gone is a finding, not an absence. + """ + + path: str + sha256: str | None = None + bytes_len: int | None = None + missing: bool = False + + def to_json(self) -> dict[str, Any]: + return { + "path": self.path, + "sha256": self.sha256, + "bytes": self.bytes_len, + "missing": self.missing, + } + + +@dataclass(frozen=True) +class EvidenceCard: + """One claim, with everything needed to disagree with it. + + Raises: + EvidenceCardError: A required field is empty, or a label carries a value + outside its declared set. Construction is the enforcement point -- + an invalid card cannot exist to be rendered. + """ + + card_id: str + claim: str + maturity: str + source_revision: str + command: tuple[str, ...] + falsifier: str + assumptions: tuple[str, ...] + non_claims: tuple[str, ...] + evidence_state: EvidenceState + verdict: Verdict + publication_state: PublicationState + artifacts: tuple[ArtifactRef, ...] = () + result_detail: str | None = None + counterevidence: tuple[str, ...] = () + supersedes: str | None = None + retraction_reason: str | None = None + schema_version: str = field(default=SCHEMA_VERSION) + + def __post_init__(self) -> None: + for name in ("card_id", "claim", "maturity", "source_revision", "falsifier"): + value = getattr(self, name) + if not isinstance(value, str) or not value.strip(): + raise EvidenceCardError( + f"{self.card_id or ''}: {name} must be a non-empty string" + ) + + if not self.command: + raise EvidenceCardError( + f"{self.card_id}: a card needs at least one command. A claim no " + "command can demonstrate is an assertion, not evidence." + ) + if not self.non_claims: + raise EvidenceCardError( + f"{self.card_id}: a card needs at least one explicit non-claim. " + "Stating what a result does not establish is the point." + ) + + for label, allowed in ( + ("evidence_state", EVIDENCE_STATES), + ("verdict", VERDICTS), + ("publication_state", PUBLICATION_STATES), + ): + value = getattr(self, label) + if value not in allowed: + raise EvidenceCardError( + f"{self.card_id}: {label}={value!r} is not one of {allowed}" + ) + + if self.publication_state == "retracted" and not (self.retraction_reason or "").strip(): + raise EvidenceCardError( + f"{self.card_id}: a retracted card must carry its retraction_reason. " + "Withdrawing a claim without saying why rewrites the record." + ) + if self.publication_state == "superseded" and not (self.supersedes or "").strip(): + raise EvidenceCardError( + f"{self.card_id}: a superseded card must set 'supersedes' to name " + "the card that replaces it." + ) + if self.verdict in ("pass", "fail") and not (self.result_detail or "").strip(): + raise EvidenceCardError( + f"{self.card_id}: verdict={self.verdict!r} requires result_detail " + "naming what actually ran. A verdict without a record of the run " + "is an assertion." + ) + + # NOTE: there is deliberately no `status`, `score`, `is_ok`, or `badge` + # property on this class. The three labels answer different questions and a + # single composite would let a reader stop before asking any of them. If a + # caller wants one glyph, they must choose which question they are asking. + + def to_json(self) -> dict[str, Any]: + """Return the JSON-native card. Every label is present and separate.""" + return { + "schema_version": self.schema_version, + "card_id": self.card_id, + "claim": self.claim, + "maturity": self.maturity, + "source_revision": self.source_revision, + "command": list(self.command), + "artifacts": [artifact.to_json() for artifact in self.artifacts], + "labels": { + "evidence_state": self.evidence_state, + "verdict": self.verdict, + "publication_state": self.publication_state, + }, + "label_meanings": { + "evidence_state": LABEL_MEANINGS["evidence_state"][self.evidence_state], + "verdict": LABEL_MEANINGS["verdict"][self.verdict], + "publication_state": LABEL_MEANINGS["publication_state"][self.publication_state], + }, + "result_detail": self.result_detail, + "falsifier": self.falsifier, + "counterevidence": list(self.counterevidence), + "assumptions": list(self.assumptions), + "non_claims": list(self.non_claims), + "supersedes": self.supersedes, + "retraction_reason": self.retraction_reason, + } + + +def render_labels(card: EvidenceCard) -> dict[str, dict[str, str]]: + """Return all three labels with their meanings, for display. + + This is the only rendering helper provided, and it returns **three** + entries. There is no single-label variant, because a surface that can show + one label will show the flattering one. + """ + return { + label: { + "value": getattr(card, label), + "meaning": LABEL_MEANINGS[label][getattr(card, label)], + } + for label in ("evidence_state", "verdict", "publication_state") + } + + +def cards_to_site_manifest( + cards: Sequence[EvidenceCard], + *, + source_revision: str, + generated_note: str, +) -> dict[str, Any]: + """Bundle cards into the manifest a static Atlas consumes. + + The manifest carries counts *per label*, never an aggregate. A reader + learns how many cards are ``not-run`` and how many are ``local-only`` + separately, because a site that reported "7/8 passing" would be describing + something nobody measured. + """ + by_label: dict[str, dict[str, int]] = { + "evidence_state": dict.fromkeys(EVIDENCE_STATES, 0), + "verdict": dict.fromkeys(VERDICTS, 0), + "publication_state": dict.fromkeys(PUBLICATION_STATES, 0), + } + for card in cards: + for label in by_label: + by_label[label][getattr(card, label)] += 1 + + return { + "schema_version": "cc.site_evidence_manifest.v1", + "source_revision": source_revision, + "generated_note": generated_note, + "card_count": len(cards), + "counts_by_label": by_label, + "label_meanings": {k: dict(v) for k, v in LABEL_MEANINGS.items()}, + "cards": [card.to_json() for card in cards], + "non_claims": [ + "This manifest lists claims and the commands that test them. It does " + "not establish that any claim is true.", + "The three labels are orthogonal. A passing verdict on local-only " + "evidence says nothing about deployed behaviour, and a released " + "publication state says only that a card was reviewed for release.", + "Counts are reported per label. There is no aggregate score, and any " + "surface that computes one from this file is misusing it.", + "A card with verdict 'not-run' has no result. It must not be " + "displayed as passing, pending, or healthy.", + ], + } diff --git a/tests/unit/evidence_card/test_evidence_card.py b/tests/unit/evidence_card/test_evidence_card.py new file mode 100644 index 0000000..111def8 --- /dev/null +++ b/tests/unit/evidence_card/test_evidence_card.py @@ -0,0 +1,288 @@ +"""Evidence cards: the object, and the things it refuses to be. + +Most of these tests assert an *absence*. That is deliberate. The failure mode +this object exists to prevent is a surface that collapses three orthogonal +labels into one green checkmark, so the tests that matter most are the ones +asserting no such collapse is reachable. +""" + +from __future__ import annotations + +import json +import subprocess +import sys +from pathlib import Path + +import pytest +from jsonschema import Draft202012Validator + +from cc.evidence_card import ( + EVIDENCE_STATES, + LABEL_MEANINGS, + PUBLICATION_STATES, + VERDICTS, + ArtifactRef, + EvidenceCard, + EvidenceCardError, + cards_to_site_manifest, + render_labels, +) + +ROOT = Path(__file__).resolve().parents[3] +SCHEMA = json.loads((ROOT / "schemas" / "cc.evidence_card.v1.json").read_text()) +CARDS_DIR = ROOT / "evidence-cards" / "cards" +SITE_MANIFEST = ROOT / "evidence-cards" / "site-evidence-manifest.v1.json" + + +def _card(**overrides) -> EvidenceCard: + base = { + "card_id": "demo.claim", + "claim": "The kernel computes classical Frechet-Hoeffding bounds.", + "maturity": "C3", + "source_revision": "abc123", + "command": ("pytest tests/unit/kernel",), + "falsifier": "A marginal configuration where the LP and the closed form disagree.", + "assumptions": ("Exact marginals are supplied.",), + "non_claims": ("Does not prove deployment safety.",), + "evidence_state": "local-only", + "verdict": "not-run", + "publication_state": "draft", + } + base.update(overrides) + return EvidenceCard(**base) + + +# --- the refusals that make a card evidence ---------------------------------- + + +def test_a_card_without_a_falsifier_is_refused(): + """A claim no observation could refute is an assertion, not evidence.""" + with pytest.raises(EvidenceCardError, match="falsifier"): + _card(falsifier=" ") + + +def test_a_card_without_a_command_is_refused(): + with pytest.raises(EvidenceCardError, match="at least one command"): + _card(command=()) + + +def test_a_card_without_a_non_claim_is_refused(): + with pytest.raises(EvidenceCardError, match="explicit non-claim"): + _card(non_claims=()) + + +@pytest.mark.parametrize("verdict", ["pass", "fail"]) +def test_a_verdict_without_a_record_of_the_run_is_refused(verdict): + """You cannot assert a result without saying what produced it.""" + with pytest.raises(EvidenceCardError, match="result_detail"): + _card(verdict=verdict, result_detail=None) + + +def test_a_retraction_without_a_reason_is_refused(): + """Withdrawing a claim without saying why rewrites the record.""" + with pytest.raises(EvidenceCardError, match="retraction_reason"): + _card(publication_state="retracted") + + +def test_a_superseded_card_must_name_its_successor(): + with pytest.raises(EvidenceCardError, match="supersedes"): + _card(publication_state="superseded") + + +@pytest.mark.parametrize( + ("label", "bad"), + [ + ("evidence_state", "production"), + ("verdict", "green"), + ("verdict", "ok"), + ("publication_state", "live"), + ], +) +def test_labels_outside_their_declared_sets_are_refused(label, bad): + with pytest.raises(EvidenceCardError, match=label): + _card(**{label: bad}) + + +# --- the collapse this object exists to prevent ------------------------------- + + +def test_the_card_exposes_no_composite_status(): + """No `status`, `score`, `is_ok`, or `badge`. + + A single glyph lets a reader stop before asking any of the three questions + the labels answer. If one is ever added, this test is the tripwire. + """ + card = _card() + for forbidden in ( + "status", + "score", + "is_ok", + "ok", + "badge", + "health", + "passing", + "overall", + "summary", + "grade", + ): + assert not hasattr(card, forbidden), f"EvidenceCard grew a composite: {forbidden}" + + +def test_render_labels_returns_all_three_or_nothing(): + """There is no single-label renderer: a surface that can show one will show + the flattering one.""" + rendered = render_labels(_card()) + assert set(rendered) == {"evidence_state", "verdict", "publication_state"} + for entry in rendered.values(): + assert entry["value"] + assert entry["meaning"] + + +def test_labels_are_independent_every_combination_is_constructible(): + """No label constrains another. + + A retracted card may still carry a passing verdict: the run happened, and + the claim was withdrawn anyway. A local-only pass says nothing about + deployment. If a future change couples them, this fails. + """ + built = 0 + for evidence_state in EVIDENCE_STATES: + for verdict in VERDICTS: + for publication_state in PUBLICATION_STATES: + card = _card( + evidence_state=evidence_state, + verdict=verdict, + publication_state=publication_state, + result_detail="ran: 6 passed" if verdict in ("pass", "fail") else None, + retraction_reason=( + "superseded by a sharper bound" + if publication_state == "retracted" + else None + ), + supersedes=("demo.claim.v2" if publication_state == "superseded" else None), + ) + assert card.evidence_state == evidence_state + assert card.verdict == verdict + assert card.publication_state == publication_state + built += 1 + assert built == len(EVIDENCE_STATES) * len(VERDICTS) * len(PUBLICATION_STATES) + + +def test_every_label_value_carries_a_meaning(): + """A bare token in a UI is an invitation to guess.""" + for label, values in ( + ("evidence_state", EVIDENCE_STATES), + ("verdict", VERDICTS), + ("publication_state", PUBLICATION_STATES), + ): + for value in values: + assert LABEL_MEANINGS[label][value].strip() + + +def test_not_run_is_the_default_verdict_of_the_generator(): + """A pass must be earned by running something.""" + assert _card().verdict == "not-run" + + +# --- serialization ------------------------------------------------------------ + + +def test_to_json_keeps_the_three_labels_separate(): + payload = _card().to_json() + assert set(payload["labels"]) == {"evidence_state", "verdict", "publication_state"} + # No top-level flattened alias may appear beside them. + for forbidden in ("status", "score", "badge", "ok", "passing"): + assert forbidden not in payload + + +def test_to_json_round_trips(): + payload = _card().to_json() + assert json.loads(json.dumps(payload)) == payload + + +def test_missing_artifacts_are_recorded_not_skipped(): + """A claim pointing at a file that is gone is a finding, not an absence.""" + card = _card(artifacts=(ArtifactRef(path="docs/gone.md", missing=True),)) + artifact = card.to_json()["artifacts"][0] + assert artifact["missing"] is True + assert artifact["sha256"] is None + + +# --- the site manifest -------------------------------------------------------- + + +def test_site_manifest_counts_per_label_and_never_aggregates(): + cards = [ + _card(card_id="a", verdict="not-run"), + _card(card_id="b", verdict="pass", result_detail="6 passed"), + _card(card_id="c", evidence_state="aws-synth-only", verdict="unverifiable"), + ] + site = cards_to_site_manifest(cards, source_revision="abc", generated_note="test") + + assert site["card_count"] == 3 + assert site["counts_by_label"]["verdict"]["pass"] == 1 + assert site["counts_by_label"]["verdict"]["not-run"] == 1 + assert site["counts_by_label"]["evidence_state"]["aws-synth-only"] == 1 + # No aggregate anywhere. + for forbidden in ("score", "passing_rate", "health", "overall", "summary_status"): + assert forbidden not in site + + +def test_site_manifest_states_that_its_counts_are_not_a_score(): + site = cards_to_site_manifest([_card()], source_revision="abc", generated_note="n") + joined = " ".join(site["non_claims"]).lower() + assert "orthogonal" in joined + assert "no aggregate score" in joined + assert "not-run" in joined + + +# --- the committed artifacts -------------------------------------------------- + + +def test_schema_is_valid_and_defines_no_aggregate(): + Draft202012Validator.check_schema(SCHEMA) + properties = set(SCHEMA["properties"]) + for forbidden in ("status", "score", "badge", "health", "overall"): + assert forbidden not in properties + + +@pytest.mark.parametrize("path", sorted(CARDS_DIR.glob("*.json")), ids=lambda p: p.stem) +def test_committed_cards_validate_against_the_schema(path): + errors = list(Draft202012Validator(SCHEMA).iter_errors(json.loads(path.read_text()))) + assert not errors, [e.message for e in errors[:3]] + + +def test_committed_cards_are_current(): + proc = subprocess.run( + [sys.executable, str(ROOT / "scripts" / "build_evidence_cards.py"), "--check"], + capture_output=True, + text=True, + check=False, + cwd=ROOT, + env={"PYTHONPATH": str(ROOT / "src"), "PATH": "/usr/bin:/bin"}, + ) + assert proc.returncode == 0, proc.stdout + proc.stderr + + +def test_committed_cards_claim_no_results(): + """The committed scaffold must never carry a verdict from someone's laptop.""" + site = json.loads(SITE_MANIFEST.read_text()) + verdicts = site["counts_by_label"]["verdict"] + assert verdicts["not-run"] == site["card_count"] + assert verdicts["pass"] == 0 + assert verdicts["fail"] == 0 + + +def test_every_committed_card_has_a_falsifier_and_a_non_claim(): + for path in sorted(CARDS_DIR.glob("*.json")): + card = json.loads(path.read_text()) + assert card["falsifier"].strip(), path.name + assert card["non_claims"], path.name + assert card["assumptions"], path.name + + +def test_the_synthetic_aws_lane_is_labelled_as_such(): + """Synthetic evidence is never live evidence, and the label must say so.""" + card = json.loads((CARDS_DIR / "enterprise.reference_v0_1.json").read_text()) + assert card["labels"]["evidence_state"] == "aws-synth-only" + assert "never live evidence" in " ".join(card["assumptions"]).lower() From 5e2b939d026e465d9d4d7207f376037b58e39b81 Mon Sep 17 00:00:00 2001 From: Pranav Bhave <90584946+Cubits11@users.noreply.github.com> Date: Thu, 20 Aug 2026 14:44:27 +0000 Subject: [PATCH 05/15] docs(research): add epistemic research upgrade package Adds docs/research/future-expansion/, a method package for converting a narrative or intuition into research objects that can be tested, replicated, or discarded. - README.md: purpose, operating loop, non-negotiable rules, cited research foundations, contents, mapping onto existing CC-Framework governance surfaces, and a porting manifest for the two sibling project tracks. - source-ledger.md: a worked Week 1 artifact classifying one real narrative source statement by statement, with testable translations, disallowed inferences, the three method heuristics that survive translation, and a properly controlled falsification exercise for its only checkable claims. - eight-week-plan.md: the eight-week schedule with per-week gates, two project tracks, and an appendix mapping each week's artifact onto the claim boundary manifest, non-claims, evidence roles, confirmatory protocol, receipts, and decay semantics already in this repository. - prompt-library.md: eleven prompts that produce research artifacts rather than predictions. Documentation only. Adds no claim to the claim boundary manifest, changes no kernel or evidence behavior, and states explicitly that it is not evidence. Verified with mkdocs build --strict, scripts/check_artifact_boundary.py --static, and the full pytest suite (689 passed, 9 skipped). --- docs/index.md | 1 + docs/research/future-expansion/README.md | 134 ++++++++ .../future-expansion/eight-week-plan.md | 285 ++++++++++++++++++ .../future-expansion/prompt-library.md | 277 +++++++++++++++++ .../future-expansion/source-ledger.md | 122 ++++++++ 5 files changed, 819 insertions(+) create mode 100644 docs/research/future-expansion/README.md create mode 100644 docs/research/future-expansion/eight-week-plan.md create mode 100644 docs/research/future-expansion/prompt-library.md create mode 100644 docs/research/future-expansion/source-ledger.md diff --git a/docs/index.md b/docs/index.md index 5644a12..29c7053 100644 --- a/docs/index.md +++ b/docs/index.md @@ -96,6 +96,7 @@ The experiment flow is illustrated in * [Repository Migration Manifest](release/MIGRATION_MANIFEST.md) * [Audit and Evidence Boundaries](architecture/AUDIT_EVIDENCE_BOUNDARIES.md) * [CC Reports and Receipts](research/CC_REPORTS.md) +* [Future Expansion: Epistemic Research Upgrade](research/future-expansion/README.md) * [Experiments Guide](experiments-guide.md) * [Reproducibility Notes](reproducibility.md) diff --git a/docs/research/future-expansion/README.md b/docs/research/future-expansion/README.md new file mode 100644 index 0000000..b717b7c --- /dev/null +++ b/docs/research/future-expansion/README.md @@ -0,0 +1,134 @@ +# Future Expansion: Epistemic Research Upgrade + +## Status + +Method documentation. This package defines how a narrative, an intuition, or a +motivational source is converted into research objects that can be tested, +replicated, or discarded. + +It adds no claim to the +[Claim Boundary Manifest](../../claims/CLAIM_BOUNDARY_MANIFEST.md), changes no +kernel behavior, produces no measurement, and is not evidence for anything. It +is a procedure for producing evidence later, under stated rules. + +## Purpose + +Turn subjective intuition into disciplined inquiry without pretending that +intuition is evidence. + +A source narrative may remain meaningful as reflection or motivation. It must +not be used to predict revenue, demand, personal outcomes, technical +feasibility, or market timing. The operating rule is: + +```text +A story may generate a question. +Only a registered observation may support an answer. +``` + +## The operating loop + +```text +Narrative / intuition + -> candidate hypothesis + -> alternative explanation + -> predeclared indicator + -> reversible test + -> observed result + -> replication or control + -> bounded decision +``` + +The loop is one-directional. A result may retire a hypothesis; it may not +retroactively edit the indicator that was predeclared to test it. + +## Non-negotiable rules + +1. No narrative-derived statement becomes a business, product, or technical + claim. +2. Every experiment names a decision it can change and a result that would stop + the work. +3. Results, interpretation, and non-claims remain separate fields. +4. No human research, customer outreach, external data collection, paid API + use, or live cloud work occurs without explicit authorization and + appropriate consent. +5. Tracks stay separate. Two projects may share epistemic methods without + sharing customers, claims, data, or branding. + +## Research foundations + +- Personalized but broadly applicable descriptions can feel unusually accurate. + When studying "resonance," use blinded or shuffled comparison material rather + than assuming felt accuracy reflects predictive accuracy. + [Mason & Budge, 2011](https://pubmed.ncbi.nlm.nih.gov/21315874/) +- Freeze protocols before observation. OSF registrations are designed as a + fixed project state that allows a visible withdrawal record rather than + silent revision. + [OSF registration guidance](https://help.osf.io/article/330-welcome-to-registrations) +- Treat small early studies as feasibility work with explicit progression + criteria, not as demonstrations of effectiveness. + [CONSORT pilot and feasibility guidance](https://www.bmj.com/content/355/bmj.i5239) +- Attestation mechanisms have separate proof boundaries. AWS Nitro attests + enclave measurements; Apple App Attest validates an app instance connecting + to a server; C2PA validates association and integrity of signed assertions, + not whether those assertions are true. + [AWS Nitro](https://docs.aws.amazon.com/enclaves/latest/user/set-up-attestation.html), + [Apple App Attest](https://developer.apple.com/documentation/DeviceCheck?changes=_3), + [C2PA](https://spec.c2pa.org/specifications/specifications/1.1/specs/C2PA_Specification.html) + +## Contents + +| Document | What it is | When to use it | +| --- | --- | --- | +| [Source Ledger](source-ledger.md) | A worked Week 1 artifact: one narrative source classified statement by statement into reflection, forecast, causal assertion, action heuristic, empirical claim, and marketing funnel, with testable translations and disallowed inferences. | Whenever a narrative, pitch, reading, or founder intuition is proposed as a reason to act. | +| [Eight-Week Plan](eight-week-plan.md) | The schedule: convert, destroy boundaries, pre-register, build instruments, run reversible work, replicate, review adversarially, decide. | Starting a bounded research push where the deliverable is a dated evidence packet. | +| [Prompt Library](prompt-library.md) | Eleven prompts that produce research artifacts rather than predictions. | Drafting a ledger entry, a boundary audit, a prior-art sweep, a preregistration, a replay handoff, a decision memo, or a retraction. | + +## Relationship to existing CC-Framework surfaces + +This package does not create a parallel governance process. Where CC-Framework +already has a mechanism, the plan uses it: + +| Plan artifact | Existing surface | +| --- | --- | +| Predeclared claim with owner, falsifier, decision, window, non-claim | [Claim Boundary Manifest](../../claims/CLAIM_BOUNDARY_MANIFEST.md) and `docs/claims/claim_boundary_manifest.v0.1.json` | +| Explicit non-claim per result | [Non-Claims](../NON_CLAIMS.md) | +| Evidence typed by what it can support | [Evidence Role Ontology](../../design-specs/evidence_role_ontology.md) | +| Exploratory result kept separate from confirmatory result | `src/cc/evidence/confirmatory_protocol.py` | +| Result that expires and must be rechecked | `src/cc/evidence/decay.py` | +| Replayable record of what was run | [CC Reports and Receipts](../CC_REPORTS.md) | +| Scoped human sign-off that does not upgrade evidence | `human_review_note` handling in `src/cc/evidence/claim_governance.py`; the dedicated artifact is still a planned [prompt-roadmap item](../prompt-roadmap/09_human_review_artifact.md) | +| Prompt-shaped execution specs | [Prompt Roadmap](../prompt-roadmap/02_claim_envelope_boundary_envelope.md) | + +The one boundary worth restating: a governance PASS means an evidence-bound +package is internally consistent under the verifier rules. It does not mean the +underlying result is correct, and it does not mean a system is safe. + +## Porting to sibling projects + +The eight-week plan carries two project-specific tracks, written to be lifted +into their own repositories rather than run from here. When those repositories +are available as writable workspaces, copy this directory to: + +| Track | Destination | +| --- | --- | +| B2B / Assay-Limina | `limina/docs/future-expansion/` | +| Vinctura | `docs/pivot/research/future-expansion/` | + +Two conditions apply to that copy. First, reconcile the plan with whatever +experiment registry and claim register already exist in the destination +repository; do not create a second, competing set of metrics. Second, check the +destination working tree before writing, since uncommitted work in an unrelated +area is easy to bury. + +## Non-claims + +- This package does not establish that any narrative source is accurate, + predictive, or causal. +- Classifying a statement as testable does not mean it has been tested. +- Completing the eight weeks does not produce certainty; the completion + standard is fewer unsupported claims, better instruments, clearer stop + conditions, preserved negative evidence, at least one independently + replayable result, and a more honest next decision. +- Nothing here authorizes human-subject research, customer outreach, external + data collection, or paid or live cloud work. Those require separate, + explicit authorization. diff --git a/docs/research/future-expansion/eight-week-plan.md b/docs/research/future-expansion/eight-week-plan.md new file mode 100644 index 0000000..0e96a7a --- /dev/null +++ b/docs/research/future-expansion/eight-week-plan.md @@ -0,0 +1,285 @@ +# Eight-Week Epistemic Research Upgrade + +## Purpose + +Turn subjective intuition into disciplined inquiry without pretending that +intuition is evidence. + +A source narrative may remain meaningful as reflection or motivation. It must +not be used to predict revenue, demand, personal outcomes, technical +feasibility, or market timing. + +```text +A story may generate a question. +Only a registered observation may support an answer. +``` + +The operating loop, the non-negotiable rules, and the research foundations are +stated once in the [package README](README.md) and are not repeated here. + +## Tracks + +The plan runs two independent project tracks that share methods and nothing +else - no customers, claims, data, or branding. + +- **B2B / Assay-Limina.** A technical attestation and provenance wedge. Its + central risk is claiming more than a cryptographic mechanism establishes. +- **Vinctura.** A service operation. Its central risk is promising an operating + standard that has not been performed and measured. + +CC-Framework hosts this package but is not a third track. Its role is the +[mapping appendix](#appendix-mapping-onto-cc-framework): the plan reuses the +governance surfaces this repository already has instead of inventing parallel +ones. + +## Week 1 - Convert story into research objects + +**Shared work** + +Create a four-column source ledger. A worked example against a real source is in +[Source Ledger](source-ledger.md). + +| Source statement | Classification | Testable translation | Disallowed inference | +| --- | --- | --- | --- | +| "A breakthrough is near" | Forecast | Does a predeclared intervention improve a measured outcome? | Revenue or success is inevitable. | +| "Follow signs" | Ambiguous heuristic | Which traction indicators are defined before results appear? | Retrospective coincidence proves causation. | +| "Experiment, then formalize what works" | Method heuristic | Does the result reproduce with a control or second run? | One outcome proves a scalable model. | +| "You are inventive" | Reflective affirmation | Does reflective framing alter effort or experiment completion? | Personality claims are facts. | + +**B2B / Assay-Limina** + +- Inventory every public technical claim. +- Map: claim, mechanism, trust root, measured artifact, missing evidence, and + explicit non-claim. +- Flag any claim that moves from "enclave measurement" to "physical capture," + "fraud elimination," or legal admissibility without a demonstrated binding. + +**Vinctura** + +- Freeze the actual near-term question: whether the operating promise - queue + avoidance, dependable delivery, and a well-run session - can be performed and + measured. +- Reconcile the plan with the existing `business/experiments/registry.yml`. Do + not create parallel competing metrics. +- Keep narrative-derived language out of customer-facing copy. + +**Gate** + +Every active proposition has an owner, evidence state, falsifier, decision, time +window, and non-claim. + +## Week 2 - Prior-art and boundary destruction + +**B2B / Assay-Limina** + +- Build an attestation-boundary brief covering what Nitro PCRs establish, what + App Attest establishes, what C2PA establishes, and what none of them + establishes alone. +- Run a prior-art and public-incident sweep for canonicalization, parse + disagreement, provenance failures, and attestation misuse. +- Create a claim kill list: language that must not ship without specific + evidence. + +**Vinctura** + +- Audit every current customer-facing statement against the existing + `business/evidence/claims.yml`. +- Separate externally sourced market facts, founder assertions, local + observations, and assumptions. +- Define a customer-problem evidence map: queue, turnaround, booking friction, + group coordination, route reliability, weather, and portfolio quality. + +**Gate** + +No "novel," "eliminates," "proves," "secure," "guarantees," or "best" wording +survives without a named evidentiary standard. + +## Week 3 - Pre-register the decisive experiments + +**B2B / Assay-Limina** + +Prioritize existing high-information work. + +1. **X2 - Model-consumer kernel.** Test whether model consumers unify + distinctions that named consumers require, with repeated runs, multiple model + families, a constrained-output control, a frozen corpus, and an explicit null + condition. +2. **X5 - Consequence search.** Systematically identify public incidents where + canonicalization, parser differential, or identity collapse caused a + consequential failure. A sparse result is still a result. + +**Vinctura** + +Prioritize the existing decision-changing experiments. + +1. `EXP-FULFILLMENT` - timed end-to-end gallery completion. +2. `EXP-PRICE` - qualified inquiry-to-booking and package mix. +3. `EXP-GROUP` - coordination cost and realized contribution per founder hour. +4. `EXP-ROUTE` - whether published session routes actually fit their time + budget. + +For each, preserve the current success and failure branches rather than +rewriting them after a result appears. + +**Gate** + +A protocol specifies population, provenance, denominator, controls or +alternative explanations, stop and scale rules, missing-data handling, and the +non-claim. + +## Week 4 - Build instruments before collecting outcomes + +**B2B / Assay-Limina** + +- Create a research-only proof-boundary notebook or browser lesson recording the + claim, the exact verification input, the trusted root, the mutation that must + fail, and what remains unknown. +- Add a positive-control requirement: deliberately break one verifier assumption + and show that the instrument reports the break. +- Write the independent replay instructions before running the experiment. + +**Vinctura** + +- Prepare a consent-aware operational log for real sessions: inquiry source, + quote, booking outcome, package, route timestamps, queue minutes, delivery + timestamps, founder minutes by phase, deviations, and customer-initiated + comments. +- Do not introduce third-party tracking merely to measure a funnel. Preserve the + site's privacy commitments unless a documented decision changes them. + +**Gate** + +An instrument that cannot reveal a deliberately introduced defect is not ready +to measure success. + +## Week 5 - Run reversible, low-risk evidence work + +**B2B / Assay-Limina** + +- Run local, reproducible corpus and verifier work only. +- Record source revision, host, tool versions, inputs, output hashes, + unavailable arms, and failures. +- Do not run live cloud validation or describe attestation as deployed without + explicit approval. + +**Vinctura** + +- Run only real operational observations authorized by the founder: founding + cohort portfolio work, stopwatch-based fulfillment timing, route timing, + inquiry logging, and group coordination observations. +- Do not state a delivery promise until it is repeatedly met under recorded + conditions. + +**Gate** + +Raw observations are stored before interpretation. "It felt like momentum" is +never a result field. + +## Week 6 - Replication, controls, and negative evidence + +**B2B / Assay-Limina** + +- Re-run selected cells on a second environment or an independent + implementation. +- Test the constrained-output model arm against the same corpus. +- Publish negative findings, unavailable arms, and disagreements. + +**Vinctura** + +- Compare first-session and later-session timing rather than treating the first + session as representative. +- For delivery experiments, retain the planned alternating or control pattern. +- Analyze whether the actual bottleneck is editing, planning, travel, + coordination, or customer response. + +**Gate** + +A one-off success produces a feasibility note, never a mature product claim. + +## Week 7 - Adversarial review + +**B2B / Assay-Limina** + +Ask an independent reviewer to attack trust-root substitutions, replay windows, +parser and canonicalization mismatch, device-to-byte binding gaps, hidden +assumptions in "physical capture" language, missing controls, and unreported +unavailable arms. + +**Vinctura** + +Ask a skeptical reviewer to attack package-price comparability, portfolio claim +boundaries, delivery and route promises, customer-data privacy, operational +feasibility during peak commencement periods, and whether a claim gate hides a +claim in metadata or alternate routes. + +**Gate** + +Every substantive objection ends as corrected, rejected with evidence, +explicitly unresolved, or retracted. + +## Week 8 - Decision and publication boundary + +Produce two dated evidence packets. + +**B2B / Assay-Limina packet** + +- Claim-to-evidence matrix. +- Experiment reports and replay commands. +- Technical boundary chart. +- Prior-art and incident-search results. +- Retracted or narrowed statements. +- Decision: continue research, narrow to a verifier-side learning module, pursue + independent replication, or halt a weak wedge. + +**Vinctura packet** + +- Experiment registry status. +- Observed versus assumed operating model. +- Actual fulfillment and route data. +- Claim-register updates. +- Launch-readiness status. +- Decision: proceed, hold, reprice, simplify the offer, or remove an unevidenced + promise. + +## Completion standard + +At the end of eight weeks, neither project should claim more certainty. Each +should have: + +- fewer unsupported claims, +- better instruments, +- clearer stop conditions, +- preserved negative evidence, +- at least one independently replayable result, +- a more honest next decision. + +## Appendix: mapping onto CC-Framework + +CC-Framework already implements most of what this plan asks for. When the plan +is run from this repository, use these surfaces rather than building new ones. + +| Week | Plan artifact | Existing surface | +| --- | --- | --- | +| 1 | Proposition with owner, falsifier, decision, window, non-claim | [Claim Boundary Manifest](../../claims/CLAIM_BOUNDARY_MANIFEST.md) and its JSON companion | +| 2 | Claim kill list and boundary brief | [Non-Claims](../NON_CLAIMS.md), specifically the forbidden-upgrade table | +| 3 | Preregistered protocol with stop and scale rules | [Confirmatory Evidence Protocol](../../design-specs/confirmatory_protocol.md) | +| 4 | Instrument that must detect a deliberate defect | Adversarial tests under `tests/unit/evidence/`, e.g. `test_transparency_log_adversarial.py` | +| 5 | Recorded run with inputs, versions, and output hashes | [CC Reports and Receipts](../CC_REPORTS.md) and the deterministic capsule under `examples/claim_governance_capsule/` | +| 6 | Replication and evidence typed by what it supports | [Evidence Role Ontology](../../design-specs/evidence_role_ontology.md); exploratory results stay separate from confirmatory ones | +| 7 | Review that does not upgrade evidence | `human_review_note` handling in `src/cc/evidence/claim_governance.py` | +| 8 | Dated packet with a bounded decision | [Claim Envelope](../../design-specs/claim_envelope.md) plus decay semantics in `src/cc/evidence/decay.py` | + +Two boundaries carry over unchanged. A governance PASS means an evidence-bound +package is internally consistent under the verifier rules; it is not a statement +that a system is safe. A receipt establishes byte integrity; it is not a +statement that a measurement was valid. + +## Non-claims + +- Completing this plan does not validate any project, claim, or narrative. +- Neither evidence packet is a certification, an audit opinion, or a compliance + artifact. +- The Week 5 and Week 6 activities described here are not authorization to + perform them. Human research, customer outreach, external data collection, + paid API use, and live cloud work each require separate explicit + authorization, and human observation requires appropriate consent. diff --git a/docs/research/future-expansion/prompt-library.md b/docs/research/future-expansion/prompt-library.md new file mode 100644 index 0000000..64565e3 --- /dev/null +++ b/docs/research/future-expansion/prompt-library.md @@ -0,0 +1,277 @@ +# Epistemic Prompt Library + +## How to use these + +These prompts produce research artifacts, not predictions. Replace bracketed +text before use. Require citations, source dates, uncertainty, and an explicit +non-claim in every answer. + +Two standing constraints apply to every prompt below. + +- A model's output is a draft artifact, not evidence. It enters the record the + same way any other draft does: predeclared, reviewed, and bounded. +- If a prompt's answer would change a financial, legal, medical, safety, or + otherwise consequential decision, the answer is insufficient on its own. + +The prompts map onto the [eight-week plan](eight-week-plan.md) roughly in order: +1 for Week 1, 2 and 3 for Week 2, 4 and 5 for Week 3, 6 and 7 for Weeks 3 to 5, +8 for Week 4, 9 for Week 6, 10 for Week 8, and 11 whenever a prior statement +stops being supportable. + +## 1. Narrative-to-study translator + +```text +You are an epistemic editor. Analyze the following narrative without validating +its predictions or metaphysical claims: + +[PASTE TEXT] + +For every substantive statement, label it as: +REFLECTION, IDENTITY AFFIRMATION, FORECAST, CAUSAL ASSERTION, +ACTION HEURISTIC, EMPIRICAL CLAIM, or MARKETING FUNNEL. + +Then produce: +1. a charitable interpretation; +2. a falsifiable translation, if one exists; +3. the minimum observation needed to test it; +4. one alternative explanation; +5. a non-claim; +6. whether using it for a financial, legal, medical, or consequential decision + would be inappropriate. + +Do not infer personal facts, future outcomes, or hidden causes. +``` + +## 2. Claim-to-proof boundary auditor + +```text +You are a hostile technical reviewer. For each claim below, identify exactly +what the mechanism proves, what it assumes, and what it cannot establish. + +[CLAIMS] +[ARCHITECTURE OR CODE LINKS] + +Return a table: +claim | cryptographic/operational object | trust root | verifier input | +attack or failure mode | evidence currently present | evidence missing | +allowed wording | prohibited wording | explicit non-claim + +Reject any leap from: +- app integrity to physical-world truth; +- enclave measurement to correct execution; +- signed assertion to assertion truth; +- provenance to authenticity; +- one successful run to universal reliability. +``` + +## 3. Prior-art destroyer + +```text +Act as a prior-art researcher trying to falsify this proposed novelty claim: + +[CLAIM] + +Search primary sources, standards, vendor documentation, peer-reviewed papers, +public incident reports, and active products. Separate: +- already solved; +- partially solved; +- adjacent but materially different; +- commercially occupied; +- genuinely unresolved. + +For every source, provide URL, publication date, source type, exact relation to +the claim, and a confidence rating. End with: +"what remains narrow enough to investigate honestly." + +Do not use search-result snippets as evidence. +``` + +## 4. Experiment preregistration architect + +```text +Turn this question into a preregistered experiment: + +[QUESTION] +[DECISION IT MUST CHANGE] +[AVAILABLE DATA / ACCESS LIMITS] + +Specify: +- hypothesis and falsifier; +- population and what it does not represent; +- sampling frame or census rationale; +- primary measure and denominator; +- control arm or alternative explanation; +- required positive-control/discriminator test; +- exclusions and unavailable-arm treatment; +- repeat count and stability plan; +- stop, scale, hold, and kill criteria; +- ethics/privacy requirements; +- exact non-claim. + +Do not choose thresholds after viewing results. +``` + +## 5. Signal-versus-traction designer + +```text +Convert this intuitive "signal" into a predeclared traction measure: + +[OBSERVATION OR INTUITION] + +Return: +1. the observable event; +2. the baseline or comparison; +3. the collection method; +4. the time window; +5. what would count as noise; +6. what result changes the decision; +7. the smallest reversible next action; +8. what must not be inferred. + +Explicitly distinguish attention, inquiries, conversion, repeat behavior, +revenue, margin, and retention. Never substitute one for another. +``` + +## 6. Customer-evidence interviewer + +```text +Design a neutral customer-discovery protocol for this decision: + +[QUEUE / DELIVERY / GROUPS / ROUTES / PRICING / OTHER] + +Create: +- recruitment criteria; +- non-leading interview questions; +- exact operational observations to collect; +- consent and privacy boundary; +- disconfirming answers to look for; +- how to avoid treating compliments as demand; +- a decision rule tied to the existing experiment registry; +- a summary template that separates direct quotes, observations, inference, + and non-claim. + +Do not promise services, ask for sensitive data, or create a marketing claim +from a single interview. +``` + +## 7. B2B consequence-search protocol + +```text +Research whether this technical failure class has caused a real consequence: + +[FAILURE CLASS] + +Search CVEs, advisories, standards errata, incident postmortems, court filings, +and vendor security reports. For each candidate, classify: +- mechanism; +- affected representation or parser; +- attacker capability; +- observed consequence; +- evidence quality; +- remediation; +- relation to our corpus; +- whether the incident supports prevalence, possibility only, or neither. + +Report null findings and search limitations. Do not turn a mechanism into a +market claim unless consequence evidence supports that step. +``` + +## 8. Instrument-sensitivity challenge + +```text +You are validating a research instrument, not its preferred answer. + +[INSTRUMENT] +[INTENDED DETECTION OR MEASUREMENT] + +Propose: +- one deliberate defect the instrument must detect; +- one negative control it must not flag; +- one boundary case; +- one unavailable-arm condition; +- one mutation that should change the result; +- one mutation that should not; +- a pass/fail criterion for each; +- the consequence if the instrument fails any test. + +Explain why a green result without these controls would be uninformative. +``` + +## 9. Independent replay handoff + +```text +Create a handoff for an independent reviewer to reproduce this result: + +[CLAIM] +[ARTIFACTS] +[COMMANDS] +[ENVIRONMENT] + +Include: +- exact inputs and hashes; +- expected output and failing output; +- tool versions; +- trust roots and keys that may be public; +- no-secret setup; +- likely failure modes; +- how to report disagreement; +- what agreement would and would not establish. + +The handoff must allow the reviewer to disagree safely and visibly. +``` + +## 10. Evidence-to-decision board + +```text +Given this evidence packet: + +[PACKET] + +Make a four-way decision memo: +CONTINUE, HOLD, NARROW, or STOP. + +For each option, state: +- facts supporting it; +- facts against it; +- assumptions still carrying the conclusion; +- the next cheapest high-information test; +- irreversible actions that must wait; +- claims that must be removed or downgraded now; +- the condition that would reverse the recommendation. + +Do not reward activity, novelty, or optimism. Reward only decision-relevant +evidence. +``` + +## 11. Retraction and revision writer + +```text +An earlier statement is no longer supportable: + +[OLD STATEMENT] +[NEW EVIDENCE] + +Write: +1. a precise retraction or downgrade; +2. what remains true; +3. what was not measured; +4. the artifact or source revision that changed the conclusion; +5. the new allowed wording; +6. the prohibited wording; +7. the next experiment, if any. + +Never silently delete the old claim or rewrite history as if it was never made. +``` + +## Non-claims + +- These prompts do not validate their own output. A completed table is a draft, + not a finding. +- A model asked to search may return plausible sources that do not exist or do + not say what the summary says. Every citation is checked against the primary + source before it enters an artifact. +- Prompt 1 classifies statements; it does not determine whether a narrative + source is meaningful to the person who brought it. +- Prompts 6 and 7 describe protocols. Running them against real people or + external systems requires separate explicit authorization and, for human + contact, appropriate consent. diff --git a/docs/research/future-expansion/source-ledger.md b/docs/research/future-expansion/source-ledger.md new file mode 100644 index 0000000..1635508 --- /dev/null +++ b/docs/research/future-expansion/source-ledger.md @@ -0,0 +1,122 @@ +# Source Ledger: A Worked Week 1 Artifact + +## Why this document exists + +Week 1 of the [eight-week plan](eight-week-plan.md) converts a narrative source +into research objects. This is a worked example of that conversion, using an +actual source: a recorded tarot reading addressed to a general sign-based +audience, brought into a working session as motivational material alongside two +active projects. + +The point is not to evaluate the source. The point is to demonstrate the gate +every narrative passes through before it is allowed near a decision. A source +that survives the gate contributes a *question*. It never contributes an +*answer*. + +The reading may remain meaningful as reflection. Nothing below asks anyone to +stop finding it meaningful. + +## Classification labels + +| Label | Definition | Evidential weight | +| --- | --- | --- | +| `REFLECTION` | A description of the subject's present state or recent behavior. | None. May be accurate and still carry no predictive content. | +| `IDENTITY AFFIRMATION` | A statement about who the subject is. | None. | +| `FORECAST` | A statement about what will happen. | None unless independently registered and observed. | +| `CAUSAL ASSERTION` | A statement that one thing brings about another. | None. Causal claims require causal assumptions and a design. | +| `ACTION HEURISTIC` | A rule for what to do next. | None as evidence, but may be a useful, separately justified practice. | +| `EMPIRICAL CLAIM` | A statement checkable against the world. | Only after predeclaration, observation, and control. | +| `MARKETING FUNNEL` | Content whose function is engagement or conversion for the source. | None, and a reason for caution about felt accuracy. | + +A statement can carry more than one label. Where it does, the strictest handling +applies. + +## The ledger + +| Source statement | Classification | Testable translation | Disallowed inference | +| --- | --- | --- | --- | +| "Things are just about to turn for you"; the wheel is moving in your favor. | `FORECAST` | None directly. The nearest registerable question is whether a predeclared intervention changes a predeclared measure inside a fixed window. | That improvement is inevitable, scheduled, or owed. Not usable for runway, hiring, spend, or pricing. | +| "You're going to experience more signs, symbols, and synchronicities" indicating things are turning. | `CAUSAL ASSERTION` / `ACTION HEURISTIC` | Name the traction indicators and the observation window *before* any result is seen, then count them. | That noticing a coincidence afterwards is evidence that a turn occurred. Retrospective matching is the failure mode this whole package exists to block. | +| "There's been a lot of experimentation going on... you've been testing different approaches." | `REFLECTION` | Count registered experiments started, completed, and abandoned in a fixed prior period. This is directly measurable from an experiment registry. | That the description being accurate makes the forecasts accurate. Broadly applicable descriptions feel personal ([Mason & Budge, 2011](https://pubmed.ncbi.nlm.nih.gov/21315874/)). | +| "Nobody knows what they're doing. We're all just experimenting." | `ACTION HEURISTIC` | Not a claim. Usable as morale. | That the absence of certainty excuses the absence of protocol. | +| "This is exactly why this is going to work for you" - because the approach is unconventional. | `FORECAST` + `CAUSAL ASSERTION` | None. The implied mechanism (unconventional therefore successful) is not identifiable from this source. | That unconventionality predicts success. Selection effects make surviving unconventional bets highly visible and failed ones invisible. | +| "You're inventing something here... solving a problem in a way that nobody ever thought of solving it before." | `IDENTITY AFFIRMATION` + implicit novelty claim | Run a prior-art sweep ([Prompt 3](prompt-library.md#3-prior-art-destroyer)). Novelty is established by failing to find prior art, not by feeling original. | That "novel," "first," or "nobody has done this" may appear in any public copy. Those words require a named evidentiary standard. | +| "You're noticing the thing that other people haven't noticed." | `IDENTITY AFFIRMATION` | Consequence search ([Prompt 7](prompt-library.md#7-b2b-consequence-search-protocol)): has this failure class produced a documented, consequential outcome anywhere? | That an unnoticed thing is therefore an important thing. A sparse search result is a result, and it may mean the thing is unimportant. | +| "Divine timing. Right place, right time, right idea." | `CAUSAL ASSERTION` | None. Unfalsifiable as stated. | That timing is externally arranged, and therefore that acting now is lower risk than acting later. | +| "I'm seeing a blue notebook"; someone working on a laptop in a car; "your phone screen is cracked"; a person with curly hair connected to the innovation; a conversation near a vending machine. | `EMPIRICAL CLAIM` | These are the only literally checkable statements in the source. See [The falsification exercise](#the-falsification-exercise) below - they can be tested, but only under predeclaration, base-rate comparison, and a blinded control. | That a later match confirms anything. Each item is high-prevalence, and "connected to the innovation" is elastic enough to fit almost any encounter unless bounded in advance. | +| "You get overwhelmed by data sometimes... tied up in a big tangle." | `REFLECTION` | Measure where founder hours actually go by phase. The stated bottleneck and the measured bottleneck are frequently different. | That the felt bottleneck is the real bottleneck. | +| "The right piece of information comes in at the right time and breaks the loop." | `ACTION HEURISTIC` | Identify the single cheapest measurement that would change the current decision, and run that one first. | That the information will arrive on its own, or that waiting is a strategy. | +| "There is money attached to this... revenue arriving... a sale, a commission, a royalty, or a referral." | `FORECAST` (financial) | None from this source. Conversion questions belong to an already-registered pricing or funnel experiment that exists independently of the reading. | Hard block: no revenue projection, no pricing decision, no spend commitment, no runway assumption, and no investor- or customer-facing statement may cite or rest on this. | +| "We're breaking through a ceiling... your income or role or reach is infinitely bigger than you thought." | `FORECAST` | None. | That current constraints are illusory. Constraints are measured, not dispelled. | +| "An experiment might work once... figure out why it worked, how it worked, and can I make it work again." | `ACTION HEURISTIC` (method) | Does the result reproduce on a second run, a second environment, or an independent implementation? This is the Week 6 replication gate. | That a single success is a scalable model. One-off success supports a feasibility note only ([CONSORT pilot guidance](https://www.bmj.com/content/355/bmj.i5239)). | +| "Now you've discovered something that works, you don't go messing with it... I need the discipline to not change anything anymore." | `ACTION HEURISTIC` (method) | Freeze the protocol before observation and record deviations rather than absorbing them ([OSF registration guidance](https://help.osf.io/article/330-welcome-to-registrations)). | That freezing a protocol makes the result correct. A frozen protocol prevents silent revision; it does not validate. | +| "Redirect effort away from things that haven't worked and toward the area that's demonstrating momentum." | `ACTION HEURISTIC` | Predeclare the traction indicators and the stop/scale thresholds, then reallocate when a threshold is crossed ([Prompt 5](prompt-library.md#5-signal-versus-traction-designer)). | That momentum can be judged after the fact from whatever moved. Post-hoc threshold selection converts noise into a mandate. | +| "More inquiries, more questions, more emails coming in, better numbers, repeat customers, and increasing demand." | `FORECAST` naming real indicators | This is the one place the source names measurable quantities. Adopt the indicator *names*, discard the prediction that they will rise. | That attention equals inquiries, inquiries equal conversion, conversion equals revenue, or revenue equals retention. These are separate measures and are never substituted for one another. | +| "Claim authority over it, structure it, give it order." | `ACTION HEURISTIC` | Optional and low priority: does writing the protocol down reduce run-to-run variance? | That structure substitutes for evidence. Formalizing an unvalidated result makes it durable, not true. | +| "Don't let your emotions dictate what you do." | `ACTION HEURISTIC` | Consistent with predeclaring thresholds before results are visible. | That discipline about feelings implies discipline about inference. | +| "Follow the signs... something you've been experimenting with is starting to answer you back." | `ACTION HEURISTIC` + `FORECAST` | Only in the predeclared-indicator form above. | That ambiguous events count as replies. | +| "Hit the like button... subscribe... tell me in the comments what you're experimenting with... click the link for the extended reading." | `MARKETING FUNNEL` | Not a claim about the subject. | That felt resonance is independent of the source's incentive to produce resonance. The comment prompt also collects the subject's own specifics, which raises the apparent hit rate of future readings. | +| "The most important part of any tarot reading is you." | `REFLECTION` | Not a claim. | Nothing follows from it either way - though it is, structurally, an accurate description of where the content comes from. | + +## What survives + +Three method heuristics survive translation: + +1. **Experiment, then replicate, then formalize.** Try things; when something + works, find out why and whether it recurs before building on it. +2. **Allocate on predeclared indicators.** Move resources toward what moves the + indicator you named in advance, not toward what looks like momentum in + hindsight. +3. **Freeze the protocol once it works.** Stop tinkering during measurement; + record deviations instead of absorbing them. + +Each is independently supported by ordinary research practice. None of them is +supported *by the reading*. The reading is a prompt that surfaced them, which is +exactly the permitted use: a story generated a question. + +Everything else in the ledger - the turn, the timing, the ceiling, the revenue - +carries no weight and enters no decision. + +## The falsification exercise + +The five concrete specifics (blue notebook, laptop in a car, cracked phone +screen, curly-haired person, vending-machine conversation) are the only part of +the source that could be tested at all. Testing them is optional and cheap. If +it is done, it is done properly or not at all. + +**Decision it can change.** Not a business decision. It calibrates the observer: +if retrospective matching produces a high hit rate on control material, the rule +that indicators must be predeclared gets tighter, and narrative-derived signals +stay out of indicator selection entirely. + +**Protocol requirements.** + +- Predeclare, in writing and before any observation, what counts as a match for + each of the five items - including the boundary of "connected to the + innovation," which is otherwise elastic enough to absorb any encounter. +- Fix the observation window and the scorer before starting. +- Score against base rates, not against zero. Cracked screens, blue notebooks, + curly hair, and vending machines are common; the comparison quantity is how + often these appear in an arbitrary equivalent window, not whether they appear. +- Include a control: score the same five items against a reading drawn for a + different sign, or a shuffled transcript, with the scorer blind to which + transcript is which ([Mason & Budge, 2011](https://pubmed.ncbi.nlm.nih.gov/21315874/)). +- Record the result, including a null result, before interpreting it. + +**Expected outcome.** Matches on several items, at a rate indistinguishable from +the control. That is the informative outcome, and it is worth having in writing +the next time a specific detail feels uncanny. + +## Non-claims + +- This ledger does not establish that the source is accurate, inaccurate, + predictive, or causal. It establishes only what may and may not be inferred + from it. +- Classifying a statement as testable does not mean it has been tested. No + observation in this document has been made. +- The three surviving heuristics are not endorsed *because* the source stated + them. They are endorsed because they are separately defensible, and they would + survive the source being discarded entirely. +- No statement in the ledger's "testable translation" column authorizes human + research, customer outreach, or external data collection. Those require + separate explicit authorization and appropriate consent. From 502c78ecefa3c2e966f368a13a2de1c1d76726eb Mon Sep 17 00:00:00 2001 From: Pranav Bhave <90584946+Cubits11@users.noreply.github.com> Date: Thu, 20 Aug 2026 15:23:07 +0000 Subject: [PATCH 06/15] feat(visual-identity): add "Before You See It", Chamber 00 of the Claim Observatory A 15-second film about the moment a seductive story is forced to become a test. It is Chamber 00 of the existing Claim Observatory world: the room before the Arrival Hall, where an intuition stops being a feeling and is written down in a form that can lose. Beats: a notebook under warm oracular light; a hard cut to cold as the ember field quantizes into an 84-cell grid of coincidences that would all have felt like proof; four tablets (claim, falsifier, control, non-claim) snapping into a re-centering ledger; a protocol frozen over an empty result slot; the slot filling with INCONCLUSIVE rather than a green tick; the five accents compressing into a ledger rule under the wordmark. - film.html: the film, one self-contained file. Every visual state is a pure function of time via window.__seek(t), so renders are reproducible rather than recorded. No downloaded fonts, no external assets. - render_film.py: deterministic frame capture and H.264/VP9 encode, with a --verdict hook that displays a real verifier result verbatim. - DIRECTORS_CUT.md: beat sheet, color law, voiceover, sound spec, production rules, poster frame, and the two lockups. - README.md: how to watch, render, and place the Ghost-Ark cut. - make film / make film-ghost-ark. Two rules the film holds itself to. It uses no green at any point, because World Bible V3 forbids a green checkmark as final truth; confirmatory cyan carries that role and appears exactly once. And it renders no verdict it was not given: with none injected it falls back to an illustrative INCONCLUSIVE and stamps ILLUSTRATION on its own footage. The repository README gains a hero built on the film's poster frame. The rendered masters follow in the next commit. --- .gitignore | 4 + Makefile | 14 + README.md | 30 ++ .../before_you_see_it/DIRECTORS_CUT.md | 170 +++++++ visual_identity/before_you_see_it/README.md | 102 +++++ visual_identity/before_you_see_it/film.html | 427 ++++++++++++++++++ .../before_you_see_it/render_film.py | 134 ++++++ 7 files changed, 881 insertions(+) create mode 100644 visual_identity/before_you_see_it/DIRECTORS_CUT.md create mode 100644 visual_identity/before_you_see_it/README.md create mode 100644 visual_identity/before_you_see_it/film.html create mode 100755 visual_identity/before_you_see_it/render_film.py diff --git a/.gitignore b/.gitignore index ae2fa91..03fc7d1 100644 --- a/.gitignore +++ b/.gitignore @@ -58,3 +58,7 @@ protocol_*.jsonl # Generated bundles and built docs (never track) *.zip + +# Film render intermediates (the .mp4 masters and posters are tracked; these are not) +visual_identity/before_you_see_it/renders/.frames-*/ +visual_identity/before_you_see_it/renders/*.webm diff --git a/Makefile b/Makefile index 97b5f88..fb95b97 100644 --- a/Makefile +++ b/Makefile @@ -119,6 +119,7 @@ GOV_CAPSULE_TESTS := tests/integration/test_claim_governance_capsule.py reproduce-paper verify-paper-artifacts paper-smoke \ verify-invariants verify-statistics verify-audit \ docs docs-serve \ + film film-ghost-ark \ docker-build docker-run \ clean distclean \ carto-install carto-smoke carto-mvp carto-verify-audit carto-verify-stats carto-suggest \ @@ -472,6 +473,19 @@ docs: install docs-serve: install $(ACT); mkdocs serve -a 127.0.0.1:8000 +# ====================================================================== +# Film +# ====================================================================== +# "Before You See It" - deterministic 15s film, rendered frame by frame from +# visual_identity/before_you_see_it/film.html. Needs playwright + a chromium +# build; see that directory's README. + +film: install + $(ACT); python visual_identity/before_you_see_it/render_film.py --cut cc-framework + +film-ghost-ark: install + $(ACT); python visual_identity/before_you_see_it/render_film.py --cut ghost-ark + # ====================================================================== # Verifications # ====================================================================== diff --git a/README.md b/README.md index ac69ee5..f33d87e 100644 --- a/README.md +++ b/README.md @@ -9,6 +9,36 @@ stacked-system failure, not a safety certification.** +--- + +

+ + A frozen protocol: claim, falsifier, control, non-claim, and one empty result slot + +

+ +

+ A story can start a question. It cannot finish an answer.
+ Before You See It +  ·  a 15-second film  ·  Keep the wonder. Check the claim. +

+ +Those five cards are the entire discipline. Name the **claim**. Name the +**falsifier** that would end it. Name the **control** that could embarrass it. +Name the **non-claim** it will never support. Then lock all four *before* the +result slot is filled, and let the result disagree. + +This repository is the machinery for doing that to composed AI guardrail +evidence: Frechet-Hoeffding bounds that stay honest about unknown dependence, +evidence roles that decide what a measurement is allowed to say, receipts that +prove bytes and refuse to prove safety, and claims that expire. The film has one +`INCONCLUSIVE` frame in it on purpose - and when it has no verifier output to +show, it stamps `ILLUSTRATION` on its own footage rather than imply a result it +was not given. + +--- + CC-Framework is a Python research framework for dependence-aware analysis of composed binary guardrail failures. It computes what available guardrail evidence supports under stated dependence assumptions. It does not certify that diff --git a/visual_identity/before_you_see_it/DIRECTORS_CUT.md b/visual_identity/before_you_see_it/DIRECTORS_CUT.md new file mode 100644 index 0000000..e7e882c --- /dev/null +++ b/visual_identity/before_you_see_it/DIRECTORS_CUT.md @@ -0,0 +1,170 @@ +# Before You See It - Director's Cut + +## Logline + +The moment a seductive story is forced to become a test. + +## Thesis + +```text +A story can start a question. +It cannot finish an answer. +``` + +Campaign line: **Keep the wonder. Check the claim.** + +The film honors curiosity without letting it impersonate evidence. It does not +mock the story. It makes the standard of proof impossible to evade. That +distinction is the whole brief: tenderness first, then ruthlessness. + +## Placement in the visual world + +This is **Chamber 00** of the Claim Observatory - the room before the Arrival +Hall. Every later chamber assumes a claim already exists as a bounded artifact. +Chamber 00 is where the claim is born: the instant an intuition stops being a +feeling and is written down in a form that can lose. + +It inherits the [World Bible V3](../claim_observatory/WORLD_BIBLE_V3.md) laws +without exception, including Law 10 - *the world must make overclaiming +uncomfortable*. + +## Beat sheet + +Runtime 15.000s. 1920x1080. 60fps. Silent master. + +| Time | Beat | Visual | On-screen copy | +| --- | --- | --- | --- | +| 0.00-2.00 | **The lure** | An electric-blue notebook in darkness, lit warm and almost oracular from above left. Gold embers drift. A slow 4.5% push-in. | `THIS FEELS TRUE.` | +| 2.00-3.40 | **The freeze** | Hard cut: the light goes cold, the push-in stops dead, and the embers quantize into a 12x7 grid of candidate matches - `BLUE NOTEBOOK`, `CRACKED SCREEN`, `CURLY HAIR`, `VENDING MACHINE`, `FELT LIKE MOMENTUM`. The notebook drains of color and becomes one cell among eighty-four. | `BUT WHAT WOULD COUNT?` | +| 3.40-6.50 | **The ledger** | The grid dissolves. Four tablets snap in on a 0.6s beat, the row re-centering as each one lands. | `CLAIM` `FALSIFIER` `CONTROL` `NON-CLAIM` | +| 6.50-9.50 | **The lock** | A fifth slot appears, dashed and empty, labeled `RESULT`. A protocol bar locks a timestamp and a hash beneath the row while that slot is still empty. Three seconds of near stillness. | `NAME IT BEFORE YOU SEE IT.` | +| 9.50-11.80 | **The disagreement** | The slot fills with `INCONCLUSIVE`, not a green tick. The falsifier's rose accent flares once - it did its job. At 10.80 the result becomes `NEXT EXPERIMENT`. | `LET THE RESULT DISAGREE.` | +| 11.80-15.00 | **The lockup** | The five accents compress into a ledger rule under the wordmark. | `CC-FRAMEWORK` / `Keep the wonder. Check the claim.` | + +The emotional center is the empty dashed slot at 6.50-9.50. Everything before it +is seduction; everything after it is consequence. The protocol is frozen while +the answer is still unknown, on screen, in front of the viewer. + +## Voiceover + +Quiet, calm, unsentimental. Never wry. Never triumphant. + +> "An intuition can start a question. Before you see an answer, name what would +> count. Then let the result disagree." + +Timing: line 1 lands over the freeze (2.2-3.3), line 2 over the lock +(6.8-9.2), line 3 over the disagreement (9.8-11.4). The lockup plays silent. + +## Sound design + +The master ships silent; `render_film.py` will mux an audio track if one is +supplied. The spec, if it is scored: + +- 0.00-2.00: a low warm drone, close and intimate, a little too pleasant. +- 2.00: **total silence for 400ms.** The cut is the loudest moment in the film + and it is made of nothing. +- 2.40-3.40: a fine granular texture as the embers quantize. +- 3.55, 4.15, 4.75, 5.35: four dry mechanical snaps, no reverb tail. +- 7.85: one clack as the protocol locks. +- 9.70: no sting. The result arrives without a reward sound. This is deliberate. +- 11.80-15.00: the drone returns, resolved a fifth lower. + +## Color law + +| Token | Hex | Means | +| --- | --- | --- | +| Ground | `#0E0E10` | The room | +| Lure amber | `#E9A23B` | Reflective and proposed material, unresolved pressure | +| Protocol white | `#EDF2F7` | Structure, procedure, what was fixed in advance | +| Evidence blue | `#7FA8D9` | Evidence and replayable structure | +| Confirmatory cyan | `#5FD3D0` | Confirmatory evidence under a pre-registered protocol | +| Invalidation rose | `#D9534F` | Invalidation, rejection, the falsifier | +| Pale | `#C9CEDA` | Integrity only; a result that has not separated from its control | + +**Deliberate deviation from the original brief.** The brief reserved emerald for +a real verifier result. This film uses no green at any point. World Bible V3 +lists "green checkmark as final truth" under forbidden imagery and states plainly +that there is no green safety color. Confirmatory cyan carries that role instead, +and it appears exactly once - on `NEXT EXPERIMENT`, which is a commitment, not a +verdict. Continuity with the existing world outranks the brief. + +## Typography + +- Thesis lines: Bitstream Charter, falling back to Liberation Serif and Georgia. + Wide tracking, generous size, never bold. +- Protocol and labels: DejaVu Sans Mono, uppercase, 0.24em tracking. +- Wordmark: Liberation Sans, 0.44em tracking. + +Only fonts present in a standard Linux render environment are used, so the film +renders identically on CI without shipping font binaries. + +## Production rules + +1. Start sensual and human. End exact and calm. Never the reverse. +2. The oracle imagery is original and abstract. No tarot card art, no recording + or likeness from any source creator, no borrowed footage. +3. The blue notebook is an easter egg from + [the source ledger](../../docs/research/future-expansion/source-ledger.md). + It is not proof of anything, and the film demotes it to one cell in a grid on + purpose. +4. One honest `INCONCLUSIVE` moment is mandatory. It is the anti-marketing flex: + the repository is willing to preserve uncertainty in its own advertising. +5. No terminal footage. The hero is the conceptual transformation, not code. +6. No verdict the film was not given. See below. + +## The verdict rule + +The result card renders whatever is in `window.__VERDICT` and nothing else. With +no verdict injected, the card falls back to an illustrative `INCONCLUSIVE` and +**stamps `ILLUSTRATION` in the corner of the frame** for the whole beat. + +That tag is not decoration. A film about not overclaiming cannot itself display +an unearned result, so the film labels its own unverified moment on screen. + +To show a real one, pass a verifier's own output: + +```bash +# a real result, produced by a real run, displayed verbatim +python3 visual_identity/before_you_see_it/render_film.py \ + --cut ghost-ark --verdict verdict.json +``` + +```json +{ "state": "FAIL CLOSED", "detail": "mutated receipt rejected\nverifier: independent", "color": "#D9534F" } +``` + +For the Ghost-Ark cut this is the intended use: run the malicious-corpus +verifier, take its actual output, and let the film show a mutation failing +closed. An unmutated decorative checkmark would violate both repositories' +north star. + +## Poster frame + +Pulled from t=7.60s - the frozen protocol with the empty result slot. + +```text +WHEN DOES A SIGN +BECOME EVIDENCE? +BEFORE YOU SEE IT. +``` + +## Cuts + +| Cut | Wordmark | Tagline | Footer | +| --- | --- | --- | --- | +| `cc-framework` | CC-FRAMEWORK | Keep the wonder. Check the claim. | Not a safety proof. A method for making claims checkable. | +| `ghost-ark` | GHOST-ARK | Evidence you can inspect. | Replay the receipt. Inspect the non-claims. | + +Same film, same timing, same frames - only the final lockup changes. + +## Non-claims + +- The film is a statement of method. It is not evidence, and it reports no + measurement. +- The result card is an illustration of a protocol outcome unless a verdict was + injected, in which case it displays that verdict verbatim and drops the + `ILLUSTRATION` tag. +- The timestamp and hash in the protocol bar are set dressing at fixed values. + They are not a real receipt over a real artifact. +- Neither lockup asserts that the named project has proven anything. Both name a + standard the project holds itself to. diff --git a/visual_identity/before_you_see_it/README.md b/visual_identity/before_you_see_it/README.md new file mode 100644 index 0000000..1e0ed3d --- /dev/null +++ b/visual_identity/before_you_see_it/README.md @@ -0,0 +1,102 @@ +# Before You See It + +A 15-second film about the moment a seductive story is forced to become a test. + +```text +A story can start a question. +It cannot finish an answer. +``` + +**Keep the wonder. Check the claim.** + +| | | +| --- | --- | +| Treatment | [DIRECTORS_CUT.md](DIRECTORS_CUT.md) - beats, color law, voiceover, sound, production rules | +| Source | [film.html](film.html) - the film itself, one self-contained file | +| Render | [render_film.py](render_film.py) - deterministic frame capture and encode | +| Chamber | Chamber 00 of the [Claim Observatory](../claim_observatory/WORLD_BIBLE_V3.md) | +| Method | [Future Expansion](../../docs/research/future-expansion/README.md) - the research package the film dramatizes | + +## Watch it + +Open `film.html` in any browser. It plays on load; click to replay. + +## Render it + +```bash +python3 -m pip install playwright # Chromium is already present in CI images +python3 visual_identity/before_you_see_it/render_film.py --cut cc-framework +python3 visual_identity/before_you_see_it/render_film.py --cut ghost-ark +``` + +Outputs land in `renders/`: an H.264 `.mp4`, a VP9 `.webm`, and a poster frame. + +The film is a **pure function of time**. The page exposes `window.__seek(t)` and +the renderer walks the timeline frame by frame rather than recording playback, so +the same commit produces the same frames on any machine. Nothing depends on +wall-clock speed, and there is no font download - only faces already present in a +standard Linux render environment are used. + +## The two cuts + +Same film, same timing, same frames. Only the final lockup changes. + +| Cut | Wordmark | Tagline | +| --- | --- | --- | +| `cc-framework` | CC-FRAMEWORK | Keep the wonder. Check the claim. | +| `ghost-ark` | GHOST-ARK | Evidence you can inspect. | + +## The verdict rule + +The result card shows `window.__VERDICT` and nothing else. With no verdict +injected it falls back to an illustrative `INCONCLUSIVE` **and stamps +`ILLUSTRATION` in the corner of the frame** for the whole beat. + +A film about not overclaiming cannot display an unearned result, so it labels its +own unverified moment on screen. To show a real one, hand it a real verifier's +output: + +```bash +python3 visual_identity/before_you_see_it/render_film.py \ + --cut ghost-ark --verdict verdict.json +``` + +```json +{ "state": "FAIL CLOSED", "detail": "mutated receipt rejected\nverifier: independent", "color": "#D9534F" } +``` + +For the Ghost-Ark cut that is the intended path: run the malicious-corpus +verifier, take its actual output, and let the film show a real mutation failing +closed rather than a decorative checkmark. + +## Placing the Ghost-Ark cut + +The Ghost-Ark cut is built to live in `PSUCyberSecurityLab/ghost-ark`. It was not +pushed there from this repository - that session could not attach a repository +outside the `Cubits11` owner - so it ships here, ready to move: + +```bash +# from a session or checkout that has ghost-ark +mkdir -p docs/media +cp renders/before_you_see_it__ghost-ark.mp4 docs/media/ +cp renders/poster__ghost-ark.png docs/media/ +``` + +Then in the Ghost-Ark README: + +```markdown +https://github.com/PSUCyberSecurityLab/ghost-ark/raw/main/docs/media/before_you_see_it__ghost-ark.mp4 +``` + +Regenerating it there needs only `film.html` and `render_film.py`; both are +self-contained and have no repository-specific dependencies. + +## Non-claims + +- The film is a statement of method. It is not evidence and reports no + measurement. +- The result card is an illustration unless a verdict was injected. +- The timestamp and hash in the protocol bar are set dressing at fixed values. + They are not a receipt over a real artifact. +- Neither lockup asserts that the named project has proven anything. Both name a + standard the project holds itself to. diff --git a/visual_identity/before_you_see_it/film.html b/visual_identity/before_you_see_it/film.html new file mode 100644 index 0000000..23fb4a0 --- /dev/null +++ b/visual_identity/before_you_see_it/film.html @@ -0,0 +1,427 @@ + + +Before You See It + + + +
+ +
+
THIS FEELS TRUE.
+
BUT WHAT WOULD COUNT?
+
NAME IT BEFORE YOU SEE IT.
+
LET THE RESULT DISAGREE.
+ +
+
Claim
+
What is asserted, and how narrowly.
01
+
Falsifier
+
The result that would end this.
02
+
Control
+
The comparison that could embarrass it.
03
+
Non-claim
+
What this will never support.
04
+
Result
+
ILLUSTRATION
+
+
05
+
+ +
+ protocol frozen  2026-08-20T14:36:00Z + sha256  3f9c…a7e1 + result  not yet observed +
+ +
+
CC-FRAMEWORK
+
+
Keep the wonder. Check the claim.
+ +
+
+
+ + diff --git a/visual_identity/before_you_see_it/render_film.py b/visual_identity/before_you_see_it/render_film.py new file mode 100755 index 0000000..5cc6b43 --- /dev/null +++ b/visual_identity/before_you_see_it/render_film.py @@ -0,0 +1,134 @@ +#!/usr/bin/env python3 +"""Render `film.html` to a deterministic 15-second film. + +The film is a pure function of time: the page exposes ``window.__seek(t)`` and +this script walks the timeline frame by frame, so two renders of the same commit +produce byte-identical frames. Nothing is recorded in real time. + +Usage: + python3 visual_identity/before_you_see_it/render_film.py --cut cc-framework + python3 visual_identity/before_you_see_it/render_film.py --cut ghost-ark \ + --verdict path/to/verdict.json + +`--verdict` takes a JSON object ``{"state": ..., "detail": ..., "color": ...}`` +produced by a real verifier run. Without it the result card is rendered with an +on-screen ILLUSTRATION tag: the film does not display a verdict it was not given. +""" + +from __future__ import annotations + +import argparse +import json +import os +import shutil +import subprocess +import sys +from pathlib import Path + +HERE = Path(__file__).resolve().parent +FILM = HERE / "film.html" +WIDTH, HEIGHT = 1920, 1080 + + +def find_ffmpeg() -> str: + if os.environ.get("FFMPEG"): + return os.environ["FFMPEG"] + on_path = shutil.which("ffmpeg") + if on_path: + return on_path + root = Path(os.environ.get("PLAYWRIGHT_BROWSERS_PATH", "/opt/pw-browsers")) + for candidate in sorted(root.glob("ffmpeg-*/ffmpeg-linux")): + return str(candidate) + raise SystemExit("ffmpeg not found: set FFMPEG=/path/to/ffmpeg") + + +def find_chromium() -> str | None: + root = Path(os.environ.get("PLAYWRIGHT_BROWSERS_PATH", "/opt/pw-browsers")) + for candidate in sorted(root.glob("chromium-*/chrome-linux/chrome")): + return str(candidate) + return None + + +def capture(frames_dir: Path, cut: str, fps: int, verdict: dict | None) -> int: + from playwright.sync_api import sync_playwright + + total = int(round(15.0 * fps)) + url = f"{FILM.as_uri()}?capture=1&cut={cut}" + launch: dict = {"args": ["--force-color-profile=srgb", "--font-render-hinting=none"]} + exe = find_chromium() + if exe: + launch["executable_path"] = exe + + with sync_playwright() as pw: + browser = pw.chromium.launch(**launch) + page = browser.new_page(viewport={"width": WIDTH, "height": HEIGHT}, device_scale_factor=1) + page.goto(url, wait_until="load") + if verdict is not None: + page.evaluate("v => { window.__VERDICT = v; }", verdict) + page.wait_for_function("typeof window.__seek === 'function'") + for i in range(total): + page.evaluate("t => window.__seek(t)", i / fps) + page.screenshot(path=str(frames_dir / f"f{i:05d}.png"), animations="disabled") + if i % 120 == 0: + print(f" frame {i}/{total}", flush=True) + browser.close() + return total + + +def encode(ffmpeg: str, frames_dir: Path, out_dir: Path, cut: str, fps: int) -> list[Path]: + stem = f"before_you_see_it__{cut}" + mp4 = out_dir / f"{stem}.mp4" + webm = out_dir / f"{stem}.webm" + common = [ffmpeg, "-y", "-framerate", str(fps), "-i", str(frames_dir / "f%05d.png")] + subprocess.run( + common + ["-c:v", "libx264", "-preset", "slow", "-crf", "19", + "-pix_fmt", "yuv420p", "-movflags", "+faststart", str(mp4)], + check=True, stdout=subprocess.DEVNULL, stderr=subprocess.DEVNULL, + ) + subprocess.run( + common + ["-c:v", "libvpx-vp9", "-b:v", "0", "-crf", "32", + "-pix_fmt", "yuv420p", "-row-mt", "1", str(webm)], + check=True, stdout=subprocess.DEVNULL, stderr=subprocess.DEVNULL, + ) + return [mp4, webm] + + +def main(argv: list[str] | None = None) -> int: + ap = argparse.ArgumentParser(description=__doc__) + ap.add_argument("--cut", choices=["cc-framework", "ghost-ark"], default="cc-framework") + ap.add_argument("--fps", type=int, default=60) + ap.add_argument("--out-dir", type=Path, default=HERE / "renders") + ap.add_argument("--poster-at", type=float, default=7.6, + help="seconds; the poster frame is pulled from this moment") + ap.add_argument("--verdict", type=Path, default=None, + help="JSON file holding a real verifier result to display") + ap.add_argument("--keep-frames", action="store_true") + args = ap.parse_args(argv) + + verdict = json.loads(args.verdict.read_text()) if args.verdict else None + args.out_dir.mkdir(parents=True, exist_ok=True) + frames_dir = args.out_dir / f".frames-{args.cut}" + if frames_dir.exists(): + shutil.rmtree(frames_dir) + frames_dir.mkdir(parents=True) + + ffmpeg = find_ffmpeg() + print(f"capturing {args.cut} at {args.fps}fps -> {frames_dir}") + total = capture(frames_dir, args.cut, args.fps, verdict) + + outputs = encode(ffmpeg, frames_dir, args.out_dir, args.cut, args.fps) + poster_idx = min(total - 1, int(round(args.poster_at * args.fps))) + poster = args.out_dir / f"poster__{args.cut}.png" + shutil.copyfile(frames_dir / f"f{poster_idx:05d}.png", poster) + outputs.append(poster) + + if not args.keep_frames: + shutil.rmtree(frames_dir) + + for path in outputs: + print(f" {path.relative_to(HERE.parents[1])} {path.stat().st_size / 1e6:.2f} MB") + return 0 + + +if __name__ == "__main__": + sys.exit(main()) From dcc84cdfd2a288d2f4b0b90986c0da04e54a4b87 Mon Sep 17 00:00:00 2001 From: Pranav Bhave <90584946+Cubits11@users.noreply.github.com> Date: Thu, 20 Aug 2026 15:37:37 +0000 Subject: [PATCH 07/15] feat(visual-identity): render the CC-Framework cut of "Before You See It" Adds the 15.000s master and its poster frame: 1920x1080, 60fps, H.264 High, yuv420p, faststart. The poster is frame 456 - the frozen protocol over an empty result slot, which is the film's emotional center and the frame the repository README now leads with. Also fixes ffmpeg discovery. The Playwright bundle is built only for VP8 screen recording and has no libx264, so the encode failed after a clean 900-frame capture. find_ffmpeg() now probes each candidate for libx264 and prefers one that has it, and --encode-only reuses frames already on disk so an encoder problem never costs another full capture. --- .../before_you_see_it/render_film.py | 57 ++++++++++++++---- .../before_you_see_it__cc-framework.mp4 | Bin 0 -> 3892264 bytes .../renders/poster__cc-framework.png | Bin 0 -> 1189600 bytes 3 files changed, 46 insertions(+), 11 deletions(-) create mode 100644 visual_identity/before_you_see_it/renders/before_you_see_it__cc-framework.mp4 create mode 100644 visual_identity/before_you_see_it/renders/poster__cc-framework.png diff --git a/visual_identity/before_you_see_it/render_film.py b/visual_identity/before_you_see_it/render_film.py index 5cc6b43..64c907f 100755 --- a/visual_identity/before_you_see_it/render_film.py +++ b/visual_identity/before_you_see_it/render_film.py @@ -30,16 +30,43 @@ WIDTH, HEIGHT = 1920, 1080 +def _has_x264(binary: str) -> bool: + try: + out = subprocess.run([binary, "-hide_banner", "-encoders"], + capture_output=True, text=True, timeout=30) + except (OSError, subprocess.SubprocessError): + return False + return "libx264" in out.stdout + + def find_ffmpeg() -> str: + """First ffmpeg on the box that can actually encode H.264. + + Playwright ships an ffmpeg built only for VP8 screen recording, so it is + tried last and usually rejected here. + """ + candidates: list[str] = [] if os.environ.get("FFMPEG"): - return os.environ["FFMPEG"] + candidates.append(os.environ["FFMPEG"]) on_path = shutil.which("ffmpeg") if on_path: - return on_path + candidates.append(on_path) + try: + import imageio_ffmpeg + + candidates.append(imageio_ffmpeg.get_ffmpeg_exe()) + except Exception: + pass root = Path(os.environ.get("PLAYWRIGHT_BROWSERS_PATH", "/opt/pw-browsers")) - for candidate in sorted(root.glob("ffmpeg-*/ffmpeg-linux")): - return str(candidate) - raise SystemExit("ffmpeg not found: set FFMPEG=/path/to/ffmpeg") + candidates += [str(p) for p in sorted(root.glob("ffmpeg-*/ffmpeg-linux"))] + + for candidate in candidates: + if _has_x264(candidate): + return candidate + raise SystemExit( + "no ffmpeg with libx264 found. `pip install imageio-ffmpeg`, or set " + "FFMPEG=/path/to/ffmpeg (the Playwright bundle is VP8-only)." + ) def find_chromium() -> str | None: @@ -103,18 +130,26 @@ def main(argv: list[str] | None = None) -> int: ap.add_argument("--verdict", type=Path, default=None, help="JSON file holding a real verifier result to display") ap.add_argument("--keep-frames", action="store_true") + ap.add_argument("--encode-only", action="store_true", + help="reuse frames already on disk instead of re-capturing") args = ap.parse_args(argv) verdict = json.loads(args.verdict.read_text()) if args.verdict else None args.out_dir.mkdir(parents=True, exist_ok=True) frames_dir = args.out_dir / f".frames-{args.cut}" - if frames_dir.exists(): - shutil.rmtree(frames_dir) - frames_dir.mkdir(parents=True) - ffmpeg = find_ffmpeg() - print(f"capturing {args.cut} at {args.fps}fps -> {frames_dir}") - total = capture(frames_dir, args.cut, args.fps, verdict) + + if args.encode_only: + total = len(list(frames_dir.glob("f*.png"))) + if not total: + raise SystemExit(f"--encode-only: no frames in {frames_dir}") + print(f"reusing {total} frames in {frames_dir}") + else: + if frames_dir.exists(): + shutil.rmtree(frames_dir) + frames_dir.mkdir(parents=True) + print(f"capturing {args.cut} at {args.fps}fps -> {frames_dir}") + total = capture(frames_dir, args.cut, args.fps, verdict) outputs = encode(ffmpeg, frames_dir, args.out_dir, args.cut, args.fps) poster_idx = min(total - 1, int(round(args.poster_at * args.fps))) diff --git a/visual_identity/before_you_see_it/renders/before_you_see_it__cc-framework.mp4 b/visual_identity/before_you_see_it/renders/before_you_see_it__cc-framework.mp4 new file mode 100644 index 0000000000000000000000000000000000000000..a7ba31a378e1f4c5e5fb5655b6f226114d533d99 GIT binary patch literal 3892264 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%0DBSB5Ry+TX#HLfG#u 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

Pn6&_j}~ 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%0D*&Y@CZMmO%cu4=)V4PA5 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 z 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 z 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 z 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

Hwq|k_pnKXvBRn;* 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

    Q_Y&@oWA5Uf?lE$Q(IJi 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%0A{i%8 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%0A#B#{_T-AQY|aDq@7TWIXKyJYKB{GqO5i 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 M!#L)Q(9fWeu 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

    )b^vkE5 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

    YR2f5 ztQdLRGuJ8KHL#x@J%gah{v+;)gdSlF6<*B&zs{?&SzO;#8YfajH$BCyX5(m~OaQt* z_AAff-Wn^uu~IMjiTN8kev$+>x3LlF%)iS8*Hk@g5p7=}O~75!b7fftW7VIRB|k|wqityIzy6?Tm4HFKL&_0Nh#Po%#+OhgnvONq z!FwK0AQlw_cZ*rlOD~ZQL%=}kNsMJKgf+{E&^~gNWv%((b}C9-%~>$TOCdsTmw*%> z%12|ONU`}$uGabgBe)TOv3}by66=H=xHff#n4hlN7H&^_+|jFi#z<8eZ<5-T z4DIs$mN()EQe5&q4bRQ(-`v>}De35j;_ut$jc0WSSm?1W`<`3;_NrsF+PJ+C7{iSp zzkCtWbLEe&P95rY)dP_dhSq4qjnV6A&JD1P9o-l3RbD6pt9VLyv=d+F3v1w2uni?? z!7I|&Uby=5%((r)W}cQ4m4DEgRzR#BG-H$E7EceJ85up1qH&w1gqY}tFfTlYlIK9B zb*0i2v$v-A&>wz416wbnH-L&B1(_K~k}jT{k-=h5$5ePq&e^VhJT(&(%v<`UR9-{m zFS?O3NZc-*YV$|V*l|5!DRQV)K|qrB>$*ba=!E`Ac)l=AfpR&WI(MB~Gs23}O-}dp zrux1g?lA6|(tGnSCrr9BF?5k%E%v=?i_hJ#oFnBXxw9-z9cEC$Mm4Qr@6YV4g|;YC zaJtw^Y$(beI(L_s@YNA%!vW0R>}P)})Yq=tqDdq8RkGmNWfWp+Q+4jgxwrMWToBJ6 zvX`lW1=d)dNL05C#khuqPD5|7u<&em1>PgYkwGPOY2tgYgE{8X?1%cCNSB|y9%NL} zCmdUYE;^R38xR|3o_>1SzwDlppxkHyK%Xxg1R`1(e^`RoW|91X9kJ!awBbQKjvNJ^ zOwC~4s8sG)`rQ15@ZmBnKzybZiTGp-N#TBpa4Z7@FoIX8(LE?o{+rLCvoPM|yV>Kq zy{<{G-ZxKOoYoY-0*-Z=K1N4mFGr{c(6S=8-k_k~=A0n(eZu)C5%sX(ZhHU1&calm zlX{0M-04ugKt^)vYVd}hue=<|VXjxuziiwuQ6L&YK;SOX zl1`(?jv)=TR-y!59GmMbvF5fgl=>rzkx^gOc47at)cM7>`AZN4_oqB zE=Z6gRrdGW4|Q`N*Zyq=haMmBShzh){v<7E?V#BGW{On3W>~oFZf#tAl(SSbHYpj; z3mrgoXagikG(zQN;Zn;H%KO9iMqCIwVR9sCn!B_Oto;~2OUr1O9oA;4h<~01^OfI- zu6Mi3R9r0*WRdQds`XD)d3wJR)Ad3~=lV@I)5c@SE?c>nanTiL70+pc89Ins?oEvDjk!jw%yU`b@X*k?-*I9A0e9)Evy-SK@fpaq0&haYy�q03#8aTES8pE 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≦UfxtI;N}x%b@s`V%+z5naykt2 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