Status: frozen 2026-05-22, not a finished standard. Published under the Community Specification License 1.0 by a single editor; no standards body has adopted it, and it carries no presumption of conformity with any regulation. Settled: §3 canonicalization has not changed since the freeze; three defect reports accepted 2026-08-23 added rejection requirements for invalid input and changed no canonical byte sequence and no digest of any valid manifest; the four reference implementations (Python, JavaScript, Go, Rust) agree byte-for-byte on 21 conformance vectors, all four reject the 16 negative-conformance cases that are not YAML-specific, and the two that parse YAML reject all 20; the media type application/vnd.prml+yaml was registered with IANA on 2026-09-03 — registration is not endorsement. Not settled: a manifest and its digest carry no evidence of time on their own — only a time-anchored record, a digest countersigned by an independent timestamp authority or entered in a public transparency log, can establish that a criteria object existed no later than the anchored time. Even then it does not establish that the evaluation ran afterwards: this specification does not bind a criteria record to the execution it describes. Execution linkage is out of scope for v0.1 and is the main open gap; §3 also has no formal grammar, so an independent implementation must work from the normative prose and the conformance vectors. Implementation status: all four reference implementations were written by the editor, and all public registry records to date originate with the editor. No independent implementation is known to the editor; independent interoperability therefore remains unproven. A manifest is interpreted under the rules identified by its version field, so valid v0.1 manifests continue to verify under v0.1 rules as later revisions are developed. The v0.2 RFC froze on 2026-05-22 and its formal comment window is closed; general feedback and defect reports remain welcome at GitHub discussions or [email protected] .
v0.2 RFC frozen 2026-05-22 23:59 UTC (comment window closed). Read the draft at /v0.2-rfc . The formal comment window is closed; general feedback and defect reports remain welcome at GitHub issues or [email protected] . v0.1 (this page) remains the current version; v0.2 preserves v0.1 canonicalization and hashes for valid v0.1 manifests. How to reach the editor: /editor .
Live registry: paste a manifest at registry.falsify.dev , get a SHA-256 permalink and a README badge — no account required, and the manifest you commit is stored and served publicly. Reference implementations (Python, JS, Go, Rust) produce byte-equivalent output across 21 conformance vectors (13 v0.1 + 8 v0.2) .
60-second walkthrough — commit the criteria before a run, get a SHA-256 receipt, record later revisions on the amendment chain. Live demo at /demo .
Loading specification…
PRML v0.1 is a frozen working draft: feedback and defect reports remain welcome, but the canonicalization and hashes of valid v0.1 manifests will not change. Published under the Community Specification License 1.0 (changed from CC BY 4.0 on 2026-08-29; copies distributed before that date remain available under CC BY 4.0). Editor: Cüneyt Öztürk · [email protected]
Reference implementation falsify is MIT licensed.
Cite this spec: Öztürk, C. (2026). PRML: A Pre-Registered Manifest Format for Machine Learning Evaluation Claims (v0.1) . Zenodo. https://doi.org/10.5281/zenodo.20177839