57fc8d350b
Security Quality Gate / npm audit, Bandit, pip-audit, detect-secrets (pull_request) Successful in 11m32s
8.5 KiB
8.5 KiB
AI 合同平台 V2 运营上线评估
日期:2026-07-13
结论
- 内部 UAT / 受控单租户试点:可以进入。 当前候选版本已部署到
192.168.3.90smoke,并通过远端身份边界、核心页面、资产计数、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 已完成:
- Web 会话从可篡改的 Base64 JSON 改为带有效期的 HMAC 签名 cookie,并启用
HttpOnly、SameSite=Lax和生产Secure。 - Contract API 不再在生产环境无条件信任
X-Tenant-Id/X-User-Id,由受控 Web 代理密钥建立信任边界。 - 身份管理接口锁定当前租户,普通租户不能通过
tenant_id查询参数访问其他企业。 - AI Platform 增加服务密钥;33 个 Web AI 代理路由统一从签名会话注入租户和用户身份。
- Contract API、审查 worker 和 Python SDK 支持向 AI Platform 传递服务密钥。
- 生产响应不再返回邀请原始 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,Alembic20260710_0030;AI Platform Alembic20260703_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、Prompt46 / 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%;合同列表 p95199.31 ms,知识库混合检索 p9566.74 ms。
生产阻断项
P0-1 远端发布候选验证(已完成)
- 部署当前代码到
192.168.3.90smoke。 - 验证无代理密钥直连 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 并进入生产发布审批:
- 本轮身份 / AI 服务鉴权代码已提交、CI 全绿并完成远端 smoke。
- 真实 AI Provider 黄金样本通过,fallback 关闭。
- 真实邮件发送、限流和防枚举回归通过。
- 30 个模板和关键 Prompt 有具名法务签批记录。
- 安全扫描、接口压测、备份恢复、回滚和监控告警均有最新证据。
在这些条件完成前,系统可以用于内部验收和受控试点,但不应开放公开多企业注册和正式付费承诺。