Skip to content

bug: release publish 创建 GitHub Release 时 body 为空(不带 CHANGELOG notes) #21

Description

@Guo-Zhang

问题描述

qtcloud-devops release publish -v <version> 成功创建 tag 和 GitHub Release,但 Release 的 body(notes)为空——没有从 CHANGELOG.md 提取对应版本的变更内容。

复现步骤

在 quanttide/qtrecurit 发布 site scope(CHANGELOG 已包含 ## [0.1.0-alpha.1] 条目):

cd apps/qtrecurit
qtcloud-devops release publish -v site/v0.1.0-alpha.1 -y

实际输出

发布成功(tag + Release 创建),但 Release body 为空:

$ gh release view site/v0.1.0-alpha.1 -R quanttide/qtrecurit

site/v0.1.0-alpha.1
Guo-Zhang released this less than a minute ago



View on GitHub: https://github.com/quanttide/qtrecurit/releases/tag/site/v0.1.0-alpha.1

CHANGELOG 中对应版本的「新增/移除」内容没有出现在 Release notes 中,需要手动 gh release edit --notes "$(sed ...)" 补。

影响

  • Release notes 缺失,发布记录不完整(skill devops-release 要求 notes 只包含对应版本内容)
  • 每次发布后需手工补 notes,发布流程不闭环

建议修复方向

  1. publish 创建 Release 时从 scope 的 CHANGELOG.md 提取目标版本条目作为 --notes(与 skill 中的提取逻辑一致:sed -n "/^## \[VERSION\]/,/^## \[/p" | sed "1d;$d");或
  2. 提取失败(如 CHANGELOG 无该版本)时警告但不中断,并在输出中提示手动补。

环境

  • qtcloud-devops(版本号见 --version
  • 触发仓库:quanttide/qtrecurit(scope: site/studio/cli/provider 多 scope 结构)
  • 同一工具的 studio/v0.1.0-alpha.1 Release 亦无 body,属普遍行为

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions