| Filename | Latest commit message | Latest commit date |
|---|---|---|
|
Some checks failed
wai-quantum energy-landscape jobs / does this change touch it (push) Successful in 14s
joule-moq-remote host agent / joule-moq-remote · does this change touch it (push) Successful in 36s
WAI breaking changes and the conformance runner / WAI breaking · does this change touch WAI (push) Successful in 16s
joule-moq-room room service / joule-moq-room · does this change touch it (push) Successful in 41s
joule-moq-web browser client / joule-moq-web · does this change touch it (push) Successful in 37s
wai-audit collector and player integration / does this change touch it (push) Successful in 36s
wai-fleet service / does this change touch it (push) Successful in 50s
wai-sink-android native sink library / does this change touch it (push) Successful in 35s
wai-ledger service / does this change touch it (push) Successful in 58s
wai-quantum studio and desktop / does this change touch it (push) Successful in 59s
WAI operation catalogue / does this change touch it (push) Successful in 1m5s
wai-sink-swift native sink package / does this change touch it (push) Successful in 26s
wai-key-proxy / does this change touch it (push) Successful in 1m1s
wai-quantum for JavaScript / does this change touch it (push) Successful in 59s
wai-app and Create / wai-app · does this change touch it (push) Successful in 1m13s
WAI Studio / does this change touch it (push) Successful in 42s
joule-moq-remote host agent / joule-moq-remote, every target (macos) (push) Successful in 1m18s
wai-fleet service / service · macos (push) Successful in 1m2s
wai-app and Create / wai-app · tests, clippy, the line language's verifier (linux) (push) Successful in 37s
wai-audit collector and player integration / collector, player integration and the browser end to end · macos (push) Successful in 1m44s
wai-audit collector and player integration / collector · linux (push) Successful in 2m9s
wai-ledger service / service · macos (push) Successful in 2m24s
wai-key-proxy / proxy · linux (push) Successful in 2m8s
WAI breaking changes and the conformance runner / WAI breaking · wire, record and API against main · linux (push) Successful in 3m21s
joule-moq-remote host agent / joule-moq-remote, every target (linux-arm64) (push) Successful in 3m30s
WAI Studio / Studio in WebKit · linux (push) Failing after 51s
WAI Studio / the catalogue's actions, the unit tests and the core · linux (push) Successful in 1m38s
wai-ledger service / service · linux (push) Successful in 4m17s
wai-quantum studio and desktop / desktop app · macos (push) Successful in 3m27s
repository checks / lockfiles, advisories, tests in CI, workflow hygiene, spec and section references, public text (push) Successful in 6m15s
wai-fleet service / service · linux (push) Successful in 4m51s
wai-quantum energy-landscape jobs / the same bits · macos (push) Successful in 6m33s
wai-sink-android native sink library / the JNI layer and the platform-free half on the host JVM · linux-arm64 (push) Successful in 4m53s
joule-moq-room room service / joule-moq-room, every target (push) Successful in 7m8s
wai-quantum for JavaScript / javascript · linux (push) Successful in 6m16s
wai-quantum energy-landscape jobs / native against WebAssembly, over many seeds (push) Successful in 9m31s
WAI breaking changes and the conformance runner / WAI breaking and conform · their tests, and the independent verifiers through wai conform · linux (push) Successful in 9m28s
wai-sink-android native sink library / every ABI, the AAR, and the instrumented tests in a headless emulator · macos (push) Successful in 9m3s
wai-app and Create / wai-app · Create, browser end-to-end (macos) (push) Successful in 9m59s
wai-quantum studio and desktop / studio · browser (push) Successful in 10m26s
wai-quantum energy-landscape jobs / the module under wasm32-wasip2 (wasmtime) (push) Successful in 12m55s
wai-quantum energy-landscape jobs / the same bits · linux-arm64 (push) Successful in 13m18s
WAI operation catalogue / the catalogue and every door · linux (push) Successful in 13m10s
WAI Studio / Studio in Chromium and Firefox · macos (push) Successful in 13m21s
joule-moq-web browser client / joule-moq-web · browser end-to-end (macos) (push) Successful in 18m47s
wai-sink-swift native sink package / libwai slices, desktop tests, simulator tests · macos (push) Successful in 18m25s
wai-quantum studio and desktop / desktop app · linux (push) Successful in 17m24s
wai-quantum energy-landscape jobs / reader, kernels, answers and the stated result · linux, release (push) Successful in 22m34s
wai-quantum studio and desktop / desktop app · windows (push) Successful in 12m33s
extensions/sink-predicate.md registers the record `wai.delivery.sink_predicate` (`wai-sink-predicate`): a source's signed predicate travelling beside a programme, the registered form of unidirectional-delivery §2's sink-evaluated predicate. It carries the programme's blackouts (audience-decision §4.2) and its ad slots, each a list of candidate ads in the order the source prefers them, with the regions each is shown in and its frequency caps (a counter, a limit, a window), and declares exactly the state classes it reads (`location`, `exposures`); it is a route-record document signed in its canonical form under `wai:sink-predicate`. A sink evaluates it from its own state alone: the programme's verdict is audience-decision §4.6's at its aggregated location (unresolved, every blackout applied, when it holds none), and when that is `show` it fills each slot itself, taking in order the candidates shown at its location (a country of which a candidate lists only a subdivision is shown neither `only` nor `except`), whose caps its own exposures have not reached in their windows, with those the earlier slots and candidates added, and that fit the avail. A sink that keeps no exposures is shown no capped candidate. The evaluation causes no request and nothing about the device leaves it. A predicate holding, at any depth, a member by which its evaluation would send something away (`report`, `beacon`, `callback`, `uri`) or count across devices (`household`, `account`) is refused `predicate_needs_report`; a sink's log of a slot that presents a candidate whose cap was reached is refused `predicate_cap_breached`, one not shown at the location `predicate_not_targeted`, and any other departure from the fill `predicate_fill_mismatch`. unidirectional-delivery §2 and audience-decision §1 and §6 name it. live-compose §5.10 adds per-session ad tracks: in a squeeze or a double box, a session's sink may show the session's own ad, decided by a stitched-presentation pod-input record of that session, on the session's ad track (owner `ad_` and the session), bound to the composition by an ad-track binding, `WAT1`, signed by the record's signer under `wai:live-compose-ad-track`. A binding that does not match its session's composition is refused `ad_track_mismatch`, naming what differs: a descriptor that is not an ad frame, a record other than the one it names, a shared record or another session's, a record whose frame is not the descriptor's (layout, canvas, corner, window, gap, aspect), or a slot the record does not have; one signed by another key `ad_track_not_permitted`; one out of its bounds `ad_track_invalid`. While a binding is in effect (from `start` for its ad's duration), the session's layout is §5.9's with the track in the ad tile, the program where the room's frame puts it, and the room's ad participant with no tile and no voice. live-compose's §10 table, its descriptor and its receipt are unchanged; its codes for the binding are §5.10.5's. stitched-presentation §4.6 and §6: a composited break whose ad region shows each session its own ad is decided by a record of each session under the room's ad frame, never by a shared record, and the session's claim is that record's one presentation; no record, claim or verification rule changes. The references are the `sink_predicate` module of wai-rs (feature `sink_predicate`) and the `compose_ad_track` module (feature `compose_ad_track`). The corpora are live-conformance/sink-predicate/ (68 predicates, 23 evaluations, 18 logs) and live-conformance/compose-ad-track/ (36 bindings, 17 layouts); sink_predicate_verify.py and compose_ad_track_verify.py are their second implementations, which agree on every case, fail every mutated copy (17 of 17, 13 of 13) and catch every weakened verifier (35 of 35, 21 of 21). Nineteen faults planted in the reference each fail its tests, each matched by a check the second verifier drops: a cap breach (the fill ignoring caps, the log check ignoring them, an exposure a whole window old still counted, a sink that keeps none admitting a capped candidate); a predicate needing a report (the check removed, read only at the top level, the across-device members dropped); a per-session ad track not matching its session's composition (another frame, another session's record, a shared record, a descriptor that is no ad frame, a missing slot, another signer, the track kept at its binding's end); and a signature over the wrong bytes (a predicate's without its domain, under the audience decision's, over the text as written; a binding's without its domain and under the pod-input record's). Co-Authored-By: Claude Opus 5.5 <[email protected]> |
||
| .. | ||
| access | ||
| ads | ||
| age | ||
| aggregate | ||
| audience | ||
| audio-mark | ||
| audit | ||
| avatar-face | ||
| bearers | ||
| browser | ||
| c2pa-envelope | ||
| c2pa-live | ||
| cache-authority | ||
| captions | ||
| carousel | ||
| channels | ||
| compact-return | ||
| compose | ||
| compose-ad-track | ||
| contribution | ||
| coperformance | ||
| cowatch | ||
| direction | ||
| dred | ||
| e2ee | ||
| ertmp | ||
| events | ||
| exploration | ||
| fleet | ||
| holdings | ||
| impressions | ||
| influence | ||
| injection | ||
| keys | ||
| ledger | ||
| links | ||
| loc | ||
| messaging | ||
| metering | ||
| moderation | ||
| native-sink | ||
| opportunity | ||
| presentation | ||
| prices | ||
| prior-carriage | ||
| prior-forms | ||
| recordings | ||
| remote | ||
| robustness | ||
| rooms | ||
| routes | ||
| scene | ||
| sdp-caps | ||
| settlement | ||
| share | ||
| signal-health | ||
| sink-energy | ||
| sink-predicate | ||
| splat | ||
| steering | ||
| stitched | ||
| synthesis | ||
| synthesis-mark | ||
| takedown | ||
| takes | ||
| termination | ||
| timeliness | ||
| tonemap | ||
| upscale | ||
| usage | ||
| watermark | ||
| worlds | ||
| _fips197_aes.py | ||
| _int_motion_receipt.py | ||
| _int_sr.py | ||
| _rfc8878_zstd.py | ||
| _wai_audio_mark.py | ||
| _wai_mark.py | ||
| access_services_verify.py | ||
| ad_presentation_verify.py | ||
| age_assurance_verify.py | ||
| ai_usage_verify.py | ||
| audience_decision_verify.py | ||
| audio_mark_verify.py | ||
| avatar_face_verify.py | ||
| bearer_verify.py | ||
| browser_sink_verify.py | ||
| c2pa_live_verify.py | ||
| cache_authority_verify.py | ||
| capture_take_verify.py | ||
| carousel_verify.py | ||
| channel_lineup_verify.py | ||
| co_performance_verify.py | ||
| co_watch_verify.py | ||
| compact_return_verify.py | ||
| compose_ad_track_verify.py | ||
| contribution_verify.py | ||
| direction_verify.py | ||
| dred_verify.py | ||
| e2ee_verify.py | ||
| energy_steering_verify.py | ||
| ertmp_verify.py | ||
| exploration_verify.py | ||
| fleet_verify.py | ||
| holdings_verify.py | ||
| impression_aggregate_verify.py | ||
| influence_verify.py | ||
| injection_verify.py | ||
| key_release_verify.py | ||
| live_ads_verify.py | ||
| live_compose_verify.py | ||
| live_contribution_verify.py | ||
| live_events_verify.py | ||
| live_messaging_verify.py | ||
| live_metering_verify.py | ||
| live_moderation_verify.py | ||
| live_record_verify.py | ||
| live_rooms_verify.py | ||
| live_watermark_verify.py | ||
| live_worlds_verify.py | ||
| loc_verify.py | ||
| native_sink_verify.py | ||
| opportunity_report_verify.py | ||
| prior_carriage_verify.py | ||
| prior_forms_verify.py | ||
| README.md | ||
| receipt_ledger_verify.py | ||
| remote_desktop_verify.py | ||
| revenue_share_verify.py | ||
| robustness_verify.py | ||
| route_record_verify.py | ||
| rung_price_verify.py | ||
| scene_verify.py | ||
| sdp_caps_verify.py | ||
| settlement_verify.py | ||
| signal_health_verify.py | ||
| sink_energy_verify.py | ||
| sink_predicate_verify.py | ||
| splat_exact_verify.py | ||
| stitched_presentation_verify.py | ||
| stream_audit_verify.py | ||
| stream_termination_verify.py | ||
| synthesis_mark_verify.py | ||
| synthesis_verify.py | ||
| takedown_verify.py | ||
| telemetry_aggregate_verify.py | ||
| timed_text_verify.py | ||
| timeliness_verify.py | ||
| tonemap_verify.py | ||
| upscale_verify.py | ||
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/ |
live-events (wai.live.events) |
wai_live_events_vectors gen |
live_events_verify.py |
rooms/ |
live-rooms (wai.live.room) |
wai_live_room_vectors gen |
live_rooms_verify.py |
takes/ |
capture-binding (wai.capture.take) |
wai_capture_take_vectors gen |
capture_take_verify.py |
compose/ |
live-compose (wai.live.compose) |
wai_live_compose_vectors gen |
live_compose_verify.py |
compose-ad-track/ |
live-compose §5.10 (wai.live.compose: per-session ad tracks, WAT1) |
wai_compose_ad_track_vectors gen |
compose_ad_track_verify.py |
recordings/ |
live-recording (wai.live.recording) |
wai_live_record_vectors gen |
live_record_verify.py |
captions/ |
timed-text (wai.text.timed) |
wai_timed_text_vectors gen |
timed_text_verify.py |
metering/ |
live-metering (wai.live.metering) |
wai_live_metering_vectors gen |
live_metering_verify.py |
steering/ |
energy-steering (wai.live.steering) |
wai_energy_steering_vectors gen |
energy_steering_verify.py |
moderation/ |
live-moderation (wai.live.moderation) |
wai_live_moderation_vectors gen |
live_moderation_verify.py |
ads/ |
live-ads (wai.live.ads) |
wai_live_ads_vectors gen |
live_ads_verify.py |
e2ee/ |
confidentiality (wai.live.e2ee) |
joule_moq_e2ee_vectors gen (joule-moq-mls) |
e2ee_verify.py |
messaging/ |
live-messaging (wai.live.message, wai.live.call) |
wai_live_messaging_vectors gen |
live_messaging_verify.py |
watermark/ |
forensic-watermark (wai.live.watermark) |
wai_live_watermark_vectors gen |
live_watermark_verify.py |
c2pa-live/ |
live-provenance (wai.live.provenance) |
wai_live_provenance_vectors gen |
c2pa_live_verify.py |
c2pa-envelope/ |
c2pa-binding (wai.asset.c2pa) |
wai_c2pa_envelope_vectors gen |
c2pa_live_verify.py |
synthesis/ |
synthesis (wai.media.synthesis) |
wai_synthesis_vectors gen |
synthesis_verify.py |
usage/ |
ai-usage (wai.ai.usage) |
wai_ai_usage_vectors gen |
ai_usage_verify.py |
contribution/ |
contribution (wai.media.contribution) |
wai_contribution_vectors gen |
contribution_verify.py |
settlement/ |
settlement (wai.delivery.settlement) |
wai_settlement_vectors gen |
settlement_verify.py |
audit/ |
stream-audit (wai.delivery.audit) |
wai_stream_audit_vectors gen |
stream_audit_verify.py |
native-sink/ |
native-sink (a native host's sink: verification, stream-audit's records, ending) | wai_native_sink_vectors gen |
native_sink_verify.py |
browser/ |
browser-sink (routing, constraint sets, energy entries, contentBinding) |
wai_browser_sink_vectors gen |
browser_sink_verify.py |
takedown/ |
takedown (wai.media.takedown) |
wai_takedown_vectors gen |
takedown_verify.py |
coperformance/ |
co-performance (wai.live.coperformance) |
wai_co_performance_vectors gen |
co_performance_verify.py |
influence/ |
influence (wai.media.influence) |
wai_influence_vectors gen |
influence_verify.py |
direction/ |
direction (wai.media.direction) |
wai_direction_vectors gen |
direction_verify.py |
bearers/ |
bearer-receipts (wai.bearer.receipts) |
wai_bearer_vectors gen |
bearer_verify.py |
compact-return/ |
bearer-receipts §13 (the compact return profile) | wai_compact_return_vectors gen |
compact_return_verify.py |
carousel/ |
carousel (wai.bearer.carousel) |
wai_carousel_vectors gen |
carousel_verify.py |
holdings/ |
holdings (wai.delivery.holdings) |
wai_holdings_vectors gen |
holdings_verify.py |
signal-health/ |
signal-health (wai.live.signal_health) |
wai_signal_health_vectors gen |
signal_health_verify.py |
timeliness/ |
timeliness (wai.delivery.timeliness) |
wai_timeliness_vectors gen |
timeliness_verify.py |
prices/ |
rung-price (wai.delivery.rung_price) |
wai_rung_price_vectors gen |
rung_price_verify.py |
cache-authority/ |
cache-authority (wai.delivery.cache) |
wai_cache_authority_vectors gen |
cache_authority_verify.py |
audience/ |
audience-decision (wai.video.audience, wai.delivery.territory) |
wai_audience_decision_vectors gen |
audience_decision_verify.py |
sink-predicate/ |
sink-predicate (wai.delivery.sink_predicate) |
wai_sink_predicate_vectors gen |
sink_predicate_verify.py |
impressions/ |
impression-aggregates (wai.delivery.impressions) |
wai_impression_aggregate_vectors gen |
impression_aggregate_verify.py |
access/ |
access-services (wai.access.services) |
wai_access_services_vectors gen |
access_services_verify.py |
presentation/ |
ad-presentation (wai.live.ad_presentation) |
wai_ad_presentation_vectors gen |
ad_presentation_verify.py |
age/ |
age-assurance (wai.age.assurance) |
wai_age_assurance_vectors gen |
age_assurance_verify.py |
exploration/ |
exploration (wai.media.exploration) |
wai_exploration_vectors gen |
exploration_verify.py |
cowatch/ |
co-watch (wai.live.cowatch) |
wai_co_watch_vectors gen |
co_watch_verify.py |
worlds/ |
live-worlds (wai.live.world) |
wai_live_world_vectors gen |
live_worlds_verify.py |
synthesis-mark/ |
synthesis §7.4 to §7.8 (the watermark scheme wai-mark:tent64) |
wai_synthesis_mark_vectors gen |
synthesis_mark_verify.py |
upscale/ |
exact-upscale (wai.media.upscale) |
wai_upscale_vectors gen |
upscale_verify.py |
prior-carriage/ |
prior-carriage §15 and http-delivery §8.7 (where a parameter set is fetched) | wai_prior_carriage_vectors gen |
prior_carriage_verify.py |
dred/ |
opus-dred (wai.audio.opus.dred.int) |
wai_dred_vectors gen (with the draft's weights file, dred/fetch.sh) |
dred_verify.py |
aggregate/ |
telemetry-aggregation (wai.telemetry.aggregate) |
wai_telemetry_aggregate_vectors gen |
telemetry_aggregate_verify.py |
tonemap/ |
exact-tonemap (wai.media.tonemap, wai.meta.gainmap, wai.meta.st2094_50) |
wai_tonemap_vectors gen |
tonemap_verify.py |
robustness/ |
robustness-evidence (wai.media.robustness) |
wai_robustness_vectors gen |
robustness_verify.py |
splat/ |
splat-exact (wai.splat.exact) |
wai_splat_exact_vectors gen |
splat_exact_verify.py |
loc/ |
loc-carriage (WAI envelopes on LOC objects) | loc_vectors gen (a joule-moq example) |
loc_verify.py |
avatar-face/ |
avatars §6 to §13 (wai.avatar.face) |
wai_avatar_face_vectors gen |
avatar_face_verify.py |
termination/ |
stream-termination (wai.live.termination) and capability-constraints §4 (the display match) |
wai_stream_termination_vectors gen |
stream_termination_verify.py |
keys/ |
key-release (the proxy form of wai.video.keys) |
wai_key_release_vectors gen |
key_release_verify.py |
links/ |
live-contribution (wai.live.contribution) |
joule-moq-ingest-link-vectors --out (joule-moq-ingest) |
live_contribution_verify.py |
remote/ |
remote-desktop (wai.live.remote) |
wai_remote_desktop_vectors gen |
remote_desktop_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; c2pa-envelope/ carries pictures its generator draws; 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. avatar-face/ reads a generator, two identity priors and
their keypoint tracks that tools/wai_avatar_face_train.py wrote from faces it generates
(avatar-face/README.md).
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 for links/,
joule-moq-ingest), 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_messaging_verify.py messaging
python3 live_watermark_verify.py watermark
python3 c2pa_live_verify.py c2pa-live
python3 c2pa_live_verify.py c2pa-envelope
python3 synthesis_verify.py synthesis
python3 synthesis_mark_verify.py synthesis-mark
python3 upscale_verify.py upscale
python3 avatar_face_verify.py avatar-face
python3 ai_usage_verify.py usage
python3 contribution_verify.py contribution
python3 settlement_verify.py settlement
python3 stream_audit_verify.py audit
python3 native_sink_verify.py native-sink
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
python3 stream_termination_verify.py termination
python3 key_release_verify.py keys
python3 live_contribution_verify.py links
python3 remote_desktop_verify.py remote
python3 live_worlds_verify.py worlds