feat(persistence): initialize SQLite database module

- Add domain types: RelayId newtype and RepositoryError enum
- Implement SqliteRelayLabelRepository with in-memory test support
- Create relay_labels migration with SQLx compile-time verification
- Add comprehensive integration test suite (266 lines)

Ref: T006 (specs/001-modbus-relay-control)
This commit is contained in:
2026-01-01 17:35:58 +01:00
parent 3d14c14e1a
commit 69e212297e
12 changed files with 389 additions and 1 deletions

View File

@@ -41,7 +41,7 @@
- **Test**: Schema file syntax is valid SQL
- **Complexity**: Low | **Uncertainty**: Low
- [ ] **T006** [P] [Setup] [TDD] Initialize SQLite database module
- [x] **T006** [P] [Setup] [TDD] Initialize SQLite database module
- Create infrastructure/persistence/mod.rs
- Create infrastructure/persistence/sqlite_repository.rs with SqliteRelayLabelRepository struct
- Implement SqliteRelayLabelRepository::new(path) using SqlitePool