发现于 #3832 的实施(PR 见下)。#3832 的裁定把范围钉在「五个实测标本」,这两个不在那张表里,所以本 PR 按不扩围处理,单独立卡。
机制
与 #3832 的四个 i18n 标本逐字同形:input 自己的 description 教作者写内联翻译映射,同一个 input 的 type: 'string' 又让 manifest 门对这个映射报 type-mismatch。
| 键 |
声明位 |
description 原文 |
spec 实测 |
渲染器 |
element:text.content |
packages/components/src/renderers/basic/elements.tsx:109 |
Accepts an inline translation map ({ en, "zh-CN", … }) |
字符串 或 内联映射均 OK |
elements.tsx:98 走 pickLocalized |
element:button.label |
packages/components/src/renderers/basic/elements.tsx:319 |
同上 |
同上 |
走 pickLocalized |
两个键都 required: true,且两个块都在 PUBLIC_BLOCKS(public-blocks.ts:89 / :91),所以它们进 sdui.manifest.json 与 sdui-intrinsics.d.ts,是 AI 作者直接读到的发布面。
实测(objectui origin/main @ 1b21b1aaa,与 #3832 六个标本同一次探针)
element:text.content (i18n map) -> warning/type-mismatch: prop "content" expected a string
element:button.label (i18n map) -> warning/type-mismatch: prop "label" expected a string
spec 侧(ComponentPropsMap,pin 在 @objectstack/spec 17.0.0-rc.6)对两个键的实测:string=OK i18n-map=OK number=no boolean=no。即门比契约窄一条臂,和 #3832 的五个标本同一根因。
修复
#3832 的机制部分已经落地(type 收粗类型数组,任一臂命中即过),所以这两处各是一行:
type: ['string', 'object']
修完请一并把它们挂进 apps/console/src/__tests__/component-input-union-specimens.test.ts(那个文件已经是标本验收面,每个标本带一条「不命中任何臂仍要报」的对照断言)。
为什么单独立卡而不是并进 PR
#3832 的维护者裁定逐字写的是「the five measured specimens」,这两个是本次实施中新测出来的,不在裁定的完成范围内 —— 按 Prime Directive #10 与本轮派发的不扩围要求单独记档,不搭 PR。范围小、判据已经写好,可以直接接批次。
关联:#3832(机制 + 五标本)、#4163(I18nLabel 渲染读点审计 —— 与本卡相反的方向:那边是渲染器丢掉映射形态,这两个键的渲染器已经解析映射)、#3808、AGENTS.md #0.1
发现于 #3832 的实施(PR 见下)。#3832 的裁定把范围钉在「五个实测标本」,这两个不在那张表里,所以本 PR 按不扩围处理,单独立卡。
机制
与 #3832 的四个 i18n 标本逐字同形:input 自己的
description教作者写内联翻译映射,同一个 input 的type: 'string'又让 manifest 门对这个映射报type-mismatch。element:text.contentpackages/components/src/renderers/basic/elements.tsx:109Accepts an inline translation map ({ en, "zh-CN", … })elements.tsx:98走pickLocalizedelement:button.labelpackages/components/src/renderers/basic/elements.tsx:319pickLocalized两个键都
required: true,且两个块都在PUBLIC_BLOCKS(public-blocks.ts:89/:91),所以它们进sdui.manifest.json与sdui-intrinsics.d.ts,是 AI 作者直接读到的发布面。实测(objectui
origin/main@1b21b1aaa,与 #3832 六个标本同一次探针)spec 侧(
ComponentPropsMap,pin 在@objectstack/spec17.0.0-rc.6)对两个键的实测:string=OK i18n-map=OK number=no boolean=no。即门比契约窄一条臂,和 #3832 的五个标本同一根因。修复
#3832 的机制部分已经落地(
type收粗类型数组,任一臂命中即过),所以这两处各是一行:修完请一并把它们挂进
apps/console/src/__tests__/component-input-union-specimens.test.ts(那个文件已经是标本验收面,每个标本带一条「不命中任何臂仍要报」的对照断言)。为什么单独立卡而不是并进 PR
#3832 的维护者裁定逐字写的是「the five measured specimens」,这两个是本次实施中新测出来的,不在裁定的完成范围内 —— 按 Prime Directive #10 与本轮派发的不扩围要求单独记档,不搭 PR。范围小、判据已经写好,可以直接接批次。
关联:#3832(机制 + 五标本)、#4163(
I18nLabel渲染读点审计 —— 与本卡相反的方向:那边是渲染器丢掉映射形态,这两个键的渲染器已经解析映射)、#3808、AGENTS.md #0.1