越界发现,记录于 #3672 (删除零引用的 SystemObjectViewPage + systemObjects)期间 —— 引用面 grep 时 ROADMAP.md:831 是仅有的两处非代码命中之一。按纪律只报不改 ,单独立单,未认领 。
观察类 :纯文档漂移,用户看不到任何异常,代价是 ROADMAP 把一批已退场的实现记成"已完成",误导下一个读者(#3655 与 #3672 都栽在"看起来现成"的同一批文件上)。故打 finding、不打 pm:queue。
基线:origin/main @ be9cd38ac,叠加 #3672 的删除(PR #3699 )。
事实
ROADMAP.md:829-839,ObjectView-Driven System Pages (P1.12.2) 整段 9 个 [x],逐条与当前 main 核对:
ROADMAP 勾选项
当前实况
Shared SystemObjectViewPage component using ObjectView
组件全仓零引用,PR #3699 已删除
User Management (/system/users) driven by sys_user metadata via ObjectView
路由存在,但已是 SystemObjectRedirect objectName="sys_user"(重定向到框架对象,非 console 内 ObjectView 页)
Organization Management (/system/organizations) driven by sys_org metadata
同上,且 sys_org 框架里不存在 ,重定向实际指向 sys_organization
Role Management (/system/roles) driven by sys_role metadata
同上,且 sys_role 已按 ADR-0090 D3 改名,重定向实际指向 sys_position
Permission Management (/system/permissions) driven by sys_permission metadata
该路由今天根本不存在 (AppContent.tsx 中零命中);sys_permission 框架里也不存在(拆成了 sys_capability / sys_permission_set)
Audit Log (/system/audit-log) driven by sys_audit_log metadata via ObjectView (read-only)
路由在,但 AuditLogPage.tsx 是独立手写 页:直接 fetch /api/v1/data/sys_audit_log + 手写 Table/Sheet,不经 ObjectView
Admin-only CRUD operations controlled via ObjectView operations config
随 SystemObjectViewPage 一并消失
Automatic search, sort, filter, pagination from ObjectView capabilities
同上
22 system page tests passing
这批测试已不存在(pages/system/__tests__/ 现只有两个 SystemHubPage 测试)
即 9 条无一仍然成立 。
另有一处同源漂移,ROADMAP.md:824-827,Permission Management Page (/system/permissions) 段:
[x] CRUD grid for sys_permission object
[x] Search/filter permissions
[x] Admin-only create/delete controls
该页与该路由均已不存在,sys_permission 亦非框架真名。
复核方式
grep -n 'path="system' apps/console/src/AppContent.tsx # 见 /system/permissions 零命中
grep -rlw sys_org ../objectstack/packages/ # 0 个文件
grep -rlw sys_permission ../objectstack/packages/ # 1 个:sys-capability.object.ts 的 docblock,
# 内容正是"Named sys_capability (not sys_permission …)"
影响面
零运行时影响。真实代价一条:ROADMAP 是"这块做完了吗"的首查处,一整段假 [x] 会让下一个 agent 以为 console 里有一套 ObjectView 驱动的系统页可复用 —— 这正是 #3655 与 #3672 各自踩过一次的坑。
可能的修法方向(留给分诊,不预判)
把 P1.12.2 与 Permission Management Page 两段标注为历史(如加 ~~删除线~~ + 一行"已由框架插件 + /apps/setup/{object_name} 通用路由取代,见 console: 系统导航 / System Hub 的 users / organizations / roles / positions / permissions 五个入口没有对应路由 —— 两个落 "Page not found",三个跳进不存在对象 system 的记录页 #3655 / console: SystemObjectViewPage.tsx + systemObjects.ts 自 2026-04 起全仓零引用,且其内嵌对象定义用的是已废弃/不存在的对象名 #3672 "),保留 ROADMAP 的时间线价值。
直接删除这两段,改在对应的框架插件章节写明现状。
取舍取决于 ROADMAP 是"历史账本"还是"当前真相快照",需要维护者定调 —— 故不预判。
关联
已就关键词(ROADMAP、P1.12.2、SystemObjectViewPage、sys_permission)搜过本仓开放 issue,除 #3672 自身外无同源单。
Generated by Claude Code
越界发现,记录于 #3672(删除零引用的
SystemObjectViewPage+systemObjects)期间 —— 引用面 grep 时ROADMAP.md:831是仅有的两处非代码命中之一。按纪律只报不改,单独立单,未认领。观察类:纯文档漂移,用户看不到任何异常,代价是 ROADMAP 把一批已退场的实现记成"已完成",误导下一个读者(#3655 与 #3672 都栽在"看起来现成"的同一批文件上)。故打
finding、不打pm:queue。基线:
origin/main@be9cd38ac,叠加 #3672 的删除(PR #3699)。事实
ROADMAP.md:829-839,ObjectView-Driven System Pages (P1.12.2) 整段 9 个[x],逐条与当前main核对:SystemObjectViewPagecomponent usingObjectView/system/users) driven bysys_usermetadata via ObjectViewSystemObjectRedirect objectName="sys_user"(重定向到框架对象,非 console 内 ObjectView 页)/system/organizations) driven bysys_orgmetadatasys_org框架里不存在,重定向实际指向sys_organization/system/roles) driven bysys_rolemetadatasys_role已按 ADR-0090 D3 改名,重定向实际指向sys_position/system/permissions) driven bysys_permissionmetadataAppContent.tsx中零命中);sys_permission框架里也不存在(拆成了sys_capability/sys_permission_set)/system/audit-log) driven bysys_audit_logmetadata via ObjectView (read-only)AuditLogPage.tsx是独立手写页:直接fetch/api/v1/data/sys_audit_log+ 手写 Table/Sheet,不经 ObjectViewoperationsconfigSystemObjectViewPage一并消失pages/system/__tests__/现只有两个 SystemHubPage 测试)即 9 条无一仍然成立。
另有一处同源漂移,
ROADMAP.md:824-827,Permission Management Page (/system/permissions) 段:[x] CRUD grid for sys_permission object[x] Search/filter permissions[x] Admin-only create/delete controls该页与该路由均已不存在,
sys_permission亦非框架真名。复核方式
影响面
零运行时影响。真实代价一条:ROADMAP 是"这块做完了吗"的首查处,一整段假
[x]会让下一个 agent 以为 console 里有一套 ObjectView 驱动的系统页可复用 —— 这正是 #3655 与 #3672 各自踩过一次的坑。可能的修法方向(留给分诊,不预判)
~~删除线~~+ 一行"已由框架插件 +/apps/setup/{object_name}通用路由取代,见 console: 系统导航 / System Hub 的 users / organizations / roles / positions / permissions 五个入口没有对应路由 —— 两个落 "Page not found",三个跳进不存在对象system的记录页 #3655 / console:SystemObjectViewPage.tsx+systemObjects.ts自 2026-04 起全仓零引用,且其内嵌对象定义用的是已废弃/不存在的对象名 #3672"),保留 ROADMAP 的时间线价值。取舍取决于 ROADMAP 是"历史账本"还是"当前真相快照",需要维护者定调 —— 故不预判。
关联
SystemObjectViewPage.tsx+systemObjects.ts自 2026-04 起全仓零引用,且其内嵌对象定义用的是已废弃/不存在的对象名 #3672 / PR chore(console): 删除全仓零引用的 SystemObjectViewPage + systemObjects (#3672) #3699 —— 删除SystemObjectViewPage+systemObjects,本单由其引用面测量产出。system的记录页 #3655 —— 把/system/users等改为重定向到框架对象的那次改动,是本段勾选项失效的直接原因。sys_org/sys_permission#3670 —— 同一对错误对象名(sys_org/sys_permission)在SystemHubPage计数里造成的真实缺陷。已就关键词(
ROADMAP、P1.12.2、SystemObjectViewPage、sys_permission)搜过本仓开放 issue,除 #3672 自身外无同源单。Generated by Claude Code