Adopt the scaffolded CI shape: pre-commit for lint, and run the 81 tests - #8
Merged
Merged
Conversation
Mechanical, produced by ruff 0.16.2 — the version pinned in the ruff-pre-commit hook adopted in the next commit. Separated so the CI change beside it stays readable.
ruff format reflowed this conditional so the call moved onto its own line and the trailing `# noqa: S323` landed on the next one, where it suppresses nothing — ruff check passed before the sweep and failed after it. Rewritten as a plain if-statement, matching the four other _create_unverified_context() call sites in this file, which all survived reformatting because that shape is format-stable.
Aligns with claude-shared's ci-python.yml: uv, pre-commit as the only lint step, and pytest — 81 tests that have never run in CI. CI installs retina-custody from its v0.1.0 tag first. The dependency stays generic in pyproject.toml deliberately: Tower-Finder installs these libraries from local submodule paths, and a direct URL there collides with them.
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 86cb43xya. Last of the five libraries; Tower-Finder follows separately.
The headline: this repo's tests have never run in CI
lint.ymlran ruff and the dead-code gate, with nopyteststep. 81 tests have been sitting unexecuted. They all pass.Worse, they couldn't have run: this repo declares
retina-custody>=0.1.0, a sibling library on no package index, sopip install -e '.[dev]'fails outright with "requirements are unsatisfiable". That was latent — the workflow never installed the package at all, so nothing ever tripped over it.CI now installs the sibling from a pinned tag first:
retina-custody v0.1.0was tagged as part of this work — it had no releases before.The URL deliberately does not go in
pyproject.toml. The dependency line stays the genericretina-custody>=0.1.0, because Tower-Finder installs all five libraries from local submodule paths in one command and a direct URL collides:Keeping the spec generic lets each consumer supply the source it needs. Verified by reproducing Tower-Finder's local-path install against this branch.
One non-formatting commit, and why
ruff formatreflowed this conditional so the call moved onto its own line and the trailing# noqa: S323landed on the next line, where it suppresses nothing.ruff checkpassed before the sweep and failed after it.Rewritten as a plain
ifstatement, matching the four other_create_unverified_context()call sites in the same file — all of which survived reformatting untouched, because that shape is format-stable. Semantics are unchanged.Committed separately from the sweep so it is visible rather than buried in 14 files of formatting.
Also
ruff and ruff-format move into pre-commit, so
pre-commit run --all-filesreproduces CI's lint exactly.vulture==2.14is on the install line because thedead-codehook islanguage: scriptand needs it onPATH. Thepyproject.tomlruff comment, which claimed a canonical copy inopsthat never existed, is now true and enforced by theruff-confighook.🤖 Generated with Claude Code
https://claude.ai/code/session_013ZcazeseXVpu8XrYA2tE1V