From 0dd788bdfc0cae36f341c7a447f7d0249ea17fa1 Mon Sep 17 00:00:00 2001 From: cesnimda Date: Wed, 28 Oct 2026 19:54:02 +0100 Subject: [PATCH] docs(qa): record cumulative regression baseline and preservation scope --- docs/pre-phase10-ux/INTEGRATION_PROGRESS.md | 30 + docs/pre-phase10-ux/preservation.json | 1329 +++++++++++++++++++ 2 files changed, 1359 insertions(+) create mode 100644 docs/pre-phase10-ux/INTEGRATION_PROGRESS.md create mode 100644 docs/pre-phase10-ux/preservation.json diff --git a/docs/pre-phase10-ux/INTEGRATION_PROGRESS.md b/docs/pre-phase10-ux/INTEGRATION_PROGRESS.md new file mode 100644 index 0000000..10a59f0 --- /dev/null +++ b/docs/pre-phase10-ux/INTEGRATION_PROGRESS.md @@ -0,0 +1,30 @@ +# Integrated qualification progress + +28 October 2026. Cumulative branch `test/pre-phase10-ux-acceptance` contains A/B/C/D through source `d52403d`, test-fixture correction `4dcc07b` and security evidence `019d0aa`. This is an intermediate evidence checkpoint, not final acceptance or permission for Phase 10 implementation. + +The verified preceding CV-QA baseline is backend 1,336, frontend 995 in 109 suites, ordinary browser 364, specialized browser configurations 53, real MariaDB 80 and Python 76 offline plus 14 real parser tests. Historical evidence remains in `docs/cv-integration-qa/`; CV-UX commit `4a0af62` is an ancestor. The newer C/D focused evidence must not be added to overlapping full-suite counts. + +Fresh completed independent lanes under `.artifacts/pre-phase10-ux/`: + +| Lane | Result | Evidence | +| --- | --- | --- | +| Full backend | 1,424 passed, zero failed/skipped | `integration-01/backend/backend.trx` | +| Full frontend | 1,027 passed in 112 suites, zero failed/pending | `integration-frontend-01.json` | +| TypeScript / full lint | exit 0 each | `integration-{typecheck,lint}-01.log` | +| Offline sidecar | 81 passed, no model loading/network | `integration-independent-01/python-offline.log` | +| Real Docling parser | 14 passed | `integration-independent-01/python-docling.log` | +| Benchmark oracle self-checks | original 11, structural 9 | `integration-independent-01/benchmark-*.log` | +| Node helper contracts | 25 passed | `integration-independent-01/node-helpers.log` | +| Linux qualification lifecycle | 11 passed after synthetic-fixture correction | `integration-linux-helper-02.log`; original failure retained | +| Guarded operation fixture | 29 self-checks passed | existing `seed-operation.py --self-test`, temporary databases only | +| Structural conversion | 36/36 actual frozen documents, 89.283s total; peak child RSS 150,408 KiB | `integration-structural-01/{manifest,corpus-binding,resources,process}.json` | +| Security diff | sealed, 136 changed files, no reportable findings | `SECURITY_REVIEW.md` | +| Advisory checks | npm production zero; full npm five low dev-tool entries; Python import lock zero | `integration-independent-01/` | + +Structural conversion verifies the original document bytes and performs sequential real extraction in a read-only, network-disabled pinned container with bounded CPU/memory/time and no model. The annotation binding accounts only for Git's CRLF-to-LF checkout difference; expected annotations were not changed. Literal recovery, typed facts, record reconstruction and provenance scoring remain a separate subsequent step. RSS is a maximum observed child peak, not a whole-application memory bound. + +Ordinary browser discovery is 380 tests in 66 files. The first serial group retained two 240-second zoom-extension startup failures. Trace shows login rendered and then waiting for the extension service worker; bundled Playwright defaults disable extensions. The scoped test-only correction explicitly excludes that default flag for this extension-owning browser context. It must pass both EN/light and NB/dark real zoom cases before publication; no zoom assertion, timeout or geometry oracle is weakened. The original failed run remains evidence. Passing unrelated cases will be reconciled by exact discovery identity; overlapping recovery runs are not added as extra tests. + +The remaining ordinary groups, specialized browser contracts, final real Docling journeys/MariaDB, native Windows/Linux PDF proof, integrated source/runtime closure, final local source activation and acceptance/handoff are pending. The existing local app still serves qualified B source `3f4db8c` at `http://jobbjakt.local`; C/D are not yet claimed as locally activated. + +`preservation.json` carries all 57 original capability criteria without promoting their 56 PARTIAL/one DEFERRED statuses. Source membership preserves all 33 original routes and adds `/admin/processing` (34 total). Route membership alone is not functional acceptance. Human/device/language/contrast/manual-print debt, revised large-name PDF coordinate-oracle failures, CV generative accuracy, exact deployed model parity and production/operator qualifications remain open. Production remains NO-GO; no main merge, deployment or Phase 10 cleanup occurred. diff --git a/docs/pre-phase10-ux/preservation.json b/docs/pre-phase10-ux/preservation.json new file mode 100644 index 0000000..00375fe --- /dev/null +++ b/docs/pre-phase10-ux/preservation.json @@ -0,0 +1,1329 @@ +{ + "schemaVersion": 1, + "date": "2026-10-28", + "sourceCommit": "d52403dba873a17c83cbc18f0f87d544b72bd3d2", + "inheritedRegister": "docs/cv-integration-qa/preservation.json", + "inheritedSha256": "e50b668d41cc7cb706a129f0245048bf3e0587d7006c0eebd9dd6884448c1a41", + "policy": "Retain all original acceptance criteria and statuses. Route-source membership is not whole-capability, human, deployed or production acceptance. Final regression evidence is recorded separately.", + "counts": { + "groups": 57, + "partial": 56, + "deferred": 1, + "inheritedRoutes": 33, + "addedRoutes": 1, + "routes": 34 + }, + "groups": [ + { + "id": "PRES-E01", + "capability": "**PRES-E01** \u2014 Public product/plans; honest unavailable billing", + "owner": "LandingPage, planCatalog; AccountPlans", + "historicalStatus": "PARTIAL", + "currentStatus": "PARTIAL", + "remaining": "Public-page complete mobile/keyboard review and actual billing availability; no invented prices", + "requiredClosure": "Public-page complete mobile/keyboard review and actual billing availability; no invented prices", + "sourceCriterion": { + "path": "docs/redesign/phase-9/preservation.json", + "index": 0, + "originalCriteria": "docs/redesign/phase-2/PRESERVATION_MATRIX.md", + "laterResidual": "docs/redesign/phase-7/PRESERVATION.md" + }, + "cvQaScope": "Shared regression retained; no broader capability promotion", + "cvQaEvidence": "evidence-summary.json; scoped automated proof only; human/model/provider/deployed limitations retained" + }, + { + "id": "PRES-E02", + "capability": "**PRES-E02** \u2014 Local login/register/remember, challenge, reset and verification", + "owner": "LoginPage, TurnstileWidget, VerifyEmailPage; AuthController", + "historicalStatus": "PARTIAL", + "currentStatus": "PARTIAL", + "remaining": "Real mail/reset submit/Turnstile and token expiry/used-token cases; query loss is repaired for its tested scope", + "requiredClosure": "Real mail/reset submit/Turnstile and token expiry/used-token cases; query loss is repaired for its tested scope", + "sourceCriterion": { + "path": "docs/redesign/phase-9/preservation.json", + "index": 1, + "originalCriteria": "docs/redesign/phase-2/PRESERVATION_MATRIX.md", + "laterResidual": "docs/redesign/phase-7/PRESERVATION.md" + }, + "cvQaScope": "Shared regression retained; no broader capability promotion", + "cvQaEvidence": "evidence-summary.json; scoped automated proof only; human/model/provider/deployed limitations retained" + }, + { + "id": "PRES-E03", + "capability": "**PRES-E03** \u2014 Google/Microsoft login, link, legacy relink and popup results", + "owner": "GoogleAuthCard, MicrosoftAuthCard, MicrosoftLegacyRelinkPage; token validators", + "historicalStatus": "PARTIAL", + "currentStatus": "PARTIAL", + "remaining": "Actual consent/popups/revoked grants/relink; mailbox grants remain separate from sign-in", + "requiredClosure": "Actual consent/popups/revoked grants/relink; mailbox grants remain separate from sign-in", + "sourceCriterion": { + "path": "docs/redesign/phase-9/preservation.json", + "index": 2, + "originalCriteria": "docs/redesign/phase-2/PRESERVATION_MATRIX.md", + "laterResidual": "docs/redesign/phase-7/PRESERVATION.md" + }, + "cvQaScope": "Shared regression retained; no broader capability promotion", + "cvQaEvidence": "evidence-summary.json; scoped automated proof only; human/model/provider/deployed limitations retained" + }, + { + "id": "PRES-E04", + "capability": "**PRES-E04** \u2014 2FA challenge/recovery/setup/disable; trusted-device revocation", + "owner": "TwoFactorSettingsCard, TwoFactorChallenge; TwoFactorController", + "historicalStatus": "PARTIAL", + "currentStatus": "PARTIAL", + "remaining": "Real authenticator/recovery and reader/trusted-device traversal; sensitive confirmations retained", + "requiredClosure": "Real authenticator/recovery and reader/trusted-device traversal; sensitive confirmations retained", + "sourceCriterion": { + "path": "docs/redesign/phase-9/preservation.json", + "index": 3, + "originalCriteria": "docs/redesign/phase-2/PRESERVATION_MATRIX.md", + "laterResidual": "docs/redesign/phase-7/PRESERVATION.md" + }, + "cvQaScope": "Shared regression retained; no broader capability promotion", + "cvQaEvidence": "evidence-summary.json; scoped automated proof only; human/model/provider/deployed limitations retained" + }, + { + "id": "PRES-E05", + "capability": "**PRES-E05** \u2014 Session list/current device, revoke one/others, logout", + "owner": "SessionsSettingsCard, AppShell, auth; SessionsController", + "historicalStatus": "PARTIAL", + "currentStatus": "PARTIAL", + "remaining": "Native session-card refresh after remote revocation and complete device/AT acceptance", + "requiredClosure": "Native session-card refresh after remote revocation and complete device/AT acceptance", + "sourceCriterion": { + "path": "docs/redesign/phase-9/preservation.json", + "index": 4, + "originalCriteria": "docs/redesign/phase-2/PRESERVATION_MATRIX.md", + "laterResidual": "docs/redesign/phase-7/PRESERVATION.md" + }, + "cvQaScope": "Directly affected; canonical/import/review/editor/persistence/document checks", + "cvQaEvidence": "evidence-summary.json; scoped automated proof only; human/model/provider/deployed limitations retained" + }, + { + "id": "PRES-E06", + "capability": "**PRES-E06** \u2014 Avatar, account names/headline, email change and password", + "owner": "ProfilePage; AuthController, AvatarStorage", + "historicalStatus": "PARTIAL", + "currentStatus": "PARTIAL", + "remaining": "Complete avatar/remove/password/email-change native flow; account identity remains distinct from career facts", + "requiredClosure": "Complete avatar/remove/password/email-change native flow; account identity remains distinct from career facts", + "sourceCriterion": { + "path": "docs/redesign/phase-9/preservation.json", + "index": 5, + "originalCriteria": "docs/redesign/phase-2/PRESERVATION_MATRIX.md", + "laterResidual": "docs/redesign/phase-7/PRESERVATION.md" + }, + "cvQaScope": "Shared regression retained; no broader capability promotion", + "cvQaEvidence": "evidence-summary.json; scoped automated proof only; human/model/provider/deployed limitations retained" + }, + { + "id": "PRES-E07", + "capability": "**PRES-E07** \u2014 Desktop collapse/mobile drawer, active nav and command search/actions", + "owner": "AppShell, QuickCommandDialog; job/company search APIs", + "historicalStatus": "PARTIAL", + "currentStatus": "PARTIAL", + "remaining": "Spoken names/live state, settled drawer AX-name triage and historical command/dialog timing; no route silently hidden", + "requiredClosure": "Spoken names/live state, settled drawer AX-name triage and historical command/dialog timing; no route silently hidden", + "sourceCriterion": { + "path": "docs/redesign/phase-9/preservation.json", + "index": 6, + "originalCriteria": "docs/redesign/phase-2/PRESERVATION_MATRIX.md", + "laterResidual": "docs/redesign/phase-7/PRESERVATION.md" + }, + "cvQaScope": "Directly affected; canonical/import/review/editor/persistence/document checks", + "cvQaEvidence": "evidence-summary.json; scoped automated proof only; human/model/provider/deployed limitations retained" + }, + { + "id": "PRES-E08", + "capability": "**PRES-E08** \u2014 Theme/system, EN/NB hydration, toast/confirm/prompt and errors", + "owner": "themePrefs, I18nProvider, confirm, prompt; auth preference", + "historicalStatus": "PARTIAL", + "currentStatus": "PARTIAL", + "remaining": "Full OS/locale/state cross-product, contrast/incomplete axe, reader/reflow; save feedback is distinct from server500 root-cause repair", + "requiredClosure": "Full OS/locale/state cross-product, contrast/incomplete axe, reader/reflow; save feedback is distinct from server500 root-cause repair", + "sourceCriterion": { + "path": "docs/redesign/phase-9/preservation.json", + "index": 7, + "originalCriteria": "docs/redesign/phase-2/PRESERVATION_MATRIX.md", + "laterResidual": "docs/redesign/phase-7/PRESERVATION.md" + }, + "cvQaScope": "Directly affected; canonical/import/review/editor/persistence/document checks", + "cvQaEvidence": "evidence-summary.json; scoped automated proof only; human/model/provider/deployed limitations retained" + }, + { + "id": "PRES-E09", + "capability": "**PRES-E09** \u2014 Account-switch private-state disposal and stale request rejection", + "owner": "App, api, sessionBoundary; SessionContextMiddleware", + "historicalStatus": "PARTIAL", + "currentStatus": "PARTIAL", + "remaining": "Broader BFCache/offline/old-bundle/deployed cases; presentation never becomes authorization", + "requiredClosure": "Broader BFCache/offline/old-bundle/deployed cases; presentation never becomes authorization", + "sourceCriterion": { + "path": "docs/redesign/phase-9/preservation.json", + "index": 8, + "originalCriteria": "docs/redesign/phase-2/PRESERVATION_MATRIX.md", + "laterResidual": "docs/redesign/phase-7/PRESERVATION.md" + }, + "cvQaScope": "Directly affected; canonical/import/review/editor/persistence/document checks", + "cvQaEvidence": "evidence-summary.json; scoped automated proof only; human/model/provider/deployed limitations retained" + }, + { + "id": "PRES-J01", + "capability": "**PRES-J01** \u2014 NAV discovery/filter/sort/source/deadline/details", + "owner": "JobDiscoveryPage; JobDiscoveryController", + "historicalStatus": "PARTIAL", + "currentStatus": "PARTIAL", + "remaining": "Live NAV availability/freshness and long-result keyboard/narrow traversal", + "requiredClosure": "Live NAV availability/freshness and long-result keyboard/narrow traversal", + "sourceCriterion": { + "path": "docs/redesign/phase-9/preservation.json", + "index": 9, + "originalCriteria": "docs/redesign/phase-2/PRESERVATION_MATRIX.md", + "laterResidual": "docs/redesign/phase-7/PRESERVATION.md" + }, + "cvQaScope": "Shared regression retained; no broader capability promotion", + "cvQaEvidence": "evidence-summary.json; scoped automated proof only; human/model/provider/deployed limitations retained" + }, + { + "id": "PRES-J02", + "capability": "**PRES-J02** \u2014 Saved searches, run/delete/alerts, result changes/dismissal", + "owner": "JobDiscoveryPage; saved-search/alert services", + "historicalStatus": "PARTIAL", + "currentStatus": "PARTIAL", + "remaining": "Actual scheduler-to-owned-notification delivery, human/mobile delete acceptance and intended-provider qualification; deterministic runner is not live NAV", + "requiredClosure": "Actual scheduler-to-owned-notification delivery, human/mobile delete acceptance and intended-provider qualification; deterministic runner is not live NAV", + "sourceCriterion": { + "path": "docs/redesign/phase-9/preservation.json", + "index": 10, + "originalCriteria": "docs/redesign/phase-2/PRESERVATION_MATRIX.md", + "laterResidual": "docs/redesign/phase-7/PRESERVATION.md" + }, + "cvQaScope": "Shared regression retained; no broader capability promotion", + "cvQaEvidence": "evidence-summary.json; scoped automated proof only; human/model/provider/deployed limitations retained" + }, + { + "id": "PRES-J03", + "capability": "**PRES-J03** \u2014 Reviewed manual/URL/paste job create, company/tags/dates, duplicates", + "owner": "AddJobModal; JobImportService, JobApplicationsController", + "historicalStatus": "PARTIAL", + "currentStatus": "PARTIAL", + "remaining": "Duplicate/company/date/interrupted creation and distinct creation-intent idempotency debt; preview/open is no-write", + "requiredClosure": "Duplicate/company/date/interrupted creation and distinct creation-intent idempotency debt; preview/open is no-write", + "sourceCriterion": { + "path": "docs/redesign/phase-9/preservation.json", + "index": 11, + "originalCriteria": "docs/redesign/phase-2/PRESERVATION_MATRIX.md", + "laterResidual": "docs/redesign/phase-7/PRESERVATION.md" + }, + "cvQaScope": "Shared regression retained; no broader capability promotion", + "cvQaEvidence": "evidence-summary.json; scoped automated proof only; human/model/provider/deployed limitations retained" + }, + { + "id": "PRES-J04", + "capability": "**PRES-J04** \u2014 Extension/bookmarklet/share capture; post-create attachment/CV", + "owner": "App, captureUrl, QuickCaptureCard; job/CV APIs", + "historicalStatus": "PARTIAL", + "currentStatus": "PARTIAL", + "remaining": "Installed extension/share/no-replay and attachment failure recovery; keep payload and safe-return contracts", + "requiredClosure": "Installed extension/share/no-replay and attachment failure recovery; keep payload and safe-return contracts", + "sourceCriterion": { + "path": "docs/redesign/phase-9/preservation.json", + "index": 12, + "originalCriteria": "docs/redesign/phase-2/PRESERVATION_MATRIX.md", + "laterResidual": "docs/redesign/phase-7/PRESERVATION.md" + }, + "cvQaScope": "Shared regression retained; no broader capability promotion", + "cvQaEvidence": "evidence-summary.json; scoped automated proof only; human/model/provider/deployed limitations retained" + }, + { + "id": "PRES-J05", + "capability": "**PRES-J05** \u2014 Job filters/sort/page/columns, saved views and row/mobile actions", + "owner": "JobTable, SavedViewsMenu; JobApplicationsController", + "historicalStatus": "PARTIAL", + "currentStatus": "PARTIAL", + "remaining": "Full saved-view CRUD/dirty page-size/history combinations and supported capacity; server query semantics unchanged", + "requiredClosure": "Full saved-view CRUD/dirty page-size/history combinations and supported capacity; server query semantics unchanged", + "sourceCriterion": { + "path": "docs/redesign/phase-9/preservation.json", + "index": 13, + "originalCriteria": "docs/redesign/phase-2/PRESERVATION_MATRIX.md", + "laterResidual": "docs/redesign/phase-7/PRESERVATION.md" + }, + "cvQaScope": "Shared regression retained; no broader capability promotion", + "cvQaEvidence": "evidence-summary.json; scoped automated proof only; human/model/provider/deployed limitations retained" + }, + { + "id": "PRES-J06", + "capability": "**PRES-J06** \u2014 Bulk status/delete, soft delete/trash/restore and job edit", + "owner": "JobTable, EditJobDialog; job lifecycle/controller", + "historicalStatus": "PARTIAL", + "currentStatus": "PARTIAL", + "remaining": "Complete selected-scope/partial-failure/dirty/manual combinations; no hard-delete substitution", + "requiredClosure": "Complete selected-scope/partial-failure/dirty/manual combinations; no hard-delete substitution", + "sourceCriterion": { + "path": "docs/redesign/phase-9/preservation.json", + "index": 14, + "originalCriteria": "docs/redesign/phase-2/PRESERVATION_MATRIX.md", + "laterResidual": "docs/redesign/phase-7/PRESERVATION.md" + }, + "cvQaScope": "Shared regression retained; no broader capability promotion", + "cvQaEvidence": "evidence-summary.json; scoped automated proof only; human/model/provider/deployed limitations retained" + }, + { + "id": "PRES-J07", + "capability": "**PRES-J07** \u2014 Kanban grouped statuses, pointer/keyboard move and precise menu", + "owner": "KanbanBoard, pipeline; status endpoint", + "historicalStatus": "PARTIAL", + "currentStatus": "PARTIAL", + "remaining": "Physical drag/touch/browser variants and O(N) full-array capacity; no capped hidden results or pipeline redefinition", + "requiredClosure": "Physical drag/touch/browser variants and O(N) full-array capacity; no capped hidden results or pipeline redefinition", + "sourceCriterion": { + "path": "docs/redesign/phase-9/preservation.json", + "index": 15, + "originalCriteria": "docs/redesign/phase-2/PRESERVATION_MATRIX.md", + "laterResidual": "docs/redesign/phase-7/PRESERVATION.md" + }, + "cvQaScope": "Shared regression retained; no broader capability promotion", + "cvQaEvidence": "evidence-summary.json; scoped automated proof only; human/model/provider/deployed limitations retained" + }, + { + "id": "PRES-J08", + "capability": "**PRES-J08** \u2014 Company/contact edits, pipeline dates and linked-job history", + "owner": "CompaniesTable; company relationship APIs", + "historicalStatus": "PARTIAL", + "currentStatus": "PARTIAL", + "remaining": "Scoped in-modal failure proof follows P6 manifest; complete contact/date/source-link and human acceptance remain", + "requiredClosure": "Scoped in-modal failure proof follows P6 manifest; complete contact/date/source-link and human acceptance remain", + "sourceCriterion": { + "path": "docs/redesign/phase-9/preservation.json", + "index": 16, + "originalCriteria": "docs/redesign/phase-2/PRESERVATION_MATRIX.md", + "laterResidual": "docs/redesign/phase-7/PRESERVATION.md" + }, + "cvQaScope": "Shared regression retained; no broader capability promotion", + "cvQaEvidence": "evidence-summary.json; scoped automated proof only; human/model/provider/deployed limitations retained" + }, + { + "id": "PRES-J09", + "capability": "**PRES-J09** \u2014 Recorded offers/compensation/deadlines/notes and source links", + "owner": "OfferComparisonPage; job API", + "historicalStatus": "PARTIAL", + "currentStatus": "PARTIAL", + "remaining": "Many-offer mobile/currency/date acceptance; no invented salary normalization", + "requiredClosure": "Many-offer mobile/currency/date acceptance; no invented salary normalization", + "sourceCriterion": { + "path": "docs/redesign/phase-9/preservation.json", + "index": 17, + "originalCriteria": "docs/redesign/phase-2/PRESERVATION_MATRIX.md", + "laterResidual": "docs/redesign/phase-7/PRESERVATION.md" + }, + "cvQaScope": "Shared regression retained; no broader capability promotion", + "cvQaEvidence": "evidence-summary.json; scoped automated proof only; human/model/provider/deployed limitations retained" + }, + { + "id": "PRES-J10", + "capability": "**PRES-J10** \u2014 CSV/JSON export, JSON import and CSV-to-JSON conversion", + "owner": "ImportExportJobs; CSV/job controller", + "historicalStatus": "PARTIAL", + "currentStatus": "PARTIAL", + "remaining": "Complete native roundtrip and target spreadsheet compatibility; job import is not account restore", + "requiredClosure": "Complete native roundtrip and target spreadsheet compatibility; job import is not account restore", + "sourceCriterion": { + "path": "docs/redesign/phase-9/preservation.json", + "index": 18, + "originalCriteria": "docs/redesign/phase-2/PRESERVATION_MATRIX.md", + "laterResidual": "docs/redesign/phase-7/PRESERVATION.md" + }, + "cvQaScope": "Shared regression retained; no broader capability promotion", + "cvQaEvidence": "evidence-summary.json; scoped automated proof only; human/model/provider/deployed limitations retained" + }, + { + "id": "PRES-W01", + "capability": "**PRES-W01** \u2014 Full workspace, sections, legacy links and optional reusable overlay", + "owner": "ApplicationWorkspacePage, jobWorkspaceRoute; workspace API", + "historicalStatus": "PARTIAL", + "currentStatus": "PARTIAL", + "remaining": "`followMode` metadata retained; compose consumer deferred. P5-05 optional preview lacks production host; full page remains", + "requiredClosure": "`followMode` metadata retained; compose consumer deferred. P5-05 optional preview lacks production host; full page remains", + "sourceCriterion": { + "path": "docs/redesign/phase-9/preservation.json", + "index": 19, + "originalCriteria": "docs/redesign/phase-2/PRESERVATION_MATRIX.md", + "laterResidual": "docs/redesign/phase-7/PRESERVATION.md" + }, + "cvQaScope": "Shared regression retained; no broader capability promotion", + "cvQaEvidence": "evidence-summary.json; scoped automated proof only; human/model/provider/deployed limitations retained" + }, + { + "id": "PRES-W02", + "capability": "**PRES-W02** \u2014 Detail/status/progression, recruiter/dates/description/timeline", + "owner": "WorkspaceHeader, JobDetailsSection, ApplicationProgress/Timeline; workflow APIs", + "historicalStatus": "PARTIAL", + "currentStatus": "PARTIAL", + "remaining": "Stored-event localisation/timezones/status-reload combinations ; job stale-replacement contract repaired within qualified MariaDB 12.2.2 scope", + "requiredClosure": "Stored-event localisation/timezones/status-reload combinations ; job stale-replacement contract repaired within qualified MariaDB 12.2.2 scope", + "sourceCriterion": { + "path": "docs/redesign/phase-9/preservation.json", + "index": 20, + "originalCriteria": "docs/redesign/phase-2/PRESERVATION_MATRIX.md", + "laterResidual": "docs/redesign/phase-7/PRESERVATION.md" + }, + "cvQaScope": "Shared regression retained; no broader capability promotion", + "cvQaEvidence": "evidence-summary.json; scoped automated proof only; human/model/provider/deployed limitations retained" + }, + { + "id": "PRES-W03", + "capability": "**PRES-W03** \u2014 Analysis, match/gaps, strategy and reviewed status/workflow suggestions", + "owner": "ApplicationAnalysis/Match/StrategySnapshot/StatusSuggestion; intelligence/AI services", + "historicalStatus": "PARTIAL", + "currentStatus": "PARTIAL", + "remaining": "Real-model truthfulness/freshness/cancel quality; route entry never auto-generates; unrelated AI survives C11 withholding", + "requiredClosure": "Real-model truthfulness/freshness/cancel quality; route entry never auto-generates; unrelated AI survives C11 withholding", + "sourceCriterion": { + "path": "docs/redesign/phase-9/preservation.json", + "index": 21, + "originalCriteria": "docs/redesign/phase-2/PRESERVATION_MATRIX.md", + "laterResidual": "docs/redesign/phase-7/PRESERVATION.md" + }, + "cvQaScope": "Shared regression retained; no broader capability promotion", + "cvQaEvidence": "evidence-summary.json; scoped automated proof only; human/model/provider/deployed limitations retained" + }, + { + "id": "PRES-W04", + "capability": "**PRES-W04** \u2014 Checklist create/edit/complete/delete/order and next action", + "owner": "ApplicationChecklist; checklist service/controller", + "historicalStatus": "PARTIAL", + "currentStatus": "PARTIAL", + "remaining": "Mobile interruption/edit/delete/reader; item identity and keyboard alternatives retained; no invented due-date schema", + "requiredClosure": "Mobile interruption/edit/delete/reader; item identity and keyboard alternatives retained; no invented due-date schema", + "sourceCriterion": { + "path": "docs/redesign/phase-9/preservation.json", + "index": 22, + "originalCriteria": "docs/redesign/phase-2/PRESERVATION_MATRIX.md", + "laterResidual": "docs/redesign/phase-7/PRESERVATION.md" + }, + "cvQaScope": "Shared regression retained; no broader capability promotion", + "cvQaEvidence": "evidence-summary.json; scoped automated proof only; human/model/provider/deployed limitations retained" + }, + { + "id": "PRES-W05", + "capability": "**PRES-W05** \u2014 Attach/select/create/tailor CV and source context", + "owner": "ApplicationCvSection/TailoringSection; ApplicationAssetsService", + "historicalStatus": "PARTIAL", + "currentStatus": "PARTIAL", + "remaining": "**P2-D01 remains ordinary passing**; broader attach-render/model/deployed combinations remain; owner/job association unchanged", + "requiredClosure": "**P2-D01 remains ordinary passing**; broader attach-render/model/deployed combinations remain; owner/job association unchanged", + "sourceCriterion": { + "path": "docs/redesign/phase-9/preservation.json", + "index": 23, + "originalCriteria": "docs/redesign/phase-2/PRESERVATION_MATRIX.md", + "laterResidual": "docs/redesign/phase-7/PRESERVATION.md" + }, + "cvQaScope": "Directly affected; canonical/import/review/editor/persistence/document checks", + "cvQaEvidence": "evidence-summary.json; scoped automated proof only; human/model/provider/deployed limitations retained" + }, + { + "id": "PRES-W06", + "capability": "**PRES-W06** \u2014 Cover-letter manual/AI review, versions/restore and dirty protection", + "owner": "ApplicationCoverLetterSection, CoverLetterAiAssistant; assets/history", + "historicalStatus": "PARTIAL", + "currentStatus": "PARTIAL", + "remaining": "Complete native history/reject/reader/model combinations; no canonical mutation or auto-send", + "requiredClosure": "Complete native history/reject/reader/model combinations; no canonical mutation or auto-send", + "sourceCriterion": { + "path": "docs/redesign/phase-9/preservation.json", + "index": 24, + "originalCriteria": "docs/redesign/phase-2/PRESERVATION_MATRIX.md", + "laterResidual": "docs/redesign/phase-7/PRESERVATION.md" + }, + "cvQaScope": "Directly affected; canonical/import/review/editor/persistence/document checks", + "cvQaEvidence": "evidence-summary.json; scoped automated proof only; human/model/provider/deployed limitations retained" + }, + { + "id": "PRES-W07", + "capability": "**PRES-W07** \u2014 Application drafts and immutable submitted package/archived binaries", + "owner": "ApplicationPackageDraftsSection, SubmittedPackagesSection; package service/storage", + "historicalStatus": "PARTIAL", + "currentStatus": "PARTIAL", + "remaining": "Actual production restore/rollback/all-storage combinations; current edits/delete cannot mutate frozen bytes; capture is not delivery", + "requiredClosure": "Actual production restore/rollback/all-storage combinations; current edits/delete cannot mutate frozen bytes; capture is not delivery", + "sourceCriterion": { + "path": "docs/redesign/phase-9/preservation.json", + "index": 25, + "originalCriteria": "docs/redesign/phase-2/PRESERVATION_MATRIX.md", + "laterResidual": "docs/redesign/phase-7/PRESERVATION.md" + }, + "cvQaScope": "Directly affected; canonical/import/review/editor/persistence/document checks", + "cvQaEvidence": "evidence-summary.json; scoped automated proof only; human/model/provider/deployed limitations retained" + }, + { + "id": "PRES-W08", + "capability": "**PRES-W08** \u2014 Attachments upload/category/name/AI consent/preview/download/delete", + "owner": "Attachments; AttachmentsController, AttachmentStorage", + "historicalStatus": "PARTIAL", + "currentStatus": "PARTIAL", + "remaining": "Physical drop, full rename/download/reader and deployed storage; AI inclusion remains explicit", + "requiredClosure": "Physical drop, full rename/download/reader and deployed storage; AI inclusion remains explicit", + "sourceCriterion": { + "path": "docs/redesign/phase-9/preservation.json", + "index": 26, + "originalCriteria": "docs/redesign/phase-2/PRESERVATION_MATRIX.md", + "laterResidual": "docs/redesign/phase-7/PRESERVATION.md" + }, + "cvQaScope": "Shared regression retained; no broader capability promotion", + "cvQaEvidence": "evidence-summary.json; scoped automated proof only; human/model/provider/deployed limitations retained" + }, + { + "id": "PRES-W09", + "capability": "**PRES-W09** \u2014 Interview questions/answers/ready/manual removal/AI review", + "owner": "InterviewPrep; interview persistence/AI endpoints", + "historicalStatus": "PARTIAL", + "currentStatus": "PARTIAL", + "remaining": "Real-model and physical software-keyboard/reload/reader; preparation is not a scheduled interview", + "requiredClosure": "Real-model and physical software-keyboard/reload/reader; preparation is not a scheduled interview", + "sourceCriterion": { + "path": "docs/redesign/phase-9/preservation.json", + "index": 27, + "originalCriteria": "docs/redesign/phase-2/PRESERVATION_MATRIX.md", + "laterResidual": "docs/redesign/phase-7/PRESERVATION.md" + }, + "cvQaScope": "Shared regression retained; no broader capability promotion", + "cvQaEvidence": "evidence-summary.json; scoped automated proof only; human/model/provider/deployed limitations retained" + }, + { + "id": "PRES-W10", + "capability": "**PRES-W10** \u2014 Debrief/follow-up draft/date/readiness", + "owner": "InterviewPrep; follow-up draft services", + "historicalStatus": "PARTIAL", + "currentStatus": "PARTIAL", + "remaining": "Timezones/provider delivery; `followMode` reviewed compose UI remains deferred, no automatic send", + "requiredClosure": "Timezones/provider delivery; `followMode` reviewed compose UI remains deferred, no automatic send", + "sourceCriterion": { + "path": "docs/redesign/phase-9/preservation.json", + "index": 28, + "originalCriteria": "docs/redesign/phase-2/PRESERVATION_MATRIX.md", + "laterResidual": "docs/redesign/phase-7/PRESERVATION.md" + }, + "cvQaScope": "Shared regression retained; no broader capability promotion", + "cvQaEvidence": "evidence-summary.json; scoped automated proof only; human/model/provider/deployed limitations retained" + }, + { + "id": "PRES-W11", + "capability": "**PRES-W11** \u2014 Reminder rules/actions/notifications, ICS and Google/Outlook events", + "owner": "RemindersView, RulesSettingsCard, ApplicationCalendarActions; calendar/rules APIs", + "historicalStatus": "PARTIAL", + "currentStatus": "PARTIAL", + "remaining": "F21 DST/date-only/offsets, real provider events/scheduler delivery and historical unconfirmed Rules500 cause", + "requiredClosure": "F21 DST/date-only/offsets, real provider events/scheduler delivery and historical unconfirmed Rules500 cause", + "sourceCriterion": { + "path": "docs/redesign/phase-9/preservation.json", + "index": 29, + "originalCriteria": "docs/redesign/phase-2/PRESERVATION_MATRIX.md", + "laterResidual": "docs/redesign/phase-7/PRESERVATION.md" + }, + "cvQaScope": "Shared regression retained; no broader capability promotion", + "cvQaEvidence": "evidence-summary.json; scoped automated proof only; human/model/provider/deployed limitations retained" + }, + { + "id": "PRES-W12", + "capability": "**PRES-W12** \u2014 Async progress/failure/retry/cancel/notifications", + "owner": "OperationsPage, CareerProfilePage; operation store/worker", + "historicalStatus": "PARTIAL", + "currentStatus": "PARTIAL", + "remaining": "Disconnect/reconnect and F20 enabled-worker fault recovery; stable operation IDs/no duplicate starts", + "requiredClosure": "Disconnect/reconnect and F20 enabled-worker fault recovery; stable operation IDs/no duplicate starts", + "sourceCriterion": { + "path": "docs/redesign/phase-9/preservation.json", + "index": 30, + "originalCriteria": "docs/redesign/phase-2/PRESERVATION_MATRIX.md", + "laterResidual": "docs/redesign/phase-7/PRESERVATION.md" + }, + "cvQaScope": "Directly affected; canonical/import/review/editor/persistence/document checks", + "cvQaEvidence": "evidence-summary.json; scoped automated proof only; human/model/provider/deployed limitations retained" + }, + { + "id": "PRES-C01", + "capability": "**PRES-C01** \u2014 Canonical structured career data and long-tail/custom sections", + "owner": "CareerProfilePage, career views; CareerProfileService/controller", + "historicalStatus": "PARTIAL", + "currentStatus": "PARTIAL", + "remaining": "Full long-tail mobile/human acceptance; canonical concurrency has bounded SQLite/MariaDB repair proof; singleton source distinct from identified variants", + "requiredClosure": "Full long-tail mobile/human acceptance; canonical concurrency has bounded SQLite/MariaDB repair proof; singleton source distinct from identified variants", + "sourceCriterion": { + "path": "docs/redesign/phase-9/preservation.json", + "index": 31, + "originalCriteria": "docs/redesign/phase-2/PRESERVATION_MATRIX.md", + "laterResidual": "docs/redesign/phase-7/PRESERVATION.md" + }, + "cvQaScope": "Directly affected; canonical/import/review/editor/persistence/document checks", + "cvQaEvidence": "evidence-summary.json; scoped automated proof only; human/model/provider/deployed limitations retained" + }, + { + "id": "PRES-C02", + "capability": "**PRES-C02** \u2014 Profile overview/completeness/import guidance/raw copy/history/restore", + "owner": "CareerWorkspacePage, CareerProfilePage; version service", + "historicalStatus": "PARTIAL", + "currentStatus": "PARTIAL", + "remaining": "Complete native historical restore/clipboard/avatar/reader; live inherited CVs may reflect later source changes", + "requiredClosure": "Complete native historical restore/clipboard/avatar/reader; live inherited CVs may reflect later source changes", + "sourceCriterion": { + "path": "docs/redesign/phase-9/preservation.json", + "index": 32, + "originalCriteria": "docs/redesign/phase-2/PRESERVATION_MATRIX.md", + "laterResidual": "docs/redesign/phase-7/PRESERVATION.md" + }, + "cvQaScope": "Directly affected; canonical/import/review/editor/persistence/document checks", + "cvQaEvidence": "evidence-summary.json; scoped automated proof only; human/model/provider/deployed limitations retained" + }, + { + "id": "PRES-C03", + "capability": "**PRES-C03** \u2014 Upload/extract/rebuild/reprocess/diff/select/accept/discard/retry/cancel", + "owner": "CareerProfilePage; profile-CV/processing/diff services", + "historicalStatus": "PARTIAL", + "currentStatus": "PARTIAL", + "remaining": "Scanned/OCR corpus and complete low-confidence/discard/native-reader flow; extracted proposal is not canonical truth", + "requiredClosure": "Scanned/OCR corpus and complete low-confidence/discard/native-reader flow; extracted proposal is not canonical truth", + "sourceCriterion": { + "path": "docs/redesign/phase-9/preservation.json", + "index": 33, + "originalCriteria": "docs/redesign/phase-2/PRESERVATION_MATRIX.md", + "laterResidual": "docs/redesign/phase-7/PRESERVATION.md" + }, + "cvQaScope": "Directly affected; canonical/import/review/editor/persistence/document checks", + "cvQaEvidence": "evidence-summary.json; scoped automated proof only; human/model/provider/deployed limitations retained" + }, + { + "id": "PRES-C04", + "capability": "**PRES-C04** \u2014 Evidence bank source/category/tags/add/list/delete", + "owner": "CareerEvidenceBank; CareerEvidenceController", + "historicalStatus": "PARTIAL", + "currentStatus": "PARTIAL", + "remaining": "Many-item/delete/keyboard/human acceptance; SQLite compatibility repaired with owner SQL preserved, full frontend/production acceptance remains qualified", + "requiredClosure": "Many-item/delete/keyboard/human acceptance; SQLite compatibility repaired with owner SQL preserved, full frontend/production acceptance remains qualified", + "sourceCriterion": { + "path": "docs/redesign/phase-9/preservation.json", + "index": 34, + "originalCriteria": "docs/redesign/phase-2/PRESERVATION_MATRIX.md", + "laterResidual": "docs/redesign/phase-7/PRESERVATION.md" + }, + "cvQaScope": "Shared regression retained; no broader capability promotion", + "cvQaEvidence": "evidence-summary.json; scoped automated proof only; human/model/provider/deployed limitations retained" + }, + { + "id": "PRES-C05", + "capability": "**PRES-C05** \u2014 CV library create/copy/delete/templates/share/publication/PDF", + "owner": "CvBuilderPage, thumbnails; CvVariantService/PublicCvController", + "historicalStatus": "PARTIAL", + "currentStatus": "PARTIAL", + "remaining": "Library migration not complete; publish/unpublish/old-slug revocation and every template combination required", + "requiredClosure": "Library migration not complete; publish/unpublish/old-slug revocation and every template combination required", + "sourceCriterion": { + "path": "docs/redesign/phase-9/preservation.json", + "index": 35, + "originalCriteria": "docs/redesign/phase-2/PRESERVATION_MATRIX.md", + "laterResidual": "docs/redesign/phase-7/PRESERVATION.md" + }, + "cvQaScope": "Directly affected; canonical/import/review/editor/persistence/document checks", + "cvQaEvidence": "evidence-summary.json; scoped automated proof only; human/model/provider/deployed limitations retained" + }, + { + "id": "PRES-C06", + "capability": "**PRES-C06** \u2014 Studio tabs, preview debounce/pages/fit/save state/mobile panes", + "owner": "CvBuilderEditor, CvPreviewPane; preview API", + "historicalStatus": "PARTIAL", + "currentStatus": "PARTIAL", + "remaining": "Physical keyboard/touch/AT and broader short-height/wrapped/deployed cases; one editor/save/preview owner", + "requiredClosure": "Physical keyboard/touch/AT and broader short-height/wrapped/deployed cases; one editor/save/preview owner", + "sourceCriterion": { + "path": "docs/redesign/phase-9/preservation.json", + "index": 36, + "originalCriteria": "docs/redesign/phase-2/PRESERVATION_MATRIX.md", + "laterResidual": "docs/redesign/phase-7/PRESERVATION.md" + }, + "cvQaScope": "Directly affected; canonical/import/review/editor/persistence/document checks", + "cvQaEvidence": "evidence-summary.json; scoped automated proof only; human/model/provider/deployed limitations retained" + }, + { + "id": "PRES-C07", + "capability": "**PRES-C07** \u2014 Visibility/order/custom sections and item/document overrides", + "owner": "CvBuilderEditor, CV controls/useDragReorder; resolver/settings", + "historicalStatus": "PARTIAL", + "currentStatus": "PARTIAL", + "remaining": "Physical selection/drop/all-browser and exhaustive reset/inheritance combinations; sibling/canonical/frozen separation retained", + "requiredClosure": "Physical selection/drop/all-browser and exhaustive reset/inheritance combinations; sibling/canonical/frozen separation retained", + "sourceCriterion": { + "path": "docs/redesign/phase-9/preservation.json", + "index": 37, + "originalCriteria": "docs/redesign/phase-2/PRESERVATION_MATRIX.md", + "laterResidual": "docs/redesign/phase-7/PRESERVATION.md" + }, + "cvQaScope": "Directly affected; canonical/import/review/editor/persistence/document checks", + "cvQaEvidence": "evidence-summary.json; scoped automated proof only; human/model/provider/deployed limitations retained" + }, + { + "id": "PRES-C08", + "capability": "**PRES-C08** \u2014 Capability-aware templates/typography/color/header/skills/sidebar/photo", + "owner": "CvCustomizeTab, registry; ThemedCvRenderer", + "historicalStatus": "PARTIAL", + "currentStatus": "PARTIAL", + "remaining": "Production fonts/portraits/wrapped lines/custom color/reader; schematic gallery is not final-photo qualification", + "requiredClosure": "Production fonts/portraits/wrapped lines/custom color/reader; schematic gallery is not final-photo qualification", + "sourceCriterion": { + "path": "docs/redesign/phase-9/preservation.json", + "index": 38, + "originalCriteria": "docs/redesign/phase-2/PRESERVATION_MATRIX.md", + "laterResidual": "docs/redesign/phase-7/PRESERVATION.md" + }, + "cvQaScope": "Directly affected; canonical/import/review/editor/persistence/document checks", + "cvQaEvidence": "evidence-summary.json; scoped automated proof only; human/model/provider/deployed limitations retained" + }, + { + "id": "PRES-C09", + "capability": "**PRES-C09** \u2014 A4/Letter/density/margins/dates/document locale/section presentation", + "owner": "cvBuilder, CvCustomizeTab; settings normalization/render model", + "historicalStatus": "PARTIAL", + "currentStatus": "PARTIAL", + "remaining": "Advanced cross-product/manual print/deployed fonts; UI locale distinct from document locale; no print geometry styling change", + "requiredClosure": "Advanced cross-product/manual print/deployed fonts; UI locale distinct from document locale; no print geometry styling change", + "sourceCriterion": { + "path": "docs/redesign/phase-9/preservation.json", + "index": 39, + "originalCriteria": "docs/redesign/phase-2/PRESERVATION_MATRIX.md", + "laterResidual": "docs/redesign/phase-7/PRESERVATION.md" + }, + "cvQaScope": "Directly affected; canonical/import/review/editor/persistence/document checks", + "cvQaEvidence": "evidence-summary.json; scoped automated proof only; human/model/provider/deployed limitations retained" + }, + { + "id": "PRES-C10", + "capability": "**PRES-C10** \u2014 Undo/redo, save queue, dirty guard, history restore/preview lifecycle", + "owner": "CvBuilderEditor; CvVariantService version history", + "historicalStatus": "PARTIAL", + "currentStatus": "PARTIAL", + "remaining": "Long offline/history and IF-CV-UNSAVED-01 trace; settings history is not immutable historical profile/PDF; profile/job saves remain separate", + "requiredClosure": "Long offline/history and IF-CV-UNSAVED-01 trace; settings history is not immutable historical profile/PDF; profile/job saves remain separate", + "sourceCriterion": { + "path": "docs/redesign/phase-9/preservation.json", + "index": 40, + "originalCriteria": "docs/redesign/phase-2/PRESERVATION_MATRIX.md", + "laterResidual": "docs/redesign/phase-7/PRESERVATION.md" + }, + "cvQaScope": "Directly affected; canonical/import/review/editor/persistence/document checks", + "cvQaEvidence": "evidence-summary.json; scoped automated proof only; human/model/provider/deployed limitations retained" + }, + { + "id": "PRES-C11", + "capability": "**PRES-C11** \u2014 Section and whole-document AI improve/translate/instruction/grammar review", + "owner": "AiSectionAssistant, DocumentAiTab; CV AI assist", + "historicalStatus": "DEFERRED", + "currentStatus": "DEFERRED", + "remaining": "**0/366 configured-target calls;0 human semantic reviews;review UI absent.** Production503 `cv_ai_unavailable`/no provider/no write remains; safe withholding is not generation acceptance", + "requiredClosure": "**0/366 configured-target calls;0 human semantic reviews;review UI absent.** Production503 `cv_ai_unavailable`/no provider/no write remains; safe withholding is not generation acceptance", + "sourceCriterion": { + "path": "docs/redesign/phase-9/preservation.json", + "index": 41, + "originalCriteria": "docs/redesign/phase-2/PRESERVATION_MATRIX.md", + "laterResidual": "docs/redesign/phase-7/PRESERVATION.md" + }, + "cvQaScope": "Shared regression retained; no broader capability promotion", + "cvQaEvidence": "evidence-summary.json; scoped automated proof only; human/model/provider/deployed limitations retained" + }, + { + "id": "PRES-C12", + "capability": "**PRES-C12** \u2014 Private PDF and published anonymous CV/PDF, long searchable pages", + "owner": "PublicCvPage, cvBuilder; HtmlPdfGenerator/shared admission", + "historicalStatus": "PARTIAL", + "currentStatus": "PARTIAL", + "remaining": "Deployed Linux/font/photo/browser/manual-print qualification and complete revoke/busy-recovery cases; white print pages retained", + "requiredClosure": "Deployed Linux/font/photo/browser/manual-print qualification and complete revoke/busy-recovery cases; white print pages retained", + "sourceCriterion": { + "path": "docs/redesign/phase-9/preservation.json", + "index": 42, + "originalCriteria": "docs/redesign/phase-2/PRESERVATION_MATRIX.md", + "laterResidual": "docs/redesign/phase-7/PRESERVATION.md" + }, + "cvQaScope": "Directly affected; canonical/import/review/editor/persistence/document checks", + "cvQaEvidence": "evidence-summary.json; scoped automated proof only; human/model/provider/deployed limitations retained" + }, + { + "id": "PRES-M01", + "capability": "**PRES-M01** \u2014 Job-scoped manual correspondence/search/delete/paste import", + "owner": "Correspondence; CorrespondenceController", + "historicalStatus": "PARTIAL", + "currentStatus": "PARTIAL", + "remaining": "Full edit/delete/paste/reader native combinations; logging is not sending", + "requiredClosure": "Full edit/delete/paste/reader native combinations; logging is not sending", + "sourceCriterion": { + "path": "docs/redesign/phase-9/preservation.json", + "index": 43, + "originalCriteria": "docs/redesign/phase-2/PRESERVATION_MATRIX.md", + "laterResidual": "docs/redesign/phase-7/PRESERVATION.md" + }, + "cvQaScope": "Shared regression retained; no broader capability promotion", + "cvQaEvidence": "evidence-summary.json; scoped automated proof only; human/model/provider/deployed limitations retained" + }, + { + "id": "PRES-M02", + "capability": "**PRES-M02** \u2014 Gmail candidate/thread import/refresh/sync/unlink/relink/move", + "owner": "Correspondence; GmailController/provider", + "historicalStatus": "PARTIAL", + "currentStatus": "PARTIAL", + "remaining": "Actual provider threads/multi-account revoke/reconnect/sync failures; cross-job changes owner-bound", + "requiredClosure": "Actual provider threads/multi-account revoke/reconnect/sync failures; cross-job changes owner-bound", + "sourceCriterion": { + "path": "docs/redesign/phase-9/preservation.json", + "index": 44, + "originalCriteria": "docs/redesign/phase-2/PRESERVATION_MATRIX.md", + "laterResidual": "docs/redesign/phase-7/PRESERVATION.md" + }, + "cvQaScope": "Shared regression retained; no broader capability promotion", + "cvQaEvidence": "evidence-summary.json; scoped automated proof only; human/model/provider/deployed limitations retained" + }, + { + "id": "PRES-M03", + "capability": "**PRES-M03** \u2014 Global inbox filters/page/provider/link/direction/detail/source links", + "owner": "CorrespondenceInboxPage; EmailController", + "historicalStatus": "PARTIAL", + "currentStatus": "PARTIAL", + "remaining": "Large mailbox/native attachments/complete reader acceptance; global inbox remains Phase7 migration", + "requiredClosure": "Large mailbox/native attachments/complete reader acceptance; global inbox remains Phase7 migration", + "sourceCriterion": { + "path": "docs/redesign/phase-9/preservation.json", + "index": 45, + "originalCriteria": "docs/redesign/phase-2/PRESERVATION_MATRIX.md", + "laterResidual": "docs/redesign/phase-7/PRESERVATION.md" + }, + "cvQaScope": "Shared regression retained; no broader capability promotion", + "cvQaEvidence": "evidence-summary.json; scoped automated proof only; human/model/provider/deployed limitations retained" + }, + { + "id": "PRES-M04", + "capability": "**PRES-M04** \u2014 Compose/reply/provider/recipient/job; draft conflicts; confirm send/uncertainty", + "owner": "CorrespondenceInboxPage; EmailDrafts/Send/attempt store", + "historicalStatus": "PARTIAL", + "currentStatus": "PARTIAL", + "remaining": "Sandbox delivery/reconnect/dirty interruption; no automatic uncertain resend; reviewed `followMode` UI deferred", + "requiredClosure": "Sandbox delivery/reconnect/dirty interruption; no automatic uncertain resend; reviewed `followMode` UI deferred", + "sourceCriterion": { + "path": "docs/redesign/phase-9/preservation.json", + "index": 46, + "originalCriteria": "docs/redesign/phase-2/PRESERVATION_MATRIX.md", + "laterResidual": "docs/redesign/phase-7/PRESERVATION.md" + }, + "cvQaScope": "Shared regression retained; no broader capability promotion", + "cvQaEvidence": "evidence-summary.json; scoped automated proof only; human/model/provider/deployed limitations retained" + }, + { + "id": "PRES-M05", + "capability": "**PRES-M05** \u2014 Review proposed jobs/link/reject/keep/notes/sync/create", + "owner": "GmailReviewPage, CorrespondenceInboxPage; Gmail review", + "historicalStatus": "PARTIAL", + "currentStatus": "PARTIAL", + "remaining": "Real provider and complete proposed-job create flow; route opening is no-write", + "requiredClosure": "Real provider and complete proposed-job create flow; route opening is no-write", + "sourceCriterion": { + "path": "docs/redesign/phase-9/preservation.json", + "index": 47, + "originalCriteria": "docs/redesign/phase-2/PRESERVATION_MATRIX.md", + "laterResidual": "docs/redesign/phase-7/PRESERVATION.md" + }, + "cvQaScope": "Shared regression retained; no broader capability promotion", + "cvQaEvidence": "evidence-summary.json; scoped automated proof only; human/model/provider/deployed limitations retained" + }, + { + "id": "PRES-M06", + "capability": "**PRES-M06** \u2014 Gmail/Graph/IMAP connect/status/disconnect separate from sign-in", + "owner": "EmailProviderConnections; Google/Graph/IMAP controllers", + "historicalStatus": "PARTIAL", + "currentStatus": "PARTIAL", + "remaining": "Real grants/revoke/token expiry/reconnect/IMAP safety; keep sign-in identity separate", + "requiredClosure": "Real grants/revoke/token expiry/reconnect/IMAP safety; keep sign-in identity separate", + "sourceCriterion": { + "path": "docs/redesign/phase-9/preservation.json", + "index": 48, + "originalCriteria": "docs/redesign/phase-2/PRESERVATION_MATRIX.md", + "laterResidual": "docs/redesign/phase-7/PRESERVATION.md" + }, + "cvQaScope": "Shared regression retained; no broader capability promotion", + "cvQaEvidence": "evidence-summary.json; scoped automated proof only; human/model/provider/deployed limitations retained" + }, + { + "id": "PRES-S01", + "capability": "**PRES-S01** \u2014 Personal metrics/activity/funnel/company/skills/stage/salary/next actions", + "owner": "DashboardView; analytics/controllers", + "historicalStatus": "PARTIAL", + "currentStatus": "PARTIAL", + "remaining": "Exact cohort/timezone/sample/unsupported metrics and whole reader acceptance; no fabricated statistics or Analytics rebuild", + "requiredClosure": "Exact cohort/timezone/sample/unsupported metrics and whole reader acceptance; no fabricated statistics or Analytics rebuild", + "sourceCriterion": { + "path": "docs/redesign/phase-9/preservation.json", + "index": 49, + "originalCriteria": "docs/redesign/phase-2/PRESERVATION_MATRIX.md", + "laterResidual": "docs/redesign/phase-7/PRESERVATION.md" + }, + "cvQaScope": "Shared regression retained; no broader capability promotion", + "cvQaEvidence": "evidence-summary.json; scoped automated proof only; human/model/provider/deployed limitations retained" + }, + { + "id": "PRES-S02", + "capability": "**PRES-S02** \u2014 Owner-local five visibility preferences/onboarding dismiss/notifications", + "owner": "DashboardView, OnboardingChecklist, NotificationsPopover; notification APIs", + "historicalStatus": "PARTIAL", + "currentStatus": "PARTIAL", + "remaining": "Historical500 causes unproved; full human/notification acceptance; order/resize/reset/cross-device design remains Phase8", + "requiredClosure": "Historical500 causes unproved; full human/notification acceptance; order/resize/reset/cross-device design remains Phase8", + "sourceCriterion": { + "path": "docs/redesign/phase-9/preservation.json", + "index": 50, + "originalCriteria": "docs/redesign/phase-2/PRESERVATION_MATRIX.md", + "laterResidual": "docs/redesign/phase-7/PRESERVATION.md" + }, + "cvQaScope": "Shared regression retained; no broader capability promotion", + "cvQaEvidence": "evidence-summary.json; scoped automated proof only; human/model/provider/deployed limitations retained" + }, + { + "id": "PRES-S03", + "capability": "**PRES-S03** \u2014 Rules/reminder/table/theme/language preferences and account links", + "owner": "SettingsView, RulesSettingsCard, theme/i18n; rules/notification/auth", + "historicalStatus": "PARTIAL", + "currentStatus": "PARTIAL", + "remaining": "Language failure visibility is separate from RD11 server cause; RD12 notification locking/RD13 Rules500 and human/provider acceptance retained", + "requiredClosure": "Language failure visibility is separate from RD11 server cause; RD12 notification locking/RD13 Rules500 and human/provider acceptance retained", + "sourceCriterion": { + "path": "docs/redesign/phase-9/preservation.json", + "index": 51, + "originalCriteria": "docs/redesign/phase-2/PRESERVATION_MATRIX.md", + "laterResidual": "docs/redesign/phase-7/PRESERVATION.md" + }, + "cvQaScope": "Shared regression retained; no broader capability promotion", + "cvQaEvidence": "evidence-summary.json; scoped automated proof only; human/model/provider/deployed limitations retained" + }, + { + "id": "PRES-S04", + "capability": "**PRES-S04** \u2014 AI privacy/usage/limits/Free-Pro/server entitlement/conditional billing", + "owner": "AiPrivacySettingsCard, AiUsageCard, AccountPlanProvider; billing/entitlement", + "historicalStatus": "PARTIAL", + "currentStatus": "PARTIAL", + "remaining": "Checkout/webhook/portal and provider delivery; temporary C11 withholding cannot disable unrelated AI or imply successful review", + "requiredClosure": "Checkout/webhook/portal and provider delivery; temporary C11 withholding cannot disable unrelated AI or imply successful review", + "sourceCriterion": { + "path": "docs/redesign/phase-9/preservation.json", + "index": 52, + "originalCriteria": "docs/redesign/phase-2/PRESERVATION_MATRIX.md", + "laterResidual": "docs/redesign/phase-7/PRESERVATION.md" + }, + "cvQaScope": "Directly affected; canonical/import/review/editor/persistence/document checks", + "cvQaEvidence": "evidence-summary.json; scoped automated proof only; human/model/provider/deployed limitations retained" + }, + { + "id": "PRES-S05", + "capability": "**PRES-S05** \u2014 Account ZIP/encrypted backup/lifecycle/deletion confirmations", + "owner": "BackupCard; export/backup/deletion services", + "historicalStatus": "PARTIAL", + "currentStatus": "PARTIAL", + "remaining": "Current complete backup/restore/keys/tombstones/rollback and deletion/provider policy; downloading backup is not restore proof", + "requiredClosure": "Current complete backup/restore/keys/tombstones/rollback and deletion/provider policy; downloading backup is not restore proof", + "sourceCriterion": { + "path": "docs/redesign/phase-9/preservation.json", + "index": 53, + "originalCriteria": "docs/redesign/phase-2/PRESERVATION_MATRIX.md", + "laterResidual": "docs/redesign/phase-7/PRESERVATION.md" + }, + "cvQaScope": "Directly affected; canonical/import/review/editor/persistence/document checks", + "cvQaEvidence": "evidence-summary.json; scoped automated proof only; human/model/provider/deployed limitations retained" + }, + { + "id": "PRES-A01", + "capability": "**PRES-A01** \u2014 Admin user/create/roles/reset/delete/last-admin/self guards", + "owner": "AdminUsersPage; UsersController", + "historicalStatus": "PARTIAL", + "currentStatus": "PARTIAL", + "remaining": "Mounted-role revoke/full persisted mutations/reset delivery; hiding navigation never authorizes API calls", + "requiredClosure": "Mounted-role revoke/full persisted mutations/reset delivery; hiding navigation never authorizes API calls", + "sourceCriterion": { + "path": "docs/redesign/phase-9/preservation.json", + "index": 54, + "originalCriteria": "docs/redesign/phase-2/PRESERVATION_MATRIX.md", + "laterResidual": "docs/redesign/phase-7/PRESERVATION.md" + }, + "cvQaScope": "Shared regression retained; no broader capability promotion", + "cvQaEvidence": "evidence-summary.json; scoped automated proof only; human/model/provider/deployed limitations retained" + }, + { + "id": "PRES-A02", + "capability": "**PRES-A02** \u2014 Audit list/detail/supported undo/job restore", + "owner": "AdminAuditPage; AdminAuditController", + "historicalStatus": "PARTIAL", + "currentStatus": "PARTIAL", + "remaining": "Native successful persisted undo/restore and unsupported-action denial; no generic undo semantics", + "requiredClosure": "Native successful persisted undo/restore and unsupported-action denial; no generic undo semantics", + "sourceCriterion": { + "path": "docs/redesign/phase-9/preservation.json", + "index": 55, + "originalCriteria": "docs/redesign/phase-2/PRESERVATION_MATRIX.md", + "laterResidual": "docs/redesign/phase-7/PRESERVATION.md" + }, + "cvQaScope": "Shared regression retained; no broader capability promotion", + "cvQaEvidence": "evidence-summary.json; scoped automated proof only; human/model/provider/deployed limitations retained" + }, + { + "id": "PRES-A03", + "capability": "**PRES-A03** \u2014 System/build/DB/AI/mail/SMTP/test/probe/benchmark/maintenance", + "owner": "AdminSystemPage; AdminSystemController/maintenance/benchmark", + "historicalStatus": "PARTIAL", + "currentStatus": "PARTIAL", + "remaining": "Actual guarded diagnostic/SMTP/model/maintenance and sensitive-output qualification; no production jobs launched", + "requiredClosure": "Actual guarded diagnostic/SMTP/model/maintenance and sensitive-output qualification; no production jobs launched", + "sourceCriterion": { + "path": "docs/redesign/phase-9/preservation.json", + "index": 56, + "originalCriteria": "docs/redesign/phase-2/PRESERVATION_MATRIX.md", + "laterResidual": "docs/redesign/phase-7/PRESERVATION.md" + }, + "cvQaScope": "Shared regression retained; no broader capability promotion", + "cvQaEvidence": "evidence-summary.json; scoped automated proof only; human/model/provider/deployed limitations retained" + } + ], + "routes": [ + { + "route": "/", + "owners": [ + "Navigate", + "LandingPage" + ], + "historicalStatus": "PRESENT in source census; historical automated coverage, no new human acceptance", + "currentDisposition": "Retained; no route deletion; full ordinary discovery membership reconciled, not physical-device or deployed acceptance", + "criterionSource": "job-tracker-ui/src/App.tsx:420-524", + "requiredClosure": "fresh route membership reconciliation plus affected connected workflow evidence; human checks remain distinct" + }, + { + "route": "/dashboard", + "owners": [ + "DashboardView" + ], + "historicalStatus": "PRESENT in source census; historical automated coverage, no new human acceptance", + "currentDisposition": "Retained; no route deletion; full ordinary discovery membership reconciled, not physical-device or deployed acceptance", + "criterionSource": "job-tracker-ui/src/App.tsx:420-524", + "requiredClosure": "fresh route membership reconciliation plus affected connected workflow evidence; human checks remain distinct" + }, + { + "route": "/analytics", + "owners": [ + "AnalyticsPage" + ], + "historicalStatus": "PRESENT in source census; historical automated coverage, no new human acceptance", + "currentDisposition": "Retained; no route deletion; full ordinary discovery membership reconciled, not physical-device or deployed acceptance", + "criterionSource": "job-tracker-ui/src/App.tsx:420-524", + "requiredClosure": "fresh route membership reconciliation plus affected connected workflow evidence; human checks remain distinct" + }, + { + "route": "/discover", + "owners": [ + "JobDiscoveryPage" + ], + "historicalStatus": "PRESENT in source census; historical automated coverage, no new human acceptance", + "currentDisposition": "Retained; no route deletion; full ordinary discovery membership reconciled, not physical-device or deployed acceptance", + "criterionSource": "job-tracker-ui/src/App.tsx:420-524", + "requiredClosure": "fresh route membership reconciliation plus affected connected workflow evidence; human checks remain distinct" + }, + { + "route": "/jobs", + "owners": [ + "JobTable" + ], + "historicalStatus": "PRESENT in source census; historical automated coverage, no new human acceptance", + "currentDisposition": "Retained; no route deletion; full ordinary discovery membership reconciled, not physical-device or deployed acceptance", + "criterionSource": "job-tracker-ui/src/App.tsx:420-524", + "requiredClosure": "fresh route membership reconciliation plus affected connected workflow evidence; human checks remain distinct" + }, + { + "route": "/jobs/:id", + "owners": [ + "ApplicationWorkspacePage" + ], + "historicalStatus": "PRESENT in source census; historical automated coverage, no new human acceptance", + "currentDisposition": "Retained; no route deletion; full ordinary discovery membership reconciled, not physical-device or deployed acceptance", + "criterionSource": "job-tracker-ui/src/App.tsx:420-524", + "requiredClosure": "fresh route membership reconciliation plus affected connected workflow evidence; human checks remain distinct" + }, + { + "route": "/reminders", + "owners": [ + "RemindersView" + ], + "historicalStatus": "PRESENT in source census; historical automated coverage, no new human acceptance", + "currentDisposition": "Retained; no route deletion; full ordinary discovery membership reconciled, not physical-device or deployed acceptance", + "criterionSource": "job-tracker-ui/src/App.tsx:420-524", + "requiredClosure": "fresh route membership reconciliation plus affected connected workflow evidence; human checks remain distinct" + }, + { + "route": "/operations", + "owners": [ + "OperationsPage" + ], + "historicalStatus": "PRESENT in source census; historical automated coverage, no new human acceptance", + "currentDisposition": "Retained; no route deletion; full ordinary discovery membership reconciled, not physical-device or deployed acceptance", + "criterionSource": "job-tracker-ui/src/App.tsx:420-524", + "requiredClosure": "fresh route membership reconciliation plus affected connected workflow evidence; human checks remain distinct" + }, + { + "route": "/kanban", + "owners": [ + "LegacyBoardRedirect" + ], + "historicalStatus": "PRESENT in source census; historical automated coverage, no new human acceptance", + "currentDisposition": "Retained; no route deletion; full ordinary discovery membership reconciled, not physical-device or deployed acceptance", + "criterionSource": "job-tracker-ui/src/App.tsx:420-524", + "requiredClosure": "fresh route membership reconciliation plus affected connected workflow evidence; human checks remain distinct" + }, + { + "route": "/companies", + "owners": [ + "CompaniesTable" + ], + "historicalStatus": "PRESENT in source census; historical automated coverage, no new human acceptance", + "currentDisposition": "Retained; no route deletion; full ordinary discovery membership reconciled, not physical-device or deployed acceptance", + "criterionSource": "job-tracker-ui/src/App.tsx:420-524", + "requiredClosure": "fresh route membership reconciliation plus affected connected workflow evidence; human checks remain distinct" + }, + { + "route": "/offers", + "owners": [ + "OfferComparisonPage" + ], + "historicalStatus": "PRESENT in source census; historical automated coverage, no new human acceptance", + "currentDisposition": "Retained; no route deletion; full ordinary discovery membership reconciled, not physical-device or deployed acceptance", + "criterionSource": "job-tracker-ui/src/App.tsx:420-524", + "requiredClosure": "fresh route membership reconciliation plus affected connected workflow evidence; human checks remain distinct" + }, + { + "route": "/correspondence", + "owners": [ + "CorrespondenceInboxPage" + ], + "historicalStatus": "PRESENT in source census; historical automated coverage, no new human acceptance", + "currentDisposition": "Retained; no route deletion; full ordinary discovery membership reconciled, not physical-device or deployed acceptance", + "criterionSource": "job-tracker-ui/src/App.tsx:420-524", + "requiredClosure": "fresh route membership reconciliation plus affected connected workflow evidence; human checks remain distinct" + }, + { + "route": "/correspondence/review", + "owners": [ + "LegacyCorrespondenceReviewRedirect" + ], + "historicalStatus": "PRESENT in source census; historical automated coverage, no new human acceptance", + "currentDisposition": "Retained; no route deletion; full ordinary discovery membership reconciled, not physical-device or deployed acceptance", + "criterionSource": "job-tracker-ui/src/App.tsx:420-524", + "requiredClosure": "fresh route membership reconciliation plus affected connected workflow evidence; human checks remain distinct" + }, + { + "route": "/profile", + "owners": [ + "ProfilePage" + ], + "historicalStatus": "PRESENT in source census; historical automated coverage, no new human acceptance", + "currentDisposition": "Retained; no route deletion; full ordinary discovery membership reconciled, not physical-device or deployed acceptance", + "criterionSource": "job-tracker-ui/src/App.tsx:420-524", + "requiredClosure": "fresh route membership reconciliation plus affected connected workflow evidence; human checks remain distinct" + }, + { + "route": "/applications/:id", + "owners": [ + "LegacyApplicationRedirect" + ], + "historicalStatus": "PRESENT in source census; historical automated coverage, no new human acceptance", + "currentDisposition": "Retained; no route deletion; full ordinary discovery membership reconciled, not physical-device or deployed acceptance", + "criterionSource": "job-tracker-ui/src/App.tsx:420-524", + "requiredClosure": "fresh route membership reconciliation plus affected connected workflow evidence; human checks remain distinct" + }, + { + "route": "/career", + "owners": [ + "CareerWorkspacePage" + ], + "historicalStatus": "PRESENT in source census; historical automated coverage, no new human acceptance", + "currentDisposition": "Retained; no route deletion; full ordinary discovery membership reconciled, not physical-device or deployed acceptance", + "criterionSource": "job-tracker-ui/src/App.tsx:420-524", + "requiredClosure": "fresh route membership reconciliation plus affected connected workflow evidence; human checks remain distinct" + }, + { + "route": "/career/builder", + "owners": [ + "CvBuilderPage" + ], + "historicalStatus": "PRESENT in source census; historical automated coverage, no new human acceptance", + "currentDisposition": "Retained; no route deletion; full ordinary discovery membership reconciled, not physical-device or deployed acceptance", + "criterionSource": "job-tracker-ui/src/App.tsx:420-524", + "requiredClosure": "fresh route membership reconciliation plus affected connected workflow evidence; human checks remain distinct" + }, + { + "route": "/career/builder/:id", + "owners": [ + "CvBuilderEditor" + ], + "historicalStatus": "PRESENT in source census; historical automated coverage, no new human acceptance", + "currentDisposition": "Retained; no route deletion; full ordinary discovery membership reconciled, not physical-device or deployed acceptance", + "criterionSource": "job-tracker-ui/src/App.tsx:420-524", + "requiredClosure": "fresh route membership reconciliation plus affected connected workflow evidence; human checks remain distinct" + }, + { + "route": "/documents", + "owners": [ + "DocumentsPage" + ], + "historicalStatus": "PRESENT in source census; historical automated coverage, no new human acceptance", + "currentDisposition": "Retained; no route deletion; full ordinary discovery membership reconciled, not physical-device or deployed acceptance", + "criterionSource": "job-tracker-ui/src/App.tsx:420-524", + "requiredClosure": "fresh route membership reconciliation plus affected connected workflow evidence; human checks remain distinct" + }, + { + "route": "/admin/audit", + "owners": [ + "AdminAuditPage" + ], + "historicalStatus": "PRESENT in source census; historical automated coverage, no new human acceptance", + "currentDisposition": "Retained; no route deletion; full ordinary discovery membership reconciled, not physical-device or deployed acceptance", + "criterionSource": "job-tracker-ui/src/App.tsx:420-524", + "requiredClosure": "fresh route membership reconciliation plus affected connected workflow evidence; human checks remain distinct" + }, + { + "route": "/admin/users", + "owners": [ + "AdminUsersPage" + ], + "historicalStatus": "PRESENT in source census; historical automated coverage, no new human acceptance", + "currentDisposition": "Retained; no route deletion; full ordinary discovery membership reconciled, not physical-device or deployed acceptance", + "criterionSource": "job-tracker-ui/src/App.tsx:420-524", + "requiredClosure": "fresh route membership reconciliation plus affected connected workflow evidence; human checks remain distinct" + }, + { + "route": "/admin/system", + "owners": [ + "AdminSystemPage" + ], + "historicalStatus": "PRESENT in source census; historical automated coverage, no new human acceptance", + "currentDisposition": "Retained; no route deletion; full ordinary discovery membership reconciled, not physical-device or deployed acceptance", + "criterionSource": "job-tracker-ui/src/App.tsx:420-524", + "requiredClosure": "fresh route membership reconciliation plus affected connected workflow evidence; human checks remain distinct" + }, + { + "route": "/trash", + "owners": [ + "JobTable" + ], + "historicalStatus": "PRESENT in source census; historical automated coverage, no new human acceptance", + "currentDisposition": "Retained; no route deletion; full ordinary discovery membership reconciled, not physical-device or deployed acceptance", + "criterionSource": "job-tracker-ui/src/App.tsx:420-524", + "requiredClosure": "fresh route membership reconciliation plus affected connected workflow evidence; human checks remain distinct" + }, + { + "route": "/settings", + "owners": [ + "SettingsView" + ], + "historicalStatus": "PRESENT in source census; historical automated coverage, no new human acceptance", + "currentDisposition": "Retained; no route deletion; full ordinary discovery membership reconciled, not physical-device or deployed acceptance", + "criterionSource": "job-tracker-ui/src/App.tsx:420-524", + "requiredClosure": "fresh route membership reconciliation plus affected connected workflow evidence; human checks remain distinct" + }, + { + "route": "/settings/connected-accounts", + "owners": [ + "ConnectedAccountsPage" + ], + "historicalStatus": "PRESENT in source census; historical automated coverage, no new human acceptance", + "currentDisposition": "Retained; no route deletion; full ordinary discovery membership reconciled, not physical-device or deployed acceptance", + "criterionSource": "job-tracker-ui/src/App.tsx:420-524", + "requiredClosure": "fresh route membership reconciliation plus affected connected workflow evidence; human checks remain distinct" + }, + { + "route": "/login", + "owners": [ + "LoginPage" + ], + "historicalStatus": "PRESENT in source census; historical automated coverage, no new human acceptance", + "currentDisposition": "Retained; no route deletion; full ordinary discovery membership reconciled, not physical-device or deployed acceptance", + "criterionSource": "job-tracker-ui/src/App.tsx:420-524", + "requiredClosure": "fresh route membership reconciliation plus affected connected workflow evidence; human checks remain distinct" + }, + { + "route": "/register", + "owners": [ + "LoginPage" + ], + "historicalStatus": "PRESENT in source census; historical automated coverage, no new human acceptance", + "currentDisposition": "Retained; no route deletion; full ordinary discovery membership reconciled, not physical-device or deployed acceptance", + "criterionSource": "job-tracker-ui/src/App.tsx:420-524", + "requiredClosure": "fresh route membership reconciliation plus affected connected workflow evidence; human checks remain distinct" + }, + { + "route": "/forgot-password", + "owners": [ + "ForgotPasswordPage" + ], + "historicalStatus": "PRESENT in source census; historical automated coverage, no new human acceptance", + "currentDisposition": "Retained; no route deletion; full ordinary discovery membership reconciled, not physical-device or deployed acceptance", + "criterionSource": "job-tracker-ui/src/App.tsx:420-524", + "requiredClosure": "fresh route membership reconciliation plus affected connected workflow evidence; human checks remain distinct" + }, + { + "route": "/reset-password", + "owners": [ + "ResetPasswordPage" + ], + "historicalStatus": "PRESENT in source census; historical automated coverage, no new human acceptance", + "currentDisposition": "Retained; no route deletion; full ordinary discovery membership reconciled, not physical-device or deployed acceptance", + "criterionSource": "job-tracker-ui/src/App.tsx:420-524", + "requiredClosure": "fresh route membership reconciliation plus affected connected workflow evidence; human checks remain distinct" + }, + { + "route": "/verify-email", + "owners": [ + "VerifyEmailPage" + ], + "historicalStatus": "PRESENT in source census; historical automated coverage, no new human acceptance", + "currentDisposition": "Retained; no route deletion; full ordinary discovery membership reconciled, not physical-device or deployed acceptance", + "criterionSource": "job-tracker-ui/src/App.tsx:420-524", + "requiredClosure": "fresh route membership reconciliation plus affected connected workflow evidence; human checks remain distinct" + }, + { + "route": "/confirm-email-change", + "owners": [ + "VerifyEmailPage" + ], + "historicalStatus": "PRESENT in source census; historical automated coverage, no new human acceptance", + "currentDisposition": "Retained; no route deletion; full ordinary discovery membership reconciled, not physical-device or deployed acceptance", + "criterionSource": "job-tracker-ui/src/App.tsx:420-524", + "requiredClosure": "fresh route membership reconciliation plus affected connected workflow evidence; human checks remain distinct" + }, + { + "route": "/microsoft-legacy-relink", + "owners": [ + "MicrosoftLegacyRelinkPage" + ], + "historicalStatus": "PRESENT in source census; historical automated coverage, no new human acceptance", + "currentDisposition": "Retained; no route deletion; full ordinary discovery membership reconciled, not physical-device or deployed acceptance", + "criterionSource": "job-tracker-ui/src/App.tsx:420-524", + "requiredClosure": "fresh route membership reconciliation plus affected connected workflow evidence; human checks remain distinct" + }, + { + "route": "/cv/:slug", + "owners": [ + "PublicCvPage" + ], + "historicalStatus": "PRESENT in source census; historical automated coverage, no new human acceptance", + "currentDisposition": "Retained; no route deletion; full ordinary discovery membership reconciled, not physical-device or deployed acceptance", + "criterionSource": "job-tracker-ui/src/App.tsx:420-524", + "requiredClosure": "fresh route membership reconciliation plus affected connected workflow evidence; human checks remain distinct" + }, + { + "route": "/admin/processing", + "owners": [ + "AdminProcessingPage", + "AdminProcessingController" + ], + "currentDisposition": "Added Admin-only read-only processing monitor; finite browser/auth/provider tests in D_ACCEPTANCE.md", + "requiredClosure": "Human accessibility/device/native language and integrated acceptance remain separate." + } + ] +}