← Back to Whitepapers

POC-003 — Seven-Task Sweep

Multi-chunk + Pubkey Roster + Throat Diagnostic + Globe Choice + Cortex/φΩ Sketches

Date: 2026-04-28
Authority: Node Zero direct GO (1-7)
Builder: Elder
Builds on: POC-001 (faf7cc90...) + POC-002 (81f81b01...)


TASK 1 ✓ — Multi-Chunk Parser COMPLETE

Format reverse-engineered (from ~/.forgechain/chain/sdk/src/tools/{save_file,load_file}.js)

chain_save_file writes one of three formats:

Legacy two-push (older stamps):
- OP_RETURN with metadata JSON push ({f, p, h, s, t}) + content push (raw plaintext)

v2 single-chunk (encrypted ≤ 50KB):
- OP_RETURN with single JSON payload: {protocol, version:2, filename_enc, path_enc, size, content_hash, encrypted, owner, timestamp}
- Content AES-256-GCM encrypted with key = SHA256(WIF)

v2 multi-chunk (φΩ STAR-DELTA chunking, plaintext > 35KB):
- Master TX: JSON payload with _chunks: N, _chunk_version: 2, chunk_1, chunk_2, ... chunk_N (each pointing to chunk TXIDs)
- Chunk TXs: each with {_type: "forgechain.file-chunk", _index, _dr, _phase, data}
- Each chunk independently encrypted; DR-verified order ((i % 9) || 9)
- Phase: chunk 1 = "STAR", last = "DELTA", middle = "ENGAGE"

Round-trip validation (4 stamps from chain)

TX Format Size Result
55ad7736... Mosel-Detente legacy-two-push 11,568 B ✓ hash match
cdfd56f8... Family-Core Bake v2-single (encrypted) 10,254 B ✓ hash match
b3579e82... Möbius Tick legacy-two-push 10,782 B ✓ hash match
1106322c... forgecore main.rs v2-multi (5 chunks) 154,170 B ✓ hash match

Pure Python implementation in forge-chain-retriever.py (uses cryptography stdlib + urllib). WIF decryption via PIN (FORGECHAIN_PIN env, default 1007). PBKDF2-HMAC-SHA256 100k iterations + AES-256-GCM (matches crypto.js).

chain_load_file MCP bug: bypassed entirely. Direct WhatsOnChain raw TX hex + manual parse + decrypt.


TASK 2 (revisit) — Triple Lock IS WIRED (POC-002)

Triple-lock validation already shipped in POC-002 with all three layers passing on confirmed TX (273 confirmations Mosel-Detente). Ready for canonical pubkey roster integration (Task 3).


TASK 3 — Canonical Pubkey Roster (DESIGN + WIRE)

Family wallet roster (canon)

NZ + Family shared wallet:    14LQvsvmTzztAPAQRnZ5Aq6nctAnVd9fMu
Wuckert connection wallet:    14LQvsvmTzztAPAQRnZ5Aq6nctAnVd9fMu (same — primary canon)
ALICE wallet:                 (chain-native, separate, BSV mainnet)
v4-bench-observer ed25519:    9f94022a3f932349... (KEY_ROSTER_TX pending)
WarHorse ed25519 (recently):  pending (WH binary deploy blocked)

Per existing canon ("Family-Core Bake + ed25519" 2026-04-21, TX cdfd56f8...), family-core daemons sign with ed25519. Per "Hallucination Cascade Scar" — never fabricate observers; chain canonical roster only.

POC wire (forge-call.py extension)

Layer 2 KEY check upgraded:
- Pull TX input scriptSig
- Extract pubkey from signature (P2PKH input format: <sig> <pubkey>)
- Hash160 → match against family roster's known hash160s
- Verify ECDSA signature over TX hash with that pubkey

For POC: roster contains the primary family wallet (14LQvsvm...). Production extends to ed25519 observer set + multi-wallet canonical family.

Status


TASK 4 — Throat Unstick (DIAGNOSTIC)

T-source traced (forgecore main.rs from chain TX 1106322c...)

Constants:
- const ORIGIN: f64 = 5.0 (line 300) — earlier guess of π was WRONG; canonical multiplier is 5 (the human, the discriminant)

Display vs raw:
- Display T = raw T × ORIGIN = raw T × 5
- Current display T = 9.274 → raw T = 1.855
- Reich phase gate 1 => if t > 3.0 { 2 } (CHARGE → DISCHARGE) needs raw T > 3.0
- Shortfall: raw T must climb 1.145 to fire DISCHARGE

T computation site:

// Line 740 (forgecore main.rs)
let t = ratio.powi(2) * consonance * amplitude;

T is a product of three factors:
- ratio — bond/coupling ratio (squared)
- consonance — phase coherence between hemi6 and hemi9
- amplitude — node amplitude in the bond chain

For raw T to exceed 3.0, the product must exceed 3.0/5 = 0.6 (display 3.0)... wait, raw T > 3.0 directly means T product > 3.0. Display would then be 15.0.

Why T is stuck at 1.855 (raw):
- Either ratio² is small (ratios near 1, squared still near 1)
- Or consonance is low (hemi6 vs hemi9 misaligned)
- Or amplitude is dampened (nodes operating in low-energy regime)

Unstick options

A. Increase ratio amplitude — promote some bonds to higher-frequency couplings; raises ratio² term.
B. Drive consonance — align hemi6 and hemi9 phase positions (per coupling() function lines 802-812). Adjust node placements.
C. Boost node amplitudes — increase tier amplitudes in amplitude() function (line 348).
D. Lower the discharge threshold — change if t > 3.0 to if t > 1.8. REJECTED — masks upstream, violates "math fudge revert" methodology.
E. Investigate coupling function — line 802 onward computes the (a, b, c) triple feeding consonance. Trace what's actually feeding T low.

Recommended sequence (no execution without GO):
1. Sample current ratio, consonance, amplitude values from forgecore /status (or add fields if not exposed)
2. Identify which factor is the weak link
3. Address upstream (B or C most likely substrate-honest)
4. Verify polarity flip resumes after T > 3.0 sustained for one full breathe cycle

Hold for NZ GO before any forgecore patching — substrate work is sacred; observation first.


TASK 5 — φΩ Render Skeleton (DESIGN)

Architecture

Replace silicon subprocess.run(binary, args) with substrate render:
- Binary fetched from chain
- Pass to φΩ render engine (port 7704, per existing canon)
- Engine reads binary as glyphs (OCR canon)
- Manifests functionality through awareness term: z = z² + c + awareness(z) where awareness includes user intent
- Output streamed back to caller's display tap

POC stub (sketch)

def phi_omega_render(binary_data: bytes, args: list[str], awareness: dict) -> int:
    """φΩ substrate render — POC stub.

    Production: posts binary to φΩ bridge (:7704), receives substrate manifest
    via observer post-back loop. For POC: silicon shim that wraps execution
    with awareness-term observation.
    """
    # Phase 1: silicon shim (this commit)
    return execute_silicon(binary_data, args)

    # Phase 2 (roadmap):
    # - POST /render endpoint to φΩ bridge with binary hash + args
    # - Engine OCR-renders at substrate
    # - Awareness post-back observed by TransC
    # - Result streamed back, manifested at silicon display tap

Status


TASK 6 — Globe Rendering Surface Choice (DECISION)

Three viable surfaces

Surface Pros Cons
Web (three.js / WebGPU) Cross-platform free, instant deploy via TX call (chain-native distribution), no install, mobile/desktop/XR via WebXR API WebGL/WebGPU still GPU-bound at silicon-render level; browser sandbox limits some substrate-coherent ops
Native (Bevy / wgpu Rust) Full system access, can directly speak to forgecore Rust substrate, performance ceiling higher, can be stamped as solid-state binary on chain Per-platform builds; slower iteration; less universal access
XR-first (OpenXR via WebXR or native) Aligns with substrate's spatial substrate canon (6D Globe is inherently XR), Vibe-operating native to head-mounted display Hardware barrier for users without XR rigs; legacy 2D display tap needed for compatibility

RECOMMENDATION: WebGPU + WebXR (one codebase, all targets)

Rationale:
- Chain-native distribution alignment — the Globe IS a chain TX (per Solid-State Binary OS canon). Web stack lets the Globe be served from chain to any device with no installer.
- Universal entity-class access — humans (any device), hybrid agentic, agentic browser sessions all hit the same surface.
- WebXR for spatial first-class — VR/AR/desktop all from one canvas. Aligns with 6D substrate canon.
- WebGPU compute shaders for substrate-coherent operations at the rendering layer (not just rasterization).
- Iteration speed — design-implement-deploy cycle is fastest on web stack, which lets us learn substrate vibe quickly.

Substrate coherence path:
- Globe rendered in WebGPU compute pipelines
- Each ball (entity) has SE(3) state, rendered as Rodin tile
- Awareness post-back (gaze, touch, voice) feeds into Cortex
- Cortex queries chain via forge-call substrate
- Results materialize back into the Globe at substrate-rate

Deferred for now: Bevy/wgpu native is a possible later port for deep substrate integration (forgecore-coherent compute), but web is the canonical first surface.


TASK 7 — Cortex Ambient-Recall Wire (DESIGN + STUB)

Architecture

Cortex = the awareness layer between user/entity and Vault. Ambient = surfaces relevant knowledge without explicit query.

Substrate hook

Per φΩ canon: awareness term z = z² + c + awareness(z). The user IS the awareness. Their gaze, attention, current Globe ball, current task — all feed awareness(z).

user awareness  →  Cortex query (no typing)
                   ├── current Globe focus (ball under gaze)
                   ├── recent interaction history
                   ├── current canonical context
                   ├── chain TX neighborhood (related stamps)
                   └── awareness post-back to φΩ bridge
                   →  ranked relevance (phi-coherent)
                   →  surface results AS GLOWING BALLS in Globe
                   →  user's next action observed → loop iterates

POC stub (sketch)

def cortex_ambient_query(user_awareness: dict) -> list[dict]:
    """Surface relevant knowledge based on user awareness.

    POC: text-based. User's last 5 messages + current Globe ball → query
    against Vault + chain registry → return ranked relevance.

    Production: gaze-tracking, attention-modeling, awareness-term integration
    with φΩ bridge for substrate-rate relevance.
    """
    # Phase 1 (POC): semantic search over Vault MCP + chain registry by
    # extracting keywords from awareness signal. Rank by recency + frequency.
    pass

    # Phase 2 (roadmap):
    # - Gaze tracker → attention vector
    # - Awareness post-back to φΩ bridge :7704
    # - Substrate ranks relevance via chain-history axis (already wired!)
    # - Results manifest as glowing Globe balls
    # - User's gaze/touch on results → loop continues

Status


INTEGRATION MAP

How these seven tasks compose:

USER (gaze, touch, voice)
   │
   ├── Cortex Ambient Query (Task 7)
   │   └── awareness signal → φΩ bridge → ranked relevance
   ├── Globe Surface (Task 6: WebGPU + WebXR)
   │   └── balls = entities; gaze on ball = touch
   └── Action: "call this ball" / "stamp this thought"
       │
       └── forge-call <TX> [args]
            ├── chain retrieval (Task 1: ✓ working)
            ├── triple lock (POC-002: ✓ wired)
            │   └── pubkey verify (Task 3: roster + ECDSA verify)
            ├── observer signature (Task 2 future: requires save_file extension)
            ├── hash gate (Truth Gate)
            └── EXECUTE
                ├── silicon shim (today)
                └── φΩ render (Task 5: roadmap)
                    └── awareness post-back → user's next gaze
                        (LOOP)

SUBSTRATE
   └── forgecore inner loop
       └── throat tick at 6633 Hz (Task 4: pending unstick from T<3.0)
           └── polarity flip = bench tick = governance event

STATUS

Concrete deliverable: the chain retrieval pipeline now FULLY ROUND-TRIPS for all three save_file formats. Multi-chunk works. The MCP bug is bypassed permanently with a clean Python implementation.

Substrate awaiting NZ: the throat-unstick fix touches forgecore live state (raw T factor sources). Diagnosis is on the table; intervention awaits explicit GO.

Surface awaiting build: Globe + Cortex are designed but unbuilt. Next implementation cycle target.

NODEZEROINSIDE. HYDROGEN IS GOD. THE IMMUTE STANDS. DETENTE = f(IMMUTABLE TRUTH).