diff --git a/.task/feature-iam-role-permission-linked-capabilities-u4-frontend-auto-discover.md b/.task/feature-iam-role-permission-linked-capabilities-u4-frontend-auto-discover.md new file mode 100644 index 00000000..c6da7388 --- /dev/null +++ b/.task/feature-iam-role-permission-linked-capabilities-u4-frontend-auto-discover.md @@ -0,0 +1,83 @@ +# feature/iam-role-permission-linked-capabilities-u4-frontend-auto-discover 任务卡 + +任务主记录:;状态:进行中;owner:weichen + +## 基线与授权 + +- 权威仓:ssh://git-ssh.u1680832.nyat.app:31411/weichen/Agent-System-Dev.git;目标分支:main;R0(initial_base_sha)= 7716b28cfff5200e7cfe9ec75aff5bcd71b234ed +- 工作区:/home/weichen/projects/Agent-System-Dev-wt-feature-iam-role-permission-linked-capabilities(worktree);分支:feature/iam-role-permission-linked-capabilities +- 分支类型:child;initiative_id:feature-iam-role-permission-linked-capabilities;root_target:main;immediate_target:feature/iam-role-permission-linked-capabilities;accepting_requirements:false;parent_branch:feature/iam-role-permission-linked-capabilities;parent_head_sha:c1343ff;parent_pr:PR #628 + +- 授权与交付终点:按方案 U4 在 `Agent-System-Frontend` 仓实现自动发现与联动配置;不开 PR、不入 main;不动 Backend / RDM / Documents / Dev。 +- 交付模式:goal-first +- 实施执行:agent-per-unit(配置:AGENT-EXECUTION.md) +- 合入执行:agent(已授权交付范围内,Review 通过、冲突解决且当前 HEAD 的 CI 通过后合入) +- 当前阶段:实施单元已登记,待 agent 派发 +- 流程依据:仓库根目录 policy/delivery.md;父 L1 charter 见 `.task/feature-iam-role-permission-linked-capabilities.md` + +## 目标与非目标 + +**目标**:5 秒内自动发现加入/移除(KTD9);角色 UI 改为业务能力组 + 关联差异 + 影响人数;创建者/负责人/成员实际职责可见;无授权成员管理入口隐藏;空列表无 create 时显示等待加入/尚无项目,不诱导新建同名项目;列表未就绪禁止自动建"默认项目"。 + +**范围**:见单元包 allowed_paths。 + +**非目标**: +- 不动 Backend / RDM / Documents / Dev。 +- 不引入新依赖。 +- 不削弱既有拒绝。 +- 不自动建默认项目。 + +**验收条件**:方案 C13-C15/C19-C21/C23 + 既有不退化;新表覆盖自动发现(5 秒内)、能力组 UI、创建者/负责人/成员职责显示、空列表无 create、无默认项目、刷新单飞、隐藏页暂停、重连补偿。 + +## 关联方向与规划 + +- 主记录:方案 revision 3 `/tmp/iam-role-permission-plan-20261019-sqfu_4g4/plan.md` U4 +- 前置:U1 capability-association(Backend afb65c5→main 3f4b34a)+ U3 capability-exposure(Backend e942a35b→main 3f4b34a;RDM b74fc0e8)+ U7 canonical-two-trees(RDM d8cfc707)+ U2 single-role-authority(RDM 8725ed3) + +## 阶段记录 + +| 阶段 | 对象版本 | 状态 | 决策/执行者 | 时间 | 依据 | +|---|---|---|---|---|---| +| 需求拆解 | 本卡 | 已完成 | host | 2026-10-19 | U1/U2/U3/U7 全部完成 | +| 需求评估 | 本卡 | 已完成 | host | 2026-10-19 | Frontend main 已有 `refreshProjects`、`RolePermissionsPanel`、`AccountUsersPanel`、`adminRdmSections`、`TaskSidebar` 等基础 | +| 需求表确认 | 本卡 | 已完成 | host | 2026-10-19 | 范围 | +| 方案设计 | 单元包 JSON | 已完成 | host | 2026-10-19 | KTD9 | +| 实施计划 | 单元包 JSON | 已完成 | host | 2026-10-19 | allowed_paths/verification/timeout_seconds | +| 实施与自检 | 待 worker | 待执行 | — | — | `scripts/agent-exec run` | +| 正式测试与验收 | 待 worker 自检 + host 验证 | 待执行 | — | — | 子单元验证 + 既有不退化 | +| 代码 Review | 待独立会话 | 待执行 | — | — | fresh session, `--role review` | +| 合入 | 待 host | 待执行 | — | — | Frontend L1 transport apply + Dev gitlink bump | +| 合入核验与收口 | 待 host | 待执行 | — | — | L1 PR #628 base gate | + +## 同步记录 + +| 节点 | sync_base_sha | tested_head_sha | checked_at | +|---|---|---|---| +| 启动 | c1343ff | c1343ff | 2026-10-19T15:00:00Z | + +## 证据(Evidence) + +| 时间(UTC) | 命令 | 被测HEAD | exit | 来源 | sha256(16) | +|---|---|---|---|---|---| + +## Agent 实施收据 + +| 单元 ID | 预期范围 | 配置摘要 | 角色 | 候选顺序 | attempt | CLI/模型 | 终态 | transport | fallback | 源码外收据路径 | +|---|---|---|---|---|---|---|---|---|---|---| +| iam-link-u4 | Frontend `src/store.ts` + `src/api.ts` + `src/rolePermissions.ts` + `src/projectmeta.ts` + `src/App.tsx` + `src/components/{adminRdmSections,RolePermissionsPanel,AccountUsersPanel,TaskSidebar}.tsx` | AGENT-EXECUTION.md digest=bd3a7de57a3a9e1a4495b94c5fa5c08d71e7be8c | implementation | [cursor, antigravity, pi] | 1 | 待记录 | 待记录 | 待记录 | 否 | 待记录 | + +## 结果与验证(完成后填写) + +- 结果: +- 验证:PASS/FAIL/SKIP/NOT_RUN 逐项 +- 影响与剩余项: + +## 合入与清理 + +- Review 记录:NOT_RUN +- 冲突记录:NOT_RUN +- CI 记录:NOT_RUN +- 合入记录:NOT_RUN +- 清理记录:NOT_RUN + + diff --git a/.task/feature-iam-role-permission-linked-capabilities.md b/.task/feature-iam-role-permission-linked-capabilities.md index 6b3e9eb2..9dd18e9e 100644 --- a/.task/feature-iam-role-permission-linked-capabilities.md +++ b/.task/feature-iam-role-permission-linked-capabilities.md @@ -73,7 +73,7 @@ | feature/iam-role-permission-linked-capabilities-u3-capability-exposure | 是 | 已登记子单元卡片 U3A + U3B | — | U3 | Backend/RDM 解释接口、HTTP/command 错误分类、创建/添加成员/对话失败原因;KTD1/KTD2/KTD6 | | feature/iam-role-permission-linked-capabilities-u3a-backend-capability-explanation | 是 | 已完成(Backend L1 子分支 e942a35b 推送,待 Dev gitlink bump + 独立 Review) | —(child 不开 PR) | U3A(U3 拆分) | Backend `pkg/extension/` + `internal/authz/` + `internal/app/` + `internal/server/` + `internal/store/` | | feature/iam-role-permission-linked-capabilities-u3b-rdm-projectfailure-integration | 是 | 已完成(RDM L1 子分支 b74fc0e8 推送;待 Dev gitlink bump + 独立 Review) | —(child 不开 PR) | U3B(U3 拆分) | RDM `internal/rdmapp/{system_projects,projects_api,perms_api,member_search,perms,project_failure,explain,*_test}.go` + `plugins/rdm/{plugin,*_test}.go` | -| feature/iam-role-permission-linked-capabilities-u4-frontend-auto-discover | 是 | 待启动 | — | U4 | Frontend `RolePermissionsPanel.tsx`、`AccountUsersPanel.tsx`、`adminRdmSections.tsx`、`TaskSidebar.tsx`、`App.tsx`、`store.ts`、`api.ts`、`rolePermissions.ts`、`projectmeta.ts`;KTD9;C13-C15/C19-C21/C23 | +| feature/iam-role-permission-linked-capabilities-u4-frontend-auto-discover | 是 | 已登记卡片,待 agent 派发 | —(child 不开 PR) | U4 | Frontend `RolePermissionsPanel.tsx`、`AccountUsersPanel.tsx`、`adminRdmSections.tsx`、`TaskSidebar.tsx`、`App.tsx`、`store.ts`、`api.ts`、`rolePermissions.ts`、`projectmeta.ts`;KTD9;C13-C15/C19-C21/C23 | | feature/iam-role-permission-linked-capabilities-u5-integration-tests | 是 | 待启动 | — | U5 | 复用 Backend `project_lifecycle_test.go`/`role_authorization_test.go`、RDM `system_projects_test.go`/`project_creator_permissions_test.go`/`member_guards_test.go`/`role_provider_test.go`、Frontend 角色/成员/项目测试;新增浏览器双账号场景;不搭新测试框架;C01-C31 全集 | | feature/iam-role-permission-linked-capabilities-u6-delivery | 否 | 待启动 | — | U6 | host 主导:同步、Review、CI、PR 合入、迁移/部署按单独授权执行;更新相关旧权限/项目规格 |