Files
session-mcp/src/types.ts
Christian Gick 6cbb5ce6cb feat(CF-314): Add planning_mode_required field and smart planning mode support
Adds DB column, TypeScript types, MCP tool schemas, and CRUD handlers
for planning_mode_required (NULL=auto-detect, true=always, false=never).

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-02-04 20:30:36 +02:00

94 lines
1.9 KiB
TypeScript

// Task Management Types
export interface Task {
id: string;
project: string;
title: string;
description?: string;
type: 'task' | 'bug' | 'feature' | 'debt' | 'investigation';
status: 'open' | 'in_progress' | 'testing' | 'blocked' | 'completed';
priority: 'P0' | 'P1' | 'P2' | 'P3';
version_id?: string;
epic_id?: string;
planning_mode_required?: boolean | null;
created_at: Date;
updated_at: Date;
completed_at?: Date;
}
export interface Project {
key: string;
name: string;
path?: string;
active: boolean;
created_at: Date;
}
export interface ChecklistItem {
id: number;
task_id: string;
item: string;
checked: boolean;
position: number;
created_at: Date;
}
export interface TaskLink {
id: number;
from_task_id: string;
to_task_id: string;
link_type: 'blocks' | 'relates_to' | 'duplicates' | 'depends_on' | 'needs' | 'implements' | 'fixes' | 'causes' | 'subtask_of';
created_at: Date;
}
export interface Version {
id: string;
project: string;
version: string;
build_number?: number;
status: 'planned' | 'in_progress' | 'released' | 'archived';
release_date?: Date;
release_notes?: string;
git_tag?: string;
git_sha?: string;
created_at: Date;
}
export interface TaskActivity {
id: number;
task_id: string;
session_id: string;
activity_type: 'created' | 'updated' | 'status_change' | 'closed';
old_value?: string;
new_value?: string;
created_at: Date;
}
export interface TaskCommit {
id: number;
task_id: string;
commit_sha: string;
repo: string;
source: 'manual' | 'parsed' | 'pr_merge';
created_at: Date;
}
export interface Epic {
id: string;
project: string;
title: string;
description?: string;
status: 'open' | 'in_progress' | 'completed';
target_version_id?: string;
created_at: Date;
}
export interface SimilarTask {
id: string;
title: string;
type: string;
status: string;
priority: string;
similarity: number;
}