MachineSex/paper/pnas
Giorgio Gilestro c435cfba6e Reproducibility pass: figure map, one-command reproduce.sh, notebooks, Makefile gaps
An audit of the figure pipeline found real sync gaps, now closed:

- `paper/pnas/make_figs.py` (which draws every manuscript figure) was invoked
  by NO Makefile target or script - a manual step. Added `make paper-figures`.
- `configs/llm/epistasis{,_compat}.yaml` were reachable from nothing at all,
  despite producing Fig. 3C-D. Added `make llm-epistasis` (+ its statistics).
- `make figures` never regenerated the MNIST montage that Fig. 2B embeds;
  it now runs with the `mnist` target (it needs torch - it re-simulates).
- Added `make llm-society`, `env-notebooks`, `notebooks`.

New REPRODUCING.md is the authoritative map: every manuscript panel -> the
artifact it plots -> the config that produced it -> that config's seed, plus
the determinism policy (biological tier bitwise; GPU tiers statistical), the
seed-provenance statement, and an artifact-hash verification snippet. All 44
committed bundles currently hash-match their manifests, and figure
regeneration is pixel-identical (verified by comparison).

reproduce.sh delivers the one-command reproduction the paper's Methods
promises, writing REPRODUCED.md with recomputed hashes per bundle.

Two executed notebooks: 01 builds the Wright-Fisher model from scratch and
checks both closed forms interactively (runs in ~1 min on a laptop); 02
verifies artifact hashes then regenerates and displays all seven manuscript
figures. Both execute end-to-end (`make notebooks`).

Also pins `.python-version` to 3.14: the interpreter was previously
unpinned, and a `uv sync` silently switched it to 3.11 mid-session (see
tasks/lessons.md). README rewritten - it still described a Layer-1-only repo
of E1-E6 and pointed at a figure_manifest.md that does not exist.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01BkRLcc18rwT2Lysu6PbG7v
2026-09-07 15:50:50 +01:00
..
figs Reproducibility pass: figure map, one-command reproduce.sh, notebooks, Makefile gaps 2026-09-07 15:50:50 +01:00
body.tex Fig. 1A: pastel palette (green biology, two blues for AI) + Mendel peas and robot icons 2026-09-07 13:23:35 +01:00
build.py Fig. 1A: pastel palette (green biology, two blues for AI) + Mendel peas and robot icons 2026-09-07 13:23:35 +01:00
main.md Paper-wide rename: the pop-gen construct is "the biological model"; "(exact)" dropped 2026-09-07 13:08:58 +01:00
main.pdf Fig. 1: borderless cells in A; the Flaticon robot everywhere in B 2026-09-07 13:48:25 +01:00
main.tex Phase 4: PNAS research-article draft (main.md + composed figures + SI skeleton) 2026-09-06 18:24:58 +01:00
make_figs.py Fig. 1: borderless cells in A; the Flaticon robot everywhere in B 2026-09-07 13:48:25 +01:00
si.md New Fig. 1 (experimental-programme schematic); Table 2 to SI; figures in citation order; Fig. 2B legible labels 2026-09-07 11:12:33 +01:00