mirror of
https://github.com/olehomelchenko/astrolabe.git
synced 2026-08-08 02:02:33 +00:00
Seat web.dev on the design council; record PWA backfill
This commit is contained in:
@@ -320,6 +320,20 @@ Datasets (⌘/Ctrl+K), or check the dataset name in your spec."_ — instead of
|
||||
must match the actual cause (NN/g #9, GOV.UK error-message). The thrown
|
||||
`DatasetNotFoundError` carries `datasetName` so the surface can name it.
|
||||
|
||||
**Resolved — service-worker update prompt & persistent storage (web.dev seat).** The build
|
||||
uses `registerType: 'prompt'`, so a new service worker waits and never takes over a running
|
||||
session on its own — the app **must** tell the user, or "ask before updating" silently means
|
||||
"never update." `orchestration/pwa.ts` consumes `virtual:pwa-register` and surfaces
|
||||
`onNeedRefresh` as a **durable** (non-auto-dismissing) info toast with a **Reload** action
|
||||
that calls `updateSW()`; `onOfflineReady` is a transient success toast. Separately, browser
|
||||
storage is best-effort and evictable under pressure, which for a local-first workspace is data
|
||||
loss — so we request `navigator.storage.persist()` once at startup
|
||||
(`infrastructure/storage-persist`), feature-detected and silent on denial (Chromium decides
|
||||
automatically; nothing for the user to act on). _(Consulted via /council → web.dev, with the
|
||||
exact API from vite-plugin-pwa/Workbox; see `reference/principles/web-dev.md`. This bullet is
|
||||
the contract; cite it, not the source.) **Known gap:** the manifest ships no icons, so the app
|
||||
is not yet installable — a design-asset task, logged not passed._
|
||||
|
||||
## 6. Motion & accessibility as default
|
||||
|
||||
Not features to add later — the baseline every surface is built on.
|
||||
|
||||
Reference in New Issue
Block a user