docs(GOV-012): 更新纯 Node Schema 基线规范
This commit is contained in:
@@ -34,7 +34,7 @@ format v3 使用独立字段记录 Node 导出器名称、导出器版本、数
|
||||
|
||||
例程、触发器和事件使用稳定 `DELIMITER`。标识符只能来自元数据,并统一转义反引号。导出结果删除 `DEFINER`、当前 `AUTO_INCREMENT` 值、时间、主机、用户名和客户端噪声;同一结构必须产生逐字节一致结果。
|
||||
|
||||
## 4. 完整性与安全
|
||||
## 4. 安全策略与评估
|
||||
|
||||
导出前后分别计算对象摘要,包含对象类型、名称、依赖和定义可观察版本;摘要不一致表示并发 DDL,命令失败。任何对象无法 `SHOW CREATE`、结果为空或类型未知时禁止跳过。
|
||||
|
||||
@@ -42,15 +42,15 @@ format v3 使用独立字段记录 Node 导出器名称、导出器版本、数
|
||||
|
||||
现有 SQL 安全扫描继续拒绝顶层数据操作、连接串、疑似凭据和残留 `DEFINER`;对象体内部合法 DML 通过分隔符解析保留。
|
||||
|
||||
## 5. 性能与异常恢复
|
||||
## 5. 性能目标与评估
|
||||
|
||||
Schema 备份不在在线请求路径。使用单连接和有限并发,目标中小型开发库 30 秒内完成;连接、查询、总时长、对象数量或响应大小超过保护值时失败。
|
||||
|
||||
产物先写入版本父目录中的临时目录,经过 SQL 扫描、对象计数、manifest 和 SHA-256 一致性校验后原子重命名。失败时删除临时目录,既有版本目录禁止覆盖。
|
||||
|
||||
## 6. 实施迁移
|
||||
## 6. 异常恢复与实施迁移
|
||||
|
||||
GOV-012 因缺少 `v0.0.9` 基线使用用户授权的一次性人工启动记录。实现通过后立即运行新导出器生成并推送 `v0.0.9` 基线,再重新执行自动 `governance:start`,证明后续开发不再依赖本机 MySQL CLI。
|
||||
GOV-012 因缺少 `v0.0.9` 基线使用用户授权的一次性人工启动记录。实现通过后已使用 development 配置连接 MySQL 5.7.x,生成并推送 `v0.0.9` format v3 `captured_empty` 基线;随后重新执行自动 `governance:start`,证明后续开发不再依赖本机 MySQL CLI。MySQL 5.7.x 缺少 `VIEW_TABLE_USAGE` 时,导出器回退读取 `information_schema.VIEWS`,其余查询错误不降级。
|
||||
|
||||
## 7. 依赖评估
|
||||
|
||||
|
||||
@@ -25,8 +25,13 @@
|
||||
- 当前为空时生成 `captured_empty`;发现实际对象时生成完整 `captured`,不得按预期强制为空。
|
||||
- 运行 `schema:verify`、治理测试、格式、lint、类型检查和完整仓库验证。
|
||||
|
||||
## 安全与性能
|
||||
## 安全验证
|
||||
|
||||
- 证明没有子进程数据库客户端调用、业务表数据查询、生产配置读取或多语句执行。
|
||||
- 固定夹具验证对象数量、响应大小、查询和总时长保护。
|
||||
- 残余风险包括真实库权限差异和并发 DDL;通过失败关闭、摘要复核和人工重跑控制。
|
||||
|
||||
## 性能验证
|
||||
|
||||
- 假连接验证单连接、5 秒查询超时、30 秒总时长、5,000 对象和 1 MiB 单定义限制;真实开发库记录导出状态和耗时,不记录 SQL 或凭据。
|
||||
- 本功能是低频治理命令,不在 API 请求路径,也不承载在线行情吞吐;因此不执行业务负载压测,边界是版本基线生成和验证命令本身。
|
||||
|
||||
Reference in New Issue
Block a user