Add investigation type and duplicate detection (CF-166 Phase 1)
Enhancements: 1. Investigation Task Type - Added 'investigation' to task type enum - Migration 013: Updated PostgreSQL constraint - Updated TypeScript schemas (task_add, task_list, task_update) - Enables tracking research/debugging workflows 2. Duplicate Detection - Enhanced task_add to check for similar tasks before creating - Uses pgvector semantic search (>70% similarity threshold) - Warns about potential duplicates with similarity scores - Suggests linking command for related tasks - Gracefully handles when embeddings unavailable Example Output: ``` Created: CF-123 Title: Fix API rate limiting Type: task Priority: P2 Project: CF ⚠️ Similar tasks found: - CF-120: Add rate limit monitoring (85% match, in_progress) - CF-115: Implement API throttling (72% match, open) Consider linking with: task link <from> <to> relates_to ``` Benefits: - Prevents accidental duplicate tasks - Surfaces related work automatically - Reduces manual task linking - Investigation type for research workflows Files Changed: - migrations/013_investigation_type.sql (new) - src/tools/crud.ts (duplicate detection logic) - src/tools/index.ts (investigation type in enums) Remaining CF-166 Features (Phase 2): - Session-aware task context - Automatic linking within session - Investigation workflow helper - Task creation reminders Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
This commit is contained in:
13
migrations/013_investigation_type.sql
Normal file
13
migrations/013_investigation_type.sql
Normal file
@@ -0,0 +1,13 @@
|
||||
-- Migration 013: Add investigation task type
|
||||
-- Adds 'investigation' to task type enum for tracking research/debugging sessions
|
||||
|
||||
-- Drop existing constraint
|
||||
ALTER TABLE tasks DROP CONSTRAINT IF EXISTS tasks_type_check;
|
||||
|
||||
-- Add new constraint with investigation type
|
||||
ALTER TABLE tasks ADD CONSTRAINT tasks_type_check
|
||||
CHECK (type IN ('task', 'bug', 'feature', 'debt', 'investigation'));
|
||||
|
||||
-- Record migration
|
||||
INSERT INTO schema_migrations (version) VALUES ('013_investigation_type')
|
||||
ON CONFLICT (version) DO NOTHING;
|
||||
Reference in New Issue
Block a user