Python typing exclusion worker: remove assigned mypy exclusion modules in small scoped batches, fix typing issues, run validation, and produce a structured completion summary. Use when running parallel typing-debt workers or when asked to remove modules from pyproject mypy exclusion overrides.
Start a fresh conversation. Replace the highlighted placeholders.
Use typing-exclusion-worker to In [worktree and branch], remove [assigned modules] from the mypy exclusion overrides within [ownership boundary], fix resulting typing issues, and complete the required scoped validation.
Required inputs
[worktree and branch]
[assigned modules]
[ownership boundary]
User-approved starter prompt based on a pinned source version; check current skill requirements before running. Task evidence ↗
SKILL.md
name: typing-exclusion-workerdescription: "Python typing exclusion worker: remove assigned mypy exclusion modules in small scoped batches, fix typing issues, run validation, and produce a structured completion summary. Use when running parallel typing-debt workers or when asked to remove modules from pyproject mypy exclusion overrides."
Typing Exclusion Worker
Purpose
Execute one assigned typing batch safely and predictably:
remove only assigned modules from mypy exclusions,
fix surfaced typing issues in scope,
run required checks,
return a consistent summary for the manager/orchestrator.
Inputs Required
Before starting, confirm these inputs exist in the task prompt:
worktree/branch name,
exact module list to remove from exclusion,
ownership/domain boundary,
expected validation commands (if customized).
If any are missing, ask for them before editing.
Scope Rules (Hard Constraints)
Only remove assigned module entries from the mypy exclusion list in pyproject.toml.
Keep code changes in assigned scope unless a direct dependency is required to pass typing/tests.
Do not expand to cross-team modules unless explicitly approved by the manager.
Avoid blanket # type: ignore; if unavoidable, use narrow ignore[code] with a short reason.
Execution Workflow
Apply exclusion change
Remove assigned modules from the exclusion override in pyproject.toml.
Run mypy on assigned scope
Prefer targeted paths first for fast feedback.
Fix errors using explicit typing patterns (isinstance narrowing, accurate return types, typed class attrs, relation-safe model access).
Run tests for touched area
Execute targeted pytest for modified modules/tests.
Fix regressions before continuing.
Run pre-commit on changed files
Run pre-commit run --files <changed files>.
If hooks auto-fix files, rerun until clean.
Final verification
Re-run targeted mypy and tests after final edits.
Ensure no unrelated files were changed.
Python Typing Best Practices
Prefer precise types over Any.
Use type narrowing on unions before attribute access.
Keep method overrides signature-compatible with base classes.
Annotate class attributes in tests/helpers when inference is weak.
Use relation objects (obj.related) when stubs do not expose raw *_id attributes.
Required Output Template
Return this exact structure at the end of each batch: