Repository navigation
State the Build Profile's CI Type Check as the Validator Runs It - #2712
Conversation
The hub validator runs one type checker per Python directory, mypy wherever a config declares both, and passes the checker no path where the config sits in the project directory. The python-codestyle skill said CI may run pyright, mypy, or both, and gave `uv run mypy src` as the command CI runs, so a mypy config with no `files` setting passed locally and failed in CI. State the one-checker rule with where a second checker goes, and give `uv run mypy` with the `files` setting it depends on. Closes on promotion: #2025 Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
The local review pass found the summary sentences read "the second" as mypy, the `files`-only claim overstated what gives mypy a target, and the bare `uv run mypy` broke the case where a declared subdirectory uses the repository root's config, which CI runs from the root with the directory as its path. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
The second local review pass found "runs it" read as mypy, "one checker in each Python directory" missed the undeclared root that runs none, and the CI-gate bullet still said every command runs from the project directory although the root-config case runs from the root. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
|
Warning Review limit reachedYou've used all free OSS reviews for now. Wait for the free limit to reset to keep reviewing this public repository. Next included review available in 9 minutes. View limit details
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
There was a problem hiding this comment.
🟢 Approval recommended
No unresolved review findings remain.
0 open findings
What changed in this PR
Updates Python codestyle guidance to match CI type-check behavior and regenerates distributed skill copies.
Changes:
- Documents checker selection and pyright hooks.
- Corrects mypy commands and root-config handling.
- Updates generated skill copies and source digest.
| File | Summary |
|---|---|
.github/skills/python-codestyle/SKILL.md |
Updated guidance |
.github/skills/python-codestyle/references/profiles.md |
Updated profile reference |
.claude-plugin/fleet-skills/skills/python-codestyle/SKILL.md |
Regenerated skill copy |
.claude-plugin/fleet-skills/skills/python-codestyle/references/profiles.md |
Regenerated reference copy |
.claude-plugin/fleet-skills/.source-digests/python-codestyle |
Updated source digest |
.agents/skills/python-codestyle/SKILL.md |
Updated canonical guidance |
.agents/skills/python-codestyle/references/profiles.md |
Updated profile reference |
🧠 Review effort: Lite
💡 Add a code-review agent skill or configure MCP servers for context-aware, tailored reviews. Learn more in the docs.
Codecov Report✅ All modified and coverable lines are covered by tests. Additional details and impacted files@@ Coverage Diff @@
## develop #2712 +/- ##
==========================================
Coverage ? 59.67%
==========================================
Files ? 16
Lines ? 8334
Branches ? 0
==========================================
Hits ? 4973
Misses ? 3361
Partials ? 0
Flags with carried forward coverage won't be shown. Click here to find out more. ☔ View full report in Codecov by Harness. 🚀 New features to boost your workflow:
|
|
@coderabbitai review |
|
… Corrections to Main (#2740) ## Summary Promotes 20 changes from `develop` to `main`: - #2737: Flag a Lone Semicolon After an Explanatory Colon in the Prose Gate - #2734: Share pr_review.py wait's Liveness Readings and Open the Held Poll on Its Snapshot - #2732: Share One Bounded Backoff Loop Between pr_review.py wait's Two Polls - #2729: Document pr_review.py wait's Immediate 44 and check_nodes's Node Keys - #2727: Narrow pr_review.py wait's Exit 44 to Required Checks - #2722: Poll an Attested Head's Checks in pr_review.py wait - #2720: Name the Command That Enumerates Open Feature Pull Requests in backlog-burndown - #2718: Point the Skills Refresh Cadence at host-setup.md - #2716: Fall Back to os.defpath for PATH in Two Test Harnesses - #2714: State the Pip Form's Root-Config Type-Check Command in python-codestyle - #2712: State the Build Profile's CI Type Check as the Validator Runs It - #2709: Bring the Fleet-Map workflow-ci-contract Entry and G9 Gap Up to the Skill Description - #2707: Bring the Line-Endings Reference and a Test Docstring to the Corrected Wording - #2705: Drop the Stale Utilities driftNote From the Registry - #2703: Remove the Inert SC2016 Directives in configure.sh and Correct the shell-codestyle Claim - #2701: Report Whether the Fleet Skills Plugin Is Installed and Enabled in the Live Channel - #2699: Align the Audit Report Template Dimensions With AUDIT.md Section 4 - #2697: Harden the Source-Pinning Assertions in test_pr_review.py - #2695: Name the Off-Grammar --branch Outcome in AUDIT.md - #2693: Count Every Unresolved Review Thread in pr_review.py Closes #1396 Closes #2731 Closes #2723 Closes #2725 Closes #2724 Closes #2685 Closes #1308 Closes #2191 Closes #1862 Closes #2711 Closes #2025 Closes #1243 Closes #1237 Closes #1115 Closes #1156 Closes #1757 Closes #1593 Closes #1732 Closes #1509 Closes #1404 🤖 Generated with [Claude Code](https://claude.com/claude-code)
Summary
python-codestyledescribed the build profile's CI type check in ways the hub validator's "Type check Python step" does not match. This states what the validator actually runs..github/actions/validate/action.ymlhook, which starts from a bare checkout. Mirrored inreferences/profiles.md.uv run mypy srcas the command CI runs. CI passes the checker no path where the config sits in the project directory, so a mypy config with no target setting passed locally and failed in CI. The skill now givesuv run mypy, says the config's own target settings decide what is checked, and gives the root-config fallback CI uses for a declared subdirectory with no config of its own,uv run --project <dir> <checker> <dir>from the root.scripts/build_dist.py.Verification
uvx mypy@latestwith[tool.mypy] strict = trueand no target exits 2 with "Missing target module, package, files, or command.", and withfiles = ["src"]it checkssrc. Constructed probe, run in scratch.scripts/build_dist.py --check,scripts/prose_lint.py --diff,scripts/repo_gate.py --check eol,spec/validate.py, andscripts/docker_lint.pyall clean.local-strict-reviewpasses, the last raising no finding. A pre-existing gap the passes found in the pip-form paragraph is filed as State the Pip Form's Root-Config Type-Check Command in python-codestyle #2711.Closes on promotion: #2025
🤖 Generated with Claude Code