Skip to content

docs(codec): PR-X12 substrate canon resolutions — 18 open items resolved#197

Merged
AdaWorldAPI merged 4 commits into
masterfrom
claude/pr-x12-canon-resolutions-MAOO0
May 22, 2026
Merged

docs(codec): PR-X12 substrate canon resolutions — 18 open items resolved#197
AdaWorldAPI merged 4 commits into
masterfrom
claude/pr-x12-canon-resolutions-MAOO0

Conversation

@AdaWorldAPI
Copy link
Copy Markdown
Owner

@AdaWorldAPI AdaWorldAPI commented May 22, 2026

Summary

Docs-only PR. Adds .claude/knowledge/pr-x12-substrate-canon-resolutions.md (1281 lines) — companion to the merged canon (pr-x12-substrate-merged-canon.md, master commit bc9da4ad) that resolves the eighteen open items raised during review of PR #196.

The merged canon successfully synthesised sessions A and B but raised four load-bearing claims to abstraction without committing to concrete shapes:

  • LinearReduce<Basis> cited as the universal reduce kernel — no trait signature
  • Bits 14-15 of leaf header claimed by cognitive consumer — cross-load contention unresolved
  • "~1.5 KLoC generic + ~200 LoC per consumer" budget — unbacked by current LoC measurement
  • Plan G bench harness — no pass thresholds

Plus three pieces of session-A detail (DCT crossover, SSD-via-VNNI math, tropical-GEMM complexity) and three pieces of session-B detail (Plan G framing, topology-free claim, sub-1-bit/Gaussian math) that the merge underrepresented. Plus three commitments missing entirely (latency budget, streaming granularity, federated codebook distribution policy).

This PR commits all 18 items as resolutions R-1 through R-13 (the 5 affirmations are §3, the 13 substantive resolutions are §4-§7).

Coverage map — every previous-message point gets a resolution

§3 — 5 affirmations (preserved canon synthesis)

  • M:E-A (LinearReduce<Basis> unifies α / rANS / sum / softmax)
  • M:E-D (fifth crate category ndarray-codec)
  • M:E-G (Ctu<const N: usize> for block-size reconciliation)
  • M:E-I (trait isomorphism over code-folding)
  • M:E-F (A7-first with A4-design front-loaded, 1 day)

§4 — 4 resolutions of items the canon raised but did not commit

  • R-1Basis<T> + LinearReduce two-trait signatures, with rationale for splitting basis (data) from reduce (logic), no const-generic on dim(), and concrete impl list
  • R-2 — bit 15 universal "inter-tier reference", bit 14 consumer-typed via ConsumerProfile in frame header
  • R-3 — current 1838 LoC measured (ctu=771, mode=518, predict=511, mod=38); ~600 generic-code LoC; budget envelope per sub-card (A4≤200, A6≤150, A7≤300, A8≤200, A3-inter≤100) and per-consumer (≤200 each); audit rule per PR
  • R-4 — 4 threshold pairs (video=0.95× x265 at ±0.1 dB PSNR; splat=30× over PLY at ΔSSIM≤0.005; KV=4× at ≤0.5% RULER; gradient=8× at ≤0.5% loss delta); stretch targets recorded separately

§5 — 3 restorations from session A

  • R-5 — DCT-II vs GEMM crossover at ~64 blocks; per-architecture matrix (SPR / SKX / Zen 4 / Apple Silicon)
  • R-6 — SSD reformulation ||A||² - 2A·B + ||B||² for VNNI block-match ME; ~30-50× over hand-tuned SAD; lands as batched_ssd_search in ndarray::hpc::blas_level2
  • R-7 — CTU partition as tropical-GEMM; O(4^d) → O(d²) via matrix-relaxation Bellman-Ford; ~16× speedup; requires lance-graph::blasgraph after Plan H extraction

§6 — 3 restorations from session B

  • R-8 — Plan G framing: 45/46 debt items degrade perf/correctness; D-STACK-13 alone degrades confidence; that's why it goes Phase 0
  • R-9 — Codec layer is topology-FREE (stronger than topology-generic); PredictiveSignal::neighbours returns [Option<NeighbourRef>; 4] with NO spatial semantics at codec layer; consumer-side reinterpretation only; falsifiable via grep audit
  • R-10 — Sub-1-bit/Gaussian factor breakdown: stock 50 B → 4 bits/Gaussian (k-means 10× × rANS 3× × SH-cross 2×, near target); 1 bit stretch needs offline codebook + CABAC-style context + inter-frame coding; 0.5 bit needs Plan E2

§7 — 3 new commitments missing from both originals and merge

  • R-11 — 4K @ 60 fps budget = 125 ns/CTU; scalar reference at ~960 ns/CTU misses by 7.6×; SIMD-batched target ~210 ns/CTU; pins B:D-CODEC-8 / A:T-7 from P2 to P1
  • R-12 — Per-CTU flush as default (~12 KB buffer, ~80K flush/sec at 4K 60 fps); per-bucket override for Plan F; FlushUnit tag in frame header
  • R-13 — Plan F v1 commits Option A (per-shard codebook, zero cross-worker codebook-build comm); Option B (replicated) and C (hierarchical) deferred to Phase 3 exploration

Plus the integration pieces

  • §8 — Concrete trait signatures for all four plug-points: PredictiveSignal, Basis<T> + LinearReduce, CurveOrder<const N>, RdoMetric
  • §9 — Falsifiability matrix: 24 rows mapping every claim to (test, metric, pass condition)
  • §10 — Sequencing diagram with Plan G as named blocking gate before A7
  • §11 — End-state + exit conditions per claim + worst-case fallback (R-1 wrong under bench → recover in 3 days, not 6 weeks)
  • §12 — Compaction-preservation contract: 7 items must survive summarisation
  • §13 — Single load-bearing paragraph for cold-read cases

Trajectory

  • T+0 → T+2 weeks: Phase 0 (Plan G + H + I + A4-design)
  • T+2 → T+3.5 weeks: Plan A7 critical path
  • T+3.5 → T+4.5 weeks: Phase 1 parallelises (A4-impl + B + C + A6 + A8)
  • T+4.5 → T+10.5 weeks: Phase 2 consumer integrations (E, D, F)

Wall-clock total: ~10.5 weeks to demonstrable M:H-NEW-1 (single binary, 4 loads → 1 Lance column).

Test plan

  • Doc file created at canonical path under .claude/knowledge/
  • All 18 points from review covered as R-1..R-13 + 5 affirmations
  • Citation IDs (R-N) stable; canon IDs (M:E-, M:H-, etc.) preserved
  • No src/ changes; pure .claude/ addition
  • Reviewer: confirm R-1 trait pair (Basis<T> + LinearReduce) is the right factoring — alternative is single-trait with associated Basis type; this doc argues two-trait
  • Reviewer: confirm R-2 split (bit 15 universal, bit 14 consumer-typed) doesn't leak consumer semantics into A3-inter (universal bit 15 = inter-tier flag should suffice)
  • Reviewer: confirm R-4 thresholds are calibration starting points, not final bars — these will tune during Plan G build
  • Reviewer: confirm R-10 factor-3 (SH cross-LOD ≈2×) holds in practice on Mip-NeRF 360; if not, near-target ~4 bits/Gaussian becomes ~8 bits/Gaussian (still beats R-4 threshold of 30× over PLY = ~13 bits/Gaussian)
  • Reviewer: confirm R-13 Option A (per-shard codebook) doesn't break federated SGD convergence; the alternative (Option B, replicated codebook with epoch-aligned all-reduce) has 1.5-2× better compression but cross-worker comm cost

Generated by Claude Code

Summary by CodeRabbit

  • Documentation

    • Added and expanded many PR‑X12 canonical and perspective docs: substrate resolutions, lens pages, codec↔LLM weight mapping, multi‑arch dispatch, benchmarks, falsifiability matrix, rollout sequencing, and follow‑up checklist.
    • Clarified codebook lifecycle, compression/latency budgets, gating/phasing, topology/bit‑semantics, and testing/exit conditions. No API or behavioral changes.
  • Chores

    • Updated ignore patterns for local agent worktrees/settings.

Review Change Stack

Companion to pr-x12-substrate-merged-canon.md (master commit bc9da4a).
Additive, not a replacement. Resolves every open item raised in the
review of PR #196's merged canon.

Coverage (citation IDs R-1 through R-13):

§3 — 5 affirmations of canon synthesis (M:E-A, M:E-D, M:E-G, M:E-I, M:E-F).

§4 — 4 resolutions of items the canon raised in abstraction but did
not commit:
  R-1 — Basis<T> + LinearReduce two-trait signatures (Plan A4-design)
  R-2 — bit 15 universal / bit 14 consumer-typed via ConsumerProfile
  R-3 — ≤1500 LoC generic codec + ≤200 LoC per-consumer budget,
        with current LoC measurements (1838 total, ~600 generic-code)
  R-4 — 4 threshold pairs for Plan G (video / splat / KV / gradient),
        each with reference baseline + compression target + quality floor

§5 — 3 restorations from session A:
  R-5 — DCT-II vs GEMM crossover at ~64 blocks (per-architecture matrix)
  R-6 — SSD reformulation for VNNI block-match ME (~30-50× over SAD)
  R-7 — CTU partition as tropical-GEMM, O(4^d) → O(d²) (~16× speedup)

§6 — 3 restorations from session B:
  R-8 — Plan G framing: confidence-degradation gate (45/46 debt items
        degrade perf/correctness; D-STACK-13 alone degrades confidence)
  R-9 — Codec layer is topology-FREE, not topology-generic; PredictiveSignal
        contract pins neighbour slots as opaque 4-way categorical
  R-10 — Sub-1-bit/Gaussian math: 50 B/Gaussian → 4 bit/Gaussian near
         target (3 factors), 1 bit/Gaussian stretch (3 more factors)

§7 — 3 new commitments missing from both originals and from the merge:
  R-11 — 4K @ 60 fps = 125 ns/CTU budget; SIMD-batched encode promoted
         from P2 to P1 (~210 ns/CTU achievable, scalar misses by 7.6×)
  R-12 — Per-CTU flush default (~12 KB buffer); per-bucket override for
         Plan F; FlushUnit tag in frame header
  R-13 — Plan F v1 commits per-shard codebook (Option A); Option B/C
         in Phase 3 exploration

§8 — Concrete trait signatures for all four plug-points:
  PredictiveSignal (consumer), Basis<T> + LinearReduce (basis + reduce),
  CurveOrder<const N> (curve), RdoMetric (A6 RDO).

§9 — Falsifiability matrix: every claim from canon + this doc gets a
test, a metric, and a pass condition. 24 rows, each is an audit gate.

§10 — Sequencing diagram with Plan G as named blocking gate before A7.

§11 — End-state recap + exit conditions per claim. Worst-case fallback:
if R-1's LinearReduce shape wrong under bench pressure, recover in
Phase 0 (3 days), not after A7 ships (6 weeks).

§12 — Compaction-preservation contract: 7 items must survive summarisation.

§13 — Single load-bearing paragraph for cold-read cases.

Total: 1281 lines. Read order updated in §0:
1. pr-x12-codec-x265-design.md      — mechanical spec
2. pr-x12-substrate-merged-canon.md — architectural fusion (THE canon)
3. THIS DOC                          — resolutions of opens in canon
4. session A original                — archeology
5. session B original                — archeology

No src/ changes. Pure .claude/ addition.
@coderabbitai
Copy link
Copy Markdown
Contributor

coderabbitai Bot commented May 22, 2026

No actionable comments were generated in the recent review. 🎉

ℹ️ Recent review info
⚙️ Run configuration

Configuration used: defaults

Review profile: CHILL

Plan: Pro Plus

Run ID: 0cd57fe2-2364-4316-9b2c-4c4841a91331

📥 Commits

Reviewing files that changed from the base of the PR and between f1d68e6 and 21b61eb.

📒 Files selected for processing (5)
  • .claude/knowledge/pr-x12-anti-neural-lookup-inversion.md
  • .claude/knowledge/pr-x12-cam-pq-sigker-dn-tree-substrate-bindings.md
  • .claude/knowledge/pr-x12-substrate-canon-resolutions.md
  • .claude/knowledge/pr-x12-substrate-merged-canon.md
  • .claude/knowledge/pr-x12-x266-3dgs-spacetime-upscaling.md
✅ Files skipped from review due to trivial changes (5)
  • .claude/knowledge/pr-x12-substrate-merged-canon.md
  • .claude/knowledge/pr-x12-x266-3dgs-spacetime-upscaling.md
  • .claude/knowledge/pr-x12-cam-pq-sigker-dn-tree-substrate-bindings.md
  • .claude/knowledge/pr-x12-substrate-canon-resolutions.md
  • .claude/knowledge/pr-x12-anti-neural-lookup-inversion.md

📝 Walkthrough

Walkthrough

Adds PR‑X12 documentation: a canonical resolutions document (R-1..R-13), a delta extract, multiple perspective/substrate lens docs (anti‑neural, bgz/jc, cam_pq/sigker/dn_tree, GGUF LLM weights, WoA multi‑arch, x265 BLAS/GEMM, x266 3DGS), small .gitignore additions, and cross-reference/bench/falsifiability material.

Changes

Canon Resolutions and Perspective Lenses

Layer / File(s) Summary
Document overview and end-state vision
.claude/knowledge/pr-x12-substrate-canon-resolutions.md
Establishes reading conventions, end-state architecture, delivery trajectory (Plan G gate → Plan A7 → Phase 2), and scope of remaining resolutions.
Trait signatures and codec bit semantics
.claude/knowledge/pr-x12-substrate-canon-resolutions.md, .claude/knowledge/pr-x12-canon-resolutions-delta.md
R-1 and R-2 define Basis<T>/LinearReduce and related plug-point contracts (PredictiveSignal, CurveOrder<const N>, RdoMetric), and pin header bit semantics (bit 15 universal; bit 14 consumer-typed).
LoC budgeting, Plan G thresholds, and falsifiability matrix
.claude/knowledge/pr-x12-substrate-canon-resolutions.md, .claude/knowledge/pr-x12-canon-resolutions-delta.md
R-3 LoC envelope and CI audit rule, R-4 Plan G per-load thresholds, and the falsifiability matrix linking claims to tests/metrics/pass conditions.
Transform dispatch, SSD→GEMM, and topology-free semantics
.claude/knowledge/pr-x12-substrate-canon-resolutions.md
R-5..R-10 restore transform dispatch crossover, SSD reformulation for motion estimation (VNNI/GEMM), tropical-GEMM partitioning, Plan G gate semantics, topology-free neighbor contract, and sub‑1‑bit/Gaussian breakdown.
Encoder latency, streaming buffer, and codebook distribution
.claude/knowledge/pr-x12-substrate-canon-resolutions.md
R-11..R-13 set per‑CTU SIMD-batched encoder latency budgets, FlushUnit streaming flush granularity defaults, and Plan F v1 basin codebook distribution policy.
Canon delta extract
.claude/knowledge/pr-x12-canon-resolutions-delta.md
Standalone delta emphasizing committed traits, budgets (LoC, Plan G, 4K@60fps per‑CTU), DCT-II crossover table, type invariants, phasing/gates, falsifiability, and compaction-preservation contract.
Perspective lenses & substrate mappings
.claude/knowledge/pr-x12-*.md
New/updated lens docs (anti-neural, bgz-jc, cam_pq/sigker/dn_tree, gguf-llm-weights, woa-multiarch, x265-blasgraph, x266-3dgs) that ground the canon in implementations, map modes to crates, enumerate integration gaps and bench lanes, and pin resolution IDs.
Merged-canon index updates
.claude/knowledge/pr-x12-substrate-merged-canon.md
Post-merge index formalizing prior epiphanies and tying them to R-1, R-2, R-3, and R-10 (trait split, header bits, LoC fence, sub-1-bit commitment).

🎯 2 (Simple) | ⏱️ ~10 minutes

  • AdaWorldAPI/ndarray#195: Overlaps on reserved 16-bit header layout and bit-14/bit-15 semantics (R-2).
  • AdaWorldAPI/ndarray#196: Related canon/contracts updates aligning trait abstractions (PredictiveSignal, Basis<T>, LinearReduce) with resolution IDs.

🐰 A document of resolution fine,
Thirteen threads in perfect line—
Trait shapes dance with bits so bright,
Gates and budgets locked just right.

🚥 Pre-merge checks | ✅ 5
✅ Passed checks (5 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check ✅ Passed The PR title clearly and specifically identifies the main change: adding PR-X12 substrate canon resolutions documentation that resolves 18 open items.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.
Linked Issues check ✅ Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check ✅ Passed Check skipped because no linked issues were found for this pull request.

✏️ Tip: You can configure your own custom pre-merge checks in the settings.

✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch claude/pr-x12-canon-resolutions-MAOO0

Comment @coderabbitai help to get the list of available commands and usage tips.

Copy link
Copy Markdown
Contributor

@coderabbitai coderabbitai Bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 1

🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

Inline comments:
In @.claude/knowledge/pr-x12-substrate-canon-resolutions.md:
- Around line 766-771: The doc's CTU math is inconsistent: the value "132,710
CTUs/frame" and references like "4096 cells" and R-12's per-CTU flush numbers
don't match a 64×64 CTU (3840×2160 / 64 = ~2,040 CTUs) but instead match 8×8
blocks (~129,600). Fix by choosing one canonical CTU size and updating all
dependent numbers and text: either change CTU size to 8×8 everywhere (replace
"64×64 CTU" and "4096 cells" references and recompute per-block latency) or keep
64×64 CTU and replace "132,710" with ~2,040 and recompute the per-CTU budget,
"127 ms/frame" and the R-12 flush calculations accordingly; ensure all
occurrences (mentions of "132,710", "4096 cells", "64×64 CTU", and R-12 latency
numbers) are updated to the consistent set.
🪄 Autofix (Beta)

Fix all unresolved CodeRabbit comments on this PR:

  • Push a commit to this branch (recommended)
  • Create a new PR with the fixes

ℹ️ Review info
⚙️ Run configuration

Configuration used: defaults

Review profile: CHILL

Plan: Pro Plus

Run ID: f05af36b-ae65-491d-93c5-7c134fb66ed8

📥 Commits

Reviewing files that changed from the base of the PR and between bc9da4a and c92fd16.

📒 Files selected for processing (1)
  • .claude/knowledge/pr-x12-substrate-canon-resolutions.md

Comment thread .claude/knowledge/pr-x12-substrate-canon-resolutions.md Outdated
AdaWorldAPI pushed a commit that referenced this pull request May 22, 2026
…nnotations

Companion content to PR #197's canon-resolutions doc. Adds:

Perspective lens docs (4 reframings + 2 extensions):
- pr-x12-x265-blasgraph-gemm.md           every HEVC inner loop as a GEMM
- pr-x12-x266-3dgs-spacetime-upscaling.md  Basis<T> + EWA splat → free res/fps upscaling
- pr-x12-woa-multiarch-orchestration.md    per-arch dispatch contract for consumers
- pr-x12-anti-neural-lookup-inversion.md   lookup tables as frozen 1-layer NNs
- pr-x12-gguf-llm-weights-encoding.md      fifth load: LLM weight tensors

Substrate-binding docs (PR-X12 ↔ existing lance-graph/ndarray crates):
- pr-x12-bgz-jc-substrate-synergies.md     bgz17/bgz-tensor/bgz-hhtl-d/jc already
                                            implement most of PR-X12; jd-nd + Cronbach
                                            research crate are the named gaps
- pr-x12-cam-pq-sigker-dn-tree-substrate-bindings.md  cam_pq trains all bgz palettes;
                                            sigker (arXiv:2006.14794, Hambly-Lyons 2010,
                                            CST 2021) is the formal-correctness bedrock
                                            for jc Pillar 11; dn_tree + merkle_tree are
                                            the R-13 online-update + integrity substrate;
                                            7 wiring gaps (G-1..G-7) catalogued

Plus:
- pr-x12-canon-resolutions-delta.md  smaller derivative of PR #197's resolutions doc
                                      for fresh-agent quick-read

Inline R-N annotations into the three prior canon docs (merged-canon, mapping,
synergies) pointing each load-bearing claim to its R-N formalisation.

Total: ~4500 lines added across 8 new docs, 3 docs lightly annotated.
…nnotations

Companion content to PR #197's canon-resolutions doc. Adds:

Perspective lens docs (4 reframings + 2 extensions):
- pr-x12-x265-blasgraph-gemm.md           every HEVC inner loop as a GEMM
- pr-x12-x266-3dgs-spacetime-upscaling.md  Basis<T> + EWA splat → free res/fps upscaling
- pr-x12-woa-multiarch-orchestration.md    per-arch dispatch contract for consumers
- pr-x12-anti-neural-lookup-inversion.md   lookup tables as frozen 1-layer NNs
- pr-x12-gguf-llm-weights-encoding.md      fifth load: LLM weight tensors

Substrate-binding docs (PR-X12 ↔ existing lance-graph/ndarray crates):
- pr-x12-bgz-jc-substrate-synergies.md     bgz17/bgz-tensor/bgz-hhtl-d/jc already
                                            implement most of PR-X12; jd-nd + Cronbach
                                            research crate are the named gaps
- pr-x12-cam-pq-sigker-dn-tree-substrate-bindings.md  cam_pq trains all bgz palettes;
                                            sigker (arXiv:2006.14794, Hambly-Lyons 2010,
                                            CST 2021) is the formal-correctness bedrock
                                            for jc Pillar 11; dn_tree + merkle_tree are
                                            the R-13 online-update + integrity substrate;
                                            7 wiring gaps (G-1..G-7) catalogued

Plus:
- pr-x12-canon-resolutions-delta.md  smaller derivative of PR #197's resolutions doc
                                      for fresh-agent quick-read

Inline R-N annotations into the three prior canon docs (merged-canon, mapping,
synergies) pointing each load-bearing claim to its R-N formalisation.

Total: ~4500 lines added across 8 new docs, 3 docs lightly annotated.
Copy link
Copy Markdown
Contributor

@coderabbitai coderabbitai Bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 9

🧹 Nitpick comments (11)
.claude/knowledge/pr-x12-gguf-llm-weights-encoding.md (3)

131-134: ⚡ Quick win

Clarify Escape mode semantics for domain-agnostic codec.

The document states Escape is a "lossy-fallback path" but then requires it to be lossless for LLM weights. This creates a domain-specific semantic split that appears to conflict with R-3's commitment to keeping the codec body generic. While F-4 (line 330) acknowledges this tension, the resolution there (bypass channel in framing layer) should be referenced here to avoid confusion.

Consider adding a forward reference: "For LLM weights, Escape must preserve full precision (see §10 F-4 for wire-format implications)."

🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In @.claude/knowledge/pr-x12-gguf-llm-weights-encoding.md around lines 131 -
134, Clarify the apparent semantic conflict by adding a forward-reference note
after the sentence about Escape + raw f16: state that for LLM weights Escape
must be lossless and point readers to the framing-layer resolution (e.g.,
reference F-4 / §10) that handles the domain-specific bypass so the codec body
remains domain-agnostic; mention Escape, LLM.int8(), SmoothQuant and R-3 in that
brief note so readers can locate the relevant discussion.

269-269: 💤 Low value

Minor overstatement: phone-class viability claim.

The claim that "A 7B model at PR-X12 is genuinely runnable on a phone-class device" focuses only on weight storage and decode scratch memory. In practice, KV cache (1-2 GB) and activation memory during forward pass are significant additional consumers. While the storage reduction is valuable, the runnable-on-phone claim may oversell the improvement.

Consider softening to: "...brings a 7B model significantly closer to phone-class viability by reducing the weight memory footprint."

🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In @.claude/knowledge/pr-x12-gguf-llm-weights-encoding.md at line 269, The
sentence "A 7B model at PR-X12 is genuinely runnable on a phone-class device"
overstates the claim by ignoring KV cache and activation memory; replace or
soften that sentence (the quoted phrase) to something like "...brings a 7B model
significantly closer to phone-class viability by reducing the weight memory
footprint" and ensure the revised wording appears where the **Memory savings:**
paragraph refers to PR-X12 so the document reflects the caveat about additional
runtime memory (KV cache and activations).

336-351: ⚡ Quick win

Clarify timing of discriminant reservation request.

Section 11 prescribes that PR-X12 should "Reserve an EncodingDomain::LLMWeights discriminant" (line 348), but the document's status (line 398) marks the LLM-weight work as "post-PR-X12 scope (2-3 months after merge)."

If the discriminant reservation should happen in the current PR-X12, state this explicitly. If it's deferred to the future LLM-weight implementation PR, rephrase item 5 as "The future LLM-weight implementation will require reserving..."

🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In @.claude/knowledge/pr-x12-gguf-llm-weights-encoding.md around lines 336 -
351, Item 5 is ambiguous about when to reserve EncodingDomain::LLMWeights;
update the text to explicitly state timing: either (A) if the discriminant must
be reserved in the current PR-X12, change item 5 to read that PR-X12 will
reserve EncodingDomain::LLMWeights in the codec metadata header now (so decoders
can be forward-compatible), or (B) if reservation is deferred, rephrase item 5
to say "The future LLM-weight implementation PR will reserve
EncodingDomain::LLMWeights" and adjust the status section to match that deferred
timeline; be sure to reference EncodingDomain::LLMWeights and the PR-X12
scope/status so readers see the consistent plan.
.claude/knowledge/pr-x12-woa-multiarch-orchestration.md (1)

136-143: ⚡ Quick win

Per-arch constant pattern may not compile as shown.

The code example uses const DCT_BATCH_CROSSOVER: usize = match Arch::CURRENT to select crossover values per architecture. This pattern requires Arch::CURRENT to be a const-evaluable discriminant, which is non-trivial to implement in Rust without macros.

The more idiomatic Rust approach for per-arch constants is cfg-based selection:

#[cfg(all(target_arch = "x86_64", target_feature = "amx"))]
const DCT_BATCH_CROSSOVER: usize = 64;

#[cfg(all(target_arch = "x86_64", not(target_feature = "amx")))]
const DCT_BATCH_CROSSOVER: usize = 32;

#[cfg(target_arch = "aarch64")]
const DCT_BATCH_CROSSOVER: usize = 128;

If the match Arch::CURRENT pattern is intentional and represents a future abstraction, add a comment explaining how Arch::CURRENT achieves const evaluation.

🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In @.claude/knowledge/pr-x12-woa-multiarch-orchestration.md around lines 136 -
143, The per-architecture constant DCT_BATCH_CROSSOVER cannot reliably be
defined by evaluating match Arch::CURRENT at compile-time unless Arch::CURRENT
is a const-evaluable discriminant; replace the match-based constant with
cfg-gated constants (e.g., separate #[cfg(...)] const DCT_BATCH_CROSSOVER
declarations for each target/feature) or, if you intentionally keep the
Arch::CURRENT approach, add a clear comment on Arch::CURRENT and link to the
const-evaluation mechanism (or macro) that guarantees it is compute-time
constant so the compiler will accept the const binding.
.claude/knowledge/pr-x12-anti-neural-lookup-inversion.md (3)

295-307: ⚡ Quick win

Ensure enhancement-layer bit reservation coordinates with R-2 header semantics.

The prescription to "reserve a bitstream flag for the enhancement-layer hook" (line 304) is sound, but given the bit 14 conflict noted elsewhere (lines 237-238 vs R-2), ensure this bit reservation is explicitly tracked and doesn't conflict with the ConsumerProfile semantics established in R-2.

🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In @.claude/knowledge/pr-x12-anti-neural-lookup-inversion.md around lines 295 -
307, Ensure the reserved enhancement-layer bit in the 16-bit header explicitly
agrees with R-2's ConsumerProfile field: pick a specific unused bit (avoid bit
14 if R-2 or other docs already claim it), add a short normative sentence in the
codec spec naming the bit (e.g., "enhancement_layer_flag") and its bit position,
and update the ConsumerProfile / header semantic paragraph to reference that
symbol so the reservation is tracked and cannot conflict with R-2. Also add a
cross-reference note in the same doc pointing to R-2 so reviewers can verify the
chosen bit is free.

99-99: 💤 Low value

Consider more precise mathematical phrasing.

The phrase "asymptotically equivalent" typically refers to limiting behavior (n→∞), but both the codebook and MLP have fixed dimensions. Consider "information-theoretically equivalent" or "achieve equivalent compression within a log(K) overhead factor" for precision.

🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In @.claude/knowledge/pr-x12-anti-neural-lookup-inversion.md at line 99, Update
the sentence about equivalence to use precise information-theoretic phrasing:
replace "asymptotically equivalent" with wording such as
"information-theoretically equivalent" or "achieve equivalent compression up to
a log(K) overhead" and explicitly mention the symbols R, H(cells), and K=4096
(e.g., "R ≥ H(cells); both the codebook and the neural encoder (MLP) can achieve
H(cells) up to a log(K) overhead with K=4096") so the claim is mathematically
precise and unambiguous.

101-131: ⚡ Quick win

Clarify the conditional scope of the GNN-to-tropical-GEMM equivalence.

The claim that "the GNN forward pass on the RDO graph is a tropical-GEMM iteration" (line 117) is true only under specific conditions (max aggregation + identity-on-positive activation). Most production GNNs use sum aggregation with nonlinear activations (ReLU, GeLU), which don't map directly to tropical semiring operations.

Consider hedging: "For GNNs with max-aggregation and identity-positive activation, the forward pass is structurally equivalent to tropical-GEMM. Other GNN variants may require approximation."

🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In @.claude/knowledge/pr-x12-anti-neural-lookup-inversion.md around lines 101 -
131, Clarify that the equivalence to tropical-GEMM applies only under the
specific aggregation/activation choices: update the paragraph around the "GNN
forward pass on the RDO graph" and the sentence claiming "is a tropical-GEMM
iteration" to state that this holds when aggregate == max (or max-pooling) and σ
is identity-on-positive (no nonlinearity), and add a hedge sentence such as:
"For GNNs using sum aggregation or nonlinear activations (ReLU/GeLU/etc.) the
mapping does not hold exactly and may require approximation." Reference the
terms "aggregate", "max", "σ", "GNN forward pass", and "tropical-GEMM" so the
change is applied to that exact claim.
.claude/knowledge/pr-x12-bgz-jc-substrate-synergies.md (2)

274-278: 💤 Low value

Clarify gap numbering convention across substrate docs.

This doc uses G-8 and G-9 for jd-nd and Cronbach/ICC gaps (lines 310-312), while the companion doc pr-x12-cam-pq-sigker-dn-tree-substrate-bindings.md uses G-1 through G-7 for different gaps. The numbering should either be unified across docs or clearly scoped per-doc.

Recommendation: If gaps are meant to be globally numbered across the PR-X12 substrate doc set, renumber to avoid collision. If per-doc, add a clarifying note like "Gaps G-1..G-7 are enumerated in the cam_pq/sigker/dn_tree companion doc."

Also applies to: 310-312

🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In @.claude/knowledge/pr-x12-bgz-jc-substrate-synergies.md around lines 274 -
278, The gap numbering in this doc uses G-8 and G-9 for `jd-nd` and
Cronbach/ICC, which collides with the companion doc
`pr-x12-cam-pq-sigker-dn-tree-substrate-bindings.md` that enumerates G-1..G-7;
either unify the global numbering across PR-X12 docs or mark numbering as
per-doc by adding a clarifying sentence (e.g., "Gaps G-1..G-7 are enumerated in
the cam_pq/sigker/dn_tree companion doc") and renumber or prefix these gaps
accordingly (update the `G-8`/`G-9` references and any mentions of `jd-nd`,
Cronbach, ICC to match the chosen scheme).

376-421: ⚡ Quick win

Track proposed documentation updates.

Section 8 proposes specific updates to four other PR-X12 docs:

  • pr-x12-canon-resolutions-delta.md (R-7 path correction, R-13 expansion, optional R-14)
  • pr-x12-gguf-llm-weights-encoding.md (§6 numbers, §7 highheelbgz ref, §9 bench target)
  • pr-x12-anti-neural-lookup-inversion.md (§3.1 empirical anchor)
  • pr-x12-substrate-merged-canon.md (M:E-D dep target, M:H-1 fifth load)

These are actionable follow-up edits with specific section targets. Consider opening a tracking issue to ensure these updates are applied consistently.

Would you like me to generate a checklist or tracking issue template for these proposed documentation updates?

🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In @.claude/knowledge/pr-x12-bgz-jc-substrate-synergies.md around lines 376 -
421, Create a tracking-issue/checklist template that lists the four target docs
(pr-x12-canon-resolutions-delta.md, pr-x12-gguf-llm-weights-encoding.md,
pr-x12-anti-neural-lookup-inversion.md, pr-x12-substrate-merged-canon.md) and
enumerates the exact edits: R-7 path correction to
lance-graph::bgz17::scalar_sparse::tropical_spmv, R-13 expansion referencing
bgz-hhtl-d shared-palette and PretrainedStatic, add optional R-14 pointing to
lance-graph/crates/jc proof, update §6/§7/§9 in pr-x12-gguf to cite bgz-hhtl-d
measured 343:1 and SpiralAddress (highheelbgz), swap benchmark to
Qwen3-TTS-1.7B, anchor §3.1 in pr-x12-anti-neural-lookup-inversion to
bgz-tensor’s AttentionSemiring+ComposeTable empirical numbers, and in
pr-x12-substrate-merged-canon fix M:E-D dep to lance-graph::bgz17 and add LLM
weights as the fifth load noting bgz-tensor 640× compression for M:H-1; include
acceptance criteria, owner, ETA, and a step to update citations to
lance-graph/crates/bgz17/KNOWLEDGE.md and to prefer
lance-graph::bgz17::Palette::nearest_index where applicable.
.claude/knowledge/pr-x12-cam-pq-sigker-dn-tree-substrate-bindings.md (1)

293-312: 🏗️ Heavy lift

Validate gap cost estimates and blocking relationships.

The gap table provides specific cost estimates (days/weeks) and blocking relationships. While subjective, these should be internally consistent:

  • G-4 blocks R-14 (1-2 weeks)
  • G-6 blocks R-13 SharedClusterWide (2-3 weeks)
  • G-7 blocks R-13 integrity (1 week)

Total estimate is 8-12 weeks for G-1..G-7, plus 3-5 weeks for G-8..G-9 = 11-17 weeks. This matches line 313 but is a substantial commitment. Ensure stakeholders are aligned on these estimates.

Consider adding milestone dependencies or phasing to the gap table if certain gaps must be addressed before others (e.g., G-4 before R-14, G-6 before G-7).

🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In @.claude/knowledge/pr-x12-cam-pq-sigker-dn-tree-substrate-bindings.md around
lines 293 - 312, Reconcile and validate the gap cost totals and blocking
relationships by (1) confirming the arithmetic that G-1..G-7 = 8–12 weeks and
G-8..G-9 = 3–5 weeks to ensure the document total 11–17 weeks is correct, (2)
explicitly documenting the blocking edges for G-4→R-14, G-6→R-13
(SharedClusterWide), and G-7→R-13 (integrity) in the table row notes, and (3)
adding a short milestone/phasing column or dependency list so reviewers can see
required ordering (e.g., mark G-4 as prerequisite for R-14 and schedule G-6
before G-7 or vice versa as appropriate) and a line invoking stakeholder
sign-off to confirm estimates and schedule.
.claude/knowledge/pr-x12-x266-3dgs-spacetime-upscaling.md (1)

262-269: ⚡ Quick win

Clarify "landed" terminology in status table.

The table claims several items (R-2, R-3 audit, R-13) are "landed," but this is a docs-only PR that adds the canon resolutions document itself. No src/ changes exist. "Landed" typically implies merged code, but these are documentation commitments.

Consider rephrasing to "committed in canon" or "defined in R-N" to avoid confusion about implementation status.

📝 Proposed terminology clarification
 | Requirement | Source | Status |
 |---|---|---|
-| `Basis<T>` trait with parametric `apply` | R-1, M:E-A | landed in concept; implementation in Plan A4 |
-| EWA splat rasterizer as `Basis<f16>` impl | Plan E | scheduled |
-| Codec body decoupled from specific basis | M:H-NEW-2 LoC envelope | enforced via R-3 audit |
-| Header byte stable across basis swaps | R-2, M:E-J bits 0-1 | landed |
-| Plan G video lane validates per-arch latency | R-4, R-11 | scheduled |
-| Federated codebook policy for scene anchors | R-13 | landed |
+| `Basis<T>` trait with parametric `apply` | R-1, M:E-A | committed in canon; impl in Plan A4 |
+| EWA splat rasterizer as `Basis<f16>` impl | Plan E | scheduled |
+| Codec body decoupled from specific basis | M:H-NEW-2 LoC envelope | committed via R-3 audit rule |
+| Header byte stable across basis swaps | R-2, M:E-J bits 0-1 | committed in canon |
+| Plan G video lane validates per-arch latency | R-4, R-11 | scheduled |
+| Federated codebook policy for scene anchors | R-13 | committed in canon |
🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In @.claude/knowledge/pr-x12-x266-3dgs-spacetime-upscaling.md around lines 262 -
269, Update the status table entries that currently read "landed" (notably the
rows referencing R-2, R-3 audit, and R-13) to language that clearly denotes
documentation-only commitments—e.g. replace "landed" with "committed in canon"
or "defined in R-N" (or similar phrasing) so the table no longer implies
merged/implemented source changes; ensure the same wording is applied
consistently across the "Requirement | Source | Status" table.
🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

Inline comments:
In @.claude/knowledge/pr-x12-anti-neural-lookup-inversion.md:
- Around line 237-238: The statement claiming the enhancement-layer flag uses
"bit 14" conflicts with R-2/Plan A8; update the PR-X12 text to either remove the
specific "bit 14" claim or replace it with the correct R-2-designated reserved
field/bit, and ensure the text references R-2/Plan A8’s handling of bits 14–15
(leaf_size with ConsumerProfile demux) and the enhancement-flag location
consistently; look for occurrences of "M:E-J bit 14", "leaf_size",
"ConsumerProfile", and "enhancement layer available" in the PR-X12 doc and
adjust the sentence to cite the correct R-2 field or omit the bit number.

In @.claude/knowledge/pr-x12-bgz-jc-substrate-synergies.md:
- Line 12: The document's numeric compression claims for bgz-hhtl-d (e.g.,
"343:1", "313:1", "589:1", "110× vs GGUF Q4_K_M") lack in-repo evidence; either
add exact links to the encoder+decoder benchmark harness and raw result outputs
(include the harness name, the metric calculation code or script, and example
output for Qwen3-TTS-1.7B) or change the wording to a non-assertive statement
like "reported in doc" until evidence is committed. Update the mentions in
.claude/knowledge/pr-x12-bgz-jc-substrate-synergies.md and any other knowledge
docs that repeat these ratios, and if adding evidence, create the missing
artifact (e.g., BGZ_HHTL_D.md or a benchmark directory with the encoder/decoder,
the compression-ratio computation, and sample outputs) and reference the jc
crate proof harness and the outstanding jd-nd/Cronbach-ICC research crates where
appropriate.

In @.claude/knowledge/pr-x12-cam-pq-sigker-dn-tree-substrate-bindings.md:
- Around line 321-336: The PR references new resolution IDs R-14 and R-15 but
the canonical summary document does not contain those headings, causing
broken/unresolved references; update pr-x12-canon-resolutions-delta.md by adding
canonical entries for R-14 (formal-correctness commitment referencing Pillar 11
/ lance-graph/crates/jc and sigker) and R-15 (SignatureBasis:
sigker::SignatureBasis<DEPTH>: Basis<f32>) under the same numbering scheme used
for R-7 and R-13, or alternatively change the PR text to retarget those mentions
to existing IDs; ensure each new entry includes the short title and the
referenced symbols (Pillar 11, lance-graph/crates/jc, sigker::SignatureBasis) so
downstream links resolve.
- Around line 371-377: The markdown lists incorrect absolute source paths and
non-existent repo references; update
`.claude/knowledge/pr-x12-cam-pq-sigker-dn-tree-substrate-bindings.md` (section
showing file list) to use the repository-relative paths for the local files
(replace `/home/user/ndarray/src/hpc/cam_pq.rs`,
`/home/user/ndarray/src/hpc/dn_tree.rs`,
`/home/user/ndarray/src/hpc/merkle_tree.rs` with `src/hpc/cam_pq.rs`,
`src/hpc/dn_tree.rs`, `src/hpc/merkle_tree.rs`) and remove or mark as external
any absolute `/home/user/lance-graph/...` entries (e.g.,
`lance-graph/crates/sigker/`, `lance-graph/crates/jc/src/hambly_lyons.rs`) so
the document only references paths that actually exist in this repository or
clearly notes they are external dependencies.
- Around line 136-138: Update the Hambly–Lyons table row to include the full
arXiv identifier: edit the row containing "Hambly-Lyons, 'Uniqueness for the
signature of a path of bounded variation' | 2010" and append
"arXiv:math/0507536" (e.g., after the year or inside the bold theorem column) so
the citation reads with the complete arXiv ID.
- Around line 31-44: Update the bindings doc to match the real Rust signatures:
replace the CamFingerprint struct with the type alias CamFingerprint = [u8;
NUM_SUBSPACES] and change kmeans to accept and return nested vectors using the
signature pub fn kmeans(data: &[Vec<f32>], k: usize, dim: usize, iterations:
usize) -> Vec<Vec<f32>> (instead of &[f32] -> Vec<f32>); for the SigKer section
remove or correct the nonexistent exported types/functions and instead reference
the actual symbols exported in this repo
(ndarray::hpc::pillar::signature::signature_d2_deg3, sigker_hl, prove_pillar_11)
or point readers to the correct external crate/repo if those functions live
elsewhere.

In @.claude/knowledge/pr-x12-substrate-merged-canon.md:
- Around line 281-282: The merged-canon note incorrectly documents bits 14–15 as
a 2-bit leaf_size field; update the text so bits 14–15 match the canonical
R-2/R-8 semantics: make bit15 the universal “has inter-tier reference” flag and
make bit14 a consumer-typed/multiplexed bit (value interpreted via
ConsumerProfile) rather than part of leaf_size, or instead adjust R-2 wording to
explicitly declare leaf_size is not an on-wire 2-bit field; ensure the note
references bits 14–15, leaf_size, ConsumerProfile and the “has inter-tier
reference” semantics so both documents are consistent.

In @.claude/knowledge/pr-x12-x266-3dgs-spacetime-upscaling.md:
- Around line 217-218: The bandwidth formula under the "HEVC: re-encode at
4K/60fps target" line is wrong—replace the incorrect "4 × 4 × 6.25 = 100 MB"
with the correct scaling for resolution × framerate (4× pixels × 2× frames =
8×), i.e. "8 × 6.25 = 50 MB" or explicitly "4 × 2 × 6.25 = 50 MB"; if you
intended 100 MB instead, update the base bitrate/assumptions (the "6.25" factor)
and adjust the explanatory text so the numbers are consistent.
- Around line 163-167: The PR-X12 header docs are ambiguous about the on-wire
semantics of R-2 bits 14–15: the snippet currently defines bits 14-15 as
leaf_size while other canon text assigns them inter-tier/ConsumerProfile
meanings; clarify which interpretation is authoritative on-wire and how the
other interpretation is derived (if at all). Update the x266 section for the
"PR-X12 header (16 bits, R-2)" to explicitly state that bits 14–15 encode
leaf_size on-wire (or alternatively that bit15=UNIVERSAL inter-tier and
bit14=CONSUMER via ConsumerProfile if that is correct), then describe any
mapping/interpretation rules that derive ConsumerProfile/inter-tier semantics
from leaf_size (or note that those are purely causal-tier interpretations and
not transmitted). Reference the symbols "bits 14-15", "leaf_size", "R-2",
"ConsumerProfile", and "inter-tier" so readers can locate and reconcile the
differing canon statements.

---

Nitpick comments:
In @.claude/knowledge/pr-x12-anti-neural-lookup-inversion.md:
- Around line 295-307: Ensure the reserved enhancement-layer bit in the 16-bit
header explicitly agrees with R-2's ConsumerProfile field: pick a specific
unused bit (avoid bit 14 if R-2 or other docs already claim it), add a short
normative sentence in the codec spec naming the bit (e.g.,
"enhancement_layer_flag") and its bit position, and update the ConsumerProfile /
header semantic paragraph to reference that symbol so the reservation is tracked
and cannot conflict with R-2. Also add a cross-reference note in the same doc
pointing to R-2 so reviewers can verify the chosen bit is free.
- Line 99: Update the sentence about equivalence to use precise
information-theoretic phrasing: replace "asymptotically equivalent" with wording
such as "information-theoretically equivalent" or "achieve equivalent
compression up to a log(K) overhead" and explicitly mention the symbols R,
H(cells), and K=4096 (e.g., "R ≥ H(cells); both the codebook and the neural
encoder (MLP) can achieve H(cells) up to a log(K) overhead with K=4096") so the
claim is mathematically precise and unambiguous.
- Around line 101-131: Clarify that the equivalence to tropical-GEMM applies
only under the specific aggregation/activation choices: update the paragraph
around the "GNN forward pass on the RDO graph" and the sentence claiming "is a
tropical-GEMM iteration" to state that this holds when aggregate == max (or
max-pooling) and σ is identity-on-positive (no nonlinearity), and add a hedge
sentence such as: "For GNNs using sum aggregation or nonlinear activations
(ReLU/GeLU/etc.) the mapping does not hold exactly and may require
approximation." Reference the terms "aggregate", "max", "σ", "GNN forward pass",
and "tropical-GEMM" so the change is applied to that exact claim.

In @.claude/knowledge/pr-x12-bgz-jc-substrate-synergies.md:
- Around line 274-278: The gap numbering in this doc uses G-8 and G-9 for
`jd-nd` and Cronbach/ICC, which collides with the companion doc
`pr-x12-cam-pq-sigker-dn-tree-substrate-bindings.md` that enumerates G-1..G-7;
either unify the global numbering across PR-X12 docs or mark numbering as
per-doc by adding a clarifying sentence (e.g., "Gaps G-1..G-7 are enumerated in
the cam_pq/sigker/dn_tree companion doc") and renumber or prefix these gaps
accordingly (update the `G-8`/`G-9` references and any mentions of `jd-nd`,
Cronbach, ICC to match the chosen scheme).
- Around line 376-421: Create a tracking-issue/checklist template that lists the
four target docs (pr-x12-canon-resolutions-delta.md,
pr-x12-gguf-llm-weights-encoding.md, pr-x12-anti-neural-lookup-inversion.md,
pr-x12-substrate-merged-canon.md) and enumerates the exact edits: R-7 path
correction to lance-graph::bgz17::scalar_sparse::tropical_spmv, R-13 expansion
referencing bgz-hhtl-d shared-palette and PretrainedStatic, add optional R-14
pointing to lance-graph/crates/jc proof, update §6/§7/§9 in pr-x12-gguf to cite
bgz-hhtl-d measured 343:1 and SpiralAddress (highheelbgz), swap benchmark to
Qwen3-TTS-1.7B, anchor §3.1 in pr-x12-anti-neural-lookup-inversion to
bgz-tensor’s AttentionSemiring+ComposeTable empirical numbers, and in
pr-x12-substrate-merged-canon fix M:E-D dep to lance-graph::bgz17 and add LLM
weights as the fifth load noting bgz-tensor 640× compression for M:H-1; include
acceptance criteria, owner, ETA, and a step to update citations to
lance-graph/crates/bgz17/KNOWLEDGE.md and to prefer
lance-graph::bgz17::Palette::nearest_index where applicable.

In @.claude/knowledge/pr-x12-cam-pq-sigker-dn-tree-substrate-bindings.md:
- Around line 293-312: Reconcile and validate the gap cost totals and blocking
relationships by (1) confirming the arithmetic that G-1..G-7 = 8–12 weeks and
G-8..G-9 = 3–5 weeks to ensure the document total 11–17 weeks is correct, (2)
explicitly documenting the blocking edges for G-4→R-14, G-6→R-13
(SharedClusterWide), and G-7→R-13 (integrity) in the table row notes, and (3)
adding a short milestone/phasing column or dependency list so reviewers can see
required ordering (e.g., mark G-4 as prerequisite for R-14 and schedule G-6
before G-7 or vice versa as appropriate) and a line invoking stakeholder
sign-off to confirm estimates and schedule.

In @.claude/knowledge/pr-x12-gguf-llm-weights-encoding.md:
- Around line 131-134: Clarify the apparent semantic conflict by adding a
forward-reference note after the sentence about Escape + raw f16: state that for
LLM weights Escape must be lossless and point readers to the framing-layer
resolution (e.g., reference F-4 / §10) that handles the domain-specific bypass
so the codec body remains domain-agnostic; mention Escape, LLM.int8(),
SmoothQuant and R-3 in that brief note so readers can locate the relevant
discussion.
- Line 269: The sentence "A 7B model at PR-X12 is genuinely runnable on a
phone-class device" overstates the claim by ignoring KV cache and activation
memory; replace or soften that sentence (the quoted phrase) to something like
"...brings a 7B model significantly closer to phone-class viability by reducing
the weight memory footprint" and ensure the revised wording appears where the
**Memory savings:** paragraph refers to PR-X12 so the document reflects the
caveat about additional runtime memory (KV cache and activations).
- Around line 336-351: Item 5 is ambiguous about when to reserve
EncodingDomain::LLMWeights; update the text to explicitly state timing: either
(A) if the discriminant must be reserved in the current PR-X12, change item 5 to
read that PR-X12 will reserve EncodingDomain::LLMWeights in the codec metadata
header now (so decoders can be forward-compatible), or (B) if reservation is
deferred, rephrase item 5 to say "The future LLM-weight implementation PR will
reserve EncodingDomain::LLMWeights" and adjust the status section to match that
deferred timeline; be sure to reference EncodingDomain::LLMWeights and the
PR-X12 scope/status so readers see the consistent plan.

In @.claude/knowledge/pr-x12-woa-multiarch-orchestration.md:
- Around line 136-143: The per-architecture constant DCT_BATCH_CROSSOVER cannot
reliably be defined by evaluating match Arch::CURRENT at compile-time unless
Arch::CURRENT is a const-evaluable discriminant; replace the match-based
constant with cfg-gated constants (e.g., separate #[cfg(...)] const
DCT_BATCH_CROSSOVER declarations for each target/feature) or, if you
intentionally keep the Arch::CURRENT approach, add a clear comment on
Arch::CURRENT and link to the const-evaluation mechanism (or macro) that
guarantees it is compute-time constant so the compiler will accept the const
binding.

In @.claude/knowledge/pr-x12-x266-3dgs-spacetime-upscaling.md:
- Around line 262-269: Update the status table entries that currently read
"landed" (notably the rows referencing R-2, R-3 audit, and R-13) to language
that clearly denotes documentation-only commitments—e.g. replace "landed" with
"committed in canon" or "defined in R-N" (or similar phrasing) so the table no
longer implies merged/implemented source changes; ensure the same wording is
applied consistently across the "Requirement | Source | Status" table.
🪄 Autofix (Beta)

Fix all unresolved CodeRabbit comments on this PR:

  • Push a commit to this branch (recommended)
  • Create a new PR with the fixes

ℹ️ Review info
⚙️ Run configuration

Configuration used: defaults

Review profile: CHILL

Plan: Pro Plus

Run ID: d1385111-5b5f-436c-9d8d-2f9b0f137960

📥 Commits

Reviewing files that changed from the base of the PR and between c92fd16 and 5c76cf3.

📒 Files selected for processing (11)
  • .claude/knowledge/pr-x12-anti-neural-lookup-inversion.md
  • .claude/knowledge/pr-x12-bgz-jc-substrate-synergies.md
  • .claude/knowledge/pr-x12-cam-pq-sigker-dn-tree-substrate-bindings.md
  • .claude/knowledge/pr-x12-canon-resolutions-delta.md
  • .claude/knowledge/pr-x12-codec-cognitive-substrate-mapping.md
  • .claude/knowledge/pr-x12-cross-domain-synergies.md
  • .claude/knowledge/pr-x12-gguf-llm-weights-encoding.md
  • .claude/knowledge/pr-x12-substrate-merged-canon.md
  • .claude/knowledge/pr-x12-woa-multiarch-orchestration.md
  • .claude/knowledge/pr-x12-x265-blasgraph-gemm.md
  • .claude/knowledge/pr-x12-x266-3dgs-spacetime-upscaling.md
✅ Files skipped from review due to trivial changes (2)
  • .claude/knowledge/pr-x12-codec-cognitive-substrate-mapping.md
  • .claude/knowledge/pr-x12-x265-blasgraph-gemm.md

Comment thread .claude/knowledge/pr-x12-anti-neural-lookup-inversion.md Outdated
Comment thread .claude/knowledge/pr-x12-bgz-jc-substrate-synergies.md
Comment thread .claude/knowledge/pr-x12-cam-pq-sigker-dn-tree-substrate-bindings.md Outdated
Comment thread .claude/knowledge/pr-x12-cam-pq-sigker-dn-tree-substrate-bindings.md Outdated
Comment thread .claude/knowledge/pr-x12-substrate-merged-canon.md Outdated
Comment thread .claude/knowledge/pr-x12-x266-3dgs-spacetime-upscaling.md
Comment thread .claude/knowledge/pr-x12-x266-3dgs-spacetime-upscaling.md Outdated
… + gitignore settings.local.json

After reading bgz17/KNOWLEDGE.md, bgz-tensor/{lib.rs,hhtl_d.rs,BGZ_HHTL_D.md},
highheelbgz/lib.rs, jc/{lib.rs,hambly_lyons.rs,Cargo.toml}, sigker/lib.rs,
ndarray/src/hpc/{cam_pq.rs,dn_tree.rs,merkle_tree.rs}, and
bgz17/src/scalar_sparse.rs in full, corrected the following:

bgz-jc-substrate-synergies.md:
- jc is 12-pillar (not 5) — Cargo.toml description is stale; run_all_pillars()
  executes pillars 1, 3, 4, 5, 5b, 7-11. Detailed mapping per pillar added.
- Pillar 11 is ACTIVE under --features hambly-lyons (since 2026-05-07, PR #348),
  not DEFERRED. The DEFERRED reading applies only to the default zero-dep build.
- Pillar 10 (Pflug-Pichler nested-distance on Sigma DN-trees) is the formal proof
  for CAM-PQ tree quantization correctness — not Pillar 11. Pillar 11 certifies
  sigker's Index-regime classification.
- The Hambly-Lyons probe deliberately uses signature_truncated (tensor-algebra),
  NOT signature_kernel_pde — the latter has a known math bug (PR #350: diverges
  from the true kernel I_0(2*sqrt(<u,v>)) at moderate inner products).
- The literal 4096-entry codebook is bgz-tensor::Codebook4096, a first-class
  type. bgz-hhtl-d is a different basin-codebook strategy (4 basin x 16 HIP x
  256 TWIG = 16384-cell address space over a shared 256-entry palette per role).
- Examples directory has 10 runnable proofs (not 9).

cam-pq-sigker-dn-tree-substrate-bindings.md:
- Same Pillar 10/11 distinction propagated.
- signature_kernel_pde caveat: known math bug, use signature_truncated for now.
- StaunenType: 6 explicit variants (not 8). MultipleChanges is the catch-all
  carrying a Vec<u8> of differing branch indices.
- dn_tree's quaternary fanout is a spatial partition of the prototype-index
  range, not a literal per-mode container. The Skip/Merge/Delta/Escape mapping
  is structurally suggestive but not load-bearing; the practical wiring is
  per-mode counts bundled via the existing GraphHV plastic-bundling primitive.
- train_semantic uses jaccard similarity on label sets + push/pull on centroids
  (NOT CLAM archetype clustering as the Explore agent summary said).
- merkle_tree's 1 KB layout, branch indices (0=identity through 7=content),
  and xor_diff (panCAKES compression) clarified.
- R-14 split into two clauses: codec-quantization correctness via Pillar 10
  (active), path-signature correctness via Pillar 11 (active under feature).

.gitignore:
- Added .claude/settings.local.json so per-user permission overrides survive
  branch switches without being committed.
Copy link
Copy Markdown
Contributor

@coderabbitai coderabbitai Bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🧹 Nitpick comments (1)
.claude/knowledge/pr-x12-cam-pq-sigker-dn-tree-substrate-bindings.md (1)

179-183: 💤 Low value

Consider downgrading signature_kernel_pde as a substrate binding until PR #350 lands.

Lines 179-183 (and 149-150) document that sigker::signature_kernel_pde has a "known math bug" (PR #350: diverges from true kernel at moderate inner products) and recommend using signature_truncated instead. The document positions sigker as substrate for PR-X12's streaming-decode pattern (line 179) but then caveats that the referenced function is buggy.

Either: (a) emphasize signature_truncated as the actual substrate binding (since that's what jc Pillar 11 uses), or (b) add a clear statement in §2.1 or the thesis (line 12) that the PDE-form is pending correction and production code must use the tensor-algebra path.

🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In @.claude/knowledge/pr-x12-cam-pq-sigker-dn-tree-substrate-bindings.md around
lines 179 - 183, The document currently promotes sigker::signature_kernel_pde as
a substrate for the streaming-decode pattern while noting a known math bug (PR
`#350`); update the text to downgrade that binding: explicitly state that
sigker::signature_truncated (and linear_path_kernel_closed_form for the special
case) are the recommended production substrate bindings until PR `#350` is merged,
and add a short, prominent note in §2.1 / the thesis intro that the PDE form
(sigker::signature_kernel_pde) is pending correction and must not be used in
production; change the phrasing in the paragraphs referencing
sigker::signature_kernel_pde (including the sentence at the current §2.4.2 and
the earlier cross-reference) to recommend
sigker::signature_truncated/linear_path_kernel_closed_form and cite PR `#350` as
the reason.
🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

Nitpick comments:
In @.claude/knowledge/pr-x12-cam-pq-sigker-dn-tree-substrate-bindings.md:
- Around line 179-183: The document currently promotes
sigker::signature_kernel_pde as a substrate for the streaming-decode pattern
while noting a known math bug (PR `#350`); update the text to downgrade that
binding: explicitly state that sigker::signature_truncated (and
linear_path_kernel_closed_form for the special case) are the recommended
production substrate bindings until PR `#350` is merged, and add a short,
prominent note in §2.1 / the thesis intro that the PDE form
(sigker::signature_kernel_pde) is pending correction and must not be used in
production; change the phrasing in the paragraphs referencing
sigker::signature_kernel_pde (including the sentence at the current §2.4.2 and
the earlier cross-reference) to recommend
sigker::signature_truncated/linear_path_kernel_closed_form and cite PR `#350` as
the reason.

ℹ️ Review info
⚙️ Run configuration

Configuration used: defaults

Review profile: CHILL

Plan: Pro Plus

Run ID: a461269b-6cfe-41ff-bd3d-5031a73e84cd

📥 Commits

Reviewing files that changed from the base of the PR and between 5c76cf3 and f1d68e6.

📒 Files selected for processing (3)
  • .claude/knowledge/pr-x12-bgz-jc-substrate-synergies.md
  • .claude/knowledge/pr-x12-cam-pq-sigker-dn-tree-substrate-bindings.md
  • .gitignore
✅ Files skipped from review due to trivial changes (1)
  • .gitignore

Arithmetic errors
- R-11 (canon-resolutions): 132,710 was 8×8 leaves/frame, not 64×64
  CTUs (which is 2,040). Relabelled the per-CTU breakdown table and
  budget derivation to per-leaf; clarified the 1 CTU = ~64 leaves at
  max split depth relationship. Latency narrative unchanged.
- R-12 (canon-resolutions): per-CTU flush rate at 4K was 80,000/sec
  but 2,040 CTUs × 60 fps = 122,400/sec; 1080p figure refined to
  30,600/sec (510 CTUs × 60).
- x266 §6 bandwidth: HEVC at 4K/60 from 1080p/30 scales as
  4 (res) × 2 (fps) × 6.25 MB = 50 MB, not 4 × 4 × 6.25 = 100 MB.
  PR-X12 wins by ~6× (not 12×); crossover ~1.3× (not 3×).

Bits 14-15 consistency (3 sites reconciled to R-2 canon)
- merged-canon M:E-J §3 formalisation note: replaced stale
  'bits 14-15 = leaf_size' with R-2's bit 15 = UNIVERSAL inter-tier /
  bit 14 = CONSUMER-TYPED via ConsumerProfile. Leaf size lives in
  Ctu<const N> at the type level (M:E-G), not in header bits.
- x266 §5 header layout: same R-2 alignment for the HEVC-compatible
  header block.
- anti-neural §6: enhancement-layer flag moved from per-leaf bit 14
  (claimed by R-2 consumer-typed demux) to the frame header reserved
  area (alongside ConsumerProfile and FlushUnit per R-2/R-12).

Path / citation corrections (cam-pq-sigker-dn-tree doc)
- Absolute /home/user/ndarray/... paths replaced with repo-relative
  src/hpc/... since this repo IS ndarray.
- /home/user/lance-graph/... paths marked as external repo
  (adaworldapi/lance-graph), not resolvable in this checkout.
- Hambly-Lyons 2010 citation now includes arXiv:math/0507536 and
  Annals of Mathematics 171(1):109-167.

All claims re-verified by reading each affected file in full
(canon-resolutions 1281 lines, x266 321, merged-canon 647,
anti-neural 337, cam-pq 395) before edits — the same protocol
applied to the bgz-jc proofread.

https://claude.ai/code/session_01HbqooFZHAjaUtFEzhA1R2u
AdaWorldAPI pushed a commit that referenced this pull request May 22, 2026
Brings claude/continue-ndarray-x0Oaw in sync with the PR branch
(claude/pr-x12-canon-resolutions-MAOO0, commit 21b61eb) for the
four docs that exist on both branches:

- pr-x12-anti-neural-lookup-inversion.md (enhancement-flag bit
  reassignment from leaf bit 14 to frame-header reserved area)
- pr-x12-cam-pq-sigker-dn-tree-substrate-bindings.md (path
  corrections + Hambly-Lyons arXiv:math/0507536)
- pr-x12-substrate-merged-canon.md (M:E-J §3 R-2 alignment:
  bit 15 universal / bit 14 consumer-typed; leaf_size lives in
  Ctu<const N> not header bits)
- pr-x12-x266-3dgs-spacetime-upscaling.md (R-2 header layout +
  HEVC 4K/60 bandwidth math: 4 res × 2 fps × 6.25 = 50 MB)

pr-x12-substrate-canon-resolutions.md is NOT brought across —
that file exists only on the PR branch and arrives via the
PR #197 → master merge.

https://claude.ai/code/session_01HbqooFZHAjaUtFEzhA1R2u
@AdaWorldAPI AdaWorldAPI merged commit 7307cc5 into master May 22, 2026
17 checks passed
AdaWorldAPI pushed a commit that referenced this pull request May 22, 2026
Per other-session feedback: six nitpick-level findings on PR #197 didn't
block the merge but stayed unaddressed. Folding them into this PR.

1. GGUF Escape forward-ref to F-4
   gguf-llm-weights-encoding.md §2.4 said "Escape must be lossless ...
   This is an additional R-N candidate" with no pointer. F-4 in §10
   already explains the mechanism (rANS bypass channel in A8, HEVC
   escape-coefficient precedent). Added an inline cross-ref so readers
   don't have to scroll to find the resolution.

2. Phone-class viability overclaim re KV cache
   gguf-llm-weights-encoding.md line 269 claimed "7B at PR-X12 is
   genuinely runnable on a phone-class device". Weight compression
   alone takes 7B from 4 GB to 3 GB, but KV cache at 8K context is
   ~1-2 GB independent of weight compression. Qualified the claim:
   PR-X12 weights are necessary but not sufficient; KV-cache lane
   (Plan D, M:H-3, R-4) is the second lever for full phone viability.

3. EncodingDomain::LLMWeights timing
   §11 implication #2 says "LLM lane lands post-PR-X12, but the
   harness must be lane-extensible"; implication #5 said "Reserve an
   EncodingDomain::LLMWeights discriminant ... now". Clarified: PR-X12
   reserves the enum-discriminant *slot* now (forward-compat lock); the
   LLMWeights variant + decoder land post-PR-X12 without a wire-format
   break.

4. Per-arch `match Arch::CURRENT` const-eval
   woa-multiarch-orchestration.md §3.3's `const DCT_BATCH_CROSSOVER =
   match Arch::CURRENT { ... }` does not compile under stable Rust
   const-eval — `Arch::CURRENT` would need to be a const, and
   architecture-conditional const matches require build-script-emitted
   integers or `cfg!(target_feature = ...)`. Rewrote as pseudocode
   pointing at a `build.rs` mechanism (decision matrix → `OUT_DIR`
   generated const) with a `cfg!()` fallback shape.

5. G-8 / G-9 numbering collision
   cam-pq-sigker-dn-tree-substrate-bindings.md §5 labelled bgz-jc's
   two prior gaps as G-8 / G-9 (continuing cam-pq's own G-1..G-7), but
   bgz-jc-substrate-synergies.md §5 didn't use any G-N IDs, so the
   cross-doc reference was dangling and the namespace was implicitly
   shared without rules. Gave bgz-jc §5.1 / §5.2 explicit IDs G-1 / G-2
   (canonical to that doc) and updated cam-pq to cite them as
   "bgz-jc G-1" / "bgz-jc G-2" with a namespace-isolation note.

6. "landed" terminology in x266 §8 prerequisites table
   The status column claimed "landed" / "landed in concept" for R-1
   trait shape, R-2 header bytes, and R-13 federated codebook policy.
   None of these have shipping code — they are canon-fixed (the
   resolution doc commits the design) but implementation is scheduled
   in Plan A4 / A8 / F. Renamed status to "canon-fixed" + a glossary
   line distinguishing "canon-fixed" (doc commitment) from "scheduled"
   (plan card exists) from shipping code.

https://claude.ai/code/session_01HbqooFZHAjaUtFEzhA1R2u
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants