Open method · Version 1.0.0
Open Football Prediction Evidence Standard
A portable JSON contract for answering three separate questions: what was predicted, whether the supplied payload still matches its receipt, and what evidence—if any—places it in public before kick-off.
Canonical publication record
Abstract
An open, versioned JSON contract for preserving a complete pre-match 1X2 probability payload, reproducing its SHA-256 receipt, declaring publication evidence and appending a result without rewriting the original forecast.
- Author and publisher
- Football Proof AI
- Technical report
football-prediction-evidence/1.0.0- Published
- Last modified
- Release status
- Current release
- Review status
- Editorial technical note; not externally peer reviewed
- Version history
football-prediction-evidence/1.0.0: Initial public release.
- Immutable artifacts
- 1.0.0.json
sha256:fb9016dd07b8a2db40f5f2f26177a2d90808c618e8fa66604b6f710188bffe78
- 1.0.0.json
Direct answer
How do you verify an AI football prediction?
Preserve the complete home/draw/away probabilities, fixture, kick-off, publication time and model version in one canonical payload; publish its SHA-256 before the match; retain an external public trail; and append the final score without rewriting the original payload. Verification must report each layer separately.
Proof layers
Six checks; six deliberately different conclusions
“Verified” is too vague. A useful audit names the exact claim that passed and leaves every stronger claim unearned.
| Layer | Positive check | Still not proven |
|---|---|---|
| Schema | Required fields and types are present | That any value is historically true |
| Probability | Home, draw and away are each 0–1 and total 1 | Calibration or predictive skill |
| Timing arithmetic | Declared publication is before declared kick-off | That publication really occurred then |
| Payload hash | The supplied payload reproduces the stored digest | Who created it or when it first existed |
| Public trail | A forecast/archive/timestamp URL is declared | Authenticity until that source is independently checked |
| Settlement | Score, outcome and scoring math agree | Result provenance or a complete, unfiltered ledger |
Record contract
The pre-match payload is immutable; later facts are appended
The receipt covers only canonicalPayload. A result is allowed later under settlement, but cannot silently alter the original probabilities, model version, publication time or kick-off used by the forecast.
- forecastId
- Stable identifier for one forecast record
- fixture
- Fixture ID, teams and RFC 3339 kick-off
- model
- Name, version and optional artifact/calibrator hashes
- probabilities
- Complete decimal home, draw and away distribution
- publication
- RFC 3339 publication time and exact lead seconds
- receipt
- SHA-256 of canonicalPayload under the named canonicalizer
- publicTrail
- Optional URLs; declared, never silently treated as authenticated
- settlement
- Optional append-only score, outcome, time and source URL
JSON Schema validates structure. Probability totals, timestamp ordering, lead-time equality, digest reproduction and score/outcome agreement are semantic checks performed by the verifier. JSON object member names must be unique before parsing; duplicate names are rejected instead of relying on parser-specific last-value rules.
Reproducible test vector
RFC 8785/JCS gives every implementation the same payload bytes
Reject duplicate object member names and unpaired Unicode surrogates, serialize finite I-JSON numbers and strings under the JSON Canonicalization Scheme, recursively sort object properties by UTF-16 code units and preserve array order. Timestamps in this profile use RFC 3339 with at most millisecond precision.
{"z":1,"a":{"y":2,"x":3}}{"a":{"x":3,"y":2},"z":1}8dfc9dd8cb7fcc89c0a2770f644dd4a70d8e86394b12bc56c624e86e7e294974{"1":3,"huge":1e+30,"negativeZero":0,"€":2,"😀":1}069878040011b6cf13ec3e3368eeeb360de0b38f1347b92d7cb2957c7f18ecf1Permanent version evidence
Version 1.0.0 has a stable artifact and content fingerprint
The current alias may advance in a future release. The versioned URL below is the permanent schema snapshot for this page, and its SHA-256 is calculated from the exact downloadable UTF-8 bytes.
- Series
fpai:standard:football-prediction-evidence- Release
football-prediction-evidence/1.0.0- Published
- Artifact SHA-256
fb9016dd07b8a2db40f5f2f26177a2d90808c618e8fa66604b6f710188bffe78- Canonicalizer
RFC8785/JCS
Non-claims
A valid receipt can still describe a bad or cherry-picked model
This release verifies one supplied record. It does not prove the operator published every forecast, retained every loss, used the claimed model, beat a bookmaker baseline or can generate profit. Collection completeness needs a gapless public manifest and independently anchored history; accuracy needs a complete settled sample and proper scoring rules.
- No independent timestamp by default.A self-declared time and matching hash can both be created after the event.
- No archive completeness proof.A single valid winner says nothing about omitted or deleted forecasts.
- No model certification.The model name and version are declarations unless artifacts are independently reproduced.
- No accuracy or profit guarantee.Integrity is a prerequisite for evaluation, not evidence of predictive skill.
Normative and comparative references
Standards used by the portable record
- JSON Schema Draft 2020-12.Core specification for the downloadable record shape.
- RFC 3339.Internet date and time profile for publication, kick-off and settlement.
- RFC 6234.SHA algorithms underlying the reproducible payload digest.
- RFC 8785.JSON Canonicalization Scheme defines deterministic payload bytes across conforming implementations.