From aff1d3e990ef87c03fe9826340bbdb7ff0328ffd Mon Sep 17 00:00:00 2001 From: Claude Date: Fri, 7 Aug 2026 14:38:25 +0000 Subject: [PATCH] ci: allow manual Tests runs on main via workflow_dispatch A GitHub Actions outage on 2026-08-06 dropped the push triggers for several merges to main, so main-HEAD carries no Tests conclusion. Heart's ws_ci gate reads main-HEAD conclusions, so missing evidence blocks a release just as a red run would. Re-running an existing run re-tests that run's own (older) sha, so the only recovery was pushing an empty commit to main. Adding workflow_dispatch makes a main-HEAD run re-requestable on demand. No change to what is tested or when it runs automatically. Co-Authored-By: Claude Opus 5 Claude-Session: https://claude.ai/code/session_01MhmtTYYG4BianpWFSffZKN --- .github/workflows/main.yml | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml index 0f97eb5ae..a3d7febd4 100644 --- a/.github/workflows/main.yml +++ b/.github/workflows/main.yml @@ -4,10 +4,18 @@ name: Tests # (Heart's ws_ci gate reads main-HEAD conclusions). Superseded runs are # cancelled on PR refs only — a cancelled main run would read as red CI # (cancelled is in Heart's FAILURE_CONCLUSIONS). +# +# `workflow_dispatch` exists so a main-HEAD run can be re-requested on demand. +# On 2026-08-06 a GitHub Actions outage dropped the push triggers for several +# main merges, leaving main-HEAD with no Tests conclusion at all — which reads +# to Heart's ws_ci gate as missing evidence and blocks a release. Without a +# manual trigger the only recovery was an empty commit to main, since re-running +# an existing run re-tests its own (older) sha. on: push: branches: [main] pull_request: + workflow_dispatch: concurrency: group: main-${{ github.ref }}