简化 Direct 交付合同并延后自动验收
Project CI / AI game creator shell Rust crates (pull_request) Successful in 3m10s
Project CI / AI game creator shell Rust lane 1/2 (pull_request) Failing after 4m34s
Project CI / AI game creator shell Rust lane 2/2 (pull_request) Successful in 5m11s
Project CI / Backend tests (pull_request) Successful in 7m18s
Project CI / Frontend tests (pull_request) Successful in 3m19s
Project CI / AI game creator shell web tests (pull_request) Successful in 3m11s
Project CI / Native shell tests (pull_request) Successful in 7m22s
Project CI / Repository checks (pull_request) Successful in 6m45s
Project CI / AI game creator shell Rust crates (pull_request) Successful in 3m10s
Project CI / AI game creator shell Rust lane 1/2 (pull_request) Failing after 4m34s
Project CI / AI game creator shell Rust lane 2/2 (pull_request) Successful in 5m11s
Project CI / Backend tests (pull_request) Successful in 7m18s
Project CI / Frontend tests (pull_request) Successful in 3m19s
Project CI / AI game creator shell web tests (pull_request) Successful in 3m11s
Project CI / Native shell tests (pull_request) Successful in 7m22s
Project CI / Repository checks (pull_request) Successful in 6m45s
移除操作结算与补丁成功后的合同检查,仅在正常响应结束后自动复核 按用户制作和交付游戏的意图提示登记,取消空项目强制合同义务 删除产物与命令验收要求,保留视觉和玩法现有判据及证据校验 升级合同与执行账本格式,保留旧预算和终态并安全处理未完成旧合同 同步运行提示、随包技能、回归测试、主规范与实施验收记录
This commit is contained in:
@@ -2,12 +2,12 @@
|
||||
|
||||
| 字段 | 值 |
|
||||
| --- | --- |
|
||||
| Version | 0.1 |
|
||||
| Status | planned(仅规划,待实施) |
|
||||
| Version | 0.2 |
|
||||
| Status | implemented(用户指令已授权实施;真实模型及 Windows smoke 待补) |
|
||||
| Date | 2026-10-04 |
|
||||
| Milestone | [Direct 交付合同简化](./【里程碑】Direct交付合同简化-2026-10-04.md) |
|
||||
|
||||
## 当前代码事实
|
||||
## 实施前代码事实
|
||||
|
||||
- `codex_app_server/execution.rs::spawn_settlement` 和 `direct_patch.rs::apply` 在操作结算/补丁成功后调用 `try_seal`;`finish_model_attempt(successful=true)` 与 `direct_delivery.rs::review_reply` 是正常响应结束后的入口。
|
||||
- `direct_runtime/mod.rs` 在开始模型调用前通过 `requires_new_web_contract` 设置义务;`direct_execution.rs` 的 `requires_contract` 同时参与无合同结束、恢复和分析结果判定。
|
||||
@@ -35,7 +35,7 @@
|
||||
- 保留宿主环境预检与可信脚手架准备本身的现有入口,解除它们与合同义务的耦合;不得因删掉条件顺带删除正常建项所需准备或恢复已退役 CLI。
|
||||
- 初次交付记录/可信脚手架事实仅在 Agent 主动注册时用于现有新 Web visual/gameplay 补充;重放注册复用冻结的 `newWebGame`,不重新计算或更改有效要求。
|
||||
- 系统提示使用明确条件:“当用户要求你制作、完成或交付游戏(例如‘做一个游戏’‘做一个可运行的游戏’)时,调用 agc_register_delivery_contract 登记本轮交付范围和验收项。”写明普通操作无需合同,不能因空项目或首次输入强制登记。宿主不新增词表匹配、分类器或缺合同兜底追问。
|
||||
- 同步 `prompts/runtime/texts/direct.json` 的 hostDelivery/deliveryFeedback、`direct-tools.json`、`resources/agc-skills/agc-game-production-workflow/{SKILL.md,references/workflow-contract.md}` 与 `agc-browser-playtest/SKILL.md`。仅调整合同相关指导,保持原语言与浏览器使用说明。
|
||||
- 同步 `prompts/runtime/texts/direct.json` 的 hostDelivery/deliveryFeedback、`direct-tools.json`、`resources/agc-skills/agc-game-production-workflow/{SKILL.md,references/workflow-contract.md}` 、`agc-web-game-development/SKILL.md` 与 `agc-browser-playtest/SKILL.md`。仅调整合同相关指导,保持原语言与浏览器使用说明。
|
||||
- 检查点:无合同可正常结束;只生图、不操作、普通修改均不被项目状态强制验收。真实模型是否遵循提示单独 smoke,不以字符串单测声称意图理解已验证。
|
||||
|
||||
### 3. 删除 artifact/command 合同要求
|
||||
@@ -84,4 +84,24 @@ git diff --check
|
||||
|
||||
回滚以整体合同改动为单位,不回滚已提交的租约重构;新格式账本保留,不删除状态来恢复旧版本执行。旧二进制不能读取新版本时拒绝恢复该回合,保留产物并由兼容版本处理。
|
||||
|
||||
本轮只做规划文档检查,不执行上述运行时测试,不修改业务代码,不提交或推送。
|
||||
## 实施结果与验收证据(2026-10-04)
|
||||
|
||||
- 已移除操作结算和补丁成功后的自动封口,只保留正常响应结束后的入口及封口最终复核;状态查询不变更阶段。
|
||||
- 已移除回合启动的强制合同判定及 requiresContract 字段。正式入队侧 `direct_runtime/user_input.rs` 的工程准备仍保留;删除的是退役 CLI 留在回合内部、与合同义务耦合的重复准备分支。
|
||||
- 已移除 artifact/command 的 schema、解析、验收、初始产物摘要和宿主追加项;保留命令工具、构建结果与浏览器证据摘要。新增合同为 v2,执行账本为 v3,v1/v2 迁移不刷新预算、不将旧要求降级为成功。
|
||||
- 已同步系统提示、工具描述、游戏生产/浏览器/Web 开发三份随包技能及工作流参考;manifest 由正式同步脚本更新。
|
||||
- 主规范及共享决策已融合当前行为,无业务代码提交或推送。
|
||||
|
||||
| 验收面 | 证据 | 结果与边界 |
|
||||
| --- | --- | --- |
|
||||
| 操作完成不提前结束 | adapter 的命令、原生文件修改、第三方 MCP 协议回归;ready 后继续准入 | 通过 |
|
||||
| 完整响应先于宿主收尾 | Linux 真子进程模拟 app-server:已 ready→命令审批/完成→延迟→完整响应→正常终态 | 通过;仅验证协议与宿主链路,不等于真实 LLM 或 Windows Job smoke |
|
||||
| 无合同操作和结束 | 工具桥夹具不再登记合同;原有写入/图片 mock 回归、空项目 no-op/image-only 宿主结束用例 | 通过;未真实付费生成,不声称已验证模型意图理解 |
|
||||
| 新 Web 规则边界 | 未注册不生成义务,主动注册后仅补视觉/玩法,注册重放一致 | 通过 |
|
||||
| 类型/证据 | 两类退役要求单独及混合拒绝;visual/gameplay 双端、固定场景、版本、指纹及文件篡改反例 | 通过;浏览器判据未修改 |
|
||||
| 异常终止 | ready 后中断仍返回中断报告;原预算、取消、旧许可、清理回归 | 通过 |
|
||||
| 恢复 | v1/v2 旧合同及终态、v2 无合同强制标记、未知字段、预算与旧活动操作;旧终态合同只查询历史 | 通过 |
|
||||
| AGC 补丁成功 | Windows bundled patch 回归增加 ready 后无变化补丁不封口断言 | 已编写,Linux 环境未运行 Windows 用例 |
|
||||
| 提示一致性 | MCP schema、prompt bundle/source boundaries、技能 manifest 与内容校验 | 通过;真实模型多种语言的意图遵循待 smoke |
|
||||
|
||||
定向结果:`direct_` 376 passed、1 ignored(既有辅助夹具);`codex_app_server::execution` 19 passed;完整响应协议回归 1 passed;`skill_pack` 7 passed;`runtime_prompt_bundle_build` 6 passed、`prompt_source_boundaries` 18 passed;Node 技能包测试 3 passed。`cargo check --locked`、修改文件 rustfmt、文档索引、编码与 diff 检查通过;编译仍有仓库既有告警。上述过滤器部分重叠,不相加为独立用例总数。初次沙箱运行的 loopback 绑定/Node 子进程失败已在具备对应权限的本地夹具中重跑;不把环境拒绝当作行为通过。Windows 和真实模型验收待补,因此暂保留里程碑与计划。
|
||||
|
||||
@@ -2,10 +2,10 @@
|
||||
|
||||
| 字段 | 值 |
|
||||
| --- | --- |
|
||||
| Version | 0.1 |
|
||||
| Status | planned(仅规划,未实现) |
|
||||
| Version | 0.2 |
|
||||
| Status | implemented(实现与定向验证完成;真实模型及 Windows smoke 待补) |
|
||||
| Date | 2026-10-04 |
|
||||
| Parent Spec | [Direct 合同简化目标](../../technical/【技术方案】AI游戏创作智能体App实施计划-2026-06-24.md#direct-合同简化目标2026-10-04待实现) |
|
||||
| Parent Spec | [Direct 合同规则](../../technical/【技术方案】AI游戏创作智能体App实施计划-2026-06-24.md#宿主验收与执行许可合同) |
|
||||
| 关联 | WIP PR #608;问题 #518、#529 |
|
||||
|
||||
## 交付结果与范围
|
||||
@@ -28,16 +28,16 @@
|
||||
|
||||
## 验收标准
|
||||
|
||||
- [ ] 证据已齐备,原生命令、文件修改、第三方 MCP 结算及 AGC 补丁完成后仍可继续操作,直到模型正常返回。
|
||||
- [ ] agc_delivery_status 返回 ready 时仍不封口;正常响应结束后才进入既有复核/收尾。
|
||||
- [ ] 空项目“什么也不做”“只生成一张图,不做游戏”无合同可正常完成;已有项目行为一致。
|
||||
- [ ] 实际发送给模型的提示和工具 schema 条件一致;随包技能不再要求首次修改前登记。游戏制作意图由 Agent 判断。
|
||||
- [ ] 无合同可写文件、运行命令、发起图片生成和验证;预算、取消、并发、权限和远端幂等回归通过。
|
||||
- [ ] 新合同拒绝 artifact/command;无 host-entry/host-build、初始产物摘要或命令返回验收。
|
||||
- [ ] visual/gameplay 原有通过、失败、漂移、截图/报告篡改及场景不匹配用例维持原判据。
|
||||
- [ ] 正常验收失败仍有界反馈;异常中断或预算耗尽不能变成成功,下一条用户输入可新开回合。
|
||||
- [ ] 旧终态、旧未完成合同、仅含退役要求、混合要求、旧无合同强制标记、活动操作及未知字段均有迁移反例;预算不刷新。
|
||||
- [x] 证据已齐备,原生命令、文件修改、第三方 MCP 结算及 AGC 补丁完成后仍可继续操作,直到模型正常返回。
|
||||
- [x] agc_delivery_status 返回 ready 时仍不封口;正常响应结束后才进入既有复核/收尾。
|
||||
- [x] 空项目“什么也不做”“只生成一张图,不做游戏”无合同可正常完成;已有项目行为一致。
|
||||
- [x] 实际发送给模型的提示和工具 schema 条件一致;随包技能不再要求首次修改前登记。游戏制作意图由 Agent 判断。
|
||||
- [x] 无合同可写文件、运行命令、发起图片生成和验证;预算、取消、并发、权限和远端幂等回归通过。
|
||||
- [x] 新合同拒绝 artifact/command;无 host-entry/host-build、初始产物摘要或命令返回验收。
|
||||
- [x] visual/gameplay 原有通过、失败、漂移、截图/报告篡改及场景不匹配用例维持原判据。
|
||||
- [x] 正常验收失败仍有界反馈;异常中断或预算耗尽不能变成成功,下一条用户输入可新开回合。
|
||||
- [x] 旧终态、旧未完成合同、仅含退役要求、混合要求、旧无合同强制标记、活动操作及未知字段均有迁移反例;预算不刷新。
|
||||
|
||||
## 证据与剩余项
|
||||
|
||||
具体文件、顺序、命令见[实施计划](./【实施计划】Direct交付合同简化-2026-10-04.md)。本轮仅交付计划,无业务代码或运行时验证结论。视觉/玩法设计评估保留给下一轮;Windows 与真实模型 smoke 未执行时必须明确标为未验证。
|
||||
具体文件、顺序、命令见[实施计划](./【实施计划】Direct交付合同简化-2026-10-04.md)。实现已完成,自动化与 Linux 子进程协议夹具证据见实施计划。以上勾选表示代码/定向测试条款通过,不代表真实模型的意图理解或 Windows 完整进程子树已验收。视觉/玩法设计评估保留给下一轮;未完成的平台 smoke 保留计划及 WIP 状态。
|
||||
|
||||
@@ -12,7 +12,7 @@
|
||||
|
||||
在现有 WIP PR #608 内规划租约重构:将普通操作控制收敛为回合、时间、并发及既有权限检查,消除单次操作失败造成的全局停顿。租约切片已按用户于 2026-10-04 的实施指令落地。验收以失败操作不阻塞无关工作、关闭后不能新增副作用为核心。
|
||||
|
||||
优先顺序:必须项为明确操作失败与回合控制的边界;风险项为取消、并发、旧回合归属及远端结果不确定;可选项为诊断呈现,按实现需要再决定。规范与计划已完成评审并实施;当前检查点是平台验收。用户于 2026-10-04 要求继续[合同简化规划](./【里程碑】Direct交付合同简化-2026-10-04.md),独立记录范围与验收,不将租约 Windows 待验收项视为已完成。
|
||||
优先顺序:必须项为明确操作失败与回合控制的边界;风险项为取消、并发、旧回合归属及远端结果不确定;可选项为诊断呈现,按实现需要再决定。规范与计划已完成评审并实施;当前检查点是平台验收。用户于 2026-10-04 要求继续并实施[合同简化](./【里程碑】Direct交付合同简化-2026-10-04.md),独立记录范围与验收,不将租约 Windows 待验收项视为已完成。
|
||||
|
||||
## 问题与已确认方向
|
||||
|
||||
|
||||
@@ -9587,14 +9587,14 @@ CI 上 `background_agent_runtime_recovers_stale_running_before_pending_task` 在
|
||||
- 普通工具准入只检查原回合活动状态、时间预算、并发和既有权限,不要求先登记交付合同;成功/失败/取消只结算本次操作,删除全局 Draining 与执行/返修批次计数。
|
||||
- 验证失败和源码漂移影响对应证据,不阻断无关工作。远端不确定结果沿资源自身 operation/幂等记录核对;本地执行器失控或持久状态损坏仍结束回合。
|
||||
- 保留累计执行时间、整轮墙钟、原生执行前审批、关闭时清理与原回合写入/付费提交检查。模型执行结束时先关闭准入,确认清理后才允许交付反馈继续;普通失败不进入关闭阶段。
|
||||
- `validation.maxRuns` 只保留交付回复复核用途;合同的创建时机、artifact/command 移除及视觉/玩法判据不在本次操作控制修改内。图片工具仍等待结果,Codex 调度不变。
|
||||
- `validation.maxRuns` 只保留交付回复复核用途;合同的创建与两类要求简化见下条决策,视觉/玩法判据保持原样。图片工具仍等待结果,Codex 调度不变。
|
||||
- v2 执行账本只对白名单 v1 字段迁移,保留预算与终态,不恢复旧活动权限;没有可信时间记录的更早项目侧账本不授予同回合新预算。
|
||||
- 权威边界与验收入口:[AI 游戏创作智能体 App 实施计划](../../technical/【技术方案】AI游戏创作智能体App实施计划-2026-06-24.md#direct-操作控制2026-10-04)。Windows Job 退出证明仍须由 Windows 环境验收。
|
||||
|
||||
## 2026-10-04:Direct 合同简化方向(已确定,待实现)
|
||||
## 2026-10-04:Direct 合同按用户意图登记、正常响应结束后复核
|
||||
|
||||
- 合同自动检查只在模型正常结束响应后触发;删除操作结算与补丁成功触发的提前封口,状态查询保持只读评估。异常终止与预算耗尽仍独立处理,不以证据齐备覆盖失败事实。
|
||||
- 提示 Agent 在用户要求制作、完成或交付游戏时登记合同,由 Agent 理解用户意图;空项目、首次输入和脚手架不产生宿主强制登记义务。无合同既不阻断普通操作,也不阻断正常结束。
|
||||
- 删除 artifact/command 合同要求及宿主自动补入项,保留普通文件、命令与构建能力。视觉/玩法的现有判据和证据真实性校验不改,仅在主动注册后应用原有新 Web 视觉/玩法补充;相关设计留待下一轮。
|
||||
- 旧未完成合同不得因过滤退役要求变成成功;保留旧预算、终态和操作身份,版本迁移与恢复有独立验收。
|
||||
- 计划与权威目标:[Direct 合同简化目标](../../technical/【技术方案】AI游戏创作智能体App实施计划-2026-06-24.md#direct-合同简化目标2026-10-04待实现)。本记录是后续目标,不代表运行时代码已实现。
|
||||
- 权威规则:[Direct 合同规则](../../technical/【技术方案】AI游戏创作智能体App实施计划-2026-06-24.md#宿主验收与执行许可合同)。运行时已实现;真实模型意图遵循与 Windows 验收按计划单列,不以协议夹具代替。
|
||||
|
||||
@@ -120,7 +120,7 @@ UI 编辑器的“分析参考图”步骤、Rust 命令 `suggest_ui_design_sema
|
||||
| 要求 | 必须成立的行为 | 完成证据 |
|
||||
| --- | --- | --- |
|
||||
| 自动预检 | 新建 Web 游戏由实际用户入口和宿主自动执行,不依赖模型主动调用;失败不得启动正式生成或付费素材 | 首页/后端正反用例、真实构建与双端截图 |
|
||||
| 验收与收尾 | 必需范围和验收项在宿主持久化;证据绑定当前输入;全部必需项通过后关闭本轮新的修改/执行/付费扩项并产生交付报告 | 真实工具链状态转移、重启/并发/新增扩项拒绝用例 |
|
||||
| 验收与收尾 | 必需范围和验收项在宿主持久化;证据绑定当前输入;模型正常响应结束后复核,通过后关闭本轮新的修改/执行/付费扩项并产生交付报告 | 真实工具链状态转移、重启/并发/新增扩项拒绝用例 |
|
||||
| 分层验证 | 视觉、定点玩法、项目测试和必要完整闭环按已登记标准执行;不混淆证明范围 | 双端正例与单端失败反例 |
|
||||
| 统一预算 | 内置验证、托管脚本和原生命令执行受同一宿主预算约束;不以命令文本猜测“是不是试玩”,不把每条普通开发命令单独计为一次返修 | 捆绑 app-server 的执行前控制、拒绝无副作用、跨入口/重启/耗尽/超时用例 |
|
||||
| 稳定基线 | 可复用的固定种子跑酷基线,真实短按/长按跳跃、单次收力、滑铲释放及公平越障窗口 | 物理单测、双端真实输入、原案例缺陷参数反例 |
|
||||
@@ -167,45 +167,30 @@ UI 编辑器的“分析参考图”步骤、Rust 命令 `suggest_ui_design_sema
|
||||
- 操作成功、失败或取消后结算占用与用时,返回真实结果,由 Agent 决定后续操作。没有全局 Draining、执行/返修批次计数及对应重试门禁;验证输入变化只使相关证据失效,不使无关工作停顿。不新增租约到期续租、Agent 释放租约或独立后台任务接口。
|
||||
- 保留原时间预算数值与累计口径、并发上限及回合身份。回合关闭、取消或时间耗尽后拒绝新操作,取消自有在途工作并核实本地进程退出;等待资源锁后的写入及每次新增付费提交仍核验原回合权限。操作记录清除不能代替执行结束证明。
|
||||
- 普通工具失败和资源级结果不确定不终止整个回合;资源自身的幂等、operation ID、恢复及对账继续有效,不能因客户端取消而推断远端取消,也不能盲目重复付费。宿主控制状态损坏或无法确认自有执行器退出仍按实际控制失败处理。
|
||||
- 交付复核与操作准入分离。本次仅解除合同存在性的操作门禁;合同何时创建、验收项及视觉/玩法判据在合同工作中另行处理。`validation.maxRuns` 暂保留现有交付复核次数用途,不再用于执行/返修批次;时间配置不变。
|
||||
- 交付复核与操作准入分离。合同由 Agent 按用户制作/交付游戏的意图登记,验收仅在正常响应结束后启动,当前只保留视觉/玩法要求。`validation.maxRuns` 暂保留现有交付复核次数用途,不再用于执行/返修批次;时间配置不变。
|
||||
- 同回合重试或进程重启不刷新预算;仅保留预算、回合归属、必要退出记录和资源自身恢复所需的持久状态,不恢复旧租约为可执行权限。旧版本未结束状态须先确认旧执行器退出,不能通过直接删除账本解除控制。
|
||||
|
||||
验收至少覆盖失败图片与长命令并存时无关写入成功、连续工具失败不触发返修次数限制、所有退出路径释放并发占用、关闭后零新增执行/付费提交、迟到写入被拒绝,以及远端不确定任务不重复提交。自动化证据与平台未验证项记录在关联实施计划中;Linux 进程组清理不冒充 Windows Job 的完整子树退出证明。
|
||||
|
||||
### Direct 合同简化目标(2026-10-04,待实现)
|
||||
|
||||
本节记录已确认的下一步行为,尚未替换下节所述现行实现。范围及验收见[合同简化里程碑](../project-memory/plans/【里程碑】Direct交付合同简化-2026-10-04.md);实现验收后将本节融合回现行合同,清理被替代规则。
|
||||
|
||||
- 合同由 Agent 根据用户要求制作、完成或交付游戏的意图登记。系统提示明确这一条件及同义表达,不把“空项目”“首次输入”“做游戏入口”或可信脚手架当成必须登记合同的依据;宿主不新增关键词匹配或 LLM 意图判定。
|
||||
- 无合同允许普通文件写入、命令、图片生成及验证,也允许正常结束回合;仍执行原权限、时间预算、并发、资源幂等和退出清理。Agent 漏登记不由宿主通过项目状态补成隐含合同或强制登记反馈。
|
||||
- 自动验收仅在模型正常结束本次响应后启动。普通操作结算和补丁成功不启动封口;状态查询只返回评估,不关闭回合。完成响应后的封口、退出证明、最终证据复核和有界返修继续复用现有流程。
|
||||
- 取消、时间耗尽、执行器断连或不可恢复错误仍独立终止;异常停止不能因为当时证据齐备而被改写成交付成功。最终复核只是正常收尾的一部分,不是新增的中途触发器。
|
||||
- 新登记合同只接受现有 visual/gameplay 要求;删除 artifact/command 类型、文件变化验收、命令返回值验收及自动追加的 host-entry/host-build。普通读写、命令、构建和 agc_run_validation 能力及真实错误回执继续保留,不把删除验收项解释为隐藏命令失败。
|
||||
- 本次不改变视觉/玩法判据、固定场景、双端要求、证据来源、指纹及报告/截图摘要校验。新 Web 合同已有的视觉/玩法补充规则仅在 Agent 主动登记后适用,不再产生无合同回合义务;登记返回完整有效要求。是否继续保留这些补充规则留待下一轮讨论。
|
||||
- 合同仍为单回合、非空、有界、冻结后同参幂等;不新增空合同成功、合同类型、后台任务或续约机制。新消息建立新回合,不继承上一轮合同义务。
|
||||
- 持久化格式变更采用白名单版本迁移,保留预算、旧终态和历史证据。含旧版合同的未结束回合保留为未完成并提示在新用户回合继续,不通过删去旧要求直接判为完成;未登记合同的旧账本移除强制登记标记后仍按原预算、活动操作与退出证明恢复规则处理。
|
||||
- 验收必须覆盖:证据齐备后仍能完成后续操作与最终响应、空项目只生图/不操作可结束、无合同操作、正常收尾与异常终止分离、退役类型拒绝、旧账本恢复及视觉/玩法原判据不变。
|
||||
|
||||
### 宿主验收与执行许可合同
|
||||
|
||||
- 正式 GUI 和 CLI 的共同 Direct 回合入口建立宿主控制状态,绑定 canonical 项目路径、稳定 clientTurnId 和原始用户输入摘要;宿主私有目录保存权威账本并独占该回合,项目 `.agent` 仅允许保存展示副本。配置或项目侧文件被改写、工具切换、Provider 重试和进程重启不得刷新同一回合的预算。
|
||||
- Direct 回合集成测试也按生产入口计算原始用户输入的 SHA-256 十六进制摘要(64 字符),不能用请求名称替代。用户回显过滤回归继续覆盖实时消息去重、回合起止身份关联及历史落盘过滤。
|
||||
- 直接启动 Direct 工具桥的图片生成通知测试,须复用真实宿主执行会话夹具,再发起工具请求;继续验证资源提交后发出 manifest 失效通知,以及空提示词被参数校验拒绝且不发通知,不绕过执行许可门禁。
|
||||
- 交付合同不参与普通工具准入。模型通过结构化工具登记本轮游戏交付的必需范围与验收项;合同非空、有界且只冻结一次。模型只能声明要求,不能提交“通过”作为证据。后续扩项留到新的用户回合。
|
||||
- 明确新 Web 创建由宿主可信脚手架凭证及尚未交付的宿主记录判定,CLI 同样据此判定,不从提示文本猜测;这种回合即使模型没有调用工具或没有登记合同,也不得按普通聊天宣布交付。已有项目未激活合同时可以正常结束用户回合;存在执行记录时仍须核对执行器清理,不生成游戏交付证明。合同触发方式与验收类型调整另行实施。
|
||||
- 验收项为明确类型的产物、构建/测试命令、双端视觉或指定固定场景的双端玩法。可信新 Web 游戏由宿主补充构建、双端视觉和玩法底线,不能由模型声明“已有项目”降低。已有项目按冻结的变更范围选择层级;平台美术只在用户目标要求时成为必需项。
|
||||
- 同一份双端玩法证据可同时满足视觉项,避免重复浏览器运行。构建证据分别绑定源码输入摘要与输出摘要,正常生成 dist 不算源码漂移;浏览器证据绑定构建后的实际运行输入。只有宿主验证完成产生的结构化结果和证据文件摘要能满足合同,项目内自行写出的验证 JSON 无效。
|
||||
- 产物项的初始摘要由宿主冻结,模型不能提供或在重放时重算。仅登记已经存在的文件不能立即交付:产物必须实际变化/新出现,或有当前指纹的宿主可信验证证据;原生修改和工具修改遵守相同判据。
|
||||
- 当用户要求制作、完成或交付游戏时,由 Agent 理解意图并登记合同。空项目、首次输入、创建入口和可信脚手架不产生宿主强制登记义务;宿主不做关键词或 LLM 意图分类。无合同回合可以正常写入、执行、生成和验证,也可在必要清理后结束,不触发缺合同返修或生成游戏交付证明。系统提示、工具描述及随包技能遵循同一条件。
|
||||
- 新合同格式为 `agc-direct-delivery.v2`,只接受非空、有界的 visual/gameplay 要求。artifact/command 类型、初始文件变化摘要及 host-entry/host-build 已删除;普通文件、命令、构建和 agc_run_validation 工具及真实失败回执保留。主动登记新 Web 合同时,宿主沿用首次交付事实补充既有双端视觉/玩法底线并返回完整要求;未登记不补合同。冻结后同参重放复用 newWebGame,不重算范围。视觉/玩法设计本次不改,后续另行讨论。
|
||||
- 同一份双端玩法证据可同时满足视觉项,避免重复浏览器运行。视觉/玩法仍校验双端、固定场景及版本、当前运行指纹、报告与截图摘要;只有宿主真实验证回执有效,项目内自行写出的验证 JSON 无效。删除 artifact 要求不删除浏览器证据文件的防篡改校验。
|
||||
- `validation.maxRuns` 保留已配置值,仅用于交付回复复核次数;普通执行成功、失败、取消和验证输入漂移均不消耗该次数。验证证据继续绑定输入,失败或漂移仅使相应证据不能证明交付;Agent 可以继续无关工作。
|
||||
- `validation.maxExecutionSeconds` 默认 900,必须为正整数,是整个 clientTurnId 的累计执行时间上限,同回合重试不清零。并行操作分别计时累加,内置工具不与 app-server 的外层 MCP 事件重复计费。时间耗尽立即拒绝新执行、写入和付费扩项,保留最近证据与未完成项;Provider 的重试次数保持独立。
|
||||
- `validation.maxTurnSeconds` 默认 1800,必须为正整数,是同一宿主回合从开始起的墙钟上限,重启不重置,用于约束模型空转和超出单个工具事件边界的后台会话。墙钟上限与累计执行时间分别记录,任一耗尽都收束自有执行器;不能把模型等待时间报告成工具执行时间。
|
||||
- 捆绑 app-server 的原生命令使用已验证的逐次审批能力;宿主只返回单次接受/拒绝,不允许会话授权或 exec policy 修订。第三方 MCP 必须显式启用逐调用询问,不能依赖不可信 readOnlyHint。询问缺少调用 ID 时,按服务器与回合中的并发组保守管理,不能解析展示文案猜测归属。
|
||||
- 原生、内置与第三方所有入口都经过同一宿主状态;独立工具继续并行,只有身份、回合关闭、收尾与必要资源冲突形成短临界区。能力检测失败不得退回无控制执行。
|
||||
- 上述回合控制适用于 DirectProject。独立客户端 HTTP MCP 显式使用 ExternalClient 来源,保持其原有权限、幂等和浏览器能力,不借用当前项目另一条 Direct 回合的预算或可信证据;新交付合同与托管验证命令工具要求 Direct 会话。服务端 external_mcp 不变。
|
||||
- 必需证据齐备后,宿主先进入封口状态,拒绝新副作用,再确认在途归零、收束模型执行器并取得进程退出证明,最后重新核对源码、产物和证据摘要;核验成功原子进入 completed 并产出宿主报告。不能先写 completed 再尝试停止后台进程。宿主主动结束模型回合属于交付终态,不触发普通错误反馈或重试。未达标不得用模型最终回复替代验收。
|
||||
- 自动交付验收只在模型正常结束本次响应后启动;操作结算、AGC 补丁成功、登记与状态查询都不触发封口。正常完成后证据齐备则进入 Sealing,拒绝新副作用,确认在途归零和执行器退出,再复核运行输入及证据,成功才进入 Completed 并返回宿主报告。未达标仍在原预算与复核次数内反馈修复;取消、耗尽、断连等异常终止保持其原因,不能因证据齐备改成成功。
|
||||
- Windows app-server 在任何模型工具执行前绑定不可脱离的自有 Job,超时/取消/断连时验证整个 Job 已退出。其它平台继续保留受控进程组;未取得完整子树退出证据时按不确定状态报告,不宣称全部后台执行已停止。已受理的远端付费任务保留原不确定围栏,断连不构成自动重放授权。
|
||||
- 付费许可始终绑定原回合和原操作,不能在容量或同动作锁排队结束后借用新回合。排队可取消,每次新 POST 前与封口共用宿主状态短锁,核对原许可、期限与阶段并持久化提交边界;封口、终止或耗尽后不得新增提交。已经越过提交边界的请求不丢弃,其 operation ID 和不确定状态继续持久化并允许原 GET 对账,多阶段生成的下一次 POST 仍须重新核验。ExternalClient 与手工资源操作保持既有语义。
|
||||
- 执行账本使用 `agc-direct-execution.v2`,保留回合预算、归属、活动操作、退出证明及合同证据,不再保存批次计数和整轮验证输入。读取 v1 时只白名单移除退役字段,未知字段仍拒绝;旧 Draining 转为 Interrupted,旧终态不重开,旧未结算操作不复活。更早的项目侧验证账本缺少可信用时/开始时间,仅保留为中断事实,不能授予同回合新预算。
|
||||
- 执行账本使用 `agc-direct-execution.v3`,删除 requiresContract,保留回合预算、归属、活动操作、退出证明及合同证据。读取 v1/v2 只白名单移除退役字段,未知字段仍拒绝;旧终态不重开,含旧合同的非终态保留要求并转为 Interrupted,提示新用户回合继续,不因删除要求宣告成功。旧无合同账本移除强制标记后仍按原预算与活动操作恢复规则处理;更早项目侧验证账本缺少可信时间,不能授予同回合新预算。旧合同终态可查询历史但不再按新标准评估。
|
||||
- 模型一次执行结束时先进入 Closing,关闭新操作和迟到提交,核实自有执行器退出及活动操作归零后才能回到 Working 接受交付反馈;整个用户回合结束后撤销旧许可。Closing 只用于实际关闭,不由普通工具失败触发。普通无合同回合完成不宣称游戏验收通过。
|
||||
- 本地写事务未结算或失败仍需核对时不得封口。与失败写入重叠的旧写入/旧验证不能清除该围栏;只有失败之后新准入的成功修复或可信验证可以恢复验收。普通文件写入与账户/本地资产导入显式携带原写入许可,取得项目锁后再与宿主状态锁共同核验期限并提交短本地事务;等待锁或下载期间终止的请求不得继续落盘,网络等待不持宿主状态锁。
|
||||
|
||||
|
||||
Reference in New Issue
Block a user