mirror of
https://github.com/Comfy-Org/github-workflows.git
synced 2026-11-05 00:17:37 +00:00
[PR #94] [MERGED] ci: add Dependabot for third-party actions, ignoring self-references #104
Labels
No labels
cursor-review-catalog-drift
groom
groom
pull-request
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference
Comfy-Org/github-workflows#104
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/github-workflows/pull/94
Author: @mattmillerai
Created: 7/30/2026
Status: ✅ Merged
Merged: 7/30/2026
Merged by: @mattmillerai
Base:
main← Head:matt/add-dependabot📝 Commits (3)
23fd3bcci: add Dependabot for third-party actions, ignoring self-references10da052ci(dependabot): address cursor-review panel findingsbbac95dci(dependabot): drop unsupported semver-major-days from the github-actions cooldown📊 Changes
1 file changed (+99 additions, -0 deletions)
View changed files
➕
.github/dependabot.yml(+99 -0)📄 Description
ELI-5
This repo tells other repos how to run their CI. Inside those instructions it refers to other people's building blocks —
actions/checkoutand friends — and it names each one by an exact, permanent ID rather than "the latest one". That is the safe way to do it: "latest" can be swapped out from under you, and these workflows run inside other repos with their secrets.The catch is that an exact ID never changes on its own. So when one of those building blocks gets a security fix, nothing here notices, nothing turns red, and every repo that uses these workflows keeps running the old one. This turns on the robot that opens a PR when a new version appears.
It also tells that robot to keep its hands off our own workflows, because those need to be updated in a specific way it does not understand.
Why this matters more than the repo size suggests
There was no
dependabot.ymlhere at all. 11 third-party actions are pinned by full SHA today. A stale action in this repo is stale in every caller simultaneously — cloud, comfy-cloud-mcp-server, comfy-local-mcp, comfy-infra — and several of these workflows hold a bot App token withcontents/pull-requests/issueswrite.The
Comfy-Org/*ignore is the load-bearing partDependabot must never bump this repo's own reusables in a caller. A groom/cursor-review/agents-md caller pins the reusable twice:
Those two must stay in lock-step, or a run executes one version's workflow against another version's scripts. Dependabot only understands
uses:— it rewrites the SHA and leavesworkflows_ref:behind.This is not hypothetical. Comfy-Org/cloud#5676 is doing it right now:
It also flattens deliberate pins:
assign-reviewers.ymlwas pinned toa32ed21with a comment explaining it is the reviewed merge SHA of github-workflows#41, and Dependabot rewrites it to the sameece4c3eas everything else — because it treats every reusable in this repo as one dependency named "Comfy-Org/github-workflows".bump-callers.shrewrites both pins and is the only thing that should move them. The same ignore belongs in every consumer repo'sdependabot.yml; a follow-up PR adds it to cloud.Choices
github-actionscadence. Each merge here obliges a fleet-wide caller bump (thebump-*-callersworkflows open those automatically), so batching keeps that to one bump per cycle instead of one per action.cooldown: 1 day, so a botched release is usually yanked before it reaches consumer CI.open-pull-requests-limit: 2, same as cloud.Testing
dependabot.ymlis config — it has no test to run. Validated by parsing it (version: 2, onegithub-actionsecosystem, group present,Comfy-Org/*ignore present). The real proof is the first PR Dependabot opens; if the ignore is wrong it will show up immediately as a caller-pin bump, which is exactly what this PR exists to prevent.🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.