diff --git a/ReadMe.md b/ReadMe.md
index 0f6c8c3..3432c13 100644
--- a/ReadMe.md
+++ b/ReadMe.md
@@ -112,7 +112,7 @@ dotnet test
| Workflow | Purpose |
|:---------|:--------|
| [CI](.github/workflows/ci.yml) | Builds and tests every push and pull request |
-| [Release](.github/workflows/release.yml) | Publishes the single-file win-x64/win-arm64 zips (with license, readme and what's new) and checksums on `release_*` / `v*` tags |
+| [Release](.github/workflows/release.yml) | Runs the test suite, then publishes the single-file win-x64/win-arm64 zips (with license, readme and what's new) and checksums on `release_*` / `v*` tags, with generated release notes |
| [Docs](.github/workflows/docs.yml) | Publishes the documentation site and mirrors `docs/` to the wiki |
See [CI/CD](docs/ci-cd.md) for details.
diff --git a/RomValidator.Tests/RomValidator.Tests.csproj b/RomValidator.Tests/RomValidator.Tests.csproj
index b137703..2b82c2c 100644
--- a/RomValidator.Tests/RomValidator.Tests.csproj
+++ b/RomValidator.Tests/RomValidator.Tests.csproj
@@ -7,8 +7,8 @@
false
14
PureLogicCode.com
- 2.9.0
- 2.9.0
+ 2.9.1
+ 2.9.1
en
diff --git a/RomValidator/RomValidator.csproj b/RomValidator/RomValidator.csproj
index 5db2c94..a52fe74 100644
--- a/RomValidator/RomValidator.csproj
+++ b/RomValidator/RomValidator.csproj
@@ -8,9 +8,9 @@
enable
enable
icon\icon.ico
- 2.9.0
- 2.9.0
- 2.9.0
+ 2.9.1
+ 2.9.1
+ 2.9.1
embedded
true
false
diff --git a/WhatsNew.md b/WhatsNew.md
index 9e9d706..de36150 100644
--- a/WhatsNew.md
+++ b/WhatsNew.md
@@ -1,3 +1,14 @@
+Release 2.9.1
+2026-10-07
+
+- Fixed a race in the bug-report sink test that could make the release verification
+ job fail intermittently
+- The release workflow now checks out the full repository history before publishing,
+ so GitHub can generate the release notes automatically
+- Version bumped to 2.9.1; application behavior is unchanged from 2.9.0 and the
+ bundles remain single-file, framework-dependent executables named
+ release__win-x64.zip and release__win-arm64.zip
+
Release 2.9.0
2026-10-07
diff --git a/docs/ci-cd.md b/docs/ci-cd.md
index feaece8..15c79c7 100644
--- a/docs/ci-cd.md
+++ b/docs/ci-cd.md
@@ -42,8 +42,8 @@ Flow:
Every zip contains `RomValidator.exe`, the bundled 7-Zip fallback executables
(`7za.exe` / `7za_arm64.exe`), and `LICENSE.txt`, `ReadMe.md` and `WhatsNew.md`.
-3. **release** - creates a GitHub release for the tag and attaches all zips and checksums, with
- automatically generated release notes.
+3. **release** - checks out the repository history, then creates a GitHub release for the tag and
+ attaches all zips and checksums, with automatically generated release notes.
### Creating a release
diff --git a/docs/release-notes.md b/docs/release-notes.md
index b476308..fdf378f 100644
--- a/docs/release-notes.md
+++ b/docs/release-notes.md
@@ -9,6 +9,20 @@ description: "Release history for ROM Validator. Full details on GitHub Releases
The full release history, with commit-level detail and downloadable zips, is available on the
[GitHub Releases](https://github.com/purelogiccode/RomValidator/releases) page.
+## 2.9.1
+
+### Highlights
+
+- **Reliable release verification**: fixed a race in the bug-report sink test that could make the
+ release verification job fail intermittently.
+- **Generated release notes**: the publish job now checks out the full repository history before
+ creating the GitHub release, so `gh release create --generate-notes` works reliably.
+
+### Notes
+
+- Maintenance release; the application behavior is unchanged from 2.9.0.
+- The release zip is framework-dependent and requires the .NET 10 Desktop Runtime.
+
## 2.9.0
### Highlights