docs(GOV-011): 完成系列版本验证与审查

This commit is contained in:
2026-08-17 17:50:58 +08:00
parent cce77aa884
commit 7478a96bdc
16 changed files with 418 additions and 6 deletions
@@ -0,0 +1,58 @@
# GOV-011 测试计划
- 功能编号:GOV-011
- 验证环境:Node.js 22.11.0、pnpm 10.25.0、macOS 开发机
- 数据库边界:不连接、探测或读取生产数据库;本次不执行真实 Schema 导出
## 1. Node.js 系列验证
- 接受 `22.0.0`、`22.11.0` 和带预发布/构建后缀的合法 22.x。
- 拒绝 21.x、23.x、空字符串、`v22` 和其他无法解析格式。
- pnpm 继续只接受 10.x,不因 Node 约束调整而放宽。
## 2. Schema 元数据验证
- 接受 MySQL 服务端 `5.7.0`、`5.7.41`、`5.7.42-log`。
- 拒绝 `5.6.51`、`8.0.40`、`5.7`、`5.7.x` 和空字符串。
- mysql 与 mysqldump 客户端继续要求合法 5.7.x。
- 服务端版本通过后,字符集仍必须为 `utf8mb4`,排序规则仍必须为 `utf8mb4_general_ci`。
- 回归 captured、captured_empty、not_applicable、历史 manifest、生成入口和发布门禁调用链。
- 因用户授权的 v0.0.8 基线一次性例外,严格发布基线用例预期只在目录缺失处失败;使用 `--test-skip-pattern='严格发布门禁'` 验证其余 28 项全部通过。
## 3. API 健康检查验证
- `5.7.41-log` 返回 `MySQL 5.7.41 / <数据库> / +08:00`,证明 patch 来自服务端元数据而非硬编码。
- 拒绝 5.6.x、8.x 和无效版本格式。
- 拒绝错误库名、`utf8`、`utf8mb4_0900_ai_ci` 和 `SYSTEM` 时区。
- 保持固定只读元数据查询、健康 DTO 结构和生产库名按当前配置校验。
- 执行 Server 全量测试、类型检查和 API/Scheduler/Worker 三进程构建。
## 4. 规范与部署验证
- 当前系统架构、代码开发规范、本地开发和 Ubuntu 源码部署文档必须写明 `MySQL 5.7.x`。
- 上述四份当前文档不得再出现 `MySQL 5.7.42`;历史 QA、Schema 清单、CHANGELOG 历史版本和已发布功能档案不参与该否定扫描。
- Node.js 22.x、pnpm 10.25.0、Ubuntu 源码部署、systemd、Nginx、Redis 和 RocketMQ 约束保持不变。
## 安全验证
- 版本字符串仅进入固定正则,不执行命令、不拼接 SQL。
- MySQL 健康错误不回显服务端原始附加文本、连接地址、账号或密码。
- Schema 测试使用固定夹具和依赖注入,不连接真实数据库;本功能不执行 `schema:baseline`。
- `pnpm audit --prod --registry=https://registry.npmjs.org/` 必须为 0 已知漏洞。
- 扫描 Web/Server 构建产物中的凭据模式;配置键名允许存在,真实值、连接串和授权头不得存在。
- `git diff --check`、GitNexus detect-changes 和 Review 核对没有生产数据、真实 `.env` 或凭据进入提交。
## 性能验证
- 版本解析为启动/治理阶段常数时间正则匹配,不增加数据库查询、网络调用、重试、缓存或消息操作。
- 健康检查继续只执行一次既有元数据查询,连接池上限仍为 2。
- Web 页面和依赖未变化,生产 JS/CSS 体积应与 v0.0.8 基线一致。
- 本功能不改变行情计算、数据库扫描、Redis 热点、RocketMQ 吞吐、Worker 并发或图表渲染,因此不执行负载测试;后续触及这些路径的业务功能必须重新设定性能目标。
## 7. 全量与视觉验证
- 执行 runtime、governance、MySQL、环境、Schema、契约、边界、部署、Web 和 Server 测试。
- 执行 OpenAPI 重新生成、lint、格式、类型检查、Web/Server 构建和源码发布验证。
- Playwright 在 Chromium 1440×900 与 390×844 下验证页面、同源健康 API、横向溢出和控制台。
- 保存桌面/移动截图并人工检查无重叠、裁切或空白渲染回归。
- 真实执行 `pnpm verify:release`、`pnpm schema:verify` 和 `pnpm governance:finish GOV-011 runtime-version-series`;三者因同一个已授权 v0.0.8 基线缺失条件失败,必须保存失败证据并手工执行其余等价门禁。