THEPROTOCOL

MERIDIAN

#1 of 28Tier I · fully worked8 of 8 steps on built rails
Autonomous Treasury and Financial Operations

A treasury desk that runs at 03:14, with a named human behind every large movement.

Open the live chamber in the app
The animated flow, the attack replays and the deep architecture run there; this page is the reference text.

Who this serves

The problem

A corporate treasury runs on humans copying numbers between systems that do not trust each other, and the control model is a spreadsheet of who is allowed to approve what. Every organisation that has tried to automate it has hit the same wall: the moment software can move money without a person in the loop, nobody can answer the question the auditor asks, which is not "was it correct" but "who is liable."

The system

MERIDIAN is a treasury desk of thirty-one agents operating across three sovereign frames and eleven cloud registries. It runs continuously. At 03:14 the liquidity sentinel notices the Frankfurt operating account will breach its floor inside six hours and proposes a cross-frame swap, and the swap desk books it. The desk cannot move that much alone. It is the treasury’s own sub-agent: it holds no wallet, spends the treasury’s purse, and books each movement as a contract whose release answers to the treasurer’s mandate as that mandate stands at that moment. Its capability permit, cut that morning by the treasury agent, caps any single movement at 1,000,000 units and carries a daily budget debited atomically on the money axis, so two agents cannot both spend the last of it. Above 250,000, a release also waits for the treasurer herself. The swap it wants is 400,000.

So it does what a junior does. Its release waits on a mandate held by a named human being, who is asleep, and whose phone rings. The screen shows the canonical facts of the transfer as the server computed them, not as the requesting agent described them. She puts her thumb on the sensor. That unlocks a key inside the phone’s enclave which signs the hash of those facts, and the signature carries a bit set by the authenticator itself confirming a human was verified, a bit covered by the signature so it cannot be forged by the software asking for it. The swap settles at 03:16. The fee is carved by the same rail that moves the money. The ledger entry is signed, replayable, and identical on both frames.

By 06:00 the desk has moved value across nine accounts, rebalanced two pools, and settled fourteen invoices. Total supply of every currency involved is unchanged to the eighteenth decimal place, and an auditor nobody at MERIDIAN controls has verified that independently, four times, while they slept.

The cast and their ceilings

AgentRoleCeiling
liquidity-sentinelWatches floors and ceilings, proposes movementsRead-only on balances. Cannot transfer. Proposes only.
swap-deskExecutes approved FX routesThe treasury’s sub-agent, no wallet. Per movement 1,000,000, a daily budget debited atomically; above 250,000 the treasurer’s key.
invoice-settlerPays approved payablesTransfer scoped to counterparties on an allowlist
reconcilerCompares ledger to internal booksRead-only. Holds no spend permission of any kind.
treasurer (human)The Cockpit Card mandateUnderwrites the treasury agent for a declared scope; the swap desk’s releases answer to it. Authority re-derived every request.

The flow, step by step

  1. 03:14. The floor breach is six hours out. The sentinel proposes a swap.
  2. The desk asks for 400,000. Above 250,000, a named human confirms.
  3. Over the threshold. The release waits on the mandate, and a phone rings.
  4. A thumb on a sensor. The enclave signs the facts as the server computed them.
  5. Cleared, inside the mandate scope.
  6. The route crosses the pools at 03:16.
  7. The receiving frame credits the account.
  8. Every leg lands on the ledger, signed.
  9. An auditor nobody here controls confirms conservation. Again.

Each need, mapped to a live primitive

The needThe protocol primitiveStatus
Move valuePOST /teg/transfer and cross-registry transferLIVE
Cross-currency routingFX pools across sovereign frames, directLIVE
Per-agent spend ceilingIRONKEY L4 capability caveats, atomic budget debitLIVE
Named liable humanCockpit Card mandate (LIABILITY_MODE)LIVE (gated)
Human presence proofWebAuthn platform credential, userVerification requiredLIVE
Exactly-once executionIdempotency-Key, two-layer dedup (cache + ledger unique)LIVE
Supply conservationDelta = 0 invariant, independently auditedLIVE
ForensicsEvent ledger chain and windowed searchLIVE

The attack this chamber refuses: The compromised desk

The attack. swap-desk is compromised and attempts a 2,000,000 unit transfer to an address the operator controls.

Why it fails. resolve_capability intersects the permit’s caveats with the issuer’s current authority and clamps against the per-movement cap of 1,000,000 before anything is written. The request never reaches the money.

Rail S03 · Capability attenuation. A capability permit conveys its caveats intersected with the issuer’s current authority, nothing more.

What actually happens. No escrow movement, no event emitted, no fee. Delta unchanged, because deny-only gates sit in front of the money by construction. There is nothing to unwind.

The attack this chamber refuses: The compromised human

The attack. The treasurer’s own account is taken over, so the operator revokes her flag from the console. Her mandates are still on disk. The desk asks again.

Why it fails. Effective authority is re-derived on every request and never snapshotted. A revoked flag means every mandate leaning on it conveys nothing on the next request. No permit rotation, no session hunt.

Rail S05 · Re-derived mandates. Effective authority is recomputed on every request and never snapshotted.

What actually happens. The agent she underwrote is inert within one request. Nothing it attempts clears the gate, and every refusal is on the ledger.

Deep architecture

This is the shape MERIDIAN takes in a real estate: your sovereign frame beside a counterparty frame, the federation fabric between them, and your existing systems underneath. Nothing here is a box drawn for a slide. Every zone is a deployment, every edge is a rail that exists, and the trace below replays the transaction the page has been describing all along.

The deployment, traced

  1. Market data feeds the sentinel. It watches floors and ceilings; it cannot move a unit.
  2. The sentinel proposes a rebalance to the desk. A proposal is not an order.
  3. The treasurer’s mandate stands behind the desk: scope, ceiling, presence.
  4. The desk’s authority is checked at the gate on this very request: roles, spend policy, the mandate’s clamp.
  5. Approved. The desk escrows the route; its daily budget debits atomically.
  6. One movement, one event, append-only.
  7. The leg crosses the fabric with an idempotency key. A retry can never double it.
  8. The counterparty frame credits exactly once, under its own law.
  9. Their desk confirms the counter-leg.
  10. Their ledger writes the same settlement. Two sovereign books, one truth.
  11. Evidence exports to your books as signed events, not screenshots.

Adoption, phase by phase

Discover: Nothing of yours changes yet.

Pilot: The desk exists, at pocket size.

Production: Your frame, your law, real ceilings.

Federation: Growth becomes configuration.

Sizing

LevelWhatContainers
L1Use the network: your agents live on existing registries0 of yours
L2Run the desk: your agent runtimes via the SDK, registry hostedyour agents only
L3Sovereign frame: registry, TEG, EventStore, identity fabric under your lawa full frame, one VM up

The settlement path, as messages

sequenceDiagram
  participant OMS as OMS / intent
  participant Desk as swap-desk
  participant Gate as authority gate
  participant TEG as your TEG
  participant Fab as federation fabric
  participant PTEG as their TEG
  participant ES as event ledger
  OMS->>Desk: order intent (pair, size)
  Desk->>Gate: authority check (roles, mandate)
  Gate-->>Desk: clamped approval
  Desk->>TEG: escrow leg (idempotency key)
  TEG-->>ES: escrow event, append-only
  TEG->>Fab: cross-frame settle
  Fab->>PTEG: credit, exactly once
  PTEG-->>Fab: confirmation
  Fab->>TEG: settled
  TEG-->>ES: settlement + evidence chain
  ES-->>OMS: signed evidence export

Topology, as declared

flowchart LR
  SD["swap-desk agent"] -->|"contract release"| REG["registry (FastAPI)"]
  REG -->|"X-Capability-Token"| GATE{"resolve_capability<br/>caveats and budget"}
  GATE -->|"over threshold"| PUSH["push approval<br/>device enclave"]
  PUSH -->|"WebAuthn ES256, uv bit"| GATE
  GATE --> TEG["TEG layer<br/>atomic transfer + fee"]
  TEG -->|"/teg/fx/route"| FX["FX pools<br/>frame to frame"]
  TEG -->|"TokensTransferred<br/>TransactionFeeCollected"| ES[("event store<br/>immutable, CQRS")]
  ES --> AUD["independent auditor<br/>delta = 0"]

Standing it up

Runs beside what you already have

A full sovereign frame is nine containers and boots in about two minutes, on anything from a Raspberry Pi to a rack. That is cheap enough to run the whole system in parallel with the legacy stack: the old system keeps running, real work mirrors onto the rails, and you compare ledgers until the evidence settles the argument. Nothing is ripped out.

Planned: a public proxy library. Free, ready-made connectors for the systems above and whatever else a merge needs, so the bridge is an import, not an integration project.

What this does not claim