You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
fix(spec): validate theme / analytics_cube at the /meta write door via UNREGISTERED_KIND_SCHEMAS (#10194) (#10440)
* fix(spec): bind theme / analytics_cube in UNREGISTERED_KIND_SCHEMAS (#10194)
Same SHAPE-check-only treatment #6245 gave webhook/connector/sharing_rule:
no MetadataTypeSchema member, no DEFAULT_METADATA_TYPE_REGISTRY entry, no
capability or authorization change — only a 422 where PUT /meta/theme/:name
and PUT /meta/analytics_cube/:name currently store any JSON as success:true.
Both schemas gain ...MetadataProtectionFields (the sharing_rule precedent:
strict schemas at the overlay door must declare the ADR-0010 stamp or 422
the runtime's own envelope). The map's closing invariant (entry === the
stack collection's element schema) is now pinned for all five entries.
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_016gcKVsiywU9CcS96S5t9qD
* test: mirror the #6245 house pins for theme / analytics_cube; changeset (#10194)
- protocol-meta.test.ts: valid+invalid pair per new kind; the schema-less
fall-through control specimen moves theme -> rag_pipeline (the webhook
precedent: the old specimen body is spec-INVALID and now 422s, and
rag_pipeline is the only URL-map kind left that resolves no schema).
- metadata-protocol fixtures: theme probe bodies made spec-valid (the door
under test is authorization/advertisement, not the shape check).
- changeset: minor @objectstack/spec, following #6245's landed grading.
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_016gcKVsiywU9CcS96S5t9qD
* test(runtime): spec-valid theme probe bodies in the two door-under-test controls (#10194)
Same fixture-triage class as the metadata-protocol/objectql sites: these
controls measure the arity door and the #7894 permission verdict, not the
shape check, so their probe bodies must parse under ThemeSchema now that
theme resolves a schema through UNREGISTERED_KIND_SCHEMAS. Repo-wide sweep
(type-keyed and URL-path spellings, theme + analytics_cube) finds no other
site in this class.
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_016gcKVsiywU9CcS96S5t9qD
---------
Co-authored-by: Claude <noreply@anthropic.com>
Copy file name to clipboardExpand all lines: content/docs/references/ui/theme.mdx
+7Lines changed: 7 additions & 0 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -105,6 +105,13 @@ const result = BorderRadiusSchema.parse(data);
105
105
|**zIndex**|`never`| optional |[REMOVED]`theme.zIndex` was removed in @objectstack/spec 17.0.0 (#5021, ADR-0049 D2) — the engine emitted `--z-base` … `--z-tooltip` and nothing read one, so an overlay you "lifted" still stacked by document order. Delete the key; if your own CSS reads those variables, declare them under `customVars` (`{ "z-modal": "1050" }` emits exactly the same `--z-modal`). Run `os migrate meta --from 16` to list the mechanical edits for existing sources; apply them by hand. |
0 commit comments