FALSIFY · v0.4.0
◆sha-256
 
Lock the claim · Then run

Evaluation Evidence Pack · powered by the open PRML specification · Community Specification License 1.0

falsify

Prove what the evaluation was supposed to pass —
before you show the result.

Create a verifiable Evaluation Evidence Pack: the acceptance criteria, a timestamped commitment, revision history, and a verification link.
Powered by the open PRML specification.

See a sample Evidence Pack → Try it in a browser →

It verifies the criteria record, not the evaluation result.

For compliance leads under the EU AI Act high-risk deadline → what PRML maps to

Assurance or audit practice? How the lock fits your engagements → Falsify for audit firms

Does this report show when the bar was set? Paste an evaluation report, model card or validation summary → Evidence Check (free, no sign-up)

receipts: Ed25519 signed · RFC 3161 timestamped · mirrored to the Rekor transparency log since 11 July 2026 · sealed commits since 3 September 2026 (bar private, ordering public) · each permalink states its own anchors · verify at registry.falsify.dev
◆ For Your Role ◆
Routing

Five entry points.
Pick the one that matches the job.

Each row maps a role to a working pattern on the spec subdomain. Same primitive, five framings.

Self-assessment
Self-assess your EU AI Act evidence readiness in 10 questions
Free. No signup. Maps your current evidence posture against the 2 December 2027 high-risk enforcement bar (Annex III) and points at the gaps.
Run the 10-question assessment →
◆ Initializing System ◆
The System

Init. Lock. Run.
Verdict. Guard.

The claim becomes the spec. The spec becomes the hash. The hash becomes the verdict. The order is the contract.
Both CLIs ship with pip install falsify: falsify is the PRML reference, falsify-engine the workflow engine below.

For developers: PRML is the open specification falsify implements — 9 fields, one hash, CI exits 3 on tamper. pip install falsify · read the spec

falsify-engine · Hypothesis A · v2
Replay
Spec Ledger · falsify-engine list — Falsify's own runs4 Locked
claude_surface · dogfoodPASS · 10
cli_startup · dogfoodPASS · 113ms
test_coverage_count · dogfoodPASS · 588
hypothesis_a · internalFAIL · 0.214
honesty −−scope dogfood1.00
Dogfood values: falsify CI, 23 Sep 2026 · run log → · hypothesis_a is an internal run
Tamper detection · change the valueINTACT
threshold: above
sha-256 of the line above: a20a92a65301
Speccanonical YAML · SHA-256 hashed before run
Verdictnumeric compare · no LLM judgment
Guardgit commit-msg hook · blocks contradictions
Surface5 skills · 2 subagents · 3 commands · 1 MCP
exit 0PASSverdict satisfies the locked threshold
exit 10FAILverdict against the locked threshold; ship as recorded
exit 3TAMPEREDspec edited after lock · CI refuses to ship
◆ Scanning Evidence ◆
Evidence

The number changed.
The locked spec caught it.

Dogfood case: a March operating note recorded −0.0139; the locked spec re-run produced a materially different number. The engine surfaced what the notebook could not — the recorded verdict no longer reconciled with the data. Full write-up →

v2 event-level delta — eligible vs demoted cohort
+0.0000

Positive magnitude, small sample. The verdict is PASS against a pre-registered threshold of zero, but the engine refuses to let any “result confirmed” claim ship until the minimum sample size is met.

127 resolved events across the locked parent cohort. 16 eligible events, 19 demoted. Two locked specs (v1 March-frozen, v2 April-live), one contradictory historical claim. Reconciliation before marketing, not after.

Locked spec · internal run, spec not published
◆ Third-Party Record ◆
External catalogs

Independently listed.
Independently verifiable.

PRML and its reference implementation appear in catalogs we do not control. Every entry links to the source, so you can check it without trusting us.

Catalog listings describe where falsify appears or what it interoperates with. None implies endorsement, certification, or partnership by the organisations named. All trademarks belong to their owners.

◆ Specification ◆
PRML v0.1

A specification, not a tool.
The format is the contract.

Falsify is the reference implementation of PRML v0.1 — Pre-Registered ML Manifest Specification. Nine YAML fields. One SHA-256 over canonical bytes. Computed before the experiment runs. Verifiable offline by anyone with the manifest, the dataset, and the model. Community Specification License 1.0.

Four byte-equivalent reference implementations — Python, JavaScript, Go, Rust — reproduce the conformance vectors byte-for-byte. v0.2 frozen 2026-05-22 (RFC closed).

◆ Access Protocol ◆
Source · MIT · Public Repo
v0.4.0

Your past self isthe one your futureself answers to.

It does not tell you if you’re right. It tells you if you changed the rules.

$ pip install falsify

single-file CLI · no daemon · no account

CÖ
Founder · Falsify OÜ
Cüneyt Öztürk
Founder, Falsify OÜ · author of PRML

Author of the PRML specification and of the four reference implementations (Python, JS, Go, Rust). Works on evaluation integrity: making the success criteria behind an AI claim independently checkable after the fact, rather than taken on the word of whoever ran the test.