Files
ai-contract-platform/project-docs/V2-operations-launch-readiness-2026-07-13.md
T
yuqei 57fc8d350b
Security Quality Gate / npm audit, Bandit, pip-audit, detect-secrets (pull_request) Successful in 11m32s
ci: authenticate release quality gate
2026-07-13 14:06:05 +08:00

8.5 KiB
Raw Blame History

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

日期:2026-07-13

结论

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

当前能力

领域 当前状态 运营判断
合同模板 V1 / 打包资产 / smoke 运行时均为 30,30 个模板可全量生成 数量和工程完整性达标,外部商用前仍需法务签批
标准条款 / 审查规则 8 / 8,具备草稿、校验、发布、下线、回滚和推荐闭环 可试点,需要明确业务负责人和复审周期
Prompt V1 / 打包资产 / smoke 已发布资产均为 46 资产齐套;本轮已修正法律问答和行业审查 Prompt 选择,但尚未在真实模型上验收
法律全文库 smoke 运行时 789,867 条,已有版本表和法规影响扫描 规模达标;重点转为时效性、来源、失效标记和抽样准确性
合同主链路 起草、审批、审查、条款修复、版本、归档、Word/PDF 报告、文件仓库已闭环 可进入 UAT
租户与账号 注册公司、邀请、登录、密码重置和管理页已具备 邮件仍是开发交付模式;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 和邮箱开发验证码。

这些变更已通过本地测试、生产构建和远端 smoke 验证。

远端验证证据

  • 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 远端发布候选验证(已完成)

  • 部署当前代码到 192.168.3.90 smoke。
  • 验证无代理密钥直连 Contract API / AI Platform 数据接口返回 401。
  • 验证 Web 登录后合同、模板、文件、AI Trace、知识库均正常。
  • 复跑两套 schema-check、资产精确核对和 Docker smoke。
  • 当前提交 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 邮件与账号安全

  • 接入真实邮件服务,发送验证码、密码重置和邀请链接。
  • 增加验证码错误次数、发送频率、IP / 账号限流和通用防枚举响应。
  • 当前 runtime config 在 production 会明确报错 identity_email_delivery,不能通过改一个布尔配置假装完成。
  • SSO 未实现实际 SAML/OIDC 发起、回调和账号绑定。生产首发可禁用 SSO,但不能对外宣称已支持。

P0-4 内容法务签批

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

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

P0-5 生产运行保障

  • 正式域名 HTTPS、反向代理、CORS 和后端端口暴露策略确认。
  • 生产 secrets 与 smoke secrets 完全隔离。
  • PostgreSQL、文件仓库备份恢复和应用回滚再演练一次。
  • API 错误率、p95/p99、数据库连接、worker 心跳、AI 失败率和备份结果接入告警。
  • 明确隐私政策、数据保留期、客户数据删除流程和人工支持责任人。

模板与 Prompt 优化策略

模板

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

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

Prompt

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

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

上线决策门

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

  1. 本轮身份 / AI 服务鉴权代码已提交、CI 全绿并完成远端 smoke。
  2. 真实 AI Provider 黄金样本通过,fallback 关闭。
  3. 真实邮件发送、限流和防枚举回归通过。
  4. 30 个模板和关键 Prompt 有具名法务签批记录。
  5. 安全扫描、接口压测、备份恢复、回滚和监控告警均有最新证据。

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