QAOPS8 收敛发布 Runbook

这个提交包含在:
2026-05-13 18:20:16 +08:00
父节点 41375b7569
当前提交 533d360622
@@ -14,7 +14,7 @@ QAOPS8-11,恢复演练方案,"设计恢复演练方案,明确 RTO、RPO、演
QAOPS8-12,SLO 和错误预算,"建立 OA MVP 当前可用性、接口成功率、关键业务流成功率和错误预算口径。","1) SLI、SLO、统计窗口和错误预算清楚;2) 不承诺无法监控的指标;3) 与用户体验和试运行风险对应;4) 违反预算有动作。","流程级验证:rg -n 'SLO|错误预算|SLI|可用性|延迟|成功率' docs/ops/SLO错误预算.md docs/测试规约与回归门禁.md。",rg|manual,DONE,DONE,DONE,docs/ops/SLO错误预算.md|docs/测试规约与回归门禁.md,"[""QAOPS8-1""]",已在 SLO 错误预算文档补 QAOPS8 关键业务流门禁成功率 SLI 和 SLO-D;作为上线门禁口径,不替代正式线上 SLA。
QAOPS8-13,DORA 交付指标基线,"建立部署频率、变更前置时间、变更失败率和恢复时间的轻量采集口径。","1) 四项指标定义清楚;2) 能从 git、Issue、部署记录或事故记录追溯;3) 不为指标牺牲交付质量;4) 只做轻量统计。","流程级验证:rg -n 'DORA|部署频率|前置时间|变更失败率|恢复时间|CFR|MTTR' docs/ops/DORA指标.md docs/开发交付与变更管理规约.md。",rg|manual,DONE,DONE,DONE,docs/ops/DORA指标.md|docs/开发交付与变更管理规约.md,"[""QAOPS8-1""]",已在 DORA 指标文档补部署频率、变更前置时间、变更失败率、服务恢复时间四指标;当前轻量追溯 git、Issue、部署记录和事故记录。
QAOPS8-14,安全发布前检查,"建立发布前安全检查,包括权限、敏感信息、日志、配置、依赖和等保相关底线。","1) 不泄露 token、密码、票据和个人隐私;2) 权限直连审计有证据;3) 日志不记录敏感明文;4) 高风险项进入 Go/No-Go。","流程级验证:node scripts/qa/audit-docs.mjs --check-links;rg -n 'password|token|secret|密钥|权限直连|敏感' docs scripts issues。",node|rg|manual,DONE,DONE,DONE,scripts/qa/audit-docs.mjs|docs|scripts|issues,"[""QAOPS8-9""]",node scripts/qa/audit-docs.mjs --check-links 为 errors=0 warnings=0;全量 audit-docs 为 errors=0 warnings=8;已知 QA 脚本本地测试哨兵值和未登记 docs 作为 Go/No-Go 复核项,不声明等保测评完成。
QAOPS8-15,发布 Runbook 收敛,"把发布前检查、部署步骤、验证步骤、暂停条件和沟通责任收敛到现有 Runbook。","1) 发布步骤可按顺序执行;2) 预检、部署、验证、暂停、回滚边界清楚;3) 不新增冲突文档;4) 用户可审计。","流程级验证:rg -n '发布|预检|部署|验证|暂停|回滚|Runbook' docs/trialrun/发布试运行准备清单.md docs/trialrun/OPS7运维交接Runbook.md docs/试运行与自动化验证手册.md。",rg|manual,TODO,TODO,TODO,docs/trialrun/发布试运行准备清单.md|docs/trialrun/OPS7运维交接Runbook.md|docs/试运行与自动化验证手册.md,"[""QAOPS8-5"",""QAOPS8-6"",""QAOPS8-10""]",参考 safe deployment 思路;生产配置变更前必须再次确认。
QAOPS8-15,发布 Runbook 收敛,"把发布前检查、部署步骤、验证步骤、暂停条件和沟通责任收敛到现有 Runbook。","1) 发布步骤可按顺序执行;2) 预检、部署、验证、暂停、回滚边界清楚;3) 不新增冲突文档;4) 用户可审计。","流程级验证:rg -n '发布|预检|部署|验证|暂停|回滚|Runbook' docs/trialrun/发布试运行准备清单.md docs/trialrun/OPS7运维交接Runbook.md docs/试运行与自动化验证手册.md。",rg|manual,DONE,DONE,DONE,docs/trialrun/发布试运行准备清单.md|docs/trialrun/OPS7运维交接Runbook.md|docs/试运行与自动化验证手册.md,"[""QAOPS8-5"",""QAOPS8-6"",""QAOPS8-10""]",rg 复核通过;发布前检查、部署步骤、部署后验证、暂停条件、回滚边界和责任记录均在现有 Runbook 中;未新增冲突文档。
QAOPS8-16,回滚演练窗口,"确认回滚演练窗口、负责人、触发条件、数据保护和恢复验证步骤。","1) 窗口和负责人确认;2) 回滚脚本或步骤有只读预检;3) 数据保护优先;4) 演练结果可追溯。","流程级验证:人工确认回滚窗口;必要时先在非生产环境执行。",manual,TODO,TODO,TODO,docs/trialrun/OPS7运维交接Runbook.md,"[""QAOPS8-11"",""QAOPS8-15""]",未获确认前不得执行生产回滚演练。
QAOPS8-17,上线 Go No-Go 清单,"建立上线或扩大试运行 Go/No-Go 清单,统一本地、公网匿名、带凭据、企业微信真机和人工验收结论。","1) Go、No-Go、Pause 条件明确;2) 阻断问题为 0 或有明确延期;3) R7E 人工验收不被自动化替代;4) 结论写入 Issue 和报告。","流程级验证:人工核对 R7E 结论、QAOPS8 门禁、发布清单和问题清单。",manual,TODO,TODO,TODO,docs/trialrun/发布试运行准备清单.md|docs/trialrun/人工试运行报告.md|issues/*.csv,"[""QAOPS8-15"",""QAOPS8-16""]",R7E 未完成时不得给正式 Go 结论。
QAOPS8-18,只读审计和排障边界,"明确公网、数据库、日志和 MCP 只读审计边界,避免排障时误写生产或泄露敏感信息。","1) 只读查询边界明确;2) 禁止 INSERT、UPDATE、DELETE;3) 敏感字段脱敏;4) 排障证据只记录摘要和路径。","流程级验证:rg -n 'audit-readonly|只读|INSERT|UPDATE|DELETE|MCP|PostgreSQL' AGENTS.md docs/mcp-tools.md docs/开发交付与变更管理规约.md。",rg|manual,TODO,TODO,TODO,AGENTS.md|docs/mcp-tools.md|docs/开发交付与变更管理规约.md,"[""QAOPS8-14""]",如 docs/mcp-tools.md 不存在则视为 MCP 未启用;当前仅定义边界。
1 ID Title Description Acceptance Test_Method Tools Dev_Status Review1_Status Regression_Status Files Dependencies Notes
14 QAOPS8-12 SLO 和错误预算 建立 OA MVP 当前可用性、接口成功率、关键业务流成功率和错误预算口径。 1) SLI、SLO、统计窗口和错误预算清楚;2) 不承诺无法监控的指标;3) 与用户体验和试运行风险对应;4) 违反预算有动作。 流程级验证:rg -n 'SLO|错误预算|SLI|可用性|延迟|成功率' docs/ops/SLO错误预算.md docs/测试规约与回归门禁.md。 rg|manual DONE DONE DONE docs/ops/SLO错误预算.md|docs/测试规约与回归门禁.md ["QAOPS8-1"] 已在 SLO 错误预算文档补 QAOPS8 关键业务流门禁成功率 SLI 和 SLO-D;作为上线门禁口径,不替代正式线上 SLA。
15 QAOPS8-13 DORA 交付指标基线 建立部署频率、变更前置时间、变更失败率和恢复时间的轻量采集口径。 1) 四项指标定义清楚;2) 能从 git、Issue、部署记录或事故记录追溯;3) 不为指标牺牲交付质量;4) 只做轻量统计。 流程级验证:rg -n 'DORA|部署频率|前置时间|变更失败率|恢复时间|CFR|MTTR' docs/ops/DORA指标.md docs/开发交付与变更管理规约.md。 rg|manual DONE DONE DONE docs/ops/DORA指标.md|docs/开发交付与变更管理规约.md ["QAOPS8-1"] 已在 DORA 指标文档补部署频率、变更前置时间、变更失败率、服务恢复时间四指标;当前轻量追溯 git、Issue、部署记录和事故记录。
16 QAOPS8-14 安全发布前检查 建立发布前安全检查,包括权限、敏感信息、日志、配置、依赖和等保相关底线。 1) 不泄露 token、密码、票据和个人隐私;2) 权限直连审计有证据;3) 日志不记录敏感明文;4) 高风险项进入 Go/No-Go。 流程级验证:node scripts/qa/audit-docs.mjs --check-links;rg -n 'password|token|secret|密钥|权限直连|敏感' docs scripts issues。 node|rg|manual DONE DONE DONE scripts/qa/audit-docs.mjs|docs|scripts|issues ["QAOPS8-9"] node scripts/qa/audit-docs.mjs --check-links 为 errors=0 warnings=0;全量 audit-docs 为 errors=0 warnings=8;已知 QA 脚本本地测试哨兵值和未登记 docs 作为 Go/No-Go 复核项,不声明等保测评完成。
17 QAOPS8-15 发布 Runbook 收敛 把发布前检查、部署步骤、验证步骤、暂停条件和沟通责任收敛到现有 Runbook。 1) 发布步骤可按顺序执行;2) 预检、部署、验证、暂停、回滚边界清楚;3) 不新增冲突文档;4) 用户可审计。 流程级验证:rg -n '发布|预检|部署|验证|暂停|回滚|Runbook' docs/trialrun/发布试运行准备清单.md docs/trialrun/OPS7运维交接Runbook.md docs/试运行与自动化验证手册.md。 rg|manual TODO DONE TODO DONE TODO DONE docs/trialrun/发布试运行准备清单.md|docs/trialrun/OPS7运维交接Runbook.md|docs/试运行与自动化验证手册.md ["QAOPS8-5","QAOPS8-6","QAOPS8-10"] 参考 safe deployment 思路;生产配置变更前必须再次确认。 rg 复核通过;发布前检查、部署步骤、部署后验证、暂停条件、回滚边界和责任记录均在现有 Runbook 中;未新增冲突文档。
18 QAOPS8-16 回滚演练窗口 确认回滚演练窗口、负责人、触发条件、数据保护和恢复验证步骤。 1) 窗口和负责人确认;2) 回滚脚本或步骤有只读预检;3) 数据保护优先;4) 演练结果可追溯。 流程级验证:人工确认回滚窗口;必要时先在非生产环境执行。 manual TODO TODO TODO docs/trialrun/OPS7运维交接Runbook.md ["QAOPS8-11","QAOPS8-15"] 未获确认前不得执行生产回滚演练。
19 QAOPS8-17 上线 Go No-Go 清单 建立上线或扩大试运行 Go/No-Go 清单,统一本地、公网匿名、带凭据、企业微信真机和人工验收结论。 1) Go、No-Go、Pause 条件明确;2) 阻断问题为 0 或有明确延期;3) R7E 人工验收不被自动化替代;4) 结论写入 Issue 和报告。 流程级验证:人工核对 R7E 结论、QAOPS8 门禁、发布清单和问题清单。 manual TODO TODO TODO docs/trialrun/发布试运行准备清单.md|docs/trialrun/人工试运行报告.md|issues/*.csv ["QAOPS8-15","QAOPS8-16"] R7E 未完成时不得给正式 Go 结论。
20 QAOPS8-18 只读审计和排障边界 明确公网、数据库、日志和 MCP 只读审计边界,避免排障时误写生产或泄露敏感信息。 1) 只读查询边界明确;2) 禁止 INSERT、UPDATE、DELETE;3) 敏感字段脱敏;4) 排障证据只记录摘要和路径。 流程级验证:rg -n 'audit-readonly|只读|INSERT|UPDATE|DELETE|MCP|PostgreSQL' AGENTS.md docs/mcp-tools.md docs/开发交付与变更管理规约.md。 rg|manual TODO TODO TODO AGENTS.md|docs/mcp-tools.md|docs/开发交付与变更管理规约.md ["QAOPS8-14"] 如 docs/mcp-tools.md 不存在则视为 MCP 未启用;当前仅定义边界。