Skip to content

docs(ROADMAP): P1.12.2「ObjectView-Driven System Pages」整段 9 个勾选项已全部不成立(组件已删、路由改重定向、审计页并非 ObjectView 驱动) #3700

Description

@yinlianghui

越界发现,记录于 #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 各自踩过一次的坑。

可能的修法方向(留给分诊,不预判)

  1. 把 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 的时间线价值。
  2. 直接删除这两段,改在对应的框架插件章节写明现状。

取舍取决于 ROADMAP 是"历史账本"还是"当前真相快照",需要维护者定调 —— 故不预判。

关联

已就关键词(ROADMAPP1.12.2SystemObjectViewPagesys_permission)搜过本仓开放 issue,除 #3672 自身外无同源单。


Generated by Claude Code

Metadata

Metadata

Assignees

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions