mcpField
R
release-notes-generation

release-notes-generation

github.com/happy-technologies-llc开发4141 次安装2 天前更新
代码仓库

关于 release-notes-generation

此技能汇总 ServiceNow 发布周期内的变更请求、用户故事和缺陷,生成面向利益相关者的发行说明。适用于发布经理等需要分类变更、说明影响并记录已知问题的团队,也可将说明发布为知识库文章。

主要功能

  1. 01汇总并分类发布期变更
  2. 02提取用户故事及验收标准
  3. 03记录缺陷修复与根因
  4. 04整理已知问题和解决方法
  5. 05生成并发布发行说明

适用场景

  1. 01准备软件发布或冲刺交付说明
  2. 02向利益相关者报告修复与变更
  3. 03发布知识库形式的发行说明

MCP 相关

通过 SN-Query-Table 获取发布、变更、故事和缺陷数据,并可用 SN-Create-Record 发布知识库文章、用 SN-Update-Record 更新发布记录。

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/happy-technologies-llc/happy-platform-skills --skill release-notes-generation

安装后在 Claude Code 中输入/release-notes-generation确认已加载。

详细介绍

版本说明生成

概述

此技能通过汇总与指定发布周期相关的变更请求、用户故事和缺陷修复,生成全面的版本说明。它会生成可供利益相关者使用的文档,包含分类后的变更、影响摘要和已知问题。

  • 查询发布周期内的变更请求,并按类型分类
  • 汇总用户故事及其验收标准,用于功能说明
  • 收集缺陷修复及其根本原因和影响描述
  • 确定随版本一起发布的已知问题和解决方法
  • 生成适用于技术和非技术受众的格式化版本说明
  • 可选:将版本说明发布为知识库文章

适用场景: 准备软件发布、冲刺交付或维护窗口时,利益相关者需要了解有哪些变更、修复了什么以及需要关注哪些事项。

前提条件

  • 角色: itil、change_manager、release_manager 或 scrum_master
  • 插件: com.snc.change_management(变更管理)、com.snc.sdlc.agile.2.0(敏捷开发 2.0,可选)、com.glide.knowledge(知识管理,可选)
  • 访问权限: 对 change_request、rm_story、rm_defect、rm_release、kb_knowledge、incident 的读取权限
  • 知识: 了解发布周期、变更类别和利益相关者受众
  • 数据: 与目标版本关联的变更请求和/或故事/缺陷

流程

第 1 步:确定发布周期

通过查询发布记录或定义日期范围来确定发布范围。

使用 MCP(Claude Code/Desktop):

Tool: SN-Query-Table
Parameters:
  table_name: rm_release
  query: number=[release_number]
  fields: sys_id,number,short_description,start_date,end_date,state,release_type,release_phase
  limit: 1

使用 REST API:

GET /api/now/table/rm_release?sysparm_query=number=[release_number]&sysparm_fields=sys_id,number,short_description,start_date,end_date,state,release_type,release_phase&sysparm_limit=1

如果没有正式的发布记录,则按日期范围定义发布周期:

  • 开始日期: 冲刺/发布周期的开始时间
  • 结束日期: 版本部署日期
第 2 步:收集变更请求

查询在发布周期内实施的所有变更请求。

使用 MCP:

Tool: SN-Query-Table
Parameters:
  table_name: change_request
  query: stateINclosed,implemented,review^end_dateBETWEEN[start_date]@[end_date]
  fields: sys_id,number,short_description,description,type,category,risk,impact,cmdb_ci,assignment_group,close_notes,state
  limit: 100

使用 REST API:

GET /api/now/table/change_request?sysparm_query=stateINclosed,implemented,review^end_dateBETWEEN[start_date]@[end_date]&sysparm_fields=sys_id,number,short_description,description,type,category,risk,impact,cmdb_ci,assignment_group,close_notes,state&sysparm_limit=100

变更分类:

类别数量说明
新功能5新增的功能
增强12对现有功能的改进
错误修复8缺陷修正
基础设施4平台、服务器或网络变更
安全补丁3安全漏洞修复
配置6设置或参数变更
第 3 步:收集用户故事

如果使用敏捷开发,请检索此版本中已完成的故事。

使用 MCP:

Tool: SN-Query-Table
Parameters:
  table_name: rm_story
  query: release=[release_sys_id]^state=closed_complete
  fields: sys_id,number,short_description,description,acceptance_criteria,story_points,sprint,product,epic
  limit: 50

使用 REST API:

GET /api/now/table/rm_story?sysparm_query=release=[release_sys_id]^state=closed_complete&sysparm_fields=sys_id,number,short_description,description,acceptance_criteria,story_points,sprint,product,epic&sysparm_limit=50
第 4 步:收集缺陷修复

检索此版本中修复的缺陷。

使用 MCP:

Tool: SN-Query-Table
Parameters:
  table_name: rm_defect
  query: release=[release_sys_id]^state=closed_complete
  fields: sys_id,number,short_description,description,severity,found_in,fixed_in,root_cause,affected_users
  limit: 50

使用 REST API:

GET /api/now/table/rm_defect?sysparm_query=release=[release_sys_id]^state=closed_complete&sysparm_fields=sys_id,number,short_description,description,severity,found_in,fixed_in,root_cause,affected_users&sysparm_limit=50
第 5 步:确定已知问题

检查是否有仍未解决并延续到此版本的缺陷或问题。

使用 MCP:

Tool: SN-Query-Table
Parameters:
  table_name: rm_defect
  query: release=[release_sys_id]^stateNOT INclosed_complete,closed_skipped
  fields: sys_id,number,short_description,severity,workaround
  limit: 20

同时检查过去类似版本发布后报告的相关事件:

使用 MCP:

Tool: SN-Query-Table
Parameters:
  table_name: incident
  query: active=true^short_descriptionLIKE[release_or_product_keyword]^sys_created_onONLast 7 days@javascript:gs.daysAgoStart(7)@javascript:gs.daysAgoEnd(0)
  fields: sys_id,number,short_description,priority,state
  limit: 10
第 6 步:生成版本说明文档

将收集的所有数据整理成格式化的版本说明文档:

================================================================
RELEASE NOTES
================================================================
Release: [release_number] - [release_short_description]
Date: [end_date]
Version: [version_number]
Environment: [Production / Staging / UAT]

================================================================
SUMMARY
================================================================
This release includes [X] new features, [Y] enhancements,
[Z] bug fixes, and [W] infrastructure changes.

Total Changes: [total]
Total Story Points Delivered: [points]
Risk Profile: [X] High, [Y] Moderate, [Z] Low risk changes

================================================================
NEW FEATURES
================================================================

[NFT-001] [CHG/STY number] - [Short Description]
  Description: [User-friendly description of the feature]
  Impact: [Who benefits and how]
  Configuration: [Any setup required by users/admins]
  Related KB: [KB article number if applicable]

[NFT-002] ...

================================================================
ENHANCEMENTS
================================================================

[ENH-001] [CHG/STY number] - [Short Description]
  Description: [What was improved and why]
  Before: [Previous behavior]
  After: [New behavior]

[ENH-002] ...

================================================================
BUG FIXES
================================================================

[BUG-001] [DEF number] - [Short Description]
  Severity: [Critical / High / Medium / Low]
  Symptom: [What users experienced]
  Root Cause: [What caused the defect]
  Fix: [What was changed to fix it]
  Affected Users: [Scope of impact]

[BUG-002] ...

================================================================
INFRASTRUCTURE CHANGES
================================================================

[INF-001] [CHG number] - [Short Description]
  Change Type: [Standard / Normal / Emergency]
  Impact: [Expected user impact during/after change]
  Downtime: [Any planned downtime window]

================================================================
SECURITY UPDATES
================================================================

[SEC-001] [CHG number] - [Short Description]
  Severity: [Critical / High / Medium / Low]
  CVE: [CVE number if applicable]
  Impact: [What was vulnerable and what was fixed]

================================================================
KNOWN ISSUES
================================================================

[KI-001] [DEF number] - [Short Description]
  Severity: [severity]
  Workaround: [Temporary workaround if available]
  Expected Fix: [Target release for fix]

================================================================
UPGRADE NOTES
================================================================
- [Any manual steps required after deployment]
- [Configuration changes needed]
- [Cache clears, restarts, or reindexing required]
- [Backward compatibility notes]

================================================================
ROLLBACK PLAN
================================================================
In case of critical issues:
- [Rollback procedure summary]
- Contact: [Release manager contact]
- Decision deadline: [Time by which rollback decision must be made]
第 7 步:发布版本说明

可选:将版本说明发布为知识库文章。

使用 MCP:

Tool: SN-Create-Record
Parameters:
  table_name: kb_knowledge
  data:
    short_description: "Release Notes - [release_number] - [date]"
    text: "[generated release notes]"
    kb_knowledge_base: [knowledge_base_sys_id]
    kb_category: Release Notes
    workflow_state: draft
    valid_to: ""

使用 REST API:

POST /api/now/table/kb_knowledge
Content-Type: application/json

{
  "short_description": "Release Notes - [release_number] - [date]",
  "text": "[generated release notes]",
  "kb_knowledge_base": "[knowledge_base_sys_id]",
  "kb_category": "Release Notes",
  "workflow_state": "draft"
}
第 8 步:通知利益相关者

在发布记录中记录版本说明的分发情况。

使用 MCP:

Tool: SN-Update-Record
Parameters:
  table_name: rm_release
  sys_id: [release_sys_id]
  data:
    work_notes: "Release notes generated and published as KB article [KB_number]. Distribution: Technical teams, Change Advisory Board, Service Desk, End-user communications."

工具用法

工具用途使用时机
SN-Query-Table检索变更、故事、缺陷和发布数据核心数据收集
SN-Natural-Language-Search使用自然语言查找相关项目补充发现
SN-Create-Record将版本说明发布为知识库文章文档编写
SN-Update-Record使用说明状态更新发布记录跟踪与审计
SN-Add-Work-Notes记录文档生成过程审计跟踪
SN-Get-Table-Schema探索表结构设置与字段发现

最佳实践

  1. 尽早生成,频繁迭代 —— 在实施变更时就起草发行说明,而不是等到最后一刻
  2. 面向受众撰写 —— 为工程团队提供技术细节,为利益相关方说明业务影响
  3. 按逻辑分组 —— 按类型(功能、修复、基础设施)分类,而不是按团队或工单号分类
  4. 始终包含已知问题 —— 利益相关方信任透明度;隐瞒已知问题会削弱信心
  5. 链接到知识库文章 —— 为需要设置或培训的功能引用详细文档
  6. 对说明进行版本管理 —— 如果起草说明后发行内容发生变化,请更新并为说明添加版本
  7. 包含回滚信息 —— 每次发行都应有记录在案的回滚计划
  8. 自动收集数据 —— 手动收集变更详情容易出错且耗时
  9. 与变更负责人验证 —— 请每位变更负责人审阅自己负责的部分,确保准确无误
  10. 保持一致地归档 —— 将发行说明存放在标准位置(知识库、发行记录),以供历史查阅

故障排除

“在发行时间范围内未找到变更请求”

原因: 变更可能未填充 end_date,也可能使用了其他日期字段 解决方案: 尝试改用 close_date 或 work_end 进行查询。同时检查变更是否通过 release 字段关联到发行记录,而非通过日期范围关联。

“用户故事未填充发行字段”

原因: Agile Development 集成可能未配置为将用户故事关联到发行 解决方案: 改为按迭代日期查询用户故事:sprint.end_date BETWEEN [start] AND [end]。或者按产品和状态查询。

“要纳入发行说明的变更太多”

原因: 发行时间范围过长,或环境过于活跃 解决方案: 按风险级别筛选(排除低风险的标准变更),或按应用范围筛选。重点关注面向客户的变更,并概述内部/基础设施变更。

“缺陷的 root_cause 字段为空”

原因: 开发人员在解决缺陷时未填写根本原因分析 解决方案: 使用缺陷描述和 close_notes 补充背景信息。将 root_cause 为空标记为流程改进项。

示例

示例 1:迭代发行说明

发行: REL0023456 - Sprint 42 Delivery(2026-03-15 至 2026-03-29)

生成的说明:

  • 3 项新功能:自助服务门户重新设计、移动应用推送通知、供应商门户 SSO
  • 5 项增强:提升搜索性能、更新审批邮件模板、优化仪表板加载时间、批量导入 CSV 验证、将报告导出为 PDF
  • 4 项错误修复:登录超时问题(严重)、日历日期选择器日期偏移一位(中等)、报告分页错误(中等)、通知重复抑制(低)
  • 1 项已知问题:导出 PDF 时,超过 50 行的表格偶尔会被截断(解决方法:导出为 CSV)
示例 2:紧急补丁发行说明

发行: REL0023457 - Emergency Security Patch(2026-03-18)

生成的说明:

  • 1 项安全更新:CVE-2026-1234 - 表单提交处理程序中的跨站脚本漏洞(严重)
  • 0 项新功能
  • 1 项基础设施变更:更新 WAF 规则,在补丁部署期间拦截漏洞利用模式
  • 回滚计划:在 2 小时窗口内还原 WAF 规则并应用先前版本的应用
示例 3:主要平台升级发行说明

发行: REL0023458 - Platform Upgrade v3.0(2026-03-22)

生成的说明:

  • 8 项新功能,涵盖 3 个模块
  • 15 项增强,包括性能和 UX 改进
  • 12 项错误修复,包括 2 项严重级别问题
  • 3 项基础设施变更,包括数据库迁移和缓存架构更新
  • 5 项已知问题,均提供了记录在案的解决方法
  • 升级说明:4 小时维护窗口、需要备份数据库、部署后清除缓存、所有用户都必须重新进行身份验证

相关技能

  • itsm/change-management - 变更请求生命周期管理
  • spm/agile-story-generation - 为下一个冲刺生成故事
  • knowledge/article-generation - 根据发布内容创建知识库文章
  • spm/acceptance-criteria - 为故事定义验收标准
  • itsm/suggested-steps - 解决由发布导致的事件的步骤
  • spm/planning-summarization - 冲刺和发布规划摘要

评论

支持 Markdown