Plan RDM settings phase 1a and fill the task card
Why: RDM settings completion is split into phases; phase 1a covers the Picker hardening, R2 member search and the acceptance false PASS fix that do not conflict with IAM U4. Evidence: plan and card only; no implementation in this commit. Impact: none on runtime. Refs: .task/feature-rdm-settings-phase1a.md Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
@@ -9,7 +9,8 @@
|
||||
- 分支类型:standalone;root_target:main;immediate_target:main;accepting_requirements:false
|
||||
- 需求分流:verdict=NEW;selected_initiative=无;requirement_sha256=085614ee5a2a7fe92cf18f577c0a1c0d33acc11682870331edd6f173309e8e14;triage_receipt=/tmp/cleanup-20261018/rdm1a-triage.json;receipt_sha256=7de7c2c70184d1e54bb00df5e808dfaffa0e78451d1166557e7ce18cf2079424
|
||||
|
||||
- 授权与交付终点:<本次允许的动作与终点;未授权事项写明>
|
||||
- 授权与交付终点:用户 2026-10-18 确认 RDM settings 收尾按分期推进(scope=phase、profile=user_only、order=split);本卡为一期 1a,终点为 UI/RDM/Frontend/Dev 合入、组合改钉及用户阶段 7 验收。扩围授权 land_fe_pw:Frontend 密码管理提交经 Frontend #107 合入 Frontend 主干(已合入 `0459567`)。未授权:一期 1b(R4/R5,等 IAM U4)、二期(R1 与扩展 API 2.16 发版,发版由用户执行)。
|
||||
- 关联仓工作区:UI/Frontend `/home/weichen/projects/Agent-System-RDM1a-Frontend-Combo/{ui,frontend}`;RDM `/home/weichen/projects/Agent-System-RDM-wt-feature-rdm-settings-phase1a`(分支均为 feature/rdm-settings-phase1a)。
|
||||
- 交付模式:goal-first(目标、范围和交付终点一次确认;范围内连续推进)
|
||||
- 实施执行:agent-per-unit(配置:AGENT-EXECUTION.md)
|
||||
- 合入执行:agent(已授权交付范围内,Review 通过、冲突解决且当前 HEAD 的 CI 通过后合入)
|
||||
@@ -19,7 +20,10 @@
|
||||
|
||||
## 目标与非目标
|
||||
|
||||
<预期结果、受影响入口/模块/契约;明确不做什么。>
|
||||
- 目标:R2 成员检索(账号/姓名精确与模糊检索、专业角色筛选、服务端先筛选后分页、同名以账号区分、已加入不可重复添加)在 RDM、UI Picker 与 Frontend 成员页端到端可用;Dev 验收脚本不再对未执行场景输出 PASS。
|
||||
- 受影响:UI `Picker`;RDM `rdm.account.list`、`rdm.project.member.list`(向后兼容增量)与新读命令 `rdm.role.options`;Frontend `RdmMembersSection`;Dev `tests/integration/rdm-increment/acceptance_scenarios.sh` 与 `modules/{frontend,ui}` 指针。
|
||||
- 非目标:R1 项目共享设置、R3 旧职责模型(已被职责矩阵取代,放弃)、R4 权限矩阵剩余项与 R5 成员移除影响(一期 1b)、`AccountValidFor` 语义变更、RDM `perms/*` 与 IAM U4 冲突区。
|
||||
- 计划:`docs/superpowers/plans/2026-10-18-rdm-settings-phase1a-plan.md`。
|
||||
|
||||
## Agent 实施收据
|
||||
|
||||
@@ -39,13 +43,15 @@
|
||||
|
||||
| ID | 描述 | 项目符合度及依据 | 优先级 | 验收条件 | 依赖 | 结论 |
|
||||
|---|---|---|---|---|---|---|
|
||||
| R1 | 待填写 | 待评估 | 待定 | 待定义 | 待确认 | 待评审 |
|
||||
| R2 | 账号/姓名检索、分页、专业角色过滤同源,稳定 ID 选择 | 部分符合:主干已有 Picker 与姓名子串检索;缺角色筛选、精确匹配、先筛后分页、成员表检索分页、姓名+账号显示 | P0 | 见计划「验收条件」前三条 | UI U1、RDM U2 | 纳入 1a |
|
||||
| R5-a | 验收声明来自实际执行 | 不符合:场景 9 无条件输出 PASS | P0 | 未执行项报告 NOT_RUN 并计入汇总 | 无 | 纳入 1a |
|
||||
| R1/R4/R5-b | 共享设置、权限矩阵剩余、移除影响 | 依赖 IAM U4 或发版 | — | — | IAM U4、扩展 API 2.16 | 1b/二期 |
|
||||
|
||||
## 方案与计划
|
||||
|
||||
- 方案引用:待填写(含对象版本)
|
||||
- 实施计划引用:待填写(含增量与需求 ID)
|
||||
- 测试计划引用:待填写(含需求 ID 与验收条件)
|
||||
- 方案引用:旧任务 `.task/feature-rdm-settings-completion.md`(旧分支,需求表 R1–R5)与本次差距分析;参考 diff 存于仓外 `/tmp/cleanup-20261018/rdm1a/`
|
||||
- 实施计划引用:`docs/superpowers/plans/2026-10-18-rdm-settings-phase1a-plan.md`(单元 U1–U5,R2、R5-a)
|
||||
- 测试计划引用:同计划「验收条件」;各单元 verification 见仓外单元 JSON
|
||||
|
||||
## 阶段记录
|
||||
|
||||
|
||||
@@ -0,0 +1,40 @@
|
||||
# RDM 设置收尾 · 一期 1a 实施计划(2026-10-18)
|
||||
|
||||
任务卡:`.task/feature-rdm-settings-phase1a.md`。取代旧任务 `feature/rdm-settings-completion` 中与主干不冲突、且不依赖 IAM U4 的部分。
|
||||
|
||||
## 已确认的决策
|
||||
|
||||
- 分期:一期 1a(本计划)= UI Picker 加固、R2 成员检索、验收脚本误报修复;一期 1b = R4 权限矩阵剩余项、R5 成员移除影响与原子移除,等 IAM U4 合入后在新主干上做;二期 = R1 项目共享设置(扩展 API 2.16,发版由用户本人执行)。
|
||||
- R3 文档职责:主干已用职责矩阵取代,旧分支的 `rdm.duty.tree`、章节职责版本、旧职责界面不再移植。
|
||||
- Profile 语义(二期):只禁止用户自建 profile 指定模型,内置 profile 的路由保留。
|
||||
- 集成欠账:Frontend 密码管理提交(`92864db`,Dev 已钉住并上线)已经由 Frontend #107 合入 Frontend 主干(`0459567`),本期 Dev 改钉 Frontend 不会回退密码功能。
|
||||
|
||||
## 单元与边界
|
||||
|
||||
| 单元 | 仓库 | 允许路径 | 依赖 |
|
||||
|---|---|---|---|
|
||||
| U1 Picker 加固 | UI | `src/Picker.tsx`、`src/ui.css`、`test/picker.test.tsx` | 无 |
|
||||
| U2 R2 成员检索 | RDM | `internal/rdmapp/accountdir.go`、新 `internal/rdmapp/member_search.go`、`plugins/rdm/plugin.go`(仅 account.list / member.list / role.options)、新 `plugins/rdm/member_search_test.go` | 无 |
|
||||
| U3 成员页接入 | Frontend | `src/components/adminRdmSections.tsx` 中 `RdmMembersSection`(不动 import 区与 `RdmRolesPanel`)、`src/rdmManagement.ts`、新测试 | U1、U2 合同 |
|
||||
| U4 验收脚本 | Dev | `tests/integration/rdm-increment/acceptance_scenarios.sh` | 无 |
|
||||
| U5 组合改钉 | RDM、Dev | RDM `pins/agent-system-{frontend,ui}`;Dev `modules/{frontend,ui}` | U1–U4 合入 |
|
||||
|
||||
IAM U4 同时改动 RDM `perms/*`、`projects_api.go`、`perms_api.go` 与 Frontend `adminRdmSections.tsx` 的 import 区和 `RdmRolesPanel`,上表边界即为避免与其冲突。U2 只使用 U4 保留的 `perms.Store` 读取接口。
|
||||
|
||||
## R2 合同(RDM,向后兼容的增量)
|
||||
|
||||
- `rdm.account.list`:新增可选 `roleId`、`match`(`fuzzy` 默认 / `exact`);先全量筛选再按账号分页(`cursor` 为上一页最后账号,`limit` 默认 50、上限 200);每行新增 `joined`、`projectRole`、`profRole`。授权不变(member.manage)。
|
||||
- `rdm.project.member.list`:新增可选 `query`、`match`、`roleId`、`projectRole`、`cursor`、`limit`;返回新增 `next`、`total`、`accountDirectoryAvailable`,成员行新增 `name`;不带 `limit` 时返回全部(权限矩阵页依赖)。授权不变(doc.read)。
|
||||
- 新读命令 `rdm.role.options`(`purpose` = members | duties | permissions):返回启用的专业角色 `{roleId, name}`。
|
||||
|
||||
## 验收条件
|
||||
|
||||
- 同名人员以账号区分,选择提交稳定账号;精确/模糊匹配、专业角色筛选均由服务端在分页前完成,全部匹配可经游标逐页到达且不重复。
|
||||
- 已加入人员在候选中可见但不可再次添加;失去管理资格时选择器禁用;迟到响应不展示。
|
||||
- 成员表显示姓名与账号,支持检索、角色筛选和分页。
|
||||
- 验收脚本中不再有未执行检查却输出 PASS 的场景;未执行项报告 NOT_RUN 并计入汇总。
|
||||
- 组件 CI(UI/RDM/Frontend 治理检查,RDM 测试)与 Dev 组合 CI(`make test`、`make build`)在最终 HEAD 上通过;Frontend 与 UI 的类型检查、测试和构建在组合目录本地执行(Frontend CI 不跑这些)。
|
||||
|
||||
## 合入顺序
|
||||
|
||||
UI(U1)与 RDM(U2)并行 → Frontend(U3,基于含 U1 的 UI)→ RDM 改钉 Frontend/UI → Dev(U4 + 改钉 Frontend/UI;RDM 制品钉扎按需另行升级)。阶段 7 业务验收由用户判定。
|
||||
Reference in New Issue
Block a user