From e16a75c5111c861afea11458194ac308f81ca99a Mon Sep 17 00:00:00 2001 From: agent-exec-transport Date: Sun, 18 Oct 2026 17:37:43 +0000 Subject: [PATCH] agent-exec transport c4e7bcc1003fb3b60d968183cc9674cd/2e81d2e9845e --- AGENT-EXECUTION.md | 41 ++++++++++++++++++++++++++++++++++++++--- policy/delivery.md | 24 ++++++++++++++++++++++++ 2 files changed, 62 insertions(+), 3 deletions(-) diff --git a/AGENT-EXECUTION.md b/AGENT-EXECUTION.md index 8d5113c2..e3c0b7fd 100644 --- a/AGENT-EXECUTION.md +++ b/AGENT-EXECUTION.md @@ -18,8 +18,8 @@ increment host fallback authorizations. Safe exhaustion without an emergency candidate ends `unavailable` or `blocked`, and that result does not authorize the host to write the unit. The legacy value `all-unavailable` remains parseable and likewise grants no host write authority. Cursor uses -`cursor-agent-stable`. `model: auto` lets each CLI use its configured default -model; PI therefore uses the operator-selected MiniMax default. The +`cursor-agent-stable`. `model: auto` lets a CLI use its configured default +model; any other value is passed to that CLI as its model selector. The `integration` block declares the host-exempt paths and the transport, admission, and cleanup entry points. @@ -60,7 +60,7 @@ profiles: pi: adapter: pi executable: pi - model: auto + model: minimax-cn/MiniMax-M3 enabled: true codex: @@ -78,3 +78,38 @@ integration: cleanup: command: make task-finish ``` + +## Model preferences (project choice) + +Generic rules for bounded packets, context budgeting, phase handoff and +requested-versus-effective model identity live in the shared +[standards/agent-execution.md](deps/development-guidelines/standards/agent-execution.md) +and [workflows/handoff.md](deps/development-guidelines/workflows/handoff.md); +project procedure is in +[policy/delivery.md](policy/delivery.md#有界单元包上下文与阶段交接). This +section records only this project's choices. + +- Planning, design and implementation plans: Codex or Claude when available, + in the host or a fresh CLI session. This is a preference, not a routing role. +- Bounded implementation, repair and test units: the existing normal + candidates in the configured role order above. Requested models: + - PI: `minimax-cn/MiniMax-M3`, passed as `--model provider/id`. PI + actual events have reported `minimax-cn` / `MiniMax-M3` and the local + offline catalog lists that profile; each run still records the effective + model from that run's events. + - Cursor: `auto` (Cursor Auto). + - agy: Gemini 3.8 Flash is requested, but its exact selectable model ID and + effective identity are `NOT_VERIFIED` (the `agy` models query needs a + login that was not available). The profile therefore stays `model: auto` + until an observed model ID exists; do not claim Gemini 3.8 Flash is active. +- Assigning a different candidate or model to a unit needs a concrete, + task-specific reason recorded in the task record, and stays within the + existing roles and candidate lists. It is not a silent permission or routing + change. Role lists, attempt limits, timeouts, output limits, the single + Codex emergency attempt, stage isolation and `fallback_to_host: never` are + unchanged by these preferences. +- A requested model is prompt/config intent. Only the model reported in a + run's actual event envelope counts as effective; when the CLI does not report + it, record `not-observable`. Unknown context capacity, a missing agy login + or missing automatic compaction are recorded facts, not global fail-closed + conditions. diff --git a/policy/delivery.md b/policy/delivery.md index d1a88980..9d5e8b9f 100644 --- a/policy/delivery.md +++ b/policy/delivery.md @@ -154,6 +154,30 @@ host 可以直接编写并提交的豁免只有 `.task/**`、`docs/superpowers/s - 会话隔离不要求为简单任务增加新平台或复杂编排。平凡文档/配置任务仍按最小闭环执行;需要独立 Review 时只额外启动一个最小、一次性的评审 session,不复用实施 session,也不扩展任务范围。 +### 有界单元包、上下文与阶段交接 + +通用规则见共享 [standards/agent-execution.md](../deps/development-guidelines/standards/agent-execution.md) +与 [workflows/handoff.md](../deps/development-guidelines/workflows/handoff.md);本节只写本仓做法,模型偏好见 +[AGENT-EXECUTION.md](../AGENT-EXECUTION.md#model-preferences-project-choice)。 + +- **单元包**:用现有单元包 JSON 的 `goal`/`constraints`/`verification` 写清:一个结果及验收条件、允许路径与 + 须遵守的契约、非目标、前置提交 SHA、最小必读清单、直接验证命令、上下文容量及其来源(未知时按保守的 + 100K 假设)和为执行预留的余量。不新增 schema、运行时字段或控制器。 +- **容量**:100K/200K/300K/500K 只是规划参考,不是对任何 provider 能力的声明;容量更大不授权更宽的任务, + 单元仍按一个结果拆分。容量未知不构成失败条件,也不做自动容量强制。 +- **阶段交接**:长任务每完成一个里程碑,host 自动在现有任务记录中写一份简短的持久交接:目标、状态、关键决定、 + 文件与 SHA、命令与结果、阻塞项、下一步和来源链接;下一个 CLI 阶段或单元以全新会话启动,只读取交接与最小 + 必读材料,不为交接等待人工。 +- **上下文压力**:provider 支持时,只在阶段完成后使用其上下文压缩;没有自动压缩不阻塞工作。普通上下文压力用 + 交接加 host 在既有授权内重新打包单元处理;只有真实扩围才按既有 `scope-expansion` fail-stop。 +- **如实区分**:请求模型与实际事件报告的有效模型;可观察的 session 身份与 `not-observable`;worker 局部自检 + (SELF)与 host 集成验证、独立 Review、精确 HEAD CI(GATE)。 +- **验证分工**:worker 只跑直接检查;host 在最终候选上运行一次所需的集成套件。涉及安全、契约或部署的改动, + 须写明正向、负向与回归用例。 +- **单写者与强制边界**:同一单元同一时刻只有一个写者,host 在运行期间不改规范检出。记录时区分三类约束: + 提示词指导(单元包内容、容量、交接、模型偏好)、观察到的行为(事件报告的模型与 session),以及工具强制 + (配置校验、尝试上限、超时、transport/admit)。本节不新增门禁,不放宽凭据、范围、未知副作用与 CI 边界。 + ### 两级分支交付模型与分流检查 本仓采用两级业务交付模型: