Research-Stack/6-Documentation/docs/plans/SilverSight_completion_pipeline.md
allaun 4dd0c18759 docs(plans): address review conditions on completion pipeline
- Reorders Phase 1 next steps to dependency order.
- Adds Q16_16 / UInt64 justification notes and explicit ReceiptHeader
  56-byte layout with #eval witness.
- Redesigns Core Gate.bind as a Kleisli arrow with separate Invariant
  certificate to avoid proof holes.
- Registers SilverSight.Bind in lakefile.lean integration step.
- Removes forced Core Gate ↔ CoreFormalism Bind bridge; documents boundary.
- Clarifies Verilog extraction as static, reviewed Lean→template mapping.
- Specifies compression benchmark sample source and reproducibility.
- Fixes fixed-point comparison operators in classifyRegime.
- Adds phase/focus table to dependency graph.

Build: docs only; no Lean/Python changes
2026-06-22 01:11:17 -05:00

2656 lines
68 KiB
Markdown
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# SilverSight Completion Pipeline — Microstep Edition
**Status:** Design draft — awaiting approval before execution
**Version:** 0.2
**Date:** 2026-06-21
**Ground truth:** Lean 4 (`/tmp/SilverSight`) + Research Stack documentation (`/home/allaun/Research Stack`)
---
## 0. Current State
The SilverSight rebas has reached the end of **Phase 0/1 boundary**:
- ✅ YaFF-inspired `Semantics` core exists and compiles:
- `Schema.lean`, `Layout.lean`, `WireFormat.lean`, `View.lean`, `LayoutBridge.lean`, `CanalLayout.lean`
-`lake build` green: 2987 jobs, 0 errors
- ✅ Q16_16 roundtrip proven across Python, C, and Lean
- ✅ Repo hygiene scripts active: glossary lint, doc sync, project map generator
- ✅ Specification drafted in `6-Documentation/docs/specs/SilverSight_Spec.md`
- ⬜ Product-type encoders not yet implemented
- ⬜ DynamicCanal physics not linked to layout selection
- ⬜ Research Stack theorems not triaged or ported
- ⬜ No claim-state manifest exists yet
- ⬜ Extraction targets (Python/Rust/Verilog) not generated from Lean
This document expands the high-level pipeline into **per-file, per-theorem, per-commit microsteps**. Every microstep includes:
- Goal
- Files to create or modify
- Specific definitions / theorems / functions to add
- Exact verification command(s)
- Suggested commit message
- Claim-state update
---
## 1. Design Principles
1. **Lean is the source of truth.** Every decision, cost, gate, and receipt invariant is defined and proved in Lean. Python, Rust, and Verilog are extraction targets only.
2. **No `sorry` in the main build.** Proof holes live in quarantined modules with a `TODO(lean-port)` ticket and human sign-off.
3. **No `Float` in compute paths.** `Q0_16` is the default scalar. `Q16_16` is allowed only with a documented, theorem-backed reason.
4. **Receipts are the compressed state.** A receipt is not metadata; it is the encoding. Invertibility of a receipt is the definition of lossless transformation.
5. **Promotion is gated.** Claims advance only through the claim-state ladder with reproducible evidence and reviewer provenance.
6. **Library method.** `Core/` defines contracts; libraries implement them. Libraries never import other libraries.
---
## 2. Claim-State Ladder
| State | Meaning | Exit gate |
|---|---|---|
| `BEAUTIFUL_PROVISIONAL` | Intuition captured in a spec or stub. | Spec reviewed; module skeleton compiles. |
| `CALIBRATED_ENGINEERING_DELTA` | Implementation exists with `#eval` witnesses or unit tests. | `lake build` / `py_compile` / roundtrip tests pass. |
| `REVIEWED` | Independent review (LLM or human) confirms no logic leakage and no float. | Review receipt emitted and signed. |
| `VERIFIED` | A Lean theorem or hardware receipt proves the claim. | `lake build` green; theorem or instrument receipt present. |
No claim may skip a state. Promotion is recorded only in `docs/claims/manifest_v1.json`.
---
## 3. Provisional Answers to Open Questions
| # | Question | Decision |
|---|---|---|
| 1 | Corpus250 source? | Extract from Research Stack `Semantics.RRC.Corpus250.lean`, dedup by invariant id, regenerate SilverSight `formal/SilverSight/RRC/Corpus250.lean`. |
| 2 | Rebuild AVM? | **No.** Keep existing `formal/SilverSight/AVMIsa/` as canonical. Bridge Core AVM δ to AVMIsa in Phase 2. |
| 3 | Physics scope for 1.0? | Only braid/eigensolid compression and DynamicCanal. Other manifolds deferred to 1.1. |
| 4 | Hardware target? | Primary: Verilator simulation of generated Verilog. Bonus: Tang Nano 20K live receipt if hardware is available. |
| 5 | Reviewers? | `REVIEWED` via canonical LLM review emitter. `VERIFIED` requires human sign-off or hardware receipt. |
---
## 4. Microstep Dependency Graph
```text
Phase 1 ──► Phase 2 ──► Phase 3 ──► Phase 4 ──► Phase 5 ──► Phase 6 ──► Phase 7 ──► Phase 8
│ │ │ │ │ │ │ │
▼ ▼ ▼ ▼ ▼ ▼ ▼ ▼
Core Formal Corpus Comp Shims Hardware Apps Promotion
Semantics theorems / PIST theorems extraction / Docs
```
| Phase | Focus |
|-------|-------|
| 1 | Core Semantics (schema, layout, wireformat, bind, receipt header) |
| 2 | Research Stack triage and formal theorem port |
| 3 | Search-space corpus and PIST pipeline |
| 4 | Mathematical models / compression theorems |
| 5 | Python shim rewrite to pure I/O |
| 6 | Hardware extraction (Verilog / FPGA receipts) |
| 7 | Applications (CAD, dashboard, review emitter) |
| 8 | Documentation, claim manifest, promotion |
Within a phase, microsteps are ordered. Cross-phase parallelism is allowed only where no file overlap exists.
---
## 5. Phase 1 — Finish Core Semantics
**Phase goal:** Make the schema/layout/wireformat stack useful for real structured objects and link it to substrate physics.
**Claim target at phase end:** All Phase 1 claims at `CALIBRATED_ENGINEERING_DELTA`; key theorems at `REVIEWED`.
---
### 1.1 Product schema instances for pairs
**Goal:** Extend `Schema` to fixed-size product types.
**Files:**
- `/tmp/SilverSight/Core/SilverSight/Semantics/ProductSchema.lean` (new)
- `/tmp/SilverSight/lakefile.lean` (add root)
**Specific additions:**
```lean
namespace SilverSight.Semantics
instance [Schema α] [Schema β] : Schema (α × β) where
byteSize := byteSize α + byteSize β
wellFormed := fun (a, b) => wellFormed a && wellFormed b
@[simp] theorem prod_byteSize [Schema α] [Schema β] :
byteSize (α × β) = byteSize α + byteSize β := rfl
theorem prod_wellFormed [Schema α] [Schema β] (a : α) (b : β) :
wellFormed (a, b) = (wellFormed a && wellFormed b) := rfl
end SilverSight.Semantics
```
**Verification:**
```bash
cd /tmp/SilverSight
lake build SilverSightCore
```
**Commit:**
```text
feat(core): add product schema instance
Adds Schema instance for α × β with byteSize and wellFormed theorems.
Build: N jobs, 0 errors (lake build SilverSightCore)
```
**Claim update:** `silversight_claim_product_schema``CALIBRATED_ENGINEERING_DELTA`.
---
### 1.2 Row-major wire format for pairs
**Goal:** Certify encode/decode for pairs.
**Files:**
- `/tmp/SilverSight/Core/SilverSight/Semantics/ProductWireFormat.lean` (new)
- `/tmp/SilverSight/lakefile.lean` (add root)
**Specific additions:**
```lean
def prodRowMajor [Schema α] [Schema β]
(wfα : WireFormat α rowMajor) (wfβ : WireFormat β rowMajor) :
WireFormat (α × β) rowMajor where
encode := fun (a, b) => wfα.encode a ++ wfβ.encode b
decode := fun bs =>
if h : bs.size = byteSize α + byteSize β then
let bsα := bs.extract 0 (byteSize α)
let bsβ := bs.extract (byteSize α) bs.size
Option.bind (wfα.decode bsα) fun a =>
Option.map (wfβ.decode bsβ) fun b => (a, b)
else none
encode_size := by ...
roundTrip := by ...
theorem prod_encode_size [Schema α] [Schema β]
(wfα : WireFormat α rowMajor) (wfβ : WireFormat β rowMajor) (a : α) (b : β) :
((prodRowMajor wfα wfβ).encode (a, b)).size = byteSize (α × β) := ...
theorem prod_roundTrip [Schema α] [Schema β]
(wfα : WireFormat α rowMajor) (wfβ : WireFormat β rowMajor) (a : α) (b : β) :
(prodRowMajor wfα wfβ).decode ((prodRowMajor wfα wfβ).encode (a, b)) = some (a, b) := ...
```
Add `#eval` example (relies on existing `Schema UInt8` and `Schema Bool` instances in `Schema.lean`):
```lean
#eval (prodRowMajor WireFormat.uint8RowMajor WireFormat.boolRowMajor).encode (42, true)
```
**Verification:**
```bash
lake build SilverSightCore
```
**Commit:**
```text
feat(core): add row-major wire format for product types
Certified encode/decode/roundTrip for α × β. Includes #eval witness.
Build: N jobs, 0 errors (lake build SilverSightCore)
```
**Claim update:** `silversight_claim_product_wireformat``CALIBRATED_ENGINEERING_DELTA`.
---
### 1.3 Identity and columnar product bridges
**Goal:** Provide layout bridges for pairs.
**Files:**
- `/tmp/SilverSight/Core/SilverSight/Semantics/ProductLayoutBridge.lean` (new)
- `/tmp/SilverSight/lakefile.lean` (add root)
**Specific additions:**
```lean
-- Identity bridge for pairs
def prodIdentity [Schema α] [Schema β]
(wfα : WireFormat α L) (wfβ : WireFormat β L) :
LayoutBridge (α × β) L L :=
LayoutBridge.identity (ProductWireFormat.prodRowMajor wfα wfβ)
-- Columnar wire format for pairs (fields stored contiguously by field index)
def prodColumnar [Schema α] [Schema β]
(wfα : WireFormat α rowMajor) (wfβ : WireFormat β rowMajor) :
WireFormat (α × β) columnar := ...
-- Bridge row-major ↔ columnar for pairs
def prodRowMajorToColumnar [Schema α] [Schema β]
(wfα : WireFormat α rowMajor) (wfβ : WireFormat β rowMajor) :
LayoutBridge (α × β) rowMajor columnar where
wf1 := ProductWireFormat.prodRowMajor wfα wfβ
wf2 := prodColumnar wfα wfβ
convert := fun bs =>
-- For pairs, row-major and columnar coincide; bridge is identity
bs
correct := by ...
```
**Verification:**
```bash
lake build SilverSightCore
```
**Commit:**
```text
feat(core): add product layout bridges
Identity and rowMajor↔columnar bridges for α × β.
Build: N jobs, 0 errors (lake build SilverSightCore)
```
**Claim update:** `silversight_claim_product_layout_bridge``CALIBRATED_ENGINEERING_DELTA`.
---
### 1.4 Zero-copy views for product fields
**Goal:** Allow reading product components through `View` without copying.
**Files:**
- `/tmp/SilverSight/Core/SilverSight/Semantics/ProductView.lean` (new)
- `/tmp/SilverSight/lakefile.lean` (add root)
**Specific additions:**
```lean
def View.fst [Schema α] [Schema β] (v : View (α × β)) : View α where
base := v.base
offset := v.offset
valid := by have h := v.valid; simp [prod_byteSize] at h ⊢; linarith
def View.snd [Schema α] [Schema β] (v : View (α × β)) : View β where
base := v.base
offset := v.offset + byteSize α
valid := by have h := v.valid; simp [prod_byteSize] at h ⊢; linarith
theorem readFst_eq [Schema α] [Schema β] (v : View (α × β)) (h : byteSize α = 1) :
(View.fst v).readUInt8 = v.base.get v.offset ... := ...
```
**Verification:**
```bash
lake build SilverSightCore
```
**Commit:**
```text
feat(core): add zero-copy product views
View.fst / View.snd preserve the address-arithmetic invariant.
Build: N jobs, 0 errors (lake build SilverSightCore)
```
**Claim update:** `silversight_claim_product_view``CALIBRATED_ENGINEERING_DELTA`.
---
### 1.5 Schema / wire format for Q16_16 and fixed-size arrays
**Goal:** Certify encodings for the numeric atoms used by braid states.
**Files:**
- `/tmp/SilverSight/Core/SilverSight/Semantics/Schema.lean` (append)
- `/tmp/SilverSight/Core/SilverSight/Semantics/WireFormat.lean` (append)
**Specific additions:**
```lean
-- In Schema.lean
-- Q0_16 remains the default for dimensionless scalars.
-- Q16_16 is used here because raw byte addresses and hardware register widths
-- require 32-bit integer precision; this is the documented justification.
instance : Schema Q16_16 where
byteSize := 4
wellFormed := fun _ => true
@[simp] theorem q16_16_byteSize : byteSize Q16_16 = 4 := rfl
instance : Schema UInt64 where
byteSize := 8
wellFormed := fun _ => true
@[simp] theorem uint64_byteSize : byteSize UInt64 = 8 := rfl
-- Fixed-length array schema
def Schema.array (n : Nat) (α : Type) [Schema α] : Schema (Fin n → α) where
byteSize := n * byteSize α
wellFormed := fun _ => true
```
```lean
-- In WireFormat.lean
def q16_16RowMajor : WireFormat Q16_16 rowMajor where
encode := fun q => ... -- 4 raw bytes, big-endian
decode := fun bs => ...
encode_size := ...
roundTrip := ...
def uint64RowMajor : WireFormat UInt64 rowMajor where
encode := fun u => ... -- 8 raw bytes, big-endian
decode := fun bs => ...
encode_size := ...
roundTrip := ...
def arrayRowMajor (n : Nat) (α : Type) [Schema α]
(wf : WireFormat α rowMajor) : WireFormat (Fin n → α) rowMajor := ...
```
**Verification:**
```bash
lake build SilverSightCore
#eval byteSize Q16_16
#eval byteSize UInt64
```
**Commit:**
```text
feat(core): add Q16_16, UInt64, and fixed-array wire formats
Certified encodings for numeric atoms. Q16_16 justified by byte-address
and hardware-register-width requirements; Q0_16 remains default for
dimensionless scalars.
Build: N jobs, 0 errors (lake build SilverSightCore)
```
**Claim update:** `silversight_claim_numeric_wireformat``CALIBRATED_ENGINEERING_DELTA`.
---
### 1.6 BraidState wire encoding
**Goal:** Provide a certified wire format for the canonical braid state object.
**Files:**
- `/tmp/SilverSight/formal/CoreFormalism/BraidStateEncoding.lean` (new)
- `/tmp/SilverSight/lakefile.lean` (add root to `SilverSightFormal`)
**Specific additions:**
```lean
import CoreFormalism.BraidStrand
import CoreFormalism.BraidEigensolid
import SilverSight.Semantics.ProductSchema
import SilverSight.Semantics.ProductWireFormat
import SilverSight.Semantics.LayoutBridge
namespace SilverSight.BraidStateEncoding
-- Schema instances for braid sub-structures.
-- Q16_16 is justified here because phase, residue, and jitter must represent
-- values outside [-1, 1] with sub-integer precision, matching the 32-bit
-- hardware registers used by the braid dynamics.
instance : Schema PhaseVec where byteSize := 8; wellFormed := fun _ => true
instance : Schema BraidBracket where byteSize := 24; wellFormed := fun _ => true
instance : Schema BraidStrand where byteSize := 48; wellFormed := fun _ => true
instance : Schema BraidState where byteSize := 392; wellFormed := fun _ => true
-- Row-major wire format for BraidState
def braidStateRowMajor : WireFormat BraidState rowMajor := ...
-- Identity bridge
def braidStateRowMajorBridge : LayoutBridge BraidState rowMajor rowMajor :=
LayoutBridge.identity braidStateRowMajor
#eval byteSize BraidState
#eval braidStateRowMajor.encode (BraidEigensolid.BraidState.mk ...)
theorem braid_state_encode_size (s : BraidState) :
(braidStateRowMajor.encode s).size = 392 := by
-- Derives from Schema.byteSize BraidState = 392
...
theorem braid_state_roundTrip (s : BraidState) :
braidStateRowMajor.decode (braidStateRowMajor.encode s) = some s := ...
end SilverSight.BraidStateEncoding
```
**Verification:**
```bash
lake build SilverSightFormal
```
**Commit:**
```text
feat(formal): add BraidState wire encoding
Certified row-major encoding for BraidState using Core product schema.
Build: N jobs, 0 errors (lake build SilverSightFormal)
```
**Claim update:** `silversight_claim_braid_state_encoding``CALIBRATED_ENGINEERING_DELTA`.
---
### 1.7 Extract DynamicCanal regime classifier
**Goal:** Make the canal regime available to Core layout selection without importing the full physics into Core.
**Files:**
- `/tmp/SilverSight/formal/CoreFormalism/DynamicCanal/Regime.lean` (new)
- `/tmp/SilverSight/formal/CoreFormalism/DynamicCanal.lean` (refactor to re-export)
- `/tmp/SilverSight/lakefile.lean` (update root if needed)
**Specific additions:**
```lean
-- DynamicCanal/Regime.lean
namespace SilverSight.DynamicCanal
inductive Regime where | coherent | stressed | throat
deriving Repr, DecidableEq, BEq
open SilverSight.FixedPoint.Q16_16
def classifyRegime (pressure lambdaEff : Q16_16) (pStress pThroat : Q16_16) : Regime :=
if ge pressure pStress then Regime.stressed
else if le lambdaEff pThroat then Regime.throat
else Regime.coherent
theorem classifyRegime_coherent_at_low_pressure
(pressure lambdaEff pStress pThroat : Q16_16)
(h1 : lt pressure pStress) (h2 : gt lambdaEff pThroat) :
classifyRegime pressure lambdaEff pStress pThroat = Regime.coherent := ...
end SilverSight.DynamicCanal
```
Refactor `DynamicCanal.lean` to `import CoreFormalism.DynamicCanal.Regime` and re-export `Regime`.
**Verification:**
```bash
lake build SilverSightFormal
```
**Commit:**
```text
refactor(formal): extract DynamicCanal.Regime module
Isolates the regime classifier so Core layout selection can use it.
Build: N jobs, 0 errors (lake build SilverSightFormal)
```
**Claim update:** `silversight_claim_canal_regime``CALIBRATED_ENGINEERING_DELTA`.
---
### 1.8 Bridge canal regime to Core layout selection
**Goal:** Link `CanalLayout.chooseLayout` to DynamicCanal physics.
**Files:**
- `/tmp/SilverSight/formal/CoreFormalism/DynamicCanal/CanalLayoutLink.lean` (new)
- `/tmp/SilverSight/lakefile.lean` (add root)
**Specific additions:**
```lean
import SilverSight.Semantics.CanalLayout
import CoreFormalism.DynamicCanal.Regime
namespace SilverSight.DynamicCanal
def toCoreRegime : Regime → SilverSight.Semantics.CanalRegime
| Regime.coherent => CanalRegime.coherent
| Regime.stressed => CanalRegime.stressed
| Regime.throat => CanalRegime.throat
def layoutForCanal (profile : AccessProfile) (pressure lambdaEff pStress pThroat : Q16_16) :
Layout :=
CanalLayout.chooseLayout profile (toCoreRegime (classifyRegime pressure lambdaEff pStress pThroat))
theorem layoutForCanal_coherent_uses_cost
(profile : AccessProfile) (pressure lambdaEff pStress pThroat : Q16_16)
(h1 : pressure < pStress) (h2 : lambdaEff > pThroat) :
layoutForCanal profile pressure lambdaEff pStress pThroat = chooseLayoutByCost profile := ...
theorem regime_override_preserves_cost_bound
(profile : AccessProfile) (pressure lambdaEff pStress pThroat : Q16_16) (l : Layout) :
le (Layout.cost (layoutForCanal profile pressure lambdaEff pStress pThroat) profile)
(Layout.cost l profile)
classifyRegime pressure lambdaEff pStress pThroat ≠ Regime.coherent := ...
end SilverSight.DynamicCanal
```
**Verification:**
```bash
lake build SilverSightFormal
```
**Commit:**
```text
feat(formal): link DynamicCanal regime to Core layout selector
Adds layoutForCanal and proves coherent-regime cost equivalence.
Build: N jobs, 0 errors (lake build SilverSightFormal)
```
**Claim update:** `silversight_claim_canal_layout_link``CALIBRATED_ENGINEERING_DELTA`.
---
### 1.9 ReceiptHeader schema and wire format
**Goal:** Make `Receipt` serializable as a fixed-size header plus side buffers.
**Files:**
- `/tmp/SilverSight/Core/SilverSight/Receipt.lean` (new)
- `/tmp/SilverSight/Core/SilverSightCore.lean` (update `Receipt` if needed)
- `/tmp/SilverSight/lakefile.lean` (add root)
**Specific additions:**
```lean
-- Core/SilverSight/Receipt.lean
namespace SilverSight.Core
-- Explicit layout (sequential, no implicit padding):
-- receiptIDHash UInt64 8
-- expressionHash UInt64 8
-- finalState UInt8 1 (HachimojiState encoded as one byte)
-- ticCount UInt64 8
-- fuelUsed UInt64 8
-- pathCostRaw UInt32 4
-- verified Bool 1
-- libraryRefCount UInt8 1
-- libraryRefsHash UInt64 8
-- reserved UInt8 1 (padding to 56-byte boundary)
-- total = 56 bytes
structure ReceiptHeader where
receiptIDHash : UInt64
expressionHash : UInt64
finalState : HachimojiState
ticCount : UInt64
fuelUsed : UInt64
pathCostRaw : UInt32 -- sentinel 0xFFFFFFFF means none
verified : Bool
libraryRefCount : UInt8
libraryRefsHash : UInt64
reserved : UInt8
deriving DecidableEq, Repr, BEq
instance : Schema HachimojiState where
byteSize := 1
wellFormed := fun _ => true
instance : Schema ReceiptHeader where
byteSize := 56
wellFormed := fun _ => true
def receiptHeaderRowMajor : WireFormat ReceiptHeader rowMajor := ...
def Receipt.toHeader (r : Receipt) : ReceiptHeader := ...
def Receipt.fromHeader (h : ReceiptHeader) (idText exprText refsText : String) : Receipt := ...
theorem fromHeader_toHeader (r : Receipt) :
Receipt.fromHeader (Receipt.toHeader r) r.receiptID r.expression
(String.intercalate "," r.libraryRefs) = r := ...
end SilverSight.Core
```
**Verification:**
```bash
lake build SilverSightCore
#eval byteSize ReceiptHeader
```
**Commit:**
```text
feat(core): add ReceiptHeader schema and wire format
Fixed-size 56-byte header for Receipt (explicit field layout); variable
text lives in side buffers.
Build: N jobs, 0 errors (lake build SilverSightCore)
```
**Claim update:** `silversight_claim_receipt_header``CALIBRATED_ENGINEERING_DELTA`.
---
### 1.10 Bind primitive in Core
**Goal:** Provide a lawful `bind` composition primitive for gates without proof holes.
**Files:**
- `/tmp/SilverSight/Core/SilverSight/Bind.lean` (new)
- `/tmp/SilverSight/lakefile.lean` (add root)
**Specific additions:**
```lean
namespace SilverSight.Core
-- A Gate is a partial, schema-respecting computation (Kleisli arrow).
-- Invariants are kept separate so that associativity/identity proofs are
-- trivial and require no sorry.
def Gate (α β : Type) [Schema α] [Schema β] := α → Option β
namespace Gate
-- Kleisli composition
def bind [Schema α] [Schema β] [Schema γ]
(g1 : Gate α β) (g2 : Gate β γ) : Gate α γ :=
fun a => Option.bind (g1 a) g2
-- Identity gate
def id [Schema α] : Gate α α := some
-- Invariant certificate, separate from the Gate itself.
structure Invariant {α β : Type} [Schema α] [Schema β]
(g : Gate α β) (inv : α → β → Prop) where
preserves : ∀ a b, g a = some b → inv a b
theorem bind_assoc [Schema α] [Schema β] [Schema γ] [Schema δ]
(g1 : Gate α β) (g2 : Gate β γ) (g3 : Gate γ δ) :
bind (bind g1 g2) g3 = bind g1 (bind g2 g3) := by
funext a
simp [bind, Option.bind_assoc]
theorem bind_id_left [Schema α] [Schema β] (g : Gate α β) :
bind (id : Gate α α) g = g := by
funext a
simp [bind, id]
theorem bind_id_right [Schema α] [Schema β] (g : Gate α β) :
bind g (id : Gate β β) = g := by
funext a
simp [bind, id]
end Gate
end SilverSight.Core
```
**Verification:**
```bash
lake build SilverSightCore
```
**Commit:**
```text
feat(core): add Gate as Kleisli arrow with separate invariant
Lawful bind (associativity, left/right identity) proven without sorry.
Invariants are optional certificates, not part of the Gate type.
Build: N jobs, 0 errors (lake build SilverSightCore)
```
**Claim update:** `silversight_claim_bind_core``CALIBRATED_ENGINEERING_DELTA`.
---
### 1.11 Integrate Receipt and Bind into SilverSightCore
**Goal:** Wire the new modules into the invariant center while preserving existing behavior.
**Files:**
- `/tmp/SilverSight/Core/SilverSightCore.lean`
- `/tmp/SilverSight/lakefile.lean`
**Specific additions:**
```lean
-- In lakefile.lean, add `SilverSight.Bind` to SilverSightCore roots:
lean_lib «SilverSightCore» where
srcDir := "Core"
roots := #[
`SilverSightCore,
`SilverSight.FixedPoint,
`SilverSight.Receipt,
`SilverSight.Bind,
`SilverSight.Semantics.Schema,
...
]
```
```lean
-- In Core/SilverSightCore.lean
import SilverSight.Receipt
import SilverSight.Bind
-- Extend Library to carry a Gate-like contract
abbrev Library := String → Receipt
def Receipt.toAVMInstruction (r : Receipt) : Instruction :=
Instruction.Verify r
#eval (Receipt.empty.toHeader).toString
```
**Verification:**
```bash
lake build SilverSightCore
lake build
```
**Commit:**
```text
feat(core): integrate Receipt and Bind into SilverSightCore
Registers SilverSight.Bind in lakefile and wires ReceiptHeader/Gate
into the invariant center.
Build: N jobs, 0 errors (lake build)
```
**Claim update:** `silversight_claim_core_integrated``CALIBRATED_ENGINEERING_DELTA`.
---
### 1.12 Phase 1 docs and project map
**Goal:** Keep specs, architecture, glossary, and project map in lockstep.
**Files:**
- `/home/allaun/Research Stack/6-Documentation/docs/specs/SilverSight_Spec.md`
- `/tmp/SilverSight/docs/ARCHITECTURE.md`
- `/tmp/SilverSight/AGENTS.md`
- `/tmp/SilverSight/docs/GLOSSARY.md`
- `/tmp/SilverSight/docs/PROJECT_MAP.{md,json}`
- `/tmp/SilverSight/docs/build_logs/2026-06-21_phase1_completion.md` (new)
**Specific additions:**
- Update spec §3.1§3.5 and §4.1 with implemented module names and theorems.
- Update `ARCHITECTURE.md` Layer 1 table to list all new modules.
- Update `AGENTS.md` build baseline and blessed surfaces.
- Add glossary entries: `ProductSchema`, `ProductWireFormat`, `ProductLayoutBridge`, `ProductView`, `ReceiptHeader`, `Gate`, `DynamicCanal.Regime`, `layoutForCanal`.
- Regenerate project map:
```bash
cd /tmp/SilverSight
python3 docs/generate_project_map.py
python3 .github/scripts/glossary_lint.py
python3 .github/scripts/check_doc_sync.py
```
**Verification:**
```bash
lake build
python3 -m py_compile python/*.py .github/scripts/*.py
```
**Commit:**
```text
docs(core): update spec, architecture, glossary, and project map for Phase 1
Documents the completed Core Semantics surface and DynamicCanal link.
Build: N jobs, 0 errors (lake build)
```
**Claim update:** Phase 1 documentation claims → `REVIEWED`.
---
## 6. Phase 2 — Triage and Port Research Stack Theorems
**Phase goal:** Decide what survives from Research Stack and port it cleanly.
**Claim target at phase end:** Foundation modules at `VERIFIED`; quarantined modules documented.
---
### 2.1 Run inventory scripts
**Goal:** Produce a machine-readable map of Research Stack concepts and SilverSight candidates.
**Files:**
- `/home/allaun/Research Stack/scripts/inventory_everything.py`
- `/tmp/SilverSight/docs/generate_research_stack_usage_map.py`
- `/tmp/SilverSight/docs/generate_porting_candidates.py`
- `/tmp/SilverSight/docs/research_stack_triage_report.md` (new)
**Specific additions:**
```bash
cd /home/allaun/Research Stack
python3 scripts/inventory_everything.py
cd /tmp/SilverSight
python3 docs/generate_research_stack_usage_map.py
python3 docs/generate_porting_candidates.py
```
**Verification:**
- `docs/research_stack_porting_candidates.md` exists and lists candidates.
- `extraction/all_concepts_merged.json` exists in Research Stack.
**Commit:**
```text
docs(formal): add Research Stack inventory and porting candidates
Generates triage inputs from inventory scripts.
```
**Claim update:** `silversight_claim_research_inventory``CALIBRATED_ENGINEERING_DELTA`.
---
### 2.2 Define triage criteria and manifest
**Goal:** Classify every Research Stack module as keep/delete/transform/quarantine.
**Files:**
- `/tmp/SilverSight/python/triage_module.py` (new)
- `/tmp/SilverSight/docs/triage_manifest.json` (new)
**Specific additions:**
```python
def classify_module(module_info: dict) -> dict:
if module_info.get("sorry_count", 0) > 5:
return {"action": "quarantine", "reason": "too many sorries"}
if module_info.get("math_kind") in {"fixedpoint", "number_theory", "braid", "rrc", "avm"}:
return {"action": "keep", "reason": "foundational"}
if module_info.get("math_kind") == "demo":
return {"action": "delete", "reason": "demo script"}
return {"action": "transform", "reason": "review required"}
```
**Verification:**
```bash
python3 -m py_compile python/triage_module.py
python3 python/triage_module.py
python3 -m json.tool docs/triage_manifest.json
```
**Commit:**
```text
feat(python): add Research Stack triage classifier
Produces docs/triage_manifest.json with keep/delete/transform/quarantine verdicts.
```
**Claim update:** `silversight_claim_triage_manifest``CALIBRATED_ENGINEERING_DELTA`.
---
### 2.3 Unify fixed-point definitions
**Goal:** Remove duplicate Q16_16 definitions; make `SilverSight.FixedPoint.Q16_16` canonical.
**Files:**
- `/tmp/SilverSight/formal/CoreFormalism/FixedPoint.lean` (delete or replace with re-export)
- `/tmp/SilverSight/formal/CoreFormalism/Q16_16Numerics.lean` (update imports)
- `/tmp/SilverSight/formal/CoreFormalism/DynamicCanal.lean` (update imports if needed)
- `/tmp/SilverSight/lakefile.lean` (remove `CoreFormalism.FixedPoint` root)
**Specific additions:**
```lean
-- formal/CoreFormalism/FixedPoint.lean becomes a re-export shim
import SilverSight.FixedPoint
export SilverSight.FixedPoint (Q16_16 Q0_16)
```
**Verification:**
```bash
lake build SilverSightFormal
lake build SilverSightRRC
```
**Commit:**
```text
refactor(formal): unify Q16_16 on SilverSight.FixedPoint
Replaces CoreFormalism.FixedPoint shim with canonical Core definition.
Build: N jobs, 0 errors (lake build SilverSightFormal)
```
**Claim update:** `silversight_claim_q16_unified``VERIFIED`.
---
### 2.4 Verify foundation modules compile
**Goal:** Ensure Sidon, interaction graph, sieve, and braid modules build without modification.
**Files:**
- `/tmp/SilverSight/formal/CoreFormalism/SidonSets.lean`
- `/tmp/SilverSight/formal/CoreFormalism/InteractionGraphSidon.lean`
- `/tmp/SilverSight/formal/CoreFormalism/SieveLemmas.lean`
- `/tmp/SilverSight/formal/CoreFormalism/BraidStrand.lean`
- `/tmp/SilverSight/formal/CoreFormalism/BraidCross.lean`
- `/tmp/SilverSight/formal/CoreFormalism/BraidEigensolid.lean`
- `/tmp/SilverSight/formal/CoreFormalism/BraidField.lean`
- `/tmp/SilverSight/formal/CoreFormalism/BraidSpherionBridge.lean`
- `/tmp/SilverSight/formal/CoreFormalism/BraidBracket.lean`
**Specific additions:**
- Add `#eval` witnesses for `eigensolid_convergence` and `receipt_invertible`.
- Document any `sorry` with `TODO(lean-port)`.
**Verification:**
```bash
lake build SilverSightFormal
```
**Commit:**
```text
chore(formal): verify foundation theorem modules
Adds #eval witnesses and TODO(lean-port) markers to braid/sidon modules.
Build: N jobs, 0 errors (lake build SilverSightFormal)
```
**Claim update:** Foundation theorem claims → `VERIFIED` (theorems already proved).
---
### 2.5 Port RRC foundation modules
**Goal:** Ensure RRC alignment gate and AVM ISA surface are complete.
**Files:**
- `/tmp/SilverSight/formal/SilverSight/RRC/Emit.lean`
- `/tmp/SilverSight/formal/SilverSight/AVMIsa/*.lean`
- `/tmp/SilverSight/formal/SilverSight/ReceiptCore.lean`
**Specific additions:**
- Reconcile any drift against Research Stack `Semantics.RRC.Emit.lean`.
- Add `Receipt.toSilverSightReceipt` bridge if missing.
- Ensure `AVMIsa.Emit` is the sole top-level JSON emitter.
**Verification:**
```bash
lake build SilverSightRRC
lake build rrc-emit-fixture
```
**Commit:**
```text
feat(rrc): reconcile RRC and AVM ISA surfaces
Aligns SilverSight RRC/Emit and AVMIsa with Research Stack sources.
Build: N jobs, 0 errors (lake build SilverSightRRC)
```
**Claim update:** `silversight_claim_rrc_surface``CALIBRATED_ENGINEERING_DELTA`.
---
### 2.6 Create PIST matrix modules
**Goal:** Provide the PIST classification surface referenced by the lakefile.
**Files:**
- `/tmp/SilverSight/formal/SilverSight/PIST/Spectral.lean` (new)
- `/tmp/SilverSight/formal/SilverSight/PIST/Classify.lean` (new)
- `/tmp/SilverSight/formal/SilverSight/PIST/Matrices250.lean` (new)
**Specific additions:**
```lean
-- PIST/Spectral.lean
namespace SilverSight.PIST
def tokenStrand (tokenIdx : Nat) : Fin 8 := ⟨tokenIdx % 8, by omega⟩
def buildAdjacencyMatrix (tokens : List String) : Fin 8 → Fin 8 → Nat := ...
end SilverSight.PIST
```
```lean
-- PIST/Classify.lean
def classifyMatrix (m : Fin 8 → Fin 8 → Nat) : Option PISTLabel := ...
```
```lean
-- PIST/Matrices250.lean
def matrices : List (String × Fin 8 → Fin 8 → Nat) := ...
```
**Verification:**
```bash
lake build SilverSightRRC
```
**Commit:**
```text
feat(rrc): add PIST spectral and classification surface
Implements token-strand adjacency and matrix classification in Lean.
Build: N jobs, 0 errors (lake build SilverSightRRC)
```
**Claim update:** `silversight_claim_pist_surface``CALIBRATED_ENGINEERING_DELTA`.
---
### 2.7 Quarantine sorry-bearing modules
**Goal:** Keep the main build clean while preserving WIP modules.
**Files:**
- `/tmp/SilverSight/quarantine/` (new directory)
- `/tmp/SilverSight/QUARANTINE.md` (new)
- `/tmp/SilverSight/lakefile.lean`
**Specific additions:**
- Move modules with `sorry` in the main import path to `quarantine/`.
- Add `TODO(lean-port): <ticket>` comment above every `sorry`.
- Document each quarantined module in `QUARANTINE.md`.
**Verification:**
```bash
lake build
# Confirm no sorry in main build
grep -R "sorry" Core/SilverSight/ formal/CoreFormalism/ formal/SilverSight/ || true
```
**Commit:**
```text
chore(formal): quarantine sorry-bearing modules
Moves WIP modules out of the main build with TODO(lean-port) tickets.
Build: N jobs, 0 errors (lake build)
```
**Claim update:** Quarantine claims → `BEAUTIFUL_PROVISIONAL`.
---
### 2.8 Delete/transform Research Stack shims
**Goal:** Produce a concrete keep/delete/transform list for Python scripts.
**Files:**
- `/tmp/SilverSight/docs/shim_transform_plan.md` (new)
**Specific additions:**
| Research Stack shim | SilverSight action |
|---|---|
| `pist_classify.py` | Delete logic; move to `formal/SilverSight/PIST/Classify.lean`. |
| `pist_matrix_builder.py` | Transform to pure I/O. |
| `ene_migrate_and_tag.py` | Delete (ENE/RDS not in SilverSight). |
| `rds_connect.py` | Delete. |
| `batch_embed_artifacts.py` | Delete. |
**Verification:**
- Document reviewed by glossary lint.
**Commit:**
```text
docs(infra): add shim transform plan
Lists keep/delete/transform verdicts for Research Stack Python shims.
```
**Claim update:** `silversight_claim_shim_transform_plan``REVIEWED`.
---
### 2.9 Document Core Gate vs. CoreFormalism Bind boundary
**Goal:** Avoid a forced isomorphism between two different bind concepts.
**Files:**
- `/tmp/SilverSight/docs/ARCHITECTURE.md`
- `/tmp/SilverSight/AGENTS.md`
**Specific additions:**
- State that `Core/SilverSight/Bind.lean` is the minimal Kleisli surface for gate composition.
- State that `formal/CoreFormalism/Bind.lean` is a library extension with metric/witness structure.
- No required bridge theorem; they serve different layers. If a bridge is later needed, it will be treated as a separate, quarantined proof effort.
**Verification:**
```bash
lake build SilverSightCore
lake build SilverSightFormal
```
**Commit:**
```text
docs(formal): document Gate/Bind boundary
Clarifies that Core Gate and library Bind are distinct surfaces; no
forced isomorphism is required for SilverSight 1.0.
Build: N jobs, 0 errors (lake build SilverSightFormal)
```
**Claim update:** `silversight_claim_bind_boundary``REVIEWED`.
---
### 2.10 Phase 2 docs and project map
**Goal:** Document the ported foundation surface.
**Files:**
- `/tmp/SilverSight/docs/ARCHITECTURE.md`
- `/tmp/SilverSight/AGENTS.md`
- `/tmp/SilverSight/docs/GLOSSARY.md`
- `/tmp/SilverSight/docs/PROJECT_MAP.{md,json}`
- `/tmp/SilverSight/docs/build_logs/2026-06-21_phase2_completion.md` (new)
**Specific additions:**
- Update Layer 2 table with quarantine status.
- Update build baseline.
- Regenerate project map.
**Verification:**
```bash
lake build
python3 docs/generate_project_map.py
python3 .github/scripts/glossary_lint.py
python3 .github/scripts/check_doc_sync.py
```
**Commit:**
```text
docs(formal): update architecture and glossary for Phase 2 port
Documents foundation module status and quarantine list.
Build: N jobs, 0 errors (lake build)
```
**Claim update:** Phase 2 documentation claims → `REVIEWED`.
---
## 7. Phase 3 — Build Search Space Corpus
**Phase goal:** Produce the 250-equation corpus and the PIST matrix pipeline.
**Claim target at phase end:** Corpus250 emits AVM-stamped JSON; PIST pipeline is pure I/O.
---
### 3.1 Extract Corpus250 source from Research Stack
**Goal:** Generate raw equation records with stable IDs.
**Files:**
- `/tmp/SilverSight/data/corpus250_source.jsonl` (new, gitignored)
- `/tmp/SilverSight/python/extract_corpus250_source.py` (new)
**Specific additions:**
```python
# Reads Research Stack Semantics/RRC/Corpus250.lean and emits JSONL
def extract_fixture_rows(path: Path) -> list[dict]:
...
```
**Verification:**
```bash
python3 -m py_compile python/extract_corpus250_source.py
python3 python/extract_corpus250_source.py
python3 -m json.tool data/corpus250_source.jsonl
```
**Commit:**
```text
feat(python): extract Corpus250 source records from Research Stack
Produces data/corpus250_source.jsonl with stable equation IDs.
```
**Claim update:** `silversight_claim_corpus250_source``CALIBRATED_ENGINEERING_DELTA`.
---
### 3.2 Build PIST predictions v1
**Goal:** Generate `rrc_pist_predictions_250_v1.json` per Research Stack spec.
**Files:**
- `/tmp/SilverSight/python/build_pist_predictions_250.py` (new or update existing)
- `/tmp/SilverSight/data/rrc_pist_predictions_250_v1.json` (new, gitignored)
**Specific additions:**
```python
def build_predictions(records: list[dict]) -> dict:
# Dedup by equation_id
# Deterministic representative selection: min equation_id lexicographically
# matrix_schema = "token_strand_adjacency_8x8_v1"
# matrix_hash = sha256 of canonical row-major JSON
```
**Verification:**
```bash
python3 -m py_compile python/build_pist_predictions_250.py
python3 python/build_pist_predictions_250.py
# Reproducibility check
sha256sum data/rrc_pist_predictions_250_v1.json
python3 python/build_pist_predictions_250.py
diff <(sha256sum data/rrc_pist_predictions_250_v1.json) <(sha256sum data/rrc_pist_predictions_250_v1.json)
```
**Commit:**
```text
feat(python): add PIST predictions v1 builder
Dedup by invariant id, deterministic representative, reproducible matrix hash.
```
**Claim update:** `silversight_claim_pist_predictions_v1``CALIBRATED_ENGINEERING_DELTA`.
---
### 3.3 Merge PIST labels into Corpus250
**Goal:** Generate `formal/SilverSight/RRC/Corpus250.lean` from JSON.
**Files:**
- `/tmp/SilverSight/python/build_corpus250.py` (update)
- `/tmp/SilverSight/formal/SilverSight/RRC/Corpus250.lean`
**Specific additions:**
```python
def merge_labels(rows: list[dict], predictions: dict) -> list[dict]:
# Populate pistProxyLabel / pistExactLabel when present
# Otherwise leave null
```
**Verification:**
```bash
python3 python/build_corpus250.py
lake build SilverSightRRC
```
**Commit:**
```text
feat(rrc): regenerate Corpus250 from PIST predictions
Populates labels when predictions exist; leaves missing_prediction otherwise.
Build: N jobs, 0 errors (lake build SilverSightRRC)
```
**Claim update:** `silversight_claim_corpus250_labeled``CALIBRATED_ENGINEERING_DELTA`.
---
### 3.4 Implement RrcEmitFixture executable
**Goal:** Emit the full fixture corpus as AVM-stamped JSON.
**Files:**
- `/tmp/SilverSight/exe/RrcEmitFixture.lean`
**Specific additions:**
```lean
def main : IO Unit := do
let fixtures := SilverSight.RRC.Corpus250.allFixtures
let emitted := fixtures.map (fun row =>
match SilverSight.RRC.Emit.determineAlignment row row.pistProxyLabel row.pistExactLabel with
| status => SilverSight.AVMIsa.Emit.emitFixtureRow row status)
IO.println (toJson emitted)
```
**Verification:**
```bash
lake build rrc-emit-fixture
.lake/build/bin/rrc-emit-fixture > /tmp/rrc_fixture_emitted.json
python3 -m json.tool /tmp/rrc_fixture_emitted.json
```
**Commit:**
```text
feat(rrc): implement RrcEmitFixture executable
Emits AVM-stamped fixture corpus JSON.
Build: N jobs, 0 errors (lake build rrc-emit-fixture)
```
**Claim update:** `silversight_claim_rrc_emit``CALIBRATED_ENGINEERING_DELTA`.
---
### 3.5 Validate emitted corpus
**Goal:** Ensure emitted JSON matches schema and claim boundary.
**Files:**
- `/tmp/SilverSight/python/validate_rrc_predictions.py` (update)
**Specific additions:**
```python
def validate_emitted(path: Path) -> dict:
# schema check
# claim_boundary = "matrix-only;no-classifier;no-lean-spectral"
# proxy_pred / exact_pred null unless labels present
# alignment status consistent with label presence
```
**Verification:**
```bash
python3 python/validate_rrc_predictions.py /tmp/rrc_fixture_emitted.json
```
**Commit:**
```text
feat(python): strengthen RRC emitted corpus validator
Schema, claim-boundary, and alignment consistency checks.
```
**Claim update:** `silversight_claim_rrc_validation``CALIBRATED_ENGINEERING_DELTA`.
---
### 3.6 Build concept index
**Goal:** Generate a searchable stable-ID concept map.
**Files:**
- `/tmp/SilverSight/python/inventory_concepts.py` (new)
- `/tmp/SilverSight/docs/concepts.json` (new)
- `/tmp/SilverSight/docs/concepts.md` (new)
**Specific additions:**
```python
def stable_id(kind: str, source_path: str, name: str) -> str:
h = hashlib.sha256(f"{kind}:{source_path}:{name}".encode()).hexdigest()[:12]
return f"silversight_{kind}_{h}_{name}"
```
**Verification:**
```bash
python3 -m py_compile python/inventory_concepts.py
python3 python/inventory_concepts.py
python3 -m json.tool docs/concepts.json
```
**Commit:**
```text
feat(python): add concept inventory generator
Produces docs/concepts.json and docs/concepts.md with stable IDs.
```
**Claim update:** `silversight_claim_concept_index``CALIBRATED_ENGINEERING_DELTA`.
---
### 3.7 Add PIST matrix builder tests
**Goal:** Ensure PIST pipeline is deterministic and label-free in logic.
**Files:**
- `/tmp/SilverSight/tests/test_pist_matrix_builder.py` (new)
- `/tmp/SilverSight/tests/test_corpus250_build.py` (new)
**Specific additions:**
```python
def test_token_strand():
assert token_strand(0) == 0
assert token_strand(8) == 0
assert token_strand(9) == 1
def test_build_adjacency():
tokens = ["a", "b", "c"]
m = build_adjacency_matrix(tokens)
assert sum(m[i][j] for i in range(8) for j in range(8)) == 2
```
**Verification:**
```bash
python3 -m pytest tests/test_pist_matrix_builder.py tests/test_corpus250_build.py
```
**Commit:**
```text
test(python): add PIST and corpus builder unit tests
Determinism and raw-feature checks only.
```
**Claim update:** `silversight_claim_pist_tests``CALIBRATED_ENGINEERING_DELTA`.
---
### 3.8 Phase 3 docs and project map
**Goal:** Document the corpus and PIST pipeline.
**Files:**
- `/tmp/SilverSight/docs/ARCHITECTURE.md`
- `/tmp/SilverSight/docs/GLOSSARY.md`
- `/tmp/SilverSight/docs/PROJECT_MAP.{md,json}`
- `/tmp/SilverSight/docs/build_logs/2026-06-21_phase3_completion.md` (new)
**Verification:**
```bash
lake build SilverSightRRC
lake build rrc-emit-fixture
python3 python/validate_rrc_predictions.py /tmp/rrc_fixture_emitted.json
python3 docs/generate_project_map.py
python3 .github/scripts/glossary_lint.py
```
**Commit:**
```text
docs(rrc): document Phase 3 corpus and PIST pipeline
Updates architecture, glossary, and project map.
Build: N jobs, 0 errors (lake build SilverSightRRC)
```
**Claim update:** Phase 3 documentation claims → `REVIEWED`.
---
## 8. Phase 4 — Port Mathematical Models
**Phase goal:** Prove the compression and physics claims that justify SilverSight.
**Claim target at phase end:** Braid compression theorems at `VERIFIED`; other models documented.
---
### 4.1 Verify existing eigensolid convergence theorem
**Goal:** Confirm `BraidEigensolid.eigensolid_convergence` is in scope and building.
**Files:**
- `/tmp/SilverSight/formal/CoreFormalism/BraidEigensolid.lean`
**Specific additions:**
- Add `#eval` witness with a concrete eigensolid state.
- Add a short doc comment explaining the theorem's exact evaluation model.
**Verification:**
```bash
lake build SilverSightFormal
```
**Commit:**
```text
docs(formal): document eigensolid_convergence evaluation model
Adds #eval witness and clarifies the theorem's computational interpretation.
Build: N jobs, 0 errors (lake build SilverSightFormal)
```
**Claim update:** `silversight_claim_eigensolid_convergence``VERIFIED`.
---
### 4.2 Verify existing receipt invertibility theorem
**Goal:** Confirm `BraidEigensolid.receipt_invertible` is in scope and building.
**Files:**
- `/tmp/SilverSight/formal/CoreFormalism/BraidEigensolid.lean`
**Specific additions:**
- Add `#eval` witness showing two eigensolids with identical receipts have matching residues.
- Document that the theorem covers gaps/timing/absence via `scar_absent` and `write_time`.
**Verification:**
```bash
lake build SilverSightFormal
```
**Commit:**
```text
docs(formal): document receipt_invertible coverage
Adds #eval witness and notes gap/timing/absence dimensions.
Build: N jobs, 0 errors (lake build SilverSightFormal)
```
**Claim update:** `silversight_claim_receipt_invertible``VERIFIED`.
---
### 4.3 Link BraidReceipt to wire format
**Goal:** Show that the braid receipt can be serialized with the certified product encoder.
**Files:**
- `/tmp/SilverSight/formal/CoreFormalism/BraidReceipt.lean` (new)
**Specific additions:**
```lean
import CoreFormalism.BraidEigensolid
import CoreFormalism.BraidStateEncoding
namespace SilverSight.BraidReceipt
def encodeBraidReceipt (r : BraidReceipt) : ByteArray := ...
def decodeBraidReceipt (bs : ByteArray) : Option BraidReceipt := ...
theorem encodeBraidReceipt_size (r : BraidReceipt) :
(encodeBraidReceipt r).size = byteSize BraidReceipt := ...
theorem encodeBraidReceipt_roundTrip (r : BraidReceipt) :
decodeBraidReceipt (encodeBraidReceipt r) = some r := ...
-- Wire-level invertibility: equal wire encodings imply equal receipts
theorem receipt_wire_invertible (r1 r2 : BraidReceipt) :
encodeBraidReceipt r1 = encodeBraidReceipt r2 → r1 = r2 := ...
end SilverSight.BraidReceipt
```
**Verification:**
```bash
lake build SilverSightFormal
```
**Commit:**
```text
feat(formal): add certified BraidReceipt wire encoding
Links BraidEigensolid receipt to BraidStateEncoding product encoder.
Build: N jobs, 0 errors (lake build SilverSightFormal)
```
**Claim update:** `silversight_claim_braid_receipt_wire``CALIBRATED_ENGINEERING_DELTA`.
---
### 4.4 Compression benchmark harness
**Goal:** Collect reproducible compression ratios on a sample corpus.
**Files:**
- `/tmp/SilverSight/python/compression_benchmark.py` (new)
- `/tmp/SilverSight/python/generate_sample.py` (new)
- `/tmp/SilverSight/data/compression_benchmark_sample/` (new, gitignored)
**Specific additions:**
```python
# generate_sample.py
# Creates reproducible 1 MB and 10 MB samples from:
# - Research Stack enwik9 (if available at a configured path)
# - Or deterministic pseudorandom bytes seeded by manifest hash
SAMPLE_SEED = "silversight_compression_benchmark_v1"
def generate_sample(size_bytes: int, out_path: Path) -> Path:
...
def benchmark_braid(sample_path: Path) -> dict:
# Run braid compressor via lake exe braid-compress
# Baseline against zlib, gzip, brotli, zstd
# Report SI ratio original/compressed and reproducibility hash
```
**Verification:**
```bash
python3 -m py_compile python/compression_benchmark.py python/generate_sample.py
python3 python/generate_sample.py --size 1048576 --out data/samples/enwik9_1mb.bin
python3 python/compression_benchmark.py --sample data/samples/enwik9_1mb.bin
sha256sum data/samples/enwik9_1mb.bin # record in build log
```
**Commit:**
```text
feat(python): add compression benchmark harness
Reports SI ratios against standard codecs on reproducible 1 MB/10 MB
samples. Sample source is Research Stack enwik9 or deterministic seed.
```
**Claim update:** `silversight_claim_compression_benchmark``CALIBRATED_ENGINEERING_DELTA`.
---
### 4.5 DynamicCanal integration tests
**Goal:** Show that DynamicCanal regime selection drives layout choice.
**Files:**
- `/tmp/SilverSight/tests/test_canal_layout.py` (new)
**Specific additions:**
```python
def test_layout_for_canal():
# low pressure → coherent → uses cost model
# high pressure → stressed → compact
# low lambda → throat → columnar
```
**Verification:**
```bash
python3 -m pytest tests/test_canal_layout.py
```
**Commit:**
```text
test(python): add DynamicCanal layout selection tests
Verifies regime-to-layout mapping matches Core theorems.
```
**Claim update:** `silversight_claim_canal_tests``CALIBRATED_ENGINEERING_DELTA`.
---
### 4.6 Phase 4 docs and project map
**Goal:** Document compression verification results.
**Files:**
- `/tmp/SilverSight/docs/ARCHITECTURE.md`
- `/tmp/SilverSight/docs/GLOSSARY.md`
- `/tmp/SilverSight/docs/PROJECT_MAP.{md,json}`
- `/tmp/SilverSight/docs/build_logs/2026-06-21_phase4_completion.md` (new)
**Verification:**
```bash
lake build
python3 docs/generate_project_map.py
python3 .github/scripts/glossary_lint.py
```
**Commit:**
```text
docs(formal): document Phase 4 compression theorems and benchmarks
Records eigensolid/receipt invertibility status and benchmark method.
Build: N jobs, 0 errors (lake build)
```
**Claim update:** Phase 4 documentation claims → `REVIEWED`.
---
## 9. Phase 5 — Rewrite Shims
**Phase goal:** Convert all Python scripts to pure I/O wrappers.
**Claim target at phase end:** No Python file contains admissibility, cost, or classification logic.
---
### 5.1 Shim audit script
**Goal:** Automatically detect decision logic in Python.
**Files:**
- `/tmp/SilverSight/python/check_for_decision_logic.py` (new)
**Specific additions:**
```python
FORBIDDEN_PATTERNS = [
r"if.*classif", r"if.*admiss", r"if.*cost\s*[<>=]",
r"promotion\s*=\s*['\"]promoted['\"]",
r"def.*decide",
]
```
**Verification:**
```bash
python3 -m py_compile python/check_for_decision_logic.py
python3 python/check_for_decision_logic.py python/ qubo/
```
**Commit:**
```text
feat(python): add decision-logic audit script
Flags forbidden patterns in Python shims.
```
**Claim update:** `silversight_claim_shim_audit``CALIBRATED_ENGINEERING_DELTA`.
---
### 5.2 Refactor pist_matrix_builder to pure I/O
**Goal:** Remove any classification or decision logic.
**Files:**
- `/tmp/SilverSight/python/pist_matrix_builder.py`
- `/tmp/SilverSight/python/build_pist_predictions_250.py`
**Specific additions:**
- Delete any `if` that changes output based on inferred labels.
- Keep only tokenization, strand assignment, and counting.
**Verification:**
```bash
python3 python/check_for_decision_logic.py python/pist_matrix_builder.py
python3 python/build_pist_predictions_250.py
sha256sum data/rrc_pist_predictions_250_v1.json
```
**Commit:**
```text
refactor(python): strip decision logic from PIST builders
Matrix builders now produce only raw counts and deterministic labels.
```
**Claim update:** `silversight_claim_pist_builder_pure_io``REVIEWED`.
---
### 5.3 Refactor corpus builder to pure merge
**Goal:** Ensure `build_corpus250.py` only merges data; no alignment logic.
**Files:**
- `/tmp/SilverSight/python/build_corpus250.py`
**Specific additions:**
- Move alignment status determination entirely into Lean `RRC.Emit`.
- Python only copies `pistProxyLabel` / `pistExactLabel` when present.
**Verification:**
```bash
python3 python/check_for_decision_logic.py python/build_corpus250.py
python3 python/build_corpus250.py
lake build SilverSightRRC
```
**Commit:**
```text
refactor(python): make corpus250 builder a pure merge script
Alignment status is now computed only in Lean.
```
**Claim update:** `silversight_claim_corpus_builder_pure_io``REVIEWED`.
---
### 5.4 Add LLM review receipt emitter wrapper
**Goal:** Provide a SilverSight-native way to emit review receipts.
**Files:**
- `/tmp/SilverSight/python/emit_review_receipt.py` (new)
**Specific additions:**
```python
def emit_review(review_text: str, source_files: list[Path]) -> dict:
# Call canonical review emitter or local Ollama endpoint
# Include answer_sha256
# Return JSON receipt
```
**Verification:**
```bash
python3 -m py_compile python/emit_review_receipt.py
python3 python/emit_review_receipt.py --dry-run docs/ARCHITECTURE.md
```
**Commit:**
```text
feat(python): add review receipt emitter wrapper
Emits signed review receipts with answer_sha256.
```
**Claim update:** `silversight_claim_review_emitter``CALIBRATED_ENGINEERING_DELTA`.
---
### 5.5 Delete or move non-I/O scripts
**Goal:** Remove scripts that cannot become pure I/O.
**Files:**
- `/tmp/SilverSight/python/chaos_game.py` — move to `formal/CoreFormalism/ChaosGame.lean` or delete.
- `/tmp/SilverSight/python/spectral_profile.py` — keep only feature extraction; move peaks/decisions to Lean.
- `/tmp/SilverSight/python/test_search.py` — keep as tests, ensure no decision logic.
**Verification:**
```bash
python3 python/check_for_decision_logic.py python/
```
**Commit:**
```text
chore(python): remove or relocate decision-bearing scripts
Chaos game and spectral decisions moved to Lean or deleted.
```
**Claim update:** `silversight_claim_shim_cleaned``REVIEWED`.
---
### 5.6 Phase 5 docs and project map
**Goal:** Document the pure-I/O shim contract.
**Files:**
- `/tmp/SilverSight/AGENTS.md` — add shim contract checklist.
- `/tmp/SilverSight/docs/ARCHITECTURE.md`
- `/tmp/SilverSight/docs/GLOSSARY.md`
- `/tmp/SilverSight/docs/PROJECT_MAP.{md,json}`
- `/tmp/SilverSight/docs/build_logs/2026-06-21_phase5_completion.md` (new)
**Verification:**
```bash
python3 -m py_compile python/*.py qubo/*.py tests/*.py
python3 python/check_for_decision_logic.py python/ qubo/
python3 docs/generate_project_map.py
python3 .github/scripts/glossary_lint.py
```
**Commit:**
```text
docs(python): document Phase 5 pure-I/O shim contract
Adds shim audit instructions and updates project map.
Build: N jobs, 0 errors (py_compile + lint)
```
**Claim update:** Phase 5 documentation claims → `REVIEWED`.
---
## 10. Phase 6 — Hardware Extraction
**Phase goal:** Generate substrate implementations from Lean and collect hardware receipts.
**Claim target at phase end:** Verilator simulation receipt present; bonus Tang Nano receipt if hardware available.
---
### 6.1 Formalize 1-Wire trit VM
**Goal:** Map 1-Wire pulses to canal regimes and trit values.
**Files:**
- `/tmp/SilverSight/formal/CoreFormalism/DynamicCanal/OneWire.lean` (new)
**Specific additions:**
```lean
inductive Trit where | neg | zero | pos
def pulseToTrit (slot : UInt16) (parity : Bool) : Trit := ...
def tritToRegime (t : Trit) : CanalRegime := ...
theorem pulse_trit_roundTrip (slot : UInt16) (parity : Bool) :
tritToRegime (pulseToTrit slot parity) = ... := ...
```
**Verification:**
```bash
lake build SilverSightFormal
```
**Commit:**
```text
feat(formal): add 1-Wire trit VM mapping
Maps pulses to trits and canal regimes.
Build: N jobs, 0 errors (lake build SilverSightFormal)
```
**Claim update:** `silversight_claim_onewire_trit_vm``CALIBRATED_ENGINEERING_DELTA`.
---
### 6.2 Verilog extraction harness
**Goal:** Generate Verilog by static transpilation of proven Lean `def`s.
**Files:**
- `/tmp/SilverSight/hardware/verilog/extract_verilog.py` (new)
- `/tmp/SilverSight/hardware/verilog/lean_to_verilog_map.json` (new)
- `/tmp/SilverSight/hardware/verilog/q16_add_sat.v` (generated)
- `/tmp/SilverSight/hardware/verilog/braid_cross_step.v` (generated)
**Specific additions:**
```json
// lean_to_verilog_map.json — static, human-reviewed mapping
{
"SilverSight.FixedPoint.Q16_16.add": "q16_add_sat.v",
"SilverSight.BraidCross.crossSlot": "braid_cross_step.v"
}
```
```python
# extract_verilog.py reads the static map and writes the matching template.
# It contains no decision logic; the mapping is the source of truth.
TEMPLATES = {
"q16_add_sat": "module q16_add_sat(input [31:0] a, b, output [31:0] y); ... endmodule",
"braid_cross_step": "module braid_cross_step(...); ... endmodule",
}
def extract(mapping_path: Path, out_dir: Path) -> None:
mapping = json.loads(mapping_path.read_text())
for lean_name, template_name in mapping.items():
(out_dir / template_name).write_text(TEMPLATES[template_name])
```
**Verification:**
```bash
python3 -m py_compile hardware/verilog/extract_verilog.py
python3 hardware/verilog/extract_verilog.py
sha256sum hardware/verilog/*.v
iverilog -g2012 hardware/verilog/q16_add_sat.v -o /tmp/q16_add_sat.vvp
```
**Commit:**
```text
feat(hardware): add static Verilog transpilation harness
Python I/O reads a human-reviewed Lean→Verilog map and writes templates.
No decision logic in Python; mapping is the source of truth.
```
**Claim update:** `silversight_claim_verilog_extraction``CALIBRATED_ENGINEERING_DELTA`.
---
### 6.3 Verilator testbench
**Goal:** Run generated Verilog in simulation and collect a receipt.
**Files:**
- `/tmp/SilverSight/hardware/verilog/tb_q16_add_sat.cpp` (new)
- `/tmp/SilverSight/hardware/verilog/Makefile` (new)
**Specific additions:**
```cpp
// Test a + b saturation against Lean reference
int main() { ... }
```
**Verification:**
```bash
cd hardware/verilog
make sim
./obj_dir/Vq16_add_sat
```
**Commit:**
```text
test(hardware): add Verilator testbench for q16_add_sat
Simulation receipt includes cycle counts and output hashes.
```
**Claim update:** `silversight_claim_verilator_receipt``CALIBRATED_ENGINEERING_DELTA`.
---
### 6.4 FPGA build documentation
**Goal:** Document how to burn a bitstream and collect a live receipt.
**Files:**
- `/tmp/SilverSight/hardware/fpga/README.md` (new)
- `/tmp/SilverSight/hardware/fpga/tang_nano_20k/pinout.pcf` (new)
- `/tmp/SilverSight/hardware/fpga/tang_nano_20k/top.v` (new)
**Specific additions:**
- Toolchain commands for Yosys/NextPNR/openFPGALoader.
- UART beacon format.
- Bitstream hash computation.
**Verification:**
```bash
# Build bitstream (optional, requires hardware)
cd hardware/fpga/tang_nano_20k
make
```
**Commit:**
```text
docs(hardware): add Tang Nano 20K build instructions
Documents bitstream build, hash, and UART beacon.
```
**Claim update:** `silversight_claim_fpga_build_docs``REVIEWED`.
---
### 6.5 Hardware receipt schema
**Goal:** Define the receipt format for hardware verification.
**Files:**
- `/tmp/SilverSight/hardware/receipt/hardware_receipt_schema.json` (new)
- `/tmp/SilverSight/python/validate_hardware_receipt.py` (new)
**Specific additions:**
```json
{
"schema": "hardware_fpga_receipt_v1",
"bitstream_hash": "sha256:...",
"source_hash": "sha256:...",
"uart_beacon": "...",
"continuous_state": "...",
"gate": "q16_add_sat",
"result": "passed"
}
```
**Verification:**
```bash
python3 -m py_compile python/validate_hardware_receipt.py
python3 python/validate_hardware_receipt.py hardware/receipt/sample_receipt.json
```
**Commit:**
```text
feat(hardware): add hardware receipt schema and validator
Defines FPGA receipt fields and validation rules.
```
**Claim update:** `silversight_claim_hardware_receipt_schema``CALIBRATED_ENGINEERING_DELTA`.
---
### 6.6 Phase 6 docs and project map
**Goal:** Document hardware extraction status.
**Files:**
- `/tmp/SilverSight/docs/ARCHITECTURE.md`
- `/tmp/SilverSight/docs/GLOSSARY.md`
- `/tmp/SilverSight/docs/PROJECT_MAP.{md,json}`
- `/tmp/SilverSight/docs/build_logs/2026-06-21_phase6_completion.md` (new)
**Verification:**
```bash
lake build SilverSightFormal
python3 docs/generate_project_map.py
python3 .github/scripts/glossary_lint.py
```
**Commit:**
```text
docs(hardware): document Phase 6 extraction and receipts
Updates architecture, glossary, and project map.
Build: N jobs, 0 errors (lake build SilverSightFormal)
```
**Claim update:** Phase 6 documentation claims → `REVIEWED`.
---
## 11. Phase 7 — Applications
**Phase goal:** Wire user-facing tools to the verified core without leaking logic.
**Claim target at phase end:** Applications produce receipts through Lean gates.
---
### 7.1 CAD harness
**Goal:** Text-to-CAD pipeline calls Lean geometry gate.
**Files:**
- `/tmp/SilverSight/applications/cad/cad_harness.py` (new)
- `/tmp/SilverSight/formal/SilverSight/CAD/GeometryGate.lean` (new)
**Specific additions:**
```python
def generate_cad(prompt: str) -> dict:
# Call lake exe cad-geometry-gate
# Return JSON receipt
```
**Verification:**
```bash
lake build cad-geometry-gate
python3 applications/cad/cad_harness.py --prompt "cube"
```
**Commit:**
```text
feat(apps): add CAD geometry gate and harness
Lean gate validates geometry; Python only formats and renders.
```
**Claim update:** `silversight_claim_cad_harness``CALIBRATED_ENGINEERING_DELTA`.
---
### 7.2 LLM review dashboard hook
**Goal:** Display review receipts in Hermes dashboard.
**Files:**
- `/tmp/SilverSight/applications/dashboard/review_widget.py` (new)
**Specific additions:**
- Read `docs/claims/manifest_v1.json` and render status.
- No decision logic.
**Verification:**
```bash
python3 -m py_compile applications/dashboard/review_widget.py
```
**Commit:**
```text
feat(apps): add review receipt dashboard widget
Displays claim-state manifest without logic.
```
**Claim update:** `silversight_claim_dashboard_widget``CALIBRATED_ENGINEERING_DELTA`.
---
### 7.3 End-to-end smoke test
**Goal:** Run a full pipeline from equation text to AVM receipt.
**Files:**
- `/tmp/SilverSight/tests/test_end_to_end.py` (new)
**Specific additions:**
```python
def test_equation_to_receipt():
# Input: equation text
# PIST matrix builder → raw features
# lake exe rrc-emit-fixture → receipt JSON
# Validate receipt schema
```
**Verification:**
```bash
python3 -m pytest tests/test_end_to_end.py
```
**Commit:**
```text
test(apps): add end-to-end pipeline smoke test
Equation text → PIST features → RRC alignment → AVM receipt.
```
**Claim update:** `silversight_claim_e2e_smoke``CALIBRATED_ENGINEERING_DELTA`.
---
### 7.4 Phase 7 docs and project map
**Goal:** Document applications layer.
**Files:**
- `/tmp/SilverSight/docs/ARCHITECTURE.md`
- `/tmp/SilverSight/docs/GLOSSARY.md`
- `/tmp/SilverSight/docs/PROJECT_MAP.{md,json}`
- `/tmp/SilverSight/docs/build_logs/2026-06-21_phase7_completion.md` (new)
**Verification:**
```bash
python3 docs/generate_project_map.py
python3 .github/scripts/glossary_lint.py
```
**Commit:**
```text
docs(apps): document Phase 7 applications
Updates architecture, glossary, and project map.
```
**Claim update:** Phase 7 documentation claims → `REVIEWED`.
---
## 12. Phase 8 — Documentation and Promotion
**Phase goal:** Produce the final evidence package and promote claims to `VERIFIED`.
---
### 8.1 Finalize SilverSight specification
**Goal:** Remove open questions and mark spec as final.
**Files:**
- `/home/allaun/Research Stack/6-Documentation/docs/specs/SilverSight_Spec.md`
**Specific additions:**
- Update status to **Final — SilverSight 1.0**.
- Resolve all open questions with decisions from §3.
- Add §13: Verification Report.
**Verification:**
```bash
python3 -m markdownlint 6-Documentation/docs/specs/SilverSight_Spec.md || true
```
**Commit:**
```text
docs(specs): finalize SilverSight 1.0 specification
Resolves open questions and adds verification report section.
```
**Claim update:** `silversight_claim_spec_final``REVIEWED`.
---
### 8.2 Create claim-state manifest
**Goal:** Machine-readable record of every claim and its state.
**Files:**
- `/tmp/SilverSight/docs/claims/manifest_v1.json` (new)
- `/tmp/SilverSight/docs/claims/manifest_v1.md` (new)
**Specific additions:**
```json
{
"schema": "silver_sight_claim_manifest_v1",
"claims": [
{
"claim_id": "silversight_claim_product_schema",
"state": "VERIFIED",
"evidence": ["Core/SilverSight/Semantics/ProductSchema.lean"],
"reviewed_by": "ollama_deepseek_review_emitter",
"verified_by": "lake build"
}
]
}
```
**Verification:**
```bash
python3 -m json.tool docs/claims/manifest_v1.json
python3 python/validate_claim_manifest.py docs/claims/manifest_v1.json
```
**Commit:**
```text
feat(docs): add claim-state manifest v1
Machine-readable record of all claims, evidence, and promotion states.
```
**Claim update:** `silversight_claim_manifest``CALIBRATED_ENGINEERING_DELTA`.
---
### 8.3 Build evidence DAG
**Goal:** Visualize theorem/receipt dependencies.
**Files:**
- `/tmp/SilverSight/docs/claims/evidence_dag.dot` (new)
- `/tmp/SilverSight/docs/claims/evidence_dag.svg` (generated)
**Specific additions:**
```dot
digraph {
"Schema.lean" -> "ProductSchema.lean";
"ProductSchema.lean" -> "BraidStateEncoding.lean";
"BraidStateEncoding.lean" -> "BraidReceipt.lean";
"BraidEigensolid.lean" -> "eigensolid_convergence";
"BraidEigensolid.lean" -> "receipt_invertible";
}
```
**Verification:**
```bash
dot -Tsvg docs/claims/evidence_dag.dot -o docs/claims/evidence_dag.svg
```
**Commit:**
```text
docs(docs): add evidence DAG
Visual dependency graph of theorems, modules, and receipts.
```
**Claim update:** `silversight_claim_evidence_dag``REVIEWED`.
---
### 8.4 Collect review receipts
**Goal:** Emit `REVIEWED` receipts for all claims needing review.
**Files:**
- `/tmp/SilverSight/receipts/reviewed/*.json` (new)
**Specific additions:**
```bash
python3 python/emit_review_receipt.py \
--files Core/SilverSight/Semantics/*.lean \
--out receipts/reviewed/core_semantics_review.json
```
**Verification:**
```bash
python3 python/validate_hardware_receipt.py receipts/reviewed/*.json || true
python3 python/validate_rrc_predictions.py receipts/reviewed/*.json || true
```
**Commit:**
```text
docs(receipts): collect Phase 8 review receipts
Signed review receipts for all reviewed claims.
```
**Claim update:** Reviewed claims → `REVIEWED`.
---
### 8.5 Final verification run
**Goal:** Run the full verification suite before promotion.
**Files:**
- `/tmp/SilverSight/docs/build_logs/2026-06-21_final_verification.md` (new)
**Commands:**
```bash
cd /tmp/SilverSight
lake build
lake build SilverSightCore
lake build SilverSightFormal
lake build SilverSightRRC
lake build rrc-emit-fixture
lake build q16-roundtrip
.lake/build/bin/rrc-emit-fixture > /tmp/rrc_fixture_emitted.json
python3 python/validate_rrc_predictions.py /tmp/rrc_fixture_emitted.json
python3 -m py_compile python/*.py qubo/*.py tests/*.py .github/scripts/*.py applications/*/*.py hardware/verilog/*.py
python3 python/check_for_decision_logic.py python/ qubo/ applications/
python3 .github/scripts/glossary_lint.py
python3 .github/scripts/check_doc_sync.py
python3 docs/generate_project_map.py
git diff --cached --check
```
**Commit:**
```text
chore(repo): final verification run for SilverSight 1.0
Records full build, test, lint, and secret-check results.
Build: N jobs, 0 errors (lake build)
```
**Claim update:** `silversight_claim_final_verification``VERIFIED`.
---
### 8.6 Promote claims to VERIFIED
**Goal:** Update the manifest with final states and human sign-off.
**Files:**
- `/tmp/SilverSight/docs/claims/manifest_v1.json`
- `/tmp/SilverSight/docs/claims/manifest_v1.md`
**Specific additions:**
- Set all in-scope claims to `VERIFIED`.
- Add `signed_by` field for human reviewer.
**Verification:**
```bash
python3 python/validate_claim_manifest.py docs/claims/manifest_v1.json
```
**Commit:**
```text
docs(claims): promote SilverSight 1.0 claims to VERIFIED
Final claim-state manifest with reviewer provenance.
```
**Claim update:** All in-scope claims → `VERIFIED`.
---
## 13. Continuous Integration
Add or update workflows in `/tmp/SilverSight/.github/workflows/`:
```text
lean-check.yml -- lake build on push
python-check.yml -- py_compile + pytest
doc-sync.yml -- glossary lint + check_doc_sync
q16-roundtrip.yml -- Python/C/Lean roundtrip
rrc-emit-check.yml -- emit fixture + validate
hardware-receipt.yml -- Verilator simulation (manual trigger)
claim-manifest-check.yml-- validate claim manifest on change
```
---
## 14. Risks and Mitigations
| Risk | Mitigation |
|---|---|
| Research Stack modules have `sorry` | Quarantine; do not block main build. |
| Duplicate `Q16_16` definitions | Unify to `SilverSight.FixedPoint.Q16_16`; bridge old code. |
| Python decision logic leaks back | `check_for_decision_logic.py` audit on every commit. |
| Hardware receipts unavailable | Document software witness vs. live-hardware distinction; Verilator as primary target. |
| Mathlib version drift | Pin toolchain in `lean-toolchain`; vendor `.lake` if necessary. |
| Claim promotion by hand | Manifest is the only promotion authority; manual edits require reviewer signature. |
| Scope creep on physics models | Defer non-braid manifolds to 1.1. |
---
## 15. Immediate Next Steps
If this microstep pipeline is approved, execute the first batch in dependency order:
1. **1.1**`ProductSchema.lean`
2. **1.2**`ProductWireFormat.lean`
3. **1.3**`ProductLayoutBridge.lean`
4. **1.4**`ProductView.lean`
5. **1.5** — Q16_16 / UInt64 / fixed-array wire formats
6. **1.6**`BraidStateEncoding.lean`
7. **1.7**`DynamicCanal/Regime.lean`
Each step is a separate commit with its own build baseline and claim-state update.
---
## 16. Acceptance Criteria for SilverSight 1.0
- `lake build` passes with zero errors across `SilverSightCore`, `SilverSightFormal`, and `SilverSightRRC`.
- No `sorry` in the main import path.
- No `Float` in core compute paths.
- All Python shims pass `py_compile` and `check_for_decision_logic.py`.
- The 250-equation RRC corpus emits AVM-stamped JSON that validates.
- `eigensolid_convergence` and `receipt_invertible` theorems build.
- At least one Verilator simulation receipt (or FPGA receipt) is present with source hash.
- `docs/claims/manifest_v1.json` exists with every in-scope claim at `VERIFIED`.
- All documentation is in sync: `glossary_lint.py` and `check_doc_sync.py` pass.