Theme
ADR-0006: Separate Driver, Instance, Strategy, and Capability
- Status: Accepted
- Date: 2026-09-10
Context
Two accounts of one provider must not share mutable state accidentally, and one provider can expose strategies with different guarantees.
Decision
Provider identity is layered: Driver family → configured Agent Instance → Adapter Strategy → semantic Capability set.
Consequences
Product behavior is capability-gated. Never enable behavior by string-checking provider names.
Change rule
If implementation evidence proves this wrong, update the canonical architecture/product document first and then supersede/amend this ADR. The ADR is not allowed to keep current docs stale.