Files
jobtrackingapp/docs/cv-redesign/CAPABILITIES.md
T

25 lines
4.6 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# Current capability and preservation matrix
Source baseline: `28f83df`. Source inspection is not a runtime pass. All frontend paths below are under `job-tracker-ui/src/`; backend paths under `JobTrackerApi/`.
| Existing capability | Current owner | Improvement / research trace | Data impact | Coverage and preservation |
|---|---|---|---|---|
| Library, duplicate, delete, publish/share | `views/CvBuilderPage.tsx`, `views/CvBuilderEditor.tsx`, `CvVariantController` | Preserve existing routes and actions; D1–D2, E19–21 | None | cv-builder-page, cv-editor-frame, PublicCv tests |
| Identity, linked job, save states | editor header, serialized save queue | More prominent document context; wireframe D-A, AC-01/04 | None | editor-frame and revision readiness |
| Canonical Career Profile | CareerProfileService, CvVariantService resolution | Explicit source/local wording; never duplicate career CRUD | None | CvBuilderTests, profile/override browser cases |
| Section outline/navigation/hide/order | editor ContentTab, SectionRow, EntryList, useDragReorder | Preserve stable keys, custom sections/presets; accurate reorder feedback and focus; E1–7/13, AC-03 | Existing settings only | cv-content-workflow, cv-responsive-workflow, cvBuilder unit |
| Personal/contact, summary, experience, education, skills, languages, certifications, projects, interests, awards, publications, organisations, references | actual outline and DEFAULT_SECTION_ORDER; master contact | Preserve actual inventory, custom courses/volunteer/additional experience/declaration and arbitrary text | Existing settings; no master deletion | renderer/outline and custom-section tests |
| Adjacent preview, physical pages, fit-to-width | editor, cvPreview.ts, ThemedCvRenderer | Preserve debounce, last-good result and error/retry; improve page navigation; E2/14, M1–4, AC-05 | None | cv-preview-presentation, pagination and PDF oracles |
| Template catalogue / availability / capability filtering | CvTemplateGallery, CvCustomizeTab, cvBuilder.ts | Real sample candidate before explicit Apply, cancel with no writes, stale-result exclusion; E8–12, AC-02 | Only confirmed visual patch; one undo step | gallery/controls and candidate dialog tests |
| Typography/colours/spacing/page/contact/section settings | CvCustomizeTab, renderer normalisation | Preserve safe ranges and null inheritance; app theme remains separate | No migration | cv-document-controls, CV settings/PDF corpus |
| Undo/redo and saved settings history | editor, CvVariantService | Explain that settings resolve today's master; frozen package is separate; AC-10 | None | editor/history and submitted-package tests |
| CV optimistic save, conflict/recovery/export | editor, CvVariantService, shared EF Version | Preserve RD21 queue/ack semantics, fail before stale export | No token change | CvRevisionReadinessTests, rd21 companions, MariaDB |
| Application CV attachment/tailoring/letter | ApplicationAssets, applicationWorkspace.ts, ApplicationAssetsService | Keep job ownership and explicit Save/Discard; clarify pair; L2–9, AC-06–09 | Versioned letter extensions only after all writers safe | assets, cross-writer, owner/concurrency tests |
| Dedicated letter save/restore | shared application Version + CoverLetterVersions | Reuse RD21 token; original new-counter proposal superseded | Preserve null/clear and atomic history | ApplicationAssetsTests and relational provider |
| Generic/create/draft letter writes | JobApplicationsController | Route intended mutations through shared history staging before presentation | Add missing history without independent save/commit | all callers/DTOs/imports must be inventoried before change |
| Frozen submitted packages, exports/backups | SubmittedApplicationPackageService, AccountDataExportService, Backup/Export controllers | Preserve bytes and old text-only snapshots; designed-letter capture requires additive compatible contract | Never rewrite old records | submitted-package, documents, backup/export tests |
| AI tools/proposals/eligibility | existing CV and application AI services | Preserve Apply/Reject and consent; paid FlowCV results unobserved | None | existing AI contracts; semantics remain deferred |
| EN/Bokmål, light/dark, compact mode | I18nProvider/translations, MUI tokens, editor media query | Use same owners, no duplicate active mobile editor; AC-11/12 | None | unit, axe, viewport/theme/locale browser matrix; human cards separate |
The broader 57-group Phase 9 inventory retains 56 PARTIAL and C11 DEFERRED; this feature cannot promote unrelated groups. Research controls not supported by current Jobjakt are not silently added as new models.