# Constitution: SDD-Native Python Project **Philosophy**: Intent is the source of truth. Specifications generate code. ## Article I: Intent over Implementation The specification is the authoritative source of truth. Implementation details MUST NOT override intended behaviors defined in the spec. ## Article II: Test-First Imperative This is NON-NEGOTIABLE: All implementation MUST follow TDD. No implementation code before: 1. Unit tests written. 2. Tests validated and approved. 3. Tests confirmed to FAIL (Red phase). ## Article III: Pythonic Rigor - Use Python 3.12+ features. - Strict typing with `mypy`. - Formatting with `ruff`. - Dependency management via `uv`. ## Article IV: Simplicity & Anti-Abstraction Prefer clear, readable code over complex abstractions. Do not introduce generic patterns unless explicitly requested in the spec. ## Article V: Library-First Design Develop core logic as modular libraries. CLI or GUI interfaces are consumers of these libraries. ## Article VI: Integration-First Features are not complete until they pass integration scenarios defined in the `quickstart.md`. ## Article VII: Atomic Baby Steps™ Every change must be the smallest meaningful unit of progress. Verify EACH step before proceeding.