ci(pr-checks): run the gate on pull requests into edge too

ENGAGEMENT.md §7.1 Q8. `pr-checks.yml` triggered only on PRs into `main`, so a
workstream that lands its phases on `edge` before one cutover PR got no CI at
all until the cutover — all nine M12 phase PRs merged without a single run, and
engagement Phase 8 was about to do the same. A phase should fail on its own PR.

Sonar is untouched: `sonarqube.yml` is a push-on-`main` analysis, not a PR gate,
so no phase PR was ever expected to run it.

Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
2026-08-31 02:40:39 -05:00
parent c55ee7f47e
commit 21e235a07f

View File

@@ -1,5 +1,5 @@
# Gate every pull request into `main` on lint + unit tests + a debug build, so a
# broken build can't reach the deployable branch. Debug builds are auto-signed,
# Gate every pull request into `main` or `edge` on lint + unit tests + a debug
# build, so a broken build can't reach the deployable branch. Debug builds are auto-signed,
# so this gate needs no secrets. The signed *release* APK + Gitea release come
# later (release.yml, M6). See docs/android/PLAN.md §12.
#
@@ -18,9 +18,14 @@
name: PR Checks
# `edge` is here because a workstream that lands ten phase PRs onto it before one
# cutover PR into `main` otherwise gets NO CI at all until the cutover — which is
# exactly what happened to all nine M12 phase PRs, and would have happened again
# to engagement Phase 8 (ENGAGEMENT.md §7.1 Q8). A phase should fail on its own
# PR, not inside the cutover window with a whole workstream's diff to bisect.
on:
pull_request:
branches: [main]
branches: [main, edge]
concurrency:
group: pr-checks-${{ github.ref }}