Files
ai-contract-platform/project-docs/V2-real-model-controlled-prerelease-acceptance-2026-08-25.md
yuqei 1d85329a6a
Build and Test Quality Gate / Contract Web typecheck and build (pull_request) Successful in 9m12s
Build and Test Quality Gate / Isolated Alibaba and Tencent KMS gateway (pull_request) Failing after 4m53s
Build and Test Quality Gate / Python tests and Contract API migration (pull_request) Failing after 24m55s
Security Quality Gate / npm audit, Bandit, pip-audit, detect-secrets (pull_request) Failing after 8m42s
feat: deliver governed contract platform and async AI tasks
2026-08-26 12:53:47 +08:00

5.2 KiB
Raw Permalink Blame History

V2 真实模型接入与受控预发布验收(2026-08-25)

1. 本阶段结论

当前产品可以继续本地开发和已登录管理员验收,但不得开放真实用户自助注册。

系统不把 mock 模型、历史验收记录、草稿政策或本地测试结果包装成当前发布的真实 Provider、法务批准、第三方存证或司法效力证明。真实模型与正式法务材料尚未取得时,统一状态为 blocked_external;这不是研发失败,而是外部放行条件尚未完成。

2. 已实施的失败关闭机制

真实用户注册现在必须同时通过六项检查:

  1. 运行于隔离 staging 或正式 production 环境;
  2. 真实 Provider、模型、备案/登记信息、显式与隐式内容标识的公开披露为 ready;
  3. 当前发布对应的质量样本、Provider 技术验收、具名法务批准及发布绑定全部通过;
  4. 用户协议、隐私政策、服务协议、AI 使用说明四份正式政策全部生效;
  5. SMTP 邮件、身份限流、Redis 强制反滥用均通过运行配置检查;
  6. 发布负责人最后开启部署级注册总开关。

任一条件失败时:

  • GET /api/v1/admin/controlled-pilot/readiness 返回 blocked_external;
  • 匿名注册接口返回 HTTP 503 和 controlled_pilot_registration_blocked;
  • 注册页入口隐藏或保持不可用;
  • 既有管理员、合同起草、审查、Playbook 和试点运营开发不受影响;
  • 平台管理员仍可使用受控的后台建租户/邀请流程进行内部验证。

部署级总开关默认值:

CONTRACT_API_IDENTITY_CONTROLLED_PILOT_REGISTRATION_ENABLED=false
CONTRACT_API_IDENTITY_CONTROLLED_PILOT_PROBE_TIMEOUT_SECONDS=3

禁止在缺少材料时提前把第一项改为 true。即使误改,注册请求仍会实时探测 AI Platform;真实模型披露或 Provider 验收不通过时继续失败关闭。

3. 管理员可见状态

超级管理员进入“管理后台 → AI 模型配置”后,可看到“真实模型接入与受控预发布验收”面板。面板明确区分:

  • 开发可继续:说明当前内部研发不被外部材料阻塞;
  • 真实用户注册:已关闭/可开放:说明匿名自助注册的实时结果;
  • 每一项缺口及来源:系统、Provider、法务、运营、发布;
  • 材料齐备后的固定执行顺序。

该面板读取服务端聚合结果,不在浏览器中自行推断放行状态。

4. 材料取得后的最短操作清单

A. 真实模型材料

只需向技术负责人提供以下内容,密钥不得粘贴到报告或聊天记录:

  • Provider 名称;
  • 模型名称;
  • OpenAI-compatible Base URL;
  • API Key 的服务器密钥文件路径;
  • 目标 release_id 和不可变镜像摘要。

技术负责人配置 Provider 后,必须确认公开 AI 披露页不再显示 mock 或“真实调用未启用”。

B. 生成式 AI 合规材料

  • 运营主体名称;
  • 可核验的备案号或上线登记号(按实际适用项填写,不虚构);
  • 服务提供者编码;
  • 支持邮箱;
  • 显式标识文案;
  • 文件隐式标识生产验收记录;
  • 生成日志留存策略。

C. Provider 验收与法务批准

沿用现有 yuqei-infra/scripts/run-ai-provider-acceptance.py 执行真实调用采集、质量样本检查和最终验收。法务批准必须具名、签名、可验证、未过期,并绑定当前 Provider 配置、模型、发布 ID 与镜像摘要。旧发布或旧镜像的材料不得复用为当前发布证据。

D. 正式公共政策

四份政策完成法务定稿、签名批准和正式发布后,确认 /api/v1/public-policies/current 返回完整四份有效文件;注册同意证据必须记录版本、哈希、发布时间、用户、时间、IP 与 User-Agent。

E. 运行保障与最终放行

先完成 SMTP 实发、身份限流和强制反滥用验收,再确认管理员面板中前五项全部为“已通过”。最后由发布负责人修改:

CONTRACT_API_IDENTITY_CONTROLLED_PILOT_REGISTRATION_ENABLED=true

重启 Contract API 后再次刷新验收面板。只有面板显示 ready_for_controlled_pilot 和“真实用户注册:可开放”,才可开始白名单小流量试点。

5. 回退方法

发现 Provider 异常、验收证据到期、政策撤回、SMTP/Redis 故障或滥用风险时,立即把总开关恢复为 false 并重启 Contract API。实时 AI 探针失败也会自动阻止新的匿名注册,因此关闭开关不依赖前端发布。

已注册租户的暂停、人工接管和异常处理继续由试点运营后台完成;不得通过删除审计记录或覆盖历史材料来“回退”。

6. 本阶段验证

  • 新增受控试点聚合状态模型和平台管理员接口;
  • 新增注册时实时 AI 披露/Provider 验收探针;
  • 新增部署总开关并默认失败关闭;
  • 新增管理员状态面板和缺口解释;
  • 新增 compose 与服务环境变量模板;
  • 更新核心上线门禁,使总开关在 controlled-pilot/production 配置中成为必需项;
  • 针对性后端测试通过;
  • Contract Web TypeScript 类型检查通过。

真实模型调用、真实法务批准、正式政策发布和真实用户注册放行在本阶段均未执行,状态继续保持未完成。