ci+docs: consume Heart's canonical arcticpy install; fix the documented recipe - #22
Merged
Merged
Conversation
…ed recipe The arcticpy install recipe had drifted into four shell copies across the CTI repos with no single owner — this workflow's copy was annotated "Recipe mirrors autocti_workspace_test/.github/scripts/smoke_install.sh", acknowledging the copy-paste in a comment rather than factoring it out. Heart now owns it as a composite action. - .github/workflows/wiki-currency.yml: the inline recipe becomes `uses: PyAutoLabs/PyAutoHeart/.github/actions/install-arcticpy@main`. The "Recipe mirrors …" comment goes with it. - skills/ac_setup_environment.md: this skill is the assistant's answer to what it calls the #1 setup failure, and its recipe was incomplete in three ways. All three were reproduced against a clean build of arcticpy 2.6: * setuptools/wheel missing. --no-build-isolation does not read arcticpy's build-system.requires, so build deps must already be installed; without setuptools the build dies at `BackendUnavailable: Cannot import 'setuptools.build_meta'`. Python 3.12+ venvs no longer ship it. * scipy/matplotlib missing. --no-deps suppresses arcticpy's runtime dependencies, but arcticpy/__init__.py imports read_noise, which imports both at import time — so a good build still fails at `import arcticpy`. * The verification command was wrong. arcticpy exposes no __version__ attribute, so the documented `print(arcticpy.__version__)` raises AttributeError on a perfectly healthy install. Now reads importlib.metadata, with an explicit note so the assistant does not misdiagnose that AttributeError as a broken arcticpy. The skill's "canonical, tested sequence" pointer moves from autocti_workspace_test's smoke_install.sh (which no longer carries a recipe) to Heart's action, which every CTI repo's CI actually runs. skills/*.md are symlinked from .claude/skills/ (git mode 120000), so this edit covers both surfaces. Refs PyAutoLabs/PyAutoHeart#170 Co-Authored-By: Claude Opus 5 <[email protected]> Claude-Session: https://claude.ai/code/session_018nDAxBEavkzb6Zkz1cYHef
This was referenced Aug 24, 2026
Merged
…all-standardisation
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Part of PyAutoLabs/PyAutoHeart#170. Consumer leg — blocked on PyAutoLabs/PyAutoHeart#171 merging first.
This workflow's arcticpy block was annotated "Recipe mirrors autocti_workspace_test/.github/scripts/smoke_install.sh" — copy-paste acknowledged in a comment rather than factored out. Heart now owns the recipe as a composite action.
Changes
.github/workflows/wiki-currency.yml— the inline recipe becomesuses: PyAutoLabs/PyAutoHeart/.github/actions/install-arcticpy@main. The "Recipe mirrors …" comment goes with it.skills/ac_setup_environment.md— this skill is the assistant's answer to what it itself calls the #1 setup failure, and its recipe was incomplete in three ways. All three reproduced against a clean build of arcticpy 2.6:setuptools/wheelmissing.--no-build-isolationdoesn't read arcticpy'sbuild-system.requires, so build deps must already be installed. Without setuptools the build dies atBackendUnavailable: Cannot import 'setuptools.build_meta'. Python 3.12+ venvs no longer ship it.scipy/matplotlibmissing.--no-depssuppresses arcticpy's runtime dependencies, butarcticpy/__init__.pyimportsread_noise, which imports both at import time — so a good build still fails atimport arcticpy.__version__attribute, so the documentedprint(arcticpy.__version__)raisesAttributeErroron a perfectly healthy install. Now readsimportlib.metadata, with an explicit note so the assistant doesn't misdiagnose thatAttributeErroras a broken arcticpy — which is precisely the failure this skill exists to resolve.The skill's "canonical, tested sequence" pointer moves from
autocti_workspace_test:.github/scripts/smoke_install.sh(which no longer carries a recipe) to Heart's action, which every CTI repo's CI actually runs.skills/README.mddescription line synced.Note on the symlinks
.claude/skills/*.mdare symlinks intoskills/(git mode120000), not copies — verified on this branch. One edit covers both surfaces.Merge order and CI
Heart's PR must land first; the
@mainaction reference cannot resolve until then, sowiki-currencywill fail here regardless of its own state.Separately:
wiki-currencyis already red on this repo'smain, independently of any PR — the API audit baseline has rotted on a clock. That is tracked as its own task (PyAutoMind draft/bug/autocti/wiki_currency_baseline_drift.md) and is not caused by this branch.Verification
wiki-currency.ymlparses as YAML; the skill is 153 lines, within the 200-line mandatory-load budget (check_skill_line_counts.sh: all 45 skills within limit). The end-to-end proof of the recipe is in PyAutoLabs/PyAutoHeart#171.Generated by Claude Code