--- title: PRML Playground emoji: 🔐 colorFrom: green colorTo: gray sdk: static pinned: false license: mit short_description: In-browser SHA-256 manifest editor for the PRML spec --- # PRML Playground [![DOI](https://zenodo.org/badge/DOI/10.5281/zenodo.20177839.svg)](https://doi.org/10.5281/zenodo.20177839) [![SchemaStore](https://img.shields.io/badge/schema-in%20SchemaStore-blue.svg)](https://www.schemastore.org/json/) > Edit a Pre-Registered ML Manifest in your browser. Watch canonical bytes update. SHA-256 computed via Web Crypto. Optionally anchor publicly. This is a Hugging Face Space mirror of the playground at [falsify.dev/playground](https://falsify.dev/playground). Same code, same hash output (byte-equivalent to the Python reference across 21 conformance vectors), zero server-side state. **Latest:** The PRML JSON Schema was merged into the [SchemaStore catalog](https://www.schemastore.org/json/) on 2026-05-11 — `*.prml.yaml` files now autocomplete in VS Code, JetBrains, Helix, Zed, and Cursor out of the box. v0.1 is also published on Zenodo with a citable DOI: [10.5281/zenodo.20177839](https://doi.org/10.5281/zenodo.20177839). ## What is PRML? **PRML** (Pre-Registered ML Manifest) is an open CC BY 4.0 specification for committing ML evaluation claims to a SHA-256 hash *before* the experiment runs. Eight YAML fields hashed over canonical bytes — the hash is the receipt that the threshold direction was fixed before the data arrived. - **Spec:** [spec.falsify.dev/v0.1](https://spec.falsify.dev/v0.1) - **v0.2 RFC** (frozen 2026-05-22): [spec.falsify.dev/v0.2-rfc](https://spec.falsify.dev/v0.2-rfc) - **JSON Schema:** [spec.falsify.dev/schema/](https://spec.falsify.dev/schema/) - **Reference impls:** four — `pip install falsify` (PyPI) · `npm install falsify-js` (npm) · Go + Rust source at [studio-11-co/falsify/impl/](https://github.com/studio-11-co/falsify/tree/main/impl) (all MIT, byte-equivalent across 21 conformance vectors) - **Repos:** [github.com/studio-11-co/falsify](https://github.com/studio-11-co/falsify) ## How to use this Space 1. Pick one of the four pre-loaded examples (minimal accuracy, RLHF win-rate, streaming Elo, revoked) or paste your own YAML 2. Watch the canonical bytes and SHA-256 update on every keystroke 3. Click **Anchor publicly** to commit the hash to the public registry at [registry.falsify.dev](https://registry.falsify.dev) — no account, no server-side state beyond the hash and a timestamp 4. Or click **Generate badge** for a local-only badge URL Pure browser computation. The SHA-256 is computed via the Web Crypto API (`crypto.subtle.digest`). No data leaves your browser unless you click "Anchor publicly". ## Why pre-registration > Most published ML accuracy numbers are unfalsifiable in practice. The metric, threshold, dataset slice, and random seed are reported *after* the experiment, leaving no cryptographic record of what was committed *before* it. PRML closes one specific gap: it makes post-hoc threshold tuning mechanically detectable. It is not an attestation framework, a benchmark, or a publication-integrity system. PRML §8.1 names what it does not solve: a publisher who pre-registers ten claims and publishes only the favourable ones is still operating below the line of public accountability. ## License - **This Space (HTML/CSS/JS):** MIT - **PRML specification:** CC BY 4.0 - **Patent non-assertion grant** is published with the spec: implementations are free to use the manifest schema, canonical byte serialisation, and registry anchor protocol royalty-free, irrevocably, worldwide. ## Cite Öztürk, C. (2026). *PRML: A Pre-Registered Manifest Format for Machine Learning Evaluation Claims (v0.1)*. Zenodo. ## Authors Cüneyt Öztürk. Contact: hello@falsify.dev · [falsify.dev](https://falsify.dev)