Files
ai-contract-platform/project-docs/V2-operations-launch-readiness-2026-07-13.md
T
yuqei 7bc74f06f2
Build and Test Quality Gate / Contract Web typecheck and build (pull_request) Successful in 6m47s
Build and Test Quality Gate / Python tests and Contract API migration (pull_request) Failing after 42m10s
Security Quality Gate / npm audit, Bandit, pip-audit, detect-secrets (pull_request) Failing after 16m59s
release: freeze V2 production candidate
2026-07-20 18:39:27 +08:00

12 KiB
Raw Blame History

AI 合同平台 V2 运营上线评估

日期:2026-07-13 最新更新:2026-07-16

结论

  • 内部 UAT / 受控单租户试点:可以进入。 当前候选版本已部署到 192.168.3.90 smoke,并通过远端身份边界、核心页面、资产计数、schema-check 和 Docker smoke 验证。
  • 公开多企业 SaaS 生产:当前 No-Go。 无企业邮箱已通过“管理员线下开通”规避,不再是当前阻断项;剩余阻断项是真实 AI Provider 评估、内容法务签批、生产运行保障,以及不可变 RC/CI。
  • 不建议继续横向增加模板数量。下一阶段应优先完成内容治理、真实模型质量评估和生产运行保障。

当前能力

领域 当前状态 运营判断
合同模板 V1 / 打包资产 / smoke 运行时均为 30,30 个模板可全量生成 数量和工程完整性达标,外部商用前仍需法务签批
标准条款 / 审查规则 8 / 8,具备草稿、校验、发布、下线、回滚和推荐闭环 可试点,需要明确业务负责人和复审周期
Prompt V1 / 打包资产 / smoke 已发布资产均为 46 资产齐套;本轮已修正法律问答和行业审查 Prompt 选择,但尚未在真实模型上验收
法律全文库 smoke 运行时 789,867 条,已有版本表和法规影响扫描 规模达标;重点转为时效性、来源、失效标记和抽样准确性
合同主链路 起草、审批、审查、条款修复、版本、归档、Word/PDF 报告、文件仓库已闭环 可进入 UAT
租户与账号 登录、管理员建租户、线下一次性邀请、SMTP、验证码多维限流和管理页已具备 首发关闭公开注册/找回/邮箱验证;无邮箱模式已通过远端 smoke,SSO 仅有配置存储
AI 运行 smoke Provider 调用关闭并启用 fallback 只能验证工程链路,不能作为生产 AI 质量证据

资产精确核对证据:

  • project-docs/qa-artifacts/v2-asset-count/v2-asset-count-2026-07-13T05-33-30.778054+00-00.json
  • 模板:30 / 30 / 30
  • 标准条款:8 / 8 / 8
  • 审查规则:8 / 8 / 8
  • Prompt:46 / 46 / 46

本轮安全硬化

本轮代码和远端 smoke 已完成:

  1. Web 会话从可篡改的 Base64 JSON 改为带有效期的 HMAC 签名 cookie,并启用 HttpOnly、SameSite=Lax 和生产 Secure。
  2. Contract API 不再在生产环境无条件信任 X-Tenant-Id / X-User-Id,由受控 Web 代理密钥建立信任边界。
  3. 身份管理接口锁定当前租户,普通租户不能通过 tenant_id 查询参数访问其他企业。
  4. AI Platform 增加服务密钥;33 个 Web AI 代理路由统一从签名会话注入租户和用户身份。
  5. Contract API、审查 worker 和 Python SDK 支持向 AI Platform 传递服务密钥。
  6. 生产响应不再返回邀请原始 token 和邮箱开发验证码。
  7. 新增 SMTP 验证码/密码重置/邀请邮件交付,登录与密码重置统一防枚举响应。
  8. 验证码增加邮箱、IP、租户限流、重发冷却和可持久化的 5 次失败锁定。
  9. AI 管理代理增加服务端角色校验,普通已登录用户不能直接访问模型、Prompt、runtime、知识库、质量和 Trace 管理接口。

20260713_0031 身份安全迁移和无邮箱模式已通过本地回归、远端 PostgreSQL smoke 和接口实测。

远端验证证据

2026-07-16 最新候选:

  • Docker smoke:project-docs/qa-artifacts/v2-smoke-docker-deploy/2026-07-16T11-12-47,全部必选检查通过。
  • 发布质量门:project-docs/qa-artifacts/v2-release-quality-gate/2026-07-16T11-18-52,Contract API schema 为 20260713_0031 (head),AI Platform 仅保留允许的 provider_runtime warning。
  • 无邮箱身份闭环:公开注册、密码重置、邮箱验证均为 403;管理员登录、线下邀请、员工设密、员工登录均为 200;数据库邀请状态为 manual|accepted。
  • 接口压测:7 个场景错误数均为 0;合同列表 p95 95.54ms,统一搜索 p95 133.27ms,AI Trace p95 402.13ms。
  • 本地门禁:Contract API 全量测试、AI Platform API 测试、worker 测试、Python SDK 测试、前端 production build 全部通过;npm audit、pip-audit、Bandit、tracked-source secret scan 均为 0 新问题。
  • 远端根卷使用率约 85%,剩余约 29GB;生产切流前必须配置磁盘告警和镜像/日志清理策略。

此前 2026-07-13 基线证据:

  • Docker smoke:project-docs/qa-artifacts/v2-smoke-docker-deploy/2026-07-13T13-18-14/v2-smoke-docker-deploy-summary.md,8 个长期服务健康,迁移、Prompt 导入、黄金样本和审查 worker smoke 通过。
  • 鉴权边界:Contract API 与 AI Platform 数据接口缺失或使用错误服务密钥时返回 401,使用当前 smoke 服务密钥时返回 200;健康端点保持可用。
  • Schema:Contract API status=ok,Alembic 20260710_0030;AI Platform Alembic 20260703_0021,仅 provider_runtime=warning,原因是 smoke 明确关闭真实 Provider 并启用 fallback。
  • Web 登录:admin@example.com 可进入默认租户;合同台账显示 12,129 条,模板库和模板起草入口均显示 30 个模板,文件仓库、AI Trace、用户租户页均正常加载。
  • SSR 认证回归:修复了认证硬化后 Server Component 裸请求 Contract API 导致合同和模板页面错误显示为 0 的问题;服务端缓存键已纳入租户、用户和角色,浏览器端继续只访问同源代理。
  • Word 交付:抽样合同下载返回 HT-20260713-70C052.docx,MIME 为 Office Open XML,解码后 37,502 字节且 DOCX 文件头有效。
  • 资产精确核对:模板 30 / 30 / 30、条款 8 / 8 / 8、规则 8 / 8 / 8、Prompt 46 / 46 / 46,法律条文运行时 789,867 条。
  • 法律问答工程链路可用,但 smoke fallback 抽样的引用相关性不足,不能作为生产 AI 质量证据;必须在真实 Provider、fallback 关闭后重新验收。
  • PR 旧提交 5f89c112 的 CI 失败来自 Linux detect-secrets 对 SDK 测试固定假值的单个平台差异误报;已使用标准 inline allowlist 标记,安全规则本身未放宽。提交 6abca4eb 的 npm audit、Bandit、pip-audit 和 Linux detect-secrets 已全部通过。
  • 最新发布质量门:project-docs/qa-artifacts/v2-release-quality-gate/2026-07-13T14-03-15。7 个场景各 60 次请求、并发 6、错误率均为 0%;合同列表 p95 199.31 ms,知识库混合检索 p95 66.74 ms。

生产阻断项

P0-1 远端验证已完成,RC 冻结待完成

  • 部署当前代码到 192.168.3.90 smoke。
  • 验证无代理密钥直连 Contract API / AI Platform 数据接口返回 401。
  • 验证 Web 登录后合同、模板、文件、AI Trace、知识库均正常。
  • 复跑两套 schema-check、资产精确核对和 Docker smoke。
  • 将当前 dirty worktree 固化为不可变提交/RC tag,并让新增 build-test、security、release 三套 CI 对该提交实际全绿。

P0-2 真实 AI Provider 与质量验收

  • 配置可用 Provider、base URL 和 secret ref。
  • AI_PLATFORM_PROVIDER_CALL_MODE=enabled。
  • AI_PLATFORM_PROVIDER_FALLBACK_ENABLED=false。
  • 用真实模型复跑 generation / review / legal QA / clause recommendation 黄金样本。
  • 每个高风险模板至少由法务抽样一次,检查风险命中、引用准确、建议可执行和幻觉。

P0-3 身份与账号安全

  • 代码已接入 SMTP,覆盖验证码、密码重置和邀请链接。
  • 已增加验证码失败锁定、重发冷却、邮箱/IP/租户限流和通用防枚举响应。
  • production runtime config 支持 SMTP 或显式的管理员线下开通模式,并继续要求独立限流 secret。
  • 无邮箱首发关闭公开注册、密码重置、邮箱验证;租户管理员可线下交付一次性邀请链接。
  • 增加幂等的生产平台管理员 bootstrap;密码从标准输入/只读文件读取,轮换需显式确认。
  • 在 192.168.3.90 smoke 运行迁移 20260713_0031,完成管理员登录、线下邀请、员工设密登录实测。
  • 确认反向代理覆盖客户端伪造的 X-Forwarded-For。
  • SMTP 实发和失败告警推迟到企业邮箱具备后,不阻塞当前受控首发,但启用邮件前必须单独验收。
  • SSO 未实现实际 SAML/OIDC 发起、回调和账号绑定。生产首发可禁用 SSO,但不能对外宣称已支持。

实现与 smoke 验收步骤见 project-docs/V2-production-identity-email-security-2026-07-13.md。

P0-4 内容法务签批

30 个模板不需要继续扩容,需补齐运营治理信息:

  • 内容负责人和法务审批人。
  • 审批日期、生效版本、适用法域、最近复审日期。
  • 关键法律依据及其有效性。
  • 高风险模板至少覆盖劳动、股权转让、投资、对赌、股东会决议。
  • 条款、规则和 Prompt 同样需要 owner、发布审批和回滚责任人。

P0-5 生产运行保障

  • 正式域名 HTTPS、反向代理、CORS 和后端端口暴露策略确认。
  • 生产 secrets 与 smoke secrets 完全隔离。
  • PostgreSQL、文件仓库备份恢复和应用回滚再演练一次。
  • API 错误率、p95/p99、数据库连接、worker 心跳、AI 失败率和备份结果接入告警。
  • 明确隐私政策、数据保留期、客户数据删除流程和人工支持责任人。
  • yuqei-infra/backup、observability、nginx、deploy 已补 production compose、HTTPS edge、严格 preflight、基础设施备份/恢复校验和最小健康告警脚本;当前仅本地实现并通过脚本测试,尚未在 3.90 production 环境以真实域名、异地挂载和 digest 镜像部署演练。应用级 backup API 仍不能替代该基础设施闭环。
  • smoke 使用 staging + seed_demo_data=true,其中有 12,000+ 合同和测试账号,不能直接改名作为生产库。应保留独立 smoke 库,并建立唯一的生产权威库及数据库注册记录。

模板与 Prompt 优化策略

模板

工程质量门已覆盖变量完整性、正文生成和格式,不再以“再加模板”作为上线进度。上线前重点是:

  • 删除业务不理解、重复或无法可靠填写的变量。
  • 对必填字段提供明确业务名称和填写约束。
  • 用真实业务样本检查生成正文,而不是只检查能否生成。
  • 对高风险模板建立季度或法规变更触发复审。

Prompt

46 个 Prompt 已齐套,当前不建议继续堆数量。下一步应建立真实模型评估矩阵:

  • 任务:合同生成、审查、法律问答、条款推荐。
  • 指标:引用准确率、风险召回率、误报率、建议可执行率、结构化输出成功率、成本和延迟。
  • 分层:合同类型、风险等级、文本长度、是否有知识库依据。
  • 每次 Prompt 发布必须记录评估结果、审批人和回滚版本。

上线决策门

满足以下条件后,才建议创建新的不可变 RC tag 并进入生产发布审批:

  1. 本轮代码已形成不可变提交/RC tag,新建 build-test CI、security CI 和 release gate 全绿。
  2. 真实 AI Provider 黄金样本通过,fallback 关闭。
  3. 无邮箱模式在 smoke 完成管理员建租户、线下邀请、员工设密登录,公开自助入口保持关闭;未来启用 SMTP 时另行验收。
  4. 30 个模板和关键 Prompt 有具名法务签批记录。
  5. 安全扫描、接口压测、备份恢复、回滚和监控告警均有最新证据。

生产基础设施和 Provider 验收实现说明见 project-docs/V2-production-infrastructure-provider-acceptance-2026-07-16.md。

在这些条件完成前,系统可以用于内部验收和受控试点,但不应开放公开多企业注册和正式付费承诺。