popgenVCF records software, parameters, inputs, execution state, validation, and provenance needed to reproduce a computational analysis. A reproducible record must preserve both outputs and the exact context that produced them.
Reproducibility levels
| Level | Evidence required |
|---|---|
| Re-executable | Inputs, configuration, software, and commands are available |
| Computationally reproducible | The same environment regenerates materially equivalent outputs |
| Independently verifiable | Checksums, validation records, source tables, and external comparisons can be audited |
| Scientifically approved | Design, expected values, tolerances, and interpretation have explicit review and approval |
A computationally reproducible run is not automatically a scientifically approved baseline.
Minimum archival record
Retain:
- the original VCF and metadata checksums;
- the complete configuration file;
- the popgenVCF version and source commit;
- the OCI image digest, SIF checksum, or resolved environment manifest;
-
sessionInfo.txtand external-tool versions; - the random seed, thread count, scheduler allocation, and timeout policy;
- capability, execution-plan, execution-ledger, validation, and artifact tables;
- source tables underlying reported figures;
- provenance and release-evidence records relevant to the analysis.
Preserve the failed state as well as the successful rerun when a failure affected decisions or parameters.
Immutable container execution
For archival work, use the digest recorded by the GitHub Release:
export POPGENVCF_IMAGE="ghcr.io/duceppemo/popgenvcf@sha256:<digest>"
docker pull "$POPGENVCF_IMAGE"
docker run --rm \
--user "$(id -u):$(id -g)" \
-e HOME=/tmp \
-v "$PWD:/data" \
"$POPGENVCF_IMAGE" \
--config /data/analysis.ymlRetain container-metadata.json,
container-digest.txt, attestations, and checksums published
with the release when available.
Input identity
A file name is not an identity. Record a cryptographic checksum for each primary input and metadata file. For remote canonical data, also retain the registry entry, license/source record, expected checksum, materialization evidence, and approval state.
Sample identity is equally important. VCF sample names are immutable keys; aliases and display labels must not replace them in provenance records.
Configuration and defaults
Archive the fully resolved configuration, not only a partial user override. Defaults can change between versions. Record explicitly:
- QC and LD-pruning thresholds;
- enabled modules and external backends;
- random seed and thread count;
- timeout, retry, checkpoint, and resource policies;
- reporting and publication profiles;
- paths to external executables and reference data.
Deterministic and variable boundaries
popgenVCF fixes and records random seeds where supported, normalizes ordering, validates schemas, records software versions, and uses comparator-aware scientific tolerances. Bit-for-bit identity may still vary because of:
- floating-point and BLAS implementations;
- thread scheduling and external-engine parallelism;
- compression timestamps or metadata;
- plotting devices and font rendering;
- upstream library or operating-system differences;
- nondeterminism in an external executable.
Use the documented exact, numeric, matrix, eigenspace, or label-switching-aware comparator appropriate to the artifact. Do not use a permissive tolerance to hide an unexplained change.
External tools
For every external execution, retain:
- executable path or image identity;
- executable version and checksum when feasible;
- full command, seed, threads, and environment;
- declared expected output inventory;
- raw output used by the parser;
- parser and comparison version;
- diagnostic versus equivalence role.
An unavailable executable or missing output must remain
skipped or insufficient-evidence; it cannot
certify concordance.
Canonical evidence and approval
The package contains contracts for canonical datasets, quantitative baselines, longitudinal drift, scientific change requests, external-tool concordance, performance budgets, and release certificates. These contracts fail closed when required evidence or approval is missing.
Do not state that the production baseline, external concordance suite, benchmark history, or release certificate is approved merely because the software objects exist. Confirm that the retained evidence names the dataset, checksum, tool versions, expected values, tolerances, source commit, reviewer, and approval state.
Reproduction procedure
A reviewer should be able to:
- verify all input and software checksums;
- reconstruct the environment or pull the immutable image;
- inspect the resolved configuration;
- rerun the analysis with the recorded resources;
- compare regenerated source tables and artifacts with the retained evidence;
- reproduce validation and release-gate decisions;
- identify any approved scientific change explaining intentional drift.
Scientific boundary
Computational reproducibility demonstrates that specified software and inputs can regenerate materially equivalent outputs. It does not establish that sampling design, marker selection, population definitions, biological assumptions, or interpretation are correct. Those remain responsibilities of the analyst, collaborators, reviewers, and the relevant scientific governance process.
The detailed project policy is maintained in docs/reproducibility.md.