2025-06-11 - 2026-06-11

Overview

0 Active Pull Requests
73 Active Issues
Excluding merges, 1 author has pushed 152 commits to main and 369 commits to all branches. On main, 206 files have changed and there have been 43651 additions and 642 deletions.

56 Issues closed from 1 user

Closed #73 Frontend polish: select placeholder copy, locked-field affordance in edit mode, field-list overflow, narrow-mode sidebar toggle, heading wrap 2026-06-10 11:47:43 +00:00

Closed #72 Frontend UX: FieldsPage selection is not deep-linkable (state-only, inconsistent with vocab/objects routing) 2026-06-10 11:44:24 +00:00

Closed #71 Frontend motion & touch: honor prefers-reduced-motion; contain overscroll in drawer/dialog 2026-06-10 11:38:58 +00:00

Closed #70 Frontend UX: delete-object dialog allows double-submit; login button gives no in-flight feedback 2026-06-10 11:35:49 +00:00

Closed #69 Frontend a11y: focus-visible gaps on sort headers, breadcrumb links, combobox, page-size select; search result count unannounced 2026-06-10 11:31:30 +00:00

Closed #68 Frontend dark mode: popup primitives + page-size select still hardcode light colors; missing theme-color/color-scheme meta 2026-06-10 11:26:33 +00:00

Closed #42 Frontend: render timestamps in the instance timezone (Intl), once there's a display 2026-06-09 19:15:13 +00:00

Closed #58 Frontend UX: master-detail + sidebar layout has no responsive/small-screen handling 2026-06-09 13:23:06 +00:00

Closed #67 Frontend: bundle vendor-split (221 KB gz, ~29 KB headroom) + fill unit-test gaps 2026-06-09 11:49:05 +00:00

Closed #66 Frontend design-kit consistency: dead Card, duplicated segmented-control + row/icon recipes, focusRing/useLang drift 2026-06-08 22:02:50 +00:00

Closed #65 Frontend: split queries.ts by domain, extract error classes, add query-key factory; decide search-invalidation 2026-06-08 20:26:53 +00:00

Closed #64 Frontend refactor: unify the duplicated Vocabulary + Authority CRUD surfaces 2026-06-08 18:22:56 +00:00

Closed #62 Frontend a11y: label-id collision, invalid table row semantics, unnamed drawer, unannounced table states 2026-06-08 17:48:10 +00:00

Closed #63 Frontend data layer: silent update failures + dead/unreachable mutation error strings 2026-06-08 16:41:57 +00:00

Closed #48 Frontend UX: session-expiry handling loses in-progress work; auth feedback gaps 2026-06-08 13:13:19 +00:00

Closed #61 Frontend UX: search result rows lack type/date meta; single thin facet; "estimated" count not flagged 2026-06-08 11:49:45 +00:00

Closed #52 Frontend a11y: focus-visible on custom controls, route focus management, skip link, tablist/lang semantics 2026-06-08 07:54:32 +00:00

Closed #60 Frontend i18n: enforce en/sv key parity with a test 2026-06-08 07:31:29 +00:00

Closed #50 Frontend UX: reference-data screens are inconsistent and hard to scan (vocab / authorities / fields) 2026-06-08 07:10:48 +00:00

Closed #53 Frontend UX: standardize loading states on Skeleton (retire "…" and empty role=status divs) 2026-06-08 04:58:47 +00:00

Closed #51 Frontend UX: replace raw <select> elements with a token-styled Select / combobox 2026-06-08 04:10:01 +00:00

Closed #46 Frontend UX: object form robustness — double-submit, no dirty guard, inconsistent partial-failure recovery 2026-06-07 21:41:41 +00:00

Closed #54 Frontend UX: app header is empty — add wayfinding (section/breadcrumb, user, app name, global search) 2026-06-07 17:45:43 +00:00

Closed #57 Frontend UX: typography hierarchy + a real page <h1> per route + per-route document.title 2026-06-07 15:45:09 +00:00

Closed #59 Frontend: dark mode is half-built dead code — wire a theme toggle or remove it 2026-06-07 14:46:18 +00:00

Closed #55 Frontend bug: LabelEditor silently drops other-language labels when editing 2026-06-07 12:41:37 +00:00

Closed #49 Frontend design system: feature screens bypass the OKLCH tokens + ui/* kit (inconsistent visual language) 2026-06-07 12:28:11 +00:00

Closed #47 Frontend UX: add toast notifications — mutations currently succeed silently 2026-06-07 11:51:58 +00:00

Closed #45 Frontend UX: object detail renders term/authority/localized values as raw JSON 2026-06-07 11:51:57 +00:00

Closed #44 Frontend UX: object list should be a scannable, sortable, filterable table 2026-06-07 07:50:22 +00:00

Closed #27 Searchable term/authority picker for large vocabularies (combobox + server-side search) 2026-06-06 10:03:48 +00:00

Closed #14 Wire the Spectrum cataloguing seed into runtime 2026-06-06 05:18:42 +00:00

Closed #36 Backend + frontend: edit/delete field definitions 2026-06-05 20:30:34 +00:00

Closed #30 Backend: edit/delete endpoints for vocabularies, terms, and authorities 2026-06-05 20:30:13 +00:00

Closed #26 Pin the pnpm version for reproducible web installs 2026-06-05 13:54:23 +00:00

Closed #28 set_object_fields 422 should carry field-level detail (so the UI can highlight the offending field) 2026-06-05 13:54:23 +00:00

Closed #41 localized_text edit can leave a stale other-language sub-value 2026-06-05 13:54:23 +00:00

Closed #38 OpenAPI: type SearchHitView.visibility as the Visibility enum (consistency with #29) 2026-06-05 13:54:22 +00:00

Closed #21 Audit vocabulary/term/authority creation (admin writes currently unaudited) 2026-06-04 20:10:21 +00:00

Closed #1 Add graceful shutdown to the HTTP server 2026-06-04 20:10:20 +00:00

Closed #2 Make database connection pool size configurable 2026-06-04 20:10:20 +00:00

Closed #24 OpenAPI: type object fields as an open map, not an empty object 2026-06-04 18:26:42 +00:00

Closed #29 Type enum-valued fields (visibility, data_type, authority kind) as enums in OpenAPI 2026-06-04 18:26:42 +00:00

Closed #3 Decide OpenAPI schema strategy for domain newtypes (keep domain I/O-free) 2026-06-04 18:05:16 +00:00

Closed #37 Test gaps: field-definition 403 (backend) + authority-kind reveal (frontend) 2026-06-04 15:40:36 +00:00

Closed #31 Frontend: terms & authorities lists silently swallow load failures (no loading/error state) 2026-06-04 15:40:22 +00:00

Closed #32 Frontend M4 polish: ARIA tab semantics for authority kind tabs + remove unused i18n keys 2026-06-04 15:40:22 +00:00

Closed #4 Foundation follow-up cleanups 2026-06-04 15:40:21 +00:00

Closed #9 Keep authority.kind CHECK in sync with the AuthorityKind enum 2026-06-04 15:40:21 +00:00

Closed #34 Frontend: distinguish "search unavailable" (503) from a generic search error 2026-06-04 15:40:21 +00:00

Closed #18 Log server errors on the public API 500 paths (wire tracing in the api crate) 2026-06-04 15:40:16 +00:00

Closed #22 Return 404 (not 500) when adding a term to a non-existent vocabulary 2026-06-04 15:40:16 +00:00

Closed #8 Remove unused thiserror dependency from db crate (or land db::Error) 2026-06-04 15:12:33 +00:00

Closed #16 Enforce required-field completeness when transitioning a record to Public 2026-06-02 21:41:22 +00:00

Closed #17 On-write search re-index after catalogue/visibility writes 2026-06-02 21:30:59 +00:00

Closed #15 Admin endpoint to trigger visibility transitions (publish/unpublish) 2026-06-02 13:22:14 +00:00

73 Issues created by 1 user

Opened #1 Add graceful shutdown to the HTTP server 2026-06-02 04:26:38 +00:00

Opened #2 Make database connection pool size configurable 2026-06-02 04:26:42 +00:00

Opened #3 Decide OpenAPI schema strategy for domain newtypes (keep domain I/O-free) 2026-06-02 04:26:47 +00:00

Opened #4 Foundation follow-up cleanups 2026-06-02 04:26:53 +00:00

Opened #5 Run the app under a non-owner DB role (INSERT/SELECT only on audit_log) 2026-06-02 06:09:58 +00:00

Opened #6 Add pagination to audit history_for before exposing it via the API 2026-06-02 06:09:59 +00:00

Opened #7 Extend the audit log to cover auth/security events 2026-06-02 06:09:59 +00:00

Opened #8 Remove unused thiserror dependency from db crate (or land db::Error) 2026-06-02 07:07:49 +00:00

Opened #9 Keep authority.kind CHECK in sync with the AuthorityKind enum 2026-06-02 07:07:49 +00:00

Opened #10 Paginate repository list endpoints before exposing them via the API 2026-06-02 07:44:58 +00:00

Opened #11 Per-field validation rules (min/max, length, regex) for field definitions 2026-06-02 08:47:08 +00:00

Opened #12 Batch-fetch field definitions in set_object_fields (avoid N+1) for bulk import 2026-06-02 09:13:26 +00:00

Opened #13 Consider coalescing core + flexible-field audit entries for a single edit 2026-06-02 09:13:27 +00:00

Opened #14 Wire the Spectrum cataloguing seed into runtime 2026-06-02 09:28:04 +00:00

Opened #15 Admin endpoint to trigger visibility transitions (publish/unpublish) 2026-06-02 12:06:01 +00:00

Opened #16 Enforce required-field completeness when transitioning a record to Public 2026-06-02 12:06:07 +00:00

Opened #17 On-write search re-index after catalogue/visibility writes 2026-06-02 12:06:13 +00:00

Opened #18 Log server errors on the public API 500 paths (wire tracing in the api crate) 2026-06-02 12:06:18 +00:00

Opened #19 OIDC login (external identity provider, relying-party flow) 2026-06-02 13:22:22 +00:00

Opened #20 Login hardening: rate-limiting/lockout + password-strength policy 2026-06-02 13:22:29 +00:00

Opened #21 Audit vocabulary/term/authority creation (admin writes currently unaudited) 2026-06-02 21:01:55 +00:00

Opened #22 Return 404 (not 500) when adding a term to a non-existent vocabulary 2026-06-02 21:02:02 +00:00

Opened #23 Decouple on-write search reindex from request latency (background task) 2026-06-02 21:31:08 +00:00

Opened #24 OpenAPI: type object fields as an open map, not an empty object 2026-06-03 21:16:47 +00:00

Opened #25 Add a Rust CI job (test + clippy + fmt + embed-web build) 2026-06-03 21:43:43 +00:00

Opened #26 Pin the pnpm version for reproducible web installs 2026-06-03 21:43:48 +00:00

Opened #27 Searchable term/authority picker for large vocabularies (combobox + server-side search) 2026-06-04 05:23:51 +00:00

Opened #28 set_object_fields 422 should carry field-level detail (so the UI can highlight the offending field) 2026-06-04 05:24:00 +00:00

Opened #29 Type enum-valued fields (visibility, data_type, authority kind) as enums in OpenAPI 2026-06-04 06:46:49 +00:00

Opened #30 Backend: edit/delete endpoints for vocabularies, terms, and authorities 2026-06-04 07:43:21 +00:00

Opened #31 Frontend: terms & authorities lists silently swallow load failures (no loading/error state) 2026-06-04 07:43:31 +00:00

Opened #32 Frontend M4 polish: ARIA tab semantics for authority kind tabs + remove unused i18n keys 2026-06-04 07:43:34 +00:00

Opened #33 Frontend: global ⌘K command-palette / omnibox search 2026-06-04 10:54:36 +00:00

Opened #34 Frontend: distinguish "search unavailable" (503) from a generic search error 2026-06-04 10:54:36 +00:00

Opened #35 Search enhancements: faceting, relevance tuning, and a public search endpoint 2026-06-04 10:54:43 +00:00

Opened #36 Backend + frontend: edit/delete field definitions 2026-06-04 12:36:46 +00:00

Opened #37 Test gaps: field-definition 403 (backend) + authority-kind reveal (frontend) 2026-06-04 12:36:53 +00:00

Opened #38 OpenAPI: type SearchHitView.visibility as the Visibility enum (consistency with #29) 2026-06-04 18:26:44 +00:00

Opened #39 Export a catalogue record as a PDF (offline backup + printable copy) 2026-06-05 11:46:20 +00:00

Opened #40 Per-account UI language preference (cross-device persistence) 2026-06-05 12:25:50 +00:00

Opened #41 localized_text edit can leave a stale other-language sub-value 2026-06-05 13:16:48 +00:00

Opened #42 Frontend: render timestamps in the instance timezone (Intl), once there's a display 2026-06-05 13:16:50 +00:00

Opened #43 Server-side term/authority search for the combobox picker (large vocabularies) 2026-06-06 10:04:07 +00:00

Opened #44 Frontend UX: object list should be a scannable, sortable, filterable table 2026-06-06 18:50:53 +00:00

Opened #45 Frontend UX: object detail renders term/authority/localized values as raw JSON 2026-06-06 18:50:53 +00:00

Opened #46 Frontend UX: object form robustness — double-submit, no dirty guard, inconsistent partial-failure recovery 2026-06-06 18:51:03 +00:00

Opened #47 Frontend UX: add toast notifications — mutations currently succeed silently 2026-06-06 18:51:10 +00:00

Opened #48 Frontend UX: session-expiry handling loses in-progress work; auth feedback gaps 2026-06-06 18:51:19 +00:00

Opened #49 Frontend design system: feature screens bypass the OKLCH tokens + ui/* kit (inconsistent visual language) 2026-06-06 18:51:31 +00:00

Opened #50 Frontend UX: reference-data screens are inconsistent and hard to scan (vocab / authorities / fields) 2026-06-06 18:52:20 +00:00

Opened #51 Frontend UX: replace raw <select> elements with a token-styled Select / combobox 2026-06-06 18:52:20 +00:00

Opened #52 Frontend a11y: focus-visible on custom controls, route focus management, skip link, tablist/lang semantics 2026-06-06 18:52:20 +00:00

Opened #53 Frontend UX: standardize loading states on Skeleton (retire "…" and empty role=status divs) 2026-06-06 18:52:21 +00:00

Opened #54 Frontend UX: app header is empty — add wayfinding (section/breadcrumb, user, app name, global search) 2026-06-06 18:52:28 +00:00

Opened #55 Frontend bug: LabelEditor silently drops other-language labels when editing 2026-06-06 18:52:34 +00:00

Opened #56 Frontend UX: no landing overview/dashboard — add at-a-glance counts 2026-06-06 18:53:06 +00:00

Opened #57 Frontend UX: typography hierarchy + a real page <h1> per route + per-route document.title 2026-06-06 18:53:06 +00:00

Opened #58 Frontend UX: master-detail + sidebar layout has no responsive/small-screen handling 2026-06-06 18:53:06 +00:00

Opened #59 Frontend: dark mode is half-built dead code — wire a theme toggle or remove it 2026-06-06 18:53:06 +00:00

Opened #60 Frontend i18n: enforce en/sv key parity with a test 2026-06-06 18:53:08 +00:00

Opened #61 Frontend UX: search result rows lack type/date meta; single thin facet; "estimated" count not flagged 2026-06-06 18:53:14 +00:00

Opened #62 Frontend a11y: label-id collision, invalid table row semantics, unnamed drawer, unannounced table states 2026-06-08 13:42:12 +00:00

Opened #63 Frontend data layer: silent update failures + dead/unreachable mutation error strings 2026-06-08 13:42:12 +00:00

Opened #64 Frontend refactor: unify the duplicated Vocabulary + Authority CRUD surfaces 2026-06-08 13:42:12 +00:00

Opened #65 Frontend: split queries.ts by domain, extract error classes, add query-key factory; decide search-invalidation 2026-06-08 13:42:12 +00:00

Opened #66 Frontend design-kit consistency: dead Card, duplicated segmented-control + row/icon recipes, focusRing/useLang drift 2026-06-08 13:42:17 +00:00

Opened #67 Frontend: bundle vendor-split (221 KB gz, ~29 KB headroom) + fill unit-test gaps 2026-06-08 13:42:27 +00:00

Opened #68 Frontend dark mode: popup primitives + page-size select still hardcode light colors; missing theme-color/color-scheme meta 2026-06-09 21:26:21 +00:00

Opened #69 Frontend a11y: focus-visible gaps on sort headers, breadcrumb links, combobox, page-size select; search result count unannounced 2026-06-09 21:26:36 +00:00

Opened #70 Frontend UX: delete-object dialog allows double-submit; login button gives no in-flight feedback 2026-06-09 21:26:49 +00:00

Opened #71 Frontend motion & touch: honor prefers-reduced-motion; contain overscroll in drawer/dialog 2026-06-09 21:27:06 +00:00

Opened #72 Frontend UX: FieldsPage selection is not deep-linkable (state-only, inconsistent with vocab/objects routing) 2026-06-09 21:27:18 +00:00

Opened #73 Frontend polish: select placeholder copy, locked-field affordance in edit mode, field-list overflow, narrow-mode sidebar toggle, heading wrap 2026-06-09 21:27:33 +00:00