mirror of
https://github.com/Comfy-Org/Comfy-PR.git
synced 2026-11-04 23:37:33 +00:00
[PR #210] feat(backport-checker): distinguish merged from released #210
Labels
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference
Comfy-Org/Comfy-PR#210
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
📋 Pull Request Information
Original PR: https://github.com/Comfy-Org/Comfy-PR/pull/210
Author: @christian-byrne
Created: 7/30/2026
Status: 🔄 Open
Base:
main← Head:cb__backport-checker-released-status📝 Commits (3)
b014732feat(backport-checker): distinguish merged from releasedba208cefix(backport-checker): verify published releases5fb4e9dfix(backport-checker): scope isTagOnLine to the tag's core/cloud prefix📊 Changes
3 files changed (+218 additions, -3 deletions)
View changed files
📝
app/tasks/gh-frontend-backport-checker/index.ts(+106 -3)➕
app/tasks/gh-frontend-backport-checker/releasedStatus.spec.ts(+62 -0)➕
app/tasks/gh-frontend-backport-checker/releasedStatus.ts(+50 -0)📄 Description
The checker marks a bugfix
completedthe moment its backport merges onto the release branch. That is precisely the state that misled us last week.#14065 merged onto
core/1.47nineteen hours afterv1.47.10was tagged. The checker said completed, ComfyUI pinned1.47.10, and the fix reached nobody for a week while five users reported the bug it had already fixed.Change
merged-unreleasedstatus, rendered in the Slack report as "Merged, not released"completednow means a published tag carries itA backport is a cherry-pick, so the source commit never appears on the release branch. Containment is tested against the backport PR's own
merge_commit_sha; testing the source SHA would have reported every backport as unreleased.Notes
New logic is a separate pure module (
releasedStatus.ts) with an imported spec, written test-first. The existing spec re-declares its regexes locally rather than importing them, so it cannot catch drift in the real values. Worth fixing separately.Release-line matching is exact or dot-delimited, so
core/1.4cannot matchv1.40.0. Failed comparisons log a warning rather than silently counting as unreleased, since a false "not shipped" is the worst outcome for this check.listTagsis cached per repo instead of refetched per commit per branch.The blocking guard for this failure mode lives in ComfyUI_frontend CI (Comfy-Org/ComfyUI_frontend#14429) rather than here, since a safety check should not depend on a long-running bot process. This change is the visibility half.
🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.