Some checks failed
joule-moq-remote host agent / joule-moq-remote · does this change touch it (push) Successful in 1m15s
joule-moq-http live HTTP egress / joule-moq-http · does this change touch it (push) Successful in 58s
joule-moq-room room service / joule-moq-room · does this change touch it (push) Successful in 1m15s
joule-moq-web browser client / joule-moq-web · does this change touch it (push) Successful in 1m3s
wai-app and Create / wai-app · does this change touch it (push) Successful in 1m15s
wai-audit collector and player integration / does this change touch it (push) Successful in 1m2s
wai-fleet service / does this change touch it (push) Successful in 52s
WAI operation catalogue / does this change touch it (push) Successful in 58s
wai-key-proxy / does this change touch it (push) Successful in 41s
wai-ledger service / does this change touch it (push) Successful in 22s
WAI Studio / does this change touch it (push) Successful in 15s
wai-sink-android native sink library / does this change touch it (push) Successful in 16s
wai-quantum for JavaScript / does this change touch it (push) Successful in 42s
wai-quantum studio and desktop / does this change touch it (push) Successful in 33s
wai-sink-swift native sink package / does this change touch it (push) Successful in 32s
WAI breaking changes and the conformance runner / WAI breaking · does this change touch WAI (push) Successful in 13s
wai-quantum energy-landscape jobs / does this change touch it (push) Successful in 12s
wai-quantum energy-landscape jobs / the same bits · macos (push) Waiting to run
wai-app and Create / wai-app · tests, clippy, the line language's verifier (linux) (push) Successful in 31s
wai-key-proxy / proxy · linux (push) Successful in 1m12s
wai-audit collector and player integration / collector · linux (push) Successful in 2m23s
wai-fleet service / service · linux (push) Successful in 2m12s
WAI Studio / the catalogue's actions, the unit tests and the core · linux (push) Successful in 1m3s
wai-ledger service / service · linux (push) Successful in 2m10s
joule-moq-remote host agent / joule-moq-remote, every target (linux-arm64) (push) Successful in 3m46s
joule-moq-http live HTTP egress / joule-moq-http, every target (push) Successful in 3m6s
wai-quantum studio and desktop / studio · browser (push) Successful in 3m40s
wai-quantum for JavaScript / javascript · linux (push) Successful in 4m35s
wai-sink-android native sink library / the JNI layer and the platform-free half on the host JVM · linux-arm64 (push) Successful in 4m22s
joule-moq-room room service / joule-moq-room, every target (push) Failing after 9m31s
wai-quantum studio and desktop / desktop app · linux (push) Successful in 7m26s
repository checks / lockfiles, advisories, tests in CI, workflow hygiene, spec and section references, public text (push) Successful in 12m34s
WAI operation catalogue / the catalogue and every door · linux (push) Successful in 13m42s
wai-quantum studio and desktop / desktop app · windows (push) Successful in 11m40s
WAI Studio / Studio in WebKit · linux (push) Successful in 21m38s
WAI breaking changes and the conformance runner / WAI breaking · wire, record and API against main · linux (push) Successful in 2m31s
wai-quantum energy-landscape jobs / native against WebAssembly, over many seeds (push) Successful in 5m10s
WAI breaking changes and the conformance runner / WAI breaking and conform · their tests, and the independent verifiers through wai conform · linux (push) Successful in 10m8s
wai-quantum energy-landscape jobs / the same bits · linux-arm64 (push) Successful in 14m24s
wai-quantum energy-landscape jobs / the module under wasm32-wasip2 (wasmtime) (push) Successful in 13m14s
wai-quantum energy-landscape jobs / reader, kernels, answers and the stated result · linux, release (push) Successful in 17m8s
joule-moq-remote host agent / joule-moq-remote, every target (macos) (push) Successful in 55s
wai-audit collector and player integration / collector, player integration and the browser end to end · macos (push) Successful in 1m52s
wai-fleet service / service · macos (push) Successful in 40s
wai-ledger service / service · macos (push) Successful in 1m4s
wai-app and Create / wai-app · Create, browser end-to-end (macos) (push) Successful in 7m48s
joule-moq-web browser client / joule-moq-web · browser end-to-end (macos) (push) Successful in 15m40s
wai-sink-android native sink library / every ABI, the AAR, and the instrumented tests in a headless emulator · macos (push) Successful in 6m45s
WAI Studio / Studio in Chromium and Firefox · macos (push) Successful in 10m26s
wai-quantum studio and desktop / desktop app · macos (push) Successful in 4m51s
wai-sink-swift native sink package / libwai slices, desktop tests, simulator tests · macos (push) Successful in 15m16s
SPEC §5 registers `wai.video.vcm` (video coding for machines, ISO/IEC 23888-2) and `wai.tensor.fcm` (feature coding for machines, ISO/IEC 23888-4) as candidates: neither part is published and neither's text is openly readable (the committee's project pages give each the status `ongoing` and list only common test conditions), so no payload format is pinned, neither is emitted or dispatched, a packager refuses a policy that asks for one (`capability-candidate`), and format-probes §19 says why neither has a probe: `no_probe`, whatever the bytes. Licence class `patent-pool`, provisional; replicate class `StandardUnclassified`. Nothing joins the floor or the recommended set. No benchmark was run and no task accuracy is claimed. task-fidelity §5, which named the split-computation case without solving it, now registers the claim class `split-computation` (jwp-receipts §2.4.4 lets the text that defines a class register it; no core text changes). When a network is cut in two, each side signs a claim about the object that carried the tensor across the cut: its side, the fabric it ran on, what it consumed and produced, the digests of both halves' parameter sets, the cut, a network digest over the cut and both sets, and its energy with its acquisition class, or `null` when unmetered and never 0. Two halves compose only as a head and a tail about one tensor, stating one cut, one network and the same two sets; a set the verifier holds must have the digest they name. The pair's account gives the figures by acquisition class (one class's figures are added, two classes' never are, and there is no total), names the unmetered sides, and states its coverage. machine-descriptors, a new extension of the `live` profile: labels, picture regions and embeddings by digest a model produced about one media object, as the payload (`WMD1`) of a signed `meta` event of live-events anchored to that object, signed by the machine that ran the model and stating the model by digest. A zero model digest is refused (`descriptor_no_model`), as are an origin that is not machine or machine-reviewed, an event with no anchor and a model a reader does not admit. No event kind and no transport is added: the event rides an MSF event timeline indexed by the Location of the object it describes. The references are `claim_receipt::split` and the `machine_coding` module of wai-rs (feature `machine_coding`). The corpus is live-conformance/machine-coding/ (2 candidates, 4 network digests, 18 claims, 12 pairs, 26 descriptor events) and format-probe-conformance gains the two `no_probe` vectors. machine_coding_verify.py, the second implementation, agrees on every case, fails every mutated copy (24 of 24) and catches every weakened verifier (32 of 32); claim_verify.py holds the class's body and rules and replays the corpus's claims through steps 1 to 4. Planted faults, each refused with its own reason: an envelope naming a candidate reported and inert at dispatch; halves of two networks, two cuts, two tensors, two heads, and a held parameter set of another digest; a total added to a body; an unmetered half written as 0 J; a descriptor with no model identity, a person's origin, no anchor, an unlisted model, a changed payload under its old signature. decisions D9 records what was read of ISO/IEC 23888 and what follows. Co-Authored-By: Claude <[email protected]>
40 lines
2.9 KiB
Markdown
40 lines
2.9 KiB
Markdown
# live-conformance/machine-coding — coding for machines
|
|
|
|
The corpus of [`extensions/task-fidelity.md`](../../extensions/task-fidelity.md) §5 (the
|
|
`split-computation` claim), [`extensions/machine-descriptors.md`](../../extensions/machine-descriptors.md)
|
|
and [`extensions/format-probes.md`](../../extensions/format-probes.md) §19, in one file,
|
|
`vectors.json`.
|
|
|
|
**Provenance.** Generated here by `wai_machine_coding_vectors gen` (`wai-rs`, feature
|
|
`machine_coding`), from Ed25519 keys on seeds of one byte repeated 32 times, constant instants,
|
|
and digests that are the SHA-256 of a phrase and name nothing: no parameter set, no tensor, no
|
|
model and no media exists behind any of them. No input from outside this repository, and no
|
|
bitstream of ISO/IEC 23888: neither part's text is openly readable, so none is written.
|
|
|
|
- `candidates` states, for `wai.video.vcm` and `wai.tensor.fcm`, that each is registered, a
|
|
candidate, not dispatchable, and that its probe is `no_probe`.
|
|
- `networks` (task-fidelity §5.1) are each a `cut`, a `head_set` and a `tail_set` with the
|
|
`network` digest over them.
|
|
- `claims` are each one `split-computation` claim's `wire` text; `outcome` is `verified`, or
|
|
`refuse` with the step of jwp-receipts §3.1 and the reason.
|
|
- `pairs` (task-fidelity §5.3, §5.4) are each two claims, `a` and `b`, and `held`, the digests of
|
|
the parameter sets the verifier holds (`null` where it holds none); `outcome` is `composed` with
|
|
the `account` (each side, the rows by acquisition class, the unmetered sides and the coverage;
|
|
it has no total), or `refuse` with its step and reason.
|
|
- `descriptors` (machine-descriptors §4) are each an event `record` in lowercase hexadecimal, read
|
|
for the room `room`, with the `models` the reader admits (`null` where it is given none);
|
|
`outcome` is `read`, with what was `described` and the `msf` record that carries the event
|
|
(live-events §8.1, at `t0_unix_us`), or `refuse` and its reason.
|
|
|
|
Each case states the outcome it was written to have, declared in the generator and never copied
|
|
from a verifier: a refusal's step and reason, an account's rows, a descriptor's items.
|
|
|
|
`wai_machine_coding_vectors verify` and `tests/machine_coding.rs` check that the file regenerates
|
|
byte for byte, that `wai-rs` reaches every stated outcome, that a refusal restated as an
|
|
acceptance is noticed, and that the extensions list the reference's reasons.
|
|
`../machine_coding_verify.py` is the second implementation, written from the extensions' text: it
|
|
takes each claim through jwp-receipts §3.1 steps 1 to 4 with `../../claim-conformance/claim_verify.py`,
|
|
writes the pair's checks, the account, the event and descriptor readers and the MSF record
|
|
itself, reads the candidates from the published registry export and format-probes' text, mutates
|
|
copies of the corpus and drops each of its own checks in turn and requires each to be caught.
|
|
`claim_verify.py split vectors.json` replays the claims alone.
|