From a38647cbd233940a6825272076560688ff6e05b5 Mon Sep 17 00:00:00 2001 From: Jammy2211 Date: Sat, 16 May 2026 14:04:38 +0100 Subject: [PATCH] feat: mirror Nautilus profiling scripts and shared search helpers (Phase 3) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Phase 3 of the autolens_profiling z_feature roadmap. Stands up autolens_profiling/searches/ with profiling for the Nautilus sampler only, mirrored from autolens_workspace_developer/searches_minimal/. Designs the folder layout so other samplers (Dynesty, Emcee, BlackJAX, NumPyro, PocoMC, NSS, LBFGS) can slot in cleanly under their own follow-up prompts. Files mirrored (4 copies from clean origin/main of _developer): searches_minimal/_setup.py -> searches/_setup.py searches_minimal/_metrics.py -> searches/_metrics.py searches_minimal/nautilus_simple.py -> searches/nautilus/simple.py searches_minimal/nautilus_jax.py -> searches/nautilus/jax.py Path rewrites in _setup.py: - _DATASET_SUBPATH: Path("jax_profiling") / "dataset" / "imaging" / "hst" -> Path("dataset") / "imaging" / "hst" - Replaced the if al.util.dataset.should_simulate(...) subprocess block (which invoked _developer's dataset_setup/imaging.py) with a clean FileNotFoundError pointing back at _developer for regeneration — matches the Phase 1 pattern. - Dropped now-unused subprocess + sys imports. - Docstring example: `from searches_minimal._setup` -> `from searches._setup` - Cross-reference: `jax_profiling/imaging/mge.py` -> `likelihood/imaging/mge.py` Import rewrites in nautilus/simple.py and nautilus/jax.py: - `from searches_minimal._{metrics,setup}` -> `from searches._{metrics,setup}` - Added sys.path injection at top so scripts work whether run as `python searches/nautilus/.py` or `python -m searches.nautilus.`. Output convention upgrade (both Nautilus scripts): - Originals wrote a freeform `