From sentry-skills
Removes assigned mypy exclusion modules from pyproject.toml in batches, fixes Python typing issues, runs mypy/pytest/pre-commit validations, outputs structured summary. For typing debt reduction.
npx claudepluginhub joshuarweaver/cascade-code-devops-misc-1 --plugin getsentry-skillsThis skill uses the workspace's default tool permissions.
Execute one assigned typing batch safely and predictably:
Generates design tokens/docs from CSS/Tailwind/styled-components codebases, audits visual consistency across 10 dimensions, detects AI slop in UI.
Records polished WebM UI demo videos of web apps using Playwright with cursor overlay, natural pacing, and three-phase scripting. Activates for demo, walkthrough, screen recording, or tutorial requests.
Delivers idiomatic Kotlin patterns for null safety, immutability, sealed classes, coroutines, Flows, extensions, DSL builders, and Gradle DSL. Use when writing, reviewing, refactoring, or designing Kotlin code.
Execute one assigned typing batch safely and predictably:
Before starting, confirm these inputs exist in the task prompt:
If any are missing, ask for them before editing.
pyproject.toml.# type: ignore; if unavoidable, use narrow ignore[code] with a short reason.Apply exclusion change
pyproject.toml.Run mypy on assigned scope
isinstance narrowing, accurate return types, typed class attrs, relation-safe model access).Run tests for touched area
Run pre-commit on changed files
pre-commit run --files <changed files>.Final verification
Any.obj.related) when stubs do not expose raw *_id attributes.Return this exact structure at the end of each batch:
## Batch Summary
- Branch/worktree: `<name>`
- Ownership/domain: `<team-or-domain>`
### Modules Removed From Exclusion
- `<module.path.one>`
- `<module.path.two>`
### Files Changed
- `<path>`
- `<path>`
### Key Typing Fixes
- `<short rationale + fix>`
- `<short rationale + fix>`
### Validation
- `mypy`: `<pass/fail + scope>`
- `pre-commit --files`: `<pass/fail>`
- `pytest`: `<pass/fail + scope>`
### Notes
- Remaining blockers: `<none or details>`
- Any new ignore entries: `<none or file + ignore code + reason>`
Stop and report instead of widening scope when:
pyproject.toml cannot be resolved safely,