From e402d82e73e95341da20d6bc1ce822e3f4d6f18b Mon Sep 17 00:00:00 2001 From: Claude Date: Sat, 17 Oct 2026 18:19:42 +0000 Subject: [PATCH] fix(spec): the page-template-closed-region-unplaced-refused entry says what the console shows for a stored row The entry's reason said a page row stored with an unregistered template or an unplaced region "renders as before". The console that ships with 18 draws a refusal in its place instead: an unregistered template draws no layout, only a refusal naming it and the registered templates; on a default, header-sidebar-main or three-column page an unplaced region is not drawn, and a refusal under main names it and the template's slots. A page that names no template still takes its page type's layout, which stacks such a region under main. acceptanceCriteria is unchanged. Claude-Session: https://claude.ai/code/session_01TyRhWbVbbQpQJTDbW8VahJ Co-authored-by: Claude --- .changeset/24195-page-template-entry-reason.md | 11 +++++++++++ ...18.page-template-closed-region-unplaced-refused.ts | 9 +++++++-- 2 files changed, 18 insertions(+), 2 deletions(-) create mode 100644 .changeset/24195-page-template-entry-reason.md diff --git a/.changeset/24195-page-template-entry-reason.md b/.changeset/24195-page-template-entry-reason.md new file mode 100644 index 00000000000..808e351411c --- /dev/null +++ b/.changeset/24195-page-template-entry-reason.md @@ -0,0 +1,11 @@ +--- +'@objectstack/spec': patch +--- + +The protocol 18 migration `page-template-closed-region-unplaced-refused` now says what the console shows for a page row stored before the refusal. Its reason used to say such a row "renders as before"; on the console that ships with 18 it does not. + +Clause-②: no + +A stored page row with an unregistered template or an unplaced region is still served unchanged, and saving it again is still refused until it is renamed. Until then the console draws a refusal in its place. An unregistered template draws no layout, only a refusal that names the template and the registered templates. On a `default`, `header-sidebar-main` or `three-column` page, an unplaced region is not drawn and is not moved into another slot. Where it used to be stacked, under `main`, a refusal names it and the slots that template places. A page that names no template takes its page type's layout, which still stacks such a region under `main`. + +The entry's acceptance criteria are unchanged: rename the template or region, and each renamed region draws in its slot. diff --git a/packages/spec/src/migrations/entries/semantic/18.page-template-closed-region-unplaced-refused.ts b/packages/spec/src/migrations/entries/semantic/18.page-template-closed-region-unplaced-refused.ts index cbcbd9f5d69..eb447dac1c4 100644 --- a/packages/spec/src/migrations/entries/semantic/18.page-template-closed-region-unplaced-refused.ts +++ b/packages/spec/src/migrations/entries/semantic/18.page-template-closed-region-unplaced-refused.ts @@ -56,8 +56,13 @@ export const entry: SemanticMigration = { + 'page-template-full-width-to-default on read (full-width and default were one layout component in the ' + 'console, so nothing changes on screen); an unregistered template and an unplaced region have no lossless ' + 'rewrite and are not converted. ' - + '⚠️ A page row already stored with an unregistered template or an unplaced region is served unchanged ' - + 'and renders as before, while saving it again is refused until it is renamed. ADR-0087.', + + '⚠️ A page row already stored with an unregistered template or an unplaced region is served unchanged, ' + + 'and saving it again is refused until it is renamed. Until then the console draws a refusal in its place: ' + + 'an unregistered template draws no layout, only a refusal naming the template and the registered ' + + 'templates; on a default, header-sidebar-main or three-column page an unplaced region is not drawn and ' + + 'moves into no other slot, and where it used to stack, under main, a refusal names it and the slots that ' + + 'template places. The exception is a page that names no template: it takes its page type\'s layout, which ' + + 'still stacks such a region under main. ADR-0087.', acceptanceCriteria: 'Grep every page in defineStack pages sources, exported stacks and every page row in sys_metadata for a ' + 'template outside default, header-sidebar-main, three-column and dashboard, and, on kind full pages, '