open-standards/wai/live-conformance/README.md
Transaction Science a46eba3c0a
All checks were successful
joule-code conformance gate / Build + round-trip C1-C4 vectors (pull_request) Successful in 3m12s
joule-moq-room room service / joule-moq-room · does this change touch it (pull_request) Successful in 6s
joule-moq-web browser client / joule-moq-web · does this change touch it (pull_request) Successful in 6s
wai-web reach builds / wai-web reach · does this change touch it (pull_request) Successful in 6s
wai-web reach builds / wai-web reach builds · the package of record, every output as recorded (pull_request) Successful in 2m41s
wai-quantum WebGPU member / member · DX12 and Vulkan (cbio-windows) (pull_request) Successful in 12m41s
joule-code conformance gate / joule-moq-relay, every target (pull_request) Successful in 2m55s
wai-web reach builds / wai-web reach builds · this tree's wai-web, every rung on its engine line (pull_request) Successful in 4m20s
joule-code conformance gate / joule-moq-ingest, every target (pull_request) Successful in 1m30s
standards workspaces build + test / which workspaces this change touches (pull_request) Successful in 10s
wai cross-architecture byte-equality / does this change touch it (pull_request) Successful in 15s
WAI conformance / does this change touch it (pull_request) Successful in 10s
WAI energy receipts / does this change touch it (pull_request) Successful in 5s
WAI HTTP delivery / WAI HTTP · does this change touch it (pull_request) Successful in 5s
wai cross-architecture byte-equality / linux-x86_64 (pull_request) Successful in 31s
WAI JPEG-AI whole decode (pinned inputs, required) / does this change touch it (pull_request) Successful in 35s
WAI neural decoders end-to-end / does this change touch it (pull_request) Successful in 26s
WAI neural sink gates / does this change touch it (pull_request) Successful in 14s
wai-ops-gpu integer operators on GPUs / does this change touch it (pull_request) Successful in 11s
wai-pack / wai-pack · does this change touch it (pull_request) Successful in 13s
wai-quantum studio and desktop / does this change touch it (pull_request) Successful in 11s
wai-quantum WebGPU member / does this change touch it (pull_request) Successful in 13s
repository checks / lockfiles, advisories, tests in CI, workflow hygiene, spec and section references, public text (pull_request) Successful in 3m15s
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 conformance / quantum core and corpus under wasm32-wasip2 (wasmtime) (pull_request) Successful in 2m15s
WAI conformance / cross-arch byte-equality · linux (pull_request) Successful in 35s
joule-moq-room room service / joule-moq-room, every target (pull_request) Successful in 2m10s
wai cross-architecture byte-equality / linux-aarch64 (pull_request) Successful in 30s
wai-quantum WebGPU member / member · integrated GPU, Vulkan (framework-128gb) (pull_request) Successful in 7m39s
standards workspaces build + test / joule-code-rs (joule-code/joule-code-rs, joule-code-rs, linux-arm64, true) (pull_request) Successful in 6m55s
WAI conformance / v2 vocabulary · manifests validate as stated (pull_request) Successful in 23s
WAI energy receipts / energy receipts · linux (pull_request) Successful in 10m38s
WAI conformance / cargo-class corpora · linux (pull_request) Successful in 20m9s
WAI JPEG-AI whole decode (pinned inputs, required) / fetch pinned JPEG-AI inputs → whole decode + pixel hash, required (pull_request) Successful in 7m12s
WAI neural decoders end-to-end / synthetic fixtures → Rust decode → reference (±4) (pull_request) Successful in 1m30s
WAI neural sink gates / model-free refusals of the neural sink (pull_request) Successful in 1m35s
WAI conformance / cargo-class corpora · linux-arm64 (pull_request) Successful in 17m13s
WAI conformance / delivery telemetry · CMCD and CMSD against an independent library (pull_request) Successful in 11s
WAI conformance / cross-arch byte-equality · linux-arm64 (pull_request) Successful in 24s
wai-pack / wai-pack · linux (pull_request) Successful in 1m41s
wai-ops-gpu integer operators on GPUs / builds · no adapter is not a pass (linux) (pull_request) Successful in 3m10s
WAI conformance / C2PA manifest emission · signed, read back, validated (pull_request) Successful in 1m26s
wai-quantum studio and desktop / studio · browser (pull_request) Successful in 2m48s
wai-quantum WebGPU member / shader checks · browser build · wasip2 inertness · MSRV (pull_request) Successful in 3m25s
wai-quantum WebGPU member / member · software Vulkan (linux) (pull_request) Successful in 2m14s
wai-quantum WebGPU member / member · discrete GPU, Vulkan (jetson-hub) (pull_request) Successful in 28m46s
WAI energy receipts / energy receipts · linux-arm64 (pull_request) Successful in 7m42s
wai-web wasm32 / wai-web wasm32 build · corpus, menu and writers (pull_request) Successful in 4m29s
WAI mbt2018_mean integer decode (regenerated vectors) / regenerate mbt2018_mean integer vectors → Rust decode, required (pull_request) Successful in 5m41s
joule-moq-web browser client / joule-moq-web · browser end-to-end (macos) (pull_request) Successful in 10m45s
standards workspaces build + test / macOS energy backends (pull_request) Successful in 9m1s
wai cross-architecture byte-equality / macos-arm64 (reference) (pull_request) Successful in 22s
WAI conformance / cargo-class corpora · macos (pull_request) Successful in 14m22s
WAI conformance / cross-arch byte-equality · macos (pull_request) Successful in 22s
WAI conformance / codec wrappers · fuzz smoke, text decode limits, C entry points, provenance, the semantic path (pull_request) Successful in 49s
WAI conformance / independent verifiers · claims, JWP, key discovery and integer payloads (Python) (pull_request) Successful in 1h2m44s
WAI HTTP delivery / HTTP corpus · falsify mutations 1/3 (pull_request) Successful in 47m52s
WAI energy receipts / energy receipts · macos (pull_request) Successful in 6m18s
WAI HTTP delivery / HTTP corpus · falsify mutations 0/3 (pull_request) Successful in 48m48s
WAI HTTP delivery / HTTP corpus · falsify patches 0/3 (pull_request) Successful in 6m2s
WAI HTTP delivery / HTTP corpus · falsify patches 1/3 (pull_request) Successful in 6m41s
WAI HTTP delivery / HTTP corpus · every patch and mutation in exactly one shard (pull_request) Successful in 5s
wai-ops-gpu integer operators on GPUs / Metal GPU and browser WebGPU (macos) (pull_request) Successful in 9m10s
WAI HTTP delivery / HTTP corpus · verified both ways, and the differential (pull_request) Successful in 2m47s
wai-pack / wai-pack · macos (pull_request) Successful in 1m16s
WAI HTTP delivery / cache rules · controls and labelled caches (pull_request) Successful in 1m15s
wai-pack / wai-pack · linux-arm64 (pull_request) Successful in 1m22s
WAI HTTP delivery / HTTP corpus · falsify patches 2/3 (pull_request) Successful in 6m30s
wai-pack / wai-pack · the floor through a media prober (pull_request) Successful in 21s
wai-quantum studio and desktop / desktop app · macos (pull_request) Successful in 2m32s
wai-pack / wai-pack · dependency licences (pull_request) Successful in 1m16s
wai-pack / wai-pack · independent verifier (Python) (pull_request) Successful in 4m13s
wai-quantum WebGPU member / member · Metal (macos) (pull_request) Successful in 4m22s
wai-quantum WebGPU member / member · browser WebGPU (macos) (pull_request) Successful in 1m53s
WAI HTTP delivery / HTTP corpus · falsify mutations 2/3 (pull_request) Successful in 48m43s
Merge origin/main into train/wai-c (Train D landed: co-watch beside DRED, telemetry, splat, soft bindings and PQ)
Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-10-25 03:57:01 -04:00

108 lines
9.3 KiB
Markdown

# live-conformance — the `wai.live` family
Conformance corpora of the live and interactive extensions, one directory per extension,
and the independent verifier of each, beside it.
| directory | extension | generator | verifier |
|---|---|---|---|
| [`events/`](events/) | [live-events](../extensions/live-events.md) (`wai.live.events`) | `wai_live_events_vectors gen` | `live_events_verify.py` |
| [`rooms/`](rooms/) | [live-rooms](../extensions/live-rooms.md) (`wai.live.room`) | `wai_live_room_vectors gen` | `live_rooms_verify.py` |
| [`takes/`](takes/) | [capture-binding](../extensions/capture-binding.md) (`wai.capture.take`) | `wai_capture_take_vectors gen` | `capture_take_verify.py` |
| [`compose/`](compose/) | [live-compose](../extensions/live-compose.md) (`wai.live.compose`) | `wai_live_compose_vectors gen` | `live_compose_verify.py` |
| [`recordings/`](recordings/) | [live-recording](../extensions/live-recording.md) (`wai.live.recording`) | `wai_live_record_vectors gen` | `live_record_verify.py` |
| [`captions/`](captions/) | [timed-text](../extensions/timed-text.md) (`wai.text.timed`) | `wai_timed_text_vectors gen` | `timed_text_verify.py` |
| [`metering/`](metering/) | [live-metering](../extensions/live-metering.md) (`wai.live.metering`) | `wai_live_metering_vectors gen` | `live_metering_verify.py` |
| [`steering/`](steering/) | [energy-steering](../extensions/energy-steering.md) (`wai.live.steering`) | `wai_energy_steering_vectors gen` | `energy_steering_verify.py` |
| [`moderation/`](moderation/) | [live-moderation](../extensions/live-moderation.md) (`wai.live.moderation`) | `wai_live_moderation_vectors gen` | `live_moderation_verify.py` |
| [`ads/`](ads/) | [live-ads](../extensions/live-ads.md) (`wai.live.ads`) | `wai_live_ads_vectors gen` | `live_ads_verify.py` |
| [`e2ee/`](e2ee/) | [confidentiality](../extensions/confidentiality.md) (`wai.live.e2ee`) | `joule_moq_e2ee_vectors gen` (joule-moq-mls) | `e2ee_verify.py` |
| [`watermark/`](watermark/) | [forensic-watermark](../extensions/forensic-watermark.md) (`wai.live.watermark`) | `wai_live_watermark_vectors gen` | `live_watermark_verify.py` |
| [`c2pa-live/`](c2pa-live/) | [live-provenance](../extensions/live-provenance.md) (`wai.live.provenance`) | `wai_live_provenance_vectors gen` | `c2pa_live_verify.py` |
| [`synthesis/`](synthesis/) | [synthesis](../extensions/synthesis.md) (`wai.media.synthesis`) | `wai_synthesis_vectors gen` | `synthesis_verify.py` |
| [`usage/`](usage/) | [ai-usage](../extensions/ai-usage.md) (`wai.ai.usage`) | `wai_ai_usage_vectors gen` | `ai_usage_verify.py` |
| [`contribution/`](contribution/) | [contribution](../extensions/contribution.md) (`wai.media.contribution`) | `wai_contribution_vectors gen` | `contribution_verify.py` |
| [`settlement/`](settlement/) | [settlement](../extensions/settlement.md) (`wai.delivery.settlement`) | `wai_settlement_vectors gen` | `settlement_verify.py` |
| [`browser/`](browser/) | [browser-sink](../extensions/browser-sink.md) (routing, constraint sets, energy entries, `contentBinding`) | `wai_browser_sink_vectors gen` | `browser_sink_verify.py` |
| [`takedown/`](takedown/) | [takedown](../extensions/takedown.md) (`wai.media.takedown`) | `wai_takedown_vectors gen` | `takedown_verify.py` |
| [`coperformance/`](coperformance/) | [co-performance](../extensions/co-performance.md) (`wai.live.coperformance`) | `wai_co_performance_vectors gen` | `co_performance_verify.py` |
| [`influence/`](influence/) | [influence](../extensions/influence.md) (`wai.media.influence`) | `wai_influence_vectors gen` | `influence_verify.py` |
| [`direction/`](direction/) | [direction](../extensions/direction.md) (`wai.media.direction`) | `wai_direction_vectors gen` | `direction_verify.py` |
| [`bearers/`](bearers/) | [bearer-receipts](../extensions/bearer-receipts.md) (`wai.bearer.receipts`) | `wai_bearer_vectors gen` | `bearer_verify.py` |
| [`access/`](access/) | [access-services](../extensions/access-services.md) (`wai.access.services`) | `wai_access_services_vectors gen` | `access_services_verify.py` |
| [`presentation/`](presentation/) | [ad-presentation](../extensions/ad-presentation.md) (`wai.live.ad_presentation`) | `wai_ad_presentation_vectors gen` | `ad_presentation_verify.py` |
| [`age/`](age/) | [age-assurance](../extensions/age-assurance.md) (`wai.age.assurance`) | `wai_age_assurance_vectors gen` | `age_assurance_verify.py` |
| [`exploration/`](exploration/) | [exploration](../extensions/exploration.md) (`wai.media.exploration`) | `wai_exploration_vectors gen` | `exploration_verify.py` |
| [`cowatch/`](cowatch/) | [co-watch](../extensions/co-watch.md) (`wai.live.cowatch`) | `wai_co_watch_vectors gen` | `co_watch_verify.py` |
| [`synthesis-mark/`](synthesis-mark/) | [synthesis](../extensions/synthesis.md) §7.4 to §7.8 (the watermark scheme `wai-mark:tent64`) | `wai_synthesis_mark_vectors gen` | `synthesis_mark_verify.py` |
| [`upscale/`](upscale/) | [exact-upscale](../extensions/exact-upscale.md) (`wai.media.upscale`) | `wai_upscale_vectors gen` | `upscale_verify.py` |
| [`dred/`](dred/) | [opus-dred](../extensions/opus-dred.md) (`wai.audio.opus.dred.int`) | `wai_dred_vectors gen` (with the draft's weights file, `dred/fetch.sh`) | `dred_verify.py` |
| [`aggregate/`](aggregate/) | [telemetry-aggregation](../extensions/telemetry-aggregation.md) (`wai.telemetry.aggregate`) | `wai_telemetry_aggregate_vectors gen` | `telemetry_aggregate_verify.py` |
| [`tonemap/`](tonemap/) | [exact-tonemap](../extensions/exact-tonemap.md) (`wai.media.tonemap`, `wai.meta.gainmap`, `wai.meta.st2094_50`) | `wai_tonemap_vectors gen` | `tonemap_verify.py` |
| [`robustness/`](robustness/) | [robustness-evidence](../extensions/robustness-evidence.md) (`wai.media.robustness`) | `wai_robustness_vectors gen` | `robustness_verify.py` |
| [`splat/`](splat/) | [splat-exact](../extensions/splat-exact.md) (`wai.splat.exact`) | `wai_splat_exact_vectors gen` | `splat_exact_verify.py` |
**Provenance.** Generated here: each directory's corpus is written by its row's generator
(`gen`, in `wai/wai-rs`), from records authored in code and from fixed seeds, and each
directory's README says how. `c2pa-live/` cuts its media from the packaging corpus's AV1
floor; `contribution/` and `influence/` generate their pictures with `wai.generate.spectral`
and the model file of that capability's conformance vector (`influence/` also with a second
model file written from it); `takedown/` carries the registry of clocks the repository
publishes, `registry/takedown-clocks.json`, as written there; and `upscale/` reads two priors
that `tools/wai_int_sr_train.py` trained on pictures it generates (`upscale/README.md`).
`tonemap/` renders generated HDR scenes to its stills with the reference's own encoder, and
tone-maps the frames of the `int_video` clip of the integer video corpus.
`robustness/` generates its pictures with the dead-leaves generator of `synthesis_mark` and
with `wai.generate.spectral`, and measures the synthesis corpus's measurement sets, whose
samples it does not hold.
`splat/` carries the learned cloud of `wai-rs/tests/vectors/int_splat/` beside scenes
authored as attribute bytes.
`joule_moq_e2ee_vectors gen` (in
`joule-code/joule-code-rs/crates/joule-moq-mls`) writes `e2ee/vectors.json` from fixed seeds,
and `e2ee/` also holds the test vectors RFC 9605 and `draft-ietf-moq-secure-objects-01`
publish, as printed (`e2ee/README.md`), and `aggregate/vdaf-22/` the Prio3 test vectors of
`draft-irtf-cfrg-vdaf-22`, as published at the commit that draft names (`aggregate/README.md`).
`dred/` names the weights file of draft-ietf-mlcodec-opus-dred-07 by its SHA-256 and holds no
copy: its generator and its verifier read the file the draft names, which `dred/fetch.sh`
fetches and checks. One recorded record: `metering/relay-record.wmh` and its ledger, which the
reference relay signed in its test.
Each verifier is written from its extension's text, shares no code with the reference
(`wai-rs`, or for `e2ee/`, `joule-moq` and `joule-moq-mls`), and is run by
`.github/workflows/wai-conformance.yml` beside the reference's own check:
```
python3 live_events_verify.py events
python3 live_rooms_verify.py rooms
python3 capture_take_verify.py takes
python3 live_compose_verify.py compose
python3 live_record_verify.py recordings
python3 timed_text_verify.py captions
python3 access_services_verify.py access
python3 live_metering_verify.py metering
python3 energy_steering_verify.py steering
python3 live_moderation_verify.py moderation
python3 live_ads_verify.py ads
python3 ad_presentation_verify.py presentation
python3 e2ee_verify.py e2ee
python3 live_watermark_verify.py watermark
python3 c2pa_live_verify.py c2pa-live
python3 synthesis_verify.py synthesis
python3 synthesis_mark_verify.py synthesis-mark
python3 upscale_verify.py upscale
python3 ai_usage_verify.py usage
python3 contribution_verify.py contribution
python3 settlement_verify.py settlement
python3 browser_sink_verify.py browser
python3 takedown_verify.py takedown
python3 co_performance_verify.py coperformance
python3 age_assurance_verify.py age
python3 influence_verify.py influence
python3 direction_verify.py direction
python3 exploration_verify.py exploration
python3 co_watch_verify.py cowatch
python3 dred_verify.py dred <weights-file>
python3 telemetry_aggregate_verify.py aggregate
python3 tonemap_verify.py tonemap
python3 robustness_verify.py robustness
python3 splat_exact_verify.py splat
```