Skip to content

Commit 7697a0e

Browse files
os-zhuangclaude
andauthored
chore(spec): hard-remove dead blank/record_review page config (enforce-or-remove) (#2268)
Completes framework#2265. Deletes BlankPageLayoutSchema/BlankPageLayoutItemSchema/ RecordReviewConfigSchema (+ inferred types), the blankLayout/recordReview fields on PageSchema, and page-builder.zod.ts (the blank drag-drop canvas config) + its studio re-exports — all unreachable (their page types have no renderer and were removed from PageTypeSchema; objectui dropped refs in objectui#1949). page liveness ledger → 15 props. Verified: spec UI 787 + studio 104 tests pass, typecheck clean, liveness gate exit 0. Co-authored-by: Claude Opus 4.8 <noreply@anthropic.com>
1 parent e7e04f1 commit 7697a0e

7 files changed

Lines changed: 35 additions & 484 deletions

File tree

Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,22 @@
1+
---
2+
"@objectstack/spec": minor
3+
---
4+
5+
chore(spec): hard-remove the dead `blank`/`record_review` page config (enforce-or-remove)
6+
7+
Completes the enforce-or-remove started in framework#2265. The `blank` and
8+
`record_review` page types were already removed from `PageTypeSchema` (no
9+
renderer), their fields marked `@deprecated`, and objectui dropped all
10+
references (objectui#1949). This deletes the now-unreachable surface:
11+
12+
- `BlankPageLayoutSchema`, `BlankPageLayoutItemSchema`, `RecordReviewConfigSchema`
13+
(and their inferred types `BlankPageLayout`, `BlankPageLayoutItem`,
14+
`RecordReviewConfig`).
15+
- The `blankLayout` and `recordReview` fields on `PageSchema`.
16+
- `page-builder.zod.ts` (the `blank`-type drag-drop canvas config:
17+
`PageBuilderConfigSchema` / `CanvasSnapSettingsSchema` / `CanvasZoomSettingsSchema`
18+
/ `ElementPaletteItemSchema` / `InterfaceBuilderConfigSchema` and their types)
19+
and its `@objectstack/spec/studio` re-exports — nothing consumed them.
20+
21+
The `page` liveness ledger drops to 15 properties (the 2 `dead` entries are gone).
22+
No consumers in framework or objectui (objectui#1949 already merged).

packages/spec/liveness/page.json

Lines changed: 1 addition & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"type": "page",
3-
"_note": "PageSchema (UI). Renderers live in objectui, so consumers are cited as prose in `note` (not `evidence`, which resolves framework file:line). Seeded from the Studio page-design dogfood (framework#2254/#2261/#2265). Containers (variables/regions/interfaceConfig/slots/aria) classified at top level — one drill level, no divergent sub-statuses. `recordReview`/`blankLayout` are `dead`: their page types (record_review/blank) were removed from PageTypeSchema (framework#2265) and objectui dropped all references (objectui#1949); the fields remain @deprecated pending hard-removal.",
3+
"_note": "PageSchema (UI). Renderers live in objectui, so consumers are cited as prose in `note` (not `evidence`, which resolves framework file:line). Seeded from the Studio page-design dogfood (framework#2254/#2261/#2265). Containers (variables/regions/interfaceConfig/slots/aria) classified at top level — one drill level, no divergent sub-statuses. The removed roadmap page types (record_review/blank) and their config fields (recordReview/blankLayout) were hard-removed — no longer authorable.",
44
"props": {
55
"name": {
66
"status": "live",
@@ -30,14 +30,6 @@
3030
"status": "live",
3131
"note": "record-page binding + interfaceConfig source object — objectui PageView / InterfaceListPage."
3232
},
33-
"recordReview": {
34-
"status": "dead",
35-
"note": "Config for the removed `record_review` page type (no renderer; dropped from PageTypeSchema, framework#2265; objectui refs removed in objectui#1949). Field kept @deprecated — enforce-or-remove: slated for hard-removal."
36-
},
37-
"blankLayout": {
38-
"status": "dead",
39-
"note": "Config for the removed `blank` page type (no renderer; dropped from PageTypeSchema, framework#2265; objectui refs removed in objectui#1949). Field kept @deprecated — enforce-or-remove: slated for hard-removal."
40-
},
4133
"template": {
4234
"status": "live",
4335
"note": "layout template (e.g. header-sidebar-main) selects the region arrangement — objectui components/renderers/layout/page.tsx + containers.tsx."

packages/spec/src/studio/index.ts

Lines changed: 2 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -82,23 +82,8 @@ export {
8282
defineObjectDesignerConfig,
8383
} from './object-designer.zod';
8484

85-
export {
86-
// Page Builder Schemas
87-
CanvasSnapSettingsSchema,
88-
CanvasZoomSettingsSchema,
89-
ElementPaletteItemSchema,
90-
PageBuilderConfigSchema,
91-
/** @deprecated Use PageBuilderConfigSchema instead */
92-
InterfaceBuilderConfigSchema,
93-
94-
// Page Builder Types
95-
type CanvasSnapSettings,
96-
type CanvasZoomSettings,
97-
type ElementPaletteItem,
98-
type PageBuilderConfig,
99-
/** @deprecated Use PageBuilderConfig instead */
100-
type InterfaceBuilderConfig,
101-
} from './page-builder.zod';
85+
// Page Builder schemas removed — they configured the `blank` page-type drag-drop
86+
// canvas, which has no renderer and was dropped from PageTypeSchema (framework#2265).
10287

10388
export {
10489
// Flow Builder Schemas

packages/spec/src/studio/page-builder.test.ts

Lines changed: 0 additions & 118 deletions
This file was deleted.

packages/spec/src/studio/page-builder.zod.ts

Lines changed: 0 additions & 76 deletions
This file was deleted.

0 commit comments

Comments
 (0)