## 1. Domain Contracts - [x] 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. - [x] 1.2 Implement named DTO request/response contracts with AI provider redaction helpers for core resources. - [x] 1.3 Implement database model contracts with JSON/database tags, table-name mappings, and domain conversion helpers for core resources. ## 2. Validation And Storage - [x] 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. - [x] 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 - [x] 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. - [x] 3.2 Enforce service-level cross-resource invariants for server creation, AI provider redaction, disabled resources, run capability compatibility, and duplicate job idempotency. - [x] 3.3 Update platform route/resource contract documentation to reference the implemented DTO/domain contracts without adding full HTTP handlers. ## 4. Verification - [x] 4.1 Run platform unit tests with `go test ./...` from `platform/` and record evidence. - [x] 4.2 Run `scripts/check-structure.sh` and record evidence. - [x] 4.3 Run `openspec validate implement-platform-core-domain --strict` and 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 ./...` from `platform/`: passed. - `scripts/check-structure.sh`: passed. - `openspec validate implement-platform-core-domain --strict`: passed.