Repository navigation
v1.2.0 — documentation, tooling, and reproducibility
Documentation, tooling, and reproducibility release. No change to the data, the records, or the API contract — the atlas is the same 5,130 deep-dive records (1,782 canonical · 1,243 likely · 973 low · 1,078 no · 54 uncertain).
Breaking for scripts
scripts/is reorganized by role: entry points stay at the top level, everything else moved intofigures/,build/,audit/,cloud/,probes/,tsv-export/,release/,archive/.scripts/surfaceome_v2_annotate.pyis nowscripts/annotate_gene.py. There is no v1 entry point; the version in the old name only leaked implementation detail.
Fixed
- Repo-root resolution. Every relocated script computed
parents[1], which after the move resolved toscripts/rather than the repo root, so they read and wrote paths likescripts/data/processed/…. Swept all 113 Python scripts and the shell equivalents. - D1 → R2 backup, which had failed silently on every run since 2026-06-29: the
surfaceome_agentsdump (2.16 GiB) exceeded wrangler's 300 MiB upload cap. Now gzipped, split into 250 MiB parts, checksum-verified before upload, with alatest.manifest.jsonpointer and a restore recipe. - TTFB monitor, which had never measured latency — it was timing a Cloudflare bot challenge. Now probes the platform hostnames.
- Two builder scripts began real work on
--help;setup-git-hooks.sh --helpwould have rewrittencore.hooksPath.
Documentation
The README is rewritten around the manuscript's own framing, and now describes only fields that exist — the previous version documented a surface_status field with six graded values that is null in every record. Added CONTRIBUTING.md. LICENSING.md now carries a per-source table with real, checkable licences and an honest account of which upstream files are committed verbatim. Corrected HPA to CC BY 4.0, and SURFACE-Bind to the BSD-3-Clause repo we actually ingest.
Across the tree: 0 broken relative links in 137 markdown files (from 63), every referenced script path resolves or is marked removed, and stale "PRELIMINARY — ~1,197 of ~5,128 swept" claims are gone from a sweep that finished long ago.
Figures
Two published figure gists were still headed "MOCK figure" while their data was real, and four carried pre-renumbering figure numbers. Corrected and republished; 19 of 21 gists re-synced.