Overview
Register howtofit as a first-class build target in PyAutoBuild so the release
pipeline checks out, tests, bumps Colab URLs, and publishes the standalone
HowToFit repository alongside HowToGalaxy and HowToLens. This is the final
follow-up for the HowToFit extraction (umbrella issue
PyAutoLabs/autofit_workspace#38) — once this PR lands, the HowToFit split is
fully productionised.
Plan
- Add
HowToFit to the pre-build orchestrator so it is checked out and
prepared alongside the other standalone how-to repos.
- Extend the release GitHub Actions workflow so
howtofit appears in the test
matrix, the two workspace-repository resolvers, and the release publish
matrix.
- Extend
bump_colab_urls.sh so HowToFit notebook URLs are version-bumped in
lockstep with the other workspaces.
- Add
howtofit entries to the copy_files.yaml and no_run.yaml config
files so the existing per-workspace config machinery recognises the new
target.
- Verify by running
script_matrix.py locally with howtofit appended to the
argument list.
Detailed implementation plan
Affected Repositories
Work Classification
Library (build infrastructure)
Branch Survey
| Repository |
Current Branch |
Dirty? |
| ./PyAutoBuild |
main |
clean |
Suggested branch: feature/howtofit-register
Worktree root: ~/Code/PyAutoLabs-wt/howtofit-register/ (created later by /start_library)
Implementation Steps
-
pre_build.sh (after line 65, the existing HowToLens entry):
run_workspace "HowToFit" "howtofit"
-
.github/workflows/release.yml — edits mirroring the HowToLens
blocks:
- After line 187 (end of HowToLens checkout block), add a
Checkout HowToFit step with repository: PyAutoLabs/HowToFit and
path: howtofit.
- Line 194: append
howtofit to the
./PyAutoBuild/autobuild/script_matrix.py argument list.
- After line 222 (HowToLens test-matrix entry), add a
howtofit entry with
workspace_repository: PyAutoLabs/HowToFit.
- After the
howtolens branch at lines 312–315, add an equivalent
elif [ "howtofit" ] branch that sets
workspace_repository::PyAutoLabs/HowToFit.
- After the
howtolens branch at lines 415–418, add the same
elif [ "howtofit" ] branch in the second resolver.
- After line 691 (HowToLens release-matrix entry), add the HowToFit release
matrix entry.
-
autobuild/bump_colab_urls.sh:
- Line 12 comment: extend to
HowToGalaxy, HowToLens, HowToFit.
- Line 30 regex: extend the alternation group from
HowToGalaxy|HowToLens
to HowToGalaxy|HowToLens|HowToFit.
-
autobuild/config/copy_files.yaml — after line 11 (howtolens:), add
an empty howtofit: entry.
-
autobuild/config/no_run.yaml — after line 52 (howtolens: block
end), add howtofit: [].
Verification
After editing, run from the worktree root:
python PyAutoBuild/autobuild/script_matrix.py \
autofit autogalaxy autolens autofit_test autolens_test \
howtogalaxy howtolens howtofit
Confirm it exits zero and emits expected per-workspace matrix rows.
Also run the existing test suite:
Key Files
PyAutoBuild/pre_build.sh — add HowToFit orchestration line
PyAutoBuild/.github/workflows/release.yml — six matrix/resolver edits
PyAutoBuild/autobuild/bump_colab_urls.sh — extend comment + regex
PyAutoBuild/autobuild/config/copy_files.yaml — add howtofit: entry
PyAutoBuild/autobuild/config/no_run.yaml — add howtofit: [] entry
Original Prompt
Click to expand starting prompt
Register howtofit as a first-class build target in @PyAutoBuild, mirroring
the pattern that was established for howtolens and howtogalaxy
(PyAutoBuild PR #53 — register-howto-repos).
This is sub-4 of the HowToFit extraction umbrella:
PyAutoLabs/autofit_workspace#38
Context:
- HowToFit now lives as a standalone repository at
https://github.com/PyAutoLabs/HowToFit
- Sub-1 (scaffold), sub-2 (remove
howtofit/ from autofit_workspace), and
sub-3 (update PyAutoFit library URLs + docs/howtofit/) all merged on
2026-04-22.
- The final follow-up is to make PyAutoBuild build, release, and publish
HowToFit the same way it already does for HowToLens and HowToGalaxy.
(See prompt file for the full five-file edit list and acceptance criteria.)
Overview
Register
howtofitas a first-class build target in PyAutoBuild so the releasepipeline checks out, tests, bumps Colab URLs, and publishes the standalone
HowToFit repository alongside HowToGalaxy and HowToLens. This is the final
follow-up for the HowToFit extraction (umbrella issue
PyAutoLabs/autofit_workspace#38) — once this PR lands, the HowToFit split is
fully productionised.
Plan
HowToFitto the pre-build orchestrator so it is checked out andprepared alongside the other standalone how-to repos.
howtofitappears in the testmatrix, the two workspace-repository resolvers, and the release publish
matrix.
bump_colab_urls.shso HowToFit notebook URLs are version-bumped inlockstep with the other workspaces.
howtofitentries to thecopy_files.yamlandno_run.yamlconfigfiles so the existing per-workspace config machinery recognises the new
target.
script_matrix.pylocally withhowtofitappended to theargument list.
Detailed implementation plan
Affected Repositories
Work Classification
Library (build infrastructure)
Branch Survey
Suggested branch:
feature/howtofit-registerWorktree root:
~/Code/PyAutoLabs-wt/howtofit-register/(created later by/start_library)Implementation Steps
pre_build.sh(after line 65, the existingHowToLensentry):.github/workflows/release.yml— edits mirroring the HowToLensblocks:
Checkout HowToFitstep withrepository: PyAutoLabs/HowToFitandpath: howtofit.howtofitto the./PyAutoBuild/autobuild/script_matrix.pyargument list.howtofitentry withworkspace_repository: PyAutoLabs/HowToFit.howtolensbranch at lines 312–315, add an equivalentelif [ "howtofit" ]branch that setsworkspace_repository::PyAutoLabs/HowToFit.howtolensbranch at lines 415–418, add the sameelif [ "howtofit" ]branch in the second resolver.matrix entry.
autobuild/bump_colab_urls.sh:HowToGalaxy, HowToLens, HowToFit.HowToGalaxy|HowToLensto
HowToGalaxy|HowToLens|HowToFit.autobuild/config/copy_files.yaml— after line 11 (howtolens:), addan empty
howtofit:entry.autobuild/config/no_run.yaml— after line 52 (howtolens:blockend), add
howtofit: [].Verification
After editing, run from the worktree root:
Confirm it exits zero and emits expected per-workspace matrix rows.
Also run the existing test suite:
Key Files
PyAutoBuild/pre_build.sh— add HowToFit orchestration linePyAutoBuild/.github/workflows/release.yml— six matrix/resolver editsPyAutoBuild/autobuild/bump_colab_urls.sh— extend comment + regexPyAutoBuild/autobuild/config/copy_files.yaml— addhowtofit:entryPyAutoBuild/autobuild/config/no_run.yaml— addhowtofit: []entryOriginal Prompt
Click to expand starting prompt
Register
howtofitas a first-class build target in @PyAutoBuild, mirroringthe pattern that was established for
howtolensandhowtogalaxy(PyAutoBuild PR #53 —
register-howto-repos).This is sub-4 of the HowToFit extraction umbrella:
PyAutoLabs/autofit_workspace#38
Context:
https://github.com/PyAutoLabs/HowToFit
howtofit/from autofit_workspace), andsub-3 (update PyAutoFit library URLs +
docs/howtofit/) all merged on2026-04-22.
HowToFit the same way it already does for HowToLens and HowToGalaxy.
(See prompt file for the full five-file edit list and acceptance criteria.)