2.0 KiB
2.0 KiB
1. Domain Contracts
- 1.1 Implement typed domain resources, enum constants, filters, and copy helpers for users, AI providers, game plugins, server instances, run endpoints, jobs, artifacts, log streams, and audit events.
- 1.2 Implement named DTO request/response contracts with AI provider redaction helpers for core resources.
- 1.3 Implement database model contracts with JSON/database tags, table-name mappings, and domain conversion helpers for core resources.
2. Validation And Storage
- 2.1 Implement validator rules and tests for IDs, enum values, AI redaction constraints, plugin/server/run compatibility, job idempotency, artifacts, logs, and audit summaries.
- 2.2 Implement repository interfaces and an in-memory repository with duplicate detection, copy-on-read/write behavior, list/get/update methods, and idempotent job lookup.
3. Services And Contracts
- 3.1 Implement service interfaces and core service methods for create/list/get workflows across users, AI providers, game plugins, run endpoints, server instances, jobs, artifacts, log streams, and audit events.
- 3.2 Enforce service-level cross-resource invariants for server creation, AI provider redaction, disabled resources, run capability compatibility, and duplicate job idempotency.
- 3.3 Update platform route/resource contract documentation to reference the implemented DTO/domain contracts without adding full HTTP handlers.
4. Verification
- 4.1 Run platform unit tests with
go test ./...fromplatform/and record evidence. - 4.2 Run
scripts/check-structure.shand record evidence. - 4.3 Run
openspec validate implement-platform-core-domain --strictand record evidence.
Evidence
go test ./domain: passed.go test ./dto: passed.go test ./model: passed.go test ./validator: passed.go test ./repo: passed.go test ./service: passed.go test ./...fromplatform/: passed.scripts/check-structure.sh: passed.openspec validate implement-platform-core-domain --strict: passed.