Commit Graph

22 Commits

Author SHA1 Message Date
c5d48fd40c test(e2e): Fix failing tests - update selectors and credentials
- Fix dashboard test: use correct superuser credentials
- Fix heading selectors to use h1 instead of getByRole
- Fix Quick Actions selectors to use href attributes
- Fix team-members and projects filter tests to check row counts
- Fix status filter tests to not rely on badge classes

Refs: Test fixes for p05-page-migrations
2026-02-18 19:30:15 -05:00
25b899f012 test(build): Add build verification tests
- Add TypeScript check verification (allows 1 known DataTable generics error)
- Add production build verification
- Add build artifacts verification (client, server, manifest)

All 3 tests passing:
- TypeScript check completes and reports results
- Production build succeeds without critical errors
- Build artifacts (client, server, manifest) are generated

Refs: openspec/changes/p05-page-migrations
2026-02-18 19:12:05 -05:00
91269d91a8 feat(pages): Complete p05-page-migrations with all pages and navigation tests
- Create Team Members page with DataTable, search, and filters
- Create Projects page with status badges and workflow
- Create placeholder pages for Allocations, Actuals, Reports, Settings, Master Data
- Fix navigation config: change /team to /team-members
- Remove old Navigation.svelte component
- Add comprehensive navigation link E2E tests (16 tests)
- Add Team Members and Projects page E2E tests

All 16 navigation link tests passing:
- Dashboard, Team Members, Projects, Allocations, Actuals
- All 5 Reports pages (Forecast, Utilization, Costs, Variance, Allocation)
- Admin pages (Settings, Master Data)
- Authentication preservation across pages

Refs: openspec/changes/p05-page-migrations
Closes: p05-page-migrations
2026-02-18 19:03:56 -05:00
8e7bfbe517 feat(ui): Create content pattern components - DataTable, FilterBar, EmptyState, LoadingState
- Add LoadingState with table, card, list, and text skeleton patterns
- Add EmptyState with customizable icon, title, description, and action slot
- Add FilterBar with search input, clear button, and custom filter slot
- Add DataTable with TanStack Table integration, sorting, and row click
- Create barrel export index.ts for common components
- Install tanstack-table-8-svelte-5 for Svelte 5 compatibility
- Sync auth spec with authenticated user redirect requirements
- Archive p03-dashboard-enhancement

Refs: openspec/changes/p04-content-patterns
Closes: p04-content-patterns
2026-02-18 18:40:47 -05:00
96f1d0a6e5 feat(dashboard): Enhance dashboard with PageHeader, StatCard, and auth fixes
- Create PageHeader component with title, description, and action slots
- Create StatCard component with trend indicators and icons
- Update dashboard with KPI cards, Quick Actions, and Allocation Preview
- Polish login page with branding and centered layout
- Fix auth redirect: authenticated users accessing /login go to dashboard
- Fix page refresh: auth state persists, no blank page
- Fix sidebar: visible after login, toggle works, state persists
- Fix CSS import: add app.css to layout, fix DaisyUI import path
- Fix breadcrumbs: home icon links to /dashboard
- Add comprehensive E2E and unit tests

Refs: openspec/changes/p03-dashboard-enhancement
Closes: p03-dashboard-enhancement
2026-02-18 18:14:57 -05:00
493cb78173 feat(layout): finalize p01 and p02 changes
Complete UI foundation and app layout implementation, stabilize container health checks, and archive both OpenSpec changes after verification.
2026-02-18 16:12:11 -05:00
cdfb15bbfd docs(api): generate auth docs and archive p00 change 2026-02-18 14:26:51 -05:00
032da7c40c Ralph iteration 10: work in progress 2026-02-18 14:20:13 -05:00
18496533b4 Ralph iteration 9: work in progress 2026-02-18 14:20:04 -05:00
da3cac08d7 Ralph iteration 8: work in progress 2026-02-18 14:19:55 -05:00
969ee4b7d5 Ralph iteration 7: work in progress 2026-02-18 14:19:46 -05:00
de313f53c3 Ralph iteration 6: work in progress 2026-02-18 14:19:37 -05:00
9da62347c4 Ralph iteration 5: work in progress 2026-02-18 14:19:29 -05:00
70801460eb Ralph iteration 4: work in progress 2026-02-18 14:19:20 -05:00
d37b9d4fb7 Ralph iteration 3: work in progress 2026-02-18 14:19:11 -05:00
3db2996e72 Ralph iteration 2: work in progress 2026-02-18 14:19:02 -05:00
a3b7eb116d Ralph iteration 1: work in progress 2026-02-18 14:18:53 -05:00
f6a7e82036 chore: add root gitignore for local and build artifacts 2026-02-18 13:10:37 -05:00
3e36ea8888 docs(ui): Add UI layout refactor plan and OpenSpec changes
- Update decision-log with UI layout decisions (Feb 18, 2026)
- Update architecture with frontend layout patterns
- Update config.yaml with TDD, documentation, UI standards rules
- Create p00-api-documentation change (Scribe annotations)
- Create p01-ui-foundation change (types, stores, Lucide)
- Create p02-app-layout change (AppLayout, Sidebar, TopBar)
- Create p03-dashboard-enhancement change (PageHeader, StatCard)
- Create p04-content-patterns change (DataTable, FilterBar)
- Create p05-page-migrations change (page migrations)
- Fix E2E auth tests (11/11 passing)
- Add JWT expiry validation to dashboard guard
2026-02-18 13:03:08 -05:00
f935754df4 feat: Reinitialize frontend with SvelteKit and TypeScript
- Delete old Vite+Svelte frontend
- Initialize new SvelteKit project with TypeScript
- Configure Tailwind CSS v4 + DaisyUI
- Implement JWT authentication with auto-refresh
- Create login page with form validation (Zod)
- Add protected route guards
- Update Docker configuration for single-stage build
- Add E2E tests with Playwright (6/11 passing)
- Fix Svelte 5 reactivity with $state() runes

Known issues:
- 5 E2E tests failing (timing/async issues)
- Token refresh implementation needs debugging
- Validation error display timing
2026-02-17 16:19:59 -05:00
54df6018f5 strategy change to TDD 2026-02-17 10:42:32 -05:00
04022b7e0b Headroom - Foundation 2026-02-17 02:10:23 -05:00