Difficulty
Medium
Type
Architecture / Persistence
Background
Core services need a persistence boundary, but the early V2 implementation should not be blocked by choosing or configuring a production database.
Problem
Business logic cannot be implemented cleanly if services either contain hard-coded mock data or depend directly on a database client.
Expected Outcome
Core has repository interfaces plus deterministic in-memory implementations suitable for development and service-level testing.
Suggested Implementation
- Define repository contracts for Guilds, Passes, Members, and Activity where required.
- Keep repository contracts expressed in Core domain types.
- Implement in-memory adapters for development and tests.
- Support basic create/get/list/update behaviour.
- Ensure adapters can later be replaced by production persistence without changing service consumers.
Acceptance Criteria
Likely Affected Files/Directories
src/repositories/
src/adapters/memory/
src/services/
test/
Difficulty
Medium
Type
Architecture / Persistence
Background
Core services need a persistence boundary, but the early V2 implementation should not be blocked by choosing or configuring a production database.
Problem
Business logic cannot be implemented cleanly if services either contain hard-coded mock data or depend directly on a database client.
Expected Outcome
Core has repository interfaces plus deterministic in-memory implementations suitable for development and service-level testing.
Suggested Implementation
Acceptance Criteria
Likely Affected Files/Directories
src/repositories/src/adapters/memory/src/services/test/