fix(desktop): keep latest feed stable-only - #5149
Conversation
|
Thanks for the PR! Template looks good ✓ On direction: aligned — this is a narrow, well-motivated fix to the desktop release pipeline. Draft and prerelease builds should never replace the stable auto-update feed. Follow-up to #5139 which landed today, so the context is fresh. On approach: minimal and correct. One Moving on to code review. 🔍 中文说明感谢贡献! 模板完整 ✓ 方向:对齐——这是一个范围很小、动机明确的 desktop release pipeline 修复。Draft 和 prerelease 构建不应该替换稳定的自动更新 feed。作为今天刚合并的 #5139 的后续,上下文很清晰。 方案:最小且正确。在 feed 更新块外层加一个 进入代码审查 🔍 — Qwen Code · qwen3.7-max |
Code ReviewIndependent proposal: To prevent draft/prerelease desktop releases from updating Diff comparison: the PR matches this approach exactly. The guard is placed at the right scope — around only the No issues found. Clean, minimal change. TestingThis is a GitHub Actions workflow file change — no user-visible CLI behavior is affected. tmux real-scenario testing is not applicable here. Validation performed:
中文说明代码审查独立方案: 为了阻止 draft/prerelease desktop release 更新 Diff 对比: PR 的实现与此方案完全一致。守卫放在正确的作用域——仅围绕 未发现问题。干净、最小化的改动。 测试这是 GitHub Actions workflow 文件变更——不影响用户可见的 CLI 行为。tmux 真实场景测试不适用。 已执行的验证:
— Qwen Code · qwen3.7-max |
|
This is a clean, surgical fix. The diff does exactly what it says — one My independent proposal matched the PR's approach exactly, which is a good sign there isn't a simpler path being missed. The change is small enough that there's nothing to cut, and the logic is straightforward enough that there's nothing to overthink. Approving. ✅ 中文说明这是一个干净、精准的修复。diff 完全如其所述——一个 我的独立方案与 PR 的实现完全一致,这说明没有遗漏更简单的路径。改动足够小,没有可砍的部分;逻辑足够直接,没有需要过度思考的地方。 批准 ✅ — Qwen Code · qwen3.7-max |
qwen-code-ci-bot
left a comment
There was a problem hiding this comment.
LGTM, looks ready to ship. ✅
|
Qwen Code review did not complete successfully: Qwen review aborted with an API error before posting comments. See workflow logs. |
2 similar comments
|
Qwen Code review did not complete successfully: Qwen review aborted with an API error before posting comments. See workflow logs. |
|
Qwen Code review did not complete successfully: Qwen review aborted with an API error before posting comments. See workflow logs. |
Code Coverage Summary
CLI Package - Full Text ReportCore Package - Full Text ReportFor detailed HTML reports, please see the 'coverage-reports-22.x-ubuntu-latest' artifact from the main CI run. |
|
Qwen Code review did not complete successfully: Qwen review aborted with an API error before posting comments. See workflow logs. |
qwen-code-ci-bot
left a comment
There was a problem hiding this comment.
No issues found. LGTM! ✅
Clean, minimal change — the if/else guard is correctly scoped to only the desktop-latest feed update, the string comparison pattern (= "true") matches existing conventions in the file, and the safe default (update feed when variables are unset) is correct.
— qwen3.7-max via Qwen Code /review
DragonnZhang
left a comment
There was a problem hiding this comment.
Correct fix: desktop auto-update feed (desktop-latest tag) is now only updated for stable (non-draft, non-prerelease) releases. The RELEASE_DRAFT / RELEASE_PRERELEASE guard prevents unstable builds from being pushed to the stable feed. CI green. Downgraded from Approve to Comment: self-PR. — claude-opus-4-6 via Qwen Code /review
What this PR does
This PR prevents draft and prerelease desktop releases from updating the fixed
desktop-latestauto-update feed. Versioneddesktop-v*releases are still created or updated as before, but the stable update feed is only refreshed when the release inputs aredraft=falseandprerelease=false.Why it's needed
The fixed
desktop-latestrelease is the feed packaged desktop builds use for stable auto-updates. Draft or prerelease artifacts should not replace that feed, because doing so could make stable installations discover a build that maintainers intended only for review or prerelease validation.Reviewer Test Plan
How to verify
Confirm that the desktop release workflow skips the
desktop-latestupdate when eitherdraft=trueorprerelease=true, and only creates or clobbersdesktop-latestwhen both flags are false.Local checks run:
.github/workflows/desktop-release.ymlparsed successfully as YAML.git diff --checkcompleted successfully.Evidence (Before & After)
N/A for UI. Before this change, any non-dry-run desktop release path would refresh
desktop-latest. After this change, draft and prerelease desktop releases log that the feed update is skipped.Tested on
Environment (optional)
Local Codex workspace on macOS with GitHub CLI.
Risk & Scope
Linked Issues
Follow-up to #5139.
中文说明
What this PR does
这个 PR 阻止 draft 和 prerelease 的 desktop release 更新固定的
desktop-latest自动更新 feed。带版本的desktop-v*release 仍然会照常创建或更新,但只有当 release 输入为draft=false且prerelease=false时,稳定更新 feed 才会被刷新。Why it's needed
固定的
desktop-latestrelease 是已打包 desktop 应用用于稳定自动更新的 feed。Draft 或 prerelease artifacts 不应该替换这个 feed,否则稳定安装版本可能发现一个维护者原本只打算用于 review 或 prerelease 验证的构建。Reviewer Test Plan
How to verify
确认 desktop release workflow 在
draft=true或prerelease=true时会跳过desktop-latest更新,并且只有两个标志都为 false 时才会创建或覆盖desktop-latest。本地已运行检查:
.github/workflows/desktop-release.yml可以成功按 YAML 解析。git diff --check成功完成。Evidence (Before & After)
UI 不适用。修改前,任何非 dry-run 的 desktop release 路径都会刷新
desktop-latest。修改后,draft 和 prerelease desktop release 会打印日志说明 feed 更新已跳过。Tested on
Environment (optional)
本地 macOS Codex workspace,使用 GitHub CLI。
Risk & Scope
Linked Issues
Follow-up to #5139.