#000071: open ticket for Joseph 3-bridge inter-chain framework
Sibling to #000070 on the second axis of Joseph (@TrudoJo)'s spec. Joseph posted the bridge-framework extension 6h after the 6-dim spatial-ontology: chain A has its own world rules, chain B has its own world rules, a bridge exists only where a deterministic agreement layer can be proven. Three kinds: Agreement, Translation, Embassy. Phase 1 is doc-only -- the primary contribution is a retroactive- validation appendix naming three already-shipped arborist primitives as Joseph-bridge-shape patterns one-for-one: #000066 graft-receipt mode = Agreement bridge #000056 Operation Sandwich = Translation bridge (opus-mt hash IS the translator_id) #000059 graveyard (proposed) = Embassy bridge (POINTER-LINKED, banner-labelled, never promotes) The framework is not a new requirement on arborist. It is a unifying spec that names what we already do in 3+ places, plus surfaces a fourth pattern (bridge atlas for multi-instance federation with potentially-different governance_policy_hash peers) as genuinely new work for arborist/mesh/. Bundle: - docs/tickets/ticket-000071-world-bridge-grammar.md (~440 lines) - docs/TICKETS.md index row + Next ID 000071 -> 000072 - docs/tickets/ticket-000070-spatial-anchor-pi-w-object.md §6 gains one-line cross-reference to #000071 as adjacent axis - Joseph memory extended to cover both frameworks Phase 2/3/4 deferred to separate tickets. Hard constraints: A1-A3, no audit_mode token, no SQL change at Phase 1, sovereignty rule. Status: open, awaiting dav1d Phase 1 review + fox go/no-go.
This commit is contained in:
parent
d9fb6a9b69
commit
bc3f94efeb
3 changed files with 612 additions and 2 deletions
|
|
@ -111,6 +111,7 @@ Newest first. Update on every open/close.
|
|||
|
||||
| ID | Title | Status | Opened | Directive |
|
||||
|----------|------------------------------------------------|-----------------------|------------|-----------|
|
||||
| #000071 | World-bridge grammar (Joseph 3-bridge inter-chain framework) | **open · awaiting dav1d review + fox go/no-go · doc-only Phase 1** (2026-05-31; sibling to #000070, opened same day after Joseph @TrudoJo posted his bridge-framework extension to the 6-dim spatial-ontology — "chain A has its own world rules, chain B has its own world rules, a bridge exists only where a deterministic agreement layer can be proven"). Three bridge kinds: **Agreement** (rules match, direct passage), **Translation** (rules differ but a hash-pinned adapter exists), **Embassy** (foreign-object representation with limited rights). Bridge identity: `bridge_seed = hash(src_chain_id ‖ src_node ‖ src_rule_v ‖ tgt_chain_id ‖ tgt_rule_v ‖ translator_id ‖ invariant_set)`. Joseph's sovereignty rule (hard): chain law remains local, bridge law governs translation only, **no bridge may overwrite native chain law** — guard against forced-unity failure mode. **Primary contribution: retroactive-validation appendix** naming three already-shipped arborist primitives as Joseph-bridge-shape patterns one-for-one — **#000066 graft-receipt mode = Agreement bridge**, **#000056 Operation Sandwich = Translation bridge** (opus-mt hash IS the translator_id), **#000059 bounded-ingestion graveyard = Embassy bridge** (POINTER-LINKED only, never promotes, banner-labelled). The framework is not a new requirement; it's a unifying spec that names what arborist already does in 3+ places, plus surfaces a fourth pattern (bridge atlas for multi-instance federation with potentially-different `governance_policy_hash` peers) as genuinely new work for `arborist/mesh/`. **Phase 1 is doc-only** — paper extension §7 in `docs/_source/merkle-agi-v7w-spatial-temporal.rst` + `arborist/world/bridge/__init__.py` namespace stub mirroring `arborist/world/__init__.py` discipline + Joseph-memory extension. No kernel code, no SQL change, no `cache_key` extension, no new `audit_mode` token, no bench (doc-only review surface). Phase 2 = `pi_star/bridge-seed@v1` canonicalization deliberately deferred to avoid premature locking before three implementation tickets opine. Phase 3 = per-bridge-type kernels + bridge atlas + `event_type='bridge'` writer + mesh integration. Phase 4 = cross-domain bridges (language ↔ spatial via #000015 composition theorem). **Ten open questions for dav1d** in §8: doc-only vs registry-slot-at-Phase-1 (Q1), chain_id = governance_policy_hash vs manifest hash (Q2), three-bridge taxonomy completeness (Q3), translator integrity hashing depth (Q4), bridge witness via `event_type='bridge'` (Q5), `audit_mode` discipline for translated objects (Q6), bridge privacy class default (Q7), endianness reconfirmation (Q8), Phase 2 KAT count + adversarial vectors (Q9), paper-amendment wording (Q10). Hard constraints: A1–A3, no continuous tensors, no `audit_mode` token, no SQL change at Phase 1, topic-named under `arborist/world/bridge/`. Full spec in `docs/tickets/ticket-000071-world-bridge-grammar.md`. | 2026-05-31 | — |
|
||||
| #000070 | Spatial-anchor π*_w_object (Joseph 6-dim determination kernel) | **open · awaiting dav1d review + fox go/no-go · pre-review bench shipped `55b651f`** — pure-stdlib empirical-validation script (`bench/spatial_anchor_validation.py`, `make bench-spatial-anchor`, ~2 s, RNG-seed-pinned) measures: §1 avalanche mean 767.85 bits vs PRF null 768 (z = -0.49) · §2 octree chi² uniformity \|z\| < 1 at L=2,3,4 · §3 collision birthday-bound ratio 0.989 / 1.038 at L=4,6 · §4 cross-region Pearson r in [-0.018, +0.012] across all 15 pairs of H₁..H₆ (none flag at 4σ) · §5 domain separation Arm A 767.91 bits independent / Arm B **0.00 bits exact collision** confirming the dedicated-`spatial_anchor_seed` discipline. Five of ten open questions (Q1 seed source · Q2 segmentation · Q3 octree mapper · Q8 endianness · Q9 KAT adversarial vectors) now resolve by measurement; Q4/Q5/Q6/Q7/Q10 remain non-empirical design decisions for dav1d. Full empirical detail in ticket §7a. Originally surfaced 2026-05-31 when fox brought in Joseph @TrudoJo's procedural-spatial framework — "hashes do not encode the world, hashes determine the world" — and asked whether it fits arborist's substrate model. It does, cleanly. Implements the first verifier kernel under the #000013 v7-W reserved namespace (`arborist/world/__init__.py` `STATUS = "namespace_reserved"` → `kernel_in_progress` on land): a single committed 32-byte SHA-256 hash deterministically expands into six named 32-byte regions `H₁..H₆` via the HMAC-SHA-512 KDF already shipped in `arborist/substrate/anchor_prg.py` (#000035), and each region drives one quantized object dimension under a fixed canonical mapper — `H₁→octree position`, `H₂→scale level`, `H₃→quantized SO(3) rotation`, `H₄→material palette`, `H₅→raw links (reserved for π*_w_relation sibling ticket)`, `H₆→behavior code`. Domain separation from #000035 by dedicated `spatial_anchor_seed` (manifest-published) — keeps #000035's KAT freeze + dav1d 2026-05-11 final review intact. Hard constraints: stays inside A1–A3, no continuous tensors in proof path, no new `audit_mode` token (substrate commitments are not warrants — the four-rung ladder is unchanged), no SQL schema change at Phase 1, `canonicalization_version` absorbs the new `spatial-anchor-object@v1` registry slot. Phase 1 deliverable ~150 LoC + 10 KATs + tests in one PR: `arborist/substrate/spatial_anchor.py` (segmentation), `arborist/world/pi_star/object.py` (six mappers), registry entry, KAT vectors at `bench/fixtures/spatial-anchor/known-answer-tests.jsonl` matching #000035 KAT discipline, `tests/test_spatial_anchor.py` + `tests/test_world_pi_star_object.py`, substrate-paper amendment citing Joseph (@TrudoJo) in `docs/_source/merkle-agi-v7w-spatial-temporal.rst`. Position mapper at Phase 1 = octree (substrate paper §2.1 + §A worked example); H3/S2/Hilbert/Morton siblings deferred — Morton's value is purely as the relation-kernel `pair(A,B)` cheap bit-interleave and surfaces in the sibling ticket. **Ten open questions for dav1d** in §8: seed-source choice, segmentation method, position mapper, scope split (object alone vs object+relation per CLAUDE.md memory `feedback_ticket_proliferation`), privacy-class fail-closed default, `audit_mode` discipline confirmation, manifest-validator timing, endianness reconfirmation, KAT count + adversarial vectors, paper-amendment wording. Five-step §7 deletions captured: dropped the prior `/tmp/arborist-spatial-ontology-plan.md`'s geographic-search backend (encoding-route confusion), `Document.extra` lat/lon hooks (different ticket if at all), `audit_mode=HYBRID` for spatial hits (convention-illegal), geohash (subsumed by Morton), quadtree as separate (octree at z-level-0), Hilbert at Phase 1 (deferred), tier-1/2/3 hash-suite framing (conflated hard vs soft hashes), and `arborist/spatial/` namespace (violates topic-naming rule). Full spec in `docs/tickets/ticket-000070-spatial-anchor-pi-w-object.md`. | 2026-05-31 | — |
|
||||
| #000069 | Arborist VIZ / Merkle Command Center (Pyramid + six.js + SSE browser dashboard) | **open · awaiting go/no-go · doc-only scaffold** (2026-05-27; filed from `/home/fox/Downloads/TICKET_0000VIZ_*`, stack corrected same day per fox). Configurable browser dashboard for inspecting arborist's content-addressed state: Merkle root explorer, proof verifier, claim warrant + graveyard, audit timeline, run-DAG replay, cache-key explainer, root diff, 3D Merkle lattice, optional circuit/activation traces. Read-only consumer; arborist proper stays source-of-truth, dashboard projects state. **Stack pinned to unturf-native** (fox 2026-05-27, supersedes proposal §3): **Pyramid + Jinja2 + SQLAlchemy** (matches `remarkbox` / `make_post_sell` / `unhomeschool.com` idiom), **SSE** (`text/event-stream` via Pyramid streaming response) for live audit/claim/falsifier patches, **vanilla JS + six.js** (fox's patched three.js fork at `git.unturf.com/gumyum/six.js` — three.js r175 + CWE-407 patches incl. ObjectBVH O(N)→O(log N); bundles vendored from `~/git/cupPCB/cdn/six/`; third-instance MOAD-0001 dogfood alongside `java-topology` + gumyum-engine) for 3D widgets and large-graph rendering, SQLite for dashboard metadata (no PostgreSQL/ClickHouse/Redis/NATS by default — promote on measured need), no React / no Next.js / no Node build step. Server-rendered SVG (or Graphviz `.dot` per existing `docs/diagrams/*.dot` pattern) replaces React Flow for run-DAG widgets. Browser-side proof verification dropped from v1 (server-side Pyramid view returns PASS/FAIL + receipt; reinstate phase-N only if third-party-verification use case surfaces). **Three filing-note gates before phase 0** (in ticket body): **F-1** sibling-repo home — implementation lives in a new `~/git/arborist-viz` (Pyramid Python, matches existing unturf apps), not in-tree; arborist's contribution is the read-API spec + view package + arborist library import via `arborist.embed`. **F-2** scope split — proposal carries 8 phases (§17 phases 0–8); recommended cut keeps phases 0–3 (schema + shell + proof/root widgets + claim/audit/run widgets) inside #000069, and spawns sibling tickets for SSE streaming (4), 3D six.js (5), massive-graph (6, only if measured need surfaces), circuit-tracing (7, gated on #000062), embeddable widgets (8) — Dav1d-audience rule. **F-3** upstream prereqs — phase 7 (circuit/activation) consumes **#000062 Mechanistic Witness**'s `MechanisticWitnessRoot`; phase 3's claim-graveyard widget projects **#000059**'s bounded-ingestion graveyard. Hard constraints: arborist soft-vs-hard discipline applies verbatim (attribution weights renderable but never `audit_mode`, never causal without intervention/ablation evidence); private-leaf default-deny (commitments + hashes + redacted maps only without explicit auth); every widget exposes its data query + source roots. Reserved scope: NOT a replacement for `arborist controller-events` / `arborist analyze` / `arborist inspect` CLI — those stay canonical inspector surfaces; VIZ is the projection layer. | 2026-05-27 | — |
|
||||
| #000068 | Verifier-blind missed-answer falsification guard | **in progress · Phase 1+2+3 landed 2026-05-27 · Phase 4 default flip NO-GO** (Phase 2 bench 2026-05-27 76q × n=3 claim_lattice Hermes-3-8B: 2/228 sidecar fires, both STRONG confidence, both the Ballestrini regression fixture, 100% precision, 0/226 false positives across non-Ballestrini runs. Phase 3 demote flag opt-in via `--demote-on-missed-answer` on `query`/`ask` — wires `EVIDENCE-WARRANTED → EVIDENCE-MISSED-PARTIAL` for strong/medium confidence on lattice modes; lower rungs + non-lattice modes get `· missed-answer` tail tag. `answerability_demote_enabled` added to `_VERIFIER_POLICY_FIELDS` so flipping the flag partitions cache via verifier_policy_hash. Default OFF per Dav1d Phase 4 NO-GO — 100% precision at n=2 fires is too few samples to claim precision floor empirically; default flip blocks on wider bench + human spot-check. 47 tests (36 Phase 1 + 11 Phase 3) all passing. End-to-end verified live: 4/4 Hermes runs on Ballestrini with --demote-on-missed-answer rendered EVIDENCE-MISSED-PARTIAL.) Original opening 2026-05-27 (Dav1d de-novo review GO for Phase 1 with seven hardenings folded into spec — subject-token cue-stripping, answer-type alignment, confidence_class, candidate cap=10, precise offset_start/end/basis, cache-hit recompute-on-read, Phase 1 out of verifier_policy_hash). Original opening 2026-05-27; sibling to the user-payload-layout work shipped 2026-05-26, split out per the Dav1d-audience rule — `feedback_ticket_proliferation`). Surfaced by the Ballestrini case: evidence E2 literally contained the song names, Hermes-3-8B under `user_payload_layout=tail` said *"specific songs by her are not mentioned in the provided evidence blocks"*, verifier marked the run `EVIDENCE-WARRANTED` 2/2 because nothing positive was unsupported. **Verifier-blind false-negative class** — existing layered verifier (quote/span/entity/paraphrase + Rule 8 + Rule 9 + claim ceiling) guards unsupported *presence*, has no hook for unsupported *absence*. Layout fixes attention placement on the specific instance (n=3 bench 2026-05-27 confirms bookend/per_chunk recover Ballestrini); layout alone can't close the class — adversarial phrasing or bigger prompt resurfaces it under any layout. Proposed deterministic sidecar in `arborist/qa/inspect.py:diagnose_missed_answer`: three-clause conjunction — **(A)** answer matches denial pattern ("not mentioned", "not provided", "the evidence does not say", …, closed list versioned via `denial_patterns_version`); **(B)** question is extraction shape (reuse `arborist.qa.quantifier` classifier — `ALL`/`COMPREHENSIVE`/`OPEN_REQUEST` intensities, OR surface cues "songs by"/"works by"/"who wrote"/"list"/"name all"); **(C)** evidence contains candidate spans near subject tokens (reuse `entity_proximity_n`/`entity_proximity_window` from verify.py — quoted strings, title-case spans, comma-separated title lists within W chars of stemmed subject content tokens). All three must fire. Output: `result["answerability"]` with `missed_answer_candidate_spans` list (evidence_id + offset + text). **Hash discipline:** sidecar fields (`denial_patterns_version`, `extraction_cues_version`, `answerability_threshold`) fold into `governance_policy_hash` only; an optional `answerability_demote_enabled` flag (default OFF) wires `EVIDENCE-WARRANTED → EVIDENCE-MISSED-PARTIAL` in `_render_audit_label`, and IF on folds into BOTH `governance_policy_hash` AND `verifier_policy_hash` (changes rendered audit_mode, so verifier hash must move — the deliberate opt-in moves the verifier hash, sidecar-only stays out). No LLM-as-judge. Never writes `providence_cache`/`audit_events`. Never promotes claims. Pattern verbatim from `arborist.qa.inspect.diagnose_*` (deflection, coherence, title-relevance). Phases: 1 sidecar read-only, 2 bench + threshold tuning, 3 demote opt-in, 4 default decision (bench-gated). 5F-Falsification fixture: Ballestrini case already in `bench/qa_questions.txt` under "entity list". Full spec in `docs/tickets/ticket-000068-verifier-blind-missed-answer-guard.md`. | 2026-05-27 | D2 |
|
||||
|
|
@ -184,4 +185,4 @@ Newest first. Update on every open/close.
|
|||
|
||||
## Next ID
|
||||
|
||||
`000071`
|
||||
`000072`
|
||||
|
|
|
|||
|
|
@ -632,7 +632,8 @@ exact byte-level behavior under review.)
|
|||
| #000049 | Attribution-aware grounding check | Architectural sibling — split from #000048 because NLI raised a fresh `audit_mode` question that needed its own dav1d-review surface. Same shape as the §2.4 split-or-extend decision here. |
|
||||
| v7-W paper | `docs/_source/merkle-agi-v7w-spatial-temporal.rst` (658 lines) | Specification this kernel implements. §A worked example informs default manifest shape. |
|
||||
| v7 paper | `docs/_source/merkle-agi-dag-v7.rst` §9.10 / §9.10.1 | φ_PRG amendment context. Domain-separation argument inherits from §9.10. |
|
||||
| Joseph framework | Memory: `joseph_trudojo_6dim_spatial_ontology.md` | Author attribution. The six-dimension `H₁..H₆` split is Joseph (@TrudoJo)'s. Substrate paper amendment under this ticket cites him. |
|
||||
| Joseph framework (6-dim) | Memory: `joseph_trudojo_6dim_spatial_ontology.md` | Author attribution. The six-dimension `H₁..H₆` split is Joseph (@TrudoJo)'s. Substrate paper amendment under this ticket cites him. |
|
||||
| #000071 | World-bridge grammar (Joseph 3-bridge inter-chain framework) | **Adjacent axis**, opened 2026-05-31 alongside this ticket. Joseph's bridge framework (Agreement / Translation / Embassy bridges + bridge-seed formula) lives on a different axis: #000070 governs *intra-chain identity* (one hash → one object inside one world); #000071 governs *inter-chain treaties* (a bridge between two worlds with potentially different rule grammars). Adjacent, not overlapping — dav1d's #000070 review proceeds independently. |
|
||||
| Prior plan | `/tmp/arborist-spatial-ontology-plan.md` (2026-05-31, not in repo) | The plan this ticket replaces. Five-step §2 deletions captured in §7 below. |
|
||||
|
||||
## 7. Five-step alignment
|
||||
|
|
|
|||
608
docs/tickets/ticket-000071-world-bridge-grammar.md
Normal file
608
docs/tickets/ticket-000071-world-bridge-grammar.md
Normal file
|
|
@ -0,0 +1,608 @@
|
|||
# Ticket #000071 — World-bridge grammar (Joseph 3-bridge inter-chain framework)
|
||||
|
||||
**Status:** open · awaiting dav1d review + fox go/no-go ·
|
||||
**doc-only Phase 1** (paper + retro-validation of shipped primitives;
|
||||
no kernel code lands on go)
|
||||
**Opened:** 2026-05-31
|
||||
**Scope:** Spec the bridge-grammar layer for v7-W. **Joseph (@TrudoJo)**'s
|
||||
second framework (2026-05-31): every chain has its own world-rules
|
||||
(`chain = cryptographic history + rule grammar + world mapper`); bridges
|
||||
between chains exist only where a deterministic agreement layer can be
|
||||
proven. Three bridge kinds — **Agreement** (direct passage when rules
|
||||
match), **Translation** (mediated passage through a hash-pinned
|
||||
adapter), **Embassy** (foreign-object representation with limited
|
||||
rights). Bridge identity is a deterministic seed:
|
||||
`bridge_seed = hash(src_chain_id ‖ src_node ‖ src_rule_v ‖ tgt_chain_id ‖ tgt_rule_v ‖ translator_id ‖ invariant_set)`.
|
||||
Phase 1 is **doc-only** — a substrate-paper extension at
|
||||
`docs/_source/merkle-agi-v7w-spatial-temporal.rst` plus a retroactive-
|
||||
validation appendix naming three already-shipped arborist primitives
|
||||
(#000066, #000056, #000059) as Joseph-bridge-shape patterns. Sibling
|
||||
implementation tickets per bridge type land later.
|
||||
**Audience:** dav1d (primary review), v7-W substrate-paper maintainers,
|
||||
mesh-protocol maintainers (`arborist/mesh/`), Joseph (@TrudoJo, original
|
||||
framework author), #000013 follow-up, #000070 adjacent axis,
|
||||
#000056 / #000066 / #000059 retro-validation, #000015 generalization
|
||||
target.
|
||||
**Hard constraint:**
|
||||
|
||||
- Stays inside A1–A3 (canonical encoding, public quantization,
|
||||
collision-resistant hash). No new axiom.
|
||||
- **Joseph's bridge sovereignty rule (hard).** Chain law remains local;
|
||||
bridge law governs translation only; **no bridge may overwrite native
|
||||
chain law**. The bridge is a treaty, not an empire. This is the
|
||||
guard against the "forced unity" failure mode Joseph flags in §5 of
|
||||
the framework.
|
||||
- **Translator identities hash-pinned.** Translation bridges depend on
|
||||
a fixed translator; the translator's identity hash binds into the
|
||||
`bridge_seed`. Matches #000056 opus-mt hash-pinning discipline; no
|
||||
exception for "model-of-the-week" adapters.
|
||||
- **No new `audit_mode` token.** Bridges produce commitments
|
||||
(`bridge_seed`, bridge geometry), not warrants. CLAUDE.md verifier-
|
||||
stays-binary discipline applies unchanged; foreign-object embassy
|
||||
representations stay POINTER-LINKED at best, never promote to
|
||||
EVIDENCE-WARRANTED. Joseph's "embassy bridge" semantics MATCH
|
||||
arborist's graveyard-and-witness pattern (#000059) one-for-one.
|
||||
- **No new SQL table at Phase 1.** Phase 1 is paper + retro-validation
|
||||
+ namespace stub only. Bridge persistence schema (Phase 3+) is a
|
||||
separate ticket; folding it into v9.8 `cache_key` via a new
|
||||
`bridge_canonicalization_version` dimension is deferred for explicit
|
||||
fox + dav1d sign-off.
|
||||
- **Topic-named, not version-prefixed.** Lands under
|
||||
`arborist/world/bridge/` (sibling to `arborist/world/pi_star/` from
|
||||
#000070), not `arborist/v7w_bridge/` or `arborist/bridge/`.
|
||||
|
||||
---
|
||||
|
||||
## 1. Problem statement
|
||||
|
||||
### 1.1 What #000013 left undefined (axis 2)
|
||||
|
||||
The v7-W substrate paper at
|
||||
`docs/_source/merkle-agi-v7w-spatial-temporal.rst` §1.1 lists five
|
||||
world-state object kinds: objects, relations, events, places,
|
||||
agents. It does **not** name a `bridge` or `chain` kind. The paper
|
||||
implicitly assumes a *single* world — one manifest, one grid, one
|
||||
frame anchor — and defers federation to "out of scope" §6
|
||||
discussion of surveillance/privacy.
|
||||
|
||||
This is fine for the v7-W *single-world commitment* layer. It
|
||||
leaves *inter-world translation* unspecced. With multiple arborist
|
||||
peers running with potentially different `governance_policy_hash` /
|
||||
`canonicalization_version` values (the multi-instance federation
|
||||
case the mesh layer in `arborist/mesh/` is positioned for), the
|
||||
question "what bytes can peer A and peer B agree on, and under
|
||||
what translator?" has no formal answer today.
|
||||
|
||||
### 1.2 Joseph's framework (verbatim core)
|
||||
|
||||
2026-05-31 fox brought in Joseph (@TrudoJo)'s second framework.
|
||||
Verbatim cores:
|
||||
|
||||
> **Chain A has its own nodes. Chain A has its own world rules.**
|
||||
> Chain B has its own nodes. Chain B has its own world rules.
|
||||
> A bridge exists only where a deterministic agreement layer can be
|
||||
> proven.
|
||||
|
||||
> A chain is not just a list of hashes. It becomes:
|
||||
> `Chain = cryptographic history + rule grammar + world mapper`
|
||||
|
||||
> **Three bridge kinds:**
|
||||
> - **Agreement** — rules match directly: `A.object.position == B.object.position`. Strongest bridge.
|
||||
> - **Translation** — rules do not match, but a deterministic adapter exists. The adapter itself must be hashed and versioned, otherwise the translation drifts.
|
||||
> - **Embassy** — rules cannot fully translate, but one chain can host a representation of the other. The object appears as a foreign object with limited rights.
|
||||
|
||||
> **Bridge seed:**
|
||||
> `bridge_seed = hash(src_chain_id ‖ src_node ‖ src_rule_version ‖ tgt_chain_id ‖ tgt_rule_version ‖ translator_id ‖ invariant_set)`
|
||||
|
||||
> **The real rule:** chain law remains local; bridge law governs
|
||||
> translation; no bridge may overwrite native chain law. The bridge
|
||||
> is a treaty, not an empire.
|
||||
|
||||
> **Where rules agree, merge. Where rules translate, bridge. Where
|
||||
> rules conflict, quarantine. Contradiction → no bridge.**
|
||||
|
||||
### 1.3 Why this fits arborist — retroactive validation
|
||||
|
||||
The most important finding of this ticket: **Joseph's bridge
|
||||
framework names what arborist already does in three places.**
|
||||
Cross-checked against ground truth on 2026-05-31:
|
||||
|
||||
| Joseph concept | Already-shipped arborist primitive | Shape match |
|
||||
|---|---|---|
|
||||
| **Chain = cryptographic history + rule grammar + world mapper** | v9.8 8-dim `cache_key` — `source_root + question_hash + model_profile_hash + conversation_hash + governance_policy_hash + schema_version + canonicalization_version + chunking_version`. Each instance with distinct hashes IS a distinct "chain" by Joseph's definition. | exact |
|
||||
| **Shared invariants** (Merkle root, state commitment, rule-version hash) | `document_root`, `source_root`, chunk `leaf_hash`, `cache_key`, `audit_event_hash`, `governance_policy_hash`, `canonicalization_version` | exact (these are the "common handles" Joseph names) |
|
||||
| **Agreement bridge** — rules match, direct passage | **#000066 cold-pack overlay / graft mode** (Wikipedia 2010 / current / arxiv-cs corpora packs). `INSERT OR IGNORE` on content-addressed PKs collapses dupes; **graft receipt** = the bridge witness (`event_type='graft'` event carrying `pack_hash`, `snapshot_root`, `corpus_name`, `event_count`, `first_event_hash`, `last_event_hash`, `manifest_root`). Pack chain stays a "witnessed subgraph"; host chain takes the receipt. Joseph's framework gives a name to what we already shipped. | exact |
|
||||
| **Translation bridge** — deterministic hash-pinned adapter | **#000056 Operation Sandwich** — cross-language MT on the edges. Adapter (opus-mt es/fr/ru↔en) is hash-pinned in `RetrievalPlan.mt_*`; MT never re-enters the verifier; English answer verified English-vs-English; Spanish display banner-labeled with zero grounding. The bridge IS the sandwich. | exact |
|
||||
| **Embassy bridge** — foreign-object with limited rights | **#000059 bounded-ingestion graveyard** (proposed) + **falsified-but-witnessed claims**. A peer's claim is pinned as evidence (commitment), never promoted to warrant (no `EVIDENCE-WARRANTED`, no `STRICT`). Witness marker remains. Joseph's "appears as a foreign object with limited rights" maps one-for-one to graveyard semantics. | exact |
|
||||
| **Bridge seed formula** `hash(src_chain_id ‖ src_node ‖ src_rule_v ‖ tgt_chain_id ‖ tgt_rule_v ‖ translator_id ‖ invariant_set)` | Structurally identical to the v9.8 8-dim `cache_key` composition. Same Merkle-style content addressing; bridge-specific roles instead of QA-specific ones. | structural |
|
||||
| **Chain sovereignty** ("no bridge may overwrite native chain law") | Verifier-stays-binary + "MT on the edges only" + soft-vs-hard-hash discipline. Same rule, restated as a federation principle. | exact |
|
||||
|
||||
**Implication.** Joseph's bridge framework is not a *new requirement*
|
||||
on arborist. It is a *unifying spec* that retroactively names three
|
||||
already-shipped patterns (graft / sandwich / graveyard) as one
|
||||
architectural family, and surfaces a fourth pattern (bridge atlas
|
||||
for multi-instance federation) as genuinely new work for the mesh
|
||||
layer.
|
||||
|
||||
This is unusual ticket shape: most of Phase 1's value is **paper
|
||||
work** (giving names to existing primitives + folding them into one
|
||||
framework), not new code.
|
||||
|
||||
## 2. Design choices
|
||||
|
||||
### 2.1 Phase 1 deliverable shape — paper vs paper + code
|
||||
|
||||
**A. Doc-only Phase 1 (recommended).**
|
||||
|
||||
Phase 1 ships:
|
||||
- An extension to `docs/_source/merkle-agi-v7w-spatial-temporal.rst`
|
||||
introducing the bridge layer (§2 axis 2, sibling to the 6-dim
|
||||
object axis from #000070).
|
||||
- A retroactive-validation appendix (referenced as §10 in this
|
||||
ticket's bench section) cross-referencing #000066, #000056,
|
||||
#000059 as Agreement / Translation / Embassy bridges respectively.
|
||||
- A namespace stub at `arborist/world/bridge/__init__.py` mirroring
|
||||
`arborist/world/__init__.py`'s `STATUS = "namespace_reserved"`
|
||||
discipline.
|
||||
|
||||
No kernel code. No new SQL. No registry slots. No bench. Per-bridge-
|
||||
type implementation kernels (`arborist/world/bridge/agreement.py`,
|
||||
`bridge/translation.py`, `bridge/embassy.py`) are sibling tickets
|
||||
when fox prioritizes them.
|
||||
|
||||
- **Strength:** paper-first matches #000013's discipline; cheap to
|
||||
land; retroactive-validation discipline gives dav1d a focused
|
||||
doc-review surface.
|
||||
- **Cost:** no executable validation at Phase 1. The retroactive-
|
||||
validation claim is checked by code-reading, not bench.
|
||||
|
||||
**B. Paper + π*_w_bridge registry slot at Phase 1.**
|
||||
|
||||
Add to Phase 1: a registered `pi_star/bridge-seed@v1` projection that
|
||||
computes `bridge_seed` deterministically from
|
||||
`(src_chain_id, src_node, src_rule_v, tgt_chain_id, tgt_rule_v,
|
||||
translator_id, invariant_set)`. Per-bridge-type mappers stay deferred.
|
||||
|
||||
- **Strength:** locks the bridge-seed canonicalization at Phase 1, so
|
||||
downstream implementations cannot drift.
|
||||
- **Cost:** Phase 1 grows from paper-only to paper + 100 LoC + KATs
|
||||
+ tests. Picks a canonicalization (ordering, separator bytes,
|
||||
invariant-set serialization) before three implementation tickets
|
||||
have any opinion on the right shape. Premature locking.
|
||||
|
||||
**Recommendation: A.** Doc-only Phase 1. The bridge seed is too
|
||||
sensitive a canonicalization to lock before per-bridge-type kernels
|
||||
have informed the shape.
|
||||
|
||||
### 2.2 Bridge-seed canonicalization (DEFERRED to Phase 2)
|
||||
|
||||
When Phase 2 lands `pi_star/bridge-seed@v1`, the canonical bytes for
|
||||
`bridge_seed` must pin:
|
||||
|
||||
- **Chain identifiers** — what counts as a `chain_id`? Joseph's
|
||||
framework leaves this open. Two candidates:
|
||||
- **(a) `governance_policy_hash`** — every cache-key partition is a
|
||||
chain. Matches Joseph's definition (`chain = cryptographic
|
||||
history + rule grammar + world mapper`) one-for-one.
|
||||
- **(b) v7-W manifest hash** — every committed substrate manifest is
|
||||
a chain. Closer to Joseph's "rule grammar" framing; ignores
|
||||
QA-policy churn.
|
||||
- Recommendation (Phase 2): `(a)` — `governance_policy_hash`
|
||||
already changes whenever any policy field changes, including the
|
||||
verifier-rule subset, MT engine identity, π* registry version.
|
||||
It's the union surface. (b) would miss QA-side rule drift.
|
||||
- **Node identifiers** — what counts as `src_node` / `tgt_node`?
|
||||
Recommendation (Phase 2): a content-addressed handle valid in BOTH
|
||||
chains' invariant sets. Default: a `document_root` if both chains
|
||||
agree on that schema; otherwise the bridge's invariant set must
|
||||
declare a translator that maps node identities (`src_node →
|
||||
tgt_node`).
|
||||
- **Rule version** — `governance_policy_hash` at bridge-establishment
|
||||
time. Locking this means re-establishment is required if either
|
||||
chain bumps policy. That's the right semantics (a treaty signed
|
||||
under one law is not auto-binding under a new law).
|
||||
- **Translator id** — for Agreement bridges: the empty 32-byte hash
|
||||
(no translator). For Translation bridges: SHA-256 of the
|
||||
translator's canonical bytes (e.g. opus-mt model hash). For Embassy
|
||||
bridges: SHA-256 of the embassy contract bytes (Phase 3 spec).
|
||||
- **Invariant set** — a canonical sorted list of `(invariant_kind,
|
||||
invariant_hash)` tuples committed at bridge-establishment time.
|
||||
Recommendation (Phase 2): one of `merkle_root`, `state_commitment`,
|
||||
`rule_version_hash`, `address`, `signature_proof`,
|
||||
`timestamp_window`. Closed list versioned by
|
||||
`invariant_kind_set_version`.
|
||||
- **Encoding** — little-endian, matching v7 §A1 / #000035 / #000070.
|
||||
|
||||
Phase 2 will face the same KAT-discipline question #000070 faced;
|
||||
Phase 2 will also need a domain-separation seed of its own
|
||||
(`bridge_anchor_seed`), distinct from `spatial_anchor_seed` (#000070)
|
||||
and `anchor_prg_seed` (#000035).
|
||||
|
||||
### 2.3 Bridge kind taxonomy — formalization
|
||||
|
||||
Phase 1 paper extension formalizes the three bridge kinds as follows.
|
||||
Each kind names a **decision rule** the bridge runtime evaluates at
|
||||
the moment two chains attempt to exchange.
|
||||
|
||||
**Agreement bridge (`bridge_kind = 'agreement'`).**
|
||||
- Decision rule: `src_rule_v == tgt_rule_v` AND `invariant_set`
|
||||
contents are byte-identical when serialized canonically.
|
||||
- Result: direct passage. Source object enters target chain native.
|
||||
- **`bridge_seed`'s `translator_id` field** = the empty 32-byte hash
|
||||
(no translator needed).
|
||||
- **Arborist retro-validation:** #000066 graft-receipt mode. Same
|
||||
`governance_policy_hash` peers exchange packs; `INSERT OR IGNORE`
|
||||
on content-addressed PKs is the agreement; the graft receipt is the
|
||||
bridge witness.
|
||||
|
||||
**Translation bridge (`bridge_kind = 'translation'`).**
|
||||
- Decision rule: `src_rule_v ≠ tgt_rule_v` BUT a registered
|
||||
`translator_id` exists in the bridge atlas mapping
|
||||
`(src_rule_v, tgt_rule_v) → translator`.
|
||||
- Result: mediated passage. Source object passes through translator;
|
||||
output enters target chain as a *translated native object*.
|
||||
- **Translator integrity:** the translator's identity hash binds into
|
||||
`bridge_seed`; a translator change at runtime invalidates the
|
||||
bridge (same shape as #000035 KAT discipline + #000056 opus-mt
|
||||
hash-pinning).
|
||||
- **Arborist retro-validation:** #000056 Operation Sandwich. Spanish
|
||||
query → opus-mt → English query → English-vs-English verifier →
|
||||
English answer → opus-mt → Spanish display. The opus-mt model hash
|
||||
IS the `translator_id`.
|
||||
|
||||
**Embassy bridge (`bridge_kind = 'embassy'`).**
|
||||
- Decision rule: `src_rule_v ≠ tgt_rule_v` AND no translator exists
|
||||
(or the translator is explicitly declared as `embassy`).
|
||||
- Result: foreign-object passage with limited rights. Source object
|
||||
appears in target chain as a witnessed proxy: commitment only, no
|
||||
warrant promotion, no native-rule extension.
|
||||
- **Limited rights** (Phase 1 paper formalizes; Phase 3 ticket
|
||||
implements):
|
||||
- May be cited as evidence (POINTER-LINKED at best).
|
||||
- May NOT promote to `EVIDENCE-WARRANTED` / `STRICT`.
|
||||
- May NOT extend the target chain's rule grammar.
|
||||
- MUST display the embassy banner (matches #000056 display-only
|
||||
Spanish banner discipline).
|
||||
- **Arborist retro-validation:** #000059 bounded-ingestion graveyard
|
||||
(proposed). A peer's claim enters as a fingerprint witness, never
|
||||
promotes.
|
||||
|
||||
**Quarantine vs no bridge.** Joseph's §6 also names two non-bridge
|
||||
outcomes: **quarantine** (rules conflict; bridge inhibited but
|
||||
boundary objects allowed) and **no bridge** (rules contradict;
|
||||
exchange impossible). Phase 1 paper formalizes these as the
|
||||
`bridge_kind` enum values `'quarantine'` and `'no_bridge'`:
|
||||
|
||||
- `quarantine`: a bridge object exists but its allowed-object set
|
||||
is empty; the object IS the boundary marker.
|
||||
- `no_bridge`: no bridge object; attempted exchange raises at the
|
||||
atlas layer.
|
||||
|
||||
### 2.4 Bridge atlas — multi-instance protocol (DEFERRED to Phase 3)
|
||||
|
||||
The bridge atlas is the runtime registry that holds bridge objects
|
||||
between known chains. It is genuinely new work — arborist's
|
||||
`arborist/mesh/` layer today does group keys + epochs + roster but
|
||||
assumes peers share `governance_policy_hash`. The atlas lets peers
|
||||
with different `governance_policy_hash` values selectively exchange
|
||||
under explicit bridges.
|
||||
|
||||
Phase 3 ticket will specify:
|
||||
- Atlas schema (`bridge_atlas` table or sibling-DB pattern).
|
||||
- Bridge discovery (who advertises bridges, how peers learn).
|
||||
- Bridge establishment protocol (consent, signature, witness).
|
||||
- Bridge revocation + decay (Joseph names "decay" as a bridge
|
||||
geometry property).
|
||||
- Cross-chain quorum semantics (does an Agreement bridge between
|
||||
3-of-5 peers count? — likely #000037 controller territory).
|
||||
|
||||
NOT in Phase 1 scope. Listed here so dav1d sees the full picture.
|
||||
|
||||
### 2.5 Audit-chain composition — graft receipt as bridge witness
|
||||
|
||||
#000066 already specifies the **graft receipt** as the witness
|
||||
pattern: one `event_type='graft'` event in the host chain carries
|
||||
the absorbed pack chain's bookend hashes, and the pack file itself
|
||||
becomes the durable witness for the absorbed events.
|
||||
|
||||
Phase 1 paper extension formalizes this as the **canonical bridge
|
||||
witness pattern**: every bridge object (Agreement, Translation, or
|
||||
Embassy) writes one audit event of `event_type='bridge'` carrying
|
||||
`(bridge_kind, bridge_seed, src_chain_id, tgt_chain_id, translator_id,
|
||||
invariant_root)`. The body matches Joseph's bridge-seed inputs
|
||||
one-for-one. Source-chain commitments stay in their own audit
|
||||
chains; the bridge event is a witness pointer.
|
||||
|
||||
**`append_audit` extension (Phase 3 ticket).** The
|
||||
`arborist.store.append_audit` helper would gain a `bridge` event
|
||||
type; Phase 1 spec only.
|
||||
|
||||
### 2.6 audit_mode discipline — bridges produce commitments, not warrants
|
||||
|
||||
CLAUDE.md: "`audit_mode` is decided by the verifier, never
|
||||
asserted." A bridge produces a `bridge_seed`, a witness event, and
|
||||
(for Translation/Embassy) a translated/proxied representation. None
|
||||
of these are warrants for any claim. The verifier discipline (quote
|
||||
/ span / entity / paraphrase) is unchanged by Phase 1.
|
||||
|
||||
Translated objects ride the bridge into the target chain's
|
||||
warrant-eligibility pool only if both:
|
||||
- (a) The target chain's verifier accepts the source-language
|
||||
evidence in its own language under the existing rules
|
||||
(English-vs-English for #000056).
|
||||
- (b) The translator hash is the one bound into the bridge_seed.
|
||||
|
||||
Embassy objects never enter the warrant-eligibility pool. They are
|
||||
pure witnesses (CLAUDE.md: "soft never enters proof path"
|
||||
generalization).
|
||||
|
||||
This is the most important conceptual discipline of this ticket.
|
||||
The bridge layer must not become a sneak path for promoting
|
||||
foreign-rule warrants past the local verifier.
|
||||
|
||||
### 2.7 Privacy / surveillance
|
||||
|
||||
v7-W paper §6 surveillance discussion applies doubly to bridges:
|
||||
a bridge object exposes the existence of a relationship between two
|
||||
chains. Phase 1 paper extension flags this; Phase 3+ implementation
|
||||
tickets will need to declare bridge-privacy class (public vs
|
||||
ZK-with-selective-disclosure) parallel to v7-W manifest privacy
|
||||
class.
|
||||
|
||||
### 2.8 Endianness
|
||||
|
||||
Little-endian throughout, matching v7 §A1 / #000035 / #000070 /
|
||||
phase-2 bridge-seed canonicalization. No exceptions.
|
||||
|
||||
## 3. Recommendation
|
||||
|
||||
**Phase 1 deliverable** — paper-only, no code:
|
||||
|
||||
1. **`docs/_source/merkle-agi-v7w-spatial-temporal.rst`** — new section
|
||||
"§7 — World-bridge grammar (axis 2)" with:
|
||||
- Joseph's framework verbatim core (§1.2 of this ticket).
|
||||
- Three-bridge-kind taxonomy formalization (§2.3).
|
||||
- `bridge_seed` formula and the canonicalization deferred to Phase 2
|
||||
(§2.2).
|
||||
- Sovereignty rule (chain law local, bridge law translation-only).
|
||||
- **Retroactive-validation appendix** explicitly naming #000066 /
|
||||
#000056 / #000059 as Agreement / Translation / Embassy bridges
|
||||
respectively. This is the most load-bearing paragraph of Phase 1
|
||||
— the framework's primary contribution is naming, not
|
||||
prescribing new behavior.
|
||||
- Bridge witness pattern (§2.5) and the deferred `bridge` audit
|
||||
event type.
|
||||
2. **`arborist/world/bridge/__init__.py`** — namespace stub mirroring
|
||||
`arborist/world/__init__.py` discipline. `BRIDGE_VERSION =
|
||||
"v0-draft"`, `STATUS = "namespace_reserved"`. No exports.
|
||||
3. **Joseph memory** (`joseph_trudojo_6dim_spatial_ontology.md`)
|
||||
extension — fold the bridge framework into the existing reference
|
||||
memory so future attribution stays unified.
|
||||
4. **No bench, no KATs, no SQL changes, no `cache_key` extension, no
|
||||
new `audit_mode` token, no `governance_policy_hash` field, no
|
||||
verifier change.**
|
||||
|
||||
**Phase 2** (separate ticket, post-Phase-1 paper review):
|
||||
`pi_star/bridge-seed@v1` registered with the full
|
||||
canonicalization per §2.2 decisions. KATs at
|
||||
`bench/fixtures/bridge-seed/known-answer-tests.jsonl` matching
|
||||
#000070's discipline.
|
||||
|
||||
**Phase 3** (separate ticket):
|
||||
- `arborist/world/bridge/{agreement,translation,embassy}.py` kernels.
|
||||
- `bridge_atlas` schema.
|
||||
- `arborist.store.append_audit` extended for `event_type='bridge'`.
|
||||
- Multi-instance bridge discovery + establishment protocol
|
||||
(`arborist/mesh/` integration).
|
||||
- Bridge revocation + decay semantics.
|
||||
|
||||
**Phase 4** (separate ticket, depends on #000015):
|
||||
- Cross-domain bridges — bridging arborist v9.8 language claims into
|
||||
v7-W spatial commitments via the #000015 π* composition theorem.
|
||||
This is where the agi-axis composition lives.
|
||||
|
||||
## 4. Implementation sketch (Phase 1 only)
|
||||
|
||||
```python
|
||||
# arborist/world/bridge/__init__.py
|
||||
"""``arborist.world.bridge`` — v7-W bridge-grammar substrate (#000071).
|
||||
|
||||
Reserved namespace. The bridge-grammar paper extension at
|
||||
``docs/_source/merkle-agi-v7w-spatial-temporal.rst`` §7 specifies the
|
||||
contract; this package will host the implementation when fox
|
||||
prioritizes per-bridge-type kernel work.
|
||||
|
||||
Status: namespace stub only. No kernels, no schema, no API surface
|
||||
yet. Importing this package succeeds (the module loads and reports
|
||||
its draft version) but nothing else is exported.
|
||||
|
||||
Future shape (per Phase 3 ticket roadmap):
|
||||
|
||||
::
|
||||
|
||||
arborist/world/bridge/
|
||||
├── __init__.py # this stub
|
||||
├── agreement.py # `bridge_kind='agreement'` kernel
|
||||
├── translation.py # `bridge_kind='translation'` kernel
|
||||
├── embassy.py # `bridge_kind='embassy'` kernel
|
||||
├── seed.py # bridge_seed canonicalization (Phase 2)
|
||||
├── atlas.py # bridge atlas (multi-instance)
|
||||
├── audit.py # `event_type='bridge'` writer
|
||||
└── adapters/ # translator adapters live here
|
||||
|
||||
The substrate paper's hard constraint applies: chain law remains
|
||||
local; bridge law governs translation; no bridge may overwrite
|
||||
native chain law.
|
||||
|
||||
Retroactive-validation appendix (paper §7.4): the following arborist
|
||||
primitives are *already* bridge-shape patterns and remain so when
|
||||
this namespace ships:
|
||||
|
||||
- #000066 cold-pack graft mode → Agreement bridge
|
||||
- #000056 Operation Sandwich → Translation bridge
|
||||
- #000059 bounded-ingestion graveyard (proposed) → Embassy bridge
|
||||
"""
|
||||
|
||||
from __future__ import annotations
|
||||
|
||||
|
||||
__all__ = ["BRIDGE_VERSION", "STATUS"]
|
||||
|
||||
|
||||
BRIDGE_VERSION = "v0-draft"
|
||||
"""Draft bridge-grammar version. Bumps on every spec change before v1
|
||||
freeze. Once a kernel ships, BRIDGE_VERSION pins the manifest version
|
||||
the kernel emits."""
|
||||
|
||||
|
||||
STATUS = "namespace_reserved"
|
||||
"""Reservation status. Becomes ``kernel_in_progress`` when the first
|
||||
bridge kernel lands; ``v1`` once all three bridge kinds have passing
|
||||
tests + bench fixtures + multi-instance atlas."""
|
||||
```
|
||||
|
||||
Paper section template — to be drafted in
|
||||
`docs/_source/merkle-agi-v7w-spatial-temporal.rst` §7:
|
||||
|
||||
- §7.1 Problem statement (§1.1 of this ticket)
|
||||
- §7.2 Joseph framework (§1.2 verbatim)
|
||||
- §7.3 Three-kind taxonomy (§2.3 formalization)
|
||||
- §7.4 **Retroactive-validation appendix** (§1.3 table, expanded)
|
||||
- §7.5 Bridge-seed canonicalization (§2.2 deferred to Phase 2)
|
||||
- §7.6 Sovereignty rule
|
||||
- §7.7 Bridge witness pattern + `event_type='bridge'`
|
||||
- §7.8 Privacy carries through from §6
|
||||
- §7.9 Out-of-scope: SLAM, ZK, per-bridge-type kernels, atlas
|
||||
|
||||
## 5. Scope boundaries (what this ticket does NOT do)
|
||||
|
||||
- **No per-bridge-type kernel code.** `agreement.py`,
|
||||
`translation.py`, `embassy.py` are Phase 3 tickets.
|
||||
- **No `bridge_seed` canonicalization.** Phase 2 ticket; this ticket
|
||||
deliberately defers to avoid premature locking.
|
||||
- **No `pi_star/bridge-seed@v1` registry slot.** Phase 2.
|
||||
- **No bridge atlas schema.** Phase 3.
|
||||
- **No `event_type='bridge'` writer.** Phase 3.
|
||||
- **No `bridge_canonicalization_version` cache-key dimension.** Phase
|
||||
3 (and only with explicit fox + dav1d sign-off — adding a 10th
|
||||
cache-key dimension is consequential).
|
||||
- **No mesh-layer changes.** `arborist/mesh/` group-key state machine
|
||||
stays unchanged; Phase 3 will extend.
|
||||
- **No KATs, no bench.** Doc-only Phase 1.
|
||||
- **No `Document.extra` extensions.** Bridges do not live on
|
||||
documents.
|
||||
- **No new `audit_mode` token.** Bridges produce commitments, not
|
||||
warrants.
|
||||
- **No retroactive code change to #000066 / #000056 / #000059.** The
|
||||
retroactive-validation appendix is *naming*, not *refactoring*.
|
||||
Each existing primitive stays where it is, doing what it does.
|
||||
Only the paper picks up the bridge-shape vocabulary.
|
||||
- **No #000015 generalization at Phase 1.** Cross-domain bridges
|
||||
(language ↔ spatial) are Phase 4.
|
||||
|
||||
## 6. Cross-references
|
||||
|
||||
| Ref | Title | Relationship |
|
||||
|---|---|---|
|
||||
| #000070 | Spatial-anchor π*_w_object (Joseph 6-dim) | **Adjacent axis**, opened same day. #000070 is intra-chain object identity (one hash → one object inside one world); #000071 is inter-chain treaties (a bridge between two worlds). Different axes; #000070 dav1d review proceeds independently. |
|
||||
| #000013 | Spatial-temporal substrate (v7-W) | Parent. The bridge layer extends the v7-W paper with axis 2. Reopens #000013 status from `namespace_reserved` to `kernel_in_progress` once this Phase 1 paper extension lands. |
|
||||
| #000066 | Cold-pack overlay / graft mode | **Retroactive validation — Agreement bridge.** Already shipped (scaffold). Phase 1 names graft-receipt as the canonical Agreement bridge witness pattern; no code change to #000066 itself. |
|
||||
| #000056 | Operation Sandwich (cross-language MT) | **Retroactive validation — Translation bridge.** Already shipped. opus-mt model hash IS the `translator_id`; Phase 1 names sandwich as the canonical Translation bridge. |
|
||||
| #000059 | Bounded-ingestion graveyard (proposed) | **Retroactive validation — Embassy bridge.** Joseph's "foreign object with limited rights" maps one-for-one to graveyard semantics. Phase 1 names this. |
|
||||
| #000001 §7 | Cross-language transforms | Companion to #000056; same retro-validation as Translation bridge. The "fail-closed reject DAG" for `CROSS_LANGUAGE_UNSUPPORTED` is the `no_bridge` outcome from Joseph's §6. |
|
||||
| #000015 | π* cross-domain composition | Future. Cross-domain bridges (language ↔ spatial) are Phase 4; #000015 supplies the composition theorem. |
|
||||
| #000018 | Soft-hash covert channel | Hard-hash discipline inherits. Bridge seeds are hard-channel commitments. |
|
||||
| #000035 | PRG choice (φ_PRG HMAC-SHA-512) | Phase 2 `pi_star/bridge-seed@v1` will need its own seed (`bridge_anchor_seed`) distinct from `spatial_anchor_seed` (#000070) and `anchor_prg_seed` (#000035). Same domain-separation discipline. |
|
||||
| #000037 | Controller / consensus | Phase 3 bridge atlas may need multi-peer consensus on bridge establishment; #000037 territory. |
|
||||
| #000049 | Attribution-aware grounding check | Sibling-split pattern reference. The bridge framework is exactly the kind of architectural-inflection split where a separate dav1d-review surface is correct (CLAUDE.md memory `feedback_ticket_proliferation`). |
|
||||
| v7-W paper | `docs/_source/merkle-agi-v7w-spatial-temporal.rst` | Specification this ticket extends with §7. |
|
||||
| Joseph framework (6-dim) | Memory: `joseph_trudojo_6dim_spatial_ontology.md` | Same memory file extended to cover both frameworks. Sibling axes; one author. |
|
||||
|
||||
## 7. Five-step alignment
|
||||
|
||||
1. **Requirements less dumb.** Joseph (@TrudoJo) authored both
|
||||
frameworks (6-dim 2026-05-31 + bridges 6 hours later same day);
|
||||
fox brought both in. Names, not departments.
|
||||
2. **Delete the part or the process.** Phase 1 is paper-only — no
|
||||
code lands. The strongest deletion is the *non-decision* to
|
||||
defer bridge-seed canonicalization to Phase 2 instead of locking
|
||||
it now. Premature canonicalization would foreclose
|
||||
per-bridge-type kernel decisions. ~50% of "we could write Phase
|
||||
1 with seed canonicalization included" deleted.
|
||||
3. **Simplify.** One paper section extension; one namespace stub;
|
||||
one memory update. No new code surface. Phase 1's primary
|
||||
contribution is *naming what we already do*.
|
||||
4. **Cycle time.** Doc-only Phase 1 lands in one PR (~400 lines of
|
||||
prose); no test harness needed.
|
||||
5. **Automate.** No automation surface — there is no per-bridge-type
|
||||
automation to add until Phase 3 kernels exist.
|
||||
|
||||
## 8. Open questions for dav1d
|
||||
|
||||
1. **§2.1 — doc-only Phase 1 vs paper + π*_w_bridge registry slot.**
|
||||
Recommendation A (doc-only) defers bridge-seed canonicalization to
|
||||
Phase 2 to avoid premature locking. Acceptable, or should Phase 1
|
||||
ship the `pi_star/bridge-seed@v1` slot to lock canonical bytes now
|
||||
while three implementation tickets are still ahead?
|
||||
2. **§2.2 — `chain_id = governance_policy_hash` vs v7-W manifest
|
||||
hash.** Recommendation `(a)` covers QA-policy churn. Acceptable,
|
||||
or does the chain identifier need narrower semantics (one chain
|
||||
per substrate-manifest version, ignoring QA changes)?
|
||||
3. **§2.3 — three-bridge taxonomy completeness.** Joseph's
|
||||
framework names Agreement / Translation / Embassy plus the
|
||||
Quarantine and No-bridge non-bridge outcomes. Does the taxonomy
|
||||
cover all cases dav1d has seen, or is there a fifth case (e.g.
|
||||
*partial-translation bridge*, where the translator handles some
|
||||
fields but not others)?
|
||||
4. **§2.3 — Translation bridge's translator integrity.** Phase 1
|
||||
spec says translator identity hash binds into `bridge_seed`.
|
||||
Should the spec also require the translator's *implementation*
|
||||
(not just identity) to be content-addressed (cf. #000049
|
||||
model-in-proof-path cage), or is identity-hashing sufficient?
|
||||
5. **§2.5 — bridge witness via `event_type='bridge'`.** Phase 3
|
||||
would extend `arborist.store.append_audit` with this. Confirm
|
||||
the audit-chain composition rule from #000066 (graft receipt
|
||||
as bookend witness) generalizes cleanly to all three bridge
|
||||
kinds, or are Translation / Embassy witnesses structurally
|
||||
different?
|
||||
6. **§2.6 — `audit_mode` discipline for translated objects.**
|
||||
Confirm that a translated object riding a Translation bridge
|
||||
can be promoted to the target chain's warrant-eligibility pool
|
||||
only if (a) target-chain verifier accepts source-language
|
||||
evidence in its own language *under the existing rules*, and
|
||||
(b) the translator hash matches the bridge_seed-bound one. No
|
||||
new audit_mode token; the existing four-rung ladder governs.
|
||||
7. **§2.7 — bridge privacy class.** Should the bridge-establishment
|
||||
event itself be public-by-default, or should ZK-with-selective-
|
||||
disclosure be the default for bridges between non-public chains?
|
||||
#000016 follow-up.
|
||||
8. **§2.8 — endianness.** Inherited from #000035 / #000070;
|
||||
confirm reuse.
|
||||
9. **Phase 2 KAT count.** Phase 2 `pi_star/bridge-seed@v1` will need
|
||||
KATs. Recommendation: 10 matching #000035 / #000070 discipline.
|
||||
Larger? Adversarial vectors should include identical
|
||||
`(src_chain_id, tgt_chain_id)` with different `src_rule_v`
|
||||
(i.e. same chain, different rule version — same-chain rule-bump
|
||||
case) so the canonicalization can't quietly collapse them.
|
||||
10. **Paper amendment wording — bridge framework.** Default draft:
|
||||
"The bridge-grammar layer formalized in this section follows
|
||||
the inter-chain treaty framework presented by Joseph (@TrudoJo)
|
||||
on 2026-05-31, sibling to the procedural-spatial framework
|
||||
that drives axis 1 (#000070)."
|
||||
|
||||
---
|
||||
|
||||
**Land sequence on go:**
|
||||
|
||||
1. Land this ticket file + `Next ID` bump + index row + #000070 §6
|
||||
cross-reference + Joseph memory extension (one commit).
|
||||
2. dav1d Phase 1 review (paper extension + retro-validation appendix).
|
||||
3. fox go.
|
||||
4. Implementation PR: substrate paper §7 extension +
|
||||
`arborist/world/bridge/__init__.py` namespace stub. ~400 lines of
|
||||
prose + ~30 lines of stub.
|
||||
5. Memory update: flip `joseph_trudojo_6dim_spatial_ontology.md`'s
|
||||
bridge-framework section from "cite when used" to "used in
|
||||
#000071, landed `<sha>`".
|
||||
6. Open Phase 2 ticket for `pi_star/bridge-seed@v1` canonicalization
|
||||
when fox prioritizes.
|
||||
Loading…
Add table
Add a link
Reference in a new issue