用途
该技能用于验证面向外部公开的框架中 CHANGELOG.md 的内容是否合适。它主要在两种场景下使用:更新 CHANGELOG.md 时,以及评审 CHANGELOG.md 时。
主要能力与规则
从框架使用者的视角出发,只要包中发生变更,就必须更新 CHANGELOG.md。原则上,src/ 下非 private 的类或方法发生变更时都需要更新。
需要注意版本语义:如果实现伴随破坏性变更(breaking change),则需要在 SemVer 中通过 minor 版本或 major 版本的更新来对应。不过,为修复内部缺陷而产生的变更(bug fix),若属于影响较小的破坏性变更,则允许通过 patch 版本更新来处理。
格式与内容规则
更新 CHANGELOG.md 时需遵循以下格式:
- 格式基于 Keep a Changelog。
- CHANGELOG 全部描述从用户视角可见的变更。
- 不写实现细节,而是简洁记录从服务使用者(用户)角度看有哪些功能新增、变更或修复。
- 描述用户看该框架时作为接口的外侧部分发生了什么变化。
- 不写该框架自身发生了什么变化,而写用户使用时会产生什么影响。
- PR 或 Issue 编号以 #123 这样的链接形式记载。
- 以系统、代码或类作为主语。
- 变更点或新增内容等简洁记载。
- 若是缺陷修复,记载曾发生怎样的事件或问题。
- 若有替代手段则予以记载。
- 类名即使略显冗长也使用 FQCN 书写。
使用方式
资料未提供具体安装命令或调用步骤,暂未提供。
适用场景
适用于维护或评审面向外部公开的框架包,尤其是需要确保 CHANGELOG.md 从用户视角准确反映功能新增、变更与修复,并符合 Keep a Changelog 与 SemVer 要求的场景。
限制
资料未说明该技能支持的具体平台、工具链或自动化程度,暂未提供。