Learn-skills.dev python-workflow-delivery
Use when preparing branches, commits, or PRs for Python changes — scoping work, running validation gates, and ensuring merge readiness. Also use when debugging CI gate failures, resolving lockfile conflicts, or uncertain what checks to run before opening a PR.
install
source · Clone the upstream repo
git clone https://github.com/NeverSight/learn-skills.dev
Claude Code · Install into ~/.claude/skills/
T=$(mktemp -d) && git clone --depth=1 https://github.com/NeverSight/learn-skills.dev "$T" && mkdir -p ~/.claude/skills && cp -r "$T/data/skills-md/ahgraber/skills/python-workflow-delivery" ~/.claude/skills/neversight-learn-skills-dev-python-workflow-delivery && rm -rf "$T"
manifest:
data/skills-md/ahgraber/skills/python-workflow-delivery/SKILL.mdsource content
Python Workflow and Delivery
Overview
Branch-to-PR execution discipline for Python work: validate, scope, and ship with confidence. Apply these defaults before opening or updating a PR.
These are preferred defaults for common cases, not universal rules. When deviating, call out tradeoffs and compensating controls (tests, observability, migration, rollback).
When to Use
- Preparing a branch or PR for Python changes.
- CI gate failures on lint, format, or test steps.
- Lockfile or dependency conflicts during
.uv sync - Commits that bundle too many concerns or are hard to review.
- Uncertainty about which validation steps to run before merge.
When NOT to use:
- Pure design or architecture decisions — see
.python-design-modularity - Test strategy or fixture design — see
.python-testing - Runtime operations or deployment — see
.python-runtime-operations
Quick Reference
- Use the project-defined Python version first.
- Use
for environment and dependency workflow.uv - Run checks with
.uv run ... - Keep scope small, reversible, and reviewable.
Validation Gate
Run as required by project scope:
uv syncuv sync --lockeduv lock --checkuv run ruff check .uv run ruff format --check .uv run pytest
Change-specific checks:
- Dependency/lockfile changes:
uv run pytest scripts/test_pypi_security_audit.py -v - Async lifecycle changes: run
diagnostics on representative async integration tests.pyleak
Common Mistakes
- Skipping
— merging without verifying the lockfile matchesuv lock --check
causes CI failures downstream.pyproject.toml - Bundling unrelated changes in one commit — mixing refactors, features, and dependency bumps makes review slow and reverts dangerous.
- Running
but notruff check
— passing lint does not guarantee formatting; both gates matter.ruff format --check - Forgetting change-specific checks — dependency updates need the security audit; async changes need leak diagnostics.
Generic
alone is not enough.pytest
Scope Note
- Treat these recommendations as preferred defaults for common cases, not universal rules.
- If a default conflicts with project constraints or worsens the outcome, suggest a better-fit alternative and explain why it is better for this case.
- When deviating, call out tradeoffs and compensating controls (tests, observability, migration, rollback).
Invocation Notice
- Inform the user when this skill is being invoked by name:
.python-design-modularity
References
references/workflow.mdreferences/branch-commit-scope.md