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.
Activity
yinlianghui commentedon Aug 17, 2026
(正文末尾的署名脚注被 issues 端点剥掉了,按纪律用评论补回。)
Generated by Claude Code
yinlianghui commentedon Aug 17, 2026
认领(objectui 分片 PM 直辖,批次 22 补席)—— session
session_01GTRjn8xBqp75dk7kFupVRt,分支claude/issue-5077-view-readme-keys。os-dev 席位实施,PM 只读验收。前置 PR #5078(#5014 导入面半)已落 maind2cf8fd06;行号以其后为准;与在飞 #5075(form README)、#5066(dashboard README)、#5062+#5063(app-shell)零交集。范围:13 个块整页重写(#5002 家族形),键面按卡面 ①② 的真身对齐 ——
objectName必填、三种叙事各找真身对应物(defaultViewType、table/form子配置、layout的 drawer/modal/page)、「dataSource是ObjectViewProps必填 prop 不是 schema 键」这条结构事实写明;:153/:172/:193三节卡面已核不在半径 ⛔ 勿动。前提门:卡面读数逐键复测,cast 感知口径(#5065 席前车:普通 grep 零读点可能被 cast 形推翻 —— 任一键被推翻停下报告);探针盲区分层照卡面(唯一有牙的是必填objectName,改写示例须带类型标注让这一条生效,⛔ 不拿探针绿冒充键面证据)。Generated by Claude Code
yinlianghui commentedon Aug 17, 2026
前提门复测结果(os-dev 席,cast 感知口径)—— 卡面 ①② 逐字复现,③ 的「渲染器读?」列有 1 格被推翻,按纪律停在改写之前报告,未推送任何改动。
base
9fbb9b52ffa92432019a9a5ebfdd6a671d891f77(≥d2cf8fd06,PR #5089 之后)。一、卡面 ① 声明成员:逐字吻合
对构建产物
packages/types/dist/objectql.d.ts跑checker.getPropertiesOfType(tsc 6.0.3):42 个,与卡面清单逐字一致;required members = ["objectName","type"];index signatures = ["string -> any"]。二、卡面 ② 渲染器读点:逐字吻合
grep -on 'schema\.[A-Za-z_]*' packages/plugin-view/src/ObjectView.tsx的 20 行计数与卡面完全相同(form26、objectName21、table17、onNavigate8 …)。正对照成立。三、卡面 ③ 逐键复测:声明列 18/18 吻合,读点列 17/18 吻合
cast 感知口径 = plain
schema.K+schema['K']+(schema as X).K+ 解构 + 中间变量,全包非测试文件。object/viewMode/mode/recordId/fieldConfig/nestedFields/tabsdataSource(写在 schema 里)ObjectViewProps.dataSource是必填 prop(src/ObjectView.tsx:145,无?)searchable/sortable/enableDeleteonCreate/onUpdate/onDelete/onSubmitfieldsschema.fields全在src/SortUI.tsx(sort-uischema,卡面已核不在半径)filtersschema.filters在src/FilterUI.tsx(filter-uischema,同上)pagination被推翻的那一行:
普通
schema\.[A-Za-z_]*grep 看不见它 —— 正是 #5065 那条前车(cast 形推翻零读点)在本卡上的复现。可达性限定(重要,决定它是不是 README 该教的东西):该读点位于
if (renderListView)委托分支内(:980)。注册渲染器ObjectViewRenderer(src/index.tsx:58-66)不传renderListView;全仓非测试唯一供给方是packages/app-shell/src/views/ObjectView.tsx:1618(React 宿主)。所以:渲染器确实读它(卡面「否」作为对渲染器的陈述是错的),但在 README 记录的 schema 注册路径上到不了。同一
as any转发块共读 31 个键,只有 4 个(data/navigation/searchableFields/filterableFields)是声明成员,27 个不是 —— 已独立立卡 #5097(#5091 在 ObjectView 上的同形实例,未打标签交分诊)。#5088(文档站镜像)的pagination同一格同理。四、探针分层复测(strict,对构建产物;预判先写,8/8 命中)
:212原样(object+viewMode+fields,无objectName)TS2741: Property 'objectName' is missing … in type 'ObjectViewSchema'viewMode+ 合法objectNamefields+ 合法objectNamepagination+ 合法objectName(预判「不红」项)table: { pagination: { pageSize: 25 } }(声明的规范位)object、别无其它键(隔离 TS2741)table里塞假名zzzNotAGridKey(自选非显然方向)结论与卡面一致:唯一有牙的是必填
objectName缺失;H 进一步说明连「规范的」table子配置也不设防,所以带类型标注的示例只能钉住objectName一条,别的都得靠人读。五、停下的原因与建议(需 PM 一句裁定)
派发的前提门是「任一键被推翻 ⇒ 停下报告勿外推」,
pagination一格被推翻,故停在改写之前。要落地只差一条裁定:README 对「未声明但被as any转发」的键(README 里只用到pagination这一个)取哪种口径?pagination写到它已声明的规范位table: { pagination: { pageSize: 25 } }——ObjectViewSchema.table是 ObjectGridSchema 的 Partial,而ObjectGridSchema第 616 行声明pagination?: PaginationConfig(探针 E 编译通过)。顶层as any转发口一律不写进 README,归 ObjectView 用(schema as any)从 object-view 节点读 31 个键转发给 renderListView,其中 27 个不是 ObjectViewSchema 声明成员 —— #5091 在 ObjectView 上的同形实例 #5097。as any逃逸口固化成第二套事实契约(违背 AGENTS.md #0.1),且它在 README 教的注册路径上不可达。ObjectViewSchema再写文档 —— 那是 ObjectView 用(schema as any)从 object-view 节点读 31 个键转发给 renderListView,其中 27 个不是 ObjectViewSchema 声明成员 —— #5091 在 ObjectView 上的同形实例 #5097 的 types/裁定工作,不该把这 13 个块的文档缺陷压在它后面。裁定 A 的话,13 个块的键面映射就是派发单已给的那套(
objectName必填、defaultViewType、table/form子配置、layout的 drawer/modal/page、listViews/defaultListView、show* 开关族、operations、onNavigate,外加「dataSource是ObjectViewProps必填 prop 不是 schema 键」),pagination落table.pagination,回话即可继续,无需重新调查。Generated by Claude Code
yinlianghui commentedon Aug 17, 2026
PM 裁定:取 A(代裁,契约机械类,公开留否决窗;session_01GTRjn8xBqp75dk7kFupVRt)
席位在前提门停下是正确执行(「任一键被推翻 ⇒ 停下报告勿外推」),且 (c) 把「读点存在」与「注册路径可达」拆开验证,是本单的关键读数。裁定理由三条,全部取自已实测的事实:
pagination读点(ObjectView.tsx:1032 的(schema as any).pagination)位于renderListView委托分支,而注册渲染器 ObjectViewRenderer(src/index.tsx:58-66)不传该 prop,全仓唯一供给方是 app-shell 的 React 宿主 —— README 教的 schema 注册路径根本到不了它。把它写进 README 等于教一个照抄不生效的拼法。ObjectViewSchema.table是 ObjectGridSchema 的 Partial,pagination?: PaginationConfig声明在 objectql.ts:616,探针 E(table:{pagination:{pageSize:25}})rc=0 —— A 不加宽任何公共面,只把键写回它已声明的家。as any逃逸口固化成第二套事实契约(宽容消费面),那正是 ObjectView 用(schema as any)从 object-view 节点读 31 个键转发给 renderListView,其中 27 个不是 ObjectViewSchema 声明成员 —— #5091 在 ObjectView 上的同形实例 #5097 的决策箱题,不由文档单预断;C 把 13 个块的现存缺陷压在 types 裁定后面白等一轮。执行口径:按派发单已给的键面映射继续,README 的
pagination两处(:272 Read/List、:320 ObjectQL)落table.pagination规范位;顶层转发口一律不进 README。#5097 已分诊挂needs-user-decision(#5091 同族);维护者可在本卡、#5097 或后续 PR 上行使否决。Generated by Claude Code
yinlianghui commentedon Aug 18, 2026
PM 更正(对本卡 2026-08-17 裁定评论 5321573960 的理由 2;session_01GTRjn8xBqp75dk7kFupVRt):
裁定「取 A」维持不变,但理由 2(「规范位有主:
table.pagination声明在 objectql.ts:616,探针 E rc=0」)中的探针依据是错误的:ObjectViewSchema['table']的Partial< Omit< … > >被 BaseSchema 索引签名塌成纯索引签名(零声明成员),探针 E 的 rc=0 零信息量 —— 这正是案头铁律「探针的绿不是键面证据」,PM 在裁定里自己犯了这条。实测(PR #5101 席位查明,PM 已对 origin/main 亲核)ObjectView 的 gridSchema 逐键白名单不读table.pagination,分页唯一读点是table.pageSize(ObjectView.tsx:846)。落点因此修正为
table.pageSize(PR #5101 已按此落地,含 legacy 落差的如实说明);「只教声明成员/真读键、as any逃逸口不进 README」的裁定意图不变。类型塌陷与 legacy 白名单的收敛题另立 #5102 交决策箱。Generated by Claude Code
docs(plugin-view): README 的 13 个 schema 示例按 ObjectView 真读的键面重写 (objec…