state jets redesign — track the evolved cybergraph
Abstract
The state jet set (specs/jets/state.md) encodes a key-value-database
mental model: cyberlink (exact) plus transfer / insert / update /
aggregate / conserve (templates), over five primitives READ / WRITE /
ASSERT_EQ / ADD / MUL. Cybergraph has since evolved into a UTXO-box +
polynomial-commitment + private-state model whose single primitive is the
cyberlink and whose single mutation is insert(signal). Three of the five
templates describe operations that no longer exist.
Genesis jets are frozen by axiom A3 (append-only). Freezing a state circuit carved against a dead model is the one mistake that is expensive to undo. This proposal rewrites the state jet set against the current cybergraph axioms (A1–A6) and BBG state model before any genesis commitment.
1. The drift
The state jet spec predates the current cybergraph. The model it was carved against is gone.
what cybergraph is now
One primitive — the cyberlink, a 5-tuple:
cyberlink(from: TokenId, to: TokenId, token: TokenId, amount: u64, valence: {-1,0,+1})
from/to are structural participants, token is the denomination,
amount is conviction stake, valence is a BTS epistemic prediction.
Transfer, withdraw, staking, burning, and aggregation are not separate
operations — they are cyberlinks with different field values.
One mutation — BBG exposes insert(signal), where:
signal = (ν, links, Δφ*, σ, height)
= neuron + cyberlinks + proven focus shift + STARK proof + block height
The model runs on:
- box model (UTXO-like) — cyberlinks destroy input boxes, create output boxes
- public/private split —
tois a stealth address → encrypted box inA(x); direct id → plaintext inbalances. One signal mixes both under one proof. - nullifier polynomial
N(x)= ∏(x − nᵢ) for spent-record tracking - six axioms A1–A6 + conservation A5 (Σφ* = 1) enforced in-circuit
- 11 public evaluation dimensions in
BBG_poly
the mismatch
| nox state jet | status against evolved cybergraph |
|---|---|
| READ / WRITE / ASSERT_EQ / ADD / MUL | ✅ valid — map to Lens.open / insert / eq / add / mul |
cyberlink (exact) |
⚠️ right name, wrong shape — old 2-tuple [from|to], not the 5-tuple signal |
transfer template |
❌ not a distinct op — a cyberlink field pattern |
insert template |
❌ collides with BBG's insert(signal); not a graph op |
update template |
❌ A3 is append-only — links are never updated, only down-weighted |
aggregate template |
❌ implicit via axiom A6 (axon-particle), not an explicit jet |
conserve template |
⚠️ real (A5) but belongs inside the signal circuit, not standalone |
| — | ❌ missing: box spend/create, nullifier check, public/private dispatch, valence/BTS |
The five primitives survive. The six jets do not.
2. What survives
READ / WRITE / ASSERT_EQ / ADD / MUL remain the correct Layer 1 decomposition. They are not jets — they are the pattern expansion every state circuit reduces to:
| primitive | nox patterns | role |
|---|---|---|
| READ(dim, key) → value | Lens.open (polynomial evaluation) | O(1) eval at (dim, key) |
| WRITE(dim, key, value) | axis (0) + cons (3) | build updated tree |
| ASSERT_EQ(a, b) | eq (9) | check field equality |
| ADD(a, b) → c | add (5) | field addition |
| MUL(a, b) → c | mul (7) | field multiplication |
These stay. 18 patterns are the axiom; state operations are derived.
3. Proposed state jet set
Collapse the six CRUD-era jets to the actual primitive plus the circuits the box model requires.
one signal jet (exact match)
Replaces cyberlink + transfer + update + aggregate + conserve.
Validates a signal against the axioms:
| check | axiom | constraints (target) |
|---|---|---|
| signature valid for ν | A2 (authentication) | — |
| links append-only | A3 (append-only) | — |
| participants exist iff linked | A4 (entry) | — |
| axon-particle H(from,to) induced | A6 (homoiconicity) | — |
| Σφ* = 1 after Δφ* applied | A5 (conservation) | — |
The signal jet is the cyberlink circuit, correctly shaped to the 5-tuple
and the impulse Δφ*. The 2-tuple [from|to] of the old cyberlink jet is
the shape error this corrects.
box sub-circuits
The UTXO model the evolved cybergraph runs on:
| jet | role |
|---|---|
box_spend |
destroy input box; authorize spend from from |
box_create |
create output box at to |
nullifier_check |
non-membership against N(x) (no double-spend) |
public/private dispatch
Not a separate jet — a branch inside box_create: to stealth →
encrypted record extends A(x); to direct id → plaintext balances[H(to‖token)].
One signal mixes both under one zheng proof.
fallback
Unrecognized formulas: full nox execution trace → SuperSpartan proof (~8 constraints per row). Unchanged.
4. Ownership
State is one of the registry's products (see decider-product for the
product principle): the cybergraph state machine. By the boundary rule
applied across the jet set, the authenticated state layer is bbg's. The
signal/box/nullifier circuits are bbg-owned; nox holds the formula-hash
anchors and the wrapper that delegates to the bbg state provider (today's
CallProvider). This mirrors decider→zheng (decider-product) and
hash→hemera — grouping by product, ownership by domain repo.
The current rs/jets/state.rs (transfer/insert/update/aggregate/conserve
delegating to CallProvider) is scaffolding against the dead design. It
must not ship as frozen genesis jets — the templates encode operations that
do not exist in the model bbg now implements.
5. Migration
- Rewrite
specs/jets/state.mdagainst axioms A1–A6, the box model, and the 11 BBG dimensions. Define the signal jet (5-tuple + Δφ*), the three box sub-circuits, and the public/private dispatch. - Cross-check the cyberlink shape with
cybergraph/specs/andbbg/specs/— the 5-tuple, signal structure, andBBG_polydimensions are the source of truth; the spec must quote them, not restate from memory. - Replace the formula builders in
rs/jets/formulas.rs(build_cyberlink_formulaand the five template tags) with the signal and box formulas. - Re-implement
rs/jets/state.rswrappers against the new formulas, delegating circuit logic to bbg. - Recompute genesis digests; update
compute_genesis_digests.
6. Why this blocks genesis
Genesis jets are frozen in the genesis BBG state by A3 (append-only). A frozen state circuit cannot be revised — only deprecated and worked around. The recursion jets are sound and can freeze today. The state jet set, as written, would freeze a 2021-era CRUD model into permanent genesis state. This is the single strongest "not ready for prime time" argument: correctness of the state circuits is a soundness property of the chain, and the current set is carved against a model bbg no longer implements.
7. Open questions
- Is
valence(BTS epistemic prediction) validated in-circuit at genesis, or deferred? It affects the signal jet's constraint count. - Does
box_spend/box_createwarrant separate formula hashes, or onebox_transitionjet with a direction field? (Leaning: one jet, direction field — fewer frozen anchors.) - Conservation A5 (Σφ* = 1) via the tri-kernel — is the stochastic update proven inside the signal jet, or as a separate per-block circuit? The tri-kernel is a composite (diffusion + springs + heat); its proof shape needs cross-checking with bbg.
- Coordinate the genesis-digest source of truth with decider-product — both proposals move circuit ownership out of nox while keeping anchors.