RFC:持久化 Goal 成果细化(v0)¶
- 状态:已接受;安装/模型采用与比较收益尚未取得资格。
- 替代 / 关闭:无
- 归属:Core Goal 验收与工作规划(S3/R4),调用方为 S1/S5。
- 英文语义镜像:English。
- 既有合同:共享 Goal 对齐。
问题与当前证据¶
重要交付物可能只是一条宽泛长期 Todo 中的一句话。用户后续纠正推动了单轮修改, 却没有保留完整的累积要求。例如调整演示顺序时,可能意外删掉已认可的开场。 完成 Todo、发布候选版本或切换工作,都不能证明交付物满足累积意图。 这里使用泛化复现;私人对话和运行状态不进入本文或测试数据。
既有机制解决的是相邻问题:
- Todo 管理执行、认领、租约与完成;宽泛长期任务不能标识其中每项独立成果。
- Agent Vision 是有界的当前路线与检查点,不是所有承诺成果及累积要求的持久目录。
- Governed Goal amendment 保留原始承诺,目前可执行的类型主要实例化所有者 授权的工作模板;普通细化不是任意新模板,也不是新增权限。
- Goal acceptance 管理检查命令、任务关联和当前证据。准备检查不等于采用, 局部检查通过不等于整个 Goal 完成。方向材料提供来源版本,不管理工作归属。
设计决定¶
在既有 canonical Goal authority 内加入结构化的支撑成果,由验收归属管理。 每项成果有稳定 ID、负责 Agent、原始目的、累积条件 ID/描述、已存在的 Todo 关联和有界来源引用。这是规划声明与默认有据自查,不是独立 Goal、调度器、能力、独立验收结论或权限。
原始 Goal 及根承诺保持原样。细化操作不能覆盖成果最初的目的,也不能改写已有 条件描述;只能增加条件和工作关联,并保留来源及操作回执。矛盾纠正必须显式 协调;v0 不把只增细化冒充为一般替代机制或受治理的根意图修改。
只有需要独立负责人、预算、生命周期或执行边界时才拆为独立子 Goal。 重要性本身不要求另开运行实例。跨轮次、任务或反复纠正、且有独立结果与条件的 工作适合登记成果;普通消息、维护动作和中间步骤不应全部升级为成果。
普通用户消息¶
当前执行目标¶
原始声明可能已经不能描述当前工作;读到文件最新字节不代表语义仍然有效。
R4 Goal owner 在既有 canonical authority 中增加有界、由 owner 应用的执行目标
修订。goal_objective_revision_v0 是 goals/goal_objective.ts 拥有的新共享规划
合同,不是新能力或 provider。File/SQLite 复用本机传输;PostgreSQL 的共享 lease
准入也使用同一 TS 规则。Python 只适配 CLI、宿主和提案 IO。
当前目标、原因和不透明来源引用形成带摘要的有序历史。保留原始声明、根目标的 non-goals、验收、权限、预算、停止条件及现有 Todo/lease;不能借修订扩大权限或 逃离原始承诺。改变这些承诺仍需对应的受治理操作或新 Goal 生命周期。Outcome refinement 仍是追加式操作,不能暗中改写已有 requirement。
重规划是主要语义核对入口。既有规划指引复用已投影的 core_goal/acceptance,
将当前执行目标及累计要求与原始意图、明确用户方向和实际工作核对。Agent 区分
目标已误导当前工作、范围冲突、证据缺失及仅展示文字过旧,并将证据和判断记录在
既有 Vision/path_delta 中。有依据的无需修改判断同样有效;核对不强制修订、
新增每轮回执或再次轮询。范围冲突不授权改写原始承诺,缺失证据保留为未决事项,
展示错位交由投影 owner 处理。这是 Agent 语义指引,不是文案分类器或新准入门;
既有类型化权限、停止与 replan 消解规则保留。
普通对话保留可调用接口,但不主动引导修订。明确用户方向发生实质变化且当前
目标已误导工作时,准备修订仍遵守既有 owner 审阅边界。原生
loopx_collaboration 提供 prepare_goal_objective,由宿主绑定 Goal、Agent 和
来源 Turn。准备复用既有 goal.update 审阅/应用通道,不修改 Goal。
Goal 设置 → 任务所有权 → 当前目标与修订 可以审阅 Agent 提案或填写新目标,
应用后读回当前正文及每位 Agent 的采用状态。其他宽泛的 goal.update 操作仍
不可执行;提案、来源标签和文档中的文字不授予 owner 权限。
CLI 使用 goal-acceptance prepare-objective --goal-id GOAL --agent-id AGENT
--document revision.json --operation-id ID --execute;JSON 包含 objective、
reason、source_ref。这里的 execute 只保存提案。有权限的本机 owner 可使用
revise-objective,传同样的正文、稳定操作编号和 inspect 返回的
--expected-provider-revision;不传 --execute 只预览。Agent actor 被拒绝,
不能省略身份冒充 owner。
生效版本进入普通 Todo/status、工作上下文、horizon 和 replan 读取。团队计划已 绑定 canonical provider revision,旧计划会因目标变化失效。未采用版本的 Agent 进入既有 frontier/replan 缺口;原生成员新 start、新 claim 和 lease acquisition 会拒绝其新执行。在途 Turn 的恢复、续租和释放保留。这是下一次 执行的边界,不是中途打断或新调度器,也不会额外唤醒 Agent。
每个 Agent 先通过普通 Todo/Vision 操作对齐自己的工作,再执行带自身身份的
goal-acceptance inspect,用 revision、digest、work_digest(返回的
objective_work_digest)、review_summary、当前 provider revision 和稳定操作
编号调用 adopt-objective。原生工具对应 adopt_goal_objective。采用记录不是
成功证据或权限,普通 Vision ACK 不能代替它。已采用的 Agent 可以独立继续,
不用等全员;修订后才登记的新 Agent 也必须在取得工作前采用。CAS 防止并发覆盖,
丢失响应恢复原回执,旧采用操作重放不能确认新版本。旧的配置检查结果在目标
变化后转为 stale;后继 Goal 实例不能自动继承旧目标。
goal-acceptance inspect 和 Goal 设置中的 acceptance 读取,会携带解析后的源
registry 当前登记成员。既有 TS objective 投影 owner 将这些观察与保留的修订成员、
采用记录合并。后来登记的 Agent 在采用前显示为待采用。读取不保存成员或采用状态,
不修改目标摘要或 provider revision,也不授予执行权限。没有当前登记事实的
provider-only 读取保留原有历史投影。
已登记的 @ 别名使用相同的待采用/已采用流程。目标记录包含此类别名后,回退代码
必须保留兼容的 ID reader;不能删除修订或采用历史来迁就旧 reader。
修订只用于必要的方向变化,不是每轮维护。普通进展、Todo/路线调整、诊断反馈和 措辞润色不应生成共享目标新版本。相同目标的待审提案复用,不反复打扰 owner 或轮询。 owner 判断语义必要性;运行时拒绝相同或仅空白不同的目标,不伪装成语义等价检测器。 重复采用当前版本不写 provider revision;工作变化或其他 Agent 的采用不会使已确认 状态失效。owner 预览绑定将生效的目标摘要,因此无关工作/同伴写入无需重新审阅, 但目标、来源或生命周期变化仍会使旧审阅失效。
升级不自动创建修订,也不凭年龄判断过期。未修订 Goal 的执行规则保留;语义核对 放在重规划中,修订仍需实际且实质的用户纠正。采用后普通 Turn 不重复 ACK。历史有容量上限, 不会静默裁剪。写入前可回退代码;写入后保留读取与准入围栏,使用新的 owner 修订回退方向,不能删除历史。
验收覆盖真实提案/应用、另一 Agent 的读取/采用、并发基线、旧响应恢复、在途 结算及新执行拒绝,以及打包 UI。脚本调用原生工具证明已交付的调用/生效链路, 不证明模型总能识别语义过期。模型遵循、已安装宿主采用、真实 Lark 交付和匹配 benchmark 收益仍需分别验证。Lark 对话 worker 复用原生工具合同;不改 topic 名, 不发送消息,不新增修改权限。
同一普通/vision-gap 宿主 fixture 中,指引由 1,984 增至 2,921 字节,原复盘和 续行条款全部保留。仅指引的回归上限由 2,000 调为 3,000 字节,8 KiB 信封警告及 传输/执行预算不变。普通 fixture 仍在信封预算内(6,842 → 7,779 字节),原已超限 vision fixture 继续披露(20,211 → 21,148)。普通工作读取移除主动修订提示, 对话保留工具可用性及生效版本采用指引。这些测量证明交付成本,不证明模型遵循或 长程收益。
绑定 Goal 的 Agent 根据真实宿主上下文,区分直接人类请求、心跳、引用文档、 工具结果和同伴消息。不能靠关键词推断用户权限或重要性。推进重要新成果或 实质纠正前,复用内联成果上下文(缺失时才查询)、细化对应条目,再经正常 Todo 操作关联工作。 保留旧要求并记录最新来源;没有可靠宿主消息 ID 时使用稳定的本地不透明证据 引用,不伪造已核验发送者来源。
来源标签只表示归因,不证明认证或授权。身份和范围仍由宿主管理;注册 Agent 只能细化自己负责的成果。根目标修改、权限扩张、发布和可执行检查保留既有 授权。已有范围内授权下,记录细化不应引入重复确认。缺少重要意图时,先在对话 中澄清真正影响结果的选择。
外部宿主升级后通过 CLI/技能桥接使用;这不是普遍的消息拦截钩子,宿主投递 与 Agent 遵循仍需分别验证。App、飞书通过桥接复用原生归属,不另建解析器和状态文件。
状态、读取与恢复¶
复用已提升的 canonical authority、writer fence、provider CAS、追加操作日志与 既有 Goal 生命周期校验。来源失败不能回退到 Markdown。稳定操作 ID 恢复丢失 响应;冲突重试、过期版本、其他 Goal 实例与其他 Agent 修改必须拒绝。 升级本身不会给既有 Goal 自动添加成果或改变调度。
原生对话适配器在派发前保存最初绑定宿主身份的请求。同一对话中完全相同的操作, 可在后续 Turn 或进程重启后复用首次来源 Turn;宿主仍重新检查当前准入、Goal 实例、Agent 和原始版本/文档。保存的 envelope 只记录传输来源,不是成功回执。 在引入 envelope 前已提交、且来源已丢失的操作,不能靠猜测恢复。成果读取和细化 不创建成员交付,也不消耗委派唤醒证据。
39 行 envelope 预留逻辑保留在已有的 ChatSessionStore,由它统一负责 Session
存在性、私有路径、锁和原子写入。移入外部消息准入或执行 store 会拆散这些归属,
却不会减少状态复杂度。原切片实测从 2,016 增至 2,055 行;rebase 到 main
b5a1a816a 后,仍为相同的 39 行增量:从 2,028 增至 2,067 行,当前模块审阅
上限随实测调整为 2,067,不预留额外增长。Canonical 验收回执和当前准入仍由
原 owner 决定。
首次绑定精确生命周期时,无论入口是细化、检查配置还是显式来源绑定,都保留旧 成果声明。Goal 重建后,旧声明属于已退役实例;后继实例可新建成果,不继承前驱 要求。旧操作重放不能覆盖当前投影。旧 registry 省略 status 时继续沿用既有的 active 含义;显式非活动状态仍拒绝细化。
验收读回包含已声明成果,不要求先配置可执行检查。所有 Goal 共用默认目标维护、 有据自查和缺口投影,当前状态与读回没有启用开关。细化不能提交独立检查通过的 证据、执行命令或修改 Goal 生命周期。
在有意义的交付/实验节点,Agent 对照全部累计要求检查产物,以 met、unmet
或 uncertain 记录结论、理由和证据引用。默认自查可结清未配置检查的规划缺口,
但必须与独立验证、用户认可分别呈现。已配置条件不能被自查绕过,仍由匹配的当前
检查与工作覆盖提供结果。Todo 完成不能代替任何一种结论。
自查绑定累计要求及关联工作的声明;这些变化会使依据过期。证据引用是 Agent 陈述,v0 不解析或计算所引产物的指纹,因此产物修改后必须重新核对。保留引用 不能证明时效或质量。
要求来源与进展证据的生命周期分开:创建成果或新增要求仍需 source;已有成果
的自查、工作关联维护可省略它,保留全部旧来源,在 64 项来源上限时也可继续。
新观察写入 review[].evidence_refs、理由、所属材料和操作回执。原生
refine_outcome 对这些更新同样省略 source_summary,仍保留宿主绑定的请求与
重试信封。显式来源保持追加和不可改写;超限返回修复指导,不丢来源、不提高
上限。新增声明不能借自查路径绕过来源、归属或验收权限。
声明和当前证据自查在同一 canonical 快照内各有 128 KiB UTF-8 JSON 预算。
声明预算包含 Goal 身份、原始目标、要求、工作关联及全部来源,只排除可选的
review 字段;自查预算按这些字段增加的实际序列化字节计算。这明确将成果状态
合计上限从 128 提高到 256 KiB,属于资源取舍,不能把历史超限改称通过。
各字段/数量上限、操作历史及 provider 传输限制不变,两项预算不能相互借用。
原共享上限允许保存 131,000 字节的声明,却阻止其下一次完整证据自查。 保留该上限意味着拒绝有效进展,或把保留记录移入新的引用/加载协议。 增加有界自查预算保留既有同步消费者、单一原子快照、回执和恢复;不引入压缩、 外部权威、来源裁剪或迁移。过大自查在提交前失败,保留原快照,并提示将详细 证据留在所属材料。旧版本仍能读取这些状态,但旧写入器可能因合计超限拒绝 后续细化;回滚不能删除声明或历史回执来迁就旧上限。
合成的 20 项成果/100 项要求场景在自查后由 131,000 增至 131,753 存储字节, 完整成果投影为 154,503 字节。对原本可准入的同一份 19,454 字节输入,base 与 候选的状态及投影相同。交替采集 100 次 owner 细化加投影,base/候选 p50 为 1.025/1.034 ms,p95 为 1.387/1.417 ms。这只是本机纯 owner 成本观察, 不代表 CLI/provider SLO 或长程收益。真实 File/SQLite CLI 和原生会话测试 覆盖容量临界场景;File/SQLite/PostgreSQL authority 测试覆盖重启、重放、 旧基线及超限原子拒绝。此处不声称已扩展安装态容量。
既有准入工作上下文携带完整成果声明;内联内容完整时,无需额外查询验收。
变化可合并到普通 refresh-state --goal-outcome-update-json,或一次原生
refine_outcome 调用。无变化不额外调用、不增加往返,也不重复登记自查。
这里是顺序组合:先提交细化,再做普通写回。后续写回失败时,返回的细化回执
标明已提交部分;按原操作重试,不能假定全部回滚。
启用的到期 Stride 审查还绑定已交付上下文,其中包括这些成果事实。节点有变化时, 先细化,再以原 Turn 身份重入 guard、读取当前事实,完整重作决定后普通写回; 不能悄悄将旧决定绑定到新上下文。批量 dry-run 现使用验收 owner 的预期契约, 在不提交细化、运行或扣额的前提下,识别与实际执行相同的基线不匹配。 实际执行保持顺序组合和部分副作用回执;已应用细化按原操作恢复,再据新上下文 重新判断。普通批量写回、无变化工作及精确上下文门槛保持不变。 真实 File/SQLite CLI 覆盖预览、旧基线拒绝、新上下文恢复、要求保留与单次扣额 重放。此为源码资格,不代表已安装采用、通用原子性或模型效率收益。
| 节点 | 默认动作 | 联动机制 |
|---|---|---|
| 直接用户消息带来重要成果/实质纠正 | 细化对应成果并保留旧意图 | 宿主上下文+原生细化或技能/CLI |
| 恢复、切换工作、replan | 复用全部要求再选择工作 | 共享工作上下文;缺少来源时才必读 |
| 有意义的产物/实验节点 | 用实际证据核对全部要求 | 一次细化,可并入普通写回 |
| 要求未满足/未自查,且没有关联的活动/等待工作 | 传递类型化规划缺口 | 现有 frontier replan;其他可执行推进优先 |
| 没有相关变化 | 继续执行,不增加协议交互 | 既有准入与写回 |
关联的 open/blocked/deferred Todo 保持原有归属和等待规则。新增成果缺口 不能抢占其他可执行工作。Replan 使用证据决定下一项有用工作,或说明继续现有 路线的理由;缺口、自查都不强制改方向。不新增调度器、定期审计、配额扣减或 由子成果触发的根目标停止。
成果缺口使用 canonical 要求/工作检查点,不能在读取时编造新时间戳。同一 Agent 绑定原始 replan obligation 的已接受 Vision 写回,只确认该检查点。普通结算、 来源记录或自查备注变化不会重新触发同一义务;新增要求、关联工作或完成证据的 实质变化、已配置检查变化、宿主观察到的 oracle 文件版本变化会重新触发。 默认自查结论或证据引用的变化也会重新触发。 有界检查点覆盖该 Agent 的全部未覆盖成果,包括详细触发条目之外的成果,同时 保留 held Todo 的独立证据。这避免重复审查,不结清未满足要求,也不改变既有 等待/停止条件或已授权工作。Agent 提供的产物引用仍是陈述;只有既有 pinned oracle 路径提供宿主实际观察的文件版本。
Status 与 refresh 从包含 Todo 和检查的同一 canonical 快照取得已配置 pin, 并使用当前来源 Goal 的工作区;过期共享名册不能选择旧 checkout。私有观察依据 必须匹配公开合同的 revision 和 digest,不额外读取 authority、不执行 verifier, 也不改写已保存的验证回执。Refresh 保留原始 canonical 快照作为持久来源身份。
简化默认路径¶
所有 Goal 使用同一条默认闭环:保留目标要求 → 证据核对 → 无有用工作覆盖时 replan →
后续执行。删除整体 enabled 开关,不只是修改默认值或隐藏 UI。当前存储和读回不再
携带该字段。可执行检查是证据路径之一;未配置命令时,同样运行要求、自查和重规划闭环。
升级读取把已有状态归一到这一模型,不按新旧 Goal 分组,也不要求重新启用。已有命令 配置、精确 Goal 生命周期、工作绑定和证据保留原有含义;已移除的检查表示为没有配置。 移除检查仍保留版本栅栏及不可变历史,配置变化后旧方案不能静默采用。历史回执可重放, 不会重新执行命令。默认维护不增加命令执行或根目标停止规则。
更新已有成果只需 ID、来源和本次变化字段。类型化 owner 解析不可改写的原始目标、 负责 Agent 及保留的要求/工作;创建时仍须明确目标和负责 Agent。因此里程碑自查可随 已有写回提交,无需重复这些声明。
可执行检查接受 {outcome_id, criteria: [{id, validation_argv, ...}]}。类型化 owner
从该成果解析要求描述、目标和关联工作。待采用方案展示解析快照及命令;采用时再次解析,
要求或工作变化后在执行前拒绝。快照仅服务审阅,不成为第二份要求权威。保留独立旧检查
文档的兼容性,不增加隐式命令执行、权限或根目标完成判定。
要求的不透明 ID(包括 :、@)经过条件配置、关联、执行检查和读回时保持
同一身份;不扩大独立的 Todo ID、文件路径或命令语法。
开放式研究与避免早停¶
支撑成果从属于原始研究目标。局部假设的自查、一次实验成功、所有局部要求满足
或短期平台期,都不能代替根目标的继续、预算和停止条件。本改动不写入
achieved、no_followup、预算或终态。原有合法停止和等待条件仍然有效,
既不强制耗尽预算,也不编造填充任务。存在有用且已授权的研究时,未解决要求
可以保留不确定结论并继续推进。
后续 EdgeBench 资格遵循现有测量合同: 对齐任务、模型/推理、来源及检查点、评分器、反馈可见性和总预算。保留后期/ 共同窗口比较,以及有效、无效、缺失的区别。比较任务原生最终/最佳成果、完整 模型/工具/CLI 成本、耗时、人工介入、剩余预算原因和提前终结/宿主冲突率。 计入协议上下文与自查成本,局部分数更好不能掩盖最终效果下降或早停。研究中只 使用求解方可见证据,隐藏评估只在允许的终结阶段使用。本 RFC 不启动或修改实验。
验收目标是效果与完整成本效率至少不低于基线,并且没有早停回归。确定性续行 一致性只是前置证据,不能证明真实模型不劣。模型实际采用、产物质量和匹配 benchmark 收益仍需后续验证。
产品路径与交付切片¶
Agent 从用户请求准备并登记成果,不让用户重填 JSON。Goal 概览在方向与验收旁 显示成果原始目的、累积要求、负责 Agent 和工作。所有者可原地追加要求并读取 原生结果。过期写入或服务不可用显示恢复路径,不盲目重试。CLI 与前端复用同一 类型化归属,不需要新配置编辑器或 capability ID;provider 为既有本地 canonical authority,属于内置 Core。
先提交此设计,再交付原生细化、必读投影、未解决覆盖保留、CLI、既有 Goal UI、 外部宿主技能指导、反例与打包后端读回。本切片不升级当前安装、不改其他对话的 实际工作、不合并 PR,也不发起付费模型实验。
成本与有界重构¶
Heartbeat 规则新增 523 个字符,旧条款全部保留。同一受支持的范围 fixture 中, compact 指导从 7,286 增至 7,809 字符(含原 Reward Memory 额度),普通 thin 在原实现切片中从 3,147 增至 3,670。compact 的 7,200 展示回归上限及独立 640 字符额度保持。这是实际上下文成本,不是效率收益结论,也不是运行预算扩张。 无变化工作不增加 Agent CLI 交互,但有成果的上下文仍增加读取/投影与 token 成本,benchmark 必须计入。
整合 main 4f6e20a13 后,不改公开 CLI fixture,thin 归一化正文在新增成果指导
前后为 3,306/3,829 字符;受支持的 320 字符 scope 为 3,595/4,118。原提案的
3,700 上限容纳不了当前完整规则。因此正文上限调整为 4,200,实际 JSON 输出上限
调整为 4,500;最终 JSON 为 4,172 字符,带上述 scope 为 4,461。普通 Markdown
为 6,076,仍沿用 6,200 上限。scope 边界保留 82 正文字符和 39 输出 JSON 字符
余量,不缩短 scope、权限说明或指令。
不改真实 Linux CLI fixture,在 128 字符根路径下,brief JSON 从 main 4f6e20a13
的 10,260 字符增至 10,783,Markdown 从 8,559 增至 9,082;都增加 523 字符,
并分别超过原 10,500/9,000 上限。保留完整指令和命令路径,把 main 的原生路径
JSON 额度 10,800 与实测指导增量 523 组合后,brief 上限为 11,400/9,600,
该 Linux fixture 余量为 617/518 字符。已记录的 Windows depth-0/6/12 基线
加上该增量,推导 JSON 为 11,005/11,125/11,245;这是算术推导,不是组合源码的
原生 Windows qualification。58/115 行上限、严格首次迁移额度和运行配额保持。
这些测量保留原始失败,不证明 token 或模型收益。详见
接口预算合同。
96 行 base/head CLI 矩阵独立测得 thin/brief/compact/full heartbeat 都增加 523 字符;正文修复前 thin 因超限标志变化增加 524。既有差分观察器仅在这四类 输出观察到完整、冻结的成果指令首次迁移时允许 544 字符/字节增长。缺失/部分 措辞、已升级基线、其他输出表面和超额增长仍按普通规则失败;不增加行数、语义键 或结构余量。
把现有验收 work digest 原样抽出,供验收和自查依据失效共同复用,避免第二套 工作身份规则或循环导入。更大的 Goal 迁移/替代有意留后。Provider 复用既有 canonical authority(此处验证 File/SQLite),属内置 Core,不新增公共能力或 Python 决策归属。
原生连续性资格与外部 Host 派发分开:原生正文变更回归验证持久的 required 义务、 语义 ACK、同 Turn 结算及观察不写账本。外部 worker 未解决尝试的持久去重仍由 worker owner 负责,本基础切片不交付此行为。使用该 worker 的配对比较必须在 两臂冻结相同派发行为,保留重复调用成本。原有 Host/native 混合断言不能用 仅原生路径通过来宣称已资格化。
未完成工作中的复盘连续性¶
关联的未完成 Todo 表示已有工作覆盖,不能证明进展或要求满足。既有类型化进展与
有效 Turn 复盘机制可以审视同一条未关闭 Todo;goal_outcome_uncovered 保持
“没有关联工作”的较窄语义,以及已有 blocked/deferred 等待规则。不增加计时器、
分数阈值、强制 Todo 关闭或定期审计。
此前 replan 来源适配会丢弃默认成果,仅保留已配置检查的七项摘要字段。普通工作
上下文已有完整验收读取,专门的 replan core_goal 与 Goal 规划视野却没有。
现在两者复用同一 owner 投影的完整读取,保留累计要求、自查来源、关联工作、
检查结果及生命周期/新鲜度事实,移除一份有损字段清单。Python 只传输来源,
既有 TypeScript owner 继续决策,不新增能力、provider、持久词汇或 UI 操作。
默认 replan 引导 Agent 即使工作未关闭,也要对照证据复盘未满足要求;没有结构化 成果或配置检查时同样适用。 最强首次交付仍是目标,诊断性验证与可用反馈是增强交付的手段。Todo 未关闭、 局部测试重复通过或指标持平,本身均不能证明进展或探索耗尽;有价值的负结果 仍可支持继续工作。这是 Agent 引导,不新增机器强制的成功或停止规则。
通过 File/SQLite CLI 的细化 → 停滞/周期复盘 → 实际产物修复 → 有据回写 → 一次结算 → 原 Todo 继续执行验证该连接。同时核对 TurnEnvelope 工作上下文的 同份验收来源,拒绝无证据复盘,保留重试身份,区分配置检查与默认自查。无声明 准入行为、等待规则、频率、可选 stride 门槛和根 Goal 完成权限保持。验收存在时, 更完整的验收输入会增加字节,简短默认引导也会改变普通 replan 包;这不证明延迟、 token 或分数收益。Agent 仍可能漏报或误判进展,实际采用与配对任务结果继续由 S11 验收。
EdgeBench heartbeat worker 沿用默认每六个有效 Turn 的复盘频率,不依赖 Todo 完成或配置检查。Runner 不会自动登记支撑成果,也不会把后台原生评分转换为 Core 验收。因此默认复盘引导不能依赖这些可选事实;Agent 登记后再完整保留对应来源。 原生自动采样、对 solver 可见的反馈、评分及 worker 停止规则仍归 benchmark provider 所有,本改动不开放隐藏反馈。
新增引导保留全部旧条款,增加 212 个文本字节。同一 CLI 夹具的 crowded quota 增加 213 个 JSON 字符,Turn plan 增加 216,起初均超过原增长限制。既有续行 观察器只对完整旧文案到新文案的一次转换给予 224 字符/字节额度,不增加行数或 结构额度;缺失条款、已升级基线、其他载体或超额增长仍拒绝。两个 Host 夹具的 引导从 1,772 增至 1,984 字节,对应局部文案上限从 1,800 调为 2,000。 上述仅引导文案变更保留 CLI/运行绝对预算;这是实测输入成本。
选择工作前的 Goal 上下文¶
原始 Goal 与已登记验收现在默认进入适用的选工作前规划视野。这是上下文变化, 不增加规划轮次或调度规则。五项工作摘要及明确的完整性/详情入口保持有界; 看到 Goal 不代表摘要覆盖全部工作。既有配置 owner 保留显式 false 用于回滚与 对照。平铺的可执行任务同样展示有界工作视野;没有登记依赖或缺口,不能证明排序 合理,也不能据此隐藏该视野。摘要标明遗漏与完整读取入口,不把五项任务当成全部 计划。TurnEnvelope 在引用更短时引用同包中完全相同的已选工作正文,保留其他工作 及完整性说明。设置页把该选项移入高级设置,保留机器/Goal 优先级和稀疏继承值,读取 不重写持久配置。EdgeBench heartbeat worker 在工作前固定并记录解析后的布尔值, 包括省略 CLI 选项的情况;历史回执保持原样。TurnEnvelope 引用已有且完全相同 的内联验收来源,避免重复正文;内容不一致时保留各自证据。 源码/默认行为验证与已安装版本/模型采用仍需分别验证。
同一公开夹具中,small Turn plan 从 8,077 增至 9,370 字符,多 Agent quota JSON 从 20,805 增至 23,745。后者起初超过 23,000 字符上限及既有 horizon 迁移的 2,800 紧凑字符增长额度。增加部分包含 Goal 上下文及原本未展示的有界工作摘要; 舍弃后者会隐藏有价值的平铺任务上下文。保留这些内容,仅将该绝对上限调为 24,000, 一次性 horizon 迁移的紧凑额度调为 3,000;超额和同 schema 持续增长仍拒绝。 其他上限、每 Todo 增长及 8 KiB envelope 警告不变。 这验证输入成本取舍,不证明 token、延迟或模型质量收益。
决定性验收¶
使用可丢弃、公开安全的 File/SQLite Goal,不能操作正在运行的业务状态。
- 登记成果及首条要求,关联一条真实存在的 Todo。
- 同一成果接收第二条合成用户纠正;原始 Goal、成果目的和旧要求逐字保留。
- 重启调用方并切换工作;正常工作前读取仍显示两条要求及原始来源。
- 关联 Todo 完成而某条要求未满足时,不得接受成果,续行仍展示缺口。后续 独立检查通过证据由既有验收产生;默认有据自查只能结清规划缺口。
- 拒绝要求丢失、旧 ID 改文案、跨 Agent 修改、不存在任务、过期 CAS 与冲突 重试;相同操作只写一次。
- 对比支撑成果缺失、未确认、未满足和已满足前后的研究准入:根状态、配额/ 停止决定、下一项可执行工作保持;另测 blocked/deferred 的合法等待。
- 打包 Goal UI 连接真实后端,完成读取、细化、重载、过期恢复和桌面/窄屏 检查;验证没有成果的 Goal 行为保持。
- 接受原始 replan 检查点并结算该 Turn。重复读取、仅来源变化和自查备注变化 不得要求重做同次审查;工作实质变化和 oracle 版本变化必须重新触发。覆盖 超过三项成果以及 held Todo/成果混合缺口,两类来源都不能丢失。
- 真实原生提交后丢失响应,重启控制器、准入另一 Turn,再精确重放原操作一次。 拒绝请求身份变化、其他对话/Agent/Goal 实例、暂停状态和已撤销绑定。
- 经每个既有首次绑定入口保留旧声明;重建 Goal 并细化后继,再重放前驱操作, 不能覆盖当前声明。
同一 Goal 的表单在刷新失败时保留未提交文本及原待确认操作,包括实际写入成功、
响应丢失且核对读取也失败的情况。保留的数据不能提供新写入权限。成功读取后,
重试复用完整原操作,不能重复追加要求;显式重新准备需要当前版本,并保留要求
身份。测试还覆盖原生读取新增了成果、但旧交付快照尚无该成果的情况:交付暂时
加载/失败只撤销写入权限,不卸载草稿或待重试请求。远程/本机来源切换及精确
Goal 生命周期变化会重置编辑器,不能把旧请求转移给新 owner。正常构建 Chat 后,运行
node examples/personal-workspace-browser/goal-outcome-recovery.mjs 执行此项定向
打包回归。它连接可丢弃 SQLite/HTTP/CLI 权威,只注入传输失败,不伪造提交。
这些验证证明产品语义和恢复,不证明真实模型识别、安装宿主采用、质量增益或 人工注意力下降;测试数量与 PR 合并均不能替代后者。