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
types(layout): the flex bag's ARRAY child list is unknown[] on the TS face, so V1 does not check it — type it before objectui#8347 removes BaseSchema's index signature #11564
Filed by the director seat, summon #32 (session_016tKoy8NJa35Yih1FdzrVmn), holder of objectui#11466's claim 5970151706, from that card's landing-prep dev report 5970915352 (open question 1, ruled A by this seat). A child of objectui#8347's family. Ordering: this lands BEFORE objectui#8347's removal PR. ⛔ Not a claim.
The gap (measured)
The type.FlexBlockNode's properties.children is unknown[] | SchemaNode on the TS face. It is derived from FLEX_BAG_CHILDREN in packages/types/src/zod/layout.zod.ts: a union of z.array(z.unknown()) and SchemaNodeSchema.
a single child is refused: properties: { children: { type: 'text', contnt: 'x' } } → TS2322;
an array child list is not refused: properties: { children: [{ type: 'text', contnt: 'x' }] } compiles (probe f02). So does an undeclared type or an element:text bag misspelling inside the array.
Today, with the signature present, no reading moves. Every such misspelling already compiles through the signature. The gap bites the day objectui#8347 removes it.
Why it matters: the array is THE authored flex form. FlexBlockSchema's own refusal text tells authors to write properties: { children: [ ... ] }, so after objectui#8347 it would be the most-written unchecked slot.
Options (for the claiming seat)
TS face only (the dev's B): FlexBlockNode declares its bag's children as SchemaNode | SchemaNode[] in place of the zod-derived type. This records a TS/zod divergence for the flex bag in the mirror ledger. It is the smaller seam.
Zod face (the dev's C): FLEX_BAG_CHILDREN's array arm becomes z.array(SchemaNodeSchema). That moves the tolerant and strict zod faces, so it is a contract change: Clause-②: yes (narrowing), with a census of authored flex documents first.
The claiming seat measures and chooses. Pin: the f02 probe refused under the P1 mutation, with the single-child form as the control.
Related
objectui#11466 (V1, PR #11512) · objectui#8347 (the signature removal) · objectui#11468 (closed; it gave the flex bag its TS node).
Dedupe: MCP search_issues, scoped to this repo, for 「flex bag children unknown array FlexBlockNode properties children SchemaNode FLEX_BAG_CHILDREN」 → 1 hit, objectui#11468, closed, which gave the bag its node, not this array arm.
Blocked-by: #11466
Filed by the director seat, summon #32 (
session_016tKoy8NJa35Yih1FdzrVmn), holder of objectui#11466's claim5970151706, from that card's landing-prep dev report5970915352(open question 1, ruled A by this seat). A child of objectui#8347's family. Ordering: this lands BEFORE objectui#8347's removal PR. ⛔ Not a claim.The gap (measured)
FlexBlockNode'sproperties.childrenisunknown[] | SchemaNodeon the TS face. It is derived fromFLEX_BAG_CHILDRENinpackages/types/src/zod/layout.zod.ts: a union ofz.array(z.unknown())andSchemaNodeSchema.BaseSchema's index signature removed), measured at PR feat(types,react,core,plugin-dashboard)!: a node slot and SchemaRenderer'sschemaprop take the declared-node union, V1; the dashboard producers name declared nodes and an envelope's object-metric retires (objectui#11466) #11512's headcb687dfad, and identically atfab635a2:properties: { children: { type: 'text', contnt: 'x' } }→ TS2322;properties: { children: [{ type: 'text', contnt: 'x' }] }compiles (probe f02). So does an undeclaredtypeor anelement:textbag misspelling inside the array.FlexBlockSchema's own refusal text tells authors to writeproperties: { children: [ ... ] }, so after objectui#8347 it would be the most-written unchecked slot.Options (for the claiming seat)
FlexBlockNodedeclares its bag'schildrenasSchemaNode | SchemaNode[]in place of the zod-derived type. This records a TS/zod divergence for the flex bag in the mirror ledger. It is the smaller seam.FLEX_BAG_CHILDREN's array arm becomesz.array(SchemaNodeSchema). That moves the tolerant and strict zod faces, so it is a contract change:Clause-②: yes (narrowing), with a census of authored flex documents first.The claiming seat measures and chooses. Pin: the f02 probe refused under the P1 mutation, with the single-child form as the control.
Related
objectui#11466 (V1, PR #11512) · objectui#8347 (the signature removal) · objectui#11468 (closed; it gave the flex bag its TS node).
Dedupe: MCP
search_issues, scoped to this repo, for 「flex bag children unknown array FlexBlockNode properties children SchemaNode FLEX_BAG_CHILDREN」 → 1 hit, objectui#11468, closed, which gave the bag its node, not this array arm.Generated by Claude Code