# stemwijzer Mind Model - Manifest # Generated: 2026-04-12 # Phase: 2 - Assembly from Phase 1 Analysis name: stemwijzer version: 2 description: Dutch political voting compass (Stemwijzer) - Mind Model constraints categories: # Core documentation - path: system.md description: System overview and architecture summary group: docs - path: stack/stack.md description: Technology stack with versions and purposes group: stack - path: domain/domain-glossary.md description: Domain entities, terms, relationships, and CRITICAL INVARIANTS group: domain # Design patterns - path: patterns/patterns.yaml description: Code patterns (Singleton, Repository, Pipeline, etc.) group: patterns - path: patterns/streamlit.yaml description: Streamlit-specific patterns (session state, cache) group: patterns - path: patterns/api.yaml description: API client patterns with retry and pagination group: patterns - path: patterns/database.yaml description: DuckDB patterns and connection management group: patterns - path: patterns/python.yaml description: Python-specific patterns (dataclass, typing) group: patterns - path: patterns/duckdb-access.md description: DuckDB connection patterns and best practices group: patterns - path: patterns/embeddings-similarity.md description: Embeddings and similarity computation patterns group: patterns - path: patterns/error-handling.md description: Error handling and exception patterns group: patterns - path: patterns/module-singletons.md description: Module-level singleton patterns group: patterns - path: patterns/requests-http.md description: HTTP client patterns with retry group: patterns - path: patterns/validation.md description: Input validation patterns group: patterns # Coding constraints - path: constraints/error-handling.md description: Error handling patterns with safe fallbacks group: constraints - path: constraints/logging.md description: Logging conventions group: constraints - path: constraints/naming.yaml description: File, class, function naming rules group: constraints - path: constraints/imports.yaml description: Import organization and module structure group: constraints - path: constraints/types.yaml description: Type hint conventions group: constraints - path: constraints/testing.yaml description: Testing conventions group: constraints # Anti-patterns - path: anti-patterns/anti-patterns.md description: Known anti-patterns with evidence and fixes group: anti-patterns # Dependencies - path: dependencies/dependencies.md description: Library usage and singleton instances group: dependencies # Code examples - path: examples/database-example.py description: MotionDatabase usage examples group: examples - path: examples/api-client-example.py description: TweedeKamerAPI usage examples group: examples - path: examples/pipeline-example.py description: Pipeline orchestration examples group: examples - path: examples/streamlit-page-example.py description: Streamlit page patterns group: examples - path: examples/pattern-examples.md description: Consolidated pattern examples group: examples # Phase 1 findings summary: # - Tech: Python 3.13+, Streamlit, DuckDB, scipy/sklearn/umap, OpenRouter (QWEN) # - 10 patterns discovered: Module singletons, Repository, Service layer, Pipeline # - 8 anti-patterns: print() instead of logging, _DummySt global, bare except # - 6 code clusters: Database, Streamlit UI, API, Analysis/ML, Config, Singletons # - 3 groups: stdlib, 3rd party, local imports