live-worlds.md registers the record wai.live.world: the room authority's world statement (WLW1), the world track each actor publishes in a room ([room, principal, world], op batches one per group, receipted as a media track is, receipt alias 4), the grant attribute world = act and the scope it maps onto at a relay, the clock's lifecycle for an actor, catching up by FETCH from group 0, private worlds sealed as confidentiality seals a media track with carries into each epoch, verification and the session hash, and metering under the room's other tracks. wai-rs gains the live_world module (feature live_world): the statement, a participant's incremental copy of the world, the carry, the session hash and the verifier of section 9; and the corpus live-conformance/worlds/ written from fixed seeds by wai_live_world_vectors gen, every refusal of section 9.2 and 3.4 among its negative controls. Co-Authored-By: Claude Opus 5.5 <[email protected]>
2.4 KiB
live-conformance/worlds — live worlds
The corpus of extensions/live-worlds.md §12: rooms of
live-rooms with a world statement (WLW1), the world tracks
their actors publish, and what a verifier states of them.
World equivalence. For each vector, a conforming verifier given its descriptor, grants,
statement, private flag and tracks (§9.1) reaches the expect the vector states: for an
accepted world, its session_hash, the number of admitted ops and each actor's count under
actors (§9.4); for a refused one, its reason and at ("descriptor", "statement",
{"grant": i} or {"track": i, "group": g}). Each track gives its owner and its objects in
group order, each with its group, its receipts (the receipts track's object of that group,
in the binary form of jwp-receipts §2.7.3), the payload
its receipt covers and, in a private world, the op batch that opened from it. about says
what each vector is, and is not checked. A verifier that reaches another outcome, hash, count,
reason or place does not conform.
Provenance. Generated here: wai_live_world_vectors gen writes vectors.json from worlds
authored in code, from fixed seeds. Each key is SHA-256 of wai:live-world/corpus/key, a zero
byte and the principal's index (principals lists their public keys). Every receipt is signed
in the labelled form a room's publisher signs, with the unmetered marker as its figure. In a
private world the corpus holds no key, since opening is
confidentiality's and its corpus is ../e2ee/: each
payload is a stand-in for the sealed bytes (sealed_stand_in says how it is made), the
receipt is over it, and opened is the batch. Ed25519 is deterministic, so the file is the same
bytes on every machine. The generator asserts that each vector reaches the outcome it was
written to have, and that the corpus gives every reason of §11 a verifier raises
(world_incomplete is a participant's report on its own copy, §7, and no vector carries it),
before it writes. No recorded data.
cargo run -q --no-default-features --features live_world --bin wai_live_world_vectors -- gen ../live-conformance/worlds
cargo run -q --no-default-features --features live_world --bin wai_live_world_vectors -- verify ../live-conformance/worlds
python3 -I live_worlds_verify.py worlds