diff --git a/.task/feature-iam-role-permission-linked-capabilities-u2-single-role-authority.md b/.task/feature-iam-role-permission-linked-capabilities-u2-single-role-authority.md index eaa127b6..1587de91 100644 --- a/.task/feature-iam-role-permission-linked-capabilities-u2-single-role-authority.md +++ b/.task/feature-iam-role-permission-linked-capabilities-u2-single-role-authority.md @@ -58,11 +58,11 @@ | 需求表确认 | 本卡 | 已完成 | host | 2026-10-19 | U2-R1..U2-R5 | | 方案设计 | 单元包 JSON | 已完成 | host | 2026-10-19 | KTD7 | | 实施计划 | 单元包 JSON | 已完成 | host | 2026-10-19 | allowed_paths/verification/timeout_seconds | -| 实施与自检 | 待 worker | 待执行 | — | — | `scripts/agent-exec run` | -| 正式测试与验收 | 待 worker 自检 + host 验证 | 待执行 | — | — | C22 + 新表 | -| 代码 Review | 待独立会话 | 待执行 | — | — | fresh session, `--role review` | -| 合入 | 待 host | 待执行 | — | — | RDM L1 PR + transport apply + Dev gitlink bump | -| 合入核验与收口 | 待 host | 待执行 | — | — | L1 PR #628 base gate | +| 实施与自检 | cursor-agent attempt 1 (failed-unknown) + attempt 2 (scope-expansion) | 双试双 fail-stop,临时完成被回滚 | cursor-agent | 2026-10-19 | attempt 1 13 文件 1111+/180- 改动完成,但 worker 未输出有效终态记录;attempt 2 在受限 allowed_paths 下主动返回 scope-expansion 列出真实需要的额外路径与 pins 物化 | +| 正式测试与验收 | NOT_RUN | | | | 本会话不再尝试 | +| 代码 Review | NOT_RUN | | | | | +| 合入 | NOT_RUN | | | | 后续会话修订单元包后再试 | +| 合入核验与收口 | NOT_RUN | | | | | ## 同步记录 @@ -79,13 +79,18 @@ | 单元 ID | 预期范围 | 配置摘要 | 角色 | 候选顺序 | attempt | CLI/模型 | 终态 | transport | fallback | 源码外收据路径 | |---|---|---|---|---|---|---|---|---|---|---| -| iam-link-u2 | RDM `internal/perms`、`internal/rdmapp/{perms_api,system_projects,member_search}`、`plugins/rdm/{system_projects,plugin}` | AGENT-EXECUTION.md digest=bd3a7de57a3a9e1a4495b94c5fa5c08d71e7be8c (RDM dev-manager pin) | implementation | [cursor, antigravity, pi] | 1 | 待记录 | 待记录 | 待记录 | 否 | 待记录 | +| iam-link-u2 | RDM `internal/perms`、`internal/rdmapp/{perms_api,system_projects,member_search}`、`plugins/rdm/{system_projects,plugin}` | AGENT-EXECUTION.md digest=bd3a7de57a3a9e1a4495b94c5fa5c08d71e7be8c (RDM dev-manager pin) | implementation | [cursor, antigravity, pi] | 1+2 | cursor-agent-stable 2026.10.14-0f9edde | attempt 1=failed-unknown, attempt 2=scope-expansion(显式 fail-stop,后续会话修订单元包后重试) | 无 | 否 | /tmp/iam-link-u2-run.json (run_id 58bf349c… attempt 1 + f88af22e… attempt 2) | ## 结果与验证(完成后填写) -- 结果: -- 验证:PASS/FAIL/SKIP/NOT_RUN 逐项 +- 结果:双 cursor 尝试均 fail-stop,未产生可应用 transport。 + - attempt 1 (run_id=58bf349c…) terminal=failed-unknown,reason="worker exited 0 with changes but no valid completed terminal record";worktree 留下 13 文件改动(`internal/perms/{role_migration,role_migration_test,role_provider,role_provider_test,roles}.go`、`internal/rdmapp/{perms_api,perms_test,system_projects,system_projects_test,member_search}.go`、`plugins/rdm/{plugin,system_projects,system_projects_test}.go`),diffstat 1111+/180-;agent evidence 自报 16 项新测试全 PASS(perms 6 + rdmapp 10) + 既有不退化,唯一失败 `TestRenderProfileCandidateAnalyzeCannotReachPublication` 为 worktree 缺 `pins/agent-document-renderer` 子模块的环境问题,非本单元引入。 + - attempt 2 (run_id=f88af22e…) terminal=scope-expansion,agent 列出真实需要扩 allowed_paths 的文件:`internal/rdmapp/{projects_api,project_resource_authz,settings_duties,runtime}.go` + 一批已有 `iam_i1_*`、`e2e`、plugin 测试,以及 `pins/` 物化(pins 为受控物化,不在单元包控制范围)。 +- 验证:NOT_RUN(没有成功的 transport 可供 host 复核;attempt 1 改动未应用) - 影响与剩余项: + - 单元包必须扩 allowed_paths 并解决 `pins/agent-document-renderer` 等子模块在 worktree 里的物化(建议由 host 在派发前先把 pins 按 gitlink 物化,或拆分为更小单元:先做 `internal/perms` + `internal/rdmapp/{perms_api,member_search}` 子单元 A,再做 `system_projects`/`projects_api`/`project_resource_authz`/`settings_duties`/`runtime` 子单元 B)。 + - 后续会话修订单元包后用 cursor(再 1 次)或 agy/PI 重试;若三候选均耗尽则启 codex 紧急。 + - U3-U6 仍依赖 U2 终态。 ## 合入与清理 diff --git a/.task/feature-iam-role-permission-linked-capabilities.md b/.task/feature-iam-role-permission-linked-capabilities.md index 3bd606b2..0fe1456d 100644 --- a/.task/feature-iam-role-permission-linked-capabilities.md +++ b/.task/feature-iam-role-permission-linked-capabilities.md @@ -60,7 +60,7 @@ | 子任务分支 | 必需 | 状态 | PR | 单元 | 范围摘要 | |---|---|---|---|---|---| | feature/iam-role-permission-linked-capabilities-u1-capability-association | 是 | 已完成(Backend 子分支 afb65c5 推送,Dev gitlink bump 待 host;独立 Review 待 fresh session) | —(child 不开 PR) | U1 | Backend `internal/authz/catalog`、`internal/store/role_policy`、公开扩展 DTO;RDM `internal/perms/role_provider.go` 与创建能力判定;KTD1/KTD3/KTD4;C06/C08/C09/C10 | -| feature/iam-role-permission-linked-capabilities-u2-single-role-authority | 是 | 已登记卡片,待 agent 派发 | —(child 不开 PR) | U2 | RDM `perms_api.go`、`system_projects.go`、`plugins/rdm/{system_projects,plugin}.go`;Backend `hostcaps.go`;KTD7;C22 | +| feature/iam-role-permission-linked-capabilities-u2-single-role-authority | 是 | blocked(cursor 2 次 fail-stop:failed-unknown + scope-expansion;后续会话修订单元包后重试) | —(child 不开 PR) | U2 | RDM `perms_api.go`、`system_projects.go`、`plugins/rdm/{system_projects,plugin}.go`;Backend `hostcaps.go`;KTD7;C22 | | feature/iam-role-permission-linked-capabilities-u7-canonical-two-trees | 是 | 待启动 | — | U7 | RDM `internal/projects/{projects,provisioning,projection_rename}.go`、`internal/rdmapp/{projects_api,system_projects,project_resource_authz}.go`;Backend `internal/server/{project_lifecycle,server}.go`;KTD2/KTD5/KTD6/KTD8/KTD10;C01-C05/C11-C17/C19-C21/C26-C31 | | feature/iam-role-permission-linked-capabilities-u3-capability-exposure | 是 | 待启动 | — | U3 | Backend/RDM 解释接口、HTTP/command 错误分类、创建/添加成员/对话失败原因;KTD1/KTD2/KTD6 | | 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 |