Skip to content

ILLUSTRATIVE · NASA / SVS · NOT ADITYA-L1 DATA

Build · reproduce

The reproduction record

Per-table digests, the pinned environment, and the rebuild result.

← Back to the build

What is this?

The reproduction record: per-table digests, the pinned environment, and the result of rebuilding the dataset from the source archive.

Why should I trust it?

The rebuild was executed and its output compared against the frozen tables. Where the check covers a sample rather than the whole archive, the reproducibility page says so.

Where can I verify it?

Identity

What you are rebuilding, and what a correct rebuild must match.

Dataset digest

43fd0e228b28ae6bc7e468c3acf68722768bd62b73798eb6631e9e6233b71ed9

Provenance digest

7282b7c34fbd6c2eae7dfca6757f46cdc497b88a9b6312089715479e67be8498

  • versionAdityaNet_v2_dataset_r1
  • commitbe0b7e5114db41e24f592f6483fa643d98586d02
  • specr6
  • archive2024-02-01 .. 2026-06-17 (UTC)
  • frozen2026-07-18T08:22:44.103343+00:00
Dataset version
AdityaNet_v2_dataset_r1
Dataset digest
43fd0e228b28ae6bc7e468c3acf68722768bd62b73798eb6631e9e6233b71ed9
Provenance digest
7282b7c34fbd6c2eae7dfca6757f46cdc497b88a9b6312089715479e67be8498
Build commit
be0b7e5114db41e24f592f6483fa643d98586d02
Specification
r6
Archive span
2024-02-01 .. 2026-06-17 (UTC)
Frozen at
2026-07-18T08:22:44.103343+00:00

Table inventory

Each digest covers that table's full file set — verify table by table, not only in aggregate.

Canonical table inventory with file counts, sizes, and SHA-256 digests.
TableNameFilesSizeSHA-256
T1solexs_lc_1min42413.4 MiB5e6d95be2b43…
T2solexs_spec_1min42483.1 MiB4124d5ee4f59…
T3hel1os_lc_1min37358.2 MiBd814d3ad4c2e…
T4hel1os_hk_1min38918.3 MiBfdb005c60811…
T5hel1os_spec_1min373396.0 MiBff7f5a90a1a3…
T6gti_intervals193.2 KiB5930fe126f49…
T7provenance_manifest1235.1 KiB12c2b6d073b9…

7 tables · 569.3 MiB total

Environment

Pinned. The dependency set is frozen in a lockfile because an unpinned numeric library silently changed results in this project once already.

python_version
3.12.12
platform
macOS-26.5.2-arm64-arm-64bit
lockfile
artifacts/v2/phase05/requirements.lock
lockfile_sha256
6899e001b1c4d64a5aec01b3ee1d2cfce2a3ff38ab64f827a75ab9d55fd13d3f

artifacts/v2/phase05/requirements.lock

Reproducibility record

1. What was tested

Twelve days were selected by even spacing across the full archive span (2024-02-01 → 2026-06-15) — not cherry-picked — and rebuilt from the raw L1 FITS, through the frozen parsers and builders, then compared against the frozen dataset.

Two distinct claims were measured separately, because they are not the same thing:

  • Content identity — the values are identical. This is the scientific claim: a rebuild must reproduce the same measurements.
  • Byte identity — the parquet file bytes are identical. Stronger, but partly a property of the writer environment (parquet embeds library metadata), so it was measured rather than assumed.

2. Result

Day T1 content T1 byte T2 content Rebuild
2024-02-01 0.6 s
2024-03-10 0.4 s
2024-04-20 0.4 s
2024-05-31 0.4 s
2025-08-09 0.4 s
2025-09-30 0.4 s
2025-11-12 0.4 s
2025-12-23 0.4 s
2026-02-01 0.4 s
2026-03-15 0.4 s
2026-05-04 0.4 s
2026-06-15 0.4 s

Content identity: T1 12/12, T2 12/12. Byte identity: T1 12/12, T2 12/12.

Both the 340-channel spectral arrays (T2) and the scalar light-curve table (T1) reproduce exactly. Row counts match (1,440 rows/day) on every sample.

3. Determinism: why it holds

The pipeline contains no non-deterministic operation by construction:

Property Guarantee
No randomness No RNG anywhere in parsers or builders (no sampling, no shuffling, no initialisation)
No imputation NaN is preserved as the missing-data sentinel; never filled, never dropped (verified by AST scan + tests)
No reordering The parser preserves archive order losslessly; HK sorting is an explicit out-of-parser utility
Order-independent resolution The Version Resolution Engine builds a coverage map in two phases (collect → resolve); shuffled candidate order yields identical maps, proven on real data
Order-independent aggregation All minute statistics are sum/mean/max/min over finite values
Fixed hashing Provenance SHAs come from the frozen Phase 0.5.1 manifest, not recomputed at build time

Version-resolution stability across three independent full builds: 1,065,572 owned (minute, detector) pairs, 48,604 conflicts, R1 47,328 / R2 1,276 / R3 0 / F-14 0 — byte-stable every time.

4. The one documented exception

T7 provenance_manifest contains parsed_at_utc, a build wall-clock timestamp. This column differs between builds by design — it records when a build ran. Every other T7 column is deterministic.

Consequently:

  • The reproducible content hash of T7 excludes parsed_at_utc (NON_REPRODUCIBLE_COLUMNS in freeze_dataset.py).
  • The file SHA-256 of T7 in the manifest pins this frozen artifact exactly, as it does for every other file.

This is stated rather than engineered away: removing the timestamp would have modified the dataset after freezing, and the timestamp is legitimate provenance.

5. Environment

Field Value
Python 3.12.12
numpy / pandas 1.26.4 / 2.2.2
pyarrow / astropy 16.1.0 / 6.1.7
Platform macOS-26.5.2-arm64 (Apple Silicon)
Lockfile SHA-256 6899e001b1c4d64a5aec01b3ee1d2cfce2a3ff38ab64f827a75ab9d55fd13d3f

Scope of the byte-identity claim: demonstrated in this pinned environment. Byte identity depends on the parquet writer (pyarrow==16.1.0); a different pyarrow may produce different bytes for identical data. Content identity is the portable guarantee; byte identity is the observed, stronger result here. Both are reported so the distinction is not lost.

6. Timing

Stage Time
Per-day rebuild (T1 + T2, from raw FITS) 0.4 s median
Full archive rebuild (424 SoLEXS days + 389 HEL1OS orbits) 93.75 min
Archive extraction (827 ZIPs → 135 GB) 6.8 min
Scientific validation ~20 min
Sample verification (this report) ~6 s

7. How to reproduce

See DATASET_MANIFEST.md §5. In short: install from the lockfile, run extract_archive.py, run build_canonical.py, then freeze_dataset.py and compare dataset_hash against 43fd0e228b28ae6bc7e468c3acf68722768bd62b73798eb6631e9e6233b71ed9.

Verdict: the dataset is reproducible from the raw archive. Content-identical by construction and byte-identical in the pinned environment, with one documented, deliberate exception (parsed_at_utc).

artifacts/v2/phase05/REPRODUCIBILITY_REPORT.md