ci: validate a pull request before it can become a red main #288
No reviewers
Labels
No labels
autonomy
async-consult
autonomy
epic
autonomy
headless
autonomy
live-collab
coherence-core
priority
P0
priority
P1
priority
P2
priority
P3
priority
P4
qa-fixture
role/ai
role/creator
role/design
role/director
role/engineer
role/exec
role/human
role/ops
role/qa
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set
Reference
coilyco-flight-deck/agent-compose!288
Loading…
Reference in a new issue
No description provided.
Delete branch "aos/claude/xu59-pr-ci"
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?
The gap
This repository had no pull-request CI.
release.ymlis the only workflow and triggers onpush: branches: [main]andworkflow_dispatch, sogrep -rn pull_request .forgejo/returned nothing and every pull request showed no checks. Kai noticed it on #287.Validation did run, but only after the merge, in the same job that tags and publishes. A bad merge landed and took the release pipeline with it.
The other PR-lane repositories all gate against that:
That is the "main is red and the merge lane is paused behind it" failure that
coilyco-gaming/sirens-echohas filed three times, in a repository where nothing catches it first.The workflow
Runs
ward exec test, which is exactly what the release job runs, rather than a lighter approximation. A cheaper check that disagrees with the gate is worse than no check, because it reports green on something that fails after merge. That script runsgo test ./..., the release-impact and packaging tests, the palette suite, the context budget, evalkit-check, andpre-commit run --all-files.Three deliberate choices:
pull_requestonly.release.ymlalready validates every main push. Addingpushhere would run the whole suite twice per merge.release.ymldeliberately does not. A superseded pull request has nothing left to prove, a release does.ward exec testends withpre-commit run --all-filesand hook envs dominate a cold run.No FEATURES entry
The rule excludes CI and build changes from FEATURES, so the entry I first wrote is reverted in the second commit.
Worth flagging separately:
docs/FEATURES.mdis 3,996 of its 4,000-character cap. Any future entry breaks it. That is a real constraint on the next feature that lands, not something this pull request should fix.Verification
pre-commit run --all-filespasses, includingactionlint,forgejo-runner-validate, andactions-run-one-line.I have not seen this workflow execute, and cannot: it only runs on a pull request, and a workflow added by a pull request does not run on the pull request that adds it. The first real execution will be the next pull request opened after this merges, which is #287.
Order
Independent of #287 and #851. Merging this first means #287 gets checks once rebased.
🤖 Generated with Claude Code