Deleted workflow still generating startup_failure runs on every push — how to remove ghost workflow?
#190193
Replies: 6 comments
|
You need to delete every single run associated with that specific ID (240241003). You can do this quickly with the GitHub CLI: Bash If deleting the runs doesn't stop the new ones from appearing, GitHub likely has a "hook" stuck on the name BuildFailed. Create a new valid workflow file at .github/workflows/BuildFailed.yml. Give it a different internal name, like name: Ghost Buster. Push this to your main branch. This "re-claims" the path and name in the indexer with a valid configuration. Once it successfully runs (or at least shows up as active), disable it via the UI first, then delete the file again. If the ghost persists, you can force a full re-index of the repository's Actions state: Go to Settings > Actions > General. Select Disable Actions and save. Wait about 5-10 minutes (this allows the backend caches to clear). |
delete all runs tied to the ghost workflow IDWORKFLOW_ID=240241003 gh run list --repo "$REPO" --workflow "$WORKFLOW_ID" --limit 1000 echo "Done. Give it a minute or two for GitHub to update." optional: trigger a fresh index by temporarily disabling actionsgh api -X PUT "/repos/$REPO/actions/permissions" -f enabled=false |
|
This looks like a backend artifact rather than something still present in your repo. When a workflow file is pushed (even briefly), GitHub registers it internally with a workflow ID. If that file is malformed, it can still get indexed, and deleting the file later doesn’t always fully remove the workflow entry from the Actions system. In your case: The workflow (BuildFailed, ID: 240241003) is already in "state": "deleted So this isn’t something you can fix from the repo side anymore. What you can try (just to rule things out) If the workflow still shows via API with "state": "deleted" and continues to trigger runs, then this is almost certainly: a stuck workflow record in GitHub’s backend At that point, only GitHub staff can remove it. Recommendation You’ve already done the right debugging (API check, file removal, etc.), so this is a solid case for support escalation. When contacting support, include: Workflow ID: 240241003 This is a rare edge case, but you’ve diagnosed it correctly 👍 |
|
🕒 Discussion Activity Reminder 🕒 This Discussion has been labeled as dormant by an automated system for having no activity in the last 60 days. Please consider one the following actions: 1️⃣ Close as Out of Date: If the topic is no longer relevant, close the Discussion as 2️⃣ Provide More Information: Share additional details or context — or let the community know if you've found a solution on your own. 3️⃣ Mark a Reply as Answer: If your question has been answered by a reply, mark the most helpful reply as the solution. Note: This dormant notification will only apply to Discussions with the Thank you for helping bring this Discussion to a resolution! 💬 |
|
Second confirmed case of this exact bug, on a private repository — ghost workflow with the same For anyone landing here, everything suggested in this thread has been tested and verified failed: deleting ALL runs of the ghost id (the registration 404s, then re-materializes on the next event — reproduced twice, including purging while Actions was disabled with a 10-minute cool-down before re-enabling) · Actions disable/re-enable · re-adding the originally deleted file (gets a new id, ghost persists) · re-claiming the path with a valid @ecucondorSA did GitHub Support ever resolve this for you? I have filed a support ticket requesting a backend purge of the orphaned registration and will report back here if/when it gets fixed. |
|
Confirmed on a second private repository: Ghost workflow
Effect Last real jobs on What did not fix it
There is no REST/GraphQL API to delete a workflow registration. Please purge orphaned workflow Related: https://github.com/orgs/community/discussions/200691 https://github.com/orgs/community/discussions/203806 |
Uh oh!
There was an error while loading. Please reload this page.
Why are you starting this discussion?
Question
What GitHub Actions topic or product is this about?
General
Discussion Details
Problem
Every push to my repository triggers a
startup_failurerun from a ghost/deleted workflow namedBuildFailed.Repository
ecucondorSA/Autamedica(private repo)Details
240241003BuildFailed(the file no longer exists in the repo)deleted(confirmed via GitHub API)startup_failurerun attributed to this workflow, cluttering the Actions historyHow it was created
On March 1, 2026, a malformed YAML was accidentally pushed to
.github/workflows/. The file was deleted immediately, but the workflow entry persisted in GitHub's backend withstate: deleted. Since then, every push creates a newstartup_failurerun.What I've tried
git ls-files .github/workflows/shows noBuildFailedfilecurl -H "Authorization: Bearer TOKEN" https://api.github.com/repos/ecucondorSA/Autamedica/actions/workflowsreturns the workflow with"state": "deleted".github/workflows/directory — problem persistsRequest
Please permanently remove workflow ID
240241003(BuildFailed,state: deleted) from the repository's workflow list so it stops generatingstartup_failureruns.Thank you!
All reactions