open-standards/wai/extensions
Repository files (latest commit first)
Filename Latest commit message Latest commit date
Transaction Science b19e078cc3 wai: capability attributes in a WHEP offer, so the gateway forwards each player the rendition its sink dispatches first
live-ingest §9.5: a WAI-aware WHEP player writes, per media section of its offer, the WAI
capabilities its sink dispatches, in its dispatch order, as SDP media capabilities
(RFC 6871) under capability negotiation (RFC 5939): a=csup:med-v0, then for each capability
§5.1 carries over WebRTC (wai.video.avc, vp8, vp9, av1, wai.audio.opus.packet) that the
section offers, an a=rmcap, an a=mfcap of its fmtp, and an a=pcfg whose number gives the
order. The egress gateway reads them back, refuses with 422 an offer whose capability
attributes do not parse or do not hold together (caps_malformed, caps_number_reused,
caps_config_reused, caps_unknown_capability, caps_payload_type, caps_option_missing,
caps_unsupported, caps_too_many; §9.5 and §14), forwards for each section the rendition the
first advertised capability names at or below the grant's max_layer, answered with a=acfg,
and the floor where nothing advertised is published. §17 records that joule-moq-ingest does
not read them yet.

wai::sdp_caps: read, Offer::advertised, pick and Pick::acfg, write. Its tests replay
live-conformance/sdp-caps/vectors.json (offers read and refused with every reason, picks,
offers written byte for byte and read back), write and read back every order of the video
capabilities, and hold §9.5's table and reasons and §14's to the module.
live-conformance/sdp_caps_verify.py, written from §9.5 and the RFCs' grammars and sharing no
code with wai-rs, recomputes every case and requires every mutated copy to fail.

Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-11-09 16:08:15 -05:00
..
gltf splat-exact: the extension text, the draft schema, and corpus cases that separate every check 2026-10-22 03:22:48 -04:00
access-services.md wai.access.services: registry entry and export, SPEC §5, CHANGELOG, CI step, corpus README; timed-text's scope points to it 2026-10-21 12:27:36 -04:00
ad-presentation.md wai/ad-consent-supply-chain, converted to the layout of the fix: no shared append point 2026-11-05 02:00:58 -05:00
age-assurance.md age × co: the room's own service is not held to the serving rule 2026-10-22 07:08:25 -04:00
ai-usage.md ai-usage §4.1: a manifest that does not read holds no statement that can be read 2026-10-21 05:43:49 -04:00
avatars.md wai-int-module: the first WA²ISM module of record, the operator-set module held at the integer level on every engine 2026-11-08 16:45:56 -05:00
bearer-receipts.md wai: a schedule names Raptor (RFC 5053), the code MBMS download uses 2026-11-06 18:09:38 -05:00
browser-sink.md wai: platform decode for every user-agent codec, video and audio, in the composing sink's dispatch 2026-11-09 16:06:44 -05:00
c2pa-binding.md wai: a C2PA Manifest Store bound to a stored WAI1 or WAI2 envelope, and to the receipt that delivered it 2026-11-09 10:50:25 -05:00
cache-authority.md Tariff version 7 bills a cache's own instance, an aggregated count and what an agent consumed, and a settlement declaration names its instance 2026-11-07 08:35:01 -05:00
capability-constraints.md wai: the refresh rate a page measures, stated exactly; wording 2026-10-22 13:53:23 -04:00
capture-binding.md wai: live provenance, derived manifest identifiers, dynamic packaging and repository receipts 2026-10-21 04:49:42 -04:00
carousel.md wai: a schedule names Raptor (RFC 5053), the code MBMS download uses 2026-11-06 18:09:38 -05:00
channel-lineup.md wai/hls-cues-delivery-decision, converted to the layout of the fix: no shared append point 2026-11-05 01:45:33 -05:00
co-performance.md wai: a room across relays (live-rooms §10.7, jwp-receipts §4.1, live-metering §3.10, co-performance §8, live-recording §8.3); the relay's README, example and changelogs 2026-10-25 22:50:40 -04:00
co-watch.md joule-moq-web: a co-watch page taken for gone again at once enters again, and keeps its controls' order 2026-11-04 08:13:11 -05:00
confidentiality.md One rule for versions: 1.0 is the WAI1 envelope's wire version, and the standard is a Draft 2026-11-06 18:28:23 -05:00
conformance-results.md wai conform relay --suite moqt holds a relay to the MOQT interop cases, pq joins the verifier suites, and wai conformance gen writes a corpus by its generator 2026-11-08 14:44:52 -05:00
contribution.md wai: influence attribution — conditioning, shares, attribution lines and reports (spec text, reference module and corpus, in progress) 2026-10-21 19:52:19 -04:00
cue-injection.md wai: live-ingest §12, Enhanced RTMP v2 implemented; ertmp_verify.py 2026-10-25 22:51:05 -04:00
delivery-telemetry.md wai/one-way-delivery, converted to the layout of the fix: no shared append point 2026-11-05 01:45:32 -05:00
derived-tracks.md deriving edge: second implementation, CI step, registry, SPEC §5 and CHANGELOG 2026-10-21 04:38:26 -04:00
deriving-edge.md wai: a C2PA Manifest Store bound to a stored WAI1 or WAI2 envelope, and to the receipt that delivered it 2026-11-09 10:50:25 -05:00
determinism-tiers.md wai: conditional inter-frame video at the integer tier, wai.video.int_cond 2026-11-09 13:08:11 -05:00
direction.md direction.md: the exploration record's pictures as layers and references 2026-10-21 16:12:23 -04:00
energy-binding.md wai: jwp-receipts — chains per (key, track), inclusion-verified, the stage and delivery-gap classes 2026-10-06 06:01:26 -04:00
energy-measurement.md Merge #463 (wai/energy-honesty @13964c94, replayed): EN-C, the energy order of dispatch, a self-metered relay, HwShunt closed to new profiles 2026-10-26 08:32:50 -04:00
energy-steering.md wai: say what fewer bytes do not save, and the changelog 2026-10-26 08:31:00 -04:00
exact-tonemap.md wai upscale and wai tonemap: an exact derivation from the command line, with its record and its check 2026-11-02 08:43:49 -05:00
exact-upscale.md wai/prior-carriage-spec, converted to the layout of the fix: no shared append point 2026-11-05 01:45:33 -05:00
exploration.md exploration: no consent requirement for a service's own mechanics; a lawful basis is a lawful-basis claim's 2026-10-21 14:42:30 -04:00
fleet.md wai target and wai auth: a named service and a kept key, and one --target on every operation that acts on a service 2026-11-08 09:39:06 -05:00
forensic-watermark.md forensic-watermark: a session is one grant's under one token, and an edge binds a token to its grant 2026-10-20 08:44:50 -04:00
format-probes.md format-probes: cite moq-streaming-format §6 for WAI defining no transport 2026-10-22 10:43:34 -04:00
frame-stream.md wai: conditional inter-frame video at the integer tier, wai.video.int_cond 2026-11-09 13:08:11 -05:00
graphics-vector.md wai-pack: packages of several components, and the composing sink's package packed by it 2026-11-09 12:58:33 -05:00
haptics.md wai: reader limits for the extension formats' durations 2026-10-14 11:07:16 -04:00
holdings.md Merge pull request 'wai: bearer-receipts §13, reconciliations and holdings records over a return path of a few bytes' (#637) from wai/compact-return-profile into main 2026-11-06 13:44:51 -05:00
http-delivery.md wai: a C2PA Manifest Store bound to a stored WAI1 or WAI2 envelope, and to the receipt that delivered it 2026-11-09 10:50:25 -05:00
impression-aggregates.md A report an aggregator committed and was sent again is not rejected, and a reader takes one statement of no count 2026-11-07 08:35:01 -05:00
influence.md wai: influence — the report's checks in the order they run, and a reference with no terms checked against nothing 2026-10-21 20:15:44 -04:00
integer-operators.md wai: conditional inter-frame video at the integer tier, wai.video.int_cond 2026-11-09 13:08:11 -05:00
integer-payloads.md wai: conditional inter-frame video at the integer tier, wai.video.int_cond 2026-11-09 13:08:11 -05:00
interactive-worlds.md One rule for versions: 1.0 is the WAI1 envelope's wire version, and the standard is a Draft 2026-11-06 18:28:23 -05:00
jwp-receipts.md One rule for versions: 1.0 is the WAI1 envelope's wire version, and the standard is a Draft 2026-11-06 18:28:23 -05:00
key-release.md A release time binds the list it is in, and the text no longer tells a key holder to swap lists 2026-11-07 03:01:50 -05:00
linear-film.md wai: reader limits for the extension formats' durations 2026-10-14 11:07:16 -04:00
live-ads.md wai/ad-consent-supply-chain, converted to the layout of the fix: no shared append point 2026-11-05 02:00:58 -05:00
live-compose.md wai: stitched presentation — player-signed claims of stitched and interstitial ads, the signed pod-input record, ad frames in live-compose 2026-10-25 21:34:50 -04:00
live-contribution.md joule-contrib: the SRT link tests again require every recovered packet taken before its delivery time; a recovery is pinned to when its gap was found, and a held packet keeps its margin at the link's end 2026-11-04 08:13:40 -05:00
live-events.md live rooms: AI participants are marked in their grant, and chat and reactions state their origin 2026-10-21 05:17:43 -04:00
live-ingest.md wai: capability attributes in a WHEP offer, so the gateway forwards each player the rendition its sink dispatches first 2026-11-09 16:08:15 -05:00
live-messaging.md live messaging: regenerate the corpus, a removed member's held-back message 2026-10-26 11:38:21 -04:00
live-metering.md live-metering states how a record flushed in parts counts, and that a hop may hold a joule ceiling 2026-11-07 03:49:45 -05:00
live-moderation.md wai: register wai.media.takedown — registry, wire identifiers, SPEC §5, CHANGELOG, the CI step, the corpus index 2026-10-21 19:46:20 -04:00
live-provenance.md wai: live provenance §10.3 names the deriving edge's ingredient rule for a packager that derives 2026-10-21 05:08:30 -04:00
live-recording.md live-recording: a record with the link record's magic, WLK1, is not a clip record 2026-11-04 05:19:53 -05:00
live-rooms.md Merge #482 (wai/world-on-moq @6745bf6c): wai.live.world, a shared world in a live room 2026-10-26 08:44:09 -04:00
live-worlds.md private world: a page follows the actors' tracks before it publishes its own (#482) 2026-10-26 18:43:13 -04:00
loc-carriage.md LOC carriage: WAI envelopes on LOC objects, a writer and reader in joule-moq, the corpus live-conformance/loc 2026-10-22 10:43:34 -04:00
media-identify.md wai: AC-3 and E-AC-3 registered, and a programme's audio renditions written for HLS and DASH 2026-11-08 15:11:47 -05:00
moq-streaming-format.md wai: NMSF tracks, neural frame streams mapped to and from packaging nvc 2026-11-09 10:35:30 -05:00
native-sink.md wai conform sink: the native sink through the conformance runner, and wai verify --conformant admits a result only for a run that passed 2026-11-04 12:29:01 -05:00
neural-dispatch.md wai: neural dispatch, a neural capability's networks on the neural processor under the tier its decode needs 2026-11-09 10:20:48 -05:00
oer-receipts.md oer-receipts names what reads price_exceeded 2026-11-07 03:01:51 -05:00
opportunity-report.md receipt-ledger §5.2: one registry of record kinds; the job kinds are 14 to 16 2026-10-30 00:51:06 -04:00
opus-dred.md wai-int-module: the first WA²ISM module of record, the operator-set module held at the integer level on every engine 2026-11-08 16:45:56 -05:00
packaging.md wai-pack: a sound track's Opus floor, supplied in the CMAF form 2026-11-09 15:21:55 -05:00
platform-decode.md wai: platform decode for every user-agent codec, video and audio, in the composing sink's dispatch 2026-11-09 16:06:44 -05:00
platform-encode.md An encode record states null when nothing was measured, and run keeps its record then 2026-11-07 03:01:50 -05:00
pq-signatures.md One rule for versions: 1.0 is the WAI1 envelope's wire version, and the standard is a Draft 2026-11-06 18:28:23 -05:00
prior-carriage.md wai/prior-carriage-spec, converted to the layout of the fix: no shared append point 2026-11-05 01:45:33 -05:00
projection.md CI: the header probes, CMSD reading and LOC carriage; the changelog 2026-10-22 10:46:24 -04:00
provenance.md wai: the reference meters seal what their reader is — ModelBased from a reported power, never OnChipCounter 2026-10-26 08:31:35 -04:00
quantum-answers.md wai-quantum: the answer layer's measured cost and a model's results in its spec, the docs in step, and the changelog 2026-10-28 08:42:54 -04:00
quantum-landscape.md wai-quantum: a landscape member declares its capacity, and is held to everything within it 2026-11-09 15:49:07 -05:00
quantum-ops.md wai: int_synth's weights are quantised after float training, and two engine paths moved 2026-10-09 11:55:53 -04:00
quantum-providers.md wai: wasmQ, an OpenQASM 3 program and the WebAssembly its externs call, run the same everywhere, metered and receipted 2026-11-09 13:22:09 -05:00
quantum-sim.md wai: the reference meters seal what their reader is — ModelBased from a reported power, never OnChipCounter 2026-10-26 08:31:35 -04:00
quantum-wasmq.md wai-quantum: no anonymous request ends the job service or holds it without limit 2026-11-09 15:15:56 -05:00
quantum-wasmq.wit wai: wasmQ, an OpenQASM 3 program and the WebAssembly its externs call, run the same everywhere, metered and receipted 2026-11-09 13:22:09 -05:00
receipt-ledger.md receipt-ledger: a consumption claim of the year 0000 is a control, and §12 states an instance declared again 2026-11-07 08:35:02 -05:00
reconstruction-binding.md neural: the binding check reads the descriptor, the C ABI reports the path, and CI runs the exact decoder 2026-11-04 12:29:01 -05:00
remote-desktop.md joule-moq-room: a record bound per principal, which cuts and removes the principal that reaches it 2026-10-26 11:22:50 -04:00
revenue-share.md receipt-ledger §5.2: one registry of record kinds; the job kinds are 14 to 16 2026-10-30 00:51:06 -04:00
robustness-evidence.md wai: register wai-mark:band64, a watermark for sound, peer of tent64 2026-11-08 16:20:24 -05:00
route-record.md What a receipt declares of its own figure moves no verdict, and the corpus holds it 2026-11-07 03:01:51 -05:00
rung-price.md rung-price: §7.1 states that a tariff of version 7 bills bytes_sent and pass_us 2026-11-07 08:58:46 -05:00
scene-carriage.md wai: scene-carriage text, corpus README and independent Python verifier 2026-10-22 07:51:03 -04:00
score.md wai.audio.score: band-limited timbres, a sine and noise, a voice per note, and two channels 2026-11-09 14:21:46 -05:00
settlement.md Tariff version 7 bills a cache's own instance, an aggregated count and what an agent consumed, and a settlement declaration names its instance 2026-11-07 08:35:01 -05:00
signal-health.md wai: signal health — what a monitor measured on an input, signed, and the switch that acts on it 2026-11-08 14:48:46 -05:00
sink-energy.md sink-energy §4.6: what the third point's tool read, and what its paper leaves unstated 2026-11-04 12:28:47 -05:00
spatial-audio.md wai: reader limits for the extension formats' durations 2026-10-14 11:07:16 -04:00
splat-exact.md splat-exact §1: the base text fixes the order and the kernel, and leaves the arithmetic to the renderer 2026-10-22 03:36:18 -04:00
staged-delivery.md wai: a refinement over the platform-decoded floor, wai.video.int_refine over a grain-free AV1 base 2026-11-09 10:46:06 -05:00
staged-measurement.md SPEC §3.1: pin by default; wai verify reports an unpinned envelope, and a decode's record names the set it read 2026-11-04 12:29:01 -05:00
state-feeds.md wai-pack: packages of several components, and the composing sink's package packed by it 2026-11-09 12:58:33 -05:00
stitched-presentation.md wai/ad-consent-supply-chain, converted to the layout of the fix: no shared append point 2026-11-05 02:00:58 -05:00
stream-audit.md wai: an unnamed acknowledgement refused, the collector's port, the stitched form 2026-10-25 22:05:49 -04:00
stream-termination.md wai: the refresh rate a page measures, stated exactly; wording 2026-10-22 13:53:23 -04:00
synthesis.md wai: operation receipts on every developer-facing write, and a signed origin claim for each generated picture 2026-11-09 15:26:12 -05:00
takedown.md wai/one-way-delivery, converted to the layout of the fix: no shared append point 2026-11-05 01:45:32 -05:00
task-fidelity.md wai: state what each determinism tier guarantees, and make replicate mean it 2026-09-28 18:25:52 -04:00
telemetry-aggregation.md A report an aggregator committed and was sent again is not rejected, and a reader takes one statement of no count 2026-11-07 08:35:01 -05:00
ternary-tt.md wai: the reference meters seal what their reader is — ModelBased from a reported power, never OnChipCounter 2026-10-26 08:31:35 -04:00
timed-text.md wai-pack: packages of several components, and the composing sink's package packed by it 2026-11-09 12:58:33 -05:00
timeliness.md wai: a statement or wanted object of the wrong shape is refused for it 2026-11-06 18:09:39 -05:00
transparency.md wai: key discovery, signing authority and module revocation 2026-10-01 07:12:20 -04:00
unidirectional-delivery.md wai: bearer-receipts — one receipt on every bearer; transmission and reconciliation claim classes (spec text) 2026-10-21 12:34:28 -04:00
volumetric.md wai: reader limits for the extension formats' durations 2026-10-14 11:07:16 -04:00
waism.md wai-int-module: the first WA²ISM module of record, the operator-set module held at the integer level on every engine 2026-11-08 16:45:56 -05:00