From e70158bc7ac340852f2b04f97f0516cf2e9eff01 Mon Sep 17 00:00:00 2001 From: os-warren Date: Thu, 10 Sep 2026 21:26:54 +0000 Subject: [PATCH] docs(changeset): correct two now-false sentences in pending types changesets MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Both files are release-note INPUT, still pending in `.changeset/` and absent from every tracked CHANGELOG, so each sentence ships as written at the next `@object-ui/types` publish. `8992-user-actions-collapse-and-docblock.md` — one word. `UserActionsConfigSchema` has eleven members and `buttons` is the only one that never carried a default, so ten are defaulted and this change moved three of those ten. "the other ten defaulted keys" therefore names seven, and the file's own item 2 already enumerates exactly those seven. The file's OTHER occurrence of "ten" ("all ten defaulted keys read `description = undefined`") is correct and is untouched. `8913-object-kanban-columns-declared.md` — one paragraph, invalidated when objectui#8990 landed. The headline claim ("is inert on this block", "`groupBy` is required on this face") is the wrong one, not the trailing citation: `groupBy` is now optional on both twins, so a schema-valid lane-less board does reach the bare-string arm. The paragraph now says the arm is reachable and cites objectui#8990 as the change that made it so rather than as pending work. Co-Authored-By: Claude Opus 5 Claude-Session: https://claude.ai/code/session_01Jmxdo7bmeqCQHLSfmLVX9w --- .../8913-object-kanban-columns-declared.md | 19 ++++++++++++++----- ...8992-user-actions-collapse-and-docblock.md | 2 +- 2 files changed, 15 insertions(+), 6 deletions(-) diff --git a/.changeset/8913-object-kanban-columns-declared.md b/.changeset/8913-object-kanban-columns-declared.md index 2a3234ec04..204704b3c4 100644 --- a/.changeset/8913-object-kanban-columns-declared.md +++ b/.changeset/8913-object-kanban-columns-declared.md @@ -62,11 +62,20 @@ render is the same defect one layer up, so neither is blessed: in "Uncategorized") and a string-first mix is ignored whole. The protocol's "or" names two array shapes and no mixed example. -**The bare-string array is admitted for parity and is inert on this block.** The -renderer honours it only when a board has no `groupBy`, and `groupBy` is required -on this face — so no document that passes this schema reaches it. It is declared -because refusing an arm the protocol names would be a second narrowing; the -requiredness is tracked as objectui#8990. +**The bare-string array is admitted for parity, and on this block it is now +REACHABLE.** The renderer honours it only when a board has no `groupBy` — the +`effectiveColumns` memo takes the string branch under `if (!schema.groupBy)` — and +`groupBy` was required on this face when this entry was written, so no document +that passed this schema could reach it. objectui#8990 has since made `groupBy` +optional on both twins (`groupBy?: string` in `objectql.ts`, +`z.string().optional()` in the Zod mirror), and a lane-less board now does reach +the arm: a board carrying only `objectName` and `columns: ['todo', 'doing', 'done']` +parses green and satisfies every guard on that branch, drawing those lanes titled +by the raw strings. It is declared because refusing an arm the protocol names would +be a second narrowing — that reason is unchanged; what moved is that the arm is +exercised rather than dormant. objectui#8990's own entry records the same +reachability from its side, pinned with a firing control in +`packages/plugin-kanban/src/__tests__/laneLessBoard-8990.test.tsx`. **What is deliberately NOT judged.** `cards` is not required (a swimlane does not carry its own cards), so an undeclared lane key such as the retired `items` diff --git a/.changeset/8992-user-actions-collapse-and-docblock.md b/.changeset/8992-user-actions-collapse-and-docblock.md index 2eca453727..1f1203b5cd 100644 --- a/.changeset/8992-user-actions-collapse-and-docblock.md +++ b/.changeset/8992-user-actions-collapse-and-docblock.md @@ -58,7 +58,7 @@ both measured by rebuilding `packages/types/dist` on each side of the change: `description = undefined` after the strip, on both sides of this change, while `buttons` — the one member that never carried a default — keeps its description through it. So the three simply stop being an exception: before, the local extension - supplied descriptions the other ten defaulted keys did not have. Nothing in this + supplied descriptions the other seven defaulted keys did not have. Nothing in this repository reads them. 2. In the emitted `objectql.zod.d.ts` the three move from `z.ZodOptional[z.ZodBoolean]` to `z.ZodDefault[z.ZodBoolean]` — the spec's own declaration, as the compiler sees it