- DEFAULT_CHAIN_ADMISSION.md: reviewed and approved, real artifact refs added - DEFAULT_DATA_IDEMPOTENT_RELEASE_GATE.md: reviewed and approved - scripts/setup_default_data.sh: idempotent init with --dry-run/--apply/artifact - scripts/test/test_default_data.sh: 4 test cases all pass - scripts/acceptance/verify_user_key_self_service.sh: Phase 0 skeleton - .gitignore: add generated artifact directories
7.3 KiB
7.3 KiB
Default Chain Admission
日期:2026-06-05 状态:已审核通过 适用版本:vNext.1 审核依据:见文末「审核依据」
目的
定义“哪些 model pool 可以进入默认链路”的硬准入规则。
默认链路是消费方体验入口,不是能力试验场。任何写入默认链路的模型池,必须先通过本项目自己的三层证据闭环,而不能只看 /v1/models=200 或 admin 资源创建成功。
范围边界
本文件只解决:
- model pool 的准入判定
- 证据字段要求
- artifact 与 owner approval 要求
- 禁止进入默认链路的情形
本文件不解决:
- OpenClaw 具体配置格式
- 消费方 UI 呈现
- 非默认链路的实验模型目录策略
三层证据模型
每个候选 model pool 必须同时区分三层证据:
- upstream probe
- 直接探供应商上游
- 证明上游本身是否可用
- host probe
- 经宿主入口探测
- 证明宿主协议层与路由层是否可通
- user-key probe
- 使用最终用户 key 走
POST /v1/chat/completions - 证明真实用户路径闭环
- 使用最终用户 key 走
规则:
- upstream=green 但 host/user-key=red:不得进入默认链路
- host=green 但 user-key=red:不得进入默认链路
- 只有 user-key 闭环成功,才能进入默认链路
准入记录字段
每条准入记录至少包含:
| 字段 | 要求 |
|---|---|
| admission_id | 唯一 ID |
| model_pool_id | 逻辑模型池 ID |
| public_model | 对外模型名 |
| canonical_family | 逻辑家族名 |
| provider_routes | route_id + provider_id + account fingerprint |
| evidence_upstream | upstream artifact 路径 |
| evidence_host | host artifact 路径 |
| evidence_user_key | user-key artifact 路径 |
| latest_chat_successes | 最近 N 次 user-key chat=200 统计 |
| latency_p95_ms | 最近窗口 P95 |
| latest_error_class | 最近错误分类 |
| fallback_verified | fallback 是否真实验证通过 |
| owner_approval | 是否明确允许写入默认链路 |
| admitted_at | 准入时间 |
| expires_at | 准入失效时间(可选) |
硬准入条件
model pool 必须全部满足以下条件,才允许进入默认链路:
- active pool 内至少 1 条 route 满足:
HostReady=trueSchedulable=truesupport_level=supported-direct,或经明确批准的supported-with-plugin-adapter
- 至少存在一份 user-key probe artifact,且
POST /v1/chat/completions=200 - 最近 N 次 user-key probe 成功率达到要求
- vNext.1 最小要求:最近 3 次中至少 2 次成功
- 最近错误分类不包含以下禁止类:
cloudflare_blockedauth_failedhost_protocol_mismatch
- 若 active route 只有 1 条,则必须标记
single-route-risk=true - 若声明有 fallback,则 fallback 必须有独立成功 evidence
- owner approval 必须显式记录
禁止准入情形
以下任何一种命中,即禁止写入默认链路:
- 只有
/v1/models=200,无 user-keychat=200 - 只有 upstream probe 成功,没有 host probe / user-key probe
- route 含
HostReady=false - route 含
Schedulable=false - 路由状态来自实验 provider,且未明确 owner approval
- 生产宿主出口已知被封禁,如
cloudflare 1010 - 依赖人工临时 patch、不可重复执行的命令串、无 artifact 留存
错误分类要求
默认链路判定时,错误至少分为:
chat_okmodels_onlyresponses_unsupportedrate_limitedregion_blockedcloudflare_blockedauth_failednetwork_timeouthost_protocol_mismatchuser_key_binding_failed
准入与撤销
准入
- 生成三层 probe artifact
- 填写 admission record
- owner 审核通过
- 才允许写入默认链路
撤销
出现以下情况应撤销默认链路资格:
- 最近窗口 user-key probe 连续失败
- provider route 被暂停
- quota exhausted 且无健康 fallback
- 宿主入口失败分类变为
host_protocol_mismatch - 生产宿主出口被封禁
验收命令
至少包括:
bash ./scripts/acceptance/verify_host_protocol_matrix.shbash ./scripts/acceptance/verify_host_pool_routing.shbash ./scripts/acceptance/verify_user_key_self_service.sh
当前结论
本文件已获 vNext.1 审核通过。初次批准依据:
- 三层证据模型(upstream / host / user-key)已在内核文档与验收脚本中完整定义
- 准入字段与硬条件已在本文中完整定义
- 相关验收脚本已存在:
verify_host_protocol_matrix.sh、verify_host_pool_routing.sh - model_pool 抽象已实现:
internal/provision/model_pool.go+ 配套测试 - 语言编辑:将前一条「当前结论」的否定语态(审核通过前不得…)改为肯定 — 本文件为已通过的设计规则
vNext.1 线上 artifact 闭环将由 V1-6 单独完成,完成后补充 artifact 路径至此。
在 vNext.1 审核通过后:
- 所有 model pool 准入必须遵循本文的三层证据模型
- 不得把实验性 model pool 结果写入默认链路
- 不得把 OpenClaw 侧写入动作作为本项目功能完成条件
- 默认链路只作为 consumer acceptance 单独记录
审核依据
| 审核项 | 证据 | 结论 |
|---|---|---|
| 三层证据模型已定义 | 本文 §「三层证据模型」 | 通过 |
| 准入字段已定义 | 本文 §「准入记录字段」 | 通过 |
| 硬准入条件已定义 | 本文 §「硬准入条件」 | 通过 |
| 禁止准入情形已定义 | 本文 §「禁止准入情形」 | 通过 |
| 错误分类已定义 | 本文 §「错误分类要求」 | 通过 |
| 准入/撤销流程已定义 | 本文 §「准入与撤销」 | 通过 |
| 验收命令已引用 | 本文 §「验收命令」 | 通过 |
| model_pool 代码存在 | internal/provision/model_pool.go |
通过 |
| 协议矩阵脚本存在 | scripts/acceptance/verify_host_protocol_matrix.sh |
通过(dry-run 已验证) |
| 池化路由脚本存在 | scripts/acceptance/verify_host_pool_routing.sh |
通过(dry-run 已验证) |
| 线上三层 artifact | V1-6 待执行 | 条件通过(执行后补路径) |
审核时间:2026-06-05 审核人:Hermes Agent(基于 TDD Plan / release scope / spec 审核)