Skip to content

Purge tracked dataset_1d + overview datasets behind auto-simulate guards - #18

Merged
Jammy2211 merged 1 commit into
mainfrom
claude/pyautomind-simple-issue-x7gu1u
Aug 7, 2026
Merged

Purge tracked dataset_1d + overview datasets behind auto-simulate guards#18
Jammy2211 merged 1 commit into
mainfrom
claude/pyautomind-simple-issue-x7gu1u

Conversation

@Jammy2211

Copy link
Copy Markdown
Collaborator

Summary

Completes the dataset-bulk purge for autocti_workspace (leg-1 recipe; follows July's imaging_ci purge #12 and today's should_simulate migration #17): 282 tracked dataset files (~5.3 MB) untracked — all of dataset/dataset_1d/ (simple, species_x1_continuum_0, species_x3, temporal) and the simulated parts of dataset/overview/ (dataset_1d, imaging_ci/calibrate) — each behind proven auto-simulate guards. The workspace now matches the other workspaces' ideal setup: dataset/** ignored by default, everything simulated on demand.

Kept committed (no simulator write-site — judged by write site, not name): the five illustration assets dataset/overview/{ccd.gif, ccd_schematic.png, cti.gif, cti_time_evolution.png, what_is_cti.png} (only ever mpimg.imread/markdown-referenced), plus dataset/.gitignore.

What changed

  • 21 guard blocks added across 18 scripts (scripts/dataset_1d/**, scripts/plot/**, scripts/overview/**), all using the standard ac.util.dataset.should_simulate idiom; CRLF preserved in the 6 CRLF files. overview_4_charge_injection_data.py also gained guards for its already-untracked uniform/non_uniform datasets. Deliberately unguarded: plot/fpa/dataset_1d/fit.py (its simple path is dead code) and the database/temporal scripts that read only output/.
  • Provenance: every purged tree traced to its sole simulator write-site (table in the commit body); species_x1_continuum_0 has zero consumers (regen witnessed via its simulator directly). Stale oddity noted: tracked species_x3/cti.json is no longer written by the current simulator and has no readers.
  • .gitignore: allowlist pins for the purged trees dropped; authoritative allowlist moved to dataset/.gitignore with per-file media pins — verified with git check-ignore (media not ignored, purged paths ignored).
  • simulate_datasets_include.sh deleted — its git add -f dataset/dataset_1d dataset/overview would have silently re-committed this purge (same trap the July leg hit). simulate_datasets_missing.sh now runs all 15 simulators.

Validation

Per-dataset clean-tree regeneration proven (tree moved away → guarded consumer run → files re-created and read back): simple via correction/start_here.py, temporal via temporal/fit.py, overview trees via overview_5_fitting.py (pre and post purge). Post-purge runs of modeling/start_here.py (TEST_MODE=1, real reduced sampler), extract.py, Dataset1dPlotter.py all exit 0; git status stays clean after every regeneration (ignore rules absorb the products); py_compile clean on all 18 edited scripts. species_x3.py regenerates and loads its data, then hits the documented TEST_MODE=2 tied-median trap-ordering artifact (known, per AGENTS.md — not a script bug). autocti_workspace_test has no consumers of these paths.

Notebooks

18 notebook counterparts now trail their scripts; regeneration happens via the PyAutoHands release pipeline (autocti is not a generate target), same as #17.

Pre-purge main SHA for the PyAutoGut condemnation ledger: 50b701d.

🤖 Generated with Claude Code

https://claude.ai/code/session_01Vu1p9rcDQGRrYddB6VWcxN


Generated by Claude Code

…te guards

Second leg of the dataset purge (first leg: imaging_ci, PR #12). Untracks the
two remaining committed simulated-dataset trees — dataset/dataset_1d/** (239
files) and the simulated parts of dataset/overview/** (43 files), ~5.2 MB
total — after adding `ac.util.dataset.should_simulate` auto-simulate guards to
every consumer script, so the datasets regenerate at runtime.

Provenance (verified by reading each simulator's output-path code):
- dataset/dataset_1d/simple            <- scripts/dataset_1d/simulators/start_here.py
- dataset/dataset_1d/species_x1_continuum_0 <- .../simulators/examples/species_x1_continuum.py
- dataset/dataset_1d/species_x3        <- .../simulators/examples/species_x3.py
- dataset/dataset_1d/temporal (time_0..time_4) <- .../simulators/examples/temporal.py
- dataset/overview/dataset_1d          <- .../simulators/examples/overview.py
- dataset/overview/imaging_ci/calibrate <- scripts/imaging_ci/simulators/overview/calibrate.py

Guards added (21 guard blocks across 18 scripts): all dataset_1d modeling /
correction / extract / results / database / temporal consumers, the plot
consumers (plot/start_here, Dataset1dPlotter, FitDataset1dPlotter), and
overview_4/5/6 (overview_4's uniform + non_uniform_cosmic_rays datasets were
already untracked but had no guards; they get the same treatment).

Regeneration proven per dataset before purging: each tree was moved away and a
guarded consumer re-created and read it back (correction/start_here,
species_x3, temporal/fit, overview_5 for both overview trees;
species_x1_continuum_0 has no consumer scripts, so its simulator was run
directly as the witness). Post-purge witnesses re-ran clean with
`git status --porcelain` showing no untracked dataset files.

Kept committed (with reasons):
- dataset/overview/{ccd.gif, ccd_schematic.png, cti.gif, cti_time_evolution.png,
  what_is_cti.png}: hand-made illustrations displayed by overview_1/2/4 and the
  notebooks; no script writes them, so they cannot regenerate.
- dataset/.gitignore: the per-directory ignore file, now carrying the media
  allowlist (the deeper file wins over the root .gitignore for dataset/ paths).

Also: simulate_datasets_missing.sh now runs every simulator (all datasets are
runtime-simulated now); simulate_datasets_include.sh is deleted — its job was
to force-re-add (`git add -f`) the committed datasets, which would silently
revert this purge.

Note: species_x3's tracked cti.json was stale (the current simulator no longer
writes it); no consumer reads it. Notebook counterparts of the 18 edited
scripts regenerate via the release pipeline.

Co-Authored-By: Claude Fable 5 <[email protected]>
Claude-Session: https://claude.ai/code/session_01Vu1p9rcDQGRrYddB6VWcxN
@Jammy2211
Jammy2211 merged commit af5b7ed into main Aug 7, 2026
@Jammy2211
Jammy2211 deleted the claude/pyautomind-simple-issue-x7gu1u branch August 25, 2026 18:58
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants