Commit Graph

7871 Commits

Author SHA1 Message Date
Dustin Byrne
28ee12d3c8 feat(HAI-003): replace CreateTaskModal with inline card creation in Todo column
- Create InlineCreateCard component with auto-focused input, dependency
  dropdown, Enter to submit, Escape to cancel
- Update Column to render InlineCreateCard at top of Todo column body
- Update Board to pass through inline-create props to Todo column
- Update App to use isCreating state instead of createModalOpen
- Add CSS styles for inline create card, dependency dropdown
- Delete CreateTaskModal component
2026-03-25 19:37:01 -04:00
Dustin Byrne
020cca3399 feat(HAI-002): add task status tracking and display
- Add status field to Task type and store with persistence support
- Set status at engine lifecycle points (triage, scheduler, executor, merger)
- Render status badge on dashboard TaskCard component
2026-03-25 19:30:48 -04:00
Dustin Byrne
6bb5f27b44 feat(HAI-002): render status badge on dashboard task cards 2026-03-25 19:24:29 -04:00
Dustin Byrne
ada968512e feat(HAI-002): set status at engine processor lifecycle points 2026-03-25 19:24:11 -04:00
Dustin Byrne
dc36ad1d57 feat(HAI-002): add status field to Task type and store 2026-03-25 19:23:07 -04:00
Dustin Byrne
8e84832505 feat(HAI-001): make task title optional and description required
- Make Task.title optional and description required in types and TaskCreateInput
- Update CLI task create to prompt for description instead of title, with updated help text
- Update REST API and dashboard CreateTaskModal to require description instead of title
- Handle optional/missing title across TaskCard, TaskDetailModal, and engine components
- Add description validation in TaskStore and update generateSpecifiedPrompt
2026-03-25 19:16:20 -04:00
Dustin Byrne
f57b87f7d3 feat(HAI-001): handle optional title in engine components 2026-03-25 19:15:35 -04:00
Dustin Byrne
62dc06b2f1 feat(HAI-001): handle missing title in TaskDetailModal 2026-03-25 19:15:19 -04:00
Dustin Byrne
07248db6b2 feat(HAI-001): update help text for task create command 2026-03-25 19:15:11 -04:00
Dustin Byrne
495a2eaa81 feat(HAI-001): update CLI task list to handle missing title 2026-03-25 19:15:05 -04:00
Dustin Byrne
eeaa5b457c feat(HAI-001): add description validation and make title optional in store 2026-03-25 19:14:59 -04:00
Dustin Byrne
67af835ce6 feat(HAI-001): make Task.title optional in type definition 2026-03-25 19:14:53 -04:00
Dustin Byrne
87f9cee792 revert: drop vite middleware, add watch build instead 2026-03-25 19:08:04 -04:00
Dustin Byrne
4a7a9041c1 feat: vite dev server with HMR for dashboard 2026-03-25 19:06:14 -04:00
Dustin Byrne
609662dd75 feat(HAI-001): handle empty title in TaskCard display 2026-03-25 19:04:45 -04:00
Dustin Byrne
5a9fc24900 feat(HAI-001): update CreateTaskModal to require description and make title optional 2026-03-25 19:04:38 -04:00
Dustin Byrne
20b7b8e562 feat(HAI-001): update REST API to require description instead of title 2026-03-25 19:04:19 -04:00
Dustin Byrne
2451e72bf9 feat(HAI-001): update CLI task create to prompt for description instead of title 2026-03-25 19:04:12 -04:00
Dustin Byrne
1aa317565f feat(HAI-001): handle optional title in TaskStore createTask and generateSpecifiedPrompt 2026-03-25 19:04:01 -04:00
Dustin Byrne
1ab3d6c558 feat(HAI-001): make title optional and description required in TaskCreateInput 2026-03-25 19:03:46 -04:00
Dustin Byrne
98ddf0f3d3 fix: remove dead setStatus calls from engine 2026-03-25 19:02:24 -04:00
Dustin Byrne
db5831be74 Merge branch 'hai/hai-003'
# Conflicts:
#	packages/core/src/store.ts
2026-03-25 19:00:21 -04:00
Dustin Byrne
3e536302c3 Merge branch 'hai/hai-002'
# Conflicts:
#	packages/dashboard/app/components/TaskCard.tsx
2026-03-25 18:59:09 -04:00
Dustin Byrne
d5b8934a6d feat(HAI-003): mark task complete 2026-03-25 18:56:20 -04:00
Dustin Byrne
b7f2f1a3e6 feat(HAI-003): add file-system watcher to TaskStore for live dashboard updates
- Add watch() method using Node's built-in fs.watch with recursive option
- Detect task.json changes and emit appropriate SSE events (created/moved/updated/deleted)
- Debounce per-file changes (150ms) to coalesce rapid writes
- Suppress duplicate events for in-process mutations via recentlyWritten set
- Integrate watcher into dashboard server startup with clean SIGINT shutdown
- Add @types/node to core package for proper TypeScript support
2026-03-25 18:56:16 -04:00
Dustin Byrne
134717d414 feat(HAI-002): mark task complete 2026-03-25 18:54:57 -04:00
Dustin Byrne
674826e838 fix(HAI-002): inline dependency ordering to avoid Vite alias limitation 2026-03-25 18:54:50 -04:00
Dustin Byrne
6e0fe0554d feat(HAI-002): add queued prop to TaskCard with drag disable and badge 2026-03-25 18:53:55 -04:00
Dustin Byrne
3abca86e77 feat(HAI-002): add worktree group and queued card styles 2026-03-25 18:53:33 -04:00
Dustin Byrne
3b79792f27 feat(HAI-002): integrate worktree grouping into Column and Board 2026-03-25 18:53:21 -04:00
Dustin Byrne
29f1cdf7c3 feat(HAI-001): complete task status tracking implementation 2026-03-25 18:53:15 -04:00
Dustin Byrne
16458c59b5 feat(HAI-002): create worktree grouping utility 2026-03-25 18:52:40 -04:00
Dustin Byrne
cd5223e9f3 feat(HAI-002): create WorktreeGroup component 2026-03-25 18:52:18 -04:00
Dustin Byrne
f5dbcd5c81 feat(HAI-002): add scheduler config endpoint to dashboard API 2026-03-25 18:52:08 -04:00
Dustin Byrne
da7a60cdaa feat(HAI-001): add CSS for status badges and pulse animation 2026-03-25 18:52:02 -04:00
Dustin Byrne
a4b9cc2686 feat(HAI-001): add status badge to TaskCard component 2026-03-25 18:51:53 -04:00
Dustin Byrne
d2056f620a feat(HAI-001): wire status updates in executor 2026-03-25 18:51:38 -04:00
Dustin Byrne
ea148e983b feat(HAI-001): wire status updates in scheduler (blocked/queued) 2026-03-25 18:51:27 -04:00
Dustin Byrne
cbb411cba3 feat(HAI-001): wire status updates in triage processor 2026-03-25 18:51:09 -04:00
Dustin Byrne
e85d8ad743 feat(HAI-001): add status read/write support to TaskStore 2026-03-25 18:50:58 -04:00
Dustin Byrne
f26c3561dc feat(HAI-001): define TaskStatus type and add to Task interface 2026-03-25 18:50:30 -04:00
Dustin Byrne
aaa1f4bddb chore: clean up test artifacts 2026-03-25 18:45:05 -04:00
Dustin Byrne
422e726f00 feat(HAI-001): add request logging middleware
- Add request logger utility in logger.ts
- Wire logger into middleware chain via setup-logging.ts
2026-03-25 18:44:58 -04:00
Dustin Byrne
cfdb48ada6 feat(HAI-001): wire logger into middleware chain 2026-03-25 18:44:53 -04:00
Dustin Byrne
a5e44ddc1c feat(HAI-001): add request logger utility 2026-03-25 18:44:53 -04:00
Dustin Byrne
834a9f840b fix: MERGE_HEAD detection in AI merger 2026-03-25 18:44:49 -04:00
Dustin Byrne
3a8cf64bff feat(HAI-001): add rate limiting middleware
- Add rate limit configuration module
- Implement rate limiting middleware
- Integrate middleware into request pipeline
- Add rate limit unit tests
2026-03-25 18:44:09 -04:00
Dustin Byrne
8eca0b9fc5 test(HAI-001): add rate limit tests 2026-03-25 18:44:03 -04:00
Dustin Byrne
2592daaf34 feat(HAI-001): add rate limiting middleware 2026-03-25 18:44:03 -04:00
Dustin Byrne
b152af6cd6 feat(HAI-001): add rate limit config 2026-03-25 18:44:03 -04:00