style(ui): flatten activity and offer comparison sections

61 selected tests and build/lint pass. Wider rendered qualification remains in progress; this local checkpoint does not establish visual acceptance.
This commit is contained in:
cesnimda
2026-11-04 00:41:27 +01:00
parent 2218659ecf
commit 69621788ee
43 changed files with 80 additions and 11 deletions
@@ -12,6 +12,10 @@ Owner correction: 3 November 2026. This register extends IM10 and the original 3
| V06 | Remaining routes | Whole-application modernisation has not received current route-by-route visual review | OPEN; all 34 routes explicitly tracked in ROUTE_COVERAGE.json | Review actual screens against A3 and resolve material differences; do not infer completion from shared styles |
| V07 | Connected workflows | Existing accepted journeys predate this visual correction | OPEN | Discovery→review→track; CV create/import→edit→preview→export; application→status→follow-up; Career Profile→document reuse; desktop/mobile |
| V08 | Final acceptance | Automated checks cannot establish owner visual approval or human/device/native-language accessibility | OPEN | Consolidated final visual review and accurately recorded outstanding qualifications |
| V09 | Secondary views | Duplicate Offer Comparison heading and Operations section card around task cards | Implemented bounded correction; 61 component tests passed; 36-configuration successor matrix in progress | Inspect successor phone/tablet/desktop captures and record full result before qualification |
| V10 | Account | Continuous account navigation/profile/password sections retain full surrounding surface cards | CONFIRMED by source plus accepted IM09 account capture; relevant ProfilePage/security/session/theme sources unchanged from773c9431; current shared shell differs and is qualified separately | Review and flatten continuous sections in next eligible account package, preserving draft/jump/security/session/credential boundaries; fresh affected rendered qualification |
| V11 | Offer localisation | Literal date-only values are formatted through local-time Date conversion | REPRODUCED for supported string fixture input: 2026-12-01 formats as12/1/2026 in Europe/Oslo and11/30/2026 in America/Los_Angeles. Actual API model also permits timestamp values, whose precision/timezone must not be guessed | Next bounded fix must preserve literal calendar dates while retaining existing local formatting for genuine timestamps; require timezone regression proof. No claim that deployed API records use date-only serialization |
| V12 | Applications | Current nine-width capture set still shows a collection border around mobile job cards and a large outlined application-detail header; passing axe does not establish A3 visual parity | CONFIRMED by actual `evidence/applications/table-en-light-320.png` and `detail-en-light-1440.png`; full36 journey/144 scan matrix passes functional/accessibility scope | Next core-workflow visual package: flatten collection/header hierarchy and improve density, retain column preferences, selection/bulk actions, every action, query/return state, revisions and right-side context. Compare approved B1/A3 before changing interactions |
The owner-approved design foundation remains original A1 dashboard, D1 visual system, B1 tracking, editor left / preview right, application context right, desktop sidebar and hybrid mobile navigation. No controls, imports, revisions, permissions or provider rights may be removed to obtain visual simplicity.
@@ -0,0 +1,16 @@
# Secondary route visual review — in progress
4 November 2026. Runtime starts at published/verified `2218659ecf692e8e377dd33a9ce6415b01e43032`. The initial visual run was deliberately interrupted after 35 baseline captures when material discrepancies were identified. These images are observations, not a complete passing matrix; see `evidence/secondary/BEFORE_INTERRUPTED.json`.
| Route | Actual phone review | Implementation / preservation |
|---|---|---|
| /companies | One card per company, relationship actions retained; no outer card around the collection | Retain meaningful company object boundary; desktop table and relationship paths remain |
| /offers | Page heading repeated below the shell heading | Removed redundant local heading; retained explanation, All Offers action, named results region, unknown facts and individual offer objects; object headings now h2 under page h1 |
| /operations | Open task cards were enclosed within another section card | Removed outer section surfaces, retaining named sections, individual notification/task objects, progress, permission-dependent actions, polling and focus/error/committed-write protections |
| /analytics | Independent chart/widget surfaces and explicit period/source explanations | Retain distinct data objects; do not remove necessary scope qualifications to save space or imply historical conversion |
| /trash | Existing filters and selection/pagination within results boundary; no additional nested collection card | Empty fixture only; real restore/delete and populated selection remain separately qualified |
| /cv/:slug | Public document route owns its paper and download link | Retain document boundary; no app sidebar/identity fetch introduced; synthetic preview is not physical PDF or deployed anonymous-access acceptance |
PASSED:61 selected component tests/five suites, export build and full lint after bounded Offer Comparison / Operations changes. The 36-configuration successor run writes to `evidence/secondary-after` and is **IN PROGRESS**. Do not claim216 passing captures until its final report succeeds. Source census and independent source review must be reconciled with the successor before publication.
Remaining screenshots and desktop/tablet layouts require inspection. These six routes do not cover all 34 routes or their loading/error/populated variants. Application Add Job/table/board/detail visual matrix is prepared as an opt-in extension of the existing verifier. Its **one-configuration pilot passed** four scans/captures and the controlled search→board→precise status→detail/context→return journey plus Add Job open/Escape and three alias URL checks, with one intercepted fixture status write. The complete36-configuration matrix remains **NOT RUN** until recorded otherwise. A pilot is not full qualification. No new application provider, model, migration or live action is included.
File diff suppressed because one or more lines are too long
@@ -0,0 +1,46 @@
{
"status": "INTERRUPTED",
"runtimeCommit": "2218659ecf692e8e377dd33a9ce6415b01e43032",
"reason": "Material duplicate Offer Comparison heading and nested Operations surfaces reproduced. Baseline run interrupted before unnecessary full matrix; implement corrections then qualify successor.",
"captures": [
"analytics-en-dark-320.png",
"analytics-en-dark-360.png",
"analytics-en-light-320.png",
"analytics-en-light-360.png",
"analytics-nb-dark-320.png",
"analytics-nb-light-320.png",
"companies-en-dark-320.png",
"companies-en-dark-360.png",
"companies-en-light-320.png",
"companies-en-light-360.png",
"companies-nb-dark-320.png",
"companies-nb-light-320.png",
"offers-en-dark-320.png",
"offers-en-dark-360.png",
"offers-en-light-320.png",
"offers-en-light-360.png",
"offers-nb-dark-320.png",
"offers-nb-light-320.png",
"operations-en-dark-320.png",
"operations-en-dark-360.png",
"operations-en-light-320.png",
"operations-en-light-360.png",
"operations-nb-dark-320.png",
"operations-nb-light-320.png",
"public-cv-en-dark-320.png",
"public-cv-en-light-320.png",
"public-cv-en-light-360.png",
"public-cv-nb-dark-320.png",
"public-cv-nb-light-320.png",
"trash-empty-en-dark-320.png",
"trash-empty-en-dark-360.png",
"trash-empty-en-light-320.png",
"trash-empty-en-light-360.png",
"trash-empty-nb-dark-320.png",
"trash-empty-nb-light-320.png"
],
"limits": [
"Saved PNGs are visual baseline observations, not a complete passing regression or 216-state qualification.",
"Ctrl-C ended the owned browser verifier. No app service or provider was stopped."
]
}
Binary file not shown.

After

Width:  |  Height:  |  Size: 41 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 43 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 41 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 42 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 41 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 41 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 19 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 19 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 19 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 19 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 19 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 18 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 46 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 47 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 46 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 47 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 44 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 44 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 32 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 33 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 32 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 33 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 32 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 32 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 13 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 13 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 14 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 13 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 14 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 25 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 25 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 24 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 25 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 26 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 25 KiB