A shared world that agrees with itself.
Two drivers, one byte-exact world.
Enter the world here and in a second tab or on a second device. The room takes two actors; a third visitor watches. Each actor drives its own agent, and each arrow-key press is a signed action op. The wire carries the action trace, not pixels: every tab replays the merged ops under canonical total order and renders the same integer world model, so the tabs converge on the same session hash, whatever order the ops arrived in. A tab that enters late fetches every actor's ops from the first and lands on the same hash.
What happens to each op
Entering, this tab makes its own Ed25519 key, and the room service grants it an actor's place in the room. Each action op is signed by that key, published as one object of the tab's own world track, and signed into that track's receipt chain. The room's relay accepts a world track only from its owner's grant, checks each object against its owner's receipt, and forwards it to every tab in the room. Each tab verifies every object it receives against its receipt, then checks each op's signature, its actor and its place in the actor's sequence before it replays the merged log.
Energy: not metered in this demo. This tab measures nothing, so each receipt it signs carries the unmetered marker, and the page shows no figure.
Where it lives
- In the standard: the live-worlds extension (
wai.live.world), which carries a shared world in a live room, and thewai.world.modelcapability, with the integer world engine this tab runs. The world's conformance is its merged ops and their session hash; this demo's integer renderer also makes every frame byte-identical. - The room: the reference room service, the relay and the browser client this page loads, Apache-2.0, in the open-standards repo, as the live room at /room/ runs them.
- Transport: Media over QUIC Transport (
draft-ietf-moq-transport-22), an IETF working-group Internet-Draft. This browser reaches the relay over its WebSocket binding.