2.2 KiB
2.2 KiB
JOBS-002 application table and workspace verification
Updated: 2026-08-10
Confirmed baseline
JobTableowned search, filters, sort and page only in React state.?open=opened the legacy quick dialog and was immediately removed from the URL.- “Open application workspace” navigated to
/applications/:id; its Back control always navigated to a fresh/jobs. - The existing full-page workspace already composes the owner-scoped checklist, intelligence, CV, cover-letter, attachment, correspondence and interview components. It is reused rather than duplicated.
Increment 1 — route-backed overlay
- Table row Open now creates
/jobs?workspace={id}and renders the existing workspace inside an accessible MUI dialog. - Workspace sections update
section=with replacement navigation; opening is a pushed entry, so Back closes and Forward reopens without losing the mounted list state. - A direct
/jobs?workspace={id}§ion={section}opens the requested application and closes by safely removing only workspace query keys. - MUI owns focus trap/restoration. The dialog is full-screen below 768px and links to
/applications/:id?section=...as the full-page fallback. - Legacy
?open=quick-dialog links continue to work; their workspace action enters the same overlay route.
Verification
- Focused Jest:
src/application-workspace-overlay.test.tsx— 2/2 pass. - Full frontend Jest: 51 suites and 206/206 tests pass; existing force-exit notice remains.
- Production build and TypeScript: pass.
- Evidence: V-158 and V-159 in
docs/audits/verification-log.md.
Remaining before completion
- URL-owned list state is implemented for search, status, company, location, follow-up, readiness, deleted visibility, sort/direction and page. Direct hydration and overlay Back/Forward pass focused tests; real-browser refresh/history remains.
- Add a shared dirty-edit close/navigation guard for workspace sections that own unsaved content.
- Improve the table's scan-priority data without adding every available field.
- Add real-browser 375/768/1440, light/dark, keyboard/focus restoration, refresh/history, error and long-content evidence.
- Run tenant-authorization regressions and the production smoke gate.