| Filename | Latest commit message | Latest commit date |
|---|---|---|
|
All checks were successful
wai-quantum WebGPU member / member · DX12 and Vulkan (cbio-windows) (pull_request) Successful in 12m1s
wai-web reach builds / wai-web reach · does this change touch it (pull_request) Successful in 5s
repository checks / lockfiles, tests in CI, workflow hygiene, spec and section references, public text (pull_request) Successful in 1m43s
standards workspaces build + test / which workspaces this change touches (pull_request) Successful in 30s
standards workspaces build + test / macOS energy backends (pull_request) Has been skipped
WAI conformance / does this change touch it (pull_request) Successful in 27s
WAI energy receipts / does this change touch it (pull_request) Successful in 13s
WAI HTTP delivery / WAI HTTP · does this change touch it (pull_request) Successful in 14s
WAI JPEG-AI whole decode (pinned inputs, required) / does this change touch it (pull_request) Successful in 10s
wai-web reach builds / wai-web reach builds · the package of record, every output as recorded (pull_request) Successful in 2m50s
WAI neural sink gates / does this change touch it (pull_request) Successful in 8s
wai-pack / wai-pack · does this change touch it (pull_request) Successful in 11s
wai-quantum WebGPU member / does this change touch it (pull_request) Successful in 9s
WAI mbt2018_mean integer decode (regenerated vectors) / does this change touch it (pull_request) Successful in 8s
wai-web wasm32 / does this change touch it (pull_request) Successful in 9s
wai-web reach builds / wai-web reach builds · this tree's wai-web, every rung on its engine line (pull_request) Successful in 4m48s
WAI conformance / quantum core and corpus under wasm32-wasip2 (wasmtime) (pull_request) Successful in 2m12s
WAI conformance / cross-arch byte-equality · linux (pull_request) Successful in 53s
wai-quantum WebGPU member / member · integrated GPU, Vulkan (framework-128gb) (pull_request) Successful in 7m21s
WAI energy receipts / energy receipts · linux (pull_request) Successful in 2m23s
WAI JPEG-AI whole decode (pinned inputs, required) / fetch pinned JPEG-AI inputs → whole decode + pixel hash, required (pull_request) Successful in 1m43s
WAI neural sink gates / model-free refusals of the neural sink (pull_request) Successful in 1m35s
WAI conformance / cargo-class corpora · linux (pull_request) Successful in 11m53s
wai-pack / wai-pack · linux (pull_request) Successful in 1m29s
wai-quantum WebGPU member / member · software Vulkan (linux) (pull_request) Successful in 2m44s
wai-quantum WebGPU member / shader checks · browser build · wasip2 inertness · MSRV (pull_request) Successful in 3m50s
WAI conformance / v2 vocabulary · manifests validate as stated (pull_request) Successful in 22s
wai-web wasm32 / wai-web wasm32 build · corpus, menu and writers (pull_request) Successful in 3m23s
WAI mbt2018_mean integer decode (regenerated vectors) / regenerate mbt2018_mean integer vectors → Rust decode, required (pull_request) Successful in 5m48s
wai-quantum WebGPU member / member · discrete GPU, Vulkan (jetson-hub) (pull_request) Successful in 22m12s
WAI conformance / cargo-class corpora · macos (pull_request) Successful in 10m42s
WAI conformance / cross-arch byte-equality · macos (pull_request) Successful in 25s
WAI conformance / codec wrappers · fuzz smoke, text decode limits, C entry points, provenance, the semantic path (pull_request) Successful in 1m1s
WAI conformance / delivery telemetry · CMCD and CMSD against an independent library (pull_request) Successful in 18s
WAI conformance / cross-arch byte-equality · linux-arm64 (pull_request) Successful in 24s
WAI conformance / cargo-class corpora · linux-arm64 (pull_request) Successful in 13m23s
WAI energy receipts / energy receipts · macos (pull_request) Successful in 1m49s
WAI conformance / C2PA manifest emission · signed, read back, validated (pull_request) Successful in 1m10s
wai-pack / wai-pack · macos (pull_request) Successful in 1m16s
WAI energy receipts / energy receipts · linux-arm64 (pull_request) Successful in 2m27s
WAI conformance / independent verifiers · claims, JWP, key discovery and integer payloads (Python) (pull_request) Successful in 14m57s
wai-quantum WebGPU member / member · Metal (macos) (pull_request) Successful in 3m16s
wai-quantum WebGPU member / member · browser WebGPU (macos) (pull_request) Successful in 1m57s
WAI HTTP delivery / HTTP corpus · falsify mutations 0/3 (pull_request) Successful in 47m34s
WAI HTTP delivery / HTTP corpus · falsify mutations 1/3 (pull_request) Successful in 46m23s
WAI HTTP delivery / HTTP corpus · falsify mutations 2/3 (pull_request) Successful in 46m41s
WAI HTTP delivery / HTTP corpus · falsify patches 0/3 (pull_request) Successful in 5m42s
WAI HTTP delivery / HTTP corpus · every patch and mutation in exactly one shard (pull_request) Successful in 5s
WAI HTTP delivery / HTTP corpus · falsify patches 1/3 (pull_request) Successful in 6m22s
WAI HTTP delivery / HTTP corpus · falsify patches 2/3 (pull_request) Successful in 5m52s
WAI HTTP delivery / cache rules · controls and labelled caches (pull_request) Successful in 1m15s
WAI HTTP delivery / HTTP corpus · verified both ways, and the differential (pull_request) Successful in 2m45s
wai-pack / wai-pack · the floor through a media prober (pull_request) Successful in 23s
wai-pack / wai-pack · linux-arm64 (pull_request) Successful in 1m18s
wai-pack / wai-pack · dependency licences (pull_request) Successful in 1m22s
wai-pack / wai-pack · independent verifier (Python) (pull_request) Successful in 4m20s
Co-Authored-By: Claude Opus 5.5 <[email protected]> |
||
| .. | ||
| README.md | ||
| vectors.json | ||
live-conformance/rooms — live rooms
The corpus of extensions/live-rooms.md §12: rooms, each
a signed WRD1 descriptor, its WRG1 grants, the head of its authority's key log, and its
principals' WEV1 chains, with the outcome a room verifier gives them; and the records of
the registered publish profiles.
Room equivalence. For each vector, a conforming room verifier given its descriptor,
its grants in order, its key_log_head (or none) and its chains (each one principal's
records in stream order) reaches the outcome the vector states (§9.4):
refuse: thereasonand where,at:["descriptor"],["key_log"],["grant", i], or["record", c, i]for recordiof chainc;gap: no record refused, and thegaps(principal, first and last seq not held), under the codedelivery_gap, with theroomid and the mergedorder;accept: theroomid; every grant's digest (grant_digests); the mergedorder(§9.2), each entry[chain, record, grant]with the digest of the grant the record was verified under, ornullfor a room key's record; the roomstate(§9.3); thetallyof the room's polls (live-events §7); and, per grant, themoqtscopes andrevalinterval it maps onto (§10.2).
A verifier that reaches another outcome, reason, place, gap, digest, order, state, tally or scope does not conform.
Provenance. Generated here: wai_live_room_vectors gen writes every descriptor, grant,
key-log head and record from rooms authored in code, from fixed seeds. Each key is SHA-256
of a fixed label and the principal's index, each nonce and viewer id likewise, every time
is a constant (the rooms' t0 is 2026-10-16T00:00:00Z), and Ed25519 signing is
deterministic (RFC 8032), so the file is the same bytes on every machine. The generator
asserts that each vector reaches the outcome it was written to have before it writes it.
The key-log heads are sealed by the reference's key log (jwp-receipts §7.2) under a fixed
root. The origins are .example names (RFC 2606). No recorded data.
Layout
One file, vectors.json:
principals: the keys, by name (informative).registered_profiles: each profile §8.2 registers, byname, with itsrecord(§8.1) in hexadecimal; a verifier compares its own table with them.vectors: each withname,about,descriptorandgrants(hexadecimal),key_log_head(a key-log revision's JSON text, ornull),chains(lists of records in hexadecimal),outcome, and as abovereason,at,room,gaps,grant_digests,order,state,tallyandmoqt.
state has present (each principal and its grant in effect, by principal), published
(each own track: principal, media kind, profile name, number of layers, by principal and
media code), slots (each slot in the descriptor's order: its live publisher, standby,
and the live publisher's precedence), tracks (the rendered Full Track Names of every
track a subscriber can reach, §6.1, sorted), and timeline (each change of a principal's
grant in effect, with its t).
Vectors:
- accepted rooms:
lesson(a director's remote record control of a performer, an audience under single-use grants, review and recording policies with a region pin, a key-log head revoking a grant and a viewer the room never admits),broadcast(one publisher, viewers voting, a moderator's decision, no key log, the authority its own clock),takeover,redundant_failoverandpromote_viewer; room_gap: a chain with a record not delivered;- one negative control per refusal, each a single defect: the descriptor truncated, with trailing bytes, of another version, with a flipped signature bit, with a tick of 0, with a registered profile changed, with a role beyond the ceiling, and with a recording policy whose jitter exceeds its commit interval; the key log missing, of another origin, re-signed wrongly, not listing the authority, and revoking it; a grant truncated, signed by another key, of another room, permitting a lifecycle kind, with oversized attributes, too long, beyond its role, beyond the room's ceiling, chained to nothing, and chained to another principal's; and in the records, a bad signature, the wrong room, a kind not in the grant, a participant's lifecycle event, events outside a grant's window, a principal not present, a revoked grant and a revoked viewer, a reused single-use grant, an unknown grant, another principal's grant, a second join, the participant limit, a malformed detail, every publish refusal, every exchange refusal, a takeover without higher precedence, both failover refusals, a command without its power, a grant's rate and payload bounds, and a stated tally the replay does not reach.
Running
cd ../../wai-rs
cargo run --no-default-features --features live_room --bin wai_live_room_vectors -- verify ../live-conformance/rooms
cargo run --no-default-features --features live_room --bin wai_live_room_vectors -- gen ../live-conformance/rooms # regenerate
cargo test --no-default-features --features live_room --test live_room
cd ../live-conformance
python3 live_rooms_verify.py rooms
wai_live_room_vectors verify and tests/live_room.rs require the file to regenerate
byte for byte and wai-rs to give every vector its outcome; the test also requires every
reason of §11 to refuse a vector and §11 to list exactly the reasons the reference reports.
live_rooms_verify.py is the second implementation, written from the extension's text and
sharing no code with wai-rs: it verifies every event with live_events_verify.py, the
live-events corpus's own second implementation, gives every vector the same outcome, and
requires the same coverage. Pass = an exit status of 0 from each.