5268df0653
## [2.42.1](https://git.nstart.cloud/2-6/2-6-4/terravault/ordinis/compare/v2.42.0...v2.42.1) (2026-05-25) ### 🐛 Fixes * **admin-ui:** UserPicker — TextInput fallback когда cache пустой ([838138a](https://git.nstart.cloud/2-6/2-6-4/terravault/ordinis/commit/838138af5eec4cafdade630fec0f3e5d1704d0b1)) * **admin-ui:** полноценные стили DayPicker'а + 1 месяц в PeriodFilter ([07a748b](https://git.nstart.cloud/2-6/2-6-4/terravault/ordinis/commit/07a748be53b592903191445e3075efefe544db82))
59 KiB
59 KiB
Ordinis Release Notes
Auto-generated by semantic-release based on conventional commits.
See .releaserc.json for release rules.
2.42.1 (2026-05-25)
🐛 Fixes
- admin-ui: UserPicker — TextInput fallback когда cache пустой (838138a)
- admin-ui: полноценные стили DayPicker'а + 1 месяц в PeriodFilter (07a748b)
2.42.0 (2026-05-25)
✨ Features
- /audit поле «Пользователь» — typeahead picker из user-cache (3f05741)
- admin-ui: кастомный период-фильтр для /audit — preset chips + календарь (e72aa37)
2.41.4 (2026-05-25)
🐛 Fixes
- ci: retag — фиксированный 8-char short-SHA вместо git %h (7686515)
2.41.3 (2026-05-25)
🐛 Fixes
- admin-ui: audit — компактнее панель фильтров + popover календаря (2548f24)
2.41.2 (2026-05-25)
🐛 Fixes
- admin-ui: sidebar «Мои черновики» badge — считаем только actionable (7b1d883)
- admin-ui: убрать badge с «Справочники» — total count не actionable (7a9170d)
2.41.1 (2026-05-25)
🐛 Fixes
- admin-ui: badge на «Мои» не обновлялся + editor wider на десктопе (b828225)
- admin-ui: reviews — резолвить dictionaryId в имя словаря (126b797)
- admin-ui: reviews drawer — dict link, live FK, JSON syntax+diff (ac4f554)
- admin-ui: сайдбар в collapsed-mode показывает badge как corner overlay (85177b5)
2.41.0 (2026-05-25)
✨ Features
- cuod: mission.spacecraft_codes — FK на spacecraft.designator (fd7d7d4)
- cuod: остальные FK — country, industry_sector, frequency_band (cd5ee1f)
2.40.0 (2026-05-25)
✨ Features
- admin-ui,cuod: array-FK picker для instrument (1cb0d86)
2.39.0 (2026-05-23)
✨ Features
- cuod: instrument — approvalRequired=true (af9e76a)
2.38.0 (2026-05-21)
✨ Features
- cuod: spacecraft.mission — x-localized текст → FK на mission.code (656da8c)
2.37.4 (2026-05-21)
🐛 Fixes
- admin-ui: хвосты — 404 на CREATE-черновиках + Radix DialogTitle warning (2a82a87)
2.37.3 (2026-05-21)
🐛 Fixes
- admin-ui: «Сохранить» всегда даёт видимый ответ (b48a5dd)
- admin-ui: запись не сохранялась при пустом optional x-localized поле (dcb5612)
2.37.2 (2026-05-21)
🐛 Fixes
- rest-api: bean-валидация возвращает 400 вместо 500 (b6a41f4)
📝 Docs
- api: локализация — только Accept-Language header (не ?locale= query) (11b6ca9)
- api: уточнение — locale работает только на records, не на schema (ee4f495)
- cheatsheet: добавить конкретные примеры с реальными dicts (f3c3e33)
- HTML-вариант регламента «что заводить в НСИ» (20763fe), closes #B05A2E
- integration: регламент НСИ + текст рассылки для интеграторов (5b96f98)
- quickstart: добавить Приложение A · Cheat Sheet (5eecfda)
- toc: + bundle-format-spec.md (fixes Diplodoc build — link unreachable) (8025320)
- toc: зарегистрировать quickstart + cheatsheet + регламент в Diplodoc nav (3365e94)
2.37.1 (2026-05-19)
🐛 Fixes
- snapshots: handle Instant return from pgJDBC 42.7+ (was 500) (d908feb)
📝 Docs
- api: cheatsheet + quickstart sync с реальным API после Postman audit (ae05e17)
- api: Quick Start guide + Cheat Sheet для интеграторов (04e8251)
2.37.0 (2026-05-17)
✨ Features
- graph: добавлен поиск по справочникам в Graph view (d7de1eb)
🐛 Fixes
- admin-ui: QA report sweep — modal/table layout, i18n, sidebar polish (239cecd), closes #1 #2 #3 #4 #5 #6 #7 #8
📝 Docs
- changelog: fill 22-release gap v2.15.0 → v2.36.0 (a600664)
2.36.0 (2026-05-17)
✨ Features
- notifications: Phase C — Don't Disturb (quiet hours window) (74704db)
2.35.0 (2026-05-17)
✨ Features
2.34.1 (2026-05-16)
🐛 Fixes
- nginx: route /api/v1/ai/* к writer (был fall-through к read-api → 500) (c86ce8c)
2.34.0 (2026-05-16)
✨ Features
- ai: Phase 1 step 3-6 — LLM adapter + per-field AI suggest endpoint + UI (e4cd7b9)
2.33.0 (2026-05-16)
✨ Features
- schema: Phase 1 schema templates + Nexus DevOps runbook (c8dd5aa)
2.32.0 (2026-05-16)
✨ Features
- records: «Запланировано» badge per row для scheduled future versions (e5a07fc)
2.31.5 (2026-05-15)
🐛 Fixes
- ui: QA report P3/P4 batch — 7 cosmetic/UX bugs (cb8a229)
2.31.4 (2026-05-15)
🐛 Fixes
- ci: apk update before add — picks current package versions from mirror (fc31963)
- ci: apk использует internal Nexus mirror вместо public Alpine CDN (1e0c49f)
- ci: pin release job к node:22-alpine3.20 — bypass v3.23 mirror APKINDEX bug (ca48ff7)
- search: scope filter uppercase — fixes Smart Search 0 results bug (35147df)
2.31.3 (2026-05-15)
🐛 Fixes
- qa-report: version tag, /drafts redirect, audit filter complete, i18n cleanup (ff7e72e)
2.31.2 (2026-05-15)
🐛 Fixes
- record-form: prefill validFrom=now в create mode тоже (a740ab3)
- records: scheduled marks on time-travel + non-empty banner + editor validFrom prefill (9199f38)
- timetravel: drop arbitrary +30d max — use real marks only (d0ef822)
2.31.1 (2026-05-15)
🐛 Fixes
- timetravel: extend modal slider max до now + 30 days (paired с !220) (1713951)
2.31.0 (2026-05-15)
✨ Features
- records: scheduled records empty-state hint (2341846)
2.30.1 (2026-05-15)
🐛 Fixes
- sidebar: hide outbox/audit/webhooks для PUBLIC users (df704c2)
- timetravel: extend slider max до now + 30 days (или future marks) (4dd67af)
2.30.0 (2026-05-15)
✨ Features
- notifications: Phase B-2 — per-event-type granular preferences (f04b1be)
2.29.1 (2026-05-15)
🐛 Fixes
- reviews: reset drawer state когда reviewer переключает draft (641a9a6)
2.29.0 (2026-05-15)
✨ Features
- webhook: text-wrap payload для chat-bot receivers (stellix pattern) (2c24d24)
🐛 Fixes
- topbar: notification bell badge — fix glyph clip (597e05d)
2.28.2 (2026-05-15)
🐛 Fixes
- notifications: tryClaim drop @Modifying — unblocks ALL dispatch (c41c561)
2.28.1 (2026-05-15)
🐛 Fixes
- actuator: disable Redis health indicator in writer (a1989da)
- notifications: dispatcher race с OutboxPoller — emails never sent (9f885e5)
- rest-api: preserve status code from ResponseStatusException (fd35e71)
- webhook: User-Agent 'ordinis-alerts' (matches Webhook Bot subscription) (0269542)
2.28.0 (2026-05-15)
✨ Features
- admin-ui: Phase B frontend — notifications preferences route + UI (e2fc3bc)
- notifications: Phase B backend — per-user channel preferences (9452ada)
2.27.13 (2026-05-15)
🐛 Fixes
- reviews: anonymous Mine tab — dedicated empty state с sign-in CTA (e80d31a)
2.27.12 (2026-05-15)
🐛 Fixes
- ci: propose-prod-image-bump needs retag-* (регрессия из !205) (a8c2432)
2.27.11 (2026-05-15)
🐛 Fixes
- notifications: EmailChannel @Bean registration вместо @Component (race fix) (fb7fd51)
2.27.10 (2026-05-15)
🐛 Fixes
- actuator: expose loggers endpoint + force release trigger (fdf3213)
2.27.9 (2026-05-15)
🐛 Fixes
- admin-ui: em-dash fallback в UserCell + sidebar.collapse i18n (5c4b9c9)
2.27.8 (2026-05-15)
🐛 Fixes
- notifications: WARN when dispatcher init с zero channels (844cab7)
2.27.7 (2026-05-14)
🐛 Fixes
- a11y: add hidden SheetTitle к MobileSidebar (Radix warning) (dfae205)
- schema-drafts: /drafts/active returns 200+null instead of 404 (no console spam) (e43e3f6)
- sidebar: gate outbox+webhook badge polls on INTERNAL scope (no more 403 spam) (ac74a8f)
2.27.6 (2026-05-14)
🐛 Fixes
- nginx: route /api/v1/me/* to writer (closes /me/notifications 500) (d14d6cc)
2.27.5 (2026-05-14)
🐛 Fixes
- notifications: panic-level defensive GET /me/notifications (f028ec5)
2.27.4 (2026-05-14)
🐛 Fixes
- notifications: defensive /me/notifications — wrap DB ops in try/catch (0cf76d2)
2.27.3 (2026-05-14)
🐛 Fixes
- ui: replace raw AxiosError dumps with QueryErrorState across routes (9e6ddd1)
2.27.2 (2026-05-14)
♻️ Refactoring
- a11y: 44×44 touch targets + normalize accent-bg alpha (35c69fd)
2.27.1 (2026-05-14)
🐛 Fixes
- e2e: disable notifications dispatcher in test profile (5e10bbb)
📝 Docs
- design: DESIGN.md v1 — resolve Section 12 open items (7bd4b0a)
2.27.0 (2026-05-14)
✨ Features
- notifications: TODO 7 — draft decision toast + email + bell badge (9050e24)
📝 Docs
- todos: mark all session TODOs shipped + summary table (14f58b4)
2.26.1 (2026-05-14)
♻️ Refactoring
- reviews: interaction state polish — 5 UX fixes (fb64ca4)
2.26.0 (2026-05-14)
✨ Features
- reviews: "Мои" tab — maker self-tracking with status filter (be58b61)
2.25.1 (2026-05-14)
♻️ Refactoring
- approval-ux: eng-review fixes — extract helpers, add tests, register i18n (4c29f4e)
2.25.0 (2026-05-14)
✨ Features
- approval-ux: inline draft CTA + reviewer diff summary + tightened drawer (fe7f9cd)
2.24.0 (2026-05-14)
✨ Features
- drafts: audit + outbox для record-draft lifecycle (audit findings) (0003fb6)
🐛 Fixes
- approval: allow non-breaking schema changes inline (d338c52)
- approval: close 2 more bypass paths from security audit (4e09027)
- ui: DictionaryEditorDialog disables Save when draft workflow needed (898cb34)
2.23.1 (2026-05-14)
🐛 Fixes
- schema: enforce approvalRequired on PUT /{name} + PATCH /{name}/schema (018ebff)
2.23.0 (2026-05-14)
✨ Features
- user-display: KeycloakAdminUserResolver — Phase 2 on-demand lookup (83caf9c)
- user-display: persistent DB cache + Keycloak resolver hook (Phase 1+2 wiring) (ec0c74a)
🐛 Fixes
- ui: UserCell в changelog/events/history — ещё 6 мест (455ca2f)
2.22.1 (2026-05-14)
🐛 Fixes
- ui: wrap remaining UUIDs into UserCell — 3 missed spots (93b2676)
2.22.0 (2026-05-14)
✨ Features
- admin: scope-gated audit и outbox endpoints (da17930)
- approval: enforce per-dictionary approvalMinRole (Phase 2) (5187845)
- records: close / bulk-close через draft когда approvalRequired (d66db60)
- users: /admin/users/{sub}/display endpoint + UserCell uses it (be90077)
🐛 Fixes
- reviews: friendly error в ReviewDrawer вместо AxiosError (9436068)
📝 Docs
- rbac: обновить RBAC sections после Phase 1d + Phase 2 (c41e345)
2.21.0 (2026-05-13)
✨ Features
- records: auto-route create/edit через draft когда approvalRequired (6eb56cf)
2.20.0 (2026-05-13)
✨ Features
- my-drafts: schema drafts тоже в "Мои черновики" (f096b57)
2.19.2 (2026-05-13)
🐛 Fixes
- auth: read roles из access_token, не id_token (sidebar reviews hidden bug) (b6ee703)
2.19.1 (2026-05-13)
🐛 Fixes
- webhook: scope_filter Hibernate ordinal bug + UI toggle для active (d4ee30a)
2.19.0 (2026-05-13)
✨ Features
- sidebar: role-based visibility для /reviews (5fb1658)
🐛 Fixes
- auth: @Autowired на WorkflowRoles main ctor (4fe7f1e)
2.18.0 (2026-05-13)
✨ Features
- auth: WorkflowRoles configurable claim path + ordinis:admin super-role (36c06ae)
2.17.0 (2026-05-13)
✨ Features
- auth: Phase 1d — backend role enforcement для workflow (24aa94d)
♻️ Refactoring
- auth: domain-specific role names (consistent convention) (c5b00ff)
📝 Docs
- rbac: добавить матрицу realm-ролей Keycloak (1dba947)
2.16.4 (2026-05-13)
🐛 Fixes
- ui: shared UserCell для display UUID actor'ов везде (e6294ce)
- ui: кнопки в schema draft drawer — RU label + flow row (6ee88a8)
2.16.3 (2026-05-13)
🐛 Fixes
- sidebar,audit: badges для Outbox + Webhooks, clarify audit scope label (aec2cdd)
- types: SchemaReviewQueuePage.total → totalElements (match backend) (aecd65e)
2.16.2 (2026-05-13)
🐛 Fixes
- schema-draft: автор display + gate Отозвать только maker'у (fbf978a)
- sidebar: подключить reviews badge к real count (252939f)
2.16.1 (2026-05-12)
🐛 Fixes
- ci: use printf для commit/MR description avoiding YAML literal block break (cac6b6a)
- release: remove [skip ci] из semantic-release commit message (b7e1f12)
2.16.0 (2026-05-12)
✨ Features
- updateBanner: «Что нового» button открывает modal с changelog (e46598c)
🐛 Fixes
- restapi: NoResource/NoHandler → 404, не 500 (f2adc37)
2.15.0 (2026-05-12)
✨ Features
- topbar: «Что нового» button + 2026-05-12 state.md update (a34c6d4)
🐛 Fixes
- admin-ui: changelog build context — copy script + CI before_script (5103ed6)
- docs,security: Swagger UI — staging для exploration, prod env-flagged (e2080d8)
- docs: copy operator/reviewer/changelog dirs to docker image (82e481a)
📝 Docs
- design: AI schema assist + dictionary marketplace v1 proposals (cef5f49)
- design: ai-schema-assist v2 — /office-hours, Approach C hybrid (a3eb5f0)
- design: marketplace v2 — bundle hygiene, hard cap 2-3d (89c6e04)
- design: Redis FK projection v2 — eng review applied (d9fc49f)
2.14.0 (2026-05-12)
✨ Features
- webhook: time-series histogram stats endpoint + frontend chart (5479142)
2.13.0 (2026-05-12)
✨ Features
- ui: searchable MultiSelect (cmdk) + DateRangePicker (react-day-picker) (21d9561)
2.12.0 (2026-05-12)
✨ Features
- drawer: section chip strip scroll-spy via IntersectionObserver (da04b86)
2.11.0 (2026-05-12)
✨ Features
- timetravel: Records + Schema tabs wired with real data (775b834)
2.10.0 (2026-05-12)
✨ Features
- timetravel: «Что изменилось» tab — закрывает «backend pending» placeholder (3dbad1e)
🐛 Fixes
- ux: friendly error UI вместо raw AxiosError (3984d99)
2.9.0 (2026-05-12)
✨ Features
- webhooks: stats cards dashboard на subscription detail (d864a85)
2.8.0 (2026-05-12)
✨ Features
- reviews: tabs UX — Записи / Схемы (D) (a49e01b)
- schema-workflow: PATCH /drafts/{id} — edit без recreate (A) (b3a9104)
- webhooks: event-type multi-select + schema draft events (E) (27ffd36)
- workflow: Monaco editor для proposed schema (C) (ef5bd69)
2.7.0 (2026-05-12)
✨ Features
- schema-workflow: Phase 1c — CreateModal + /reviews extension + RBAC stub (ac3395f)
2.6.0 (2026-05-12)
✨ Features
- schema-workflow: Phase 1b — SchemaDraftDrawer with status-aware actions (dd3a2d9)
2.5.0 (2026-05-12)
✨ Features
- changelog: wire up History tab to /changelog endpoint + diff modal (57be0d8)
2.4.0 (2026-05-12)
✨ Features
- api: GET /changelog/{entryId}/diff — full before/after schemas (72268f9)
🐛 Fixes
- history: подсказка и Button-стайл когда у записи 1 версия (7192aed)
- timetravel: скрывать boundary-метки при коллизии с курсором (c76e7a4)
2.3.1 (2026-05-12)
🐛 Fixes
- ui: internal scope filter + dark-theme cards в Связи (93c2708)
📝 Docs
- integrator: v2.x.x update — workflow API + full changelog + schema extensions (d790a77)
2.3.0 (2026-05-12)
✨ Features
- api: full timeline в /changelog — workflow events + draft kinds (12975e0)
🐛 Fixes
- ui: visible History button + remove left rail + dark JSON viewer (2a76b93)
2.2.1 (2026-05-12)
🐛 Fixes
- build: collapse vendor-graph3d into vendor-misc — Super expression hotfix (99d5d5d)
2.2.0 (2026-05-11)
✨ Features
- api: schema workflow API — backend #3 (drafts/review/decision/publish) (01fc577)
- graph: space-theme polish — planets, sprite labels, thematic edges, sizes, loader (9fd63ab)
2.1.0 (2026-05-11)
✨ Features
- graph: 3D mode toggle — three.js + WebGL fallback (fe18bef)
2.0.0 (2026-05-11)
✨ Features
- api: GET /dictionaries/{name}/changelog — schema versions timeline (backend #1) (ebc90d7)
- api: GET /dictionaries/{name}/snapshots — record-change buckets (backend #2) (e02e684)
- api: PATCH /dictionaries/{name}/schema — inline non-breaking field edit (backend #4) (db4f859)
- brand: adopt official Ordinis logo assets (e6fe9c3), closes #185FA5 #378ADD #185FA5 #120a8f
- form: x-section schema metadata + dynamic section bucketing (1a72418)
- ui: 3-dot row menu + history compare/revert + DateTime fitting + tablet touch (b312ba3)
- ui: row click opens edit + wide-mode left section rail in drawer (54cf563)
🐛 Fixes
- a11y: Drawer always renders SheetDescription — silence Radix warning (cc131e5)
- audit: definition action != record action — fix SmokeE2ETest filter (f5e7348), closes #1
- audit: definition action != record action — fix SmokeE2ETest filter (083e7be), closes #1
- audit: definition action != record action — fix SmokeE2ETest filter (5d790ba), closes #1
- brand: recolor logo — terracotta accent, no blue (theme-aligned) (7684e0c), closes #d97757 #b05a2e #d97757 #b05a2e #e6e1d4 #2c2b27 #1a1714 #b05a2e
- form: FK select label overflow — truncate + ellipsis (наезжают on chevron) (b2231a5)
- ui: bigger logo + shorter 'Создать' label (0c978be)
- ui: logo orbits stroke 5→12 — actually visible at 28px (fcb0ad0)
📝 Docs
1.7.0 (2026-05-11)
✨ Features
- api: GET /dictionaries/graph/outgoing — batch outgoing FK summary (ff05ef9)
- loader: real Natural Earth globe via d3-geo + topojson + world-atlas (acde4e1)
🐛 Fixes
- a11y: add sr-only DialogTitle/Description to record/export/timetravel modals (7429cff)
- form: break drawer counter/dirty infinite-loop + add GlobeLoader + AppErrorBoundary (ca53322)
- loader: remove transform-box fill-box — orbits rotated around offset bbox (82b754b)
- ui: block route render with centered GlobeLoader until queries resolve (e165a55)
📝 Docs
- api: pending-endpoints brief for backend team (a4add24)
1.6.1 (2026-05-11)
🐛 Fixes
- ui: remove TopBar search (final) + add clear X to catalog input (7f32416)
- ui: restore TopBar search + add notifications bell + theme to sidebar (7e44df3)
- ui: TopBar right cluster + catalog toolbar h-8 align (24f04ef)
1.6.0 (2026-05-11)
✨ Features
- ui: batch UI polish — auth/lang to sidebar, search h-7, info overflow, graph zoom (d9df2fc)
1.5.0 (2026-05-11)
✨ Features
- editor: restore 3-col HubView + hide AOI on non-geo dicts (b0e1995)
1.4.0 (2026-05-11)
✨ Features
- catalog: scope-colored row stripes + filter pills + chips (bc73782)
- catalog: toolbar layout per redesign prototype (ad7c51d)
- editor: Fields / Events / History tabs match redesign prototype (cbe21db)
- editor: scope-colored InfoPanel badge + Time-travel label (e580a04)
- editor: wrap InfoPanel + main content in bordered panels per prototype (ce1f40c)
- editor: Связи tab 2-col split per redesign prototype (180a592)
- layout: catalog relative time + chevron + flat sidebar per redesign (4) (7e33456), closes #faf9f5
- record: conflict diff modal на 409 save (handoff line 444) (16da694)
- records: accent businessKey + remove redundant Export CSV from bulk bar (3e4d789)
- topbar: match redesign prototype — breadcrumb back-arrow + cleaner right cluster (ac1ca8d)
🐛 Fixes
- catalog: title→TopBar + toolbar→tinted bar + table white + font fix (d77f040)
- table: white row bg + stronger hover per user feedback (a27e9ec), closes #faf9f5
- topbar: restore full right cluster per user preference (38f7dce)
- topbar: revert ThemeSwitch to 3-icon original + shorten create button (6627fd9)
1.3.0 (2026-05-11)
✨ Features
- admin-ui: editor 6-tab layout (Stage 3.4) (640c890)
- admin-ui: editor 6-tab layout (Stage 3.4) (0ddba87)
- catalog: row-based table per handoff prototype design/compact.html (f43ce55), closes #2
- drawer: all-sections layout с chips strip per handoff prototype (155c70e), closes #5
- drawer: sticky toolbar API per handoff Screen 3 line 279 (d4000dd), closes #5
- editor: + Экспорт button в InfoPanel per redesign dark theme screenshot (e15a391)
- editor: ExportModal + TimeTravelModal + InfoPanel merge + fixes (5a2220d), closes #fbf8ee #faf9f5
- editor: keyboard shortcuts j/k/Enter/n per handoff Screen 2 (a09c411)
- editor: left info panel + 3-col layout per handoff prototype (a57cf52)
- editor: match redesign prototype layout — TopBar title + tab counts + InfoPanel actions (ec99010)
- editor: Stage 3.4 polish — Events embedded + JSON syntax highlight (f0392af)
- handoff: WorkflowBanner + table a11y + responsive + toast styling (0acba4c)
- mobile: Sidebar drawer <1024px + Modal/Sheet fullscreen <880px (7a3b31b)
- record: RecordDrawer slide-over per Stage 3.5 handoff (Phase A) (750395d), closes #5
- sidebar: desktop collapse mode 220px → 56px per handoff prototype (69a86b2)
- theme: sync color tokens с redesign ui-kit + add claude-light theme (42dab24), closes #fbf8ee #d4a07a #faf9f5 #d97757
- ui: drop @nstart/ui dependency (Stage 3.9) (5007e0f)
- wire drawer toolbar filters + records table responsive hiding (889207f)
🐛 Fixes
- admin-ui: sidebar font sizes per handoff spec (f72aac6)
- admin-ui: sidebar fonts per handoff (0297745)
- admin-ui: UpdateBanner generic message (dc0002f)
- fonts: align all text sizes to handoff spec via Tailwind theme overrides (71432e9)
- fonts: explicit font-family on title utilities + cascade conflicts (f0dbc20)
- fonts: semantic typography utilities per handoff (7 roles) (b949127)
- release: drop invalid tarballDir: [secure] config (090bff5)
- table+layout: TableHead alias to THEAD wrapper + kill horizontal scroll (787cea9)
- theme: de-saturate light bg — убрать жёлтый Earth-cream tone (e5572d5), closes #fbf8ee #fbf8ee #fafaf8 #f4eedc #f2f1ee #e3dccb #e4e1dc #efe9d8 #ecebe7 #b05a2e #3a2818
- ui: 3 user-reported issues (abdfaa8)
- ui: tailwind-merge стрипал text-body — buttons ушли в 16px inherited (9e2d985)
- version: bump to 1.3.1 and show 8-char commit hash (780de70)
- version: channel-based label, no semver fallback for branch builds (3223a5c)
- version: detect CI build via CI_COMMIT_SHORT_SHA, not process.env.CI (b6af155)
- version: read CI_COMMIT_TAG as source of truth, package.json as fallback (e62633d)
⏪ Reverts
- timetravel: keep 'Time-travel…' label (36fb70f)