context-infra 检查与复盘infra.guiming.net · 全内容自包含呈现 · 生成于 2026-07-21 16:28 UTC

workflow_long_multi_provider_run_protocol

Z3 全文↑ Z2 条目

道-方法 · 道层 skill 全文

← 返回道层 skill 索引 · 返回方法论区

本页是 <code>rules/skills/drafts/workflow_long_multi_provider_run_protocol.md</code> 的逐字投影(仅隐私清洗,零改写)。

时点提示:本页是仓内文件 rules/skills/drafts/workflow_long_multi_provider_run_protocol.md 的逐字投影(仅做隐私清洗:仓库根绝对路径→相对路径、家目录→~/;除此零改写)。若源文件后续有修订,以仓内真源为准。

报告元数据(frontmatter)
name: workflow_long_multi_provider_run_protocol
description: 长、多 provider(≥3)、涉及模型降级/额度受限/fallback/转向的运行(如多轮 buildout orchestration)的准备+执行纪律框架。把"每个 run 都不同的目标/输入/输出/provider 组合/降级场景"当变量、把"5 目标模型必调到、撞墙→等待→探测恢复→继续、session 状态查怎么跑非查产物、fallback 作参考但缺的目标模型必须补、GOAL 翻译忠实、检查结论回写"当跨 run 不变量沉淀。触发:要跑或要复盘一个长多 provider 运行、要防它再碰到额度降级/GOAL 翻译/检查不回写这类坑。
type: Workflow(道层 / 准备+执行纪律框架)
tier: 道
status: draft (Beta) — 2026-06-30 由 optimization domain 6 轮 run 复盘沉淀(源 V4_SKILL_DRAFT + I/J/K/L)。晋级前需:① PROMOTE-ONE 的 goal_fidelity_gate 已落地(确定层 GF2 在 r004 真实 GOAL 上 FLAG + 负对照 PASS,2026-06-30)——剩 GF4 regulator 的可定位反例待 codex:high 通道真实跑一次;② 本 skill 在 ≥1 次真实长多 provider 运行里被路由使用并留 receipt;证据到 bounded 以上再考虑摘 Beta。
created: 2026-06-30
version: 0.2.0 (draft) — 2026-07-03 Y 级更新(使用者无需改动:纯新增章节 + 证据升级,既有纪律/参数不变):Run3 campaign 给准备纪律 2(恢复探测协议)补上首次真实运行验证(4 轮 5h 窗全记录),新增「5h 滚动窗实测行为模型」节 + CC headless 挂死修复参考;0.1.0 为 2026-06-30 初版
design_source: adhoc_jobs/context_infra_base_tooling_buildout_20260615/alldomain_design_optimization_20260620/audits/session_1e4fad1e_20260628/(SYNTHESIS_V4_SKILL_DRAFT + I_MODEL_DEGRADATION_QUOTA_METHOD + J_FALLBACK_UTILIZATION_METHOD + K_VARIABLE_INVARIANT_SKILL_DESIGN + L_RECOVERY_PROBE_PROTOCOL)

长多 provider 运行:准备+执行纪律

目标(一句话)

给一个长、多 provider、会撞额度/降级的运行,把"每次都变的部分"留给运行时填充,把"跨 run 不变的准备纪律 + 执行纪律"一次性钉住,让下一次运行不再重蹈 6 轮 buildout 踩过的坑(GOAL 把需求译丢、撞墙后没等没探测就降级、完成判据查产物在不在而非怎么跑、fallback 冒充目标模型、检查结论没回写)。

何时用 / 不用

:要跑或要复盘一个运行,且它同时满足"长(跨多 phase/多天)"+"多 provider(≥3 个目标模型)"+"会遇到模型降级/额度受限/fallback/中途转向"。典型是多轮 orchestration buildout。

不用:单 provider 的短任务;不涉及额度/降级的一次性任务。这套纪律对它们是负担。

变 vs 不变(先认清哪些该留给运行时、哪些该钉死)

变(运行时填充,不进本 skill 的硬约束):每个 run 的具体目标(设计/impl-prep/代码实现)、输入侧(设计阶段读需求+意义+书籍;实现阶段加 Harness Reference discovery + 真实代码 surface)、输出形态、provider 组合与档位、具体失败类型(429/529/subprocess_error/Not-logged-in/hang)、降级时机、per-route 基线、后端混跑与 fallback 链配置。

不变(本 skill 钉死的纪律):见下面道层。

道层:判断纪律(What)

准备时(6 项;标【硬】= 不可让渡,标【建议】= 可按情况调)

  1. 【硬】模型身份预检:对每个目标模型做 no-fallback probe,记 modelUsage sidecar / stderr banner,区分"route 级"证据 vs "modelUsage 级"证据。Non-Transfer Rule:P1 阶段证到的 CONFIRMED 不自动传递到后面的工作 cell,每个 cell 自带身份证据。
  2. 【硬】额度基线 + 恢复探测协议:区分三种失败并各配策略——quota 耗尽→等待+主动探测恢复;rate-limit→cooldown+同 route 顺序重试;瞬时 infra 失败→修超时+重试。不靠订阅 UI 判断额度。恢复探测的具体机制(探测间隔/内容/恢复条件/恢复后动作)是 6 轮 run 落实最差的一块,语义设计见 L_RECOVERY_PROBE_PROTOCOL(退避 t0=5min×2 封顶 60min、双探确认、24h 升 await_user、登录失效 10min×2h 阈值)。
  3. 【硬】fallback 利用策略:fallback 产出作参考保留、不当废品;但目标模型缺的必须由目标模型本身补上,不让 fallback 顶替。substitute 产出保留并标 superseded、标"不可顶替目标模型",目标模型恢复后 native rerun 补上。fallback 链末尾若落到 Opus(claude:high)冒充原 lane,硬阻断。
  4. 【硬】GOAL/GUIDE 翻译忠实度:用户每条显性要求逐条映射成 GOAL + GUIDE 的显式条目;举例不当穷举("如 phase、skill、trace 等" 不能译成"恰好这三块");"执行方式不变"不当 batch;GOAL 与 GUIDE 不许互相矛盾。发布前独立 verifier 逐条核对给可定位反例,不通过不许派发。(这条防的是 6 轮里最承重的失效,见已知陷阱 T1/T2。)
  5. 【建议】转向旧约束继承:用户中途改主意时,新 GOAL 与旧需求全集逐条对账产"转向对账表",旧 standing 硬约束默认继承除非明确废止(防 r004 把"13 域全派"这条旧硬约束在转向到"代码实现"时丢掉)。
  6. 【建议】过程/机制盲区扫描(5 维度):准备检查清单除了查"结果维度"(13 域/provider 身份/检查机制),固定加查"过程维度"——GOAL 翻译忠实度 / gate 判据层级(telemetry 非 artifact)/ 检查回写闭环 / 执行粒度 / GOAL↔GUIDE 一致性,各带机械判据。

执行中(7 项)

  1. 【硬】session 状态查"怎么跑"非"产物在不在":进程树 / 产物运动 / result telemetry / fresh probe 判 completion。zero-byte+长时长=stall,三条件(zero-byte + 超 per-route 基线 2-3 倍 + 进程树无活动)并行才判卡住。执行者不能当自己的完成 oracle。
  2. 【硬】modelUsage 非 route 级:is_error=true / tier=null / 0-turn / 0-cost 的 cell 不能当真调用(r005 反模式:生成器脚本 0-turn 产 72 文件冒充 provider 跑过)。
  3. 【硬】目标模型补缺闭环:detect 缺 → wait/poll 恢复 → 目标模型 rerun → 5 项机械验证(is_error/tier_used/model_observed/exit/markers)→ supersede substitute(不删)。
  4. 【硬】检查→修正回写闭环:检查结论作为 run 的强制修正门,run 的 claim 函数式依赖检查结论(检查判 NOT_PROVEN → run claim 上限自动降级,不许 run 自选)。防 r005 的"sub-agent 14:38 已判 NOT_PROVEN,COMPLETION_AUDIT 19:00 仍标 COMPLETE"。
  5. 【硬】claim ceiling 诚实封顶 + provider 身份证明:per-cell modelUsage/turns>0/route banner 才算调到,不靠文件存在。Non-Transfer Rule 强制每 cell 自带证据。
  6. 【建议】持续推进,触边界才停:<3 模型可用 / 需用户裁定 / 要做 live 变更,这三类才停;额度不够可减模型(用户许可范围内)+ 汇报,不静默接受 substitute 为最终。
  7. 【硬】设计先于代码:代码切片需用户显式授权。

验收标准(无上下文 agent 可自判:一次运行有没有遵守本纪律)

逐条可机械或半机械核:

术层:检测器(How)

5 个对症检测器,按 workflow_complexity_drift_detection V1-V6(确定层壳 + 第二 agent regulator 给可定位反例)+ workflow_landing_to_production DL-02 分步落地。PROMOTE-ONE:goal_fidelity_gate 已落地(2026-06-30)tools/goal_fidelity_gate/check.py(726 行,GF1-GF3 确定层 + GF4 regulator 复用共享 regulator_adapter)。真实落地证据:对 r004 GOAL.md(已直证翻译失真)跑出 FLAG(GF2 抓到"如…等"被收成封闭穷举),无开放枚举的负对照跑出 PASS,证明会判别非"FLAG 一切"假门(tools/goal_fidelity_gate/LANDING_TEST.md)。诚实封顶:确定层 GF2 已验,GF4 codex:high regulator 接线就绪但本次未触发、其"可定位反例"待真实跑一次。其余 4 门记 backlog。

  1. goal_fidelity_gate(PROMOTE-ONE,防 GOAL 翻译失真):输入用户要求集 + GOAL + GUIDE,确定层壳核"三列对照表在场 + 每条用户硬要求有 GOAL 条目",regulator(codex:high,forbidden_read 含派发者成功叙事)判"举例有没有被当穷举 / '执行方式不变' 有没有被违反 / GOAL↔GUIDE 一致",给可定位反例,不通过不许派发。对应 AC2。
  2. session_liveness_gate(backlog,用户#1关注点的运行时面):运行时探活 + 卡住三条件检测 + 额度恢复探测台账核验 + 目标模型补缺闭环追踪。语义层设计已成型 = L_RECOVERY_PROBE_PROTOCOL;它是运行时监控而非静态产物 gate,落地形态是接进运行壳 + 台账可机械核(对应 AC3/AC4),列为 PROMOTE-ONE 之后的下一个。
  3. check_writeback_gate(backlog,防检查不回写):检查结论作为强制修正门,run claim 函数式依赖检查结论。对应 AC5。扩展 workflow_session_claim_audit 的"回写半"。
  4. pivot_inheritance_gate(backlog,防转向丢旧约束):转向时新 GOAL 与旧需求全集对账产转向对账表,旧 standing 默认继承。并入 workflow_requirement_intake
  5. lessons_accumulation_gate(backlog,防教训不累积):每个 run 被 audit 查出的问题落 append-only 教训库,下个 run GOAL 必检带机械检测。活体证据:06-20 salience-drift 诊断未固化成门 → r004 GOAL 翻译层复发。

5h 滚动窗实测行为模型(Run3 实战沉淀,2026-07-03)

来源:buildout Run3 campaign(2026-07-02~03)经历 4 轮 Codex 5h 窗耗尽-恢复完整周期,等待→探测→恢复→续跑全程台账在 adhoc_jobs/context_infra_base_tooling_buildout_20260615/Run3/logs/dispatch_log.md。这是准备纪律 2(恢复探测协议)的首次真实运行验证

与现有 skill 的关系(不替代,只填缺口 + 叠加)

已知陷阱(全部来自 optimization domain 6 轮真实运行,非预测)

陷阱真实表现应对
T1 举例当穷举用户 B2 说"如 phase、skill、trace "+"整体",r004 GOAL.md:11 写成恰好这 3 块、丢"等"和 13 域准备纪律 4 + goal_fidelity_gate;举例标记必须保留开放性
T2 执行方式不变当 batch用户 B6 说"执行方式本身保持不变"(per-domain-per-provider),r005 EXECUTION_GUIDE 引入 provider batch、实跑 batch 覆盖 12 域准备纪律 4 + goal_fidelity_gate;执行方式变更须显式授权
T3 目录标签≠真实模型r004 GLM lane fallback 到 Kimi,PROPOSAL 头部仍标"GLM 5.2",artifact-exists gate 放过执行纪律 2/5;身份查 router.log/modelUsage 非文件标签
T4 完成判据查产物在不在r005 COMPLETION_AUDIT 用"零缺失文件"判 5 lane PASS,实际 2 lane route FAIL + 2 lane 0-turn/0-cost执行纪律 1/2;查"怎么跑"非"在不在"
T5 检查没回写sub-agent 14:38 判 NOT_PROVEN,COMPLETION_AUDIT 19:00 仍标 COMPLETE(晚 5h、同 session 信息没回写)执行纪律 4 + check_writeback_gate
T6 撞墙不等待不探测quota 耗尽时实际都是 drop provider+caveat / 降级 medium / substitute,"主动等待刷新+探测恢复"6 轮里始终无系统机制准备纪律 2 + L_RECOVERY_PROBE_PROTOCOL;这条是用户最核心关注点

诚实 claim ceiling / 缺口

可用资源


← 返回道层 skill 索引 · 返回方法论区