Skip to main content
Settlement timeline in the treasury console

The settlement timeline: every saga, every step, and the transaction behind it.

The console (apps/console) is one Node process that owns the ledger and the runtime (Tempo vaults, partner webhooks, saga engine), serves a JSON API and the dashboard, and runs flows on request.
A public, read-only replay recorded from live testnet runs is at corridorapp.udokaam.dev/console.

Panels

FROST approvals

A shielded batch does not broadcast until enough signers approve. The console shows each pending batch with its recipients, USD and ZEC totals and invoice references, and one button per signer (customer approver, customer finance, Corridor). Once the threshold is met, the saga resumes and corridor-frost co-signs with exactly the approving signers.

The public replay

pnpm console:snapshot records every API response from a running console into apps/site/public/console/, next to the console page in replay mode:
  • Data comes from recorded JSON; no action can move funds.
  • Each flow button opens the recorded run of that flow with its explorer links.
  • The disclosure button exports the recorded testnet viewing key, so anyone can verify the shielded payouts independently.
  • The snapshot refuses to publish if any value from .env.local or any secret file under .keys/ appears in the recorded data.
The local console is unauthenticated by design for the demo. Its action, approval and disclosure endpoints must sit behind authentication and role checks before any hosted deployment.