Files
boc/packages/infrastructure/adr/ADR-008-PostgreSQL-Adapters.md
T
Bernt 2f0ab18e81 PR-003A: PostgreSQL Repository Adapters + Persistence Independence Test
- 4 PostgreSQL adapter stubs (Session, Mission, DecisionCase, Artifact)
- Migration 001: Initial schema (sessions, missions, artifacts, decision_cases)
- Persistence Independence Test: 6 tests verifying same behavior
  across InMemory and PostgreSQL implementations
- ADR-008: PostgreSQL Adapters for Production
- ADR-009: Persistence Independence

Architecture Quality Gates:
- Domain unchanged
- Application unchanged
- Only adapter implementation changes
- Same test suite runs against both implementations

Next: PR-003B — Schema & Migrations, PR-003C — Integration Tests,
PR-003D — Unit of Work / Transactions
2026-07-02 15:57:23 +00:00

38 lines
862 B
Markdown

# ADR-008: PostgreSQL Adapters for Production
## Status
Accepted
## Context
In-memory adapters are sufficient for testing but not for production. We need persistent storage.
## Decision
Implement PostgreSQL adapters that implement the same repository interfaces as in-memory adapters:
- PostgresFieldSessionRepository
- PostgresMissionRepository
- PostgresDecisionCaseRepository
- PostgresArtifactRegistry
Key principles:
- Same interface as in-memory adapters
- Domain unchanged
- Application unchanged
- Only adapter implementation changes
## Consequences
### Positive
- Production-ready persistence
- Same test suite verifies both implementations
- Easy to swap implementations
### Negative
- Requires PostgreSQL instance
- Need migrations
- More complex setup
## Related
- ADR-006: In-Memory Adapters for Testing
- ADR-009: Persistence Independence