Skip to content

ci+docs: consume Heart's canonical arcticpy install; fix the documented recipe - #22

Merged
Jammy2211 merged 2 commits into
mainfrom
feature/arcticpy-install-standardisation
Aug 24, 2026
Merged

ci+docs: consume Heart's canonical arcticpy install; fix the documented recipe#22
Jammy2211 merged 2 commits into
mainfrom
feature/arcticpy-install-standardisation

Conversation

@Jammy2211

Copy link
Copy Markdown
Contributor

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 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 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:

  1. setuptools/wheel missing. --no-build-isolation doesn't 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.
  2. 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.
  3. 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 doesn't misdiagnose that AttributeError as 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.md description line synced.

Note on the symlinks

.claude/skills/*.md are symlinks into skills/ (git mode 120000), not copies — verified on this branch. One edit covers both surfaces.

Merge order and CI

Heart's PR must land first; the @main action reference cannot resolve until then, so wiki-currency will fail here regardless of its own state.

Separately: wiki-currency is already red on this repo's main, 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.yml parses 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

…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
@Jammy2211
Jammy2211 merged commit 425d930 into main Aug 24, 2026
2 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants