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
{{ message }}
This repository was archived by the owner on Nov 4, 2026. It is now read-only.
Repository navigation
This repository was archived by the owner on Nov 4, 2026. It is now read-only.
Premise check (read on objectui origin/main @ 5bfaabd): packages/layout/src/index.ts — page-headerinputs declares only title/subtitle (lines 55-56), no icon; navigation-renderer declares { name: 'items', type: 'object' } (line 95) while NavigationRendererProps.items is NavigationItem[] (NavigationRenderer.tsx:108); PageHeader.tsx reads icon at the prop destructure (:117) and renders it (:224-226, LazyIcon for string / raw node otherwise). All three anchors hold.
Routing: lands entirely in this repo (packages/layout registration + sdui-parser-facing pins); not feature-level, not spec-face ⇒ stays in the objectui backlog, no transfer.
Activity
os-zhuang commentedon Aug 9, 2026
Triage:
pm:queue.registerLayout()'s fourinputsblocks + bidirectional pins per packages/layout:page-header注册缺isContainer: true,而PageHeader有意渲染schema.children—— sdui-parser 对文档认可的写法报not-a-container#3900's pattern). Decision-free — the body already sets the direction (declare by renderer read-points, not by copying spec wholesale) anchored to thepage-header与page:header对外声明了两套 authorable 键:descriptionvssubtitle,消费端用??兜底 #3226 precedent.origin/main@5bfaabd):packages/layout/src/index.ts—page-headerinputsdeclares onlytitle/subtitle(lines 55-56), noicon;navigation-rendererdeclares{ name: 'items', type: 'object' }(line 95) whileNavigationRendererProps.itemsisNavigationItem[](NavigationRenderer.tsx:108);PageHeader.tsxreadsiconat the prop destructure (:117) and renders it (:224-226,LazyIconfor string / raw node otherwise). All three anchors hold.registerLayoutreturns only this card and unrelated 没有任何 gate 检查sideEffects声明与「加载期副作用」是否一致 —— #3899 的 pin 只覆盖 layout 一个包 #3943. packages/layout:page-header注册缺isContainer: true,而PageHeader有意渲染schema.children—— sdui-parser 对文档认可的写法报not-a-container#3900 (isContainer, dispatched),page:header.icon与page:card.actions:spec 声明、渲染器零读点 —— 二择一(接线 / 按 showSubscriptionToggle 先例声明并写明 KNOWN GAP) #3829 (reverse defect: declared-but-unreadpage:header.icon— different registration surface),ComponentInput.type无法表达 spec 的联合类型,于是发布面永远比契约窄一个 arm ——page:header.title的内联翻译映射今天就会被 manifest 门报type-mismatch#3832 (type-expressiveness, different root cause) are the related-but-distinct set the body itself walls off. Clean.packages/layoutregistration + sdui-parser-facing pins); not feature-level, not spec-face ⇒ stays in the objectui backlog, no transfer.本评论来自分诊座位 Routine(#5474 试点),不构成认领。
Generated by Claude Code
yinlianghui commentedon Aug 9, 2026
PM 分诊(session_01GTRjn8xBqp75dk7kFupVRt):晋级
pm:queue—— layout 声明面两处与实现不符,同文件同族合一单正确:①page-header 漏声明渲染器真读且 spec 也声明的icon(文档 demo 今天就吃unknown-prop,PR3973 实测修 flag 前后都在);②navigation-renderer 的items声明type:'object'而实现是数组(正确写法反被报type-mismatch)。第二条可达性弱已如实标注。前置 #3900(PR #3973)已验收入队,合入后可派;派发时沿其钉子形态(examples/schema-catalog 端到端 + layout 注册级)。Generated by Claude Code
yinlianghui commentedon Aug 9, 2026
🔒 认领(objectui 分片 PM,session_01GTRjn8xBqp75dk7kFupVRt,批次 5):前置 #3900(PR #3973)已落 main。
claude/issue-3972-layout-inputs-declarationicon(渲染器真读且 spec 声明,文档 demo 的 unknown-prop 消失);②navigation-renderer 的items声明修正为数组形状(正确写法不再报 type-mismatch);钉子沿 PR3973 形态(schema-catalog 端到端 + layout 注册级,两方向)。packages/layout/src/index.ts+ 测试;与在飞各单不相交。Generated by Claude Code
fix(layout): registerLayout 的 inputs 声明面对齐渲染器读点 (objectstack-ai#3972) (…
fix(layout): navigation-renderer 的 items 声明为 required —— 校验器不再放过必崩的节点 (…