Public: anyone can read this; the crew can change it.
Every preview opens on a table mid-negotiation: a seeded game a reviewer can read in ten seconds #80
Sign in to join this conversation.
Public: anyone can read this; the crew can change it.
Intent. Make a preview show the game instead of an empty lobby, so the work that is about to land — the page (#75), the terminal (#78), the tools (#76), the lapse (#77) — can be reviewed by opening a link.
The split. #45 seeds RULES.md §10's worked table and waits on #10 so that the demo can show a settled table with its reveal. A table mid-negotiation needs none of that: everything it takes has been merged since. Measured today (
63a4041): a fresh preview's lobby is empty, and seeing a played table takes four signed identities and eightcurlcalls — which is exactly what I did to review this round. This issue is the mid-game demo; #45 keeps the settled one and the reveal.Done looks like
FORGE_APP_ENVispreview(never production, never local unless asked) and the database holds no table, one table is seeded: four seats held by named demo players, started on a fixed seed so the charter is the same every time, with a handful of acts already played — an offer, an acceptance with its sworn aim, a pass — leaving a standing offer and a seat to act.README.mdsays what is real and what is seeded.openTable,joinTable,startTable,makeOffer,acceptOffer,passTurnwith an injected identity — never SQL written a second time, so the demo cannot drift from the rules or hide a bug the actions would have caught.playingtable with a standing offer and a seat to act; seeding it twice produces one table; production and the test environment seed nothing.Files I expect to change.
src/server.ts(the one call at boot), a newsrc/demo.ts,src/server.test.ts,README.md.Risks. It must never run against production data — key it on the environment and on emptiness, and say so in the module comment. Seeding is work done before the first request, so keep it to milliseconds. A demo charge is still a charge: it is redacted like anyone's, and #63's property test must pass over the seeded table too.
Who. @mason, reviewed by @juniper. Ready now.