@zeliper/zscode-mcp-server 1.0.1 → 1.0.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (59) hide show
  1. package/dist/errors/index.d.ts +28 -0
  2. package/dist/errors/index.d.ts.map +1 -1
  3. package/dist/errors/index.js +50 -0
  4. package/dist/errors/index.js.map +1 -1
  5. package/dist/state/manager.d.ts +74 -2
  6. package/dist/state/manager.d.ts.map +1 -1
  7. package/dist/state/manager.js +551 -138
  8. package/dist/state/manager.js.map +1 -1
  9. package/dist/state/manager.test.d.ts +2 -0
  10. package/dist/state/manager.test.d.ts.map +1 -0
  11. package/dist/state/manager.test.js +310 -0
  12. package/dist/state/manager.test.js.map +1 -0
  13. package/dist/state/schema.d.ts +443 -21
  14. package/dist/state/schema.d.ts.map +1 -1
  15. package/dist/state/schema.js +99 -1
  16. package/dist/state/schema.js.map +1 -1
  17. package/dist/state/schema.test.d.ts +2 -0
  18. package/dist/state/schema.test.d.ts.map +1 -0
  19. package/dist/state/schema.test.js +300 -0
  20. package/dist/state/schema.test.js.map +1 -0
  21. package/dist/state/types.d.ts +47 -1
  22. package/dist/state/types.d.ts.map +1 -1
  23. package/dist/state/types.js +3 -1
  24. package/dist/state/types.js.map +1 -1
  25. package/dist/tools/archive.d.ts.map +1 -1
  26. package/dist/tools/archive.js +57 -0
  27. package/dist/tools/archive.js.map +1 -1
  28. package/dist/tools/context.d.ts.map +1 -1
  29. package/dist/tools/context.js +14 -0
  30. package/dist/tools/context.js.map +1 -1
  31. package/dist/tools/files.d.ts +7 -0
  32. package/dist/tools/files.d.ts.map +1 -0
  33. package/dist/tools/files.js +131 -0
  34. package/dist/tools/files.js.map +1 -0
  35. package/dist/tools/index.d.ts.map +1 -1
  36. package/dist/tools/index.js +9 -0
  37. package/dist/tools/index.js.map +1 -1
  38. package/dist/tools/memory.d.ts +7 -0
  39. package/dist/tools/memory.d.ts.map +1 -0
  40. package/dist/tools/memory.js +243 -0
  41. package/dist/tools/memory.js.map +1 -0
  42. package/dist/tools/modify.d.ts.map +1 -1
  43. package/dist/tools/modify.js +43 -7
  44. package/dist/tools/modify.js.map +1 -1
  45. package/dist/tools/plan.d.ts.map +1 -1
  46. package/dist/tools/plan.js +77 -4
  47. package/dist/tools/plan.js.map +1 -1
  48. package/dist/tools/staging.d.ts.map +1 -1
  49. package/dist/tools/staging.js +104 -6
  50. package/dist/tools/staging.js.map +1 -1
  51. package/dist/tools/summary.d.ts +7 -0
  52. package/dist/tools/summary.d.ts.map +1 -0
  53. package/dist/tools/summary.js +127 -0
  54. package/dist/tools/summary.js.map +1 -0
  55. package/dist/utils/paths.d.ts +34 -0
  56. package/dist/utils/paths.d.ts.map +1 -1
  57. package/dist/utils/paths.js +94 -2
  58. package/dist/utils/paths.js.map +1 -1
  59. package/package.json +10 -3
@@ -1 +1 @@
1
- {"version":3,"file":"schema.d.ts","sourceRoot":"","sources":["../../src/state/schema.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAQxB,eAAO,MAAM,mBAAmB,wCAAkE,CAAC;AAEnG,eAAO,MAAM,YAAY,aAAsF,CAAC;AAChH,eAAO,MAAM,eAAe,aAA2F,CAAC;AACxH,eAAO,MAAM,YAAY,aAAsF,CAAC;AAGhH,eAAO,MAAM,gBAAgB,uEAAqE,CAAC;AACnG,eAAO,MAAM,kBAAkB,sCAAoC,CAAC;AACpE,eAAO,MAAM,mBAAmB,2EAAyE,CAAC;AAC1G,eAAO,MAAM,gBAAgB,sEAAoE,CAAC;AAClG,eAAO,MAAM,mBAAmB,uCAAqC,CAAC;AACtE,eAAO,MAAM,sBAAsB,8WAqBjC,CAAC;AAGH,eAAO,MAAM,gBAAgB;;;;;;;;;;;;;;;;;;;;;EAO3B,CAAC;AAGH,eAAO,MAAM,UAAU;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAiBrB,CAAC;AAGH,eAAO,MAAM,aAAa;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAaxB,CAAC;AAGH,eAAO,MAAM,UAAU;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAYrB,CAAC;AAGH,eAAO,MAAM,aAAa;;;;;;;;;;;;;;;;;;;;;EAOxB,CAAC;AAGH,eAAO,MAAM,kBAAkB;;;;;;;;;;;;;;;EAK7B,CAAC;AAGH,eAAO,MAAM,cAAc;;;;;;;;;;;;;;;;;;;;;;;;EAQzB,CAAC;AAGH,eAAO,MAAM,aAAa;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAOxB,CAAC;AAGH,eAAO,MAAM,WAAW;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAQtB,CAAC;AAGH,eAAO,MAAM,qBAAqB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAehC,CAAC;AAEH,eAAO,MAAM,uBAAuB;;;;;;;;;EAGlC,CAAC;AAEH,eAAO,MAAM,iBAAiB;;;;;;EAE5B,CAAC;AAEH,eAAO,MAAM,kBAAkB;;;;;;;;;EAG7B,CAAC;AAEH,eAAO,MAAM,iBAAiB;;;;;;;;;;;;EAI5B,CAAC;AAEH,eAAO,MAAM,yBAAyB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAKpC,CAAC;AAEH,eAAO,MAAM,2BAA2B;;;;;;;;;;;;EAItC,CAAC"}
1
+ {"version":3,"file":"schema.d.ts","sourceRoot":"","sources":["../../src/state/schema.ts"],"names":[],"mappings":"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"}
@@ -1,24 +1,33 @@
1
1
  import { z } from "zod";
2
+ // ============ Constants ============
3
+ export const STATE_VERSION = "2.0.0";
2
4
  // ============ ID Patterns ============
3
5
  const PlanIdPattern = /^plan-[a-z0-9]{8}$/;
4
6
  const StagingIdPattern = /^staging-[a-z0-9]{4}$/;
5
7
  const TaskIdPattern = /^task-[a-z0-9]{8}$/;
8
+ const MemoryIdPattern = /^mem-[a-z0-9]{8}$/;
6
9
  // ============ Basic Types ============
7
10
  export const ISODateStringSchema = z.string().datetime({ offset: true }).or(z.string().datetime());
8
11
  export const PlanIdSchema = z.string().regex(PlanIdPattern, "Invalid Plan ID format (expected: plan-xxxxxxxx)");
9
12
  export const StagingIdSchema = z.string().regex(StagingIdPattern, "Invalid Staging ID format (expected: staging-xxxx)");
10
13
  export const TaskIdSchema = z.string().regex(TaskIdPattern, "Invalid Task ID format (expected: task-xxxxxxxx)");
14
+ export const MemoryIdSchema = z.string().regex(MemoryIdPattern, "Invalid Memory ID format (expected: mem-xxxxxxxx)");
11
15
  // ============ Enums ============
12
16
  export const TaskStatusSchema = z.enum(["pending", "in_progress", "done", "blocked", "cancelled"]);
13
17
  export const TaskPrioritySchema = z.enum(["high", "medium", "low"]);
14
18
  export const StagingStatusSchema = z.enum(["pending", "in_progress", "completed", "failed", "cancelled"]);
15
19
  export const PlanStatusSchema = z.enum(["draft", "active", "completed", "archived", "cancelled"]);
16
20
  export const ExecutionTypeSchema = z.enum(["parallel", "sequential"]);
21
+ // Model selection for tasks (opus=complex, sonnet=balanced, haiku=fast)
22
+ export const ModelTypeSchema = z.enum(["opus", "sonnet", "haiku"]);
23
+ // Session budget for staging context management
24
+ export const SessionBudgetSchema = z.enum(["minimal", "standard", "extensive"]);
17
25
  export const HistoryEntryTypeSchema = z.enum([
18
26
  "project_initialized",
19
27
  "plan_created",
20
28
  "plan_updated",
21
29
  "plan_archived",
30
+ "plan_unarchived",
22
31
  "plan_cancelled",
23
32
  "staging_started",
24
33
  "staging_completed",
@@ -33,10 +42,33 @@ export const HistoryEntryTypeSchema = z.enum([
33
42
  "task_removed",
34
43
  "task_updated",
35
44
  "decision_added",
45
+ "memory_added",
46
+ "memory_updated",
47
+ "memory_removed",
36
48
  "session_started",
37
49
  "session_ended",
38
50
  ]);
51
+ // ============ Cross-Reference Schemas ============
52
+ // Cross-Staging Reference: Reference to another staging's artifacts
53
+ export const CrossStagingRefSchema = z.object({
54
+ stagingId: StagingIdSchema,
55
+ taskIds: z.array(TaskIdSchema).optional(), // If undefined, include all tasks from staging
56
+ });
57
+ // Cross-Task Reference: Reference to a task in another staging
58
+ export const CrossTaskRefSchema = z.object({
59
+ taskId: TaskIdSchema,
60
+ stagingId: StagingIdSchema,
61
+ });
39
62
  // ============ Task Output Schema ============
63
+ // Input schema for tools (completedAt is auto-generated)
64
+ export const TaskOutputInputSchema = z.object({
65
+ status: z.enum(["success", "failure", "partial"]),
66
+ summary: z.string(),
67
+ artifacts: z.array(z.string()).default([]),
68
+ data: z.record(z.unknown()).optional(),
69
+ error: z.string().optional(),
70
+ });
71
+ // Full schema with completedAt (for storage)
40
72
  export const TaskOutputSchema = z.object({
41
73
  status: z.enum(["success", "failure", "partial"]),
42
74
  summary: z.string(),
@@ -55,7 +87,13 @@ export const TaskSchema = z.object({
55
87
  priority: TaskPrioritySchema.default("medium"),
56
88
  status: TaskStatusSchema.default("pending"),
57
89
  execution_mode: ExecutionTypeSchema.default("parallel"),
90
+ // Model to use for this task (overrides staging default_model)
91
+ model: ModelTypeSchema.optional(),
58
92
  depends_on: z.array(TaskIdSchema).default([]),
93
+ // Cross-staging task references (for accessing outputs from other stagings)
94
+ cross_staging_refs: z.array(CrossTaskRefSchema).default([]),
95
+ // Memory tags for context-specific memory lookup on task start
96
+ memory_tags: z.array(z.string()).default([]),
59
97
  order: z.number().int().min(0).optional(),
60
98
  notes: z.string().optional(),
61
99
  output: TaskOutputSchema.optional(),
@@ -73,7 +111,17 @@ export const StagingSchema = z.object({
73
111
  order: z.number().int().min(0),
74
112
  execution_type: ExecutionTypeSchema.default("parallel"),
75
113
  status: StagingStatusSchema.default("pending"),
114
+ // Default model for tasks in this staging (tasks can override)
115
+ default_model: ModelTypeSchema.optional(),
116
+ // Session budget for context management
117
+ session_budget: SessionBudgetSchema.optional(),
118
+ // Recommended number of sessions (0.5, 1, 2, etc.)
119
+ recommended_sessions: z.number().min(0.5).max(10).optional(),
76
120
  tasks: z.array(TaskIdSchema).default([]),
121
+ // Cross-staging dependencies (for including artifacts from dependent stagings)
122
+ depends_on_stagings: z.array(CrossStagingRefSchema).default([]),
123
+ // Auto-include artifacts from dependent stagings on start
124
+ auto_include_artifacts: z.boolean().default(true),
77
125
  artifacts_path: z.string(),
78
126
  createdAt: ISODateStringSchema,
79
127
  startedAt: ISODateStringSchema.optional(),
@@ -119,6 +167,33 @@ export const DecisionSchema = z.object({
119
167
  relatedStagingId: StagingIdSchema.optional(),
120
168
  timestamp: ISODateStringSchema,
121
169
  });
170
+ // ============ Memory Schema ============
171
+ // Default categories (can be extended dynamically)
172
+ export const DEFAULT_MEMORY_CATEGORIES = [
173
+ "general", // Always applied
174
+ "planning", // During planning phase
175
+ "coding", // During coding phase
176
+ "review", // During review phase
177
+ // Event-based categories for automatic context injection
178
+ "staging-start", // Applied when staging starts
179
+ "task-start", // Applied when task starts (status -> in_progress)
180
+ "task-complete", // Applied when task completes (status -> done)
181
+ "staging-complete", // Applied when staging completes
182
+ "plan-complete", // Applied when plan completes
183
+ // Project-level summary category
184
+ "project-summary", // Auto-generated project summary (always applied with general)
185
+ ];
186
+ export const MemorySchema = z.object({
187
+ id: MemoryIdSchema,
188
+ category: z.string().min(1), // Dynamic category support
189
+ title: z.string().min(1, "Memory title is required"),
190
+ content: z.string().min(1, "Memory content is required"),
191
+ tags: z.array(z.string()).default([]),
192
+ priority: z.number().int().min(0).max(100).default(50), // Higher = applied first
193
+ enabled: z.boolean().default(true),
194
+ createdAt: ISODateStringSchema,
195
+ updatedAt: ISODateStringSchema,
196
+ });
122
197
  // ============ Context Schema ============
123
198
  export const ContextSchema = z.object({
124
199
  lastUpdated: ISODateStringSchema,
@@ -126,11 +201,12 @@ export const ContextSchema = z.object({
126
201
  currentPlanId: PlanIdSchema.optional(),
127
202
  currentStagingId: StagingIdSchema.optional(),
128
203
  decisions: z.array(DecisionSchema).default([]),
204
+ memories: z.array(MemorySchema).default([]), // Memory/Rule storage
129
205
  sessionSummary: z.string().optional(),
130
206
  });
131
207
  // ============ Full State Schema ============
132
208
  export const StateSchema = z.object({
133
- version: z.literal("2.0.0"),
209
+ version: z.literal(STATE_VERSION),
134
210
  project: ProjectSchema,
135
211
  plans: z.record(PlanIdSchema, PlanSchema).default({}),
136
212
  stagings: z.record(StagingIdSchema, StagingSchema).default({}),
@@ -139,6 +215,11 @@ export const StateSchema = z.object({
139
215
  context: ContextSchema,
140
216
  });
141
217
  // ============ Input Schemas for Tools ============
218
+ // Cross-staging task reference for plan creation (uses indices instead of IDs)
219
+ export const CrossStagingTaskRefInputSchema = z.object({
220
+ staging_index: z.number().int().min(0),
221
+ task_index: z.number().int().min(0),
222
+ });
142
223
  export const CreatePlanInputSchema = z.object({
143
224
  title: z.string().min(1),
144
225
  description: z.string().optional(),
@@ -146,12 +227,29 @@ export const CreatePlanInputSchema = z.object({
146
227
  name: z.string().min(1),
147
228
  description: z.string().optional(),
148
229
  execution_type: ExecutionTypeSchema.default("parallel"),
230
+ // Default model for tasks in this staging
231
+ default_model: ModelTypeSchema.optional(),
232
+ // Session budget for context management
233
+ session_budget: SessionBudgetSchema.optional(),
234
+ // Recommended number of sessions (0.5, 1, 2, etc.)
235
+ recommended_sessions: z.number().min(0.5).max(10).optional(),
236
+ // Staging dependencies (indices of other stagings to depend on)
237
+ depends_on_staging_indices: z.array(z.number().int().min(0)).default([]),
238
+ // Auto-include artifacts from dependent stagings
239
+ auto_include_artifacts: z.boolean().default(true),
149
240
  tasks: z.array(z.object({
150
241
  title: z.string().min(1),
151
242
  description: z.string().optional(),
152
243
  priority: TaskPrioritySchema.default("medium"),
153
244
  execution_mode: ExecutionTypeSchema.default("parallel"),
245
+ // Model to use for this task (overrides staging default_model)
246
+ model: ModelTypeSchema.optional(),
247
+ // Task dependencies within the same staging
154
248
  depends_on_index: z.array(z.number().int().min(0)).default([]),
249
+ // Cross-staging task references (staging_index, task_index)
250
+ cross_staging_task_refs: z.array(CrossStagingTaskRefInputSchema).default([]),
251
+ // Memory tags for context-specific memory lookup
252
+ memory_tags: z.array(z.string()).default([]),
155
253
  })),
156
254
  })),
157
255
  });
@@ -1 +1 @@
1
- {"version":3,"file":"schema.js","sourceRoot":"","sources":["../../src/state/schema.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"schema.js","sourceRoot":"","sources":["../../src/state/schema.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=schema.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"schema.test.d.ts","sourceRoot":"","sources":["../../src/state/schema.test.ts"],"names":[],"mappings":""}
@@ -0,0 +1,300 @@
1
+ import { describe, it, expect } from 'vitest';
2
+ import { PlanIdSchema, StagingIdSchema, TaskIdSchema, MemoryIdSchema, TaskStatusSchema, PlanStatusSchema, StagingStatusSchema, TaskSchema, PlanSchema, StagingSchema, ProjectSchema, MemorySchema, StateSchema, CreatePlanInputSchema, TaskOutputInputSchema, STATE_VERSION, } from './schema.js';
3
+ describe('Schema Validation', () => {
4
+ describe('ID Patterns', () => {
5
+ it('should validate correct plan ID format', () => {
6
+ expect(() => PlanIdSchema.parse('plan-abc12345')).not.toThrow();
7
+ expect(() => PlanIdSchema.parse('plan-00000000')).not.toThrow();
8
+ expect(() => PlanIdSchema.parse('plan-zzzzzzzz')).not.toThrow();
9
+ });
10
+ it('should reject invalid plan ID formats', () => {
11
+ expect(() => PlanIdSchema.parse('plan-abc')).toThrow(); // Too short
12
+ expect(() => PlanIdSchema.parse('plan-123456789')).toThrow(); // Too long
13
+ expect(() => PlanIdSchema.parse('plan-ABC12345')).toThrow(); // Uppercase
14
+ expect(() => PlanIdSchema.parse('invalid-abc12345')).toThrow(); // Wrong prefix
15
+ expect(() => PlanIdSchema.parse('')).toThrow(); // Empty
16
+ });
17
+ it('should validate correct staging ID format', () => {
18
+ expect(() => StagingIdSchema.parse('staging-abc1')).not.toThrow();
19
+ expect(() => StagingIdSchema.parse('staging-0000')).not.toThrow();
20
+ });
21
+ it('should reject invalid staging ID formats', () => {
22
+ expect(() => StagingIdSchema.parse('staging-ab')).toThrow(); // Too short
23
+ expect(() => StagingIdSchema.parse('staging-abcde')).toThrow(); // Too long
24
+ expect(() => StagingIdSchema.parse('staging-ABCD')).toThrow(); // Uppercase
25
+ });
26
+ it('should validate correct task ID format', () => {
27
+ expect(() => TaskIdSchema.parse('task-abc12345')).not.toThrow();
28
+ expect(() => TaskIdSchema.parse('task-00000000')).not.toThrow();
29
+ });
30
+ it('should reject invalid task ID formats', () => {
31
+ expect(() => TaskIdSchema.parse('task-abc')).toThrow();
32
+ expect(() => TaskIdSchema.parse('task-123456789')).toThrow();
33
+ });
34
+ it('should validate correct memory ID format', () => {
35
+ expect(() => MemoryIdSchema.parse('mem-abc12345')).not.toThrow();
36
+ expect(() => MemoryIdSchema.parse('mem-00000000')).not.toThrow();
37
+ });
38
+ it('should reject invalid memory ID formats', () => {
39
+ expect(() => MemoryIdSchema.parse('mem-abc')).toThrow();
40
+ expect(() => MemoryIdSchema.parse('memory-abc12345')).toThrow();
41
+ });
42
+ });
43
+ describe('Enum Schemas', () => {
44
+ it('should validate task status values', () => {
45
+ expect(TaskStatusSchema.parse('pending')).toBe('pending');
46
+ expect(TaskStatusSchema.parse('in_progress')).toBe('in_progress');
47
+ expect(TaskStatusSchema.parse('done')).toBe('done');
48
+ expect(TaskStatusSchema.parse('blocked')).toBe('blocked');
49
+ expect(TaskStatusSchema.parse('cancelled')).toBe('cancelled');
50
+ });
51
+ it('should reject invalid task status values', () => {
52
+ expect(() => TaskStatusSchema.parse('invalid')).toThrow();
53
+ expect(() => TaskStatusSchema.parse('completed')).toThrow(); // Not a valid value
54
+ });
55
+ it('should validate plan status values', () => {
56
+ expect(PlanStatusSchema.parse('draft')).toBe('draft');
57
+ expect(PlanStatusSchema.parse('active')).toBe('active');
58
+ expect(PlanStatusSchema.parse('completed')).toBe('completed');
59
+ expect(PlanStatusSchema.parse('archived')).toBe('archived');
60
+ expect(PlanStatusSchema.parse('cancelled')).toBe('cancelled');
61
+ });
62
+ it('should validate staging status values', () => {
63
+ expect(StagingStatusSchema.parse('pending')).toBe('pending');
64
+ expect(StagingStatusSchema.parse('in_progress')).toBe('in_progress');
65
+ expect(StagingStatusSchema.parse('completed')).toBe('completed');
66
+ expect(StagingStatusSchema.parse('failed')).toBe('failed');
67
+ expect(StagingStatusSchema.parse('cancelled')).toBe('cancelled');
68
+ });
69
+ });
70
+ describe('TaskSchema', () => {
71
+ const validTask = {
72
+ id: 'task-abc12345',
73
+ planId: 'plan-abc12345',
74
+ stagingId: 'staging-abc1',
75
+ title: 'Test Task',
76
+ createdAt: '2024-01-01T00:00:00.000Z',
77
+ updatedAt: '2024-01-01T00:00:00.000Z',
78
+ };
79
+ it('should validate a minimal valid task', () => {
80
+ const result = TaskSchema.parse(validTask);
81
+ expect(result.id).toBe('task-abc12345');
82
+ expect(result.title).toBe('Test Task');
83
+ expect(result.priority).toBe('medium'); // Default
84
+ expect(result.status).toBe('pending'); // Default
85
+ });
86
+ it('should validate a complete task', () => {
87
+ const completeTask = {
88
+ ...validTask,
89
+ description: 'A test task description',
90
+ priority: 'high',
91
+ status: 'in_progress',
92
+ execution_mode: 'sequential',
93
+ depends_on: ['task-dep12345'],
94
+ order: 0,
95
+ notes: 'Some notes',
96
+ startedAt: '2024-01-01T01:00:00.000Z',
97
+ };
98
+ const result = TaskSchema.parse(completeTask);
99
+ expect(result.description).toBe('A test task description');
100
+ expect(result.priority).toBe('high');
101
+ });
102
+ it('should require title', () => {
103
+ const { title, ...taskWithoutTitle } = validTask;
104
+ expect(() => TaskSchema.parse(taskWithoutTitle)).toThrow();
105
+ });
106
+ it('should reject empty title', () => {
107
+ expect(() => TaskSchema.parse({ ...validTask, title: '' })).toThrow();
108
+ });
109
+ });
110
+ describe('PlanSchema', () => {
111
+ const validPlan = {
112
+ id: 'plan-abc12345',
113
+ title: 'Test Plan',
114
+ artifacts_root: '.claude/plans/plan-abc12345/artifacts',
115
+ createdAt: '2024-01-01T00:00:00.000Z',
116
+ updatedAt: '2024-01-01T00:00:00.000Z',
117
+ };
118
+ it('should validate a minimal valid plan', () => {
119
+ const result = PlanSchema.parse(validPlan);
120
+ expect(result.id).toBe('plan-abc12345');
121
+ expect(result.status).toBe('draft'); // Default
122
+ expect(result.stagings).toEqual([]); // Default
123
+ });
124
+ it('should validate a complete plan', () => {
125
+ const completePlan = {
126
+ ...validPlan,
127
+ description: 'A test plan description',
128
+ status: 'active',
129
+ stagings: ['staging-abc1', 'staging-def2'],
130
+ currentStagingId: 'staging-abc1',
131
+ };
132
+ const result = PlanSchema.parse(completePlan);
133
+ expect(result.stagings).toHaveLength(2);
134
+ });
135
+ it('should require title', () => {
136
+ const { title, ...planWithoutTitle } = validPlan;
137
+ expect(() => PlanSchema.parse(planWithoutTitle)).toThrow();
138
+ });
139
+ });
140
+ describe('StagingSchema', () => {
141
+ const validStaging = {
142
+ id: 'staging-abc1',
143
+ planId: 'plan-abc12345',
144
+ name: 'Phase 1',
145
+ order: 0,
146
+ artifacts_path: '.claude/plans/plan-abc12345/artifacts/staging-abc1',
147
+ createdAt: '2024-01-01T00:00:00.000Z',
148
+ };
149
+ it('should validate a minimal valid staging', () => {
150
+ const result = StagingSchema.parse(validStaging);
151
+ expect(result.id).toBe('staging-abc1');
152
+ expect(result.execution_type).toBe('parallel'); // Default
153
+ expect(result.status).toBe('pending'); // Default
154
+ });
155
+ it('should require name', () => {
156
+ const { name, ...stagingWithoutName } = validStaging;
157
+ expect(() => StagingSchema.parse(stagingWithoutName)).toThrow();
158
+ });
159
+ it('should require non-negative order', () => {
160
+ expect(() => StagingSchema.parse({ ...validStaging, order: -1 })).toThrow();
161
+ });
162
+ });
163
+ describe('ProjectSchema', () => {
164
+ it('should validate a minimal project', () => {
165
+ const project = {
166
+ name: 'Test Project',
167
+ createdAt: '2024-01-01T00:00:00.000Z',
168
+ updatedAt: '2024-01-01T00:00:00.000Z',
169
+ };
170
+ const result = ProjectSchema.parse(project);
171
+ expect(result.name).toBe('Test Project');
172
+ expect(result.goals).toEqual([]); // Default
173
+ expect(result.constraints).toEqual([]); // Default
174
+ });
175
+ it('should require name', () => {
176
+ const project = {
177
+ createdAt: '2024-01-01T00:00:00.000Z',
178
+ updatedAt: '2024-01-01T00:00:00.000Z',
179
+ };
180
+ expect(() => ProjectSchema.parse(project)).toThrow();
181
+ });
182
+ });
183
+ describe('MemorySchema', () => {
184
+ const validMemory = {
185
+ id: 'mem-abc12345',
186
+ category: 'coding',
187
+ title: 'Test Memory',
188
+ content: 'Some content',
189
+ createdAt: '2024-01-01T00:00:00.000Z',
190
+ updatedAt: '2024-01-01T00:00:00.000Z',
191
+ };
192
+ it('should validate a minimal memory', () => {
193
+ const result = MemorySchema.parse(validMemory);
194
+ expect(result.priority).toBe(50); // Default
195
+ expect(result.enabled).toBe(true); // Default
196
+ expect(result.tags).toEqual([]); // Default
197
+ });
198
+ it('should validate priority bounds', () => {
199
+ expect(() => MemorySchema.parse({ ...validMemory, priority: -1 })).toThrow();
200
+ expect(() => MemorySchema.parse({ ...validMemory, priority: 101 })).toThrow();
201
+ expect(() => MemorySchema.parse({ ...validMemory, priority: 0 })).not.toThrow();
202
+ expect(() => MemorySchema.parse({ ...validMemory, priority: 100 })).not.toThrow();
203
+ });
204
+ it('should require content', () => {
205
+ const { content, ...memoryWithoutContent } = validMemory;
206
+ expect(() => MemorySchema.parse(memoryWithoutContent)).toThrow();
207
+ });
208
+ it('should reject empty content', () => {
209
+ expect(() => MemorySchema.parse({ ...validMemory, content: '' })).toThrow();
210
+ });
211
+ });
212
+ describe('TaskOutputInputSchema', () => {
213
+ it('should validate valid task output', () => {
214
+ const output = {
215
+ status: 'success',
216
+ summary: 'Task completed successfully',
217
+ };
218
+ const result = TaskOutputInputSchema.parse(output);
219
+ expect(result.artifacts).toEqual([]); // Default
220
+ });
221
+ it('should accept all status values', () => {
222
+ expect(() => TaskOutputInputSchema.parse({ status: 'success', summary: 'Done' })).not.toThrow();
223
+ expect(() => TaskOutputInputSchema.parse({ status: 'failure', summary: 'Failed' })).not.toThrow();
224
+ expect(() => TaskOutputInputSchema.parse({ status: 'partial', summary: 'Partial' })).not.toThrow();
225
+ });
226
+ it('should require summary', () => {
227
+ expect(() => TaskOutputInputSchema.parse({ status: 'success' })).toThrow();
228
+ });
229
+ });
230
+ describe('CreatePlanInputSchema', () => {
231
+ it('should validate minimal plan creation input', () => {
232
+ const input = {
233
+ title: 'New Plan',
234
+ stagings: [],
235
+ };
236
+ const result = CreatePlanInputSchema.parse(input);
237
+ expect(result.title).toBe('New Plan');
238
+ });
239
+ it('should validate plan with stagings and tasks', () => {
240
+ const input = {
241
+ title: 'New Plan',
242
+ stagings: [
243
+ {
244
+ name: 'Phase 1',
245
+ tasks: [
246
+ { title: 'Task 1' },
247
+ { title: 'Task 2', priority: 'high', depends_on_index: [0] },
248
+ ],
249
+ },
250
+ ],
251
+ };
252
+ const result = CreatePlanInputSchema.parse(input);
253
+ expect(result.stagings[0]?.tasks).toHaveLength(2);
254
+ expect(result.stagings[0]?.tasks[0]?.priority).toBe('medium'); // Default
255
+ });
256
+ it('should require staging name', () => {
257
+ const input = {
258
+ title: 'New Plan',
259
+ stagings: [{ tasks: [] }],
260
+ };
261
+ expect(() => CreatePlanInputSchema.parse(input)).toThrow();
262
+ });
263
+ });
264
+ describe('StateSchema', () => {
265
+ it('should validate correct version', () => {
266
+ expect(STATE_VERSION).toBe('2.0.0');
267
+ });
268
+ it('should validate a minimal state', () => {
269
+ const state = {
270
+ version: STATE_VERSION,
271
+ project: {
272
+ name: 'Test',
273
+ createdAt: '2024-01-01T00:00:00.000Z',
274
+ updatedAt: '2024-01-01T00:00:00.000Z',
275
+ },
276
+ context: {
277
+ lastUpdated: '2024-01-01T00:00:00.000Z',
278
+ },
279
+ };
280
+ const result = StateSchema.parse(state);
281
+ expect(result.plans).toEqual({}); // Default
282
+ expect(result.history).toEqual([]); // Default
283
+ });
284
+ it('should reject wrong version', () => {
285
+ const state = {
286
+ version: '1.0.0', // Wrong version
287
+ project: {
288
+ name: 'Test',
289
+ createdAt: '2024-01-01T00:00:00.000Z',
290
+ updatedAt: '2024-01-01T00:00:00.000Z',
291
+ },
292
+ context: {
293
+ lastUpdated: '2024-01-01T00:00:00.000Z',
294
+ },
295
+ };
296
+ expect(() => StateSchema.parse(state)).toThrow();
297
+ });
298
+ });
299
+ });
300
+ //# sourceMappingURL=schema.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"schema.test.js","sourceRoot":"","sources":["../../src/state/schema.test.ts"],"names":[],"mappings":"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"}