ci: run PR checks on pull requests into edge as well as main #127
Reference in New Issue
Block a user
No description provided.
Delete Branch "ci/pr-checks-on-edge"
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?
One line,
branches: [main]→branches: [main, edge], plus the comment explaining why.The problem
Long workstreams land phase by phase on
edgeand reachmainas a single cutover — protocol v3 did it, and the module system (docs#122) is about to. Butpr-checks.ymltriggers only on PRs intomain, so every one of those phase PRs merges with no checks at all: no server tests, no client build, no bot install. The workstream runs blind for weeks and the breakage arrives all at once at the cutover, un-bisected.This is not hypothetical. It is exactly what happened to all nine Android M12 phase PRs —
Android-app'spr-checks.ymlcarries the same trigger, and every one of them landed with zero CI.It bites harder for the module system, because Phase 2's exit criterion is a CI result: a zero-line
routes.manifest.jsondiff and a passing suite. That manifest is the frozen URL surface protecting three shipped clients (SPA, Android app, Discord bot), and a regression in it is precisely the thing that must not be discovered at cutover.A branch that accumulates work for weeks needs the gate more than
maindoes, not less.Scope
.gitea/workflows/pr-checks.yml— trigger, and comments recording the reasoningbuild-images.ymlis deliberately untouched. It triggers on push tomain, so images publish and production rolls at the cutover and at no point before it. That is the correct behaviour and this PR does not disturb it.One caveat, noted in the file
Running is not enforcing. The checks will now report on PRs into
edge, but blocking a red phase PR needs its own branch-protection rule foredgein the Gitea UI, using the samePR Checks / *pattern as themainrule. Without one, a failing check is visible but not blocking.Landing this before the module-system
edgebranch is cut, so the first phase PR is checked.🤖 Generated with Claude Code
https://claude.ai/code/session_018ocYxQWk3EhZe5gWRJXFU8