docs(ui): record Career checkpoint push and CV migration entry

This commit is contained in:
cesnimda
2026-10-12 19:34:57 +02:00
parent 5d6e32358c
commit 5680c0031f
10 changed files with 421 additions and 21 deletions
+12
View File
@@ -0,0 +1,12 @@
# P7-04 — CV library and public entry
**Entry CONDITIONAL GO; implementation and acceptance PENDING.** Follow the exact [approved handoff](../../phase-6/p6-05/PHASE7_HANDOFF.md#migration-order-and-commit-boundaries): one CV library commit, then one public-entry commit. Reuse the existing gallery, editor, confirmation/prompt, theme and feedback owners.
[Entry evidence](evidence/entry.json) records the actual clean P7-03 normal push5d6e3235, direct development equality/main unchanged and eight exact committed Git-blob baselines. P7-03 affected76/6/native35/backend98/seeder24 and static checks pass with finite visual/axe/manual qualifications. Latest whole frontend573/89/backend1,033/sidecar49 remain inherited;648/93 frontend,233 ordinary browser and1,034 backend are derived expectations. P7-12 must run fresh integrated regression.
| Boundary | Findings and bounded work | Required exit evidence |
|---|---|---|
| Library | Existing list has no visible loading/Retry; read error is not cleared and locale changes repeat GET. Header/cards use legacy presentation. Create permits field/template changes while pending; other actions lack pending guards. Dialog focus after menu closure is a risk to reproduce. Preserve draft, API/version/settings/save/association semantics | Meaningful read/pending/recovery regressions; create/duplicate/rename/delete owned persistence and permission denial; existing gallery consumers/locked themes; keyboard/menu/dialog focus; EN/Bokmål/light/dark finite mobile/tablet/desktop evidence |
| Public entry | Previous slug HTML/error remain during the next request; hard-coded English/theme styles and no semantic page heading. Retain late-completion guard, white print canvas and existing sandbox | Slug isolation/error reset/late request/Retry; missing/revoked links; anonymous public HTML/PDF versus private numeric IDs; narrow responsive chrome, unchanged geometry and prescribed fidelity when output/preview is touched |
PRES-C05/C12/E09 and affected revision/source/export contracts remain binding; all57 whole-group statuses stay56 PARTIAL/C11 DEFERRED at entry. Rename retains latest settings and expectedVersion; publication/revocation stays with the editor/server owner. No second history/renderer/editor, new lifecycle/schema, automatic model/provider action or Phase8 work. Human screen-reader/device/zoom/production font/photo/print evidence remains pending. Production remains NO-GO; main is unchanged.
@@ -0,0 +1,104 @@
{
"schemaVersion": 1,
"checkpoint": "p7-04",
"status": "PASS",
"checkedUtc": "2026-10-12T17:34:56.021849+00:00",
"commands": [
{
"name": "secret-scan",
"command": [
"rtk",
"proxy",
"C:\\Users\\Connor\\AppData\\Local\\Programs\\Python\\Python312\\python.exe",
"-X",
"utf8",
"scripts/supply-chain.py",
"scan-secrets"
],
"startedUtc": "2026-10-12T17:34:52.961781+00:00",
"finishedUtc": "2026-10-12T17:34:55.390804+00:00",
"exitCode": 0,
"log": ".artifacts/phase7/current/static/20261012T173452Z/secret-scan.log",
"logSha256Raw": "c5a88d5ebdc042adba125c1eaacbe44f9f4a5c19898c0f195573c00d511aa28d"
},
{
"name": "working-whitespace",
"command": [
"rtk",
"proxy",
"git",
"diff",
"--check"
],
"startedUtc": "2026-10-12T17:34:55.391307+00:00",
"finishedUtc": "2026-10-12T17:34:55.475299+00:00",
"exitCode": 0,
"log": ".artifacts/phase7/current/static/20261012T173452Z/working-whitespace.log",
"logSha256Raw": "d2993bc68ad9a63f711c8f5473155e2ba00fdcd461220cc3849185f2f9ad93e6"
},
{
"name": "staged-whitespace",
"command": [
"rtk",
"proxy",
"git",
"diff",
"--cached",
"--check"
],
"startedUtc": "2026-10-12T17:34:55.475299+00:00",
"finishedUtc": "2026-10-12T17:34:55.558000+00:00",
"exitCode": 0,
"log": ".artifacts/phase7/current/static/20261012T173452Z/staged-whitespace.log",
"logSha256Raw": "d2993bc68ad9a63f711c8f5473155e2ba00fdcd461220cc3849185f2f9ad93e6"
},
{
"name": "phase7-whitespace",
"command": [
"rtk",
"proxy",
"git",
"diff",
"--check",
"b5319981ad3d1bd635daff861453d23c0de5320b"
],
"startedUtc": "2026-10-12T17:34:55.558513+00:00",
"finishedUtc": "2026-10-12T17:34:55.679896+00:00",
"exitCode": 0,
"log": ".artifacts/phase7/current/static/20261012T173452Z/phase7-whitespace.log",
"logSha256Raw": "d2993bc68ad9a63f711c8f5473155e2ba00fdcd461220cc3849185f2f9ad93e6"
}
],
"untrackedSecretScan": {
"files": 0,
"findings": 0
},
"documentation": {
"files": 11,
"relativeLinks": 400,
"errors": []
},
"preservation": {
"groups": 57,
"statuses": {
"PARTIAL": 56,
"PASS": 0,
"FAIL": 0,
"DEFERRED": 1
},
"originalRoutesPreserved": true,
"currentConcreteRoutes": 32
},
"production": {
"main": "27657f31131cd95d42f0e1290853ec9c9b3959a4",
"originMain": "27657f31131cd95d42f0e1290853ec9c9b3959a4",
"status": "NO-GO",
"qualification": "Local fetched refs; direct push observation recorded separately."
},
"hashPolicy": "Portable JSON UTF8 LF; raw log hashes measure exact saved bytes.",
"limits": [
"Pattern scanner skips binary and files over2MiB; not historical Git/production secrets.",
"Local links check target existence, not URL/heading anchors.",
"Static evidence is not runtime/manual/device/provider/production acceptance."
]
}
@@ -0,0 +1,160 @@
{
"checkpoint": "P7-04",
"status": "ENTRY_CONDITIONAL_GO; IMPLEMENTATION_PENDING",
"authority": "docs/redesign/phase-6/p6-05/PHASE7_HANDOFF.md",
"receipt": {
"observedUtc": "2026-10-12T17:28:54.912933+00:00",
"branch": "codex/ui-redesign-phase4",
"head": "5d6e32358c79cc8cfe505013fc79995940079767",
"originDevelopment": "5d6e32358c79cc8cfe505013fc79995940079767",
"liveDevelopment": "5d6e32358c79cc8cfe505013fc79995940079767",
"main": "27657f31131cd95d42f0e1290853ec9c9b3959a4",
"originMain": "27657f31131cd95d42f0e1290853ec9c9b3959a4",
"liveMain": "27657f31131cd95d42f0e1290853ec9c9b3959a4",
"workingTreeClean": true,
"pendingPaths": [],
"commands": [
{
"command": [
"rtk",
"proxy",
"git",
"branch",
"--show-current"
],
"exitCode": 0,
"stdout": "codex/ui-redesign-phase4\n",
"stderr": "[rtk] /!\\ No hook installed \u2014 run `rtk init -g` for automatic token savings\n"
},
{
"command": [
"rtk",
"proxy",
"git",
"rev-parse",
"HEAD"
],
"exitCode": 0,
"stdout": "5d6e32358c79cc8cfe505013fc79995940079767\n",
"stderr": "[rtk] /!\\ No hook installed \u2014 run `rtk init -g` for automatic token savings\n"
},
{
"command": [
"rtk",
"proxy",
"git",
"rev-parse",
"origin/codex/ui-redesign-phase4"
],
"exitCode": 0,
"stdout": "5d6e32358c79cc8cfe505013fc79995940079767\n",
"stderr": "[rtk] /!\\ No hook installed \u2014 run `rtk init -g` for automatic token savings\n"
},
{
"command": [
"rtk",
"proxy",
"git",
"rev-parse",
"main"
],
"exitCode": 0,
"stdout": "27657f31131cd95d42f0e1290853ec9c9b3959a4\n",
"stderr": "[rtk] /!\\ No hook installed \u2014 run `rtk init -g` for automatic token savings\n"
},
{
"command": [
"rtk",
"proxy",
"git",
"rev-parse",
"origin/main"
],
"exitCode": 0,
"stdout": "27657f31131cd95d42f0e1290853ec9c9b3959a4\n",
"stderr": "[rtk] /!\\ No hook installed \u2014 run `rtk init -g` for automatic token savings\n"
},
{
"command": [
"rtk",
"proxy",
"git",
"ls-remote",
"origin",
"refs/heads/codex/ui-redesign-phase4",
"refs/heads/main"
],
"exitCode": 0,
"stdout": "5d6e32358c79cc8cfe505013fc79995940079767\trefs/heads/codex/ui-redesign-phase4\n27657f31131cd95d42f0e1290853ec9c9b3959a4\trefs/heads/main\n",
"stderr": "[rtk] /!\\ No hook installed \u2014 run `rtk init -g` for automatic token savings\n"
},
{
"command": [
"rtk",
"proxy",
"git",
"status",
"--porcelain=v1"
],
"exitCode": 0,
"stdout": "",
"stderr": "[rtk] /!\\ No hook installed \u2014 run `rtk init -g` for automatic token savings\n"
}
]
},
"sources": [
{
"path": "job-tracker-ui/src/views/CvBuilderPage.tsx",
"gitBlobSha256": "962d6c2fb9de01ab6c0fe6072fc51bcd9e229b6d9907ab94549b9f2863b71291",
"bytes": 11134
},
{
"path": "job-tracker-ui/src/views/PublicCvPage.tsx",
"gitBlobSha256": "9b32e53f92359052e69583a90526fdebce2f2df02c80369d0d9e6748ad1a6210",
"bytes": 3574
},
{
"path": "job-tracker-ui/src/components/CvTemplateGallery.tsx",
"gitBlobSha256": "efb8131679bb19e9a6c855dd8632738fb24b9d6dd3a22dcf445e5dd70b1ae0a1",
"bytes": 4204
},
{
"path": "job-tracker-ui/src/components/cv/CvCustomizeTab.tsx",
"gitBlobSha256": "be5463aca9ecf68b7c38daaccf5c661882bc174a66cae5fe0368ca228d48ac1e",
"bytes": 15373
},
{
"path": "job-tracker-ui/src/cv-builder-page.test.tsx",
"gitBlobSha256": "de6c3173a74259c800294f03355a1f3be973f7f001efea2e051735fb5b3f6a7f",
"bytes": 5895
},
{
"path": "job-tracker-ui/src/public-cv-page.test.tsx",
"gitBlobSha256": "f9f96d2cea8689ce795f998553db7741f4672e32c542d9b1b920be3b893fad1c",
"bytes": 1581
},
{
"path": "job-tracker-ui/src/cv-document-controls.test.tsx",
"gitBlobSha256": "8dd279a6328c2fc57b0c35b3179ee53b8b6a90c819d31d981ae535fdc67ad284",
"bytes": 9921
},
{
"path": "job-tracker-ui/src/i18n/translations.ts",
"gitBlobSha256": "b1a1dc86dc71b453d41d91247a9d8cab9cef0f37d3da94e686c3f723d4da39f8",
"bytes": 313601
}
],
"inherited": {
"fullFrontend": "573/89",
"derivedFrontend": "648/93",
"derivedBrowser": 233,
"fullBackend": 1033,
"derivedBackend": 1034,
"sidecar": 49
},
"qualifications": [
"P7-03 scoped acceptance only; no full regression performed at entry.",
"RD21, human/device/provider/output and production gates retained.",
"Library then public entry; do not alter renderer/schema/models/production."
]
}