arborist/docs/tickets
russell@unturf.com 5b70fb961a
tickets #000027 + #000028: align hard constraints + post-MVP follow-ups
Acted on response review (2026-05-09,
response_ticket-000027-canonical-projections-in-providence-cache.txt).

#000027 — Hard-constraint phrasing corrected. Original draft said
"no schema changes / no new admissibility mode," which would
mislead an implementer into skipping the CHECK-constraint
extension. The current SCHEMA_SQL CHECK rejects both
'CANONICAL_PROJECTION' (audit_mode) and 'canonical_projection'
(verifier_method) — five locations in store.py listed in §9.1.
Updated to: "no new columns / no new tables / 8-dim cache_key
preserved / CHECK widened via existing rebuild migration." Same
spirit as the original draft, but unambiguous. §2.6 amended to
note the CHECK widening is value-space, not column/table change.
Forward-link added pointing at #000028 as the witness layer that
runs ON TOP of this persistence primitive (not a Phase 2).

#000028 — Post-MVP follow-up appendix. MVP shipped in 656b573
(witness.py 394 LOC + tests 354 LOC, 28/28 passing). Five items
captured for follow-up:

  - terminology: ticket uses "modality" but kernel/cache/LLM are
    epistemic witness channels, not carrier modalities; suggest a
    one-line clarification near §1 to prevent cross-carrier
    misreads.
  - capital ledger integration (#000020): MVP records LLM latency
    on the result dict but doesn't thread cost into the ledger;
    ~15 LOC follow-up to wire it; ForkScore (#000012) needs this
    to compare witness-on vs witness-off forks honestly.
  - sample-rate policy field (canonical_witness_sample_rate):
    explicit out-of-scope per §2.4, but flagged so it isn't
    re-discovered when calibration-data hunger appears.
  - cache-leg dependency on #000027: MVP works with stub closure
    returning None; STRICT-WITNESSED is unreachable until #000027
    lands; swap is one-line when persistence ships.
  - 5F / 5T bench-data integration: divergence events are
    supervised calibration data; suggest a future
    `make bench-witness-divergence` target.
  - threat-model caveats from review §7: correct claim is "no
    clean single-channel adversarial path," not "no adversarial
    path"; future dual-kernel witness option captured.

No code changes in this commit — ticket text only.
2026-05-09 11:14:46 -04:00
..
ticket-000001-retrieval-keywords-audit-gap.md aborist/arborist 2026-05-07 09:31:49 -04:00
ticket-000002-reference-frame-polarity-contract.md aborist/arborist 2026-05-07 09:31:49 -04:00
ticket-000003-anchor-class-warrant.md aborist/arborist 2026-05-07 09:31:49 -04:00
ticket-000004-directive-coverage-in-bench.md docs: tickets/ subdir + delete naming-deferral, ref-frame, coverage-audit 2026-05-02 12:51:09 -04:00
ticket-000005-label-ladder-migration.md aborist/arborist 2026-05-07 09:31:49 -04:00
ticket-000006-bench-emergent-findings.md aborist/arborist 2026-05-07 09:31:49 -04:00
ticket-000007-query-layer-hyphen-fold.md aborist/arborist 2026-05-07 09:31:49 -04:00
ticket-000008-broad-quantifier-preflight-guard.md aborist/arborist 2026-05-07 09:31:49 -04:00
ticket-000009-quantifier-preflight-dag-binding.md aborist/arborist 2026-05-07 09:31:49 -04:00
ticket-000010-metacognition-preflight-guard.md aborist/arborist 2026-05-07 09:31:49 -04:00
ticket-000011-soft-preflight-hint-sidecar.md aborist/arborist 2026-05-07 09:31:49 -04:00
ticket-000012-selection-consensus-protocol.md v8: ticket #000012 Phase 1a — ForkScore consumes the new bench substrate 2026-05-08 07:18:22 -04:00
ticket-000013-spatial-temporal-substrate.md docs/tickets: open #000012-#000021 design batch (v7/v9.8 gap coverage) 2026-05-07 16:25:00 -04:00
ticket-000014-self-model.md selfmodel: land ticket #000014 (identity record + falsification) 2026-05-07 16:36:34 -04:00
ticket-000015-pi-star-domain-library.md pi_star: land ticket #000015 (π* domain library + composition algebra) 2026-05-07 16:51:33 -04:00
ticket-000016-zk-frontier-proof.md selfmodel: land ticket #000014 (identity record + falsification) 2026-05-07 16:36:34 -04:00
ticket-000017-memory-root-lifelong-learning.md memory: land ticket #000017 (memory-root lifelong learning summary) 2026-05-07 16:46:41 -04:00
ticket-000018-soft-hash-covert-channel.md docs/tickets: open #000012-#000021 design batch (v7/v9.8 gap coverage) 2026-05-07 16:25:00 -04:00
ticket-000019-specification-methodology.md docs: land ticket #000019 (spec methodology for π*, V, policy fields) 2026-05-07 16:53:28 -04:00
ticket-000020-capital-cost-ledger.md capital: land ticket #000020 (8-capital-form cost ledger) 2026-05-07 16:41:48 -04:00
ticket-000021-bench-fixtures-5s-5t-5r.md bench: 5R battery — closes ticket #000021 (15-sub-battery suite complete) 2026-05-08 08:06:24 -04:00
ticket-000022-adapter-loss-report.md loss_report: land ticket #000022 (adapter LossReport sidecar) 2026-05-07 17:58:50 -04:00
ticket-000023-5s-phase-1b-syllogism-synthesis-semiotics.md bench: land #000023 + #000024 + #000025 (Phase 1a/1b — Dav1DPrometheus suite) 2026-05-07 20:14:44 -04:00
ticket-000024-5t-phase-1b-and-rename.md bench: land #000023 + #000024 + #000025 (Phase 1a/1b — Dav1DPrometheus suite) 2026-05-07 20:14:44 -04:00
ticket-000025-5f-battery.md 5f: Phase 1b.2 fan-out — Function, Finetuning, Falsification all wired live 2026-05-08 08:38:44 -04:00
ticket-000026-real-shard-workload-baseline.md ticket #000026: backfill commit sha for Phase 2 2026-05-08 13:11:06 -04:00
ticket-000027-canonical-projections-in-providence-cache.md tickets #000027 + #000028: align hard constraints + post-MVP follow-ups 2026-05-09 11:14:46 -04:00
ticket-000028-multi-modality-witness.md tickets #000027 + #000028: align hard constraints + post-MVP follow-ups 2026-05-09 11:14:46 -04:00