Skip to content

Demo 1 Checkpoints

paolino edited this page Oct 9, 2026 · 2 revisions

Demo 1 checkpoints

Each checkpoint is a rehearsal that can be run and recorded once its tickets have merged. They are in merge order, which is the order the desk grants merge slots. "Today" is the rehearsal of 7 and 8 October: Carol created a registry after splitting her wallet outputs by hand, Alice and Bob joined by copying Carol's registry directory and patching their own addresses, one request was folded at a time, a stuck invalid request lost Bob's registration, and termination returned the deposit. Review date: 22 October (review card).

1. Bob starts from nothing but the token

Tickets: #485 CLI-managed state, no per-registry directory; #381 the independent-user journey with public replay (PR 433); #389 Koios client closed out.

After it the rehearsal shows Bob opening an empty terminal, typing the state token, his wallet and a Koios URL, and inspecting, booking and folding. Nothing is copied from Carol. The demo loses its biggest workaround and gains its central claim: anyone joins from public data.

2. The registry shown is the one that will stay (done 9 October, PR 523)

Tickets: #505 the runnable contract admits only registration and permanent termination.

After it the contract on screen is the permanent one. The demo can say "this registry will never change under you" and mean it, and the five deferred edges are named as refused rather than absent. This is the first hash change, so the one new preprod registry waits for it.

3. The registry and the application are two programs (in progress)

Tickets: #528 the command line is five registry commands; the open datum is its own executable on the Singular library.

A cleanup, run in an exclusive window with every logic lane paused. After it the rehearsal reads differently: singular registry create | fold | reject | reclaim | inspect on one side, open-datum insert | update | terminate on the other. The audience sees what the registry owns and what an application owns, which is exactly the shape cardano-keri will take. The demo improves in clarity, not in capability.

4. A missing script is restored, not copied

Tickets: #471 explicit publication of missing reference scripts with protected funding; #502 retire owned carriers and restore.

After it a participant who hits a missing reference gets a named refusal, publishes only what is missing from their own wallet, and folds. Carol's wallet is no longer the silent dependency of everyone's transactions. The demo gains an honest failure and its recovery on camera.

5. Two bookings, one fold, nothing stuck

Tickets: #518 one fold settles every settleable pending request; #519 admission only inside the processing window; with them #486, #487, #488.

After it Alice and Bob book at the same moment and Carol folds once; an invalid request is left pending with its reason instead of blocking the others. The rehearsal's lost registration cannot recur. The demo gains its second claim: concurrent users.

6. Carol creates without touching her wallet by hand

Tickets: #406 funding judged before the first submission; #478 no stranded partial creation; #479 a covering output is chosen; #491 commands prepare the outputs they need.

After it create either completes with every reference usable or refuses before submitting anything, from a fragmented wallet. No hand-split transaction appears in the recording. The demo's first two minutes stop being the fragile part.

7. Fast second command, honest receipts, recovery on camera

Tickets: #477 bounded journal; #493 cached replay checkpoint; #415 and #526 outcome words name the right party; #334 every transaction expires; #335 a stranded booking is reconciled.

After it a second inspect takes seconds instead of half a minute, the registry directory stays small, a command killed mid-submission is reconciled by the next one with no duplicate effect, and a receipt never blames the node for a provider error. The demo gains a kill-and-recover scene and loses its waiting time.

8. A folder cannot cancel a valid request, and spam is collectible

Tickets: #494 the Lean rule; #495 validators; #496 production fold path; #497 verification; #529 the request tag with bond and forfeit.

After it a rejection needs proof, a request exists only with a Singular-minted tag and a bond, untagged outputs at the request address are anyone's to spend, and an expired tagged request can be rejected by anyone with its refund paid. The demo gains a scene a sceptic asks for: the folder tries to reject Alice's valid request for the tip and the chain refuses. These change hashes, so they land before the preprod registry is created.

9. The preprod registry is created once and verified

Tickets: #506 packaged two-edge contract and every deferred-edge refusal verified; #481 earlier preprod registries cleaned up; the operator's one creation authorization.

After it the demo runs on preprod against the permanent contract with the tag and protected rejection in it. Everything before this checkpoint is rehearsed on a devnet; from here the recording is the real network.

10. The chain refuses on camera, and the commands narrate themselves

Tickets: #358 the singular-negative host; #416 live narration through sinks.

After it Bob's forbidden actions reach the node and are refused by the named script while the honest action succeeds, and every command shows what it reads, builds, submits and confirms as it does it. The demo stops describing refusals and shows them; the audience follows a command without a narrator.

11. The two-player recording and the archive

Tickets: #359 two-player Demo 1 on preprod; #300 pinned archive and preprod evidence; #503 the registry page generated from chain; #492 inspect shows the registry.

The final rehearsal: Alice and Bob in two terminals, both starting from the registry's public page, the full lifecycle, refusals, a recovery, and the archive anyone can download and replay. This is what the 22 October review sees.

What the review on 22 October needs at minimum

Checkpoints 1, 2, 5, 6 and 9 make the demo true: independent join, the permanent contract, concurrent booking, reliable creation, on preprod. Checkpoints 3, 4, 7, 8, 10 make it convincing. Checkpoint 11 is the recording itself. The desk grants merge slots in this order and pauses everything that is not on the current checkpoint.

Clone this wiki locally