6.5 KiB
6.5 KiB
Phase10 candidate inventory — assessment only
No removal is implemented or approved here. No genuinely unused product component has yet been proven across static, dynamic and historical readers. The concrete negative findings below prevent unsafe deletions; potential consolidation needs a separately approved candidate. All locations are repository-relative.
| ID / location | Replacement / current consumers | Dynamic or compatibility risk; disposition | Preservation / required test / removal risk |
|---|---|---|---|
CLEAN-01 job-tracker-ui/src/views/CvBuilderEditor.tsx |
Current editor rendered by CvBuilderPage; undo/history hooks are active | New implementation, not obsolete. Retain | CV authoring; blank/history/save/browser/RD21; HIGH |
CLEAN-02 job-tracker-ui/src/components/CvTemplateThumbnail.tsx |
CvTemplateGallery imports it. It now renders actual server sample HTML in a sandboxed iframe | Name does not mean simplified obsolete thumbnail. Lazy/cached sample and error paths active; retain | Templates; preview/unit/browser/native PDF; HIGH |
CLEAN-03 job-tracker-ui/src/components/CvTemplateGallery.tsx |
Current template library/selection callers | Retain gallery semantics, premium checks and explicit Apply. No duplicate proven | CV gallery; template-selection/legacy/browser; HIGH |
CLEAN-04 job-tracker-ui/src/views/career/CvImportReview.tsx and CvImportMappingEditor.tsx |
CareerProfilePage renders Docling review for pending/applied runs | Current correction/assignment/duplicate workflow; retain | Career Profile/import; real PDF/DOCX/review/provider rollback; CRITICAL |
CLEAN-05 legacy branches in CareerProfilePage.tsx and JobTrackerApi/Controllers/ProfileCvController.cs |
Non-docling runs still use review/accept API and DTOs | Old persisted runs are live consumers. Retain until migration/retention and no-reader evidence | Profile/import/history; legacy and new-run contract/browser; CRITICAL |
CLEAN-06 job-tracker-ui/src/components/DashboardLayoutEditor.tsx |
DashboardView imports it beside DashboardGrid, including navigation guard | Grid adds geometry; editor still owns show/hide/save/reset/conflict controls. Not replaced | Dashboard; geometry/preferences/keyboard/RD21; HIGH |
CLEAN-07 job-tracker-ui/src/dashboardLayout.ts and hooks/useDashboardLayout.ts |
DashboardView/Grid/LayoutEditor/unit callers | v1-to-v2 migration, future/hidden widget preservation and CAS remain active | Dashboard/settings; v1/v2/provider/viewport/save conflict; HIGH |
CLEAN-08 job-tracker-ui/src/views/AdminProcessingPage.tsx |
/admin/processing in App.tsx; new current view |
No superseded admin-processing view verified. Other admin audit/system views serve different functions | Admin/auth/privacy; owner/tenant/rate/redaction/browser; CRITICAL |
CLEAN-09 redirects in job-tracker-ui/src/App.tsx |
/kanban, /correspondence/review, /applications/:id |
Existing bookmarks/extensions/query/hash paths; retain aliases | Routes/jobs/correspondence; route-contract/navigation/ownership; HIGH |
CLEAN-10 JobTrackerApi/Models/CvTheme.cs and Services/ThemedCvRenderer.cs design-version branches |
Existing CV settings lack v2; only explicit Apply opts in | v1 is historical-document compatibility, not dead rendering code. Retain | CV/letters/frozen packages; unchanged Windows/Linux goldens; CRITICAL |
CLEAN-11 JobTrackerApi/Services/CareerProfileMapper.cs, import mapping/interpreter owners |
Different canonical persistence and reviewed source mapping responsibilities | No duplicate master profile/service proven. Trace side effects before any consolidation | Canonical profile/variants; MariaDB rollback/replay/stale writes; CRITICAL |
CLEAN-12 JobTrackerApi/Services/ApplicationAssetsService.cs and versioned writers |
CV/letter/job/application submission readers | RD21 tokens, no-op/null semantics and frozen packages remain mandatory | Applications/docs; all writers/provider/network recovery; CRITICAL |
CLEAN-13 JobTrackerApi/Migrations/ and Data/JobTrackerContext.cs |
Development/provider startup and old database adoption paths | Do not delete migrations or automatically retire SQLite/MariaDB compatibility. No major-version change | Data/auth/history; migration up/down/provider/backup restore; CRITICAL |
CLEAN-14 tools/summarizer/parser_child.py, legacy extraction and Docling environment |
Existing text/attachment routes plus separate bounded document converter | New Docling CV path does not replace all extraction consumers. Retain both until actual census | AI/import/attachments; parser security/legacy/Docling; HIGH |
CLEAN-15 tools/summarizer/cv_import_ai.py, CV_IMPORT_AI_ENABLED |
Disabled/disconnected optional interpretation adapter and tests | Withheld capability is not obsolete. Keep disabled; no activation through cleanup | C11/P5-13/import; disabled transport/schema/grounding/negative model probes; HIGH |
| CLEAN-16 shared style utilities, typography and licensed fonts | MUI/app styles and fixed physical document CSS have different owners | No unused stylesheet/font proven. Dynamic class names, exports, iframe/export embedding need explicit proof | UI/accessibility/PDF/fonts; lint/type/build/browser/native PDF; HIGH |
| CLEAN-17 package/lock dependencies including react-grid-layout and legacy parser packages | RGL is imported by DashboardGrid; parsers serve retained routes | No unreferenced dependency proven. Age/advisory is not unused proof. Qualify updates separately | Dashboard/import/rendering/security; lock audit/build/provider/PDF; HIGH |
| CLEAN-18 old tests, golden fixtures, acceptance records | Regression and historical evidence consumers | Never remove because newer tests pass. Keep original failed attempts/oracles | All57 groups; discovery identity and unchanged oracle hashes; HIGH |
| CLEAN-19 shell/Dashboard duplicate reminder reads (historical P9-PERF-01) | Possible shared-owner optimisation; exact current count not newly measured | Assessment candidate only: measure before/after with failure/account-disposal behavior. No removal eligibility | Notifications/dashboard; loading/refresh/session disposal; MEDIUM |
Every future candidate must name exact symbols and replacement, enumerate current static/dynamic/export/route/old-data consumers, establish an absence of live usage, bind affected preservation IDs, define rollback and run focused plus applicable full regression. An owner-approved scope is required before implementation. The table is bounded evidence, not an exhaustive proof that the repository contains no dead code.