diff --git a/.task/feature-execenv-python-sandbox-path.md b/.task/feature-execenv-python-sandbox-path.md index d01fcab5..ea337739 100644 --- a/.task/feature-execenv-python-sandbox-path.md +++ b/.task/feature-execenv-python-sandbox-path.md @@ -1,6 +1,6 @@ # feature/execenv-python-sandbox-path 任务卡 -任务主记录:;状态:进行中;owner:weichen +任务主记录:https://git-home.u1680832.nyat.app:30319/weichen/Agent-System-Dev/pulls/606;状态:进行中;owner:weichen ## 基线与授权 @@ -9,17 +9,19 @@ - 分支类型:standalone;root_target:main;immediate_target:main;accepting_requirements:false - 需求分流:verdict=NEW;selected_initiative=无;requirement_sha256=5ee33b9e341d44e6422d477aa1ab3bb0bcc2bc416d9130b94a44601a74dee0c9;triage_receipt=/tmp/execenv-python-triage.json;receipt_sha256=17ee241158291b43adebd27254bab2bffde1ad5c356d11c71b1157603a6cc941 -- 授权与交付终点:<本次允许的动作与终点;未授权事项写明> +- 授权与交付终点:修复 Dev 候选因托管 Python 符号链接在 sandbox 内不可达而启动失败的问题,合入 Dev main,部署到 8788 并核验服务可用;不改账户/恢复业务语义,不触碰主检出的既有 dirty gitlink。 - 交付模式:goal-first(目标、范围和交付终点一次确认;范围内连续推进) - 实施执行:agent-per-unit(配置:AGENT-EXECUTION.md) - 合入执行:agent(已授权交付范围内,Review 通过、冲突解决且当前 HEAD 的 CI 通过后合入) - 人工决策点:仅限目标/范围/验收变更、重大取舍、高后果操作或无法自动判定的业务验收 -- 当前阶段:需求拆解;当前增量:I1(待定义) +- 当前阶段:合入;当前增量:I1(托管解释器真实路径) - 流程依据:仓库根目录 policy/delivery.md(归档后仍按仓库根目录定位) ## 目标与非目标 -<预期结果、受影响入口/模块/契约;明确不做什么。> +- 目标:sandbox 执行和 `env doctor` 使用托管解释器的真实路径,使 Dev+RDM 候选可在 8788 正常启动。 +- 受影响范围:Backend `execenv` 解释器解析与 Dev `modules/backend` gitlink。 +- 非目标:不修改登录、用户创建、密码重置、恢复提案或 RDM 业务逻辑;不重构 sandbox 挂载模型。 ## Agent 实施收据 @@ -27,14 +29,14 @@ | 单元 ID | 预期范围 | 配置摘要 | 角色 | 候选顺序 | attempt | CLI/模型 | 终态 | transport | fallback | 源码外收据路径 | |---|---|---|---|---|---|---|---|---|---|---| -| execenv-python-component-fix | Backend 托管解释器真实路径 | 移植 Backend PR #207 已合入最小补丁到 Dev pin 基线 | Host integration | 复用既有已合入变更 | completed | Backend commit `b00e192`,已推送至 `fix/execenv-python-sandbox-path` | no | Backend PR #207 | -| pin-backend-execenv-python-fix | Dev `modules/backend` gitlink | 仅更新 gitlink 到已推送 Backend SHA | Cursor | 1 | completed | transport `502d46a`;父仓 local config 恢复 | no | `/tmp/execenv-python-pin-run.json` | +| execenv-python-component-fix | Backend 托管解释器真实路径 | 移植 Backend PR #207 已合入最小补丁到 Dev pin 基线 | Host integration | 已合入 Backend 变更复用 | 1 | not-applicable | completed | Backend commit `b00e192`,已推送至 `fix/execenv-python-sandbox-path` | no | Backend PR #207 | +| pin-backend-execenv-python-fix | Dev `modules/backend` gitlink | 仅更新 gitlink 到已推送 Backend SHA | implementation | Cursor | 1 | cursor-agent-stable/auto | completed | transport `502d46a`;父仓 local config 恢复 | no | `/tmp/execenv-python-pin-run.json` | ## 关联方向与规划 -- 适用状态:待核对(无适用规划时说明原因) -- 主记录路径/版本:待核对(路径按仓库根目录定位,归档后不变;只引用唯一正文) -- 对应里程碑:待核对 +- 适用状态:无独立产品规划;本任务是 8788 部署的直接启动阻塞修复。 +- 主记录路径/版本:本任务卡与 PR #606。 +- 对应里程碑:恢复 Dev+RDM 候选部署能力并完成 8788 发布。 ## 需求分析 @@ -59,7 +61,7 @@ | 实施计划 | 502d46a | 完成 | Host | 2026-10-17 | Reuse prior Backend fix; transport only component pin | | 实施与自检 | 502d46a | 完成 | Host | 2026-10-17 | Backend component pin transport applied | | 正式测试与验收 | 502d46a | 完成 | SELF | 2026-10-17 | Integrated Backend tests, env doctor, Dev build pass | -| 代码 Review | 待定 | 待执行 | Host | — | — | +| 代码 Review | 56ac94bf47031635f82a8f9cd17856e18fcf23f2 | 完成 | Host | 2026-10-17 | Backend pin 仅含 `b00e192`;真实路径覆盖服务执行与 doctor;无阻塞发现 | | 合入 | 待定 | 待执行 | — | — | — | | 合入核验与收口 | 待定 | 待执行 | — | — | — | @@ -67,13 +69,14 @@ | 增量/试验 | 假设 | 范围 | 判断和停止条件 | 授权/决策依据 | 结果 | 变更影响 | 需重审补测 | |---|---|---|---|---|---|---|---| -| 待定义 | — | — | — | 待核对 | NOT_RUN | 待评估 | 待评估 | +| I1 | 启动失败来自 `python/current/bin/python3` 在 `/home` 被遮罩后不可见 | Backend 路径解析与 Dev pin | `env doctor` 输出 `doctor ok` 且 Dev 构建/CI 通过即停止 | 用户授权修复并部署 | PASS | 仅解释器执行路径变化 | 当前 HEAD CI | ## 同步记录 | 节点 | sync_base_sha | tested_head_sha | checked_at | |---|---|---|---| | 启动 | 39ee3d1155140ccc1ec4b9c738cb27eaf8cdbef2 | 39ee3d1155140ccc1ec4b9c738cb27eaf8cdbef2 | 2026-10-17T14:25:18Z | +| 合入前核验 | 39ee3d1155140ccc1ec4b9c738cb27eaf8cdbef2 | 56ac94bf47031635f82a8f9cd17856e18fcf23f2 | 2026-10-17T16:22:02Z(changed=0) | ## 证据(Evidence) @@ -83,9 +86,9 @@ ## 交付调度 -- 调度状态:未入队;调度记录:无 -- entry_id:无;attempt_id:无;窗口执行者:无 -- 固定候选:无(base/head、组件与相关配置引用实际尝试) +- 调度状态:窗口内;调度记录:合入队列 #518 comment 7165 +- entry_id:mq-dev-20261017-execenv-python-sandbox-01;attempt_id:run-3701;窗口执行者:current Codex host +- 固定候选:base `39ee3d1155140ccc1ec4b9c738cb27eaf8cdbef2`;reviewed head `56ac94bf47031635f82a8f9cd17856e18fcf23f2`;Backend `b00e1924407989e52350ecdfa17f16640815ed89` - 调度依据:policy/merge-queue.md;新模式启用前按既有交付门禁 - 固定后证据:源码外 RECEIPT;实际结果后按授权原样导入和闭合 @@ -97,19 +100,19 @@ ## 规划进展与下一步 -- 本次推进/剩余:待核对(依据实际成果更新适用方案/规划) -- 首选下一任务:待核对(无适用规划、已完成或受阻时如实说明,不虚构任务) -- 推荐依据:待填写 -- 前置条件/待确认:待核对 -- 预期产物/验收条件:待定义 -- 重复任务核对:待核对(已有/在途任务、PR 与规划记录) -- 启动授权:未授权(建议不自动启动新任务,仍须明确授权) +- 本次推进/剩余:代码修复、集成验证与 Review 已完成;剩余当前 HEAD CI、合入、8788 部署与运行核验。 +- 首选下一任务:无;完成本次部署后停止,不扩展到账户业务修改。 +- 推荐依据:当前问题是部署阻塞,不需要新增产品增量。 +- 前置条件/待确认:当前 HEAD 三项必需 CI 全绿。 +- 预期产物/验收条件:8788 运行新 Dev source 与 RDM 插件组合,sandbox doctor 成功,HTTP 服务可达。 +- 重复任务核对:PR #606 是本修复唯一 Dev 交付记录。 +- 启动授权:不适用。 ## 合入与清理 -- Review 记录:待主仓集成候选固定后核对 Backend/Dev 最终 diff。 -- 冲突记录:NOT_RUN(最新目标同步、冲突处置、组合兼容核验及复审/补测) -- CI 记录:NOT_RUN(当前 HEAD 完整 SHA、全部必需检查、运行链接、执行身份及 GATE 结果) +- Review 记录:Host 于 2026-10-17 审查 `origin/main...56ac94b` 及 Backend `5f65059...b00e192`;无阻塞代码发现,任务卡模板占位作为交付记录问题已在本提交修正。 +- 冲突记录:`make task-sync` 于 2026-10-17T16:22:02Z 对 `origin/main@39ee3d1` 核验,`changed=0`,无冲突。 +- CI 记录:GATE run 3701 在 `56ac94bf47031635f82a8f9cd17856e18fcf23f2` 上 `test`、`test-pg`、`svc-realcombo` 全部成功;本任务卡提交产生新 HEAD 后须重新取得当前 HEAD CI。 - 合入记录:NOT_RUN(交付授权范围、PR、被核验 HEAD、合入 SHA、目标分支及内容核验) - 清理记录:NOT_RUN(授权依据、写者退出确认、worktree/分支/任务卡处置)