Commit eca336e
Feat(Frontend): Update Schedules to use TaskIQ Workers (#723)
* feat: US-001 - Add DISTRIBUTED_WORKERS constant to src/constants
Consolidate DISTRIBUTED_WORKERS into src/constants/__init__.py and update
llm.py to import from there instead of defining it inline.
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
Signed-off-by: ryaneggz <kre8mymedia@gmail.com>
* feat: US-002 - Dispatch scheduled jobs to TaskIQ when distributed mode enabled
scheduled_llm_invoke() now checks DISTRIBUTED_WORKERS and dispatches to
run_agent_stream.kiq() when true, preserving the in-process fallback.
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
Signed-off-by: ryaneggz <kre8mymedia@gmail.com>
* feat: US-003 - Simplify schedule create route
Remove LLMController indirection from create_job route. Call
schedule_service.create_job() directly, removing unused imports.
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
Signed-off-by: ryaneggz <kre8mymedia@gmail.com>
* feat: US-004 - Add unit tests for TaskIQ dispatch path
Tests verify dispatch to TaskIQ when DISTRIBUTED_WORKERS=true, in-process
fallback when false, and thread_id extraction/generation logic.
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
Signed-off-by: ryaneggz <kre8mymedia@gmail.com>
* docs: update prd.json and progress.txt - all stories complete
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
Signed-off-by: ryaneggz <kre8mymedia@gmail.com>
* Finished ralph loop
* Adds images
* init plan in place
* feat: US-001 - Install React Big Calendar and setup dependencies
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
Signed-off-by: ryaneggz <kre8mymedia@gmail.com>
* feat: US-002 - Define ScheduleExecution and ScheduleEvent entity types
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
Signed-off-by: ryaneggz <kre8mymedia@gmail.com>
* feat: US-003 - Add execution endpoints to schedule service
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
Signed-off-by: ryaneggz <kre8mymedia@gmail.com>
* chore: update PRD and progress for US-003
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
Signed-off-by: ryaneggz <kre8mymedia@gmail.com>
* feat: US-004 - Add calendar utility functions
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
Signed-off-by: ryaneggz <kre8mymedia@gmail.com>
* chore: update PRD and progress for US-004
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
Signed-off-by: ryaneggz <kre8mymedia@gmail.com>
* feat: US-005 - Create useScheduleExecutions hook
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
Signed-off-by: ryaneggz <kre8mymedia@gmail.com>
* feat: US-006 - Sidebar Navigation for Schedules
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
Signed-off-by: ryaneggz <kre8mymedia@gmail.com>
* chore: update PRD and progress for US-006
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
Signed-off-by: ryaneggz <kre8mymedia@gmail.com>
* feat: US-006 - Create ScheduleSidebarItem component
Extract ScheduleSidebarItem into its own file at
frontend/src/components/sidebar/ScheduleSidebarItem.tsx
with status indicators, truncated names, and thread links.
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
Signed-off-by: ryaneggz <kre8mymedia@gmail.com>
* chore: update PRD and progress for US-006
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
Signed-off-by: ryaneggz <kre8mymedia@gmail.com>
* chore: update PRD and progress for US-007
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
Signed-off-by: ryaneggz <kre8mymedia@gmail.com>
* feat: US-008 - Remove schedule navigation from SettingsPopover
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
Signed-off-by: ryaneggz <kre8mymedia@gmail.com>
* chore: update PRD and progress for US-008
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
Signed-off-by: ryaneggz <kre8mymedia@gmail.com>
* feat: US-009 - Implement ScheduleCalendar component with React Big Calendar
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
Signed-off-by: ryaneggz <kre8mymedia@gmail.com>
* chore: update PRD and progress for US-009
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
Signed-off-by: ryaneggz <kre8mymedia@gmail.com>
* feat: US-010 - Create custom calendar CSS for shadcn/ui theme
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
Signed-off-by: ryaneggz <kre8mymedia@gmail.com>
* feat: US-011 - Implement ScheduleTable component with PAST/FUTURE toggle
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
Signed-off-by: ryaneggz <kre8mymedia@gmail.com>
* chore: update PRD and progress for US-011
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
Signed-off-by: ryaneggz <kre8mymedia@gmail.com>
* feat: US-012 - Create ViewToggle component for Calendar/Table switch
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
Signed-off-by: ryaneggz <kre8mymedia@gmail.com>
* feat: US-013 - Refactor Schedules index page with Calendar/Table views
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
Signed-off-by: ryaneggz <kre8mymedia@gmail.com>
* feat: US-014 - Final verification and lint/format cleanup
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
Signed-off-by: ryaneggz <kre8mymedia@gmail.com>
* feat: US-004 - Add unit tests for TaskIQ dispatch path
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
Signed-off-by: ryaneggz <kre8mymedia@gmail.com>
* chore: add progress log for US-004
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
Signed-off-by: ryaneggz <kre8mymedia@gmail.com>
* Fix 422
* prd in place for 422 fix
* Fix prd start
* feat: US-001 - Update ScheduleCreate TypeScript Interface
Align ScheduleCreate and Schedule interfaces with backend LLMRequest schema:
- Nest messages under task.input (matching LLMInput model)
- Remove legacy system field, keep only system_prompt
- Add ScheduleTaskMetadata interface with typed Config fields
- Add files? field to input matching backend LLMInput
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
Signed-off-by: ryaneggz <kre8mymedia@gmail.com>
* feat: US-002 - Update AgentScheduleForm Payload Construction
- Wrap messages inside task.input matching LLMInput schema
- Rename system to system_prompt in payload
- Add assistant_id from agent.metadata or agent.id
- Add agent_id to metadata for schedule tracking
- Preserve custom metadata keys (schedule_description, inherited_from_agent, enabled)
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
Signed-off-by: ryaneggz <kre8mymedia@gmail.com>
* feat: US-003 - Update Schedule Page Create/Edit Handlers
- Update all task.messages references to task.input.messages
- Update task.system references to task.system_prompt
- Fix edit form pre-population to read from new structure
- Fix search filter to use task.input.messages path
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
Signed-off-by: ryaneggz <kre8mymedia@gmail.com>
* feat: US-004 - Verify End-to-End Schedule CRUD
- All stories passing: typecheck, lint, browser verification
- POST /api/schedules returns 201 with new payload structure
- Schedule appears in list after creation
- Updated PRD and progress log
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
Signed-off-by: ryaneggz <kre8mymedia@gmail.com>
* Coderabbit suggestions
* Fix build
---------
Signed-off-by: ryaneggz <kre8mymedia@gmail.com>
Co-authored-by: Claude Opus 4.5 <noreply@anthropic.com>1 parent 91e65e4 commit eca336e
29 files changed
Lines changed: 1718 additions & 206 deletions
File tree
- .claude
- plans
- feat-722-frontend-schedule-refactor
- images
- specs/feat-722-frontend-schedule-refactor
- backend/tests/unit/services
- frontend
- src
- components
- calendar
- cards
- drawers
- forms
- panels
- popovers
- sidebar
- tables
- toggles
- hooks
- lib
- entities
- services
- utils
- pages/schedules
- styles
- tasks
Whitespace-only changes.
Lines changed: 50 additions & 0 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
| 1 | + | |
| 2 | + | |
| 3 | + | |
| 4 | + | |
| 5 | + | |
| 6 | + | |
| 7 | + | |
| 8 | + | |
| 9 | + | |
| 10 | + | |
| 11 | + | |
| 12 | + | |
| 13 | + | |
| 14 | + | |
| 15 | + | |
| 16 | + | |
| 17 | + | |
| 18 | + | |
| 19 | + | |
| 20 | + | |
| 21 | + | |
| 22 | + | |
| 23 | + | |
| 24 | + | |
| 25 | + | |
| 26 | + | |
| 27 | + | |
| 28 | + | |
| 29 | + | |
| 30 | + | |
| 31 | + | |
| 32 | + | |
| 33 | + | |
| 34 | + | |
| 35 | + | |
| 36 | + | |
| 37 | + | |
| 38 | + | |
| 39 | + | |
| 40 | + | |
| 41 | + | |
| 42 | + | |
| 43 | + | |
| 44 | + | |
| 45 | + | |
| 46 | + | |
| 47 | + | |
| 48 | + | |
| 49 | + | |
| 50 | + | |
Lines changed: 62 additions & 0 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
| 1 | + | |
| 2 | + | |
| 3 | + | |
| 4 | + | |
| 5 | + | |
| 6 | + | |
| 7 | + | |
| 8 | + | |
| 9 | + | |
| 10 | + | |
| 11 | + | |
| 12 | + | |
| 13 | + | |
| 14 | + | |
| 15 | + | |
| 16 | + | |
| 17 | + | |
| 18 | + | |
| 19 | + | |
| 20 | + | |
| 21 | + | |
| 22 | + | |
| 23 | + | |
| 24 | + | |
| 25 | + | |
| 26 | + | |
| 27 | + | |
| 28 | + | |
| 29 | + | |
| 30 | + | |
| 31 | + | |
| 32 | + | |
| 33 | + | |
| 34 | + | |
| 35 | + | |
| 36 | + | |
| 37 | + | |
| 38 | + | |
| 39 | + | |
| 40 | + | |
| 41 | + | |
| 42 | + | |
| 43 | + | |
| 44 | + | |
| 45 | + | |
| 46 | + | |
| 47 | + | |
| 48 | + | |
| 49 | + | |
| 50 | + | |
| 51 | + | |
| 52 | + | |
| 53 | + | |
| 54 | + | |
| 55 | + | |
| 56 | + | |
| 57 | + | |
| 58 | + | |
| 59 | + | |
| 60 | + | |
| 61 | + | |
| 62 | + | |
Lines changed: 54 additions & 0 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
| 1 | + | |
| 2 | + | |
| 3 | + | |
| 4 | + | |
| 5 | + | |
| 6 | + | |
| 7 | + | |
| 8 | + | |
| 9 | + | |
| 10 | + | |
| 11 | + | |
| 12 | + | |
| 13 | + | |
| 14 | + | |
| 15 | + | |
| 16 | + | |
| 17 | + | |
| 18 | + | |
| 19 | + | |
| 20 | + | |
| 21 | + | |
| 22 | + | |
| 23 | + | |
| 24 | + | |
| 25 | + | |
| 26 | + | |
| 27 | + | |
| 28 | + | |
| 29 | + | |
| 30 | + | |
| 31 | + | |
| 32 | + | |
| 33 | + | |
| 34 | + | |
| 35 | + | |
| 36 | + | |
| 37 | + | |
| 38 | + | |
| 39 | + | |
| 40 | + | |
| 41 | + | |
| 42 | + | |
| 43 | + | |
| 44 | + | |
| 45 | + | |
| 46 | + | |
| 47 | + | |
| 48 | + | |
| 49 | + | |
| 50 | + | |
| 51 | + | |
| 52 | + | |
| 53 | + | |
| 54 | + | |
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
8 | 8 | | |
9 | 9 | | |
10 | 10 | | |
| 11 | + | |
11 | 12 | | |
12 | 13 | | |
13 | 14 | | |
| |||
This file was deleted.
0 commit comments