5.0 KiB
Phase8 handoff — Dashboard customisation
Status: planning handoff only; Phase8 implementation is not authorized by the Phase7 task. Read the original implementation plan, Phase3 architecture, Phase6 handoff, Phase7 preservation matrix and final P7-12 results before execution.
Retained implementation and limits
Reuse the existing DashboardView report owner, shell/navigation, theme/density tokens, shared forms/confirmation/feedback, English/Bokmål catalogues and current five visibility preferences. Analytics already shares its approved report owner: do not migrate it again or change periods, cohorts, denominators or source links. Administration stays separate. Ordering, resizing, layout persistence and reset/default behaviour are future work; this document does not claim they exist.
P7-12 implemented-scope acceptance is CONDITIONAL GO; the fresh full regression passes. See final acceptance. Phase8 readiness remains conditional on the mandatory dependencies below. No current provider/AI/production qualification is inferred.
Proposed bounded execution order
| Boundary | Dependencies and preserved contracts | Required proof and acceptance |
|---|---|---|
| Inventory and persistence decision | Inspect current dashboard preference owner and historical save reliability before adding fields. Preserve S03/S04/S05/E09 and existing visibility defaults. Resolve supported widget sizes and breakpoint behaviour against actual widgets, not an invented grid framework | Record actual GET/PUT payloads, account ownership, old-client/old-record defaults, failed save, reload and stale-session behaviour. Any schema/API change requires explicit compatibility/data-preservation justification and review; no destructive migration |
| Visibility and ordering | Reuse current widget IDs and visibility controls; preserve source links, filters and current metrics. Choose the smallest supported layout model | Meaningful regression first; keyboard move alternatives with explicit names, focus retention and live announcements; EN/NB, light/dark, mobile reflow; persisted order survives reload and account switch never exposes another user's layout. Commit independently |
| Supported resizing | Only widgets whose contents remain readable may resize; no document-renderer or chart-data rewrite. Reuse established responsive containers | Test supported min/max sizes, keyboard alternatives to drag, zoom/reflow, charts, touch and scroll. Small screens retain a usable linear order with reachable controls; no hover-only actions. If no widget supports useful resizing, document that decision instead of adding a dependency |
| Reset/defaults | Explicit user action through existing confirmation infrastructure; respect current section saving and preserve unrelated preference drafts | Exact reset payload/defaults, cancellation/no-write, failure/retry without duplicate writes, reload, locale/theme and permission tests. No global preferences overwrite |
| Integrated acceptance | All preceding source pushed with finite evidence; current release baseline refreshed | Fresh affected frontend/backend/native journeys, tenant/auth and preference concurrency regressions, responsive/theme/locale/axe triage plus real human/device requirements. Record exact commits/remote identity and separate feature/release decisions |
Commit boundaries follow the rows above, with any independently necessary reliability repair separate. Each boundary must record the baseline, affected PRES references, negative/recovery/readback evidence, test-count changes, screenshots actually inspected and normal push verification. Do not accumulate a single large implementation commit.
Mandatory qualifications and excluded scope
Investigate the historical Dashboard preference-save failure before changing the same persistence owner; a successful rerun does not diagnose it. Preserve newer drafts during acknowledgements, account/session disposal and server authorization. Shared accessibility barriers demonstrated in the new controls must be fixed before propagation. Human screen-reader, physical touch/software keyboard and real enlargement acceptance remain required where unavailable in automation.
Production F04, complete backup/isolated restore, effective configuration/provider/schema/secrets verification, tested rollback and deployed smoke identity remain release gates. A separate owner authorization does not erase missing readiness evidence. P5-13 remains withheld pending exact runtime/model qualification,366calls and independent human semantic review plus its review interface. Model installation or switching does not satisfy that contract. P5-05, followMode, large Board scaling and existing backend idempotency/concurrency debt remain separately owned.
Do not introduce new metrics, goals, tasks, billing, provider grants, AI review, administrator aggregation or a dashboard framework as incidental customisation. Phase9 QA and Phase10 removal of proven-obsolete code remain subsequent phases.