5.2 KiB
C: interactive dashboard acceptance
28 October2026. Branch feature/dashboard-interactive-grid, cumulative base aea7c29 includes accepted B, A, CV-QA and CV-UX history. Source checkpoint is the commit containing this report. CONDITIONAL GO for continued development and D entry; production NO-GO.
The dashboard now arranges the actual reports using drag handles and corner resizing on wide containers. A compact visibility catalogue and per-widget keyboard movement/width/height/hide controls replace the former nine-row arrangement form. Save, discard, reset, conflict recovery and navigation guards retain the existing preference owner. Analytics retains its original layout.
Schema2 uses bounded12-column geometry, preserving legacy order/visibility/revision through an in-memory migration. Loading, mounting or crossing a breakpoint never saves. Hidden geometry survives. The existing authenticated, byte-bounded, owner-filtered revision compare-and-swap remains the only persistence path. Old clients cannot downgrade a stored schema2 layout. Visible overlapping rectangles are rejected; hidden positions may overlap. Collision resolution uses the installed grid library, preserving gaps when no collision exists. No database migration or extra preference store.
Evidence
Artifacts are under .artifacts/pre-phase10-ux/; these are independent lanes, not additive totals.
| Lane | Result | Evidence |
|---|---|---|
| Full backend | 1,405 passed, zero failed/skipped | c-backend-02/c-backend.trx |
| Full frontend | 1,019 passed/111 suites before the final extra collision case | c-frontend-full-01.json |
| Final focused frontend | 33 passed/5 suites, including the extra collision case and final implementation | c-focused-final-03.json |
| Real MariaDB12.2.2 | 86 passed, zero failed/skipped; generated resources cleaned | c-mariadb-01/{mariadb.trx,run.json} |
| Dashboard browsers | 12 passed, zero failed/skipped/retries | c-browser-full-03.json |
| Static build/typecheck | Native exits0; final build includes TypeScript | c-build-05.log, c-typecheck-final.log |
| Full lint | Native exit0 | c-lint-final.log |
| Production npm audit | Native exit0, zero advisories | c-npm-production-audit.json |
| Full npm audit | Native exit1, five low dev-tool entries in existing Jest/deepmerge dependencies | c-npm-audit.json |
The full frontend total does not include the subsequently added collision case; do not add overlapping focused reruns to that total. The final integrated regression must rediscover and run the entire resulting suite.
The twelve browser cases retain native report values/actions, fresh browser and logout/login readback, draft/cancel/reset, offline/503 recovery, delayed acknowledgements, two-session conflicts, ordinary/admin/anonymous isolation, legacy hidden flags, all-hidden recovery, actual pointer drag/resize, keyboard focus/status, emulated touch, stored gaps/hidden geometry and zero viewport-induced writes. Reflow covers EN/Bokmål, light/dark, widths320/390/768/1024/1440/1920 across the presentation scenarios; automated axe checks pass in their exercised scopes. The original data and persistence assertions remain. Screenshots/traces are attached to the latest browser results.
Initial RED migration and HTTP cases are retained. Browser failures exposed a real announcement-element horizontal overflow and a resize overlap in the library's no-compaction mode. Both are fixed, with unchanged outer-overflow assertions, a new pure collision regression and actual browser save/readback. The server's rejection prevented persisting the overlap. Earlier failed JSON/log artifacts remain; they are not counted as passing evidence.
All exported JS artifacts increase from3,499,170 to3,572,883 raw bytes, or1,032,319 to1,055,955 individually gzip-compressed bytes: +73,713 raw/+23,636 gzip. c-bundle-final.json measures the complete static artifact set, not a route download or runtime speed. react-grid-layout is pinned2.3.0/MIT; no Jest/deepmerge dependency was changed by its installation. A proposed audit fix downgrading Jest25 was not applied; the five tooling entries remain acceptance debt.
Decisions and limits
- Interactive arrangement, preference compatibility, authenticated persistence and automated responsive/accessibility scope: PASS in the evidence above.
- C development/D readiness: CONDITIONAL GO. Human screen-reader, physical-touch, software-keyboard and subjective usability acceptance remain open. No physical-device or human language acceptance is claimed.
- Full integrated browser/contracts/Python/Docling/security/preservation/PDF lanes: pending the final integration checkpoint; C did not modify parser, Career Profile, CV/letter rendering or their ownership contracts. Existing B PDF/name-oracle/model debt remains open and is not waived.
- Existing local runtime still serves qualified B source3f4db8c; this C checkpoint has not been activated there. Production, main merge and Phase10 cleanup remain NO-GO/not performed.
See implementation contract for architecture, limits and reproduction evidence. Proceed to the administrator processing monitor from this cumulative checkpoint.