Add RDM management pages gated by command availability #69

Merged
weichen merged 2 commits from feature/frontend-rdm-u6-pages into main 2026-10-12 10:27:55 +00:00
Owner

Why

方案 r1 U6/KTD5:RDM 侧已合入的角色(#260)、成员/建项守卫(#254)、文档职责与整文审签(#262)命令面缺用户入口;页面须按命令面门控(普通基座零暴露、fail-closed)。

Evidence

  • 红:npx vitest run test/rdm-management.test.ts → 1 failed(模块缺失);
  • 绿:npx vitest run 25 文件 / 124 测试全过(含 design-guard 棘轮、rdm-management 8 项);npm run build(tsc -b + vite)成功;npx tsc -b 干净
  • 门控语义与 rdmAuditReady 同源:命令清单不可用=未就绪;缺一/disabled 即隐藏

Impact

  • 新增 src/rdmManagement.ts(三组命令清单 + ready 判定 + 载荷构造 + ROLE_ACTIONS/parseReviewers,纯逻辑全测);src/components/adminRdmSections.tsx(RdmRolesPanel:建角色/动作默认与上限/绑定账号/停用;RdmMembersSection:成员增删查;RdmDutiesSection:文档三权分配 + 整文提交/审核/驳回/终批/状态)
  • AdminZone 新增 rdm-roles 分区(isAdmin && rdmRolesAvailable);ProjectSettingsModal 新增成员/文档职责页签(按命令面门控);store.refreshPlugins 计算三门控标志
  • 样式仅复用既有 ad-/lg-/settings-* 类,无新增裸色值/字号(design-guard 过);载荷不含任何身份字段(G1-5)

Refs

方案 r1 U6/KTD5(Documents proposals/2026-10-12-rdm-function-implementation-plan.md);RDM #254/#260/#262

## Why 方案 r1 U6/KTD5:RDM 侧已合入的角色(#260)、成员/建项守卫(#254)、文档职责与整文审签(#262)命令面缺用户入口;页面须按命令面门控(普通基座零暴露、fail-closed)。 ## Evidence - 红:`npx vitest run test/rdm-management.test.ts` → 1 failed(模块缺失); - 绿:`npx vitest run` 25 文件 / 124 测试全过(含 design-guard 棘轮、rdm-management 8 项);`npm run build`(tsc -b + vite)成功;`npx tsc -b` 干净 - 门控语义与 rdmAuditReady 同源:命令清单不可用=未就绪;缺一/disabled 即隐藏 ## Impact - 新增 `src/rdmManagement.ts`(三组命令清单 + ready 判定 + 载荷构造 + ROLE_ACTIONS/parseReviewers,纯逻辑全测);`src/components/adminRdmSections.tsx`(RdmRolesPanel:建角色/动作默认与上限/绑定账号/停用;RdmMembersSection:成员增删查;RdmDutiesSection:文档三权分配 + 整文提交/审核/驳回/终批/状态) - AdminZone 新增 rdm-roles 分区(isAdmin && rdmRolesAvailable);ProjectSettingsModal 新增成员/文档职责页签(按命令面门控);store.refreshPlugins 计算三门控标志 - 样式仅复用既有 ad-*/lg-*/settings-* 类,无新增裸色值/字号(design-guard 过);载荷不含任何身份字段(G1-5) ## Refs 方案 r1 U6/KTD5(Documents proposals/2026-10-12-rdm-function-implementation-plan.md);RDM #254/#260/#262
weichen added 2 commits 2026-10-12 10:27:43 +00:00
Why: U6 页面接线的门控/载荷是纯逻辑,先行红证模块缺失。
Evidence: npx vitest run test/rdm-management.test.ts → 1 failed (module not found);收据 /tmp/fe-u6-red-receipt.txt。
Impact: 仅测试文件。
Refs: 方案 r1 U6/KTD5
Why: 方案 r1 U6/KTD5——已合入的 rdm.role.* / rdm.project.member.* / rdm.review.assign.doc / rdm.review.doc.* 命令无用户入口;系统管理与项目设置需按命令面门控接线(普通基座零暴露)。
Evidence: 红:vitest rdm-management 1 failed(模块缺失,收据 /tmp/fe-u6-red-receipt.txt);绿:npx vitest run 25 files / 124 tests 全过(含 design-guard)+ npm run build 成功(tsc -b 干净);收据 /tmp/fe-u6-vitest.txt、/tmp/fe-u6-build.txt。
Impact: 新增 src/rdmManagement.ts(门控+载荷纯逻辑,8 测试)与 adminRdmSections.tsx(RdmRolesPanel/RdmMembersSection/RdmDutiesSection);AdminZone 增 rdm-roles 分区(管理员+rdmRolesAvailable);ProjectSettingsModal 增成员/文档职责页签(按 rdmMembersAvailable/rdmDocReviewAvailable);store 刷新命令面时计算三门控标志。样式仅复用既有类。
Refs: 方案 r1 U6/KTD5;RDM PR #260/#262/#254
weichen merged commit 336ec94763 into main 2026-10-12 10:27:55 +00:00
Sign in to join this conversation.
No Reviewers
No labels
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: weichen/Agent-System-Frontend#69