task-fidelity: name the contract for media a model consumes, not a hash #83

Merged
dcharlot merged 1 commit from wai/task-fidelity into main 2026-09-10 12:20:55 -04:00
Owner

determinism-tiers.md answers one question: does the sink reproduce the same bytes? A growing class of coded media does not answer that question at all — and WAI can register these capabilities today without being able to say what conformance means for them. ReplicateClass::Behavioral is a disclaimer, not a criterion. "Task-equivalent but not bit-equal" is unstateable, so an implementation either overclaims a reproducibility tier it does not meet, or says nothing.

Three arrivals, none of them ours

  • ISO/IEC 23888-2 (VCM — DIS, FDIS planned late 2026): codes video and descriptors, jointly optimised for machine-task performance after decoding.
  • ISO/IEC 23888-4 (FCM — CD): codes intermediate feature tensors from inside a network. No pixels are reconstructed at any point, so there is no medium to hash.
  • A vendor markets compression as safe for machine consumption when behavioural change is statistically indistinguishable from the variance the model already tolerates — with, by its own account, no shared framework for the claim.

Why a sibling file, not a third tier

The two tiers in determinism-tiers.md are reproducibility guarantees: a sink can check them from the bytes it received. A task claim cannot be checked that way — it needs a model, a corpus, and a test run. Listing them together would blur the one property that file currently keeps clean.

The claim

A five-tuple, meaningless with any element missing: model, test, tolerance (τ), observed (δ), evidence.

  • model and test MUST be content addresses. "Tested on a standard detector" is unfalsifiable; a hash is not.
  • A tolerance without an observation is a target, not a claim, and MUST NOT be sealed as one.
  • A claim MUST NOT be restated for a different model or corpus without a new observation — behavioural tolerance does not transfer by assertion.

Evidence grading

Modelled on energy-measurement.md §2, on the same principle that what separates the rungs is provenance and scope, not accuracy: Measured / Transferred / Asserted, no promotion in transit, and a verifier that cannot resolve model and test MUST treat the claim as Asserted whatever it says.

§4 states the limitation rather than hiding it: this is a graded assertion, not a verification, and a relying party reading it as the latter has misread it.

FCM's split budget — named, not solved

The cut point N makes the origin/sink work partition a wire parameter, which breaks joules_micro as one u64 for one producer. A cut-point-aware receipt needs joules either side plus a network-identity hash making the halves provably compose — and that third piece is a carriage problem WAI has not solved. Until then such a claim MUST state the cut point and MUST NOT report a single joule figure as if one producer did all the work.

No new wire format, no new receipt mechanism. Second item in the #80 ingest queue, and the second of only two with no external dependency (the first was #81).

🤖 Generated with Claude Code

`determinism-tiers.md` answers one question: *does the sink reproduce the same bytes?* A growing class of coded media does not answer that question at all — and WAI can register these capabilities today without being able to say what conformance means for them. `ReplicateClass::Behavioral` is a disclaimer, not a criterion. **"Task-equivalent but not bit-equal" is unstateable**, so an implementation either overclaims a reproducibility tier it does not meet, or says nothing. ### Three arrivals, none of them ours - **ISO/IEC 23888-2** (VCM — **DIS**, FDIS planned late 2026): codes video *and* descriptors, jointly optimised for machine-task performance after decoding. - **ISO/IEC 23888-4** (FCM — **CD**): codes intermediate feature tensors from inside a network. **No pixels are reconstructed at any point**, so there is no medium to hash. - A vendor markets compression as safe for machine consumption when behavioural change is statistically indistinguishable from the variance the model already tolerates — with, by its own account, no shared framework for the claim. ### Why a sibling file, not a third tier The two tiers in `determinism-tiers.md` are **reproducibility** guarantees: a sink can check them from the bytes it received. A task claim cannot be checked that way — it needs a model, a corpus, and a test run. Listing them together would blur the one property that file currently keeps clean. ### The claim A five-tuple, meaningless with any element missing: `model`, `test`, `tolerance` (τ), `observed` (δ), `evidence`. - `model` and `test` **MUST** be content addresses. *"Tested on a standard detector"* is unfalsifiable; a hash is not. - A tolerance without an observation is a **target, not a claim**, and MUST NOT be sealed as one. - A claim MUST NOT be restated for a different model or corpus without a new observation — behavioural tolerance does not transfer by assertion. ### Evidence grading Modelled on `energy-measurement.md` §2, on the same principle that **what separates the rungs is provenance and scope, not accuracy**: `Measured` / `Transferred` / `Asserted`, no promotion in transit, and a verifier that cannot resolve `model` and `test` MUST treat the claim as `Asserted` whatever it says. §4 states the limitation rather than hiding it: this is a **graded assertion, not a verification**, and a relying party reading it as the latter has misread it. ### FCM's split budget — named, not solved The cut point N makes the origin/sink work partition a wire parameter, which breaks `joules_micro` as one `u64` for one producer. A cut-point-aware receipt needs joules either side **plus a network-identity hash making the halves provably compose** — and that third piece is a carriage problem WAI has not solved. Until then such a claim MUST state the cut point and MUST NOT report a single joule figure as if one producer did all the work. No new wire format, no new receipt mechanism. Second item in the #80 ingest queue, and the second of only two with no external dependency (the first was #81). 🤖 Generated with [Claude Code](https://claude.com/claude-code)
task-fidelity: name the contract for media a model consumes, not a hash
Some checks failed
no-vanity-metrics / Scan committed Markdown for vanity metrics (pull_request) Successful in 3s
standards workspaces build + test / eoc-rs (pull_request) Successful in 1m47s
standards workspaces build + test / jcp-rs (pull_request) Successful in 1m13s
standards workspaces build + test / aac-rs (pull_request) Failing after 37m53s
standards workspaces build + test / proof-rs (pull_request) Successful in 1m33s
standards workspaces build + test / joule-code-rs (pull_request) Successful in 35s
standards workspaces build + test / sandbox-rs (pull_request) Successful in 2m1s
standards workspaces build + test / jouleclaw-rs (pull_request) Successful in 2m15s
standards workspaces build + test / joulecontract-rs (pull_request) Successful in 31s
standards workspaces build + test / map-rs (pull_request) Successful in 28s
standards workspaces build + test / mesh-rs (pull_request) Successful in 30s
standards workspaces build + test / smart-byte-rs (pull_request) Successful in 2m34s
standards workspaces build + test / openpay (pull_request) Successful in 1m12s
standards workspaces build + test / arl-rs (pull_request) Successful in 8m51s
standards workspaces build + test / joule-ui-rs (pull_request) Successful in 10m18s
standards workspaces build + test / jouledesk-rs (pull_request) Successful in 9m22s
standards workspaces build + test / joulehook-rs (pull_request) Successful in 10m21s
standards workspaces build + test / sense-rs (pull_request) Successful in 9m42s
4f7360a719
`determinism-tiers.md` answers one question — does the sink reproduce the same
bytes? A growing class of coded media does not answer that question at all, and
WAI can register these capabilities today without being able to say what
conformance means for them. `ReplicateClass::Behavioral` is a disclaimer, not a
criterion; "task-equivalent but not bit-equal" is unstateable, so an
implementation either overclaims a reproducibility tier it does not meet or says
nothing.

Three independent arrivals, none of them ours:

  * ISO/IEC 23888-2 (VCM, DIS, FDIS planned late 2026) codes video AND
    descriptors, optimised for machine-task performance after decoding.
  * ISO/IEC 23888-4 (FCM, CD) codes intermediate feature tensors from inside a
    network — no pixels are reconstructed at any point, so there is no medium to
    hash.
  * A vendor markets compression as safe for machine consumption when the
    behavioural change is statistically indistinguishable from the variance the
    model already tolerates — with, by its own account, no shared framework for
    the claim.

Deliberately a SIBLING file, not a third tier. The two tiers in
`determinism-tiers.md` are reproducibility guarantees a sink can check from the
bytes it received. A task claim cannot be checked that way — it needs a model, a
corpus and a test run. Listing them together would blur the one property that
file keeps clean.

The claim is a five-tuple and is meaningless with any element missing: model,
test, tolerance τ, observed δ, evidence class. `model` and `test` MUST be content
addresses — "tested on a standard detector" is unfalsifiable, a hash is not — and
a tolerance without an observation is a target, not a claim.

Evidence is graded the way `energy-measurement.md` grades acquisition, on the
same principle that what separates the rungs is provenance and scope, not
accuracy: Measured / Transferred / Asserted, no promotion in transit, and a
verifier that cannot resolve model and test MUST treat the claim as Asserted
whatever it says.

§4 states the limitation rather than hiding it: this is a graded assertion, not a
verification, and a relying party that reads it as the latter has misread it.

§5 names FCM's split budget without pretending to solve it. The cut point N makes
the origin/sink work partition a wire parameter, which breaks `joules_micro` as
one u64 for one producer. A cut-point-aware receipt needs joules either side plus
a network-identity hash making the halves provably compose — and that third piece
is a carriage problem WAI has not solved. Until then such a claim MUST state the
cut point and MUST NOT report a single joule figure as if one producer did all
the work.

No new wire format, no new receipt mechanism. Second item in the landscape survey
(#80) ingest queue, and the second of the two with no external dependency.

Co-Authored-By: Claude Opus 5 <[email protected]>
dcharlot force-pushed wai/task-fidelity from 4f7360a719
Some checks failed
no-vanity-metrics / Scan committed Markdown for vanity metrics (pull_request) Successful in 3s
standards workspaces build + test / eoc-rs (pull_request) Successful in 1m47s
standards workspaces build + test / jcp-rs (pull_request) Successful in 1m13s
standards workspaces build + test / aac-rs (pull_request) Failing after 37m53s
standards workspaces build + test / proof-rs (pull_request) Successful in 1m33s
standards workspaces build + test / joule-code-rs (pull_request) Successful in 35s
standards workspaces build + test / sandbox-rs (pull_request) Successful in 2m1s
standards workspaces build + test / jouleclaw-rs (pull_request) Successful in 2m15s
standards workspaces build + test / joulecontract-rs (pull_request) Successful in 31s
standards workspaces build + test / map-rs (pull_request) Successful in 28s
standards workspaces build + test / mesh-rs (pull_request) Successful in 30s
standards workspaces build + test / smart-byte-rs (pull_request) Successful in 2m34s
standards workspaces build + test / openpay (pull_request) Successful in 1m12s
standards workspaces build + test / arl-rs (pull_request) Successful in 8m51s
standards workspaces build + test / joule-ui-rs (pull_request) Successful in 10m18s
standards workspaces build + test / jouledesk-rs (pull_request) Successful in 9m22s
standards workspaces build + test / joulehook-rs (pull_request) Successful in 10m21s
standards workspaces build + test / sense-rs (pull_request) Successful in 9m42s
to 00dcf1f1aa
Some checks failed
standards workspaces build + test / aac-rs (pull_request) Successful in 32s
standards workspaces build + test / joule-code-rs (pull_request) Successful in 36s
standards workspaces build + test / jouleclaw-rs (pull_request) Successful in 2m9s
standards workspaces build + test / joulecontract-rs (pull_request) Successful in 39s
standards workspaces build + test / map-rs (pull_request) Successful in 31s
standards workspaces build + test / mesh-rs (pull_request) Successful in 28s
no-vanity-metrics / Scan committed Markdown for vanity metrics (pull_request) Successful in 3s
standards workspaces build + test / openpay (pull_request) Successful in 1m12s
WAI conformance / cargo-class corpora · linux-arm64 (pull_request) Successful in 36s
WAI conformance / cross-arch byte-equality · linux-arm64 (pull_request) Successful in 17s
standards workspaces build + test / eoc-rs (pull_request) Successful in 1m47s
standards workspaces build + test / jcp-rs (pull_request) Successful in 1m14s
standards workspaces build + test / proof-rs (pull_request) Successful in 1m14s
standards workspaces build + test / sandbox-rs (pull_request) Successful in 2m4s
standards workspaces build + test / smart-byte-rs (pull_request) Successful in 2m32s
WAI conformance / cargo-class corpora · linux (pull_request) Successful in 30s
WAI conformance / cross-arch byte-equality · linux (pull_request) Successful in 14s
WAI conformance / C2PA manifest emission · signed, read back, validated (pull_request) Successful in 40s
standards workspaces build + test / arl-rs (pull_request) Successful in 9m22s
standards workspaces build + test / joule-ui-rs (pull_request) Successful in 9m45s
standards workspaces build + test / jouledesk-rs (pull_request) Successful in 9m36s
standards workspaces build + test / joulehook-rs (pull_request) Successful in 9m49s
standards workspaces build + test / sense-rs (pull_request) Successful in 9m35s
WAI conformance / cargo-class corpora · macos (pull_request) Successful in 1m8s
WAI conformance / cross-arch byte-equality · macos (pull_request) Successful in 26s
WAI conformance / cargo-class corpora · windows (pull_request) Has been cancelled
WAI conformance / cross-arch byte-equality · windows (pull_request) Has been cancelled
2026-09-10 10:26:05 -04:00
Compare
Sign in to join this conversation.
No reviewers
No labels
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set

Reference
Transaction-Science/open-standards!83
No description provided.