Block a user
Frontend dark mode: popup primitives + page-size select still hardcode light colors; missing theme-color/color-scheme meta
Fixed in 79a6567 (merged as 1d19ddf).
As specified: tooltip/toast/combobox swapped to popover/accent/muted/destructive/success tokens, page-size select → bg-background, toast × →…
Frontend dark mode: popup primitives + page-size select still hardcode light colors; missing theme-color/color-scheme meta
Frontend polish: select placeholder copy, locked-field affordance in edit mode, field-list overflow, narrow-mode sidebar toggle, heading wrap
Frontend UX: FieldsPage selection is not deep-linkable (state-only, inconsistent with vocab/objects routing)
Frontend motion & touch: honor prefers-reduced-motion; contain overscroll in drawer/dialog
Frontend UX: delete-object dialog allows double-submit; login button gives no in-flight feedback
Frontend a11y: focus-visible gaps on sort headers, breadcrumb links, combobox, page-size select; search result count unannounced
Frontend dark mode: popup primitives + page-size select still hardcode light colors; missing theme-color/color-scheme meta
Frontend: render timestamps in the instance timezone (Intl), once there's a display
Frontend: render timestamps in the instance timezone (Intl), once there's a display
Done — merged to main (fe44803).
Added a shared formatTimestamp(value, timeZone, locale) helper (web/src/lib/format-timestamp.ts) that renders a UTC ISO timestamp as date + short time…
Frontend UX: master-detail + sidebar layout has no responsive/small-screen handling
Frontend UX: master-detail + sidebar layout has no responsive/small-screen handling
Remaining half done in merge a0b7dcd — all master/detail screens are now responsive (the sidebar + Objects were already done in 0a88a86).
- Shared
components/detail-drawer.tsx—…
Frontend: bundle vendor-split (221 KB gz, ~29 KB headroom) + fill unit-test gaps
Frontend: bundle vendor-split (221 KB gz, ~29 KB headroom) + fill unit-test gaps
Done in merge 390f689.
Vendor split (vite.config.ts → build.rollupOptions.output.manualChunks): framework deps now split into cache-stable chunks — react (react + react-dom +…