Services Overview
Services provide infrastructure capabilities behind stable ports/adapters.
Related pages:
Shared pattern
Each service follows the same architecture:
- Port interface: abstract contract.
- Adapters: concrete backend implementation.
- Service: domain facade used by modules and applications.
- Config binding: choose adapter in
config.yaml.
Runtime loading strategy
Services are lazy-selected by module dependency requirements.
- If no module requires a service, it is not loaded.
- Some service dependencies are auto-included (example: triple store implies bus for event publishing).
Configuration keys
services.object_storage.object_storage_adapterservices.triple_store.triple_store_adapterservices.vector_store.vector_store_adapterservices.secret.secret_adaptersservices.bus.bus_adapterservices.kv.kv_adapter