The compliance standards QuantumLedger ships with, generated live from the definitions currently loaded. Each control lists what the standard requires, the automated checks used as evidence, and how to remediate a gap.
FAIR Data Principles v1.0
Findable, Accessible, Interoperable, Reusable. Applied to quantum result records: every published result carries a persistent identifier, is retrievable, uses an open interoperable circuit format, and declares a licence.
FAIR-A1 — (Meta)data are retrievable by their identifier via a standard protocol (medium)
The result record must be retrievable — i.e. published as a ResultCard that is publicly accessible.
- Each published result card must satisfy: card.published_at is present and not empty.
FAIR-A1-published
Remediation: Publish the ResultCard (set visibility=public and a published_at).
FAIR-F1 — (Meta)data are assigned a globally unique and persistent identifier (high)
Every published result must be identified by a globally unique, persistent identifier (a DOI or other PID) so it can be found and cited unambiguously.
- Each published result card must satisfy: card.doi or card.pid is present.
FAIR-F1-pid
Remediation: Mint a DOI (or register a PID) for the published ResultCard and store it on the card before publishing.
FAIR-I1 — (Meta)data use a formal, accessible, shared, broadly applicable language (medium)
The circuit is stored in an open, interoperable representation — QASM3, the QuantumLedger IR (qlir/1.0), or QIR — not a vendor-locked binary.
- Each circuit must satisfy: circuit.fmt is one of [qasm3, qlir/1.0, qir].
FAIR-I1-fmt
Remediation: Re-record the run capturing the logical circuit as qasm3, qlir/1.0 or qir.
FAIR-R1.1 — (Meta)data are released with a clear and accessible data usage licence (high)
Every published result must declare a licence so downstream users know the terms of reuse.
- Each published result card must satisfy: card.license is present and not empty.
FAIR-R1.1-license
Remediation: Set a licence (e.g. CC-BY-4.0) on the ResultCard before publishing.
IEEE P7131 Quantum Computing Reproducibility v2025
Reproducibility of quantum computations: recorded execution environment, time-bounded device calibration, tamper-evident run hashing, and at least one verified reproduction of a result in the workspace.
P7131-CAL — Device calibration snapshot is bound and fresh (high)
Each run binds a calibration snapshot captured within 30 days of the run so device state is reproducible; stale calibration is flagged as drift.
- Each run must satisfy: run.calibration_snapshot_id is present. Evidence must be no older than ~30 day(s) (relative to run.finished_at).
P7131-CAL-bound
Remediation: Re-capture a current calibration snapshot and re-run.
P7131-ENV — Execution environment is recorded (high)
Each run records the backend it executed on and the transpiler seed, so the execution environment can be reconstructed deterministically.
- Each run must satisfy: all of run.backend_id, run.seed_transpiler are present.
P7131-ENV-present
Remediation: Re-record the run through the SDK so backend_id and seed_transpiler are captured.
P7131-HASH — Runs are cryptographically hashed (high)
Each run carries a Merkle-bound run_hash so any tampering with its inputs is detectable.
- Each run must satisfy: run.run_hash is present and not empty.
P7131-HASH-present
Remediation: Seal the run so its run_hash is computed and chained.
P7131-REPRO — At least one verified reproduction exists (high)
The workspace contains at least one independently verified reproduction event, demonstrating that a recorded result can be reproduced.
- Each workspace must satisfy: the number of workspace.reproduction_events where reproduction.status equals 'verified' is >= 1.
P7131-REPRO-count
Remediation: Reproduce a stored run and have the reproduction verified.
Quantum Metrology Traceability v1.0
Measurement traceability for quantum results: every reported result is bound to a recorded calibration snapshot of the measuring device and declares its shot count (measurement sample size).
MET-INTEGRITY — Reported counts are content-addressed (medium)
Each result carries a SHA-256 digest of its counts so the reported measurement cannot be silently altered.
- Each measurement result must satisfy: result.counts_sha256 is present and not empty.
MET-INTEGRITY-hash
Remediation: Re-seal the result so its counts_sha256 is computed.
MET-SHOTS — Measurement sample size is reported (medium)
Each result reports the number of shots (measurement repetitions) so the statistical uncertainty of the reported distribution is quantifiable.
- Each measurement result must satisfy: result.shots is present and not empty.
MET-SHOTS-present
Remediation: Re-record the run so the result shot count is captured.
MET-TRACE — Measurement is traceable to a calibrated device state (high)
Each run binds a calibration snapshot recorded within 90 days of the run, so the measurement is traceable to a known instrument state.
- Each run must satisfy: run.calibration_snapshot_id is present. Evidence must be no older than ~90 day(s) (relative to run.finished_at).
MET-TRACE-calib
Remediation: Bind a current calibration snapshot to the run.
Reproducibility Policy v1.0
Organisation-internal policy: runs are deterministically seeded and cryptographically hashed, and the workspace demonstrates verified reproduction.
REPRO-HASH — Runs are hash-bound to a workspace chain (high)
Each run carries a run_hash chaining it into the workspace's append-only ledger.
- Each run must satisfy: run.run_hash is present and not empty.
REPRO-HASH-present
Remediation: Seal the run to compute and chain its run_hash.
REPRO-SEED — Runs are deterministically seeded (medium)
Each run records a transpiler seed so the compilation is deterministic and reproducible.
- Each run must satisfy: run.seed_transpiler is present and not empty.
REPRO-SEED-present
Remediation: Re-record the run supplying a transpiler seed.
REPRO-VERIFIED — Workspace has a verified reproduction (high)
At least one reproduction in the workspace has been verified before results are trusted.
- Each workspace must satisfy: the number of workspace.reproduction_events where reproduction.status equals 'verified' is >= 1.
REPRO-VERIFIED-count
Remediation: Reproduce a run and verify the reproduction.