Commit Graph

500 Commits

Author SHA1 Message Date
Александр Зимин 42c210237b Merge branch 'chore/ci-skip-docker-on-feature' into 'main'
ci: docker сборки только на main + tag

See merge request 2-6/2-6-4/terravault/ordinis!124
2026-05-12 09:54:21 +00:00
Александр Зимин 4a571546d1 ci: docker сборки только на main + tag 2026-05-12 09:54:21 +00:00
Александр Зимин af4ac96b08 Merge branch 'chore/ci-nstart-runner-tag' into 'main'
ci: pin сборки к nstart-tagged runners

See merge request 2-6/2-6-4/terravault/ordinis!123
2026-05-12 09:49:25 +00:00
Александр Зимин 2b30e60ec9 ci: pin сборки к nstart-tagged runners 2026-05-12 09:49:25 +00:00
Александр Зимин fffd9802e5 Merge branch 'fix/history-drawer-single-version-hint' into 'main'
fix(history): подсказка и Button-стайл когда у записи 1 версия

See merge request 2-6/2-6-4/terravault/ordinis!122
2026-05-12 08:57:44 +00:00
Александр Зимин 7192aed71c fix(history): подсказка и Button-стайл когда у записи 1 версия 2026-05-12 08:57:44 +00:00
Александр Зимин bdf16daee8 Merge branch 'fix/timetravel-slider-label-overlap' into 'main'
fix(timetravel): скрывать boundary-метки при коллизии с курсором

See merge request 2-6/2-6-4/terravault/ordinis!121
2026-05-12 08:55:13 +00:00
Александр Зимин c76e7a4029 fix(timetravel): скрывать boundary-метки при коллизии с курсором 2026-05-12 08:55:13 +00:00
Александр Зимин 47151563c3 Merge branch 'feat/changelog-diff-endpoint' into 'main'
feat(api): GET /changelog/{entryId}/diff — full before/after schemas

See merge request 2-6/2-6-4/terravault/ordinis!120
2026-05-12 08:51:28 +00:00
Александр Зимин 72268f9add feat(api): GET /changelog/{entryId}/diff — full before/after schemas 2026-05-12 08:51:28 +00:00
semantic-release-bot aa5fcac0fc chore(release): v2.3.1 [skip ci]
## [2.3.1](https://git.nstart.cloud/2-6/2-6-4/terravault/ordinis/compare/v2.3.0...v2.3.1) (2026-05-12)

### 🐛 Fixes

* **ui:** internal scope filter + dark-theme cards в Связи ([93c2708](https://git.nstart.cloud/2-6/2-6-4/terravault/ordinis/commit/93c2708fb00af1c3d35b883f6e19b741a501f30a))

### 📝 Docs

* **integrator:** v2.x.x update — workflow API + full changelog + schema extensions ([d790a77](https://git.nstart.cloud/2-6/2-6-4/terravault/ordinis/commit/d790a773139f91290c69148602dab04c694f432f))
2026-05-12 08:19:32 +00:00
Александр Зимин 57bd726c27 Merge branch 'fix/internal-scope-and-dark-cards' into 'main'
fix(ui): internal scope filter + dark-theme cards в Связи

See merge request 2-6/2-6-4/terravault/ordinis!119
2026-05-12 00:31:51 +00:00
Александр Зимин 93c2708fb0 fix(ui): internal scope filter + dark-theme cards в Связи 2026-05-12 00:31:51 +00:00
Александр Зимин de476ea597 Merge branch 'docs/v2-integrator' into 'main'
docs(integrator): v2.x.x update — workflow API + full changelog + schema extensions

See merge request 2-6/2-6-4/terravault/ordinis!118
2026-05-12 00:26:37 +00:00
Александр Зимин d790a77313 docs(integrator): v2.x.x update — workflow API + full changelog + schema extensions 2026-05-12 00:26:37 +00:00
semantic-release-bot bc3373ccd8 chore(release): v2.3.0 [skip ci]
## [2.3.0](https://git.nstart.cloud/2-6/2-6-4/terravault/ordinis/compare/v2.2.1...v2.3.0) (2026-05-12)

###  Features

* **api:** full timeline в /changelog — workflow events + draft kinds ([12975e0](https://git.nstart.cloud/2-6/2-6-4/terravault/ordinis/commit/12975e0d83ab2cc63ea7f553339aa7ea448aad66))

### 🐛 Fixes

* **ui:** visible History button + remove left rail + dark JSON viewer ([2a76b93](https://git.nstart.cloud/2-6/2-6-4/terravault/ordinis/commit/2a76b9382ec3094e90b7eec9f2167dda10335082))
2026-05-12 00:24:16 +00:00
Александр Зимин 861d2f7f16 Merge branch 'fix/editor-history-button-rail-jsonbg' into 'main'
fix(ui): visible History button + remove left rail + dark JSON viewer

See merge request 2-6/2-6-4/terravault/ordinis!117
2026-05-12 00:18:03 +00:00
Александр Зимин 2a76b9382e fix(ui): visible History button + remove left rail + dark JSON viewer 2026-05-12 00:18:03 +00:00
Александр Зимин aefd6a8428 Merge branch 'feat/changelog-full-timeline' into 'main'
feat(api): full timeline в /changelog — workflow events + draft kinds

See merge request 2-6/2-6-4/terravault/ordinis!116
2026-05-12 00:14:10 +00:00
Александр Зимин 12975e0d83 feat(api): full timeline в /changelog — workflow events + draft kinds 2026-05-12 00:14:09 +00:00
semantic-release-bot 50c75eacd3 chore(release): v2.2.1 [skip ci]
## [2.2.1](https://git.nstart.cloud/2-6/2-6-4/terravault/ordinis/compare/v2.2.0...v2.2.1) (2026-05-12)

### 🐛 Fixes

* **build:** collapse vendor-graph3d into vendor-misc — Super expression hotfix ([99d5d5d](https://git.nstart.cloud/2-6/2-6-4/terravault/ordinis/commit/99d5d5d84412ea48d468210e5d4d2f4a11814c37))
2026-05-12 00:03:39 +00:00
Александр Зимин bdcc1ab91f Merge branch 'fix/graph3d-circular-chunk' into 'main'
fix(build): collapse vendor-graph3d into vendor-misc — Super expression hotfix

See merge request 2-6/2-6-4/terravault/ordinis!115
2026-05-11 23:53:55 +00:00
Александр Зимин 99d5d5d844 fix(build): collapse vendor-graph3d into vendor-misc — Super expression hotfix 2026-05-11 23:53:55 +00:00
semantic-release-bot 242972fdd8 chore(release): v2.2.0 [skip ci]
## [2.2.0](https://git.nstart.cloud/2-6/2-6-4/terravault/ordinis/compare/v2.1.0...v2.2.0) (2026-05-11)

###  Features

* **api:** schema workflow API — backend [#3](https://git.nstart.cloud/2-6/2-6-4/terravault/ordinis/issues/3) (drafts/review/decision/publish) ([01fc577](https://git.nstart.cloud/2-6/2-6-4/terravault/ordinis/commit/01fc5771f28a750573c811ba481ac023464bbc1d))
* **graph:** space-theme polish — planets, sprite labels, thematic edges, sizes, loader ([9fd63ab](https://git.nstart.cloud/2-6/2-6-4/terravault/ordinis/commit/9fd63ab2679432aef95f205c03389e66a1a2efef))
2026-05-11 23:46:43 +00:00
Александр Зимин aad3dfe4d9 Merge branch 'ci/shorter-artifact-expiry' into 'main'
ci: shorter artifact expire_in — storage relief

See merge request 2-6/2-6-4/terravault/ordinis!114
2026-05-11 23:21:23 +00:00
Александр Зимин 1f71808acf ci: shorter artifact expire_in — storage relief 2026-05-11 23:21:22 +00:00
Александр Зимин 91c48775bf Merge branch 'feat/schema-workflow-api' into 'main'
feat(api): schema workflow API — backend #3 (drafts/review/decision/publish)

See merge request 2-6/2-6-4/terravault/ordinis!113
2026-05-11 23:11:56 +00:00
Александр Зимин 01fc5771f2 feat(api): schema workflow API — backend #3 (drafts/review/decision/publish) 2026-05-11 23:11:56 +00:00
Александр Зимин 61e4cf952e Merge branch 'feat/graph-space-polish-v2' into 'main'
feat(graph): space-theme polish — planets, sprite labels, thematic edges, sizes, loader

See merge request 2-6/2-6-4/terravault/ordinis!112
2026-05-11 22:50:33 +00:00
Александр Зимин 9fd63ab267 feat(graph): space-theme polish — planets, sprite labels, thematic edges, sizes, loader 2026-05-11 22:50:33 +00:00
semantic-release-bot 1178317878 chore(release): v2.1.0 [skip ci]
## [2.1.0](https://git.nstart.cloud/2-6/2-6-4/terravault/ordinis/compare/v2.0.0...v2.1.0) (2026-05-11)

###  Features

* **graph:** 3D mode toggle — three.js + WebGL fallback ([fe18bef](https://git.nstart.cloud/2-6/2-6-4/terravault/ordinis/commit/fe18befb2a34488d1cd460fd12ea9e9e75c3fe49))
2026-05-11 22:17:01 +00:00
Александр Зимин d0362c1136 Merge branch 'feat/graph-3d-mode' into 'main'
feat(graph): 3D mode toggle — three.js + WebGL fallback

See merge request 2-6/2-6-4/terravault/ordinis!110
2026-05-11 22:11:41 +00:00
Александр Зимин fe18befb2a feat(graph): 3D mode toggle — three.js + WebGL fallback 2026-05-11 22:11:41 +00:00
semantic-release-bot c2c492b7ef chore(release): v2.0.0 [skip ci]
## [2.0.0](https://git.nstart.cloud/2-6/2-6-4/terravault/ordinis/compare/v1.7.0...v2.0.0) (2026-05-11)

###  Features

* **api:** GET /dictionaries/{name}/changelog — schema versions timeline (backend [#1](https://git.nstart.cloud/2-6/2-6-4/terravault/ordinis/issues/1)) ([ebc90d7](https://git.nstart.cloud/2-6/2-6-4/terravault/ordinis/commit/ebc90d76e97dbdeb42f18cb0578b5854ed6896f4))
* **api:** GET /dictionaries/{name}/snapshots — record-change buckets (backend [#2](https://git.nstart.cloud/2-6/2-6-4/terravault/ordinis/issues/2)) ([e02e684](https://git.nstart.cloud/2-6/2-6-4/terravault/ordinis/commit/e02e684cca40da1b855dbc229ea876e5ffe7c2f8))
* **api:** PATCH /dictionaries/{name}/schema — inline non-breaking field edit (backend [#4](https://git.nstart.cloud/2-6/2-6-4/terravault/ordinis/issues/4)) ([db4f859](https://git.nstart.cloud/2-6/2-6-4/terravault/ordinis/commit/db4f859ef6129f3bc85af79aa2f7fa4ec873ea5a))
* **brand:** adopt official Ordinis logo assets ([e6fe9c3](https://git.nstart.cloud/2-6/2-6-4/terravault/ordinis/commit/e6fe9c3da89f028711c6627d841083e8f58173f3)), closes [#185FA5](https://git.nstart.cloud/2-6/2-6-4/terravault/ordinis/issues/185FA5) [#378ADD](https://git.nstart.cloud/2-6/2-6-4/terravault/ordinis/issues/378ADD) [#185FA5](https://git.nstart.cloud/2-6/2-6-4/terravault/ordinis/issues/185FA5) [#120a8f](https://git.nstart.cloud/2-6/2-6-4/terravault/ordinis/issues/120a8f)
* **form:** x-section schema metadata + dynamic section bucketing ([1a72418](https://git.nstart.cloud/2-6/2-6-4/terravault/ordinis/commit/1a72418cb862322ed4ff01ea0b24cf21a99b31c7))
* **ui:** 3-dot row menu + history compare/revert + DateTime fitting + tablet touch ([b312ba3](https://git.nstart.cloud/2-6/2-6-4/terravault/ordinis/commit/b312ba37adb5260625fa792a9078edde5d1d67b8))
* **ui:** row click opens edit + wide-mode left section rail in drawer ([54cf563](https://git.nstart.cloud/2-6/2-6-4/terravault/ordinis/commit/54cf5631620ea44d1a6d0d6f6a180390602c2e33))

### 🐛 Fixes

* **a11y:** Drawer always renders SheetDescription — silence Radix warning ([cc131e5](https://git.nstart.cloud/2-6/2-6-4/terravault/ordinis/commit/cc131e52f2024ebb2e47e230150d43c5d0fc7905))
* **audit:** definition action != record action — fix SmokeE2ETest filter ([f5e7348](https://git.nstart.cloud/2-6/2-6-4/terravault/ordinis/commit/f5e7348f92e4b44f2b16a3872f2f1d2b9414167e)), closes [#1](https://git.nstart.cloud/2-6/2-6-4/terravault/ordinis/issues/1)
* **audit:** definition action != record action — fix SmokeE2ETest filter ([083e7be](https://git.nstart.cloud/2-6/2-6-4/terravault/ordinis/commit/083e7be3be16ecab97445eb01a4e3c331abedb9a)), closes [#1](https://git.nstart.cloud/2-6/2-6-4/terravault/ordinis/issues/1)
* **audit:** definition action != record action — fix SmokeE2ETest filter ([5d790ba](https://git.nstart.cloud/2-6/2-6-4/terravault/ordinis/commit/5d790ba7d56292e73c761420bed9a9960a9b96c0)), closes [#1](https://git.nstart.cloud/2-6/2-6-4/terravault/ordinis/issues/1)
* **brand:** recolor logo — terracotta accent, no blue (theme-aligned) ([7684e0c](https://git.nstart.cloud/2-6/2-6-4/terravault/ordinis/commit/7684e0c9bd2ad7223f86490578585994ed802b5e)), closes [#d97757](https://git.nstart.cloud/2-6/2-6-4/terravault/ordinis/issues/d97757) [#b05a2e](https://git.nstart.cloud/2-6/2-6-4/terravault/ordinis/issues/b05a2e) [#d97757](https://git.nstart.cloud/2-6/2-6-4/terravault/ordinis/issues/d97757) [#b05a2e](https://git.nstart.cloud/2-6/2-6-4/terravault/ordinis/issues/b05a2e) [#e6e1d4](https://git.nstart.cloud/2-6/2-6-4/terravault/ordinis/issues/e6e1d4) [#2c2b27](https://git.nstart.cloud/2-6/2-6-4/terravault/ordinis/issues/2c2b27) [#1a1714](https://git.nstart.cloud/2-6/2-6-4/terravault/ordinis/issues/1a1714) [#b05a2e](https://git.nstart.cloud/2-6/2-6-4/terravault/ordinis/issues/b05a2e)
* **form:** FK select label overflow — truncate + ellipsis (наезжают on chevron) ([b2231a5](https://git.nstart.cloud/2-6/2-6-4/terravault/ordinis/commit/b2231a5a47b39443f2e3a9a49fb3ec9eb7dd4399))
* **ui:** bigger logo + shorter 'Создать' label ([0c978be](https://git.nstart.cloud/2-6/2-6-4/terravault/ordinis/commit/0c978bec0c6d9a32ed41d9898b7bd61420c0d1c0))
* **ui:** logo orbits stroke 5→12 — actually visible at 28px ([fcb0ad0](https://git.nstart.cloud/2-6/2-6-4/terravault/ordinis/commit/fcb0ad0eb5b5eb28ea0975e155fbbf36c7908021))

### 📝 Docs

* **api:** mark 4/5 pending endpoints shipped, workflow API deferred ([6c8cc21](https://git.nstart.cloud/2-6/2-6-4/terravault/ordinis/commit/6c8cc21204c7afbd6fa1a003575d93f09d0641f3)), closes [#1](https://git.nstart.cloud/2-6/2-6-4/terravault/ordinis/issues/1) [#2](https://git.nstart.cloud/2-6/2-6-4/terravault/ordinis/issues/2) [#4](https://git.nstart.cloud/2-6/2-6-4/terravault/ordinis/issues/4) [#5](https://git.nstart.cloud/2-6/2-6-4/terravault/ordinis/issues/5) [#3](https://git.nstart.cloud/2-6/2-6-4/terravault/ordinis/issues/3)
2026-05-11 22:07:11 +00:00
Александр Зимин fc9db66c7c Merge branch 'feat/x-section-metadata' into 'main'
feat(form): x-section schema metadata + dynamic section bucketing

See merge request 2-6/2-6-4/terravault/ordinis!109
2026-05-11 21:52:24 +00:00
Александр Зимин 1a72418cb8 feat(form): x-section schema metadata + dynamic section bucketing 2026-05-11 21:52:24 +00:00
Александр Зимин 6d34632220 Merge branch 'fix/drawer-a11y-description' into 'main'
fix(a11y): Drawer always renders SheetDescription — silence Radix warning

See merge request 2-6/2-6-4/terravault/ordinis!108
2026-05-11 21:42:41 +00:00
Александр Зимин cc131e52f2 fix(a11y): Drawer always renders SheetDescription — silence Radix warning 2026-05-11 21:42:41 +00:00
Александр Зимин 2358d95375 Merge branch 'feat/dictionary-snapshots' into 'main'
feat(api): GET /dictionaries/{name}/snapshots — TimeTravel slider marks (backend #2)

See merge request 2-6/2-6-4/terravault/ordinis!97
2026-05-11 21:10:36 +00:00
Александр Зимин 12277071b2 Merge branch 'feat/actions-3dot-v2' into 'main'
feat(ui): 3-dot actions menu + history compare/revert + DateTime fitting + tablet

See merge request 2-6/2-6-4/terravault/ordinis!107
2026-05-11 21:04:34 +00:00
Zimin A.N. b312ba37ad feat(ui): 3-dot row menu + history compare/revert + DateTime fitting + tablet touch
Per user feedback screenshots:

SchemaDrivenForm DateTimeField:
- grid → flex flex-wrap: на узких cells (drawer 520px ÷ 2 cols = ~210px)
  time wraps под date вертикально. На wide — inline.
- Date min-w 8rem (128px), time w-24 (96px) — tablet touch-safe.

TableHeaderCell без visible label (sr-only для screen readers).
TableCell содержит DropdownMenu trigger 36×36px (touch target):
  - History (always)
  - Edit, Separator, Close (только canMutate, Close в danger color)
Заменяет 3 inline IconButton'a — экономит ширину + tablet friendly.

RecordHistoryDrawer accepts onCompare / onRevert callbacks. Каждая
non-current version row показывает:
  - Сравнить с текущим — opens ConflictDiffModal (reused diff UI)
  - Откатить к v{N} — submit updateMut с этой version данными как
    payload (+ confirm dialog). Backend создаёт новую active version,
    bitemporal history preserves старые.
JSON viewer переключился с <details> на state-driven (hide/show
без CSS rabbit hole).

history.hideData/compare/revert/revertConfirm (RU + EN).

- 3-dot trigger 36px = comfortable touch target (Apple HIG 44, ours
  acceptable для density)
- Drawer на <880px viewport = fullscreen sheet (already)
- DateTime wraps на cell <8rem+9rem+gap = 290px
- Sidebar collapse на <1024 = hamburger overlay
2026-05-12 00:03:44 +03:00
Александр Зимин 11797f88ae Merge branch 'feat/row-click-and-wide-rail' into 'main'
feat(ui): row click → edit drawer + wide-mode left section rail

See merge request 2-6/2-6-4/terravault/ordinis!105
2026-05-11 20:51:42 +00:00
Zimin A.N. 54cf563162 feat(ui): row click opens edit + wide-mode left section rail in drawer
Two improvements per user feedback ('по клику открывается редактирование и
в развернутом виде слева навигация'):

## 1. Row click → edit drawer

TableRow в /dictionaries/$name теперь имеет onClick={setEdit({kind:'edit',
record:r})} когда canMutate. cursor-pointer + bubbling guards:
- Checkbox cell и Actions cell имеют onClick stopPropagation чтобы
  внутренние controls не открывали drawer случайно.
- Anonymous users (no canMutate) — row не clickable (read-only, no drawer).

## 2. Wide-mode left rail в drawer

SchemaDrivenForm в sections layout теперь умеет ResizeObserver-based detection
своей ширины. Когда контейнер ≥720px (drawer wide mode = 880px) → render'ит
180px sticky left rail с section list + per-section field counts. Click rail
item → smooth scroll к section anchor. Иначе chip strip сверху, как раньше.

Container-based (не viewport-based) чтобы narrow drawer на wide viewport не
рендерил rail (520px не fits 180+1fr grid).
2026-05-11 23:51:03 +03:00
Александр Зимин bf4a99c1ad Merge branch 'fix/fk-select-overflow' into 'main'
fix(form): FK select label overflow — truncate + ellipsis (наезжают)

See merge request 2-6/2-6-4/terravault/ordinis!104
2026-05-11 20:44:17 +00:00
Zimin A.N. b2231a5a47 fix(form): FK select label overflow — truncate + ellipsis (наезжают on chevron)
Native <select> для FK references показывал label '<code> — <localized name>'
(например 'OPT_MIDRES_MS — Оптический мульти-резолюционный мульти-спектральный')
— текст бьётся на chevron в trigger area из-за тонкого contract'а browser-
specific overflow handling (наезжают per user screenshot 2026-05-11).

Fix:
- buildOption() обрезает name до MAX_FK_LABEL_CHARS=28 (code intact) +
  '…' suffix когда combined превышает limit
- select сам получает 'truncate overflow-hidden whitespace-nowrap text-ellipsis'
  как защита если browser native truncate не сработал
- pr-10 → pr-9 (38px) — точно совпадает с right-3 chevron position (12px)
  + ~16px icon + 8px gap, не overlap'aет.
2026-05-11 23:43:38 +03:00
Александр Зимин 59067cfcf1 Merge branch 'fix/logo-thicker-orbits' into 'main'
fix(ui): logo orbits stroke 5→12 — actually visible at 28px

See merge request 2-6/2-6-4/terravault/ordinis!103
2026-05-11 20:38:37 +00:00
Zimin A.N. fcb0ad0eb5 fix(ui): logo orbits stroke 5→12 — actually visible at 28px
stroke=5 в viewBox 256 при 28px render = 5*28/256 = 0.55px (subpixel,
почти невидимо). stroke=12 даёт ~1.31px real — чёткая линия. Заодно
переключил с --color-line-2 на --color-line чтобы немного контрастнее
на bg-surface.
2026-05-11 23:38:00 +03:00
Александр Зимин 162e97be0e Merge branch 'fix/logo-prominence-and-create-label' into 'main'
fix(ui): bigger sidebar logo + shorter Создать label

See merge request 2-6/2-6-4/terravault/ordinis!102
2026-05-11 20:36:40 +00:00
Zimin A.N. 0c978bec0c fix(ui): bigger logo + shorter 'Создать' label
Logo: при 26px+тонких stroke (1.5) почти невидим. Bumped:
- width/height 26 → 28
- strokes 1.5 → 5 (визуально ~1.5px при 28px render)
- outer dots r=8 → 16/14 (main + secondaries)
- inner dots r=6.4 → 13/11
- core r=15 → 24
- outer orbit stroke использует --color-line-2 (мягче чем --color-line)

Favicon тоже укрупнён (stroke 2.2, dot r=3, core r=4) — читается в 16px tab.

Label: 'Создать запись' → 'Создать' для dict.action.create (RU + EN).
User feedback: 'Создать запись надо сократь на Создать'.
2026-05-11 23:36:00 +03:00
Александр Зимин 934f84ab72 Merge branch 'fix/logo-theme-recolor' into 'main'
fix(brand): recolor logo to terracotta accent (theme-aligned)

See merge request 2-6/2-6-4/terravault/ordinis!101
2026-05-11 20:28:53 +00:00