#000070: dav1d review 2026-06-01 — GO with rewrite (AnchorN, not Anchor6)
Folds dav1d's 1904-line review verdict into the ticket as §0 (new),
preserves §§1-8 as the design log of the original Anchor6 proposal
that was reviewed. Status flips from "open · awaiting dav1d review"
to "open · dav1d GO with rewrite · spec revision pending before any
kernel ships."
Verdict matrix:
✅ GO: generic AnchorN substrate primitive (not fixed Anchor6)
✅ GO: Joseph6 as the first registered default grammar (not THE
ontology)
✅ GO: deterministic object-state canonicalization
✅ GO: axiom/physics-loaded WorldDimensionGrammar as the scalable
path
❌ NO-GO: hard-coding H₁..H₆ as final ontology
❌ NO-GO: runtime LLM-decided dimensionality (axioms MAY propose,
only deterministic validators may accept; grammars must
freeze via grammar_hash before proof-path use)
❌ NO-GO: framing this as a "semantic verifier warrant"
❌ NO-GO: relation/event/place/agent_trace in this ticket
❌ NO-GO: SQL persistence at Phase 1
Critical technical corrections:
- H₁ MUST use uint256, not uint64 (octree position entropy at
depth >8)
- Rotation mapper is map_rotation_euler_ypr(), NOT "SO(3)"
(review §17 — quantized Euler triple, no continuous SO(3))
- Canonical record carries grammar_hash + axiom_pack_hash +
manifest_hash + seed_hash alongside the per-dimension values
- Missing privacy.class = HARD reject (no PUBLIC fallback)
- spatial-anchor-object@v1 folds into canonicalization_version
only — no new audit_mode token, no verifier_policy_hash bump
Corrected package layout:
arborist/substrate/spatial_anchor.py (AnchorN, split_anchor_n)
arborist/world/grammar.py NEW — WorldDimensionGrammar
arborist/world/pi_star/object.py (derive_world_object_record
+ 5 mappers)
arborist/pi_star/spatial_anchor_object.py NEW — registry adapter
bench/fixtures/spatial-anchor-object/known-answer-tests.jsonl
tests/test_spatial_anchor.py
tests/test_world_dimension_grammar.py
tests/test_pi_star_spatial_anchor_object.py
Implementation NOT started — arborist/world/__init__.py STATUS still
"namespace_reserved"; only bench/spatial_anchor_validation.py
(pre-review empirical bench, commit 55b651f) on disk. Review arrives
at the right moment: no production code committed against the original
Anchor6 spec yet, so the AnchorN reframe lands in the spec before
the wrong primitive ships.
Full review archived at:
docs/dav1d-reviews/000070-spatial-anchor-pi-w-object--2026-06-01.txt
Five of ten original open questions resolved by the pre-review bench
(Q1/Q2/Q3/Q8/Q9); review answers Q4/Q5/Q6/Q7; Q10 (paper-amendment
wording) is the only remaining open question — substrate paper text
needs revision to introduce AnchorN + grammar layer instead of fixed
Anchor6.
This commit is contained in:
parent
329337ac11
commit
862662b903
3 changed files with 2072 additions and 5 deletions
File diff suppressed because one or more lines are too long
1904
docs/dav1d-reviews/000070-spatial-anchor-pi-w-object--2026-06-01.txt
Normal file
1904
docs/dav1d-reviews/000070-spatial-anchor-pi-w-object--2026-06-01.txt
Normal file
File diff suppressed because it is too large
Load diff
|
|
@ -1,7 +1,14 @@
|
||||||
# Ticket #000070 — Spatial-anchor π*_w_object (Joseph 6-dim determination kernel)
|
# Ticket #000070 — AnchorN + π*_w_object: deterministic world-object canonicalization
|
||||||
|
|
||||||
**Status:** open · awaiting dav1d review + fox go/no-go ·
|
**Status:** open · **dav1d GO with rewrite (2026-06-01)** · spec
|
||||||
pre-review empirical bench shipped in `55b651f` (see §7a)
|
revision pending before any kernel ships. Pre-review empirical bench
|
||||||
|
(`bench/spatial_anchor_validation.py`, commit `55b651f`) already on
|
||||||
|
disk; no implementation kernel started (only the namespace stub at
|
||||||
|
`arborist/world/__init__.py` exists, `STATUS = "namespace_reserved"`).
|
||||||
|
**Original title kept in the design log:** "Spatial-anchor π*_w_object
|
||||||
|
(Joseph 6-dim determination kernel)". §0 below carries the corrected
|
||||||
|
spec; §§1-8 preserve the ORIGINAL Anchor6 proposal as the historical
|
||||||
|
record of what was reviewed.
|
||||||
**Opened:** 2026-05-31
|
**Opened:** 2026-05-31
|
||||||
**Scope:** Pin the operational spec for **π*_w_object** — the first
|
**Scope:** Pin the operational spec for **π*_w_object** — the first
|
||||||
verifier kernel of v7-W. Implements **Joseph (@TrudoJo)**'s 6-dimension
|
verifier kernel of v7-W. Implements **Joseph (@TrudoJo)**'s 6-dimension
|
||||||
|
|
@ -43,7 +50,163 @@ Joseph (@TrudoJo, original framework author), #000013 follow-up,
|
||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
## 1. Problem statement
|
## 0. Dav1d review verdict (2026-06-01) — GO with rewrite
|
||||||
|
|
||||||
|
Full review at `docs/dav1d-reviews/000070-spatial-anchor-pi-w-object--2026-06-01.txt`
|
||||||
|
(1904 lines). Headlines below; §§1-8 stay unchanged as the design log
|
||||||
|
of the original Anchor6 proposal that was reviewed.
|
||||||
|
|
||||||
|
### 0.1 Verdict matrix
|
||||||
|
|
||||||
|
| | | |
|
||||||
|
|---|---|---|
|
||||||
|
| ✅ GO | generic **AnchorN** substrate primitive | not fixed Anchor6 |
|
||||||
|
| ✅ GO | **Joseph6** as the first registered default grammar | not THE ontology |
|
||||||
|
| ✅ GO | deterministic object-state canonicalization | the actual Phase 1 win |
|
||||||
|
| ✅ GO | axiom/physics-loaded `WorldDimensionGrammar` | the scalable path |
|
||||||
|
| ❌ NO-GO | hard-coding H₁..H₆ as final ontology | freezes the substrate |
|
||||||
|
| ❌ NO-GO | runtime LLM-decided dimensionality | breaks reproducibility |
|
||||||
|
| ❌ NO-GO | framing this as a "semantic verifier warrant" | commitments ≠ warrants |
|
||||||
|
| ❌ NO-GO | relation/event/place/agent_trace inside this ticket | scope-creep |
|
||||||
|
| ❌ NO-GO | SQL persistence in Phase 1 | namespace-reserved kernel only |
|
||||||
|
|
||||||
|
### 0.2 Architectural reframe
|
||||||
|
|
||||||
|
Replace the fixed Anchor6 primitive with **generic AnchorN** driven
|
||||||
|
by a frozen `WorldDimensionGrammar`. The grammar is a deterministic
|
||||||
|
manifest declaring N and the N region→mapper bindings. Joseph6
|
||||||
|
becomes a *named* grammar instance (`name="joseph6", version="v1"`),
|
||||||
|
not THE substrate.
|
||||||
|
|
||||||
|
**Critical correction on the "axioms decide N" intuition:**
|
||||||
|
|
||||||
|
- Axioms MAY *select* the grammar (LLM may *propose* candidates).
|
||||||
|
- Only *deterministic validators* may accept them.
|
||||||
|
- Accepted grammars are canonicalized, hashed, KAT-tested, versioned.
|
||||||
|
- **Grammars must be FROZEN before proof-path use** — `grammar_hash`
|
||||||
|
folds into the manifest. Runtime LLM dimensionality is the
|
||||||
|
failure mode dav1d explicitly NO-GOs.
|
||||||
|
|
||||||
|
### 0.3 Technical corrections (load-bearing)
|
||||||
|
|
||||||
|
- **§16 — H₁ MUST use uint256, not uint64.** The original
|
||||||
|
`map_octree_position()` truncation loses entropy at depth >8
|
||||||
|
octants. uint256 preserves the full 32-byte region. Same lesson
|
||||||
|
propagates to the other quantized dimensions.
|
||||||
|
- **§17 — Do NOT overclaim SO(3) on rotation.** The original spec
|
||||||
|
called H₃ a "quantized SO(3)" mapper; dav1d notes this is a
|
||||||
|
quantized Euler ypr triple — name it `map_rotation_euler_ypr()`
|
||||||
|
so consumers don't assume continuous SO(3) coverage.
|
||||||
|
- **§18 — Canonical object output shape:** the record carries
|
||||||
|
`grammar_hash`, `axiom_pack_hash`, `manifest_hash`, `seed_hash`
|
||||||
|
alongside the per-dimension quantized values. All four hashes
|
||||||
|
are required for replayability across grammar versions.
|
||||||
|
- **§19 — Privacy fail-closed:** missing `privacy.class` in
|
||||||
|
manifest = HARD reject (don't fall back to PUBLIC).
|
||||||
|
- **§20 — Hash/cache discipline:** spatial-anchor-object@v1 folds
|
||||||
|
into `canonicalization_version` only; no new `audit_mode` token,
|
||||||
|
no `verifier_policy_hash` bump.
|
||||||
|
|
||||||
|
### 0.4 Corrected package layout (was §13 of the review)
|
||||||
|
|
||||||
|
```
|
||||||
|
arborist/substrate/spatial_anchor.py
|
||||||
|
AnchorN
|
||||||
|
split_anchor_n()
|
||||||
|
SPATIAL_ANCHOR_VERSION
|
||||||
|
PLACEHOLDER_SPATIAL_SEED
|
||||||
|
|
||||||
|
arborist/world/grammar.py (NEW)
|
||||||
|
WorldDimensionGrammar
|
||||||
|
canonical_grammar_bytes()
|
||||||
|
grammar_hash()
|
||||||
|
validate_grammar()
|
||||||
|
|
||||||
|
arborist/world/pi_star/object.py
|
||||||
|
derive_world_object_record()
|
||||||
|
map_octree_position() # uint256 — see §16
|
||||||
|
map_scale_level()
|
||||||
|
map_rotation_euler_ypr() # not "SO(3)" — see §17
|
||||||
|
map_symbol_table_index()
|
||||||
|
map_passthrough_hex()
|
||||||
|
|
||||||
|
arborist/pi_star/spatial_anchor_object.py (NEW)
|
||||||
|
registered π* adapter
|
||||||
|
name = "spatial-anchor-object"
|
||||||
|
version = "v1"
|
||||||
|
canonicalize(raw: bytes) -> bytes
|
||||||
|
|
||||||
|
bench/fixtures/spatial-anchor-object/known-answer-tests.jsonl
|
||||||
|
tests/test_spatial_anchor.py
|
||||||
|
tests/test_world_dimension_grammar.py
|
||||||
|
tests/test_pi_star_spatial_anchor_object.py
|
||||||
|
```
|
||||||
|
|
||||||
|
The split moves **registry-facing canonicalization** to
|
||||||
|
`arborist/pi_star/` and keeps **v7-W domain logic** under
|
||||||
|
`arborist/world/`. AnchorN itself stays substrate-level alongside
|
||||||
|
`anchor_prg.py` since it's the generic key-derivation primitive.
|
||||||
|
|
||||||
|
### 0.5 Phase 1 deliverable (corrected)
|
||||||
|
|
||||||
|
```
|
||||||
|
1. generic split_anchor_n() — substrate, hash-pinned
|
||||||
|
2. Joseph6 grammar instance — frozen, KAT-tested
|
||||||
|
3. π*_w_object canonicalizer — registry slot
|
||||||
|
4. KATs at bench/fixtures/spatial-anchor-object/known-answer-tests.jsonl
|
||||||
|
5. Tests (3 modules above)
|
||||||
|
6. Substrate-paper amendment citing Joseph (@TrudoJo)
|
||||||
|
7. NO SQL
|
||||||
|
8. NO new audit_mode
|
||||||
|
9. NO verifier_policy_hash change
|
||||||
|
```
|
||||||
|
|
||||||
|
### 0.6 Relationship to #000071 (cross-ref)
|
||||||
|
|
||||||
|
Dav1d §22 confirms #000071 (world-bridge grammar) is the right
|
||||||
|
sibling: bridges connect different `WorldDimensionGrammar` instances
|
||||||
|
across chains. AnchorN + grammar identity is what the bridge layer
|
||||||
|
identifies; without grammar-as-first-class-object, bridges have
|
||||||
|
nothing to anchor.
|
||||||
|
|
||||||
|
### 0.7 Five dav1d open-questions answered by measurement, five still open
|
||||||
|
|
||||||
|
§7a of this ticket already cited the pre-review empirical bench
|
||||||
|
(`bench/spatial_anchor_validation.py`) resolving five of the ten
|
||||||
|
original open questions (Q1 seed source / Q2 segmentation / Q3
|
||||||
|
octree mapper / Q8 endianness / Q9 KAT adversarial vectors). The
|
||||||
|
review preserves those resolutions and reframes Q4/Q5/Q6/Q7/Q10:
|
||||||
|
|
||||||
|
- **Q4 scope split** — answered: object alone, NO relation/event/
|
||||||
|
place/agent_trace in this ticket. AnchorN handles N=6+ kernels
|
||||||
|
in future tickets.
|
||||||
|
- **Q5 privacy fail-closed default** — answered: HARD reject on
|
||||||
|
missing `privacy.class`.
|
||||||
|
- **Q6 `audit_mode` discipline** — answered: spatial commits are
|
||||||
|
not warrants, no new token.
|
||||||
|
- **Q7 manifest-validator timing** — defer to grammar validation
|
||||||
|
step in `arborist/world/grammar.py:validate_grammar()`.
|
||||||
|
- **Q10 paper-amendment wording** — still open; substrate paper
|
||||||
|
text needs revision to introduce AnchorN + grammar layer
|
||||||
|
instead of fixed Anchor6.
|
||||||
|
|
||||||
|
### 0.8 What changes for the implementer
|
||||||
|
|
||||||
|
The original §3 "Recommendation" + §4 "Implementation sketch" name
|
||||||
|
specific functions (`segment_anchor()`, fixed-6-region split, etc.).
|
||||||
|
Those stay in the design log as reference; **what actually ships
|
||||||
|
follows §0.4 above** — `split_anchor_n()` with grammar-driven N,
|
||||||
|
`WorldDimensionGrammar` class, registry-addressable π* adapter.
|
||||||
|
|
||||||
|
The original §7a empirical bench remains valid as evidence — it
|
||||||
|
validated the HMAC-SHA-512 expansion's avalanche / uniformity /
|
||||||
|
domain-separation properties, which are unchanged by the AnchorN
|
||||||
|
generalization (N just changes the loop count; the per-region
|
||||||
|
properties measured stay identical).
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## 1. Problem statement *(original design log — what was reviewed)*
|
||||||
|
|
||||||
### 1.1 What #000013 left undefined
|
### 1.1 What #000013 left undefined
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue