zhangshenghang opened a new pull request, #12720: URL: https://github.com/apache/seatunnel/pull/12720
### Purpose When GitHub does not create a `Build` workflow run for a PR-branch push in the contributor's fork (a lost trigger), the PR `Build` check fails with "Workflow run detection failed" and stays `action_required` until a human pushes an empty commit. Nothing in the current pipeline can recover it automatically, because no repository can start a workflow run in someone else's fork. This happened recently on #12716, #12717 and #12718: three pushes within two minutes (2026-10-10 12:48–12:50 UTC) produced zero `build_main.yml` runs in the fork, while pushes before and after that window triggered normally. The required `Build` check blocked all three PRs for a reason unrelated to their changes. ### Changes - `build_main.yml`: add `workflow_dispatch`, so a contributor can start the build by hand from their fork's **Actions** tab when GitHub loses the push trigger. The scheduled `Update build status workflow` already re-checks `action_required` checks and adopts the run for the PR `Build` check within 15 minutes, so this closes the loop without committer involvement and without an empty commit. - `update_build_status.yml`: add `workflow_dispatch`, so a committer can sync PR `Build` checks immediately instead of waiting up to 15 minutes for the next tick. - `notify_test_workflow.yml`: rewrite the detection-failure summary to lead with the most common cause (a lost trigger, not the contributor's setup) and to describe the manual-retrigger recovery path. The old text implied the fork's Actions were disabled or the branch was stale, which is usually not the case. - `docs/en/developer/contribution-path.md` + zh mirror: document what "Workflow run detection failed" means and how to recover. ### What this does not change - The build-in-fork model, required checks, secrets, and the detection/polling logic are untouched; the diff is YAML triggers, check-run message text, and docs only. ### Verification - All three workflow files parse as valid YAML; the embedded `github-script` passes `node --check`. - A `workflow_dispatch` run of `build_main.yml` is adopted by both consumers: `notify_test_workflow.yml` and `update_build_status.yml` locate runs by workflow file + branch + `head_sha`, without filtering on event type. `backend.yml` only references `github.event.pull_request` behind `||` fallbacks, so a dispatched run behaves like a push run. -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: [email protected] For queries about this service, please contact Infrastructure at: [email protected]
