Upgrade async GPU analysis and workbench UX
This commit is contained in:
@@ -12867,3 +12867,71 @@ Open:
|
||||
- Browser emulation covers responsive layout and interaction; certification on
|
||||
physical touch hardware and with a screen reader remains a separate human QA
|
||||
activity.
|
||||
|
||||
## 2026-08-23 - Sol Ultra product-, runtime- en betrouwbaarheidsronde
|
||||
|
||||
### Delivered
|
||||
|
||||
- Split the public landing foundation from the lazy workbench and MapLibre
|
||||
styles. The initial production CSS payload dropped from roughly 219 kB to
|
||||
38.38 kB while the authenticated workbench keeps its complete styling.
|
||||
- Extended the reproducible browser audit to cover the landing and workbench at
|
||||
390 x 844, 1366 x 768 and 2560 x 1080, including mobile navigation,
|
||||
keyboard tabs, loading state, advanced map flow and every guest workspace.
|
||||
- Corrected the smartphone shell hierarchy: topbar, guest banner and page
|
||||
heading no longer overlap, and the live Selecteer/Bronnen/Verwerk/Controleer
|
||||
rail now sits below the map actions instead of behind the fixed navigation.
|
||||
- Kept full workspace titles for headings and accessible names while shortening
|
||||
the two mobile navigation labels to `AI-beeld` and `Export`; the browser gate
|
||||
now rejects any visible sidebar label whose text box is clipped.
|
||||
- Made map-analysis failures outrank empty states and added an explicit retry;
|
||||
new selections clear stale coverage immediately.
|
||||
- Replaced synchronous browser inference with governed async detection and
|
||||
segmentation queues, project-bound job polling and persisted-run
|
||||
reconciliation. Detection has NVIDIA preflight; segmentation now fails
|
||||
closed under the same server CUDA contract. Zero-result runs are communicated
|
||||
without claiming that the AOI is object-free.
|
||||
- Bound guest detection, segmentation and export reads/writes to the signed
|
||||
demo project at the resource level. Matching query parameters can no longer
|
||||
authorize another project's run, dataset, result or download.
|
||||
- Closed stale-response races in temporal comparison and the local GeoAI
|
||||
assistant, plus detection/segmentation run, result and QA flows across project
|
||||
switches. Previously visited workspaces no longer reload together after every
|
||||
navigation change.
|
||||
- Added keyboard-complete pipeline tabs and React-driven model-dialog state,
|
||||
initial focus and trigger-focus restoration. Landing scrolling now respects
|
||||
`prefers-reduced-motion`.
|
||||
- Hardened outbound acquisition redirects before the redirected request is
|
||||
opened, including origin/port and embedded-credential rejection, and fixed
|
||||
bounded pagination for segmentation result lists.
|
||||
- Fixed segmentation readiness and section status: configured production
|
||||
models now require a real tile manifest before queueing, fixture mode is
|
||||
visibly test-only, and queued/running NVIDIA work has an explicit live state.
|
||||
- Localised known model registrations and availability states in the Dutch UI;
|
||||
raw English backend placeholder copy no longer leaks into the primary model
|
||||
selector or readiness guidance.
|
||||
|
||||
### Verification
|
||||
|
||||
- Frontend TypeScript check and production build passed.
|
||||
- Complete frontend suite: 36 files / 151 tests passed.
|
||||
- Relevant backend release set: 121 tests passed, covering async analysis jobs,
|
||||
atomic claims, guest/resource isolation, redirect policy, segmentation
|
||||
pagination, NVIDIA runtime enforcement and current AI-lab contracts.
|
||||
- Ruff passed over every changed backend Python module and test.
|
||||
- Browser evidence passed across three landing and three authenticated
|
||||
workbench viewports with zero horizontal overflow, console errors or failed
|
||||
API requests in `.codex-artifacts/sol-ultra-final-l/manifest.json`; focused
|
||||
AI-workspace and segmentation screenshots are stored beside it.
|
||||
- Production build passed. Initial landing CSS remains 38.38 kB (8.22 kB
|
||||
gzip); the lazy workbench JS is 479.76 kB (129.25 kB gzip) and MapLibre stays
|
||||
isolated in its own lazy chunk.
|
||||
|
||||
### Boundaries
|
||||
|
||||
- This pass improves runtime correctness and presentation; it does not invent a
|
||||
new accuracy claim or promote a model checkpoint. Existing governed model
|
||||
evidence and regional release gates remain authoritative.
|
||||
- Physical touch-device and screen-reader certification remain human QA. No
|
||||
commit or deployment was performed because the active execution brief
|
||||
explicitly forbids committing unless requested.
|
||||
|
||||
Reference in New Issue
Block a user