Files
headquarter/openspec/changes/sessions-hub/tasks.md
T
Fusion 94aa88c154 feat: add Sessions Hub page
- Add Sessions tab to navigation between Dashboard and Projects
- Show active session count badge in navigation
- Create SessionsPage with:
  - Last session section with resume button
  - Active sessions grid with open/stop actions
  - Recent sessions list
  - Create session form with project/repo/tool selectors
- Add last_session_id to user config
- Update UserConfig schemas (backend and frontend)
- Add comprehensive CSS for sessions page

Quality gates: typecheck ✓, lint ✓, build ✓
2026-05-19 23:06:54 +02:00

94 lines
2.2 KiB
Markdown

# Sessions Hub - Tasks
## Phase 1: Backend Config Update
- [ ] **Task 1.1**: Update UserConfig model
- Add `last_session_id` field to `models/user_config.py`
- Create Alembic migration
- [ ] **Task 1.2**: Update config API
- Accept `last_session_id` in `api/user_config.py`
- Update Pydantic schemas
## Phase 2: Frontend Navigation
- [ ] **Task 2.1**: Add Sessions tab to AppShell
- Insert between Dashboard and Projects
- Add sessions icon
- Show badge with active count
- [ ] **Task 2.2**: Update router
- Add `/sessions` route
- Create placeholder page
## Phase 3: Sessions Page
- [ ] **Task 3.1**: Create SessionsPage component
- Page layout with sections
- Loading and error states
- [ ] **Task 3.2**: Implement Last Session section
- Fetch from user config
- Show session card with resume button
- Handle no last session state
- [ ] **Task 3.3**: Implement Active Sessions section
- Fetch from sessions context
- Grid of session cards
- Action buttons (Open, Stop, Restart, Delete)
- [ ] **Task 3.4**: Implement Recent Sessions section
- Show last 5 sessions
- Compact list view
- Status indicators
- [ ] **Task 3.5**: Implement Create Session section
- Project selector (fetch all projects)
- Repository selector (filtered by project)
- Tool type selector
- Display name input
- Create button with validation
## Phase 4: Session Actions
- [ ] **Task 4.1**: Resume last session
- Navigate to workspace
- Update user config
- [ ] **Task 4.2**: Open session
- Navigate to workspace with session
- [ ] **Task 4.3**: Create session
- Call API to create instance
- Update user config with last_session_id
- Refresh sessions list
## Phase 5: Polish
- [ ] **Task 5.1**: Add CSS styles
- Session cards layout
- Badge styling
- Responsive design
- [ ] **Task 5.2**: Add icons
- Session icon in navigation
- Action icons on cards
## Phase 6: Quality Gates
- [ ] **Task 6.1**: TypeScript check
- `npm run typecheck`
- [ ] **Task 6.2**: Lint check
- `npm run lint`
- [ ] **Task 6.3**: Build check
- `npm run build`
- [ ] **Task 6.4**: Manual verification
- Navigation shows Sessions tab
- Badge shows correct count
- Last session displays
- Can create session from page
- Config persists