.gitea/workflows/ci.yml: the push trigger is filtered to branches: [develop, main] and tags: ['v*']. Tags are listed explicitly because a branch filter alone stops tag pushes. pull_request, workflow_dispatch, concurrency and every job are unchanged.
README.md, docs/gitea-actions.md: trigger, benchmark and image prose now match. Other branches run CI and publish branch-<slug>/sha-<SHA> only through their PR. A branch without a PR gets no automatic CI or image, so open a draft PR to get one.
Local checks
bun run format:check passes.
bun scripts/ci-policy.test.mjs and bun scripts/ci-image.test.mjs pass unchanged.
The parsed on: block is {"push":{"branches":["develop","main"],"tags":["v*"]},"pull_request":{"types":["opened","reopened","synchronize","edited"]},"workflow_dispatch":null}.
Closes #309
## Change
- `.gitea/workflows/ci.yml`: the push trigger is filtered to `branches: [develop, main]` and `tags: ['v*']`. Tags are listed explicitly because a branch filter alone stops tag pushes. `pull_request`, `workflow_dispatch`, concurrency and every job are unchanged.
- `README.md`, `docs/gitea-actions.md`: trigger, benchmark and image prose now match. Other branches run CI and publish `branch-<slug>`/`sha-<SHA>` only through their PR. A branch without a PR gets no automatic CI or image, so open a draft PR to get one.
## Local checks
- `bun run format:check` passes.
- `bun scripts/ci-policy.test.mjs` and `bun scripts/ci-image.test.mjs` pass unchanged.
- The parsed `on:` block is `{"push":{"branches":["develop","main"],"tags":["v*"]},"pull_request":{"types":["opened","reopened","synchronize","edited"]},"workflow_dispatch":null}`.
## Live acceptance (from #309)
- [x] 1. Pushing the feature branch before a PR existed created no run (Actions API: 0 runs for `5d343dc`).
- [ ] 2. Opening this PR creates a pull_request run and no push run.
- [ ] 3. A follow-up push creates only pull_request run(s) for the new commit, and the superseded one is cancelled.
- [ ] 4. After merge, develop shows exactly one push run and `branch-develop` is published.
- [ ] 5. The first real `v*` tag still triggers CI and promotes. This can only be confirmed at the next release.
Push events use the workflow file in the pushed commit. Existing branches keep double-running until they are rebased onto develop after this merges.
🤖 Generated with [Claude Code](https://claude.com/claude-code)
nessar
marked the pull request as ready for review 2026-10-19 13:51:15 +02:00
nessar
scheduled this pull request to auto merge when all checks succeed 2026-10-19 13:52:16 +02:00
nessar
canceled auto merging this pull request when all checks succeed 2026-10-19 13:54:10 +02:00
Every commit on a branch with an open PR ran the whole pipeline twice, once
for the push and once for the pull_request event, in separate concurrency
groups. Filter the push trigger to develop, main and v* tags so other
branches run CI and publish their images only through their PR. Tags are
listed explicitly because a branch filter alone stops tag pushes.
Update the trigger, benchmark and image prose in the README and the Gitea
Actions guide to match.
Refs #309
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.
Closes #309
Change
.gitea/workflows/ci.yml: the push trigger is filtered tobranches: [develop, main]andtags: ['v*']. Tags are listed explicitly because a branch filter alone stops tag pushes.pull_request,workflow_dispatch, concurrency and every job are unchanged.README.md,docs/gitea-actions.md: trigger, benchmark and image prose now match. Other branches run CI and publishbranch-<slug>/sha-<SHA>only through their PR. A branch without a PR gets no automatic CI or image, so open a draft PR to get one.Local checks
bun run format:checkpasses.bun scripts/ci-policy.test.mjsandbun scripts/ci-image.test.mjspass unchanged.on:block is{"push":{"branches":["develop","main"],"tags":["v*"]},"pull_request":{"types":["opened","reopened","synchronize","edited"]},"workflow_dispatch":null}.Live acceptance (from #309)
5d343dc).branch-developis published.v*tag still triggers CI and promotes. This can only be confirmed at the next release.Push events use the workflow file in the pushed commit. Existing branches keep double-running until they are rebased onto develop after this merges.
🤖 Generated with Claude Code
5d343dc94bto510c315cc2510c315cc2to581c637029