当版本要发布了、需要决定"能不能发"、或者需要设计灰度/回滚方案时使用此技能。系统化评估变更风险(变更范围/影响面/回退成本),设计灰度发布策略(按用户/区域/流量比例),制定回滚方案和线上监控计划。不要问"这个版本稳不稳"——要问"如果出问题了,我们能在几分钟内发现并回滚"。产出发布风险评估报告和灰度发布方案。 触发场景:发布风险、灰度策略、回滚方案、风险评估、版本发布、紧急发布、大版本发布前风险评估时。 Use when the user asks about: release readiness assessment — canary rollout, rollback planning, release risk evaluation, and production monitoring thresholds.
---
name: qa-release-risk-governance
description: >-
当版本要发布了、需要决定"能不能发"、或者需要设计灰度/回滚方案时使用此技能。系统化评估变更风险(变更范围/影响面/回退成本),设计灰度发布策略(按用户/区域/流量比例),制定回滚方案和线上监控计划。不要问"这个版本稳不稳"——要问"如果出问题了,我们能在几分钟内发现并回滚"。产出发布风险评估报告和灰度发布方案。 触发场景:发布风险、灰度策略、回滚方案、风险评估、版本发布、紧急发布、大版本发布前风险评估时。 Use when the user asks about: release readiness assessment — canary rollout, rollback planning, release risk evaluation, and production monitoring thresholds.
license: MIT
allowed-tools: Read Grep Glob
metadata:
display-name: "Release Risk Governance"
version: "1.8.0"
when-to-use: "用户说\"发布风险\"、\"灰度策略\"、\"回滚方案\"、\"风险评估\"、\"版本发布\"、\"紧急发布\"、需要评估发布风险、大版本发布前风险评估时"
related-skills: "{\"upstream\":[\"qa-test-strategy-design\",\"qa-risk-intuition\"],\"downstream\":[\"qa-quality-metrics\",\"qa-shift-right\",\"qa-stakeholder-communication\"]}"
references: "[\"references/canary-rollout.md\"]"
input-format: "{\"required\":[{\"name\":\"测试策略\",\"type\":\"object\",\"description\":\"来自qa-test-strategy-design的测试策略\"},{\"name\":\"风险评估\",\"type\":\"object\",\"description\":\"来自qa-risk-intuition的风险评估\"},{\"name\":\"发布计划\",\"type\":\"string\",\"description\":\"发布时间线和范围\"}],\"optional\":[{\"name\":\"质量度量\",\"type\":\"object\",\"description\":\"来自qa-quality-metrics的质量数据\"}]}"
output-format: "{\"traceability\":[\"每次发布评估带唯一ID(REL-XXXX)\"],\"structure\":[{\"release_decision\":\"发布决策建议\"},{\"risk_summary\":\"风险摘要\"},{\"blocking_issues\":\"阻塞性问题清单\"},{\"rollback_plan\":\"回滚方案\"},{\"monitoring_recommendations\":\"上线监控建议\"}]}"
error-recovery-guidance: "{\"on_failure\":\"发布评估发现阻塞性问题时回退到测试策略补齐\",\"retry_behavior\":\"修复阻塞问题后重新评估发布\"}"
categories: "[\"Development\",\"Testing\",\"DevOps\"]"
depth-requirement: "{\"reference_value\":\"根据发布规模调整评估深度:简单×1/中等×2/复杂×3\",\"minimum\":\"至少覆盖变更风险、灰度策略、回滚方案、监控计划4项\"}"
---
> ⚠️ 本技能单独使用效果有限,建议配合完整技能集(12 步工作流)使用。安装:npx skills add Kokxi/qa-test-skills
> **⚠️ 安全警告**:本技能的示例可能涉及发布决策、灰度方案和回滚操作。
> 实际使用时请勿直接执行发布或回滚,先确认审批权限、灰度比例和回滚预案。
> 本技能仅在 workspace/ 输出评估文件,不持久化、不外传、不跨会话复用。
# 发布风险管理
## 核心原则
发布决策不仅仅是"Bug都修完了没",而是综合判断变更影响面、灰度策略、回滚能力。
## 发布风险评估矩阵
### 维度1:变更特征分析
```text
变更范围:
├─ 代码变更量:新增/修改/删除行数
├─ 文件影响面:涉及多少文件
├─ 模块影响面:涉及多少模块
├─ 接口影响面:涉及多少接口
└─ 数据影响面:涉及多少数据表
风险等级:
- 大变更:>1000行/>20文件/>5模块
- 中变更:500-1000行/10-20文件/3-5模块
- 小变更:<500行/<10文件/<3模块
```
### 维度2:变更类型风险
```text
高风险变更:
├─ 数据库变更:表结构/索引/数据迁移
├─ 核心逻辑变更:支付/认证/权限
├─ 配置变更:生产环境配置
├─ 依赖变更:第三方库/服务升级
└─ 架构变更:服务拆分/合并
中风险变更:
├─ 业务规则变更:计算逻辑/流程
├─ 接口变更:入参/出参/协议
├─ UI变更:页面/交互/样式
└─ 性能优化:缓存/异步/并发
低风险变更:
├─ Bug修复:不影响主流程
├─ 文案修改:提示信息/文档
├─ 日志调整:日志级别/格式
└─ 测试相关:测试代码/配置
```
### 维度3:业务影响评估
```text
影响范围:
├─ 用户影响:影响多少用户
├─ 功能影响:影响哪些功能
├─ 收入影响:是否影响交易
├─ 声誉影响:是否影响品牌形象
└─ 合规影响:是否影响合规要求
影响等级:
- 高影响:核心功能/大量用户/收入相关
- 中影响:次要功能/部分用户
- 低影响:边缘功能/少量用户
```
## 加载时机
| 什么时候读 | 读哪个 |
|-----------|--------|
| 设计灰度放量阶梯与回滚阈值时 | [`references/canary-rollout.md`](references/canary-rollout.md) |
> `灰度策略设计`的完整内容已下沉至 `references/canary-rollout.md`,避免每次触发都占用上下文。
## 回滚方案设计
### 回滚类型
```text
回滚方式:
├─ 代码回滚:回滚代码版本
│ ├─ 适用:代码变更导致的问题
│ ├─ 步骤:git revert → 部署 → 验证
│ └─ 风险:可能影响数据兼容性
│
├─ 配置回滚:回滚配置
│ ├─ 适用:配置变更导致的问题
│ ├─ 步骤:恢复配置 → 重启服务
│ └─ 风险:配置丢失
│
├─ 数据回滚:回滚数据
│ ├─ 适用:数据变更导致的问题
│ ├─ 步骤:数据备份恢复 → 验证
│ └─ 风险:数据丢失
│
└─ 服务回滚:回滚服务版本
├─ 适用:服务升级导致的问题
├─ 步骤:部署旧版本 → 验证
└─ 风险:版本兼容性
```
### 回滚检查清单
```text
回滚前检查:
├─ [ ] 回滚方案确认
├─ [ ] 回滚权限准备
├─ [ ] 数据备份完成
├─ [ ] 相关方通知
└─ [ ] 回滚时间窗口
回滚执行:
├─ [ ] 执行回滚操作
├─ [ ] 验证服务状态
├─ [ ] 验证业务功能
├─ [ ] 验证数据一致性
└─ [ ] 监控系统指标
回滚后处理:
├─ [ ] 通知相关方
├─ [ ] 记录回滚原因
├─ [ ] 分析问题根因
├─ [ ] 制定修复方案
└─ [ ] 安排重新发布
```
## 线上验证方案
### 验证内容
```text
验证清单:
├─ 功能验证:
│ ├─ 核心功能是否正常
│ ├─ 新功能是否生效
│ └─ 兼容功能是否正常
│
├─ 性能验证:
│ ├─ 响应时间是否正常
│ ├─ 吞吐量是否正常
│ └─ 资源使用是否正常
│
├─ 数据验证:
│ ├─ 数据写入是否正常
│ ├─ 数据读取是否正常
│ └─ 数据一致性是否正常
│
└─ 监控验证:
├─ 监控指标是否正常
├─ 告警是否正常
└─ 日志是否正常
```
## 发布检查清单
### 发布前
- [ ] 代码Review通过
- [ ] 测试用例通过
- [ ] 性能测试通过
- [ ] 安全扫描通过
- [ ] 回滚方案就绪
- [ ] 灰度策略确认
- [ ] 监控告警配置
- [ ] 相关方通知
### 发布中
- [ ] 灰度发布执行
- [ ] 监控指标观察
- [ ] 异常情况处理
- [ ] 全量发布确认
### 发布后
- [ ] 线上验证通过
- [ ] 监控指标正常
- [ ] 用户反馈正常
- [ ] 发布记录归档
## 输出示例
**用户说"这次发布风险大不大"**
→ 风险评估矩阵逐维分析:
- 变更特征:变更20个文件,涉及支付核心模块(高风险)
- 变更类型:功能变更+数据库变更(高风险)
- 业务影响:支付失败=用户无法下单(严重)
→ 输出发布决策建议:灰度发布5%用户,监控24小时,准备回滚方案
**发布前Checklist**
→ 发布前:代码冻结检查,测试报告确认,变更审批
→ 发布中:灰度发布,监控指标
→ 发布后:线上验证,用户反馈收集
## 检查清单
发布风险管理完成后检查:
- [ ] 变更特征是否分析?
- [ ] 业务影响是否评估?
- [ ] 灰度策略是否设计?
- [ ] 回滚方案是否准备?
- [ ] 线上验证是否规划?
- [ ] 监控告警是否配置?
don't have the plugin yet? install it then click "run inline in claude" again.