§4 PROVISIONAL, and how an implementation stops being it
E12's second paragraph, in full:
An implementation that has not been evaluated against a published profile MAY produce Records, but those Records' identity claims are PROVISIONAL: the Producer MUST NOT advertise cross-producer
pixel_hashcomparability for them, and a Consumer MUST NOT treatpixel_hashequality across unevaluated implementations as render identity.
So PROVISIONAL is not a defect and not a lower conformance level. It is a statement about what a pixel_hash from that implementation is evidence of: it remains a perfectly good within-producer grouping key, and it is not evidence of render identity against anybody else's records.
E12's third paragraph said this:
Publication of the first reference corpus and implementation profile is a VER 1.1 deliverable. Until it exists, every implementation is PROVISIONAL in this sense, and this annex says so rather than implying otherwise.
That sentence is now discharged. This directory is the first published reference corpus and implementation profile. From its publication:
- An implementation that runs this corpus and reproduces every digest in
manifest.jsonexactly is conformant forverd-pillow/1, and may drop PROVISIONAL for the Records it produces under it — that is, it may advertise cross-producerpixel_hashcomparability **with other implementations conformant for the same profile**, and a Consumer may treatpixel_hashequality between two such implementations as render identity. - An implementation that has not run the corpus, or that runs it and misses any digest, stays PROVISIONAL. Nothing about it has got worse; it simply has not made the claim.
- Comparability is scoped to the profile. Conformance for
verd-pillow/1says nothing about an implementation conformant for some futureverd-pillow/2or a differently-pinned profile. Two profiles are comparable only where a published evaluation says they agree, and no such evaluation exists yet. - A Record does not carry a profile identifier — VER 1.0.x and the 1.1 draft have no field for one. A Producer states its profile outside the Record, the way E29 requires a Producer to document what its
weights_sha256covers.
