6bd7443e68
- Extract CreateSessionForm component with self-contained form state - Extract SessionList component managing confirmations and health polling - Extract SessionCard presentational component for active/recent variants - Add ConfirmDialog reusable UI primitive - Slim sessions page from ~668 lines to 156 lines - Keep lastSession section inline per design decision Quality gates: tsc (pass), eslint (pass), build (pass) Refs: repo-restructure Task 4.2
37 lines
1.3 KiB
Markdown
37 lines
1.3 KiB
Markdown
# Progress
|
|
|
|
## Status
|
|
In Progress — Task 4.2 completed
|
|
|
|
## Tasks
|
|
- [x] 1.1 Centralize types and extract seed data
|
|
- [x] 1.2 Extract FileBrowser and shared UI primitives
|
|
- [x] 2.1 Extract global styles and tokens
|
|
- [x] 2.2 Extract CSS modules (terminal + git)
|
|
- [x] 2.3 Extract CSS modules (session/settings) + delete styles.css
|
|
- [x] 3.1 Extract shared auth dependencies
|
|
- [x] 3.2 Create Pydantic schemas directory
|
|
- [x] 3.3 Split services/docker.py
|
|
- [x] 3.4 Slim tool_instances router
|
|
- [x] 3.5 Slim git_repositories and config_profiles routers
|
|
- [x] 4.1 Split tool-workshop page into tabs
|
|
- [x] 4.2 Extract sessions page components
|
|
- [ ] 4.3 Extract dashboard and repo-workspace components
|
|
- [ ] 4.4 Rename files to naming convention
|
|
- [ ] 5.1 Add tests for extracted components
|
|
- [ ] 5.2 Documentation and cleanup
|
|
|
|
## Files Changed (Task 4.2)
|
|
- NEW: components/ui/ConfirmDialog.tsx
|
|
- NEW: components/features/session/SessionCard.tsx
|
|
- NEW: components/features/session/SessionList.tsx
|
|
- NEW: components/features/session/CreateSessionForm.tsx
|
|
- NEW: components/features/session/index.ts
|
|
- MOD: pages/sessions.tsx (668 → 156 lines)
|
|
- MOD: components/ui/index.ts
|
|
|
|
## Notes
|
|
- Sessions page slimmed from 668 to 156 lines
|
|
- All quality gates pass: typecheck, lint, build
|
|
- No behavior changes
|