Skip to content

refactor(replan): converge captured context and original-Turn closeout - #7269

Open
loopx-agent wants to merge 13 commits into
mainfrom
codex/replan-continuation-efficiency
Open

loopx-agent wants to merge 13 commits into
mainfrom
codex/replan-continuation-efficiency

Conversation

@loopx-agent

@loopx-agent loopx-agent commented Oct 24, 2026 •

Copy link
Copy Markdown
Collaborator

Captured replans can still deliver formatting instructions before the facts, and native/checkpoint consumers can bypass an existing staged reader. Closed scoped work can also retain stale continuation preference. This converges those callers on the existing source-bound projection and preserves the original Turn through closeout and replay.

This re-proposes the #7197 implementation explicitly on current main. Its earlier merged ancestry did not deliver this staged reader to the main tree; unrelated integration changes are retained.

Resulting behavior

  • Captured CLI, native and structured Host, Turn journal and checkpoint consumers share review and writeback views. Current Goal/horizon stays visible; cumulative acceptance details and full original recovery remain reachable. Duplicate entry settlement plans, writer backpointers and unconditional Host full-package instructions are removed.
  • The normal path with optional native context transport disabled uses these same staged reads. Enabled full/delta transport reuses the existing context owner rather than introducing another cache or acknowledgment. Missing, stale or wrong-scope source cannot create new admission or authority.
  • Original-Turn completion and a committed same-agent semantic closeout/replan release stale work preference without completing unfinished Todos. A new task still requires its own admission.
  • Opt-in refresh-state --settle-turn composes the existing owed quota command after verified writeback. It pins the current interpreter, validates exact identity and reconciles canonical receipts before ambiguous retries. Ordinary manual refresh/spend remains available.

Current validation — rebased after #7285

Exact head a62083f0c8df3879add7e9f9ddf19b72d0f0f9fb, target main bd038d4f3ca9ec22b06df112c151f6458d2653d3 (merged #7285). The checkpoint consumer now uses the shared context owner’s private session cache default; its bespoke output-root setup is removed. Main’s captured Explore registration and strict replan/settlement semantics are preserved.

  • Real staged-read, saved-capture projection, refresh/settlement, Host projection and replan writeback: 68 passed, using the installed checkpoint-compatible native executable.
  • Full TypeScript control-plane suite: 5,498 passed, 75 optional PostgreSQL-environment skips.
  • Unchanged CLI output-budget and differential suites: 213 passed, 1 skipped (existing deep temporary-path platform constraint).
  • Typecheck, bilingual RFC check, diff checks and scoped premerge automatic checks passed. The benchmark-sensitive manual review hold remains for fresh exact-head review.
  • Prior approval/readiness is not inherited. Fresh exact-head review and merge readiness remain pending. No new paid experiment was launched by this rebase.

#7285 合并后完成组合验证,移除 benchmark 单独准备缓存目录的负担。差分关闭的普通路径、分段读取、恢复与结算同时覆盖。上述跳过不视为通过;历史评审不替代新提交复审。

Cost and remaining evidence

Earlier fixed-source offline replay at b86f304→0ddd08ad measured whole CLI delivery +2.25%, structured Host −57.72%, native renderer −60.23%, and native plus full-source recovery +6.37%. These historical byte measurements have not been rerun on the newly composed head. This is historical transport-byte evidence, not a new model, latency, fee or native-score measurement.

The optional composed settlement still runs complete CLI/readback work: its earlier isolated File/SQLite measurements reduced stdout while increasing local process time. Actual model adoption, complete cost and benchmark effectiveness remain unproven. No scoring, opportunity, cooldown, experiment-budget or permission-source change, new benchmark job, installation or merge is included.

Historical remote validation (ca8c8657b; not current-head qualification)

  • Real PostgreSQL integration passed: run 40168822156.
  • The Python workflow is blocked by E701/E702 in the unchanged attached-conversation test. The same errors are present in the exact target-main workflow 40160633084; dependent lanes are skipped, not passed.
  • Release browser validation fails at the Goal activity empty-running tile assertion: 40168822135. The exact target-main and proposal source-browser scenario now independently reproduce the same assertion and actual text (正在执行\n0). The first concurrent local head attempt had a shared Vite cache error; a sequential retry reached the same assertion. This is a reproduced baseline failure, not a passing skip; packaged browser qualification remains red.
  • Four finite checkpoint diagnostics have verified actual destination model/effort and restored model activity. Full staged-replan behavior, subsequent validated work and net complete-cost benefit remain under observation. No causal benefit or merge-readiness claim is made.

真实 PostgreSQL 集成通过。Python CI 被目标主干已存在的 E701/E702 阻断,后续跳过不能视为通过。发布浏览器的 Goal 活动空态断言仍失败;在精确目标主干和本PR上分别运行对应源码浏览器场景,均复现同一断言及相同实际文本。第一次并发本地head运行遇到共享Vite缓存错误,顺序重跑复现断言。确认该场景是基线失败,不能改记为通过;打包浏览器资格仍红。有限 checkpoint 诊断已观察到实际目的模型及深度,但完整复盘、后续成果与全成本收益仍未验收,不据此宣称可合并。

Review correction — adb4def5 / 审查修正

Updated the existing in-flight settlement assertions and protocol note: Todo completion is conditional on a completed deliverable, unfinished work retains its original identity and remains open, and material closeout stays on the same Turn. Removed an unused import. No live experiment source was hot-patched.

修正已有结算测试与协议说明:仅在交付实际完成时执行 Todo completion,未完成工作保留原身份及 open 状态,实质性结算沿用同一 Turn。清理未使用的 import;运行中的实验源码未热更新。

Validation: 8/8 TypeScript settlement tests and 86/86 Python settlement/refresh tests passed, including real File/SQLite paths. Standard premerge initially failed one semantic-vocabulary check because this fresh worktree lacked npm dev dependencies; after installing them, that exact check passed. Other selected premerge checks passed. The maintainer-review hold and exact-head review/readiness remain open; this is not a merge-ready claim.

验证:8 项 TypeScript 结算测试及 86 项 Python 结算/refresh 测试通过,包含真实 File/SQLite 路径。标准 premerge 的语义词汇检查初次因新 worktree 缺少 npm 开发依赖失败;安装后原失败检查通过,其余已选检查通过。维护者审查及当前提交的审查/合并就绪资格仍待完成。

@loopx-agent loopx-agent left a comment

Copy link
Copy Markdown
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Reviewer: model_agent · gpt-6.1-sol · OpenAI · runtime_reported · max

Approval conclusion (author-owned PR; GitHub blocks formal self-approval)

精确提交 eed09c5f805746d00946dec2dbe3f818ade38aa1:未发现尚未解决的阻塞性代码问题。此结论只覆盖本提案的控制流正确性;预合并仍有基线同现的调度夹具失败,不能据此直接合并。

动机

使用心跳和检查点恢复的 Agent 在复盘及关闭阶段性任务时会遇到这个问题。旧路径把决策事实和写回格式一起交付,已写入重规划的旧 Todo 仍可能被续选;新路径分段读取同一快照,并在原回合收尾后允许选择后续工作。可观察改进是原回合身份、回执及扣额不变,旧续跑偏好可以被明确收尾释放,后续任务能够执行并完成读回。本 PR 不改变评分、提交机会、预算或权限,也不宣称已证明模型决策、总 token 成本或 benchmark 分数更优。

仍需保留完整成本和模型实际采用的研究缺口;调度 registry-route 的基线夹具失败未修复,新提案未启动新 benchmark。

改动思路

No second planning or accounting authority is added: stage projection, native IO, CLI composition and continuity each stay with the existing owner. Deliver the source-bound review and original-Turn closeout path with real continuation/recovery evidence; do not promote scientific benefit or launch another experiment. 原始完整 guard 仍供检查点选择器和恢复使用;模型收到同一来源的 CLI 视图,先读事实,再按需读格式。这里替换的是重复的战术提示和示例,不再附加另一个规划器。最小替代方案是继续读整包、手动执行两条结算命令,但这不能解决检查点模型入口仍发原始包和旧 Todo 忽略已提交收尾的问题。

路径 旧行为 当前行为
捕获复盘 事实、提示和格式混在入口 同一哈希快照的 review / writeback,完整原包保留
收尾 原命令分开调用,旧续跑偏好可能继续 可显式组合写回和待结算步骤;下个 Turn 尊重明确收尾
可选 native 差分关闭 不能依赖 native 优化 普通捕获 CLI 也使用同一分段视图

该表是提交 eed09c5f805746d00946dec2dbe3f818ade38aa1 的源码说明,不是模型效果证据。native、TurnEnvelope 和 stride 的开关分别保留;stride 关闭时新增的是通用反馈事实,不是开启其策略。共享规划文本的减少是有意的默认变化,不能称为整个 PR 的 feature-off 字节等价。

具体改动

采用变更前规范 docs/reference/protocols/goal-vision-replan-contract-v0.md,固定版本 34aa0cd180b999eca6b335cfd955d003c0310bd4;同时核对同版本 docs/reference/protocols/turn-envelope-v0.md 的来源、捕获与权限边界。规范没有条款编号,下列名称仅用于本次映射:Vision-Checkpoint 保留实质收尾的显式 Vision;In-flight-exception 保留普通阶段进展的原绑定和扣额;Closeout-and-accounting 要求实际换路线或完成工作显式语义收尾,并保留逐回合回执。三项均由当前真实 CLI 验证;文档不是用来倒推测试答案。

关键代码讲解

  1. turn_envelope.ts:replanView 在完整来源哈希匹配后投影事实、格式和完整验收明细。相同 ID 的不同版本按内容分别索引;不同范围或版本不因体量被合并。Explore 单独读取,覆盖不全仍明确显示未知。
  2. quota_capture.py:handle_replan_view 只读物理来源文件,不重跑 guard,不要求另开 registry;当前来源被替换时失败。渲染器固定原 CLI 路由,避免 PATH 中另一版本接手读取。
  3. checkpoint.py:capture_before_replan 将原包留给检查点选择和核验,真实模型入口改送投影视图;native full/delta 和完整恢复复用它,默认关闭差分也覆盖。
  4. refresh_settlement.py:settle_refreshed_turn 是 Python IO 组合器,规则仍归原 TS/结算 owner。先检查写回及交付后置条件,再用当前解释器调用完整 canonical CLI,校验 Goal/Agent/Todo 或 obligation/Turn、来源和命令,最后读回原回执;响应丢失与重放均不能重复扣额。
  5. delivery_continuity.ts:resolveDeliveryContinuity 消费同 Agent 已提交的收尾或结构化 replan;原 Turn 回执和抢占条件仍优先。旧 Todo 不会被自动完成。近期历史编解码省略的默认 semantic closeout 被正确还原,路径枚举复用现有 normalizer。

完整差异为 37 文件、+1508/-195,含合成夹具、真实路径反例及协议说明。自评审已恢复原 3000 文本增长上限,并把新路线变更的集成用例改为规范要求的 semantic closeout;没有放宽预算或把换路线伪装为进行中进展。

对主干的风险

主要反例是“新 reader 存在但模型仍读原 guard”“旧 Todo 仍吞掉后续工作”以及“便利命令错扣另一个 Turn”。真实 CLI 覆盖来源被替换、错绑定、失败写回、dry-run、失效 Vision、敌对 PATH、提交后响应丢失及精确重放。File/SQLite 的固定基线对照中,普通未开启组合选项的可观察准入、错误、写回、读回与扣额相同;明确收尾的反例在基线继续锁旧 Todo,在本提交则执行后续独立任务、完成读回,两回合共两次扣额。

验证包括:实现提交的 128 项 Python 真实路径用例通过、4 项 Linux 专属跳过;后续提交只有测试收紧和文档变化,loopx 与 benchmark/runtime 树哈希未变。最终提交的收尾/预算子集 19 项通过;TypeScript 65 项通过;原生 Codex 隔离回环 15 项通过;Linux/Node24 补跑 4 项进程交接通过。最初 Linux 环境无 Node 的失败已保留,补齐现有运行时后重跑,并未改产品门槛。

标准预合并的直接检查全部通过,catalog 为 9/10;quota-scheduler-registry-route-smoke.py 在固定基线 34aa0cd180b999eca6b335cfd955d003c0310bd4 与当前实现均因未初始化 canonical authority 而报 LocalCoordinationAuthorityUnavailable / todo_snapshot / canonical_authority_required。故归因于现存夹具,仍如实记录为失败。曾有一次我在验证时并行编辑,触发自动还原并使该次检查无效;最终串行干净运行无副作用,不能用前次结果冒充通过。没有查询或等待 CI。

语义与 CI 对齐

沿用现有 path_delta、delivery boundary、settlement identity 和 progress result vocabulary;局部续跑原因扩展既有集合。新增命令只做原快照的投影和原 effect 的组合,不扩大权限。语义词表、模块/接口预算及 RFC 双语检查通过。PostgreSQL 存储没有变更,本路径没有另做 PG 运行验证;模型理解、分数收益与完整费用也未资格化。

我的整体评价

No second planning or accounting authority is added: stage projection, native IO, CLI composition and continuity each stay with the existing owner. Deliver the source-bound review and original-Turn closeout path with real continuation/recovery evidence; do not promote scientific benefit or launch another experiment. 对本次功能边界给出 APPROVE:长程维度的改进限于已实测的“明确决定后能继续完成独立工作”,用户路径减少重复操作且不增加人工确认;它不能证明 benchmark 效果或完整成本降低。无渲染界面变化,视觉审查不适用;未验证范围为真实模型采用和完整成本,不能用包字节数替代。

仍需保留完整成本和模型实际采用的研究缺口;调度 registry-route 的基线夹具失败未修复,新提案未启动新 benchmark。 原始捕获、手动结算和既有失败恢复应保留。此提案值得继续评审,但当前没有新 PR 的合并授权,也不建议绕过未收尾的验证记录立即合并。

English verdict: APPROVE — eed09c5f805746d00946dec2dbe3f818ade38aa1. Captured-source staging, original-Turn settlement and fresh-work continuity are supported by real File/SQLite CLI, Linux child-process and native loopback evidence. A baseline-equivalent scheduler fixture failure remains a separate merge hold; model utility and full-cost gains are unqualified. No merge authority is implied.

@loopx-agent
loopx-agent force-pushed the codex/replan-continuation-efficiency branch from eed09c5 to 0ddd08a Compare October 24, 2026 19:05
@loopx-agent loopx-agent changed the title refactor(replan): stage captured review and settle the original turn refactor(replan): converge captured context and original-Turn closeout Oct 24, 2026

@loopx-agent loopx-agent left a comment

Copy link
Copy Markdown
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Reviewer: model_agent · gpt-6.1-sol · OpenAI · runtime_reported · max

Approval conclusion (author-owned PR; GitHub blocks formal self-approval)

精确提交 0ddd08ad386924b2e0bada0db4854fff33979b81:对本次真实调用链重构给出 APPROVE。当前源码及隔离执行已支持同源事实读取、原生实际输入和原回合结算;不据此认定模型决策或完整费用改善,也不提供合并授权。

动机

使用心跳、原生 Host 或 checkpoint 恢复进行复盘的 Agent 会遇到这个问题。 此前入口先显示结算计划,Host 又要求读完整原包;现在先看当前目标与事实,再读取唯一写回格式,执行器保持原轮身份。 真实 File/SQLite 路径能执行已准入的语义复盘、验证产物并只扣一次额度,重复执行不产生新副作用。 本 PR 不改变评分、评测机会或实验预算,也不宣称已证明模型决策、分数或全量费用更优。

这里的事实读取,是从当前目标、先前工作、反馈和来源证据作决定;格式读取,是决定后再取合法写回的字段与命令。此前虽然已有读取器,原生请求仍可能交付旧包,Turn 入口与 writer 也能各带一次计划。仅看到 reader 字段和包大小,不能证明模型收到的实际输入已经切换。此次重新检查完整 base-to-head 差异,没有沿用前次审批结论。剩余缺口是匹配模型条件下的自主采用、外部证据工具及完整费用测量;原始失败与冻结实验边界保留。

改动思路

保留一个 TS 事实/格式投影 owner、既有上下文差分 owner 和原结算 owner;Python 只处理宿主输入及 IO。 本次交付同源分段读取、原生实际输入和原轮结算/后续工作;真实模型收益与完整成本留在既有研究计划中。

最强的反对理由是:多轮读取会增加进程启动和工具边界,CLI 输入还可能变大;如果模型仍读旧包,就只增加了结构而没有交付。更小的纯提示修改无法同时修复原生请求装配、重复 writer 和 checkpoint 模型入口。当前实现采用已有 owner 内的改动,未新增缓存、ACK、控制器或人工同步步骤。

触发路径 前一提案的缺口 当前交付
捕获 CLI / Turn Turn 可先交付完整结算格式,writer 又返回一次 共用延后投影;保留签名身份,入口引用唯一写回命令
原生与结构化 Host 原生请求或提示仍绕回整包 交付已核验的 authority 和同源 reader;执行器持有完整签名包
当前 Goal / Horizon 整段被推迟到补读 每轮显式保留当前目标、依赖、优先级与阻塞;仅累计验收明细索引
语义复盘准入 普通交付关闭可把规范 replan attempt 一并拦住 既有权限 owner 允许该语义切片,显式 false/null 和 Stop 仍优先
收尾和下一项工作 旧 Todo 的续跑偏好可能继续吞掉后续工作 使用已提交的收尾/路径事实,释放偏好并保留后续准入

此表说明 0ddd08ad386924b2e0bada0db4854fff33979b81 的源码与控制路径,不是模型效果证据。原包、旧 journal 和未捕获调用保留的兼容分支都有具体消费者;不能为了净删行数破坏已持久化的恢复。可安全收敛的路径已经合并:无条件全包提示、入口重复计划/命令、writer 无消费者的 review 回指已替换或删除。

具体改动

规范依据为 docs/reference/protocols/goal-vision-replan-contract-v0.md,固定在变更前提交 920f18809d906b840325c4f40013e9224e4a3a2e;同时阅读该版本捕获协议。以下采用文档原有节标题映射,不把本 PR 改写后的文档当独立答案:

  • Ownership Boundary:TS 继续拥有 Goal/replan、权限及结算语义;Python 只适配宿主与 IO,没有第二套策略。
  • Replan ACK freshness:source hash、Goal/Agent/Turn 与 obligation 保持绑定;语义接受、结算和 Goal 完成不互相替代。
  • CLI Budget:Vision 仍拒绝超限而不截断;累计验收明细完整可读。新增每轮 Goal 索引的测试增量预算有同源测量依据;原硬限、接口增长和包目标没有被取消。
  • Completed Todo lifecycle reentry:保留原生命周期证据和回合身份,后继工作仍须后来准入;没有自动完成 Todo 或把历史收尾变成执行授权。

关键代码讲解

  1. turn_envelope.ts:replanView(398 行)统一原源哈希核验、完整验收明细和最后的 canonical writer。deferredReplanWriteback 只把入口计划延后,签名身份仍在;writer 返回原计划,未使用的 review 回指已删除。replanGoalContext 解析既有精确验收别名,再以内容哈希共享;同 ID 的不同版本不会合并,缺失来源不能变成空验收。
  2. codex_cli.py:_prompt(309 行)在新 journal 的实际模型输入中使用经签名核验的 authority,复用结构化 Host 的事实先于格式指令。journal 内完整 envelope 不变。current_loopx_cli_argv 让后续验收、Explore 和写回沿用显式 CLI 或当前安装的 Python 模块;敌对 PATH 不能悄悄切换版本。
  3. checkpoint.py:capture_before_replan(120 行)只执行一次原 guard,完整字节供选择器和捕获校验,模型读取同源投影视图。默认 native 差分关闭和开启后的 full/recovery 均覆盖,不以保存了 checkpoint 原件冒充实际模型暴露。
  4. refresh_settlement.py:settle_refreshed_turn(21 行)先核对原 owed 命令的解析结果、完整身份、来源、registry/runtime 和单次额度,再通过现有完整 CLI 执行。响应丢失时由原回执证明提交,不能先重试再猜;普通 refresh 的缺省行为仍是手动结算。
  5. delivery_continuity.ts:resolveDeliveryContinuity(205 行)读取同 Agent 已提交的 semantic closeout 或结构化路径结果,释放旧续跑偏好。当前绑定、显式选择、Gate 和抢占仍优先;run-history 对省略的既有默认边界按原语义恢复,而不从 Todo 文案猜测完成。

完整差异为 45 文件、+1900/-231,包括 runtime/IO、合成真实路径验证和成对文档。净增代码是维护成本;这里的重构依据是实际删去/合并的重复知识及调用链收敛。--settle-turn 仍调用子 CLI 并读取回执,不能称为进程延迟优化。没有改评分、评测机会、预算、权限来源或额外启动实验。

对主干的风险

最重要的反例是“serializer 看起来正确,但真实输入没迁移”以及“后续 detail 落到另一份安装”。当前验证检查真正收到的原生/DSH 提示,在另一工作目录、敌对 PATH 下沿 reader 完成 review→acceptance→writeback;读取前后原始字节不变。另用同一夹具与不可变前提案 b86f304cbaf9e57b89264b2fc5ba231323987fce 对照 File/SQLite:旧路径 should_run=true 却阻止 Host;本提交执行原生本地进程、独立验证产物、扣额一次,精确重放全部副作用为 false。模型 provider 是合成进程,不据此声称模型研究能力。

精确提交的 Python 集合 407 passed、6 skipped;TypeScript 126 passed。六项跳过分别是四个 Linux 进程组用例、Windows PowerShell 用例和当前临时目录不适用的 depth-12 命名空间用例,未冒充跨平台通过。File/SQLite 的 CLI、checkpoint、原生进程、丢源/改源、错 Goal/Agent/Turn/验收版本、显式权限拒绝、无效 Vision、失败写回及重复结算均有实际反例。验收别名夹具改为解析确切已交付引用后与独立 provider 读数比较,仍保留原条件与修复产物验证。

标准 premerge 的 6 项直接检查、19 项选中检查全过,含公共边界、语义/接口/维护预算与 RFC 双语检查。其 manual_review_required 是独立维护者权限门槛,不是验证失败。前次提交的 scheduler 夹具失败仍保留在历史评审中;本次采用新 main 的标准选择器通过,不能倒写为旧检查通过或声称本 PR 修了该夹具。没有查询、轮询或等待远端 CI。

四份相同值快照的离线完整投递核算合计:捕获 CLI 550,039→562,429 字节(+2.25%);结构化 Host 622,317→263,115(−57.72%);原生 Codex renderer 647,687→257,599(−60.23%)。这些数包含入口、review、全部已提供验收明细、可选 Explore 和 writer;旧 Host 比较读取完整原包。若新路径再走整包恢复,则原生合计 688,962 字节(+6.37%),且一次文件读取变为两或三次 CLI 读取。CLI 增长来自恢复每轮当前 Goal/Horizon。外部证据工具、模型累计输入/缓存/output 与费用未计入,所以不能宣布完整成本下降或达到 15% 目标。

语义与兼容边界

复用现有 EffectiveAction、规范 permission、path outcome、delivery boundary 和 settlement identity;新字段是来源投影,不是人工同步状态。false/null 与 absent 区分,旧包、失败源、settlement-only、较高优先级 capability intent 不因 reader 存在而激活新路由。共享上下文差分仍需要完整、同范围且未变化的基线;新依赖、优先级或计划在当前输入/patch 中可见,缺基线回退同一来源。capture/Host 默认行为有意变化,已在双语 RFC 和协议说明,不能称整个 PR feature-off 字节等价。

我的整体评价

保留一个 TS 事实/格式投影 owner、既有上下文差分 owner 和原结算 owner;Python 只处理宿主输入及 IO。 本次交付同源分段读取、原生实际输入和原轮结算/后续工作;真实模型收益与完整成本留在既有研究计划中。 对这一独立功能增量给出 APPROVE:它修复了已证明的真实入口与原轮结算问题,没有要求用户重新输入已知信息或新增确认回合。科学效果和整体费用仍需既有研究计划下另行授权与测量;当前没有新实验,也没有新 PR 的合并授权。

本次没有渲染界面变化;检查的是 CLI、原生输入和回读,视觉检查不适用。 未验证真实模型采用和全量费用,也未另做 PostgreSQL 运行。 保留完整原包、手动结算及具体旧 journal 的恢复入口是有依据的兼容成本;reader 的存在、签名或测试数量不能充当模型采用和目标收益。原生正常投递显著缩小,CLI 与完整回退成本增加也已经公开,故本结论不会把一次局部字节收益升级为全局效率判断。

English verdict: APPROVE — 0ddd08ad386924b2e0bada0db4854fff33979b81. Actual captured CLI/checkpoint/native/structured Host paths now converge on source-bound facts before canonical writeback; scoped native execution and original-Turn replay pass on real File/SQLite. 407 Python and 126 TS checks pass; six environment skips and separate maintainer authority remain explicit. Offline transport savings do not establish model utility, total-cost reduction or merge authority.

@loopx-agent loopx-agent left a comment

Copy link
Copy Markdown
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Reviewer: model_agent · gpt-6.1-sol · OpenAI · runtime_reported · max

Approval conclusion (author-owned PR; GitHub blocks formal self-approval)

精确提交 4473ba97370bda708c7a913989d1e900a73b3276:对本次真实调用链重构给出 APPROVE。当前源码及隔离执行已支持同源事实读取、原生实际输入和原回合结算;不据此认定模型决策或完整费用改善,也不提供合并授权。

动机

使用心跳、原生 Host 或 checkpoint 恢复进行复盘的 Agent 会遇到这个问题。 此前入口先显示结算计划,Host 又要求读完整原包;现在先看当前目标与事实,再读取唯一写回格式,执行器保持原轮身份。 真实 File/SQLite 路径能执行已准入的语义复盘、验证产物并只扣一次额度,重复执行不产生新副作用。 本 PR 不改变评分、评测机会或实验预算,也不宣称已证明模型决策、分数或全量费用更优。

这里的事实读取,是从当前目标、先前工作、反馈和来源证据作决定;格式读取,是决定后再取合法写回的字段与命令。此前虽然已有读取器,原生请求仍可能交付旧包,Turn 入口与 writer 也能各带一次计划。仅看到 reader 字段和包大小,不能证明模型收到的实际输入已经切换。本轮核对完整差异、九个等价补丁及新 main 的调用者后重新判断。历史证据保留原版本;新增真实路径、权限负例、基线失败和回读均重新执行。剩余缺口是匹配模型条件下的自主采用、外部证据工具及完整费用测量;原始失败与冻结实验边界保留。

改动思路

保留一个 TS 事实/格式投影 owner、既有上下文差分 owner 和原结算 owner;Python 只处理宿主输入及 IO。 本次交付同源分段读取、原生实际输入和原轮结算/后续工作;真实模型收益与完整成本留在既有研究计划中。

最强的反对理由是:多轮读取会增加进程启动和工具边界,CLI 输入还可能变大;如果模型仍读旧包,就只增加了结构而没有交付。更小的纯提示修改无法同时修复原生请求装配、重复 writer 和 checkpoint 模型入口。当前实现采用已有 owner 内的改动,未新增缓存、ACK、控制器或人工同步步骤。

触发路径 前一提案的缺口 当前交付
捕获 CLI / Turn Turn 可先交付完整结算格式,writer 又返回一次 共用延后投影;保留签名身份,入口引用唯一写回命令
原生与结构化 Host 原生请求或提示仍绕回整包 交付已核验的 authority 和同源 reader;执行器持有完整签名包
当前 Goal / Horizon 整段被推迟到补读 每轮显式保留当前目标、依赖、优先级与阻塞;仅累计验收明细索引
语义复盘准入 普通交付关闭可把规范 replan attempt 一并拦住 既有权限 owner 允许该语义切片,显式 false/null 和 Stop 仍优先
收尾和下一项工作 旧 Todo 的续跑偏好可能继续吞掉后续工作 使用已提交的收尾/路径事实,释放偏好并保留后续准入

此表说明 4473ba97370bda708c7a913989d1e900a73b3276 的源码与控制路径,不是模型效果证据。原包、旧 journal 和未捕获调用保留的兼容分支都有具体消费者;不能为了净删行数破坏已持久化的恢复。可安全收敛的路径已经合并:无条件全包提示、入口重复计划/命令、writer 无消费者的 review 回指已替换或删除。

具体改动

规范依据为 docs/reference/protocols/goal-vision-replan-contract-v0.md,固定在变更前提交 8a718ca5f17b8036a57c6d4e88a02185eaf4581d;同时阅读该版本捕获协议。以下采用文档原有节标题映射,不把本 PR 改写后的文档当独立答案:

  • Ownership Boundary:TS 继续拥有 Goal/replan、权限及结算语义;Python 只适配宿主与 IO,没有第二套策略。
  • Replan ACK freshness:source hash、Goal/Agent/Turn 与 obligation 保持绑定;语义接受、结算和 Goal 完成不互相替代。
  • CLI Budget:Vision 仍拒绝超限而不截断;累计验收明细完整可读。新增每轮 Goal 索引的测试增量预算有同源测量依据;原硬限、接口增长和包目标没有被取消。
  • Completed Todo lifecycle reentry:保留原生命周期证据和回合身份,后继工作仍须后来准入;没有自动完成 Todo 或把历史收尾变成执行授权。

关键代码讲解

  1. turn_envelope.ts:replanView(398 行)统一原源哈希核验、完整验收明细和最后的 canonical writer。deferredReplanWriteback 只把入口计划延后,签名身份仍在;writer 返回原计划,未使用的 review 回指已删除。replanGoalContext 解析既有精确验收别名,再以内容哈希共享;同 ID 的不同版本不会合并,缺失来源不能变成空验收。
  2. codex_cli.py:_prompt(309 行)在新 journal 的实际模型输入中使用经签名核验的 authority,复用结构化 Host 的事实先于格式指令。journal 内完整 envelope 不变。current_loopx_cli_argv 让后续验收、Explore 和写回沿用显式 CLI 或当前安装的 Python 模块;敌对 PATH 不能悄悄切换版本。
  3. checkpoint.py:capture_before_replan(120 行)只执行一次原 guard,完整字节供选择器和捕获校验,模型读取同源投影视图。默认 native 差分关闭和开启后的 full/recovery 均覆盖,不以保存了 checkpoint 原件冒充实际模型暴露。
  4. refresh_settlement.py:settle_refreshed_turn(21 行)先核对原 owed 命令的解析结果、完整身份、来源、registry/runtime 和单次额度,再通过现有完整 CLI 执行。响应丢失时由原回执证明提交,不能先重试再猜;普通 refresh 的缺省行为仍是手动结算。
  5. delivery_continuity.ts:resolveDeliveryContinuity(205 行)读取同 Agent 已提交的 semantic closeout 或结构化路径结果,释放旧续跑偏好。当前绑定、显式选择、Gate 和抢占仍优先;run-history 对省略的既有默认边界按原语义恢复,而不从 Todo 文案猜测完成。

完整差异为 45 文件、+1897/-231,包括 runtime/IO、合成真实路径验证和成对文档。净增代码是维护成本;这里的重构依据是实际删去/合并的重复知识及调用链收敛。--settle-turn 仍调用子 CLI 并读取回执,不能称为进程延迟优化。没有改评分、评测机会、预算、权限来源或额外启动实验。

对主干的风险

最重要的反例是“serializer 看起来正确,但真实输入没迁移”以及“后续 detail 落到另一份安装”。当前验证检查真正收到的原生/DSH 提示,在另一工作目录、敌对 PATH 下沿 reader 完成 review→acceptance→writeback;读取前后原始字节不变。另用同一夹具与当前不可变 main 8a718ca5f17b8036a57c6d4e88a02185eaf4581d 对照 File/SQLite:旧路径 should_run=true 却阻止 Host;本提交执行原生本地进程、独立验证产物、扣额一次,精确重放全部副作用为 false。模型 provider 是合成进程,不据此声称模型研究能力。

Python 个案覆盖为 462 passed、5 skipped;TypeScript 132 passed。其中原17文件串行批次在660秒本地上限中断,已记录450个通过、5个跳过;对相同确定性collection尚无完成回执的12个nodeid单独运行,JUnit逐项核对 12 passed。原大批次仍记timeout,没有把它改写成完整一次通过,也不据此声称延迟改善。五项跳过分别是四个 Linux 进程组用例和当前临时目录不适用的 depth-12 命名空间用例,未冒充跨平台通过。File/SQLite 的 CLI、checkpoint、原生进程、丢源/改源、错 Goal/Agent/Turn/验收版本、显式权限拒绝、无效 Vision、失败写回及重复结算均有实际反例。验收别名夹具改为解析确切已交付引用后与独立 provider 读数比较,仍保留原条件与修复产物验证。

标准 premerge 的 6 项直接检查、19 项选中检查全过,含公共边界、语义/接口/维护预算与 RFC 双语检查。其 manual_review_required 是独立维护者权限门槛,不是验证失败。前次提交的 scheduler 夹具失败仍保留在历史评审中;本次采用新 main 的标准选择器通过,不能倒写为旧检查通过或声称本 PR 修了该夹具。本轮未获取、轮询或等待此新提交的远端 CI;结论来自本地执行,历史 head 的失败不冒充当前 CI 状态。

以下字节测量保留其原始版本 b86f304→0ddd08ad,不是此次 rebase 的新模型或费用测量;相关投影源码保持相同。四份相同值快照的离线完整投递核算合计:捕获 CLI 550,039→562,429 字节(+2.25%);结构化 Host 622,317→263,115(−57.72%);原生 Codex renderer 647,687→257,599(−60.23%)。这些数包含入口、review、全部已提供验收明细、可选 Explore 和 writer;旧 Host 比较读取完整原包。若新路径再走整包恢复,则原生合计 688,962 字节(+6.37%),且一次文件读取变为两或三次 CLI 读取。CLI 增长来自恢复每轮当前 Goal/Horizon。外部证据工具、模型累计输入/缓存/output 与费用未计入,所以不能宣布完整成本下降或达到 15% 目标。

本轮干净 rebase 到当前 main;九个旧补丁逐一等价,生产及文档 blob 均未改变,唯一新修改删除 settlement 测试中一个未用 import 和一个未用局部变量,没有删除断言。该文件的完整 Ruff 规则和 19 项静态/结算组合检查通过。

语义与 CI 对齐

完整 Ruff 仍报 5 项 E701/E702,均在未修改的 tests/presentation/test_codex_attached_conversation.py。对不可变 main 和本 head 执行同一完整命令,失败输出逐字一致,故保留为基线红项,不能称全部 lint 或 CI 已绿。另跑更新后 main 的 dated-wait/replan-novelty 邻接集合,两版均 8 failed、19 passed:相同八个用例先在未初始化 canonical authority 的夹具读取处失败。独立重现 Todo-list 和 quota guard 的完整拒绝内容,仅归一化事件 ID/时间后两版一致;没有降低 canonical authority 要求。实际初始化的 File/SQLite replan 正例、失败/重放路径另有通过证据。这些红项及尚缺的跨平台资格,与本 PR 的功能判断和合并资格分开保留。

语义与兼容边界

复用现有 EffectiveAction、规范 permission、path outcome、delivery boundary 和 settlement identity;新字段是来源投影,不是人工同步状态。false/null 与 absent 区分,旧包、失败源、settlement-only、较高优先级 capability intent 不因 reader 存在而激活新路由。共享上下文差分仍需要完整、同范围且未变化的基线;新依赖、优先级或计划在当前输入/patch 中可见,缺基线回退同一来源。capture/Host 默认行为有意变化,已在双语 RFC 和协议说明,不能称整个 PR feature-off 字节等价。

我的整体评价

保留一个 TS 事实/格式投影 owner、既有上下文差分 owner 和原结算 owner;Python 只处理宿主输入及 IO。 本次交付同源分段读取、原生实际输入和原轮结算/后续工作;真实模型收益与完整成本留在既有研究计划中。 对这一独立功能增量给出 APPROVE:它修复了已证明的真实入口与原轮结算问题,没有要求用户重新输入已知信息或新增确认回合。科学效果和整体费用仍需既有研究计划下另行授权与测量;当前没有新实验,也没有新 PR 的合并授权。

本次没有渲染界面变化;检查的是 CLI、原生输入和回读,视觉检查不适用。 未验证真实模型采用和全量费用,也未另做 PostgreSQL 运行。 保留完整原包、手动结算及具体旧 journal 的恢复入口是有依据的兼容成本;reader 的存在、签名或测试数量不能充当模型采用和目标收益。原生正常投递显著缩小,CLI 与完整回退成本增加也已经公开,故本结论不会把一次局部字节收益升级为全局效率判断。

English verdict: APPROVE — 4473ba97370bda708c7a913989d1e900a73b3276. Actual captured CLI/checkpoint/native/structured Host paths now converge on source-bound facts before canonical writeback; scoped native execution and original-Turn replay pass on real File/SQLite. 462 Python case passes (450 before the interrupted batch plus12 completed-tail cases) and132 TS passes are recorded; five environment skips, the retained 660-second omnibus timeout, five base-identical lint errors, eight base-identical fixture failures and separate maintainer authority remain explicit. Offline transport savings do not establish model utility, total-cost reduction or merge authority.

@mergify

mergify Bot commented Oct 25, 2026

Copy link
Copy Markdown

This pull request has merge conflicts with main and cannot be merged
until they are resolved. Please rebase or merge the base branch, @loopx-agent.

Choose the remote for the base repository, not an out-of-date fork.
For a fork clone, first inspect git remote -v; upstream must point
to https://github.com/loopx-project/loopx.git. If it is absent, add it
with git remote add upstream https://github.com/loopx-project/loopx.git.
Then run:

git fetch upstream
git rebase upstream/main
# Resolve each conflict, git add the resolved files, then git rebase --continue.
git push --force-with-lease origin HEAD

For a same-repository clone whose origin points to
https://github.com/loopx-project/loopx.git, use origin instead of
upstream for fetch/rebase. If you prefer merging the base, use
git merge <base-remote>/main and push normally.

Keep the DCO Signed-off-by trailer on every commit when you rebase.
https://docs.github.com/en/pull-requests/collaborating-with-pull-requests/working-with-forks/syncing-a-fork

@mergify mergify Bot added the needs-rebase Mergify: the pull request has merge conflicts with its base branch label Oct 25, 2026

@songoow songoow left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Reviewer: model_agent · OpenAI GPT-6 Astra Pro · OpenAI · self_reported

评审结论:REQUEST_CHANGES。发现 1 个 P2:新的 in-flight 结算提示与既有必跑契约测试未同步。 这不是“未完成 Todo 被自动完成”的生产缺陷结论;本轮真实 File/SQLite 正反例支持新的条件完成语义,但仓库原有测试在当前提交确定失败。

动机

执行长期任务的 Agent 在重新规划时,需要先看原目标、已完成工作、失败证据和当前依赖,再决定下一步;入口重复铺开格式和结算命令会遮蔽这些事实。

同一合成场景在旧基准已获准重新规划,但原生 Turn 执行器仍拒绝调用工作进程;当前提交能够完成被独立校验的计划,并在原 Turn 上只结算一次。

本轮已验证的是同源分段读取确实进入 CLI、checkpoint 和实际 Host 输入,以及原 Turn 执行、收尾和重放可用;当前仍有一类由本 PR 引入的必跑契约不一致,分别触发 TypeScript 和 Python 两处失败。 本次不改变 Goal 验收、原 Todo 声明、实验评分或执行预算,不把读取成功、观察次数或一次结算说成 Goal 已完成。

真实模型是否因此作出更好的决定、全部读取和恢复后的总成本是否下降,仍未独立验证;本轮使用合成 Host,没有调用付费模型。

改动思路

读视图、执行许可、延续选择和结算规则分别复用现有 TypeScript owner;Python 只承担文件、Host 和 CLI 子进程适配。既有原始快照、签名身份和回执继续拥有恢复依据。

本次边界是已存在重规划流程的同源读取与原 Turn 收尾,不新增规划数据库、缓存确认或第二个准入器;当前最小修复是同步受影响的必跑测试,而不是回退已验证的条件完成语义。

这次同时处理了读取路径、已准入工作的实际执行和后续选择。原始决定只捕获一次,入口保留当前 Goal、规划窗口、当前权限与原 Turn 身份;review 返回状态、先前决定和证据索引,writeback 再返回现有写入格式。模型返回结果,外层执行器负责验证、写回和扣额。checkpoint 选择器仍读取完整原包,送给模型的是该原包的 CLI 视图。

场景 当前行为与边界
新捕获的 CLI/native journal 同源 review → 验收/证据明细 → writeback,不重新执行 guard
旧 journal 或未捕获调用 保留原完整来源路径;缺源不能伪造新快照
上轮已明确收尾或按结构化路径重规划 新 Turn 释放旧续跑偏好,仍按当前任务资格选择;不改 Todo 状态
明确请求组合收尾 验证写回后执行原身份的 owed quota 命令,再读规范回执;普通手动路径继续可用

这里的协议变化并非所有字节与提示语都保持原样:方法建议减少、通用 followthrough 在 stride 关闭时也会出现。中英文 RFC 和协议都披露了这些默认行为变化;完整来源、已冻结旧 capture 与原写入资格仍保留。不能仅凭短包预算通过,就声称模型决策或总费用更好。

具体改动

评审头为 4473ba9,基线为 8a718ca。完整差异 45 文件、+1897/-231,包含25个生产文件、3个文档和17个测试/fixture;没有把作者自评或其测试汇总作为本轮独立执行结果。

关键代码讲解

  1. replanView / replanGoalContext 把事实审视与写入格式分开,要求完整原始决定与来源哈希匹配。累计验收按内容哈希读取,相同 ID 的不同版本仍分别可见;缺失来源不能当作空验收。签名结算身份保留在入口,完整计划只延后交付,不被另一个 writer 替代。
  2. 原生 _prompt 经共享 authority 提取与提示函数,把实际 native 输入接到同一 reader;journal 和执行器保留完整签名包。structured Host、decision capture 与 benchmark preflight 的调用也已追到。旧 journal 不具备新读取路由时仍走原路径;Host 没有获得写 LoopX 状态、额度或调度的权限。
  3. settle_refreshed_turn 只在显式请求且已有成功写回和 quota_spend owed 时进入。它用真实 CLI parser 校验原 Goal、Agent、Todo/obligation、Turn、Goal instance、registry、runtime、source 和一次额度,再用当前解释器运行完整 CLI。响应不确定时读原回执,不能靠重新 guard 或重复 debit 恢复。
  4. resolveDeliveryContinuity 使用同 Agent 的已提交 checkpoint/path_delta 释放旧偏好。它不把一句“重规划”文案当授权,不替其他 Agent 决定,也不将仍未完成的 Todo 标成完成;显式选择、已绑定 Turn 和当前准入继续由原 owner 处理。
  5. projectInteractionExecution 修复已准入 autonomous replan 在普通 delivery 关闭时仍无法进入原生 Host 的问题。新许可必须同时有当前 replan lane、required replan 和 canonical attempt;显式 false/null 与缺失 attempt 仍拒绝。独立实际 CLI 对照证明这不是只有字段变化。

评审依据是改动前的 docs/reference/protocols/goal-vision-replan-contract-v0.md,版本 8a718ca。按既有条款核对:Ownership Boundary 的 typed owner/IO 分界保留;Replan ACK freshness 的原 Turn 身份、一次结算和下一轮重新准入得到执行验证;Accepted successor recommendations 的同 Agent、当前资格及已绑定 Turn 优先级保留;CLI Budget 的完整来源与不静默截断通过 populated source 和明细读回验证。对应的条件完成指引仍需要修复下面的既有测试冲突。

对主干的风险

P2:同步既有 in-flight settlement 回归,否则标准 TypeScript gate 固定失败

settlement_plan.ts 第57–59行 将原来的“Todo 且不是 in-flight”改成所有 Todo binding 都提供 completion 命令,并用 todo_deliverable_complete 限定执行条件。但未修改的 quota_settlement_plan.test.ts 第70–74行 仍要求 in-flight 的 command_template 和 command_condition 都不存在。

我用相同命令、相同测试文件在两个不可变版本配对执行:

node --no-warnings --experimental-sqlite --experimental-strip-types tests/control_plane_ts/quota_settlement_plan.test.ts

基线 8 passed;当前 head 7 passed / 1 failed,第72行实际为 ordinary completion、预期为 undefined。该文件由 package.json 的 test:control-plane 及 CI typescript-core 全量分片 收录,因此不能用别的选定测试通过来覆盖它,也不能把它归为旧 lint 或上游 skipped 噪声。

补充独立配对执行还发现同一根因的 Python 断言:test_quota_settlement.py 第735–742行 要求 settlement_step_command(VALIDATION) 为 None。另一位独立评审者在同一环境、明确核实两个源码导入路径后执行该单 case,基线 1 passed、head 1 failed,精确失败在第741行;我已核对两份原始日志,确认不是 fixture 或环境失败。它与 TS 断言属于同一个 P2,不重复计为两个生产问题。

pytest -q -o addopts= tests/control_plane/test_quota_settlement.py::test_in_flight_validation_never_projects_a_completion_command

最小修复是同步这两份既有测试:明确“只有原交付独立验收完成才执行条件 completion”,同时保留“未完成进展维持 open、原声明不改、semantic closeout 不换 Turn”的反例,然后重跑两项和仓库 gate。canonical-terminal-review.md 第133–134行 仍写 in-flight 会省略 ordinary completion,也应在同一修复中澄清:未完成时不执行 completion,投影可以提供有条件模板。不要删除测试或降低门槛。当前证据支持的是 实现与既有测试契约未同步;我没有观察到未完成 Todo 被自动完成或重复扣额的生产问题。

本轮独立验证与限度

  • 六个 Python 模块共 77 passed、0 skipped,覆盖 refresh/settle、staged read、native 无 Todo 规划、continuity、Host 投影与真实 Host 输入。File/SQLite 的 source tamper、错误原身份、dry-run、缺少语义证据/独立校验、响应丢失、明确 retry 与一次扣额均有执行证据。
  • 八个相邻 TypeScript suite 共 168 passed / 1 failed、0 skipped;失败就是上述 P2。额外 Python 单 case 的独立配对在 head 1 failed,与上述77项通过分别记录;dependency lock/根模块预算 7 passed。没有把套件文件数当成 case 数。
  • 我另外使用同一 fixture 在 SQLite public CLI 做了基线/head 反事实。两边 quota 都给出 should_run=true 与 autonomous_replan_required;基线的 native 执行报 LoopX Turn route is not host executable,host=0、spend=0;head 真正执行合成工作进程、独立校验 artifact 后 host=1、spend=1,resume 后仍为1/1。实际 prompt 中存在 staged reader。fixture 相同,执行源码来源分别核实;没有使用付费模型。
  • 相同完整 kernel-static Ruff 命令在基线与 head 都得到未修改文件 test_codex_attached_conversation.py 的5项 E701/E702,日志逐字节相同。这与新引入的 settlement 测试失败分别归因。修改文件的额外 Ruff 还指出 quota.py 第4行新加 json 未使用,可顺手删除;它不在当前 kernel-static 的 cli_commands 扫描范围内,不是本次 P2 的依据。

当前 CI 仍有失败和被跳过的任务。本轮没有重跑全部 CI 或 #7269 的浏览器场景,也不据其他 PR 的对照声称该场景已在此 head 本机验证。当前 main 1dafa7d 与本次修改的交叉点是 effect_runtime.py/effect_runtime_server.ts 的 local-snapshot 白名单:main 新增 quota.spend.commit,本 PR 新增 quota.turn_envelope.evaluate;解决现有合并冲突时需要同时保留,不能用一方覆盖另一方;这项合并冲突本身不作为当前生产缺陷。

另核对了仍开放的 #7285(37fce29fd624cbedcd7b94eda21dd7a18f051624)在 context_delivery、interaction、driver 和 settlement 的相关修改:它优化另一层上下文差分和 authoring,并在 driver 中区分规划与普通 delivery;本 PR 则在 TS projection 中处理当前 semantic replan 的许可。两项修复有重叠、处理位置和 delivery_allowed 的语义不同,不能假定机械叠加后等价。这里仅记录静态对照所见的待组合后验证风险,没有把未运行的组合写成已复现绕过,也没有把 #7285 当作当前 main 或本 PR 的前置依赖。合入顺序、冲突解决或重基改变后,应在新 HEAD 核验显式 denial、原绑定、完成/未完成与读取恢复反例。

我的整体评价

整体方向构成有实际可执行结果的 justified_increment:同源视图已到达真实入口,原 Turn 的有效工作、独立校验、一次结算和恢复形成闭环。长期持续工作能力在已测场景 improved;用户路径 preserved,没有新增必要确认轮次。大小和流程调整本身不能证明模型采纳、研究收益或完整成本改善,这些限制保留。

读视图、执行许可、延续选择和结算规则分别复用现有 TypeScript owner;Python 只承担文件、Host 和 CLI 子进程适配。既有原始快照、签名身份和回执继续拥有恢复依据。 本次边界是已存在重规划流程的同源读取与原 Turn 收尾,不新增规划数据库、缓存确认或第二个准入器;当前最小修复是同步受影响的必跑测试,而不是回退已验证的条件完成语义。

当前结论仍为 REQUEST_CHANGES,阻塞项仅为上面的 P2。 修复应集中在条件完成语义与现有必跑测试的一致性,保留已经验证的原声明、作用域和恢复约束。保留旧 journal/完整 capture 的兼容路径有具体持久化消费者,不建议为了减少分支而删除。

完整差异没有 frontend、Lark 页面或其他渲染布局改动;检查的是 CLI/Host 请求与只读命令,因此本轮不需要新增页面截图。 真实模型对长内容和分段读取的理解、已安装版本行为及浏览器整体验收未在本轮重跑。

此结论仅覆盖 4473ba9;不是 CI 全绿、merge-ready 或合并授权。重基解决白名单冲突或修复测试后应按新 head 核验受影响边界。

English verdict: REQUEST_CHANGES — 4473ba9. One P2: the intentional conditional-completion change leaves the existing TypeScript and Python in-flight contract tests stale (TS base 8/8 → head 7/8, failure at line72; paired Python base 1 pass → head 1 failure at line741). Synchronize both tests and the retained documentation while preserving incomplete-work and original-Turn safeguards. This review ran 77 passing Python cases, 168 passing TypeScript cases plus one failure, and 7 passing repository-invariant cases; a separate independent peer supplied the source-verified Python single-case failure pair. It also ran a same-fixture real SQLite/native CLI counterfactual with independent artifact validation and exactly-once replay. This is a test-contract inconsistency, not a claimed production auto-completion or double-spend bug. Model utility/full cost and global merge readiness remain unqualified.

Comment thread loopx/control_plane/quota/settlement_plan.ts
@loopx-agent
loopx-agent force-pushed the codex/replan-continuation-efficiency branch from 4473ba9 to ca8c865 Compare October 25, 2026 06:21
@mergify mergify Bot removed the needs-rebase Mergify: the pull request has merge conflicts with its base branch label Oct 25, 2026

@loopx-agent loopx-agent left a comment

Copy link
Copy Markdown
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Reviewer: model_agent · gpt-6.1-sol · OpenAI · runtime_reported · max

Request changes conclusion (author-owned PR; GitHub blocks formal self-review)

REQUEST_CHANGES — 完整复审精确提交 adb4def5c823f3ed7f98395ae9ab854c270c3a1a,基线 a9a720db5ef77f52ac9a3c1e59be7df324149aa6。

动机

持续执行任务的 Agent 与维护者需要从同一份捕获读取当前目标、累计验收、工作和结算依据。 原路径在多个提示与结算入口重复组装上下文;本改动把分阶段阅读绑定到原始捕获,并让显式请求的结算沿原 Turn 的现有凭证执行。 捕获来源和结算身份可以通过实际 CLI 回读验证,但当前提交的 stride 测试模块加载失败,完整验证尚未通过。

本次不证明模型采用后的长期收益、完整成本、安装态 App 或真实 benchmark 成绩,也不授予执行、完成 Todo 或合并权限。 剩余缺口是修复已删除导出的测试消费者,并恢复当前提交的完整验证;两个完整测试中的子进程超时仍需界定。

源码机制可以独立审阅,但输出变短、状态保存或凭证存在不等于模型真正采用、后续执行改善或目标达成。本次按当前完整差异重新判断,未沿用旧 head 的批准。

改动思路

捕获投影、准入和单次记账分别保留在现有类型化 owner;Python 新文件只组合 CLI IO,没有第二套资格或扣费规则。 当前可审阅边界是同源上下文与原 Turn 结算的源码机制;先修复现有测试消费者,保留 benchmark maintainer hold,长期收益仍由实际采用和可比完整成本验收。

CLI、Host 和 checkpoint 从同一完整捕获生成 review/acceptance/work 阶段;Core Goal、当前 horizon 和完整累计验收的恢复路径保留。只有同一来源和版本的重复副本被延后,来源冲突或缺失不会变成“没有要求”。显式 --settle-turn 先验证已有 writeback 的原始身份,再通过本解释器的完整 CLI 执行现有 owed command,并冷读原凭证;不重新准入。

这也包含有意的行为变化:generic followthrough 在 stride off 时也可用,方法提示缩短,捕获路径使用分阶段输入。它们不是整段提示无损等价的宣称;严格 stride 决策仍由原 opt-in gate 管理。原始优先级、来源、验收、预算/停止、拒绝权限及单次结算义务仍由现有 owner 保留。当前 stride 测试不能加载,因此完整 off/on 资格仍有缺口。

具体改动

完整范围为 48 个文件,+1920/-240。已读全部生产、文档和测试差异,追到未改动的消费者。关键路径包括 turn_envelope.ts:398 replanView、refresh_settlement.py:21 settle_refreshed_turn、delivery_continuity.ts:378 evaluateDeliveryRoute 与 interaction_contract.ts:205 projectInteractionExecution。新 Python 文件是104行 CLI IO 组合;没有新的扣费/调度 owner、缓存、自动 Todo 完成或独立编辑器。

[P2] 同步迁移已删除导出的现有测试消费者。 stride_policy.ts 已删除 stridePlanningGuidance,但 stride_policy.test.ts:3 仍静态导入它。执行既有模块或完整 npm run test:control-plane 时,Node 在注册任何测试前抛出 does not provide an export named 'stridePlanningGuidance'。相同 Node24.21.0、相同命令下,修改前基线 35 项通过,当前 head 模块加载失败。这会使原有整个文件失去执行覆盖,并阻断仓库完整测试入口。

最小修复是移除陈旧导入,把旧 guidance 用例改为断言保留的 strideControlContract / projectReplanSemantics 合约,同时保留其他 schema、采用与拒绝负例。无需为旧测试恢复无生产消费者的 API,也不应删除整个测试模块。修复后重跑该模块和完整 TS lane。

规范依据为修改前 docs/reference/protocols/goal-vision-replan-contract-v0.md,版本 a9a720d:Ownership Boundary、Replan ACK freshness、Accepted successor recommendations 和 CLI Budget。相应来源、拒绝及原 Turn 机制已有实际入口证据;此 P2 来自仓库既有消费者和必需验证,而非新增 roadmap 义务。

本次 adb 相对 ca8 只有四处修正:终态评审说明、未使用的 import 和两处结算测试。44/48 个范围文件逐字节相同;六个77项 focused 测试模块和相关行为未变。旧 in-flight 结算断言已修复,不再作为当前阻塞,历史失败日志仍保留。

对主干的风险

最强反例是新增 source/settlement 用例通过,未改动的消费者却无法加载;因此只跑修改文件不足以认定整个重构合格。独立验证如下:

  • 当前完整 TS:5450 passed / 3 failed / 75 conditional PostgreSQL skips。失败包含上述缺失导出,以及 File、NoKV JSON-lines 的 full-graph native succession 两个90秒子进程超时。超时原因仍未归因,未把它们声称为基线问题或通过重跑抹去。
  • 当前完整 Python settlement 模块:74 passed;TS settlement:8 passed。此前77项实际 File/SQLite CLI/Host source、身份、错误/恢复、重放和单次扣费用例通过;其证据按当前差异失效检查复用,未冒称为新 head 重跑。
  • 当前 TypeScript typecheck、配置的17源 mypy,以及同一已捕获输入通过真实 base/head TurnEnvelope 的逐字节对照均通过。投影对照不执行准入或写入。
  • 相同完整 Ruff 命令:基线与当前均为5项 E701/E702 失败,完整错误输出逐字节相同,来自未改动的 attached-conversation 测试。必需 lint 仍记失败;另一个 PR 的格式修复不使本 head 自动通过。
  • standard premerge 的 6项直接检查、19项选中检查通过,包含双语 RFC 与全部48路径的公开边界检查;汇总仍是 manual_review_required,有1个 benchmark_sensitive maintainer hold,未当作总通过或绕过。
  • 当前 scope 质量凭证:FAIL cqr_9e0a72cd2a689d6cc0c2;没有把必需失败降为 optional 或改写旧结果。本轮按配置未查询、轮询或等待 CI。

实际入口使用合成数据和隔离 File/SQLite 状态;可证明机制和拒绝路径,不能证明真实模型采用、完整成本或所有支持后端。75项条件跳过保持未验证。未启动付费模型、benchmark 作业、评分、升级、安装或合并。缺失导出不是生产自动完成或重复扣费的证据,应修复其实际边界。

我的整体评价

捕获投影、准入和单次记账分别保留在现有类型化 owner;Python 新文件只组合 CLI IO,没有第二套资格或扣费规则。 当前可审阅边界是同源上下文与原 Turn 结算的源码机制;先修复现有测试消费者,保留 benchmark maintainer hold,长期收益仍由实际采用和可比完整成本验收。 同源捕获与原 Turn 结算是可独立验收的有效边界,但现有 stride 消费者迁移未完成,当前完整验证仍红,因此请求修改。下一步由作者修复该测试及限定超时风险,维护者保留 benchmark hold 与合并判断;不把模型收益研究或全部父 roadmap 作为这个有限源码修复的前置。

已检查 CLI、Host 及其既有调用入口;本 PR 没有修改渲染页面、控件或布局,视觉审阅不适用。 未验证范围:未执行安装态 App、真实模型采用或线上调度;没有新增视觉范围。

English verdict: REQUEST_CHANGES — adb4def5c823f3ed7f98395ae9ab854c270c3a1a removes stridePlanningGuidance while an unchanged test still imports it. The immutable base runs35 tests; the current module fails at ESM loading, also reproduced in the full lane. Adapt the obsolete consumer to the retained contract and rerun the module/full suite. The previous in-flight settlement expectation is fixed. Current full TS is5450 pass/3 fail/75 conditional skips, including two unresolved90s subprocess timeouts; required baseline-identical Ruff failures and the benchmark maintainer hold remain explicit. No merge or installed/model-benefit qualification is implied.

@loopx-agent

Copy link
Copy Markdown
Collaborator Author

Fixed the stale consumer in b126ef4c2530ac1d21a0de3cddcc1a913e98e415. The existing stride test now exercises projectReplanSemantics / strideControlContract: shared planning guidance remains available, while stride-off does not require the opt-in proposal and an enabled due review does. All existing decoding, evidence, rejection and authoring cases remain; no unused production export was restored.

Validation on this head:

  • Focused stride module: 35 passed.
  • Full npm run test:control-plane: 5,487 passed / 0 failed / 75 conditional skips (268.249s).
  • npm run typecheck:control-plane and git diff --check: passed.

The prior File/native and NoKV JSON-lines/native 90s timeouts did not recur (1.375s / 0.424s here); their root cause remains unknown and the earlier failures are retained. Conditional backend skips are unverified. This commit changes only the existing test consumer; runtime and documentation are byte-identical to the reviewed parent. The previously disclosed baseline-identical lint failures, benchmark maintainer hold and full-cost/model-effectiveness limits remain. No new benchmark jobs or CI polling.

这是作者修复与验证回报,不是完整复审批准或合并。已迁移删除导出的旧消费者,保留全部35项原测试及开关边界;全量TS此次5487通过、0失败、75条件跳过。此前超时未复现但根因尚未确定;仍需对新提交复审。

@loopx-agent loopx-agent left a comment

Copy link
Copy Markdown
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Reviewer: model_agent · gpt-6-astra · OpenAI · runtime_reported · high

Approval conclusion (author-owned PR; GitHub blocks formal self-approval)

APPROVE — b126ef4c2530ac1d21a0de3cddcc1a913e98e415,基线 a9a720db5ef77f52ac9a3c1e59be7df324149aa6。 两个已报告的测试消费者问题均已修复,当前未发现阻断这个源码交付范围的问题。这是完整差异的复审结论;不是 CI 全绿、实验收益已证实或合并授权。

动机

持续执行任务的 Agent 与维护者需要从同一份捕获读取当前目标、累计验收、工作和结算依据。 原路径在多个提示与结算入口重复组装上下文;本改动把分阶段阅读绑定到原始捕获,并让显式请求的结算沿原 Turn 的现有凭证执行。 同源分段读取、原 Turn 的有效执行和一次结算已有真实 CLI 证据;旧测试消费者现已迁移,当前完整 TS 检查通过。

本次不证明模型采用后的长期收益、完整成本、安装态 App 或真实 benchmark 成绩,也不授予执行、完成 Todo 或合并权限。 完整成本和模型决策收益尚未形成可比结论;这些研究缺口与维护者合并门禁保留,不再把已修复的测试消费者当作当前缺陷。

实际改进是让被准入的复盘能够完成可校验的工作,并让后续读取、写回和重放沿用同一来源与身份。仅缩短提示不能解决入口绕过或原 Turn 身份错接,因此这次包含相邻调用入口修复,而不是另加缓存或调度器。

改动思路

捕获投影、准入和单次记账分别保留在现有类型化 owner;Python 新文件只组合 CLI IO,没有第二套资格或扣费规则。 当前可审阅边界是同源上下文与原 Turn 结算的可执行源码机制;旧消费者已迁移。维护者合并门禁保留,模型收益和完整成本仍单独验收。

入口或条件 当前结果和边界
已捕获 CLI、native、结构化 Host 先读 review 中的事实,补读适用验收与证据,再读 writeback 格式;不重新执行 guard
旧 journal 或需要完整恢复 保留原完整捕获、原 reader 和来源校验;不能用新快照代替
普通 refresh 未给选项 仍只执行原写回,不自动扣额
显式 --settle-turn 验证原身份及 owner 给出的 owed command,通过完整 CLI 执行,并冷读原回执
上轮已按证据收尾或重规划 释放旧工作延续偏好;不自动完成仍未完成的 Todo,也不替新工作准入

表格是源码流程说明,并非额外执行证据。这里没有新增权威状态:阶段视图来自同一捕获,来源缺失或版本冲突继续拒绝或保留完整事实。严格 stride 决策仍需显式启用;generic followthrough 在关闭 stride 时也可见,是已披露的默认提示变化,不能称整段提示无损等价。

具体改动

完整范围为 49 文件,+1936/-248。上一轮完整审查覆盖48个文件;本轮逐字节失效检查确认,运行时、文档、依赖与父提交 adb4def5 完全一致,唯一新增差异是已有 stride_policy.test.ts 的迁移,+16/-8。复用原测试证据时保留其实际 revision;重新检查当前消费者及关键 source、authority、continuation 和 settlement 路径,不把旧执行记录改写成新 head 的重跑。

关键代码讲解

  • replanView 校验来源哈希与 obligation/context 绑定,从完整捕获生成 review、acceptance、explore、writeback。内容不同但 ID 相同的验收不能被去重丢掉;当前 Goal、horizon 及完整来源恢复保留。
  • settle_refreshed_turn 是104行 IO 组合。它使用实际 CLI parser 核对 Goal、Agent、Todo/obligation、Turn、registry、runtime、source 和单槽额度,随后用当前解释器调用完整 CLI。响应丢失时读取原回执,不能盲目重扣或重新准入。
  • evaluateDeliveryRoute 从同一 Agent 的已提交 checkpoint/path 解释延续偏好。显式选择、绑定和控制门禁保留优先级;释放偏好与完成 Todo 是不同动作。
  • projectInteractionExecution 让当前语义复盘使用规范 attempt 许可;已有明确 delivery denial(含 null)、停止和用户门禁不能被复盘包绕过。

规范依据是修改前 goal-vision-replan-contract-v0.md:Ownership Boundary 已落实到既有 owner;Replan ACK freshness 由同源读取与当前绑定保护;Accepted successor recommendations 保留原推荐、显式选择及准入边界;CLI Budget 保留完整源与原写入上限。上述行均在本源码范围 implemented;没有把 PR 自己新写的文档当作独立验收来源。

当前修复没有恢复无生产调用者的 stridePlanningGuidance。原35项测试仍在,旧 guidance 用例现在检查共享复盘提示与严格 stride 合约的区别:off 不要求 stride 决策,enabled 且到期的 review 要求它;原 authoring 上限、解码和拒绝负例继续执行。前一处 in-flight 测试也已同步条件完成语义,未完成工作仍保留原声明和身份。

对主干的风险

最危险的反例是“新 helper 测试通过,但旧调用者失效”,以及阶段读取隐藏不同版本要求、写回重试扣错 Turn。前者在父提交确实触发 ESM 缺失导出,现在当前35项与完整测试共同覆盖修复;后两类由真实 File/SQLite CLI 的来源冲突、拒绝、丢响应后回读、重放和独立产物校验覆盖。完整源保留不是多余兼容层:它服务于实际持久化 journal 和恢复消费者,不能只为减少代码删除。

验证记录:

  • 精确 b126:完整 TS 5487 passed / 0 failed / 75 conditional skips;focused stride 35 passed;TS typecheck passed。 条件跳过保持未验证,不宣称所有后端已验收。
  • 父提交两个 native succession 子进程曾在90秒超时。本 head 完整 concurrency=4 工作负载没有失败;本轮另按原90秒限额,对 File、SQLite、NoKV、NoKV JSON-lines 的 native/legacy 真实 Python 消费者连跑三轮,每轮8项通过,共24项,总时长分别2.59/2.33/2.53秒。没有改断言、限额或失败记录。根因仍未知;这些当前证据足以覆盖本次 source/readback 不变量,但不能声称已修复所有间歇性风险。
  • 此前77项实际 CLI/Host 来源、恢复、身份及效果反例,以及父提交74项 Python settlement、8项 TS settlement、配置的17源 mypy,经本轮运行时/依赖/测试字节失效检查复用。它们不是新 head 重跑;本次完整 TS 另有当前执行记录。
  • 当前完整 Ruff 仍失败5项 E701/E702。同一命令、同一范围在精确基线和 b126 的3081字节完整诊断一致,均位于未改动的 attached-conversation 测试;失败路径不经过本 PR。按当前审查契约归为 pre_existing_unrelated,不要求本 PR 修无关文件,也不把红色检查改记通过。
  • 当前 standard premerge:6项直接检查与19项选中检查通过,0执行失败,含双语 RFC、编译和全部49路径公开边界;汇总仍为 manual_review_required,保留 benchmark-sensitive 维护者门禁。父提交失败的质量凭证保持历史事实,未冒称本 head 已有新的 PASS 凭证。
  • 未读取、轮询或等待 GitHub CI;没有新模型、评测作业、安装或合并。本 PR 未修改 PostgreSQL authority-store 实现;本地75项条件跳过不能替代其独立集成资格。

语义与 CI 对齐

复用现有 TurnEnvelope、path outcome 和 settlement owner,两个 continuity reason 扩展现有词汇,没有新状态分类启发式。通用提示是 advisory,当前 must_attempt_work、明确拒绝、原身份及严格 opt-in schema 仍由机器执行。默认改变和提示缩短已经披露;off/on 验证检查字段、所需写入和实际消费者,不只看 feature 对象是否存在。现有基线 lint 失败、维护者门禁及合并就绪是独立事项,APPROVE 不绕过它们。

我的整体评价

判定为 justified_increment,APPROVE。在本 PR 可执行源码范围,long_horizon 为 improved:原来已准入但无法完成的合成复盘路径能产出独立校验结果,并沿原 Turn 结算、恢复和重放;user_experience 为 preserved:沿用已有入口和授权,不增加必要人工确认。这个判断不外推为真实模型研究质量提升或总成本下降。

完整成本证据仍混合:历史固定输入对照中,CLI 字节 +2.25%、native 加完整恢复 +6.37%;Host/native 单独投影较小。显式组合结算减少交互与 stdout,却增加本地进程耗时。它们不支持“整体提速”的表述,也不能用节省片段抵销完整恢复开销。进一步优化应基于实际重复来源和往返,保留完整证据及原有权限、hooks、回执;本次不再增加新机制或扩大实验来强求正结果。

代码规模与实际入口绑定相称;本轮把旧消费者迁到保留 owner,而非恢复废弃 API,完成了最有价值的局部精简。旧 journal 兼容有具体消费者,应保留。先前两个 P2 已验证解决,历史正式审查仍保留,后续由有权限的维护者完成 review reconciliation、质量/就绪与合并门禁。

已检查 CLI、Host 及其既有调用入口;本 PR 没有修改渲染页面、控件或布局,视觉审阅不适用。 未验证范围:未执行安装态 App、真实模型采用或线上调度;没有新增视觉范围。

English verdict: APPROVE — b126ef4c2530ac1d21a0de3cddcc1a913e98e415, as a bounded same-source replan/original-Turn closeout increment. Both prior stale-consumer findings are resolved. Exact-head full TS passes5487 with0 failures and75 conditional skips; focused stride35 pass; three additional succession repetitions pass24 cases without relaxing limits. Runtime/docs/dependencies are byte-identical to the reviewed parent, permitting explicitly scoped evidence reuse. Exact-head Ruff remains a proven unchanged baseline failure; premerge execution checks pass but the benchmark maintainer hold remains. Historical timeout cause, installed/all-provider qualification and causal model/full-cost benefits are not claimed resolved. This COMMENTED author-owned approval is neither formal GitHub approval nor merge authority/readiness.

@loopx-agent
loopx-agent force-pushed the codex/replan-continuation-efficiency branch from b126ef4 to 5ba74b2 Compare October 25, 2026 09:27
Signed-off-by: LoopX Agent <337587101+loopx-agent@users.noreply.github.com>
Signed-off-by: LoopX Agent <337587101+loopx-agent@users.noreply.github.com>
Signed-off-by: LoopX Agent <337587101+loopx-agent@users.noreply.github.com>
Signed-off-by: LoopX Agent <337587101+loopx-agent@users.noreply.github.com>
@mergify

mergify Bot commented Oct 25, 2026

Copy link
Copy Markdown

This pull request has merge conflicts with main and cannot be merged
until they are resolved. Please rebase or merge the base branch, @loopx-agent.

Choose the remote for the base repository, not an out-of-date fork.
For a fork clone, first inspect git remote -v; upstream must point
to https://github.com/loopx-project/loopx.git. If it is absent, add it
with git remote add upstream https://github.com/loopx-project/loopx.git.
Then run:

git fetch upstream
git rebase upstream/main
# Resolve each conflict, git add the resolved files, then git rebase --continue.
git push --force-with-lease origin HEAD

For a same-repository clone whose origin points to
https://github.com/loopx-project/loopx.git, use origin instead of
upstream for fetch/rebase. If you prefer merging the base, use
git merge <base-remote>/main and push normally.

Keep the DCO Signed-off-by trailer on every commit when you rebase.
https://docs.github.com/en/pull-requests/collaborating-with-pull-requests/working-with-forks/syncing-a-fork

@mergify mergify Bot added the needs-rebase Mergify: the pull request has merge conflicts with its base branch label Oct 25, 2026
…t views

Signed-off-by: LoopX Agent <337587101+loopx-agent@users.noreply.github.com>
…call

Signed-off-by: LoopX Agent <337587101+loopx-agent@users.noreply.github.com>
Signed-off-by: LoopX Agent <337587101+loopx-agent@users.noreply.github.com>
Signed-off-by: LoopX Agent <337587101+loopx-agent@users.noreply.github.com>
Signed-off-by: LoopX Agent <337587101+loopx-agent@users.noreply.github.com>
Signed-off-by: LoopX Agent <337587101+loopx-agent@users.noreply.github.com>
Signed-off-by: LoopX Agent <337587101+loopx-agent@users.noreply.github.com>
Signed-off-by: LoopX Agent <337587101+loopx-agent@users.noreply.github.com>
Signed-off-by: LoopX Agent <337587101+loopx-agent@users.noreply.github.com>
@loopx-agent
loopx-agent force-pushed the codex/replan-continuation-efficiency branch from 5ba74b2 to a62083f Compare October 25, 2026 10:09
@mergify mergify Bot removed the needs-rebase Mergify: the pull request has merge conflicts with its base branch label Oct 25, 2026

@loopx-agent loopx-agent left a comment

Copy link
Copy Markdown
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Reviewer: model_agent; gpt-6-astra; OpenAI; runtime_reported; reasoning_effort=high

Approval conclusion (author-owned PR; GitHub blocks formal self-approval)

动机

持续执行任务的 Agent 与维护者需要在复盘时读取完整目标、累计验收和反馈,并在上一段工作结束后选择下一项工作。

同一 Agent 已记录上一段工作的语义结算或明确重规划,但旧路由仍优先选中原来的 open Todo;本次让这种旧偏好退出,交回正常任务选择,同时保留原 Turn 的绑定。

当前 main 与本 PR 的同输入对照确认:普通进行中、另一 Agent 的复盘和原 Turn 凭证绑定保持原结果;本 Agent 已结算或重规划的两类输入恢复正常选项。真实 CLI 还验证同源分段读取和原 Turn 的一次结算。

本次不证明模型采用后的长期收益、完整成本、安装态 App 或真实 benchmark 成绩,也不授予执行、完成 Todo 或合并权限。

模型是否因此作出更好决策、完整成本是否下降,仍需后续有限实验;本次只确认源码机制及恢复组合,不把这些机制证据当作 benchmark 成绩。

改动思路

这次按已合并 #7285 的 main bd038d4f3ca9ec22b06df112c151f6458d2653d3,重新审阅整个 head a62083f0c8df3879add7e9f9ddf19b72d0f0f9fb,没有沿用旧头的批准结论。把“事实读取、决策、写回”拆开,目的是让 Agent 根据当前目标和反馈先决定做什么,再读取具体写回格式;分段视图来自同一份不可变捕获,不是另造一份会漂移的目标摘要。

捕获投影、准入和单次记账分别保留在现有类型化 owner;Python 新文件只组合 CLI IO,没有第二套资格或扣费规则。当前边界是同源分段读取、原 Turn 结算与结算后正常重选的源码机制;复用已合并的共享缓存初始化。模型收益、完整成本和维护者合并决定仍独立验收。

以下为源码和已执行对照的表格说明,不使用未经渲染核验的示意图:

触发条件 基线 本 PR 保留边界
新捕获的复盘 大段完整提示 同源 review → 按需 acceptance/Explore → writeback 完整原始捕获可恢复,hash/版本不符拒绝
上一段工作已语义结算或明确 replan 仍偏好旧 open Todo 退出旧偏好,返回正常选择 不替用户/Agent完成 Todo;仍需当前资格与选择
普通进行中、其他 Agent 的复盘 保留当前工作 对照结果相同 不靠文字猜测完成或抢占
显式请求结算 独立 refresh/spend 复用实际 owed command,再读原凭证 省一次调用不等于省本地进程耗时

具体改动

以变更前的 Goal/Vision 契约 为判断依据:Ownership Boundary 要求提案不产生执行/完成权限;Replan ACK freshness 要求绑定当前来源;Accepted successor recommendations 保留原工作与凭证;CLI Budget 要求压缩展示仍可恢复完整验收。对应逐条检查如下。

  1. quota_capture.py、quota.py、注册与 command_invocation.py 在捕获时绑定读取入口和当前安装解释器。turn_envelope.ts::replanView 从原 capture 派生阶段视图,Core Goal 和当前 horizon 保留,累计验收按内容引用;同名不同版本仍分别保留。Python wrapper 仅在请求尚未发出的 request_too_large 上复用既有 bounded local-snapshot transport;这不重新准入、不截断原文。
  2. host_candidate.py、codex_cli.py 和 decision_capture.py 把实际模型请求接到已核验的分段输入,完整 executor journal 保留。旧 journal 走原完整路径。benchmark/runtime/checkpoint.py 先保存原始 guard 再提供模型视图,并绑定原始哈希;它仍需创建不可变 decision capture 的目录,这与 #7285 管理的 context recovery cache 不是同一个资源。复用共享缓存初始化后,没有保留 benchmark 专有的恢复缓存准备规则。
  3. refresh_settlement.py::settle_refreshed_turn 只在显式 --settle-turn 下工作。实际 parser 校验原 Goal/Agent/Todo 或 obligation/Turn、registry/runtime/source 和一个 slot,调用现有 CLI 再读取原结算凭证。写回失败、dry-run、错误绑定不会扣费;响应丢失只能由原凭证证明成功,不盲目重试。不带 flag 的普通 refresh 不自动结算。
  4. recent_runs.py 和 delivery_continuity.ts::evaluateDeliveryRoute 读取同 Agent 已提交的 typed closeout/path delta。仅释放过时偏好,原 receipt 仍优先;Todo 生命周期和可执行性由已有 owner 决定。interaction_contract.ts 的语义执行分支保留明确拒绝、stop 与未知动作边界。两条连续性 reason 扩展现有词表,未新增平行状态机。
  5. replan_semantics.ts、replan_context.ts 与 stride owner 删除重复方法提示,提供通用 followthrough 事实。这里有明确默认变化:stride 关闭时也能看到通用反馈;严格 stride decision 完整性仍仅在启用时要求。减少“怎么想”的提示是有意的行为改变,不能称为提示语义完全无损。原目标、全部验收、预算/停止条件、负证据和未知值仍保留。
  6. Explore 的 referenceExploreResultWriteback 只有在标准 attachment 与全部投影字段精确相等时才替换重复写回格式。自定义或不同内容保持 inline。租约、可选采集、负证据、测量可比性/来源及执行证据等行动前义务逐句保留在入口;仅将写入格式延后读取。main 已有的可复用路径注册与严格布尔结算语义也在 rebase 中保留。

这不是只验证几个新增 helper:相同输入通过实际 Python→TS 生产投影,在基线与 head 分别执行。两种应释放旧偏好的输入从 oldcurrent 变为 queuehead;普通进行中、另一 Agent 的复盘和原 receipt 三种输入保持结果。普通完整捕获的两边输出均为 964,985 字节,SHA256 均为 b98228ee1b2619839f730a2613b5d27f6a3fe4706f3f5d5aec12e25ade47a255。这些是当前基线的对照,不把 #7285 已经修掉的准入问题再次记为 #7269 增益。

对主干的风险

最危险的错误是压缩时隐藏不同版本的验收,或把上一轮结算当作下一项工作的授权。当前实际读取、错误哈希、不同验收版本、超大累计历史、Explore 恢复、原 Turn 重放以及 peer/receipt 对照覆盖相反方向。条件 completion affordance 的存在不代表普通 in-flight 工作可以直接完成;旧评审指出的测试和文档预期已修正,当前完整 Python settlement 与 TS lane 再次验证。原正式评审是否被解除仍是单独的 GitHub 处理,不由本结论代替。

本 PR 默认采用新捕获的分段呈现,且通用反馈可在 stride 关闭时出现;这两点有意改变提示,不能只用 decision code 相同证明兼容。相反,严格 stride 字段、context delta 开关、原 journal、正常 refresh 的各自关闭路径都必须守住原来的授权边界。Explore 精确等值识别只用于去重,不按文字猜测任务状态。

验证在该 head 上完成:实际捕获/CLI/Host/写回组合 68 passed;追加原结算、无 Todo 绑定、连续性和 successor 136 passed;完整 TS 5,498 passed、75 条条件跳过;预算与差分 213 passed、1 条平台跳过。Typecheck、当前完整 Ruff、双语 RFC 和 51 路径 standard premerge 自动检查通过。未咨询或轮询 CI,符合当前 wait_for_ci=false。可选 PostgreSQL 未在本次执行;未修改 authority-store 实现,不能宣称所有后端或安装态通过。

旧头曾有两次 90 秒子进程超时,当前完整工作量通过,但历史根因仍未知,未提高时限或删除断言。显式组合结算减少外层工具往返,不保证本地进程时间降低;完整恢复成本也不能只看 compact 输入估计。现有 benchmark_sensitive 人工合并门禁保留。

我的整体评价

APPROVE,限于这个已验证的源码增量。 长程机制判断正向:结束上一段工作后可正常重选,且原凭证、接受标准与可恢复性不丢;当前用户操作路径保持已有入口,没有新增手工准备或确认轮次。模型实际决策质量和完整成本的正向程度仍未知,需要后续限定预算的实验,不能用结构化记录数量代替。

已检查 CLI、Host 及其既有调用入口;本 PR 没有修改渲染页面、控件或布局,视觉审阅不适用。未执行安装态 App、真实模型采用或线上调度;没有新增视觉范围。

51 文件 +2,096/-274 是真实维护成本,不是“代码净精简”。可接受的理由是围绕同一捕获、结算和后续选路闭环复用现有 owner;本轮已将 Explore 重复格式接到同一个 writer,并复用 #7285 缓存生命周期。将来的进一步精简不能复制准入/扣费规则或牺牲原始恢复。可回退到完整捕获和独立结算;合并仍需独立权限、readiness 与正式旧评审协调,本评审不授予合并权。

English verdict: APPROVE — a62083f0c8df3879add7e9f9ddf19b72d0f0f9fb on merged-7285 main preserves original capture and Turn authority, releases stale same-agent routing only after typed closeout/replan, and passes current real-path, whole-TS, budget, lint and premerge checks with disclosed skips. Model efficacy and complete-cost gains remain unproven; merge gates and prior-review reconciliation remain separate.

This branch has not been deployed

No deployments
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants