SPEC §3.1 defines the pin a manifest carries (conditioning.prior, and a WAI2 rendition's prior): id, sha256, determinism, and the optional form, tier and supersedes. The digest covers the whole parameter set. A set of several files is pinned through its listing, the new registered prior form wai.prior.set. A sink verifies the pin before it decodes, reports a refusal with one of an ordered set of snake_case reasons, and decodes only from the set it verified. Tier is a closed vocabulary; supersedes is informative. A pin that does not resolve makes its capability unsupported for that envelope: SPEC §4 dispatch continues at the fallback, §7.1 selection at the next rendition, and an inert envelope's error names the reasons. A rendition entry may carry id, sha256 and, on a companion, companion_of_id. SPEC §7 gains a Digests subsection, and §8 says how a MINOR revision adds an optional member. In wai-rs: the manifest types are #[non_exhaustive] with builders; a new pin module verifies pins in memory and on disk; Wai::dispatch_verified, WaiMulti::pick and primary check pins and component digests; every neural decoder reads through ParamSource; a codec-free `ffi` feature carries the C envelope surface with wai_envelope_select and wai_neural_decode_ex. wai-web wraps wai::container. New vectors: the int_mlicpp set-form twin and the pin-conformance corpus with an independent Python verifier, plus sha256.json sidecars for the vectors of capabilities that decode against a parameter set. Squashed from wai/stream-a-parameter-set-identity onto link 12. Conflicts are resolved to keep both sides; the integration commits that follow make the two streams agree. Co-Authored-By: Claude Opus 5.5 <[email protected]>
18 lines
719 B
JSON
18 lines
719 B
JSON
{
|
|
"gradient": {
|
|
"buffer": "RGB8: rows top to bottom, pixels left to right, R, G, B bytes",
|
|
"sha256": "ce0d4833e42d670daf90aab70f0ea255d1a0610d3984845ea61dfe2b43db7cd4"
|
|
},
|
|
"bloom": {
|
|
"buffer": "RGB8: rows top to bottom, pixels left to right, R, G, B bytes",
|
|
"sha256": "14d16a169b0fed52b52f0f38f30af1751e22072a87852a654838f48f299d49bd"
|
|
},
|
|
"facade": {
|
|
"buffer": "RGB8: rows top to bottom, pixels left to right, R, G, B bytes",
|
|
"sha256": "fe3578908ce45680c053fdd589c033e50ae0045eaa24330356603fa325becdc0"
|
|
},
|
|
"photo": {
|
|
"buffer": "RGB8: rows top to bottom, pixels left to right, R, G, B bytes",
|
|
"sha256": "2a3db89614cd632829d873cf59d6300b0e49c5647a9ede1115719a6604d42115"
|
|
}
|
|
}
|