Overview
Merge the two plot-speedup environment variables PYAUTO_DISABLE_CRITICAL_CAUSTICS and PYAUTO_FAST_PLOTS into a single PYAUTO_FAST_PLOTS flag. Today both vars are always set together in every workspace/release config and serve the same purpose — making plots cheaper for smoke tests and release runs. One flag is simpler to document, set, and reason about.
Plan
- Replace the
PYAUTO_DISABLE_CRITICAL_CAUSTICS check in PyAutoGalaxy's plot_utils.py with a PYAUTO_FAST_PLOTS check so the surviving flag also governs critical-curve/caustic overlay skipping.
- Remove
PYAUTO_DISABLE_CRITICAL_CAUSTICS from PyAutoBuild's env-var config, release workflow, and CLAUDE docs.
- Sweep all 5 workspace repos, dropping the retired flag from their
env_vars.yaml, run_scripts.sh, and CLAUDE.md command examples.
- Update
admin_jammy/prompt/active.md to remove the stale bullet for the retired flag.
- Verify by running a PyAutoGalaxy plot script with and without
PYAUTO_FAST_PLOTS=1 and confirming overlays are skipped/computed as expected.
- Grep the whole tree afterwards to catch any lingering references.
Detailed implementation plan
Affected Repositories
- PyAutoGalaxy (primary — only repo with code changes)
- PyAutoBuild (configs + release workflow + CLAUDE.md)
- autofit_workspace (env_vars.yaml, run_scripts.sh)
- autogalaxy_workspace (env_vars.yaml, CLAUDE.md)
- autolens_workspace (env_vars.yaml, CLAUDE.md)
- autolens_workspace_test (env_vars.yaml)
- autofit_workspace_test (env_vars.yaml)
- admin_jammy (active.md)
Work Classification
Both (library + workspace) — starts as library work (PyAutoGalaxy, PyAutoBuild), workspace sweep follows.
Branch Survey
| Repository |
Current Branch |
Dirty? |
| PyAutoGalaxy |
main |
clean (untracked only) |
| PyAutoArray |
main |
clean (untracked only) |
| PyAutoBuild |
main |
minor test_results churn |
| autofit_workspace |
main |
data fixtures dirty |
| autogalaxy_workspace |
main |
data fixtures dirty |
| autolens_workspace |
main |
data fixtures dirty |
| autolens_workspace_test |
main |
data fixtures dirty |
| autofit_workspace_test |
main |
clean |
| admin_jammy |
main |
papers.md dirty |
Suggested branch: feature/merge-fast-plot-env-vars
Worktree root: ~/Code/PyAutoLabs-wt/merge-fast-plot-env-vars/ (created later by /start_library)
Note: PyAutoBuild has an old local branch feature/fast-plots-tight-layout from earlier work in this area — informational only, not a conflict.
Implementation Steps
-
PyAutoGalaxy — in both autogalaxy/plot/plot_utils.py and autogalaxy/util/plot_utils.py (currently byte-identical duplicates — flagged as a separate cleanup, not addressed here), at lines 379 and 431, replace:
if os.environ.get("PYAUTO_DISABLE_CRITICAL_CAUSTICS") == "1":
with:
if os.environ.get("PYAUTO_FAST_PLOTS") == "1":
-
PyAutoBuild:
autobuild/config/env_vars.yaml line 13 — remove the PYAUTO_DISABLE_CRITICAL_CAUSTICS entry.
.github/workflows/release.yml line 759 — remove export PYAUTO_DISABLE_CRITICAL_CAUSTICS=1.
CLAUDE.md line 116 — remove the bullet documenting the old var.
-
Workspaces — remove PYAUTO_DISABLE_CRITICAL_CAUSTICS from all config/build/env_vars.yaml (line 14): autofit_workspace, autogalaxy_workspace, autolens_workspace, autolens_workspace_test, autofit_workspace_test. Also drop the PYAUTO_DISABLE_CRITICAL_CAUSTICS entry from the autolens_workspace_test unset list (line 30).
-
Workspace scripts/docs:
autofit_workspace/run_scripts.sh line 17 — drop export PYAUTO_DISABLE_CRITICAL_CAUSTICS=1.
autolens_workspace/CLAUDE.md lines 36, 40 — remove from command example and doc bullet.
autogalaxy_workspace/CLAUDE.md lines 34, 38 — same.
-
admin_jammy — admin_jammy/prompt/active.md line 11 — remove the stale bullet.
-
Testing:
- Run a PyAutoGalaxy script with
PYAUTO_FAST_PLOTS=1 and verify the caustic/critical-curve overlays are skipped.
- Run without
PYAUTO_FAST_PLOTS and verify overlays are computed normally.
grep -r PYAUTO_DISABLE_CRITICAL_CAUSTICS across all repos — should return only historical archive entries (admin_jammy/prompt/issued/).
Key Files
PyAutoGalaxy/autogalaxy/plot/plot_utils.py — swap env var name (lines 379, 431)
PyAutoGalaxy/autogalaxy/util/plot_utils.py — swap env var name (lines 379, 431)
PyAutoBuild/autobuild/config/env_vars.yaml — remove entry
PyAutoBuild/.github/workflows/release.yml — remove export
PyAutoBuild/CLAUDE.md — remove doc bullet
autofit_workspace/config/build/env_vars.yaml — remove entry
autogalaxy_workspace/config/build/env_vars.yaml — remove entry
autolens_workspace/config/build/env_vars.yaml — remove entry
autolens_workspace_test/config/build/env_vars.yaml — remove entry + unset list
autofit_workspace_test/config/build/env_vars.yaml — remove entry
autofit_workspace/run_scripts.sh — drop export
autolens_workspace/CLAUDE.md — remove from command + bullet
autogalaxy_workspace/CLAUDE.md — remove from command + bullet
admin_jammy/prompt/active.md — remove stale bullet
Known issues flagged (out of scope)
PyAutoGalaxy/autogalaxy/plot/plot_utils.py and autogalaxy/util/plot_utils.py are byte-identical duplicates. Worth deduplicating in a follow-up task.
admin_jammy/prompt/issued/import_optimization.md is a historical archive mentioning the old var; left untouched.
Original Prompt
Click to expand starting prompt
Can you merge the environment variables PYAUTO_DISABLE_CRITICAL_CURVES And PYAUTO_FAST_PLOT into jsut PYAUTO_FAST_PLOT
(Note: actual var names are PYAUTO_DISABLE_CRITICAL_CAUSTICS and PYAUTO_FAST_PLOTS — the surviving flag will be PYAUTO_FAST_PLOTS.)
Overview
Merge the two plot-speedup environment variables
PYAUTO_DISABLE_CRITICAL_CAUSTICSandPYAUTO_FAST_PLOTSinto a singlePYAUTO_FAST_PLOTSflag. Today both vars are always set together in every workspace/release config and serve the same purpose — making plots cheaper for smoke tests and release runs. One flag is simpler to document, set, and reason about.Plan
PYAUTO_DISABLE_CRITICAL_CAUSTICScheck in PyAutoGalaxy'splot_utils.pywith aPYAUTO_FAST_PLOTScheck so the surviving flag also governs critical-curve/caustic overlay skipping.PYAUTO_DISABLE_CRITICAL_CAUSTICSfrom PyAutoBuild's env-var config, release workflow, and CLAUDE docs.env_vars.yaml,run_scripts.sh, and CLAUDE.md command examples.admin_jammy/prompt/active.mdto remove the stale bullet for the retired flag.PYAUTO_FAST_PLOTS=1and confirming overlays are skipped/computed as expected.Detailed implementation plan
Affected Repositories
Work Classification
Both (library + workspace) — starts as library work (PyAutoGalaxy, PyAutoBuild), workspace sweep follows.
Branch Survey
Suggested branch:
feature/merge-fast-plot-env-varsWorktree root:
~/Code/PyAutoLabs-wt/merge-fast-plot-env-vars/(created later by/start_library)Note: PyAutoBuild has an old local branch
feature/fast-plots-tight-layoutfrom earlier work in this area — informational only, not a conflict.Implementation Steps
PyAutoGalaxy — in both
autogalaxy/plot/plot_utils.pyandautogalaxy/util/plot_utils.py(currently byte-identical duplicates — flagged as a separate cleanup, not addressed here), at lines 379 and 431, replace:with:
PyAutoBuild:
autobuild/config/env_vars.yamlline 13 — remove thePYAUTO_DISABLE_CRITICAL_CAUSTICSentry..github/workflows/release.ymlline 759 — removeexport PYAUTO_DISABLE_CRITICAL_CAUSTICS=1.CLAUDE.mdline 116 — remove the bullet documenting the old var.Workspaces — remove
PYAUTO_DISABLE_CRITICAL_CAUSTICSfrom allconfig/build/env_vars.yaml(line 14): autofit_workspace, autogalaxy_workspace, autolens_workspace, autolens_workspace_test, autofit_workspace_test. Also drop thePYAUTO_DISABLE_CRITICAL_CAUSTICSentry from theautolens_workspace_testunset list (line 30).Workspace scripts/docs:
autofit_workspace/run_scripts.shline 17 — dropexport PYAUTO_DISABLE_CRITICAL_CAUSTICS=1.autolens_workspace/CLAUDE.mdlines 36, 40 — remove from command example and doc bullet.autogalaxy_workspace/CLAUDE.mdlines 34, 38 — same.admin_jammy —
admin_jammy/prompt/active.mdline 11 — remove the stale bullet.Testing:
PYAUTO_FAST_PLOTS=1and verify the caustic/critical-curve overlays are skipped.PYAUTO_FAST_PLOTSand verify overlays are computed normally.grep -r PYAUTO_DISABLE_CRITICAL_CAUSTICSacross all repos — should return only historical archive entries (admin_jammy/prompt/issued/).Key Files
PyAutoGalaxy/autogalaxy/plot/plot_utils.py— swap env var name (lines 379, 431)PyAutoGalaxy/autogalaxy/util/plot_utils.py— swap env var name (lines 379, 431)PyAutoBuild/autobuild/config/env_vars.yaml— remove entryPyAutoBuild/.github/workflows/release.yml— remove exportPyAutoBuild/CLAUDE.md— remove doc bulletautofit_workspace/config/build/env_vars.yaml— remove entryautogalaxy_workspace/config/build/env_vars.yaml— remove entryautolens_workspace/config/build/env_vars.yaml— remove entryautolens_workspace_test/config/build/env_vars.yaml— remove entry + unset listautofit_workspace_test/config/build/env_vars.yaml— remove entryautofit_workspace/run_scripts.sh— drop exportautolens_workspace/CLAUDE.md— remove from command + bulletautogalaxy_workspace/CLAUDE.md— remove from command + bulletadmin_jammy/prompt/active.md— remove stale bulletKnown issues flagged (out of scope)
PyAutoGalaxy/autogalaxy/plot/plot_utils.pyandautogalaxy/util/plot_utils.pyare byte-identical duplicates. Worth deduplicating in a follow-up task.admin_jammy/prompt/issued/import_optimization.mdis a historical archive mentioning the old var; left untouched.Original Prompt
Click to expand starting prompt
Can you merge the environment variables PYAUTO_DISABLE_CRITICAL_CURVES And PYAUTO_FAST_PLOT into jsut PYAUTO_FAST_PLOT
(Note: actual var names are
PYAUTO_DISABLE_CRITICAL_CAUSTICSandPYAUTO_FAST_PLOTS— the surviving flag will bePYAUTO_FAST_PLOTS.)