What problem does it solve? Python codebases accumulate stringly-typed values, raw dict parameters, and redundant Model-to-dict-to-Model conversion chains that defeat type checking and hide bugs. This Skill drives an iterative, verified refactoring loop that eliminates those violations until the data flow is type-safe end to end. ## Core Features & Use Cases - Strict architecture rules: Pydantic models parsed at every external boundary, typed models (never raw dicts) internally, StrEnum/Enum for all fixed categorical values, and no compatibility shims. - Iterative violation loop: Parallel subagent analysis and refactoring tracked in a .data_arch_violations.json state file, repeating until zero violations remain, then running the project's test and type-check gates. - Documented Pydantic and Enum traps: Covers the str, Enum formatting difference between Python 3.10 and 3.11+, bare BaseModel fields serializing as {}, discriminated unions tagged with Literal[Enum.MEMBER], and defining types instead of suppressing pyright/mypy diagnostics. - Use Case: Given a service where handlers accept dict parameters and compare status == "active", the Skill converts inputs to Pydantic models at the boundary, replaces literals with StrEnum members, removes conversion chains, and loops until tests and the type checker pass. ## Quick Start Ask the AI to refactor this Python module to enforce strict data architecture with Pydantic models at the boundaries and Enums for all status values.