From 78946578d19a6ba7f7142ff891a5996543764328 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Petr=20Balv=C3=ADn?= Date: Fri, 18 Sep 2026 00:20:31 +0200 Subject: [PATCH] docs(development): correct the release pipeline gates Assisted-by: GLM 5.3 Flash --- CONTRIBUTING.md | 10 ++++++---- docs/DEVELOPMENT.md | 11 ++++++----- 2 files changed, 12 insertions(+), 9 deletions(-) diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index ecdf643..d9d23e1 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -53,9 +53,11 @@ just test 7. Open a pull request against `development`. Releases are cut by merging `development` into `main` and tagging `vX.Y.Z`. The -release workflow runs the full gate set including the race detector and -publishes the Gitea release with the matching `CHANGELOG.md` section as its -notes. +release workflow validates the tag, runs the static gates and the test suite +with the coverage floor, and publishes the Gitea release with the matching +`CHANGELOG.md` section as its notes. The race detector is not in that set: race +never runs on a push path, and the local `just gates` raced the tree before the +tag was cut. ## Code style @@ -114,7 +116,7 @@ Workflows live in `.gitea/workflows/` and run on the project's own runners: |---|---|---| | Test | push or pull request to `development` | format check, vet, modernisation, build, the test suite with the coverage floor, the toml-test compliance suite | | Race | `workflow_dispatch`, by hand | the suite under the race detector, the same race gate the local `just gates` runs | -| Release | a `v*` tag | the same gates plus the race detector, then the Gitea release created from the `CHANGELOG.md` section | +| Release | a `v*` tag | tag validation, format, vet, modernisation, build and the test suite with the coverage floor, then the Gitea release created from the `CHANGELOG.md` section; no race detector | The local equivalent is `just gates`, which is the same set plus the race detector. diff --git a/docs/DEVELOPMENT.md b/docs/DEVELOPMENT.md index 6e74785..097030e 100644 --- a/docs/DEVELOPMENT.md +++ b/docs/DEVELOPMENT.md @@ -97,12 +97,13 @@ pipeline. |---|---|---| | `test.yml` | push or pull request to `development` | format check, vet, modernisation, build, the test suite with the 80 percent coverage floor, then the toml-test compliance suite | | `race.yml` | `workflow_dispatch`, by hand | the suite under the race detector; the same race gate `just gates` runs locally | -| `release.yml` | a `v*` tag | the same gates plus the race detector, then the Gitea release from the CHANGELOG section | +| `release.yml` | a `v*` tag | tag validation, then format, vet, modernisation, build and the test suite with the coverage floor, then the Gitea release from the CHANGELOG section. No race detector: race never runs on a push path, and the local `just gates` raced the tree before the tag was cut | ## Releases Releases are cut by merging `development` into `main` and tagging `vX.Y.Z`. The -tag drives the release workflow: it validates the tag, runs the full gate set -including the race detector, extracts the matching `## [X.Y.Z]` section from -`CHANGELOG.md`, and publishes the release with that section as its body. A -library ships no binaries, so the release carries the notes and nothing else. +tag drives the release workflow: it validates the tag, runs the static gates +and the test suite with the coverage floor, extracts the matching `## [X.Y.Z]` +section from `CHANGELOG.md`, and publishes the release with that section as its +body. A library ships no binaries, so the release carries the notes and nothing +else.