Files
mcpctl/.taskmaster/tasks/task_125.md

26 lines
987 B
Markdown
Raw Normal View History

# Task ID: 125
**Title:** Epic zod validation schemas
**Status:** pending
**Dependencies:** 117
**Priority:** medium
**Description:** Create Epic validation schemas in src/mcpd/src/validation/ for request/response validation
**Details:**
Create src/mcpd/src/validation/epic.schema.ts:
1. DoneCriterionSchema: z.object({ id: z.string(), text: z.string(), kind: z.enum(['outcome', 'quality']), met: z.boolean() })
2. AcceptedTradeoffSchema: z.object({ what: z.string(), why: z.string(), who: z.string(), deScopedBy: z.string().optional(), at: z.string() })
3. CreateEpicSchema: name, content, doneCriteria (array), projectId or project (name), description optional
4. UpdateEpicSchema: partial of create fields plus status
5. EpicResponseSchema for API responses
6. Follow prompt.schema.ts patterns
**Test Strategy:**
Unit tests: validate CreateEpicSchema accepts valid input, rejects missing required fields, validates doneCriteria array structure, validates status enum values.