feat: Add version management, session tracking, and commit linking

Phase 1: Version Management
- Migration 006: Add git_tag, git_sha columns to versions
- New tools: version_add, version_list, version_show, version_update,
  version_release, version_assign_task
- Links versions to git tags for release tracking

Phase 2: Session/Task Activity Tracking
- Migration 007: Create task_activity table
- Track task changes per session (created, updated, status_change, closed)
- Session ID from env/cache file (usage-stats format)
- New tool: session_tasks to query tasks by session

Phase 3: Commit-Task Linking
- Migration 008: Create task_commits junction table
- New tools: task_commit_add, task_commit_remove, task_commits_list,
  task_link_commits (batch parsing)
- Stores SHA references only (Gitea MCP owns full data)
- Commits shown in task_show output

17 new MCP tools total. All migrations applied to docker-host postgres.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
This commit is contained in:
Christian Gick
2026-01-10 10:28:21 +02:00
parent e12cccf718
commit 5015b1416f
9 changed files with 930 additions and 0 deletions

View File

@@ -48,6 +48,27 @@ export interface Version {
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;
}