You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
108 lines
3.7 KiB
108 lines
3.7 KiB
# 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
|
|
|