Commit graph

29 commits

Author SHA1 Message Date
Brad Groux
425eeddff6 docs: update sprint-5 tracking - complete 2026-01-26 04:35:12 -06:00
Brad Groux
809bf4d94e feat(US-505): Teams notification integration
- New /api/notifications endpoints (create, list, pending, mark-sent, check, clear)
- Notification types: agent_complete, agent_failed, needs_review, task_done, high_priority, error, milestone, info
- CLI commands: notify, notify:check, notify:pending, notify:list, notify:clear
- MCP tools: create_notification, get_pending_notifications, check_notifications
- Notifications stored in .veritas-kanban/notifications.json
- Teams-formatted output with icons and task links
2026-01-26 04:34:41 -06:00
Brad Groux
4d855f3cce docs: update sprint-5 tracking - US-504 complete 2026-01-26 04:29:29 -06:00
Brad Groux
7d7e92e2ce feat(US-504): Memory system sync
- New /api/summary endpoint (status counts, projects, high-priority)
- New /api/summary/recent endpoint (recently completed tasks)
- New /api/summary/memory endpoint (markdown formatted for memory files)
- CLI: vk summary - show kanban overview
- CLI: vk memory - get memory-formatted summary
- CLI: vk memory -o <file> - append to memory file
- MCP: get_summary, get_memory_summary tools
2026-01-26 04:29:03 -06:00
Brad Groux
f53c907026 docs: update sprint-5 tracking - US-503 complete 2026-01-26 04:26:52 -06:00
Brad Groux
6112517ee7 feat(US-503): Veritas sub-agent integration
- Added 'veritas' agent type for automation tasks
- New automation field on tasks (sessionKey, spawnedAt, completedAt, result)
- New API endpoints:
  - POST /api/automation/:id/start - start automation task
  - POST /api/automation/:id/complete - complete automation task
  - GET /api/automation/pending - list pending automation tasks
  - GET /api/automation/running - list running automation tasks
- CLI commands: automation:pending, automation:start, automation:complete, automation:running
- MCP tools: list_pending_automation, list_running_automation, start_automation, complete_automation
2026-01-26 04:26:28 -06:00
Brad Groux
51f9610c79 docs: update sprint-5 tracking - US-502 complete 2026-01-26 04:22:10 -06:00
Brad Groux
751a3bcd2c feat(US-502): MCP server for external clients
- Tools: list_tasks, get_task, create_task, update_task, start_agent, stop_agent, archive_task, delete_task
- Resources: kanban://tasks, kanban://tasks/active, kanban://task/{id}
- Stdio transport for Claude Desktop integration
- Updated README with CLI and MCP documentation
2026-01-26 04:21:47 -06:00
Brad Groux
c578f0a357 docs: add sprint-5 tracking 2026-01-26 04:18:10 -06:00
Brad Groux
bec40a05de feat(US-501): CLI for task management
- vk list: list tasks with filters (status, type, project)
- vk show: display task details
- vk create: create new tasks
- vk update: modify task fields
- vk start: start agent on task
- vk stop: stop running agent
- vk archive: archive completed task
- vk delete: delete task
- JSON output option for all commands
- Partial ID matching support
2026-01-26 04:17:52 -06:00
Brad Groux
08eda69369 docs: update sprint-4 tracking - complete 2026-01-26 04:13:22 -06:00
Brad Groux
b4e4472df4 fix(US-403/404): review state sync bugs
- task-service: add missing review field to parseTaskFile return
- TaskDetailPanel: useDebouncedSave now tracks changed fields only
  (prevents overwriting server state with stale local data)
2026-01-26 04:13:04 -06:00
Brad Groux
ae94df4cdc feat(US-404): merge and close integration
- Merge & Close button in ReviewPanel when approved
- Confirmation dialog with branch details
- Merge worker that merges to base, deletes worktree, marks done
- Loading state during merge operation
- Panel auto-closes on successful merge
2026-01-26 03:36:13 -06:00
Brad Groux
44ff0d7fe9 feat(US-403): approval workflow with review decisions
- ReviewState type with decision, timestamp, summary
- ReviewPanel component with approve/changes/reject buttons
- Summary input for changes-requested and rejected
- Current review status display with clear option
- Review tab in task detail panel
- Comment count display in review panel
2026-01-26 03:34:45 -06:00
Brad Groux
a210a2d287 feat(US-402): line-level review comments
- Add review comments to task schema
- Inline comment input on diff lines
- Comment display with amber highlighting
- Comment counts in file tree and headers
- Remove comment with X button
- Auto-save comments with debounced update
2026-01-26 03:33:05 -06:00
Brad Groux
32b2a7b070 chore: ignore worktrees directory 2026-01-26 03:30:29 -06:00
Brad Groux
6fbbce09ce feat(US-401): diff viewer component
- DiffService for git diff operations
- Diff API routes (summary, file, full)
- DiffViewer component with file tree
- Unified diff display with line numbers
- Syntax highlighting by file extension
- Added/removed line counts
- Tabs UI in task detail panel (Details, Git, Agent, Changes)
2026-01-26 03:30:24 -06:00
Brad Groux
88bf96a77f fix: add git and attempt fields to zod validation schema
The updateTaskSchema was missing git and attempt fields,
causing them to be stripped during validation.
2026-01-26 03:21:58 -06:00
Brad Groux
66c2e4feba docs: update sprint-3 tracking - complete 2026-01-26 03:12:43 -06:00
Brad Groux
6b7a2f56ca feat(US-301-307): agent orchestration
US-301: Agent configuration
- Settings UI for enabling/disabling agents
- Default agent selection
- Shows command and args for each agent

US-302: Start agent on task
- AgentService for process management
- POST /api/agents/:taskId/start
- Spawns agent in worktree directory
- Creates attempt record in task

US-303: Real-time agent output streaming
- WebSocket subscription for agent output
- useAgentStream hook with reconnection
- Terminal-style output panel with colors
- Auto-scroll with manual override

US-304: Agent conversation log persistence
- Logs saved to .veritas-kanban/logs/
- Markdown format with task metadata
- Full stdin/stdout/stderr capture

US-305: Send follow-up message to agent
- stdin input to running process
- Message input field in UI
- Displays with 'You:' prefix

US-306: Stop agent
- POST /api/agents/:taskId/stop
- SIGTERM then SIGKILL after timeout
- Confirmation dialog
- Marks attempt as failed

US-307: Agent completion handling
- Detects process exit
- Updates attempt status (complete/failed)
- Updates task status to 'review'
- WebSocket notification
2026-01-26 03:12:26 -06:00
Brad Groux
4d8ae16969 docs: update sprint-2 tracking - complete 2026-01-26 03:05:10 -06:00
Brad Groux
5977acc828 feat(US-203,204,205,206): git worktree integration
US-203: Git worktree creation
- WorktreeService with simple-git
- POST /api/tasks/:id/worktree creates worktree
- Creates feature branch from base branch
- Updates task with worktree path

US-204: Worktree status display
- GET /api/tasks/:id/worktree returns status
- Shows branch, ahead/behind commits, changed files
- 'Create Worktree' button when none exists
- 'Open in VS Code' button via vscode:// protocol

US-205: Branch operations (rebase, merge)
- POST /api/tasks/:id/worktree/rebase
- POST /api/tasks/:id/worktree/merge
- Confirmation dialogs for merge
- Task auto-moves to Done on merge

US-206: Worktree cleanup
- DELETE /api/tasks/:id/worktree
- Warns about uncommitted changes
- Force delete option
- Manual delete button in UI
2026-01-26 03:04:51 -06:00
Brad Groux
e52aab2b3f feat(US-202): git fields for code tasks
- GitSection component for task detail panel
- Repo dropdown from configured repos
- Base branch dropdown (fetched from repo)
- Auto-generated feature branch from task title
- Git fields saved to task file via debounced save
- Only shows for code task type
2026-01-26 03:02:32 -06:00
Brad Groux
c7834299f6 feat(US-201): project/repo configuration
- ConfigService for managing repos and agents
- Config API routes (CRUD for repos, validate path, get branches)
- Settings dialog with repo management UI
- Path validation against actual git repos
- Default agent configuration (Claude Code, Amp, Copilot, Gemini)
2026-01-26 03:01:14 -06:00
Brad Groux
f504b7383b docs: update sprint tracking - US-104 to US-108 complete 2026-01-26 02:55:01 -06:00
Brad Groux
b8cc446b6b feat: complete US-104 to US-108 (Kanban UI)
US-104: Kanban board UI shell
- Loading skeleton while fetching
- 4 columns with task counts
- Empty state with drop zone highlight

US-105: Task card component
- Type icons and color-coded borders
- Priority badges
- Project tags
- Tooltip on hover for full title
- Click opens detail panel

US-106: Create task dialog
- All fields working
- Validation and defaults

US-107: Task detail panel (new)
- Slide-out sheet from right
- Inline editing for all fields
- Debounced auto-save (500ms)
- Delete with confirmation dialog
- Escape key to close
- Metadata display (created/updated)

US-108: Drag and drop
- Visual feedback (ring highlight, ghost card)
- Status update on drop
- Persists to file via API

Added shadcn components: sheet, skeleton, tooltip, alert-dialog
2026-01-26 02:54:25 -06:00
Brad Groux
45a5c37612 feat: complete US-102 (task parser) and US-103 (REST API)
- Task schema with full types in shared package
- TaskService with injectable paths for testing
- gray-matter for markdown frontmatter parsing
- 15 unit tests for parser/service
- Full CRUD API with zod validation
- Fixed undefined value handling in frontmatter
- Updated sprint tracking
2026-01-26 02:49:09 -06:00
Brad Groux
95e758337f fix: TypeScript errors in server and web packages
- Remove slugify dependency, use custom makeSlug function
- Add explicit Router type annotation
- Remove unused ChevronUp import
- Build shared package for type exports
2026-01-26 02:37:17 -06:00
Brad Groux
a489c5358f feat: initial project scaffolding
- Dev container with Node.js 22
- pnpm workspace monorepo structure
- Express + WebSocket server
- React + Vite + shadcn/ui frontend
- Shared TypeScript types package
- Kanban board with drag-and-drop
- Task CRUD with file-based persistence
- Dark mode styling

Sprint 1 - US-101: Project scaffolding with dev container
2026-01-26 02:34:54 -06:00