Co-Authored-By: Claude Haiku 4.5 <[email protected]>
116 lines
3.0 KiB
TypeScript
116 lines
3.0 KiB
TypeScript
import type { Mission, Project, Task } from '@/lib/types';
|
|
|
|
export const projectFixtures: Project[] = [
|
|
{
|
|
id: 'project-1',
|
|
name: 'Mosaic Stack',
|
|
description: 'Gateway and dashboard parity work',
|
|
status: 'active',
|
|
userId: 'user-1',
|
|
metadata: {
|
|
prd: '# Mosaic Stack PRD\n\n## Objective\n\nShip the SPA route parity pages.',
|
|
},
|
|
createdAt: '2026-08-01T12:00:00.000Z',
|
|
updatedAt: '2026-08-09T18:30:00.000Z',
|
|
},
|
|
{
|
|
id: 'project-2',
|
|
name: 'Agent Runtime',
|
|
description: 'Pi SDK integration',
|
|
status: 'paused',
|
|
userId: 'user-1',
|
|
metadata: null,
|
|
createdAt: '2026-08-02T08:00:00.000Z',
|
|
updatedAt: '2026-08-05T10:00:00.000Z',
|
|
},
|
|
];
|
|
|
|
export const missionFixtures: Mission[] = [
|
|
{
|
|
id: 'mission-1',
|
|
name: 'Ship web parity',
|
|
description: 'Port read-only routes into the SPA',
|
|
status: 'active',
|
|
projectId: 'project-1',
|
|
metadata: null,
|
|
createdAt: '2026-08-03T12:00:00.000Z',
|
|
updatedAt: '2026-08-09T12:00:00.000Z',
|
|
},
|
|
{
|
|
id: 'mission-2',
|
|
name: 'Unrelated mission',
|
|
description: 'Must be filtered out of the project detail view',
|
|
status: 'planning',
|
|
projectId: 'project-2',
|
|
metadata: null,
|
|
createdAt: '2026-08-04T12:00:00.000Z',
|
|
updatedAt: '2026-08-04T12:00:00.000Z',
|
|
},
|
|
];
|
|
|
|
export const taskFixtures: Task[] = [
|
|
{
|
|
id: 'task-1',
|
|
title: 'Route /projects',
|
|
description: 'Port the read-only projects listing into the SPA',
|
|
status: 'done',
|
|
priority: 'high',
|
|
projectId: 'project-1',
|
|
missionId: 'mission-1',
|
|
assignee: 'Jarvis',
|
|
tags: ['spa', 'projects'],
|
|
dueDate: '2026-08-12T00:00:00.000Z',
|
|
metadata: {
|
|
notes: 'Read-only modal content should remain intact.',
|
|
pr_links: [{ url: 'https://example.invalid/pr/1', label: 'PR #1' }],
|
|
},
|
|
createdAt: '2026-08-04T10:00:00.000Z',
|
|
updatedAt: '2026-08-09T15:00:00.000Z',
|
|
},
|
|
{
|
|
id: 'task-2',
|
|
title: 'Route /projects/:id',
|
|
description: 'Reuse overview, tasks, missions, and PRD tabs',
|
|
status: 'in-progress',
|
|
priority: 'critical',
|
|
projectId: 'project-1',
|
|
missionId: 'mission-1',
|
|
assignee: null,
|
|
tags: ['spa', 'detail'],
|
|
dueDate: null,
|
|
metadata: null,
|
|
createdAt: '2026-08-05T09:00:00.000Z',
|
|
updatedAt: '2026-08-10T08:00:00.000Z',
|
|
},
|
|
{
|
|
id: 'task-3',
|
|
title: 'Route /tasks',
|
|
description: 'Wire list and kanban modal interactions',
|
|
status: 'blocked',
|
|
priority: 'medium',
|
|
projectId: 'project-1',
|
|
missionId: null,
|
|
assignee: null,
|
|
tags: ['spa', 'tasks'],
|
|
dueDate: null,
|
|
metadata: null,
|
|
createdAt: '2026-08-06T09:00:00.000Z',
|
|
updatedAt: '2026-08-08T08:00:00.000Z',
|
|
},
|
|
{
|
|
id: 'task-4',
|
|
title: 'Other project task',
|
|
description: 'Used only to confirm mission filtering remains project-scoped',
|
|
status: 'not-started',
|
|
priority: 'low',
|
|
projectId: 'project-2',
|
|
missionId: 'mission-2',
|
|
assignee: null,
|
|
tags: null,
|
|
dueDate: null,
|
|
metadata: null,
|
|
createdAt: '2026-08-06T09:00:00.000Z',
|
|
updatedAt: '2026-08-06T09:00:00.000Z',
|
|
},
|
|
];
|