diff --git a/.claude/skills/generate_and_merge/SKILL.md b/.claude/skills/generate_and_merge/SKILL.md index a78cd817..3b18fca2 100644 --- a/.claude/skills/generate_and_merge/SKILL.md +++ b/.claude/skills/generate_and_merge/SKILL.md @@ -19,7 +19,7 @@ Build notebooks for the autofit_workspace, then open and merge a PR into `main`, Run from the workspace root: ```bash - PYTHONPATH=../PyAutoBuild/autobuild python3 ../PyAutoBuild/autobuild/generate.py autofit + PYTHONPATH=../PyAutoHands/autobuild python3 ../PyAutoHands/autobuild/generate.py autofit ``` This regenerates all notebooks in `notebooks/` from `scripts/`. It may take a few minutes. It also regenerates the LLM-facing catalogue (`llms-full.txt` and `workspace_index.json`) diff --git a/.github/scripts/run_smoke.py b/.github/scripts/run_smoke.py index 4d91571f..98e4b750 100644 --- a/.github/scripts/run_smoke.py +++ b/.github/scripts/run_smoke.py @@ -9,7 +9,7 @@ Notebook execution uses `jupyter nbconvert --to notebook --execute`. On failure the runner regenerates the single failing notebook from its -source `.py` script via PyAutoBuild's `py_to_notebook` and retries +source `.py` script via PyAutoHands's `py_to_notebook` and retries once — this catches stale notebooks where the script has moved on but the on-disk `.ipynb` wasn't refreshed by `/pre_build`'s `generate.py`. Whole-workspace regeneration stays the responsibility @@ -131,7 +131,7 @@ def regenerate_notebook(nb_rel: str) -> Path: The regenerated copy lives in /tmp; the on-disk `notebooks/` tree is never modified, so a smoke run leaves the worktree clean. """ - from build_util import py_to_notebook # PyAutoBuild/autobuild on PYTHONPATH + from build_util import py_to_notebook # PyAutoHands/autobuild on PYTHONPATH script_path = SCRIPTS_DIR / Path(nb_rel).with_suffix(".py") if not script_path.exists(): diff --git a/.github/workflows/navigator_check.yml b/.github/workflows/navigator_check.yml index b8617ade..90d172d7 100644 --- a/.github/workflows/navigator_check.yml +++ b/.github/workflows/navigator_check.yml @@ -1,9 +1,9 @@ name: Navigator Check -# Thin caller for PyAutoBuild's reusable navigator-catalogue check. The check +# Thin caller for PyAutoHands's reusable navigator-catalogue check. The check # logic (path/banner lint + catalogue staleness) and its entrypoints live in -# PyAutoBuild/autobuild; this workspace only declares which generator project to -# run. See PyAutoLabs/PyAutoBuild/.github/workflows/navigator_check.yml. +# PyAutoHands/autobuild; this workspace only declares which generator project to +# run. See PyAutoLabs/PyAutoHands/.github/workflows/navigator_check.yml. on: [push, pull_request] @@ -12,6 +12,6 @@ permissions: jobs: navigator: - uses: PyAutoLabs/PyAutoBuild/.github/workflows/navigator_check.yml@main + uses: PyAutoLabs/PyAutoHands/.github/workflows/navigator_check.yml@main with: project: autofit diff --git a/AGENTS.md b/AGENTS.md index 9f8853ef..a17f6403 100644 --- a/AGENTS.md +++ b/AGENTS.md @@ -53,9 +53,9 @@ inspect results), read `scripts/overview/overview_1_the_basics.py` — it is kep ## Testing On CI, every PR is gated by three workflows on Python **3.12 and 3.13**: `smoke_tests.yml` (the -smoke runner below — the definition of green), `navigator_check.yml` (PyAutoBuild's reusable +smoke runner below — the definition of green), `navigator_check.yml` (PyAutoHands's reusable navigator-catalogue check; see *Notebooks vs Scripts*), and `url_check.yml` (link checking). The -smoke and navigator jobs check out **PyAutoBuild** as a sibling and run the PyAuto* libraries from +smoke and navigator jobs check out **PyAutoHands** as a sibling and run the PyAuto* libraries from the **same-named branch** of each source repo, so a workspace PR is validated against matching library branches. @@ -94,13 +94,13 @@ and markdown cells. ### Generating notebooks -After updating scripts, regenerate the notebooks using the PyAutoBuild tool (run from the workspace +After updating scripts, regenerate the notebooks using the PyAutoHands tool (run from the workspace root): ```bash pip install ipynb-py-convert -git clone https://github.com/PyAutoLabs/PyAutoBuild.git ../PyAutoBuild -PYTHONPATH=../PyAutoBuild/autobuild python3 ../PyAutoBuild/autobuild/generate.py autofit +git clone https://github.com/PyAutoLabs/PyAutoHands.git ../PyAutoHands +PYTHONPATH=../PyAutoHands/autobuild python3 ../PyAutoHands/autobuild/generate.py autofit ``` Commit the regenerated notebooks alongside the script changes. The `/generate_and_merge` skill @@ -126,7 +126,7 @@ PyAutoFit sits near the base of the PyAuto stack (all on the `PyAutoLabs` GitHub - https://github.com/PyAutoLabs/PyAutoConf — configuration handling (the `autoconf` dependency). - https://github.com/PyAutoLabs/PyAutoFit — this library: model composition + non-linear search. -- https://github.com/PyAutoLabs/PyAutoBuild — notebook generation + CI. +- https://github.com/PyAutoLabs/PyAutoHands — notebook generation + CI. - https://github.com/PyAutoLabs/PyAutoGalaxy — downstream science library built **on** PyAutoFit. - https://github.com/PyAutoLabs/PyAutoLens — downstream science library built **on** PyAutoFit. - https://github.com/PyAutoLabs/HowToFit — tutorial lecture series that teaches statistical @@ -134,7 +134,7 @@ PyAutoFit sits near the base of the PyAuto stack (all on the `PyAutoLabs` GitHub beginners new to the framework. For local development these are typically cloned as siblings of this repo (`../PyAutoFit`, -`../PyAutoConf`, `../PyAutoBuild`, …). +`../PyAutoConf`, `../PyAutoHands`, …). ## Task Workflows diff --git a/config/build/copy_files.yaml b/config/build/copy_files.yaml index 226a9f54..1c5f3fa8 100644 --- a/config/build/copy_files.yaml +++ b/config/build/copy_files.yaml @@ -1,11 +1,11 @@ # Files copied as-is into notebooks/ instead of being converted from -# scripts/. Used by PyAutoBuild's generate.py during the pre-build step. +# scripts/. Used by PyAutoHands's generate.py during the pre-build step. # # Format: flat list of script paths relative to the workspace root. # Patterns matched by suffix — any file path ending with one of these # entries is treated as copy-only. # -# This file overrides PyAutoBuild/autobuild/config/copy_files.yaml for +# This file overrides PyAutoHands/autobuild/config/copy_files.yaml for # this workspace. Add or remove entries here, not there. - howtofit/chapter_1_introduction/gaussian.py diff --git a/config/build/markdown_examples.yaml b/config/build/markdown_examples.yaml index 806da4da..75a7e1e5 100644 --- a/config/build/markdown_examples.yaml +++ b/config/build/markdown_examples.yaml @@ -1,6 +1,6 @@ # Curated examples rendered to executed markdown pages (markdown/) with their # real output images, so they can be read on GitHub. Built manually by -# PyAutoBuild's generate_markdown.py — see that module's docstring for the +# PyAutoHands's generate_markdown.py — see that module's docstring for the # rules (never TEST_MODE; features/ scripts never rendered; list order is # execution order and index order). # autofit has no root start_here.py; the overview scripts are the flagships diff --git a/config/build/visualise_notebooks.yaml b/config/build/visualise_notebooks.yaml index 0553ac18..032daa12 100644 --- a/config/build/visualise_notebooks.yaml +++ b/config/build/visualise_notebooks.yaml @@ -1,10 +1,10 @@ -# Notebook stems that should run when PyAutoBuild's generate / run pipeline +# Notebook stems that should run when PyAutoHands's generate / run pipeline # is invoked with --visualise. Used to refresh notebook output cells in main. # # Format: flat list of notebook stems (no extension, no path). # An empty list means no notebooks need re-visualisation in this workspace. # -# This file overrides PyAutoBuild/autobuild/config/visualise_notebooks.yaml +# This file overrides PyAutoHands/autobuild/config/visualise_notebooks.yaml # for this workspace. Add or remove entries here, not there. [] diff --git a/llms-full.txt b/llms-full.txt index 333a7c54..5b89f593 100644 --- a/llms-full.txt +++ b/llms-full.txt @@ -1,4 +1,4 @@ -AUTO-GENERATED by PyAutoBuild — do not edit by hand; regenerate with generate.py. +AUTO-GENERATED by PyAutoHands — do not edit by hand; regenerate with generate.py. # PyAutoFit Workspace — Full Catalogue diff --git a/markdown/README.md b/markdown/README.md index 91cb1d30..8bd23b52 100644 --- a/markdown/README.md +++ b/markdown/README.md @@ -6,4 +6,4 @@ Every page below is the corresponding example script **fully executed**, rendere - [Overview: Scientific Workflow](overview/overview_2_scientific_workflow.md) — from `scripts/overview/overview_2_scientific_workflow.py` - [Overview: Statistical Methods](overview/overview_3_statistical_methods.md) — from `scripts/overview/overview_3_statistical_methods.py` -These pages are regenerated manually by PyAutoBuild's `generate_markdown.py` when a curated script changes. +These pages are regenerated manually by PyAutoHands's `generate_markdown.py` when a curated script changes.