ClockQC evidence note · v0.10 · 24 October 2026
We tested the missing-probe explanation.
The probe-count difference was real. Including those probes did not resolve the reconstruction mismatch in the completed 256-array comparison.
Across 20,179,456 measured clock-input values, reconstruction RMSE rose slightly after including the 65 SNP probes. The remaining mismatch is small, but its historical cause is still unresolved.
The controlled question
The deposited GSE174422 matrix contains 485,577 loci. Our initial minfi-based reconstruction contained 485,512. The 65 extra loci were exactly the array’s SNP probes: 25 type I and 40 type II. None is a direct input to the clocks, but they can influence background estimation and normalization.
We compared inclusion against the validated SNP-excluded control using the same raw arrays, ENmix version, out-of-band background correction, RELIC, quantile1 normalization across the full cohort and RCP. The primary diagnostic was agreement with deposited data, not a favorable repeatability result. All 256 arrays and 128 duplicate pairs were retained.
This was an exploratory diagnostic following v0.9, not a publicly preregistered confirmatory trial.
The measured result
| Measure | SNP excluded | SNP included | Interpretation |
|---|---|---|---|
| Beta reconstruction RMSE | 0.0001245014 | 0.0001254133 | 0.73% higher error |
| Maximum beta discrepancy | 0.01594364 | 0.01594944 | Mismatch remains |
| PCHorvath1 score RMSE vs deposit | 0.01892672 years | 0.01916967 years | No improvement |
| PCHorvath1 duplicate disagreement S | 1.87963894 years | 1.87951732 years | Essentially unchanged |
Beta values are methylation fractions. RMSE summarizes numerical reconstruction differences, not biological-age accuracy. The comparison covers all 78,826 required clock inputs across 256 arrays; it does not verify every probe on the chip.
S = √[mean(d²) / 2], where d is a duplicate-pair score difference. This bias-inclusive disagreement measure is invariant to swapping pair labels. It is not automatically an independent per-array error SD, a longitudinal change threshold or a clinically meaningful difference.
The full report includes results for all ten original and PC clock versions. DNAmTL values use predicted kilobases; age-clock values use years.
Checks that passed
- Common raw methylated and unmethylated intensities matched exactly for every array.
- The native SNP-excluded background-correction fixture matched the previous corrected intensities within 1.86 × 10⁻⁸ intensity units.
- The SNP-inclusive quantile fixture matched ENmix’s own implementation with zero intensity difference.
- The SNP-excluded downstream normalization/RCP fixture matched v0.9 within 5.6 × 10⁻¹⁶ beta units.
- Lossless storage checks and 17 existing scoring/validation tests passed.
Separate exploratory pairing check
All 128 recorded duplicate pairs were mutual nearest matches among the 256 arrays using continuous RMSE across the 65 deposited SNP measurements. This supports the recorded pairing but is not a formal genotype-identity assay. No samples were excluded as a result.
What remains open
Exact historical preprocessing has not been recovered. Passing arithmetic and implementation checks does not establish biological validity. The study does not measure day-to-day biological variation or demonstrate human aging reversal.
Read it. Check it. Reproduce the stated layer.
Standalone audit: a small Python 3 standard-library package that recalculates the clock-score discrepancies and duplicate disagreement from supplied score tables and pair labels. It does not recalculate clocks from methylation values or reproduce the probe-level beta RMSE.
v0.10 extension: the verified original package includes code, measured clock inputs, scores and run logs. It is not a standalone raw-data reproduction. Score recomputation also needs the v0.9 analysis code, clock parameters, imputation references, baseline_v09_inputs.npz and SNP-excluded measured inputs. A full raw rerun additionally needs the pinned R environment, IDATs, v0.9 corrected-intensity caches and quantile targets. Read START-HERE.txt and the dependency manifest before running.
The supplementary v0.9 environment is not bundled in this download. Request the supporting reproduction files if you do not already have it.
v0.10 archive integrity
SHA-256: 9a94dcf25c2d23fb0bb7ce14b101273d65ae31b9f1f0ef45209bb4570528a232
Version: v0.10; experiment completed 23 October 2026. This website note was published in the deployment package dated 24 October 2026.
Sources and provenance
- GSE174422: original public array dataset
- Xu, Niu and Taylor: ENmix comparison study
- ENmix software · version 1.49.4; source snapshots and Artistic-2.0 license are included in the extension.
- minfi user guide
- Higgins-Chen et al.: principal-component epigenetic clocks
The numerical results on this page come from Karam’s saved computational run. The cited investigators supplied the underlying measurements and methods; they have not endorsed this reanalysis.