dev-manager-tauri/docs/tasks/2026-10-03-coordination.md
lanrtop 0e374e5996
All checks were successful
Push & PR Check / check (push) Successful in 1m1s
docs(tasks): 新增统筹推进文档——统筹会话派卡、执行会话独立执行的协议、环境铁律与派单队列
单会话推进易触发上下文压缩、丢失推进所需信息:改为统筹会话维护规划与进度、
每张卡由新会话独立执行并上报。文档含角色与上报/求助/合并协议、踩坑形成的执行
环境铁律、P8 串行派单队列(含可并行的 Gitea 解绑卡)、派单与 PR 流水、待用户
处理事项(重复登记数据合并的执行时机)。

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-03 09:40:59 +09:00

8.1 KiB
Raw Blame History

统筹推进文档:P8 一键接入与并行事项(2026-10-03 起)

本文件是执行会话的单一入口:领卡前先读完 §1–§3。卡片的范围与验收以蓝图卡片为准 (.blueprint/modules/agent-client-parity.md 等),本文件不复制 acceptance,只管「谁做、按什么顺序、怎么交接」。 统筹会话负责维护本文件(§4、§5 随派单与合并更新)。

0. 方针与本阶段终点

  • 方针(AGENTS.md「项目定位」「管家准入与退出」):炼境是 agent 开发子项目的管家;每个子项目都能在 Claude Code、Codex、DSH 三端开发,重复配置尽量消除;不过度建设,能力按实测收益保留或撤销。
  • 本阶段终点:P8「一键接入」——新建或添加子项目后,一次确认即三端可用(P8 卡的 acceptance)。 设计:docs/tasks/2026-10-03-p8-onboarding-oneclick-design.md;任务卡:agent-client-parity 的 P8-0、P8a–P8g、P4-0、P4a–P4e。

1. 角色与协议

角色 是谁 做什么
统筹会话 local_ab7498e2-8aff-4e59-b45b-134636d12d9c(「dev-manager-tauri 开发环境验证」) 维护本文件、派卡、复核、合并 PR、处理上报;每 30 分钟检查一次执行会话
执行会话 每张卡一个新会话 按卡片实现与自验,做一次独立审查,开 PR,然后上报;不合并 PR
  • 上报:用 SendMessage(to 填统筹会话的 session id)发三条——已完成 / 待验证 / 约束继承(AGENTS.md「多 AI CLI 协作」格式),附 PR 编号与完整 head SHA。
  • 求助:同一问题自修失败 2 次(AGENTS.md「自验失败降级约定」)就停下,上报失败原因、已尝试路径、需要决策的问题;不要绕过权限或安全分类器的拦截。
  • 合并:只由统筹会话核对 CI 与审查结论后合并(merge_pull_request 需要完整 head SHA)。
  • 卡片状态:开工把卡改 🔵、验收后改 ✅(两阶段提交),在自己的分支里改;需要在合并后实测的验收项,由统筹会话合并、实测后补标 ✅。

2. 执行环境铁律(都是踩过的坑)

  • 主仓库工作区不碰:E:\code-project\dev-manager-tauri 是用户日常运行 pnpm tauri dev 的地方。每张卡在自己的 git worktree 里做(如 E:/code-project/dev-manager-tauri-wt-<卡号>),M 级开 feat/<模块>-<卡号> 分支走 PR;S 级的纯文档可直推 master。
  • enterprise-system 主工作区不碰:E:\code-project\enterprise-system 有其他会话的在制品,禁止 stash / reset / checkout / add -A;要改 enterprise 就从 origin/main 开临时 worktree,用 PR 交付。
  • cargo 热缓存:cd <worktree>/src-tauri && export CARGO_TARGET_DIR=E:/code-project/dev-manager-tauri-parity/src-tauri/target && cargo test;长命令放后台运行。
  • rustfmt 只格式化改动的文件:rustfmt --edition 2021 --config skip_children=true <文件…>。不加 skip_children 格式化 lib.rs 会改写全部子模块。
  • 用户 deny 规则:rm、kill、pkill、git reset --hard、npm/npx 等禁用,也不能写进脚本文件再执行(统筹会话踩过)。需要删除的临时目录列给用户;探针桩服务设成到时自动退出。
  • Git Bash:git show rev:path 要加 MSYS_NO_PATHCONV=1;含反斜杠的文件用 Write 工具写;含中文的 HTTP 请求用 node fetch,不用 curl。
  • MCP:一律 http://127.0.0.1:27190(不用 localhost)。会话里 lian-jing 没连上时,可用 node fetch 直接 POST http://127.0.0.1:27190/mcp(全局路由,tools/call),结果在 result.structuredContent 或 result.content[0].text。
  • 变异验证:先 git add 暂存,再改源码做变异、跑测试,最后 git checkout -- <文件> 从暂存区还原。没暂存就 checkout 会丢掉改动(统筹会话踩过)。
  • 真实客户端:claude -p、codex exec、DSH headless 可能跑 3 分钟以上,只在会话主线程或后台 bash 里跑,不交给 Workflow 子 agent(超过 180 秒会被判卡死)。嵌套 claude 前先 unset CLAUDECODE CLAUDE_CODE_ENTRYPOINT CLAUDE_CODE_SSE_PORT,stdin 重定向自 /dev/null。
  • 凭据:不读、不打印任何 token、凭据、.env 值;不对真实 Windows Credential Manager 做并发压力实验。
  • 运行中的炼境 DB 写入:自动模式下会被安全分类器拦截,这是对的。需要写 DB 的数据修复准备好脚本、备份和空跑结果,交用户执行。
  • 提交:Conventional Commits;feat: 带 Feature-Confirmed: true;末尾带 Co-Authored-By 署名行。PR 描述按自验报告纪律写,含「没验什么」一节。M 级卡开 PR 前用一个只读子代理做独立审查,审查处置写进卡片。

3. 派单队列

串行原因:P8 各卡集中改 mcp_inject.rs、mcp_tools.rs、commands/onboarding.rs,并行必然冲突。不碰这些文件的事项可以并行(标注「可并行」)。

序 事项 复杂度 起点 要点
1 P8c 收尾 M 分支 feat/agent-client-parity-p8c @ ef2c7fd(代码已完成,cargo test 307 passed) 剩:独立审查与修复,卡片标 🔵 并记实现/验证,开 PR。PR #34 合并后先合并 master 再开 PR
2 P4a L1 零模型三端检查 M master(P4-0✅、P8b✅) Claude 用不存在的模型名取 init(P4-0 H-P8-4,零额度);Codex 用 codex mcp get --json(H-P8-1,未信任目录看不到项目配置);DSH 解析白名单与插件哈希;认证链经稳定 shim 重放
3 P8d onboard_project 编排本体 M P8c、P4a 合并后 复用 onboard::plan::write_project_files 与 onboard::clients::registry();apply 前先重算计划并核对 digest
4 P8e 投影收口与契约同步 S P8d 后
5 P8f register_project 控制面投影 S P8e 后
6 P8g UI 一键接入 M P8e 后 human_verify 交用户
并行 删除项目登记时一并解绑 Gitea 仓库 S/M master 来自重复登记排查会话的推荐任务卡(轮询会继续往已删除的项目 ID 写数据),主要改 projects.rs / gitea.rs,可并行
后续 P6(依赖 P8c)、P4c / P4d / P4e、A4→P4b、P5、beast-mode 重复登记 P8 完成后再排

4. 派单与 PR 流水(统筹维护)

时间 事项 执行者 分支 / PR 状态
10-03 P8-0、P8a、P4-0、B2 统筹会话 直推 master ✅
10-03 P8b 统筹会话 PR #33(ddd729c) ✅
10-03 enterprise 接入包 1.9.0 统筹会话 enterprise PR #183 ✅ 已合并;enterprise 主工作区待其所有者同步
10-03 P8c 统筹会话(实现)→ 待派执行会话收尾 feat/agent-client-parity-p8c @ ef2c7fd 待审查 / PR
10-03 重复登记修复 U1/U2 会话 local_d2e1c156…(「排查炼境 dev-manager-tauri 疑似重复登记」) PR #34(e57da3a,CI passed) 统筹复核中
10-03 重复登记数据合并 U3 同上 脚本 /tmp/merge_dup.py,已在线备份、空跑通过 等用户执行 DB 写入(见 §5)

5. 待用户处理(统筹会话汇总,按时机)

  • 重复登记数据合并:在统筹会话合并 PR #34、主仓库重编译之后,在「排查炼境 dev-manager-tauri 疑似重复登记」会话的输入框执行 ! python /tmp/merge_dup.py --apply(写运行中的 DB;脚本带前置守卫与事务内断言,已备份)。跑完回复该会话「授权继续」,让它做 unregister_project 与验收。
  • Codex 信任:Codex 只在目录受信任后加载项目 .codex/config.toml(P4-0 H-P8-1)。一键接入会把它列进 next_actions,炼境不改 Codex 的信任表。

6. 当前已知事实(易变,以工具自省为准)

  • verify_onboarding(enterprise) 的 clients 三端均 converged。
  • list_all_projects:除 enterprise 外,其余登记项目大多缺项目 token(历史接入早于 token 机制),这些正是一键接入要接的对象。
  • 使者回传:0 条待处置。