@ai-matrx/records-ui 0.85.10 → 0.85.13

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/CHANGELOG.md CHANGED
@@ -1,6 +1,78 @@
1
1
  # Changelog — @ai-matrx/records-ui
2
2
 
3
- ## Unreleased
3
+ ## 0.85.13 (2026-09-25 — published by PUBLISH-SWEEP-6)
4
+
5
+ **Needs `@ai-matrx/records` 0.58.11.** 0.85.12 was tagged but never reached npm: its packed-consumer
6
+ canary could not import `wholeValueOf` because records 0.58.10 never published. Everything under
7
+ 0.85.12 below ships here.
8
+
9
+ ## 0.85.12 (2026-09-25 — tagged by PUBLISH-SWEEP-5; never published, see 0.85.13)
10
+
11
+ **Needs `@ai-matrx/records` 0.58.10** (the decision hold). Carries UI-FIX-19's dashboard read-back and
12
+ store-sentence-first refusals (`0989c57e69`) and S5-PRIME-2's Undo hold (`3e2c93da3c`). ORDER-FILTER
13
+ shipped in 0.85.11 (below).
14
+
15
+ ### Lane MOVER-BIG-VALUES (2026-09-25)
16
+
17
+ * **A value kept as a file shows its words and opens the file** (`WholeValue.tsx`): every read
18
+ layout draws the first words, the whole text's size and "Open the whole text" through the new
19
+ host port `hrefForFile`; unbound, it says the rest is in a file (never a dead link). The export
20
+ writes the file's whole content through the new host port `readFileText`.
21
+
22
+ ### Lane S5-PRIME-2, VERIFIER-20 (2026-09-25)
23
+
24
+ * **A decision is held for Undo before it is made** (Gmail's undo send). Approve or decline — by
25
+ key, click or a selection — and the row says "Approved · made in 5s · Undo" for the row's
26
+ `undo_seconds`, then the decision is made through the one door. Undo (or `z`) inside the window
27
+ calls nothing: the item is waiting again exactly as it was, with no history. A row the store
28
+ gives 0 (a run already waits on the answer) is made at once and says so. A hold still open when
29
+ the page goes away or the inbox unmounts is made then, never dropped. Suite
30
+ `inbox-decision-undo.test.tsx`: RED 5/5 on the prior bytes, GREEN 5/5. Needs `@ai-matrx/records`
31
+ with `undo_seconds`.
32
+ * **The inbox's clear is named Clear, and its view Cleared** (was Done / Done). A checklist step
33
+ row already has a Done — it FINISHES the step — so two buttons named Done on one row meant two
34
+ different things (found walking the live inbox as admin@admin.com). `e` still clears.
35
+
36
+ ### Lane UI-FIX-19 (2026-09-25, VERIFIER-20)
37
+
38
+ * **A new dashboard says nothing the store did not lose** (VERIFIER-20 a). The read-back treats an
39
+ empty default the store fills in (`group_by: []`, `filter: {}`) as the same "nothing" that was
40
+ sent, beside the earlier rule that keys the store adds to a setting are not a loss. Suite: a
41
+ fresh dashboard created and read back as production stores it — RED 2 on the prior bytes, GREEN.
42
+ * **A refusal is headed by the store's own sentence, and no SQLSTATE or codename reaches a person**
43
+ (VERIFIER-20 b). `PlainRefusal.storeSaid`; `RefusalNotice` heads with the store's sentence (the
44
+ generic title only when nothing of its words survived) and says it once. Engineer text (SQLSTATE,
45
+ an engineer's hint) is on `data-for-engineers` only: no longer the notice's tooltip or a hidden
46
+ line, and `RefusalLine` likewise. `WhereItLives` passes a refused move's hint through
47
+ `hintForAPerson`. Suite `a-refusal-heads-with-the-store-s-own-sentence.test.tsx`: RED 2/2 -> GREEN.
48
+ **Consumer action:** a host that read the notice's `title` for debugging reads
49
+ `data-for-engineers`.
50
+
51
+ **Needs the next `@ai-matrx/records`** (`readInViewOrder({ filter })`).
52
+
53
+ * **A filtered, hand-ordered view reads exactly its rows, in their places.** `useHandOrderRows`
54
+ takes the view's `filter` and hands it to the order door, which pages the filtered hand order.
55
+ It used to read the first 500 positions of the WHOLE table and lay them over the list door's
56
+ page, so a matching row placed past position 500 fell to the end in arrival order and every page
57
+ read hundreds of rows the view does not show (GRID-MANUAL's named limit). The Grid and the
58
+ board/gallery/calendar (`useViewRecords`) pass the filter they already hold; page two of a
59
+ filtered hand order is the door's page two. The client-side `inHandOrder` helper is gone.
60
+ Tests: `a-hand-set-order-is-the-grids-sort.test.tsx` RED 3/16 on the prior bytes, GREEN 16/16.
61
+
62
+ ## 0.85.11
63
+
64
+ Automatic changed-only republish (docs/metadata drift since the last tag — see
65
+ `git diff npm/records-ui/v0.85.10..npm/records-ui/v0.85.11 -- apps/shared/records-ui`).
66
+ No source changes intended and no consumer action required.
67
+
68
+ ### Lane ORDER-FILTER (2026-09-25)
69
+
70
+ ## 0.85.10 (2026-09-25 — published by PUBLISH-SWEEP-5)
71
+
72
+ **Needs `@ai-matrx/records` 0.58.8** (`TableHomeDestination.slug`). Carries UI-FIX-19's move-destination
73
+ address (`461302fbf7`), the lane-tag filter in `hintForAPerson` (`1fd6f9a527`) and the move confirmation
74
+ through the host's notify (`7b7936fb27`).
75
+ Also GRID-MANUAL: the grid draws a hand-set order as its Manual sort (code swept in `dea2f82a14`).
4
76
 
5
77
  ### Lane GRID-MANUAL (2026-09-25) — a hand-set order is the grid's sort
6
78
 
@@ -27,12 +99,6 @@
27
99
  GREEN 13/13. **Consumer action:** none; with this published and installed, a hand-ordered view no
28
100
  longer needs to open as the Sheet.
29
101
 
30
- ## 0.85.10 (2026-09-25 — published by PUBLISH-SWEEP-5)
31
-
32
- **Needs `@ai-matrx/records` 0.58.8** (`TableHomeDestination.slug`). Carries UI-FIX-19's move-destination
33
- address (`461302fbf7`), the lane-tag filter in `hintForAPerson` (`1fd6f9a527`) and the move confirmation
34
- through the host's notify (`7b7936fb27`).
35
-
36
102
  ### Lane MOVE-AND-OUTSIDER (2026-09-24)
37
103
 
38
104
  * **A refused move stays on the confirm and says why, with the store's remedy.** `WhereItLives`