1.4 KiB
1.4 KiB
Module Boundaries
Dependency rule
api/web -> application -> domain
worker -> application -> domain
infrastructure -> application ports + domain
domain importeert geen FastAPI, SQLAlchemy, Qdrant, Docling of provider-SDK. application definieert protocols/ports en use cases. infrastructure implementeert deze ports.
Modules
| Module | Verantwoordelijkheid | Mag niet |
|---|---|---|
domain |
Entiteiten, value objects, policies, state machines | I/O of frameworks gebruiken |
application |
Use cases, transacties, ports, authorization decisions | HTTP- of opslagdetails kennen |
infrastructure |
PostgreSQL, Qdrant, blobs, providers, connectors | Businessbeleid bepalen |
ingestion |
Pipelineactiviteiten en parsers | Versies rechtstreeks publiceren zonder gate |
retrieval |
Query, fusion, rerank, context, answerability | Grants vertrouwen uit requestinput |
generation |
Modelrouting en grounded output | Direct acties uitvoeren |
evaluation |
Datasets en metrics | Productiedata ongemaskeerd exporteren |
api |
HTTP-validatie en problem responses | Domeinlogica in routes stoppen |
web |
Admin en Query Lab | Rechtstreeks databasequeries uitvoeren |
platform |
Config, logging, telemetry, wiring | Domeinbeslissingen bevatten |
Import enforcement
Architectuurtests inspecteren imports. Circular dependencies en verboden imports laten CI falen.