- Fix DataTable reactivity: use $derived with getters for data/columns props
- Fix auth.spec.js: open user dropdown before clicking Logout button
- Fix dashboard.spec.ts: scope selectors to layout-content, use exact matches
- Fix layout.spec.ts: clear localStorage before breakpoint tests, wait for focus
- Fix projects/team-members.spec.ts: wait for table rows to be visible
Root causes:
1. DataTable options object captured initial empty array, not reactive updates
2. Selectors matched multiple elements (sidebar, user menu, main content)
3. Dropdown menus need to be opened before clicking items
4. Keyboard shortcuts need element focus
All 94 tests now pass (47 chromium + 47 firefox)
- 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
- 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