Skip to content

Commit e9ab11a

Browse files
Jammy2211claude
authored andcommitted
lifecycle: register the two orphan complete/ records (fixes Lifecycle Drift CI)
benchmark_jax_gradient_based_optimizers_on_the.md and next_wave_population_gradient_samplers_on_the.md were git-mv'd into complete/ by 09256cc as raw prompt files: underscore names (off the safe_name hyphen convention every other record uses) and no complete.md entry, tripping the `lifecycle.py check` invariant "every complete/ record has a complete.md entry". Rename both to hyphenated slugs (jax-gradient-optimizer-benchmark, next-wave-population-optimizers), add their complete.md entries (autolens_workspace_developer #95/PR96 and #97/PR98, both merged), fix the internal cross-ref, and regenerate complete/index.md. check + index --check now pass. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
1 parent d03db6a commit e9ab11a

4 files changed

Lines changed: 33 additions & 2 deletions

File tree

complete.md

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -6138,3 +6138,17 @@
61386138
- workspace-pr: https://github.com/PyAutoLabs/autofit_workspace/pull/95 (merged f23254bd, squash)
61396139
- repos: autofit_workspace
61406140
- summary: Phase 2 (redefined config→examples) of the multi-start gradient search promotion (Fit#1369). Added a MultiStartAdam section to scripts/searches/mle.py (JAX use_jax=True analysis, standard fit plot; ADABelief/Lion noted) + regenerated notebooks/searches/mle.ipynb. Original "config/packaged defaults" phase dropped (searches have no per-search config; new searches add zero config keys). Validated end-to-end (recovers 50/25/10). Finding: the searches need NO pytree registration in user scripts (instance built inside traced objective). --auto safe; Heart YELLOW human-acked. See project_multi_start_gradient_search_promotion.
6141+
6142+
## jax-gradient-optimizer-benchmark
6143+
- issue: https://github.com/PyAutoLabs/autolens_workspace_developer/issues/95 (closed)
6144+
- completed: 2026-07-13
6145+
- workspace-pr: https://github.com/PyAutoLabs/autolens_workspace_developer/pull/96 (merged)
6146+
- repos: autolens_workspace_developer
6147+
- summary: Workspace-only benchmark (searches_minimal/) of JAX gradient-based optimizers on the HST MGE lens likelihood (AnalysisImaging(use_jax=True), jax.value_and_grad; no PyAutoFit source change), grounded in Herculens / Enzi et al. 2026 (arXiv:2606.30620). Cold-start candidates optax Adam, ADABelief, jaxopt L-BFGS, numpyro SVI, jaxopt Levenberg-Marquardt against _metrics.MLTracker (evals/time-to-ML, robustness = distance to simulator-truth logL). Key finding: EVERY single cold-start method locks onto the WRONG basin (r_E ~3.5–5.0, logL ~-158000) while 12-start Adam (GIGA-Lens recipe) recovers truth (r_E 1.600, logL +31788, ~2/12 starts). Failure is basin selection, not optimizer/speed. Established the RAL A100 pipeline; motivated the next-wave follow-up. See project_jax_gradient_optimizer_benchmark.
6148+
6149+
## next-wave-population-optimizers
6150+
- issue: https://github.com/PyAutoLabs/autolens_workspace_developer/issues/97 (closed)
6151+
- completed: 2026-07-13
6152+
- workspace-pr: https://github.com/PyAutoLabs/autolens_workspace_developer/pull/98 (merged)
6153+
- repos: autolens_workspace_developer
6154+
- summary: Follow-up to jax-gradient-optimizer-benchmark (#95/PR96) — fast many-points OPTIMIZERS (MAP, not full Bayesian samplers) on the MGE lens likelihood, testing whether population/diversity buys robustness. Candidates (searches_minimal, same MGE MAP harness): multi-start of other local rules (L-BFGS/ADABelief/Lion/Levenberg-Marquardt), CMA-ES (evosax), SVGD-as-mode-finder (blackjax.svgd), plus a jaxns nested-sampling reference cameo. Baseline to beat = multi-start Adam (r_E 1.600, 2/12 starts, ~1254 s). Finding: robust MAP needs diversity + gradients; SVGD (A100) best (r_E 1.595). Full-sampling wave (tempered SMC/HMC/flowMC/converged Nautilus) explicitly deferred. RAL A100 pipeline used. See project_jax_gradient_optimizer_benchmark.

complete/2026/07/benchmark_jax_gradient_based_optimizers_on_the.md renamed to complete/2026/07/jax-gradient-optimizer-benchmark.md

File renamed without changes.

complete/2026/07/next_wave_population_gradient_samplers_on_the.md renamed to complete/2026/07/next-wave-population-optimizers.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@ Status: formalised
1616

1717
## The insight this builds on
1818

19-
Follow-up to `experiment/workspaces/benchmark_jax_gradient_based_optimizers_on_the.md`
19+
Follow-up to `complete/2026/07/jax-gradient-optimizer-benchmark.md`
2020
(autolens_workspace_developer#95). That run established, on the HST MGE lens
2121
likelihood, that **every single cold-start method fails the same way**
2222
optax Adam (r_E 4.89), ADABelief (5.01), jaxopt L-BFGS (4.42) and numpyro SVI

complete/index.md

Lines changed: 18 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@ Token-light navigation over the finished-work records (schema:
66
only then grep a dated bucket. Curators: edit the band between the CURATED
77
markers; everything below GENERATED is rebuilt.
88

9-
558 records across 5 buckets.
9+
575 records across 5 buckets.
1010

1111
<!-- CURATED:START -->
1212
## Highlights
@@ -20,6 +20,7 @@ _(curate hard-won records here — survives regeneration.)_
2020

2121
- [afa-wiki-currency-wiring-afa-skill-tranche](2026/07/afa-wiki-currency-wiring-afa-skill-tranche.md) — both autofit_assistant follow-ups shipped in one --auto session (one in-session Heart-YELLOW ack covering both…
2222
- [aggregator-output-contracts](2026/07/aggregator-output-contracts.md)
23+
- [aggregator-quick-fit-consolidation](2026/07/aggregator-quick-fit-consolidation.md) — guides/results tutorials ran own capped fits pruning to 2 samples vs deep [-10]/[9] IndexError → consolidate o…
2324
- [alma-interferometer](2026/07/alma-interferometer.md) — ALMA interferometer reduction live (phase 5) — first visibility-domain product family: calibrated MS → al.Inte…
2425
- [api-baseline-refresh](2026/07/api-baseline-refresh.md)
2526
- [assistant-benchmarks](2026/07/assistant-benchmarks.md)
@@ -44,7 +45,9 @@ _(curate hard-won records here — survives regeneration.)_
4445
- [colab-link-rot-libdocs](2026/07/colab-link-rot-libdocs.md)
4546
- [colab-maturity](2026/07/colab-maturity.md)
4647
- [colab-sim-verify-install](2026/07/colab-sim-verify-install.md)
48+
- [corrective-pr-heart-red](2026/07/corrective-pr-heart-red.md) — human-authorized corrective-PR exception for Heart RED — MERGED
4749
- [csv-api-lenstool](2026/07/csv-api-lenstool.md)
50+
- [database-latent-wheel-load](2026/07/database-latent-wheel-load.md) — database scripts failed on release wheels loading latent variables → AssertionError. Release-tail item D. Corr…
4851
- [delaunay-qhull-callback](2026/07/delaunay-qhull-callback.md)
4952
- [docs-theming-hub](2026/07/docs-theming-hub.md) — phases B+C of docs middle path — hub LIVE at pyautolabs.github.io (Pages; RETROFIT.md = paid-domain flip); sha…
5053
- [dpie-lenstool-param](2026/07/dpie-lenstool-param.md)
@@ -74,7 +77,12 @@ _(curate hard-won records here — survives regeneration.)_
7477
- [intake-census-dashboard](2026/07/intake-census-dashboard.md)
7578
- [intake-formalise](2026/07/intake-formalise.md)
7679
- [intake-reconcile](2026/07/intake-reconcile.md)
80+
- [interferometer-analysis-fitexception](2026/07/interferometer-analysis-fitexception.md) — interferometer (+point_source) log_likelihood_function lacked imaging's NumPy-path try/except→FitException gua…
81+
- [inversion-testmode-singular-guard](2026/07/inversion-testmode-singular-guard.md) — release-tail singular/non-PD inversion FAILs (slam/cpu_fast_modeling) were a flaky TEST_MODE artifact, not a c…
7782
- [jax-autodiff-gradients-audit](2026/07/jax-autodiff-gradients-audit.md) — 3-phase JAX autodiff gradients audit complete in one supervised session — every smooth likelihood FD-certified…
83+
- [jax-grad-param9-autodiff-fd-mismatch](2026/07/jax-grad-param9-autodiff-fd-mismatch.md) — jax_grad imaging pixelization parameter-9 autodiff-vs-FD mismatch → parameter-specific documented FD exclusion…
84+
- [jax-gradient-optimizer-benchmark](2026/07/jax-gradient-optimizer-benchmark.md)
85+
- [jax-pytree-partition-vars-no-dict](2026/07/jax-pytree-partition-vars-no-dict.md)
7886
- [jwst-frame-feasibility](2026/07/jwst-frame-feasibility.md) — JWST per-frame feasibility answered — GO, phased. Should: strongest case = NIRCam SW undersampling (subpixel d…
7987
- [jwst-frame-products](2026/07/jwst-frame-products.md) — JWST frame products live — 7 feasibility deltas implemented (_crf capture+consume, native MJy/sr + derived man…
8088
- [jwst-nircam-cosmos-web](2026/07/jwst-nircam-cosmos-web.md)
@@ -97,6 +105,8 @@ _(curate hard-won records here — survives regeneration.)_
97105
- [markdown-example-renderings](2026/07/markdown-example-renderings.md) — executed-markdown example pages, GitHub-browsable with real output images. generate_markdown.py (curated confi…
98106
- [markdown-renderings-howto](2026/07/markdown-renderings-howto.md) — batch 2b executed-markdown for HowTo chapter_1 (6/6/9). FAST (ch1 = few/no searches). Surfaced+fixed 2 tutoria…
99107
- [markdown-renderings-workspaces](2026/07/markdown-renderings-workspaces.md) — batch 2a executed-markdown for the 3 workspaces (autofit 3 overview, autogalaxy 18, autolens +21 → index 30). …
108+
- [mass-cse-jax-decompose](2026/07/mass-cse-jax-decompose.md) — incomplete Sérsic-stellar-mass CSE→JAX port (chaining.py FAIL) — thread xp through Sersic CSE deflection path,…
109+
- [matern-kernel-tfp-jax-incompat](2026/07/matern-kernel-tfp-jax-incompat.md)
100110
- [matrix-blackjax-and-smoke-guards](2026/07/matrix-blackjax-and-smoke-guards.md) — Final layers of the Python Version Matrix fix (after nufftax #382/#144 and jax #383/#1358/#497/#604). (1) blac…
101111
- [matrix-jax-skip](2026/07/matrix-jax-skip.md) — Second layer of the Python Version Matrix fix (after nufftax layer #382/#144). 11 unit tests across 4 repos ex…
102112
- [matrix-nufftax-py312](2026/07/matrix-nufftax-py312.md) — Fixed the chronic PyAutoBuild "Python Version Matrix" weekly red. 38 failures/job = nufftax ModuleNotFoundErro…
@@ -105,7 +115,10 @@ _(curate hard-won records here — survives regeneration.)_
105115
- [multi-shared-state-core-api](2026/07/multi-shared-state-core-api.md)
106116
- [multi-shared-state-examples](2026/07/multi-shared-state-examples.md) — EPIC — phases 1-4 + follow-up
107117
- [multi-shared-state-examples-phase-3-workspace-examples](2026/07/multi-shared-state-examples-phase-3-workspace-examples.md)
118+
- [multi-start-gradient-examples](2026/07/multi-start-gradient-examples.md) — Phase 2 (redefined config→examples) of the multi-start gradient search promotion (Fit#1369). Added a MultiStar…
119+
- [multi-start-gradient-search](2026/07/multi-start-gradient-search.md) — Phase 1 of promoting the benchmark-winning multi-start gradient MAP optimizer to first-class PyAutoFit searche…
108120
- [nautilus-nn-bottleneck](2026/07/nautilus-nn-bottleneck.md) — Nautilus overhead research — anatomy on fast likelihoods (NN training 40-52% + bound geometry 25-38% of wall; …
121+
- [next-wave-population-optimizers](2026/07/next-wave-population-optimizers.md)
109122
- [nightly-loud-failure](2026/07/nightly-loud-failure.md) — nightly driver hardening — token probe, fetch errors page (never 💤), anchor validation w/ 24h fallback, no anc…
110123
- [nightly-release-activity-gate](2026/07/nightly-release-activity-gate.md)
111124
- [nightly-release-implementation](2026/07/nightly-release-implementation.md)
@@ -131,6 +144,7 @@ _(curate hard-won records here — survives regeneration.)_
131144
- [psf-oversample-workspace](2026/07/psf-oversample-workspace.md)
132145
- [psf-visible-input](2026/07/psf-visible-input.md)
133146
- [pyautogut-organ](2026/07/pyautogut-organ.md) — Gut organ + hygiene drive seam — complete
147+
- [pyautolens-jax-joss-paper](2026/07/pyautolens-jax-joss-paper.md) — PyAutoLens-JAX JOSS paper scaffold — MERGED
134148
- [pyautoreduce-hst-design](2026/07/pyautoreduce-hst-design.md)
135149
- [pyautoscientist-3b-clone](2026/07/pyautoscientist-3b-clone.md) — clone (Mitosis) agent v0 live per DESIGN.md phasing — analyze mode emits CloneDecision (domain analysis via as…
136150
- [pyautoscientist-3b-config](2026/07/pyautoscientist-3b-config.md) — config extraction 4a — Heart version_skew map → config/repos.yaml `version_skew:` block (incl. unpolled assist…
@@ -145,10 +159,12 @@ _(curate hard-won records here — survives regeneration.)_
145159
- [refactor-conductor](2026/07/refactor-conductor.md)
146160
- [refactor-post-phase3](2026/07/refactor-post-phase3.md) — PyAutoReduce post-phase-3 refactor — MERGED
147161
- [regen-workspace-notebooks](2026/07/regen-workspace-notebooks.md)
162+
- [release-advisory-tier-slow-scripts](2026/07/release-advisory-tier-slow-scripts.md) — mode=release integrate kept going RED not on bugs but on a shifting perf-flake tail of slow real-search script…
148163
- [release-datasets-group-b](2026/07/release-datasets-group-b.md) — bare-`dataset/` repos — purged & MERGED
149164
- [release-docs-polish-learn-paths](2026/07/release-docs-polish-learn-paths.md)
150165
- [release-ships-simulated-datasets](2026/07/release-ships-simulated-datasets.md) — Group A — all 4 legs complete & MERGED; Group B separate
151166
- [release-stamping-slim](2026/07/release-stamping-slim.md)
167+
- [release-validation-tail-burndown](2026/07/release-validation-tail-burndown.md) — EPIC/capstone. Burned down the 18f/5t mode=release tail. All real correctness bugs fixed+merged+validated on w…
152168
- [remove-nss-sampler](2026/07/remove-nss-sampler.md) — ALL phases MERGED + dev-clean
153169
- [remove-pulse-compat](2026/07/remove-pulse-compat.md)
154170
- [review-faculty](2026/07/review-faculty.md)
@@ -170,6 +186,7 @@ _(curate hard-won records here — survives regeneration.)_
170186
- [stpsf-tier2b](2026/07/stpsf-tier2b.md) — JWST per-frame PSF coverage lifted 3/6 -> 6/6 (F115W validated) — STPSF tier-2b at frame DETECTOR + target pos…
171187
- [stub-skill-recipes-fill-in](2026/07/stub-skill-recipes-fill-in.md) — retired by user decision
172188
- [user-defaults-discovery](2026/07/user-defaults-discovery.md) — batch finale (task 6, rescoped discovery-half) — start-new-project step 0 environment-discovery preflight: rea…
189+
- [verify-install-check-f-autosimulate-and-dep-pin](2026/07/verify-install-check-f-autosimulate-and-dep-pin.md)
173190
- [version-check-compat-floor](2026/07/version-check-compat-floor.md)
174191
- [version-pinning-design-review](2026/07/version-pinning-design-review.md)
175192
- [weak-likelihood-function](2026/07/weak-likelihood-function.md)

0 commit comments

Comments
 (0)