Block a user
Backend + frontend: edit/delete field definitions
Done in 873efe1 (merged to main). Added audited PATCH/DELETE /api/admin/field-definitions/{key}. key/data_type/binding are immutable (structurally absent from the update DTO); only…
Backend: edit/delete endpoints for vocabularies, terms, and authorities
Done in 873efe1 (merged to main). Added audited PATCH/DELETE for terms, vocabularies (rename), and authorities. Referenced-entity deletes are blocked with 409 + count (JSONB scan of…
Backend: edit/delete endpoints for vocabularies, terms, and authorities
Daemon refuses to start after unclean shutdown: stale pidfile is treated as a running daemon
Daemon refuses to start after unclean shutdown: stale pidfile is treated as a running daemon
Pin the pnpm version for reproducible web installs
localized_text edit can leave a stale other-language sub-value
set_object_fields 422 should carry field-level detail (so the UI can highlight the offending field)
OpenAPI: type SearchHitView.visibility as the Visibility enum (consistency with #29)
Frontend: render timestamps in the instance timezone (Intl), once there's a display
localized_text edit can leave a stale other-language sub-value
Per-account UI language preference (cross-device persistence)