Review findings:
- UV_FIND_LINKS / extra-index env vars or a uv.toml could redirect the
install to a local build and false-pass the gate; now --no-config on
every uv call and refuse to run when an index-redirecting var is set
- an sdist fallback would build with backends fetched from TestPyPI;
install the package with --only-binary :all:
- show the package install (no -q) so the log records what was installed
- changelog: note the removed [dev] extra
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
Review findings on PR #13:
- release-branch-semver gives 0.1.0.devN without tags, so the 0.0 guard
never fired; check_version() now requires >= 0.2 (unit-tested)
- the APPSKELLINGTON_DEBUG child import could resolve the source tree from
the cwd and false-pass; it now reports its location and must match
- test_ci_workflow: no continue-on-error, matrix python drives container
and UV_PYTHON, WIP gate compared whole (mutation-tested)
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
A bare `uv run --python 3.8` rebuilds the project .venv on 3.8, after
which the pre-commit hook (pre-commit-hooks needs >=3.9) fails on commit.
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
- dev tools move from a published extra to [dependency-groups]
- uv.lock resolves one lock across CPython 3.8-3.14
- pytest config moves into pyproject (testpaths)
- explicit packages list; license classifier corrected to MIT-0
- drop obsolete setup.cfg and tests/pytest.ini
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>