core/workbench
Shay 71eed1b73d
workbench(vault): exact-CGA recall evidence for persisted entries (#766)
Close the deferred Vault item 4: a read-only endpoint proving a selected
vault entry is recallable by CORE's actual exact CGA machinery, surfaced
in the entry inspector.

Backend (read-only, cold-persisted only):
- GET /vault/entries/{index}/recall rehydrates the persisted VaultStore
  (VaultStore.from_dict — bit-exact versors, no reprojection) and runs the
  real VaultStore.recall using the entry's own stored versor as the query.
  Exact cga_inner scan — never ANN / cosine / approximate.
- recall's +inf exact-self-match sentinel never crosses the boundary: the
  genuine finite cga_inner is reported plus an exact_self_match flag. The
  raw versor never leaves the engine — only content-addressed digests.
- Trust boundary: caller-controlled index -> 404 (out of range / non-int);
  absent persisted snapshot -> 501. The file is never written; the live
  runtime is never touched; recall is deterministic over persisted bytes.

Frontend:
- "Exact CGA Recall" inspector panel, collapsed by default so the read is
  opt-in (the query hook only mounts on expand). Copy says "exact CGA
  recall" / cga_inner — never similarity / relevance / score / ANN /
  cosine. Honestly surfaces that a byte-identical self-match is promoted
  ahead of metric ranking (CGA null-vector self inner-product ~0).

INV-24: register workbench/readers.py in VAULT_RECALL_SITES as
EVIDENCE_TELEMETRY (operator inspection evidence, not claim-shaping), and
tighten the recall-site detector to recognise VaultStore.from_dict factory
bindings so the obligation is real rather than silently bypassed.

Tests: backend 501/404/self-recall/determinism/no-mutation/JSON-safety +
API status codes; frontend collapsed-doctrine + expanded self-recall
evidence. Full workbench suite (192) + architectural invariants (61) +
vault-touching vitest (70) all green.
2026-06-15 02:28:37 -07:00
..
__init__.py feat(W-026): read-only workbench API (ADR-0160 Phase 1) (#292) 2026-05-26 10:16:35 -07:00
api.py workbench(vault): exact-CGA recall evidence for persisted entries (#766) 2026-06-15 02:28:37 -07:00
calibration.py feat(workbench): land B3.5-b/c/d/e — calibration evidence subject, B4a leeway gate, docs; runner-reproducible practice artifact 2026-06-13 07:36:44 -07:00
evidence_bundle.py feat(workbench): Wave M D3 — shareable evidence bundles (reproducibility as a deliverable) 2026-06-13 17:26:26 -07:00
field_evidence.py feat(workbench): Wave M C3 field substrate — persist-first field evidence 2026-06-13 16:26:46 -07:00
journal.py feat(workbench): Wave M C3 field substrate — persist-first field evidence 2026-06-13 16:26:46 -07:00
lived_life.py feat(workbench): Lived Life surface — the always-on heartbeat made felt (read-only, persist-first) 2026-06-14 16:45:03 -07:00
logos.py feat(workbench): add read-only core-logos readers 2026-06-14 11:43:39 -07:00
pipeline_record.py feat(workbench): Wave M Phase C legibility — pipeline record, contemplation, identity continuity 2026-06-13 15:44:31 -07:00
readers.py workbench(vault): exact-CGA recall evidence for persisted entries (#766) 2026-06-15 02:28:37 -07:00
replay.py feat(workbench): Wave M C3 field substrate — persist-first field evidence 2026-06-13 16:26:46 -07:00
schemas.py workbench(vault): exact-CGA recall evidence for persisted entries (#766) 2026-06-15 02:28:37 -07:00
server.py feat(workbench): Wave M Phase C legibility — pipeline record, contemplation, identity continuity 2026-06-13 15:44:31 -07:00
tour.py feat(workbench): Wave M D1+D2 — guided determinism tour (provider-agnostic) 2026-06-13 19:39:41 -07:00