fd7f855008
feat(phase-15): add Test Catalog page, template instantiation, and auto-migration entrypoint (T-119, T-120, T-121)
...
T-119: TestCatalogPage with search, filters (source/platform/severity), template cards grid, and pagination
T-120: TestFromTemplateForm modal with pre-filled fields from template, required field validation, and redirect on creation
T-121: Integrate Available Test Templates section in TechniqueDetailPage with Run This Test buttons; fix missing testStateBadgeColors for new states
Also: add backend entrypoint.sh for automatic Alembic migrations + seed on container startup, add curl to Dockerfile for healthcheck
2026-02-09 12:22:29 +01:00
174919da4e
feat(phase-9): implement MVP polishing and closure
...
T-032: User management admin panel - backend users router with CRUD, frontend UsersPage with modals
T-033: Audit log viewer - backend audit router with filters/pagination, frontend AuditLogPage
T-034: Global error handling - ErrorBoundary, LoadingSpinner, ErrorMessage, Toast components
T-035: Backend tests - pytest setup with SQLite, tests for health/auth/techniques/tests
T-036: Documentation - Updated README with testing section, created docs/API.md
2026-02-06 16:30:35 +01:00
591b5df250
feat: Phase 7 - Frontend scaffolding and auth (T-023, T-024, T-025)
...
T-023: Initialize React project
- Vite + React 19 + TypeScript scaffold
- Tailwind CSS v4 with @tailwindcss/vite plugin
- Dependencies: react-router-dom, axios, @tanstack/react-query, lucide-react
- Project structure: api/, components/, pages/, context/, types/, hooks/, lib/
T-024: API client and auth context
- Axios client with JWT interceptor (auto-attach token, clear on 401)
- login() and getMe() API functions
- AuthContext: user state, login, logout, isAuthenticated, isLoading
- Token persistence via localStorage with hydration on mount
- TypeScript types for all backend models
T-025: Login page and layout
- LoginPage with form, error handling, redirect on success
- Layout with sidebar + header + Outlet
- Sidebar with role-aware navigation (System only for admin)
- ProtectedRoute wrapper with role-based access control
- Routes: /login, /dashboard, /techniques, /tests, /system
2026-02-06 16:09:50 +01:00