Compile the contract set in your head — simulate how the real application would run from the specs, and disprove (or confirm) it works before any source .py is written.
Author test stub files (.pyi) whose signatures express the domain, relationships, and compositions, as the first contract surface.
Funnel level 3 — identify building-block names and rough boundaries only, and run gap analysis.
Funnel level 1 — establish the big picture with seven broad questions, applying CIT, Laddering, and CI Perspective throughout.
Squash-merge the feature commits into dev, regenerate docstrings, and verify the whole suite plus whole-suite stubtest are clean.
Publish the delivered batch as release notes, a PR to main, or a tagged release.
Close the pipeline cycle: regenerate the living spec from current tests, summarize the carry-over cache files, regenerate source docstrings then strip all .py so the next cycle starts compact.
Pull the next source contract to build from the pending backlog, respecting outside-in dependency order.