a3bb78e06b
Security Quality Gate / npm audit, Bandit, pip-audit, detect-secrets (pull_request) Failing after 16m35s
3.5 KiB
3.5 KiB
AI 合同平台 V2 Phase 7 运维收口清单
日期:2026-06-26
结论
我已经通读当前主线文档、阶段闭环记录、ADR、infra 说明和品牌文档。整体判断是:
- 产品定位已经稳定为
钰麒合同的企业合同起草与审阅工作台。 - Phase 5 企业协作已完成。
- Phase 6 合同仓库与生命周期已完成。
- Phase 7 核心安全功能已完成:租户隔离、审计完整性、数据备份、错误监控、权限矩阵。
- 剩余收口项属于运维层面,顺序应为:
- 性能压测
- 安全扫描
- 部署文档
当前基线
- 架构边界已固定为:
yuqei-contract-platformyuqei-ai-platformyuqei-ai-sdk-pythonyuqei-infra
- 本地与烟雾部署底座已存在:
yuqei-infra/compose/docker-compose.ymlyuqei-infra/scripts/verify-v2-runtime.ps1yuqei-infra/scripts/verify-contract-review-worker-flow.ps1yuqei-infra/scripts/deploy-v2-smoke-docker.ps1
- 性能文档已经有索引基线、EXPLAIN 基线和查询目标,但还缺一份面向交付的压测结果汇总。
- 安全文档已经有完整功能闭环,但还缺一层自动化扫描与结果归档。
- 部署说明已分散在 README、脚本和闭环记录里,但还没收成一份可交付 runbook。
1. 性能压测
范围
- 只测 V2 主流程和高频管理路径。
- 不把 AI 长任务混进常规 API 基线。
- 优先覆盖:
- 工作台
- 合同列表
- 合同详情
- 审批待办
- 统一搜索
- AI Trace 列表
- 知识库检索
建议产物
- 基线环境说明
- 压测方法说明
- 关键接口结果表
- p50 / p95 / p99
- RPS
- 错误率
- 冷启动与热缓存对比
- 结论与回归阈值
验收标准
- 能明确写出“在哪个环境、用什么数据量、跑了什么流量模型”。
- 每个关键接口都有可复现结果。
- 结果能对应到当前架构边界,不混入旧 V1 路径。
- 对照开发方案中的性能目标,给出是否达标和差距原因。
2. 安全扫描
范围
- Python 代码安全扫描。
- 前端依赖与脚本依赖扫描。
- 密钥/敏感信息泄漏扫描。
- 容器镜像基础漏洞扫描。
- 生产配置检查。
建议产物
- 扫描命令清单
- 扫描结果摘要
- 高危/中危问题列表
- 处置状态
- 允许保留项说明
验收标准
- 扫描命令可在仓库根目录复跑。
- 高危问题要么为 0,要么有明确豁免说明。
- 配置中的生产危险项可被定位并解释。
- 扫描结果能进入交付文档,不只是本地输出。
3. 部署文档
范围
- 本地启动。
- 烟雾环境部署。
- 生产环境变量。
- 数据库迁移顺序。
- 健康检查。
- 回滚和恢复入口。
建议产物
- 一份单独的部署 runbook
- 一份环境变量模板说明
- 一份验证命令表
- 一份回滚说明
- 一份备份恢复说明
验收标准
- 新人按文档能从空库启动到可访问页面。
- 能清楚看到:
- 先迁移什么
- 后启动什么
- 如何验证
- 失败了怎么回滚
- 文档里的命令与当前脚本一致,不再出现口径分裂。
推荐执行顺序
- 先做性能压测基线,锁定当前可交付性能口径。
- 再做安全扫描,把明显风险补掉。
- 最后整理部署文档,把前两步的结论固化成交付说明。
已生成产物
project-docs/V2-performance-baseline-2026-06-26.mdproject-docs/V2-security-scan-2026-06-26.mdproject-docs/V2-deploy-runbook-2026-06-26.md