Files
pikasTech-unidesk/docs/MDTODO/details/sub2api-upstream-reliability/R2.2.3_Task_Report.md
T

3.1 KiB

R2.2.3 任务报告

目标

把本轮形成的 Sub2API runtime 控制、原生数据诊断、客户可见错误溯源和配置调优方法沉淀到 unidesk-sub2api skill,避免后续代理重新试探入口、证据口径和下发边界。

沉淀内容

Skill 触发与路由

  • 扩展 skill description,使 runtime CRUD、精准批量、临时不可调度、上游错误率、客户可见错误、failover、模型映射和可用模型探测均能触发本 skill。
  • SKILL.md 将 runtime 控制路由到 references/codex-pool.md
  • 客户错误溯源、错误率分析和配置调优路由到 references/troubleshooting-accounts.md
  • 同步更新 agents/openai.yaml 的简述和默认提示。

Runtime 控制合同

references/codex-pool.md 固化:

  • runtime list|get|models|errors|apply|delete 的职责。
  • get 的脱敏 modelMapping 与临时不可调度规则可见性。
  • models 区分配置模型和上游实时模型。
  • temp-unschedulablemodel-mapping 两类 CRUD。
  • 单账号 --account 和显式精准批量 --accounts,禁止隐式 all
  • 批量选择预检、顺序写入、中途 admin API 失败后的逐账号对账要求。
  • 默认 dry-run、--confirm 写入、紧凑批量输出和 Secret/credentials 脱敏。
  • YAML 只保存通用模板和 managed 引用,runtime-manual 账号继续使用 CRUD,不为批量操作强行纳入 YAML。
  • 文档命令与当前分支 CLI 不一致时按集成漂移处理,禁止退回手写管理 API。

调优分析流程

references/troubleshooting-accounts.md 固化八步流程:

  1. 用原生 dashboard、availability、concurrency、upstream errors 获取全账号同窗口事实。
  2. 用有限 request id 和 trace 区分切号成功、候选耗尽、首次无候选和流式 degraded。
  3. 临时不可调度规则必须同时有真实状态码与响应关键词证据。
  4. 无候选先用原生模型接口核实能力,不猜测近似模型映射。
  5. 按 YAML-managed 与 runtime-manual 所有权分别下发,默认一分钟冷却且无新证据不超过三分钟。
  6. 不用当前并发快照证明错误时并发,降低并发只做有直接证据的有界对照。
  7. 短窗口只做回归,效果等待新的完整窗口并综合请求分母、错误率、规则命中和切号结果。
  8. 版本回退必须有源码差异或版本对照证据。

实现边界

精准批量和 runtime models 已在 /root/unidesk/.worktree/sub2api-error-tuning 完成真实 PK01 验证。主工作区当前 runtime CLI 尚未语义吸收这部分实现,且同文件存在并行诊断增强修改,因此本任务没有覆盖主工作区 runtime 源码。skill 已加入 CLI 集成漂移防护,后续必须先完成语义合入,不能手写 Sub2API admin API 绕过。

验证

  • quick_validate.py .agents/skills/unidesk-sub2api:通过。
  • git diff --check:通过。
  • skill 主文件 46 行,三个核心文件合计 207 行,保持渐进披露。
  • agents/openai.yamldefault_prompt 显式引用 $unidesk-sub2api
  • 未写入账号 ID、供应商名称、当前错误率或其他一次性运行数据。