Harden RC9 UX and performance states
This commit is contained in:
@@ -0,0 +1,49 @@
|
||||
# UX and Performance Budgets
|
||||
|
||||
These budgets apply to the release-candidate map-first flow for Belgium and
|
||||
the Belgian North Sea. They are regression limits, not claims about external
|
||||
provider availability.
|
||||
|
||||
## Interactive budgets
|
||||
|
||||
| Interaction | Budget | Enforcement |
|
||||
| --- | ---: | --- |
|
||||
| persisted coverage resolution | 4 seconds | hook timing, visible warning and RC browser evidence |
|
||||
| cached/persisted map selection analysis | 15 seconds | map timing and visible warning |
|
||||
| initial map workspace readiness | 10 seconds on the release LAN | RC viewport evidence |
|
||||
| local Ollama answer with persisted context | 90 seconds | RC-8 live journey timeout/evidence |
|
||||
| bounded configured-YOLO fixture run | 120 seconds | RC-8 live journey timeout/evidence |
|
||||
|
||||
An on-demand official-source acquisition is intentionally excluded from the
|
||||
15-second cached-selection budget. Its source-specific timeout, transfer and
|
||||
feature limits remain authoritative. The UI must keep showing a running state
|
||||
and a source-specific failure instead of presenting an acquisition as missing
|
||||
or complete.
|
||||
|
||||
## Required states
|
||||
|
||||
The frontend distinguishes:
|
||||
|
||||
- `loading`: project, Area and Dataset state is still being resolved;
|
||||
- `empty`: loading completed and no matching persisted data exists;
|
||||
- `partial`: the persisted coverage matrix contains incomplete regional data;
|
||||
- `error`: the API or provider contract failed;
|
||||
- `ready`: persisted data and metrics are available.
|
||||
|
||||
Definitive `Ontbreekt`/`Niet beschikbaar` wording is forbidden while the
|
||||
workspace is loading. A completed coverage or selection request that exceeds
|
||||
its budget must display the measured duration and budget warning.
|
||||
|
||||
## Reproduction
|
||||
|
||||
```bash
|
||||
npm --prefix frontend run test:unit
|
||||
bash scripts/run_rc9_ux_audit.sh \
|
||||
http://192.168.10.150:1202 \
|
||||
artifacts/rc9-ux-audit
|
||||
```
|
||||
|
||||
The browser audit runs at 390x844, 1366x768 and 2560x1080. It checks body
|
||||
overflow, map width, keyboard tab behavior, skip-link focus, visible control
|
||||
names, delayed bootstrap truthfulness and coverage-budget feedback. Its
|
||||
screenshots and `manifest.json` are runtime evidence and remain outside Git.
|
||||
Reference in New Issue
Block a user