From 4557418ba58eb815548d9a34e7f95ff18cbe0fdf Mon Sep 17 00:00:00 2001 From: Jammy2211 Date: Fri, 10 Jul 2026 09:30:02 +0100 Subject: [PATCH] ci: docs-build.yml docs-only mode for pyautoscientist; CONTRIBUTING + README RTD link (Phase 2) Co-Authored-By: Claude Fable 5 --- .github/workflows/docs-build.yml | 18 +++++++++++++----- CONTRIBUTING.md | 12 ++++++++++++ README.md | 3 ++- 3 files changed, 27 insertions(+), 6 deletions(-) create mode 100644 CONTRIBUTING.md diff --git a/.github/workflows/docs-build.yml b/.github/workflows/docs-build.yml index b9f6fab..aada3b8 100644 --- a/.github/workflows/docs-build.yml +++ b/.github/workflows/docs-build.yml @@ -23,7 +23,7 @@ on: workflow_call: inputs: package: - description: "PyAuto package to build docs for: autoconf|autofit|autoarray|autogalaxy|autolens" + description: "PyAuto package to build docs for: autoconf|autofit|autoarray|autogalaxy|autolens|pyautoscientist (docs-only)" required: true type: string @@ -34,16 +34,20 @@ jobs: - name: Map package → repo + dependency chain id: map run: | + install=package case "${{ inputs.package }}" in autoconf) repo=PyAutoConf; deps="" ;; autofit) repo=PyAutoFit; deps="PyAutoConf" ;; autoarray) repo=PyAutoArray; deps="PyAutoConf" ;; autogalaxy) repo=PyAutoGalaxy; deps="PyAutoConf PyAutoFit PyAutoArray" ;; autolens) repo=PyAutoLens; deps="PyAutoConf PyAutoFit PyAutoArray PyAutoGalaxy" ;; + # Docs-only repos: no pip package — install docs/requirements.txt. + pyautoscientist) repo=PyAutoBrain; deps=""; install=requirements ;; *) echo "::error::unknown package '${{ inputs.package }}'"; exit 1 ;; esac echo "repo=$repo" >> "$GITHUB_OUTPUT" echo "deps=$deps" >> "$GITHUB_OUTPUT" + echo "install=$install" >> "$GITHUB_OUTPUT" - name: Checkout ${{ steps.map.outputs.repo }} (repo under test, at the PR ref) uses: actions/checkout@v4 @@ -71,10 +75,14 @@ jobs: - name: Install (deps + package from source, [optional] + [docs] extras) run: | pip install --upgrade pip setuptools wheel - for r in ${{ steps.map.outputs.deps }}; do - pip install "./$r[optional]" - done - pip install "./${{ steps.map.outputs.repo }}[optional,docs]" + if [ "${{ steps.map.outputs.install }}" = "requirements" ]; then + pip install -r "./${{ steps.map.outputs.repo }}/docs/requirements.txt" + else + for r in ${{ steps.map.outputs.deps }}; do + pip install "./$r[optional]" + done + pip install "./${{ steps.map.outputs.repo }}[optional,docs]" + fi - name: Build docs (fail on warning-count regression) run: | diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md new file mode 100644 index 0000000..495f591 --- /dev/null +++ b/CONTRIBUTING.md @@ -0,0 +1,12 @@ +# Contributing + +PyAutoHeart is an organ of **PyAutoScientist** — a living reference implementation +that is the maintainer's daily working system. `main` moves fast and +carries **no compatibility promises**: adopt by fork-and-pull (confining +your diff to the declared config surfaces), never by tracking, and pin what +you depend on. Issues and PRs are welcome; triage pace is set by the live +instance's needs. + +The full contribution and stability policy is +[PyAutoBrain/CONTRIBUTING.md](https://github.com/PyAutoLabs/PyAutoBrain/blob/main/CONTRIBUTING.md); +the adoption model is documented at . diff --git a/README.md b/README.md index 1f44dc4..32feb38 100644 --- a/README.md +++ b/README.md @@ -51,4 +51,5 @@ under `~/.pyauto-heart/`. Which repos are polled, and with what thresholds, is `config/repos.yaml`. Tests: `pytest tests/`. Boundary and agent guidance: [AGENTS.md](AGENTS.md). The organism: -[PyAutoBrain/ORGANISM.md](https://github.com/PyAutoLabs/PyAutoBrain/blob/main/ORGANISM.md). +[PyAutoBrain/ORGANISM.md](https://github.com/PyAutoLabs/PyAutoBrain/blob/main/ORGANISM.md), +documented in full at .