Back to Sa Token

整理更新日志

.agents/skills/organize-update-log/SKILL.md

1.45.03.9 KB
Original Source

整理更新日志

根据 git 提交记录,生成符合 sa-token-doc/more/update-log.md 格式的更新日志内容。

使用时机

  • 用户要求生成/整理更新日志
  • 用户要求分析「某版本之后」的提交变更
  • 用户要求将 git 提交格式化为更新日志风格
  • 准备发布新版本前整理 changelog

工作流程

第一步:确定基准版本

  1. 询问用户基准版本(如 v1.44.0),或从上下文推断
  2. 查找该版本的发布提交:
    • SaTokenConsts.javapom.xml 中搜索版本号
    • 或执行:git log --oneline --all -- sa-token-core/src/main/java/cn/dev33/satoken/util/SaTokenConsts.java 查找含 release vX.X.X 的提交
  3. 记录基准提交 hash(如 7bde74bc

第二步:获取提交列表

执行:

bash
git log <基准提交>..HEAD --oneline --format="%h %s"

可选,获取更详细的变更文件:

bash
git log <基准提交>..HEAD --stat --format="=== %h %s ==="

第三步:分类与映射

将每条提交按以下规则归类到对应板块:

提交关键词/内容归属板块
feat.*jackson、plugin、插件插件
feat.*starter、spring-boot、reactorstarter
refactor.*依赖、dependencies、模块重构
refactor.*solon、gatewaySolon(单独列出)
fix.*dubbo、dubbo3插件
demo.*、示例示例 或 starter
docs.*、文档文档
chore、.gitignore、.vscode其它
merge.*loveqq、maven-pull其它(含 PR 链接)

第四步:动作词映射

根据提交类型选择正确的动作词:

提交类型动作词示例
feat、新增新增新增 sa-token-jackson3 插件
fix、修复修复修复 Maven 父子项目依赖下载问题
refactor、重构重构 / 移除重构模块依赖层级;移除 xxx 模块
优化、perf优化优化 Gateway 接口处理
拆分拆分(少见)
文档更新同步/新增/优化/修复按具体内容选择

第五步:按格式输出

使用下方模板生成最终内容。详见 format-reference.md

输出模板

markdown
### vX.X.X @YYYY-M-D(或:开发中 / 未发布)

- 插件:
	- 新增:xxx。  **[重要]**(如适用)
	- 修复:xxx。merge: [pr N](https://gitee.com/dromara/sa-token/pulls/N)(如适用)
- starter:
	- 新增:xxx。
- 重构:
	- 重构:xxx。
	- 移除:xxx。
- Solon:(如有)
	- 优化:xxx。merge: [pr N](url)
- 示例:(如有)
	- 新增:xxx。
- 文档:
	- 同步:xxx。
	- 新增:xxx。
	- 优化:xxx。
	- 修复:xxx。
- 其它:
	- 新增/修复/优化:xxx。

格式规则

  1. 层级:一级用 -,二级用 -(Tab + 短横线)
  2. 动作词:每条以「新增」「修复」「重构」「优化」「移除」「同步」等开头
  3. 重要标记:对用户影响大的变更加 **[重要]**
  4. PR/Issue 链接:提交信息含 !358pr 340 等时,补充 merge: [pr N](https://gitee.com/dromara/sa-token/pulls/N)
  5. 代码/模块名:用反引号包裹,如 `sa-token-jackson3`
  6. 合并同类:多条相似文档类提交可合并为一条(如「同步公众号、博客、赞助者名单」)

常见板块

  • core:核心逻辑、API、配置变更
  • SSO:单点登录相关
  • OAuth2:OAuth2 相关
  • 插件:插件包(jackson、dubbo、redis 等)
  • starter:Spring Boot / Reactor 等 starter
  • 示例:demo 项目
  • 文档:文档、README、错别字
  • 其它:其它杂项

注意事项

  • 合并提交(Merge branch)可忽略,只保留实际变更的提交
  • 纯文档/错别字可适度合并,避免条目过多
  • 版本号未发布时,可写 v1.45.0(开发中)未发布
  • 输出为可直接粘贴到 update-log.md 的 Markdown 片段