From 92bfcc6e20fa829619cf5f55ccdd44eed4495663 Mon Sep 17 00:00:00 2001 From: Sebastian Henn <138793908+SebHenn@users.noreply.github.com> Date: Tue, 27 Oct 2026 18:39:59 +0100 Subject: [PATCH] chore: release v0.7.0 Co-Authored-By: Claude Opus 5.5 --- CHANGELOG.md | 27 ++++++++++++++++++++++++++- Directory.Build.props | 2 +- README.md | 4 ++-- SECURITY.md | 3 ++- action.yml | 2 +- deploy/helm/cifail/Chart.yaml | 4 ++-- 6 files changed, 34 insertions(+), 8 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 863276b..3a2b102 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -9,6 +9,30 @@ after 1.0. ## [Unreleased] +## [0.7.0] - 2026-10-27 + +The action leaves Linux-only Docker behind and does more of the dotnet-tia check itself. + +- **Runners:** it runs on Windows and macOS runners from the release's own checksummed binary. +- **Reports:** it fetches the pull request's dotnet-tia report and refuses one from the wrong + commit. +- **Misses:** `selection-misses` now does three new things: + - it ranks candidates by their failure history + - it matches failures in test projects the selection left out whole + - it keeps its section in the summary when hundreds of tests fail +- **Rules:** 15 new rules cover GitHub Actions, Docker and .NET failures. + +**Two changes alter what existing users see:** +- A TRX report from a crashed test host now counts as a failure in `analyze` and `gate`. It used + to read as passing. +- A run cancelled by its concurrency group, or by losing its runner, is no longer + `generic-timeout`. A gate baseline that recorded one sees it under the new rule's fingerprint. + +The new runner support has two limits: +- The action runs on Windows and macOS only from this release on, so pin `@v0.7.0` or later + there. +- Matching skipped projects needs `skippedProjects` from dotnet-tia 0.8 or later. + ### Added - **The action runs on Windows and macOS runners** @@ -696,7 +720,8 @@ First tagged release. **Superseded — do not install it**: its assets are named `cifail-0.1.0-alpha-*` while the tag is `v0.1.0`, so nothing that follows the documented install instructions can find them. Fixed in 0.2.0. -[Unreleased]: https://github.com/SebHenn/ci-failure-intelligence/compare/v0.6.0...HEAD +[Unreleased]: https://github.com/SebHenn/ci-failure-intelligence/compare/v0.7.0...HEAD +[0.7.0]: https://github.com/SebHenn/ci-failure-intelligence/compare/v0.6.0...v0.7.0 [0.6.0]: https://github.com/SebHenn/ci-failure-intelligence/compare/v0.5.0...v0.6.0 [0.5.0]: https://github.com/SebHenn/ci-failure-intelligence/compare/v0.4.0...v0.5.0 [0.4.0]: https://github.com/SebHenn/ci-failure-intelligence/compare/v0.3.2...v0.4.0 diff --git a/Directory.Build.props b/Directory.Build.props index 0cb1f65..33158b9 100644 --- a/Directory.Build.props +++ b/Directory.Build.props @@ -8,7 +8,7 @@ the build if one does, because a second copy is how the 0.1.0/0.1.0-alpha split that broke every install path got in. --> - 0.6.0 + 0.7.0 net8.0 enable diff --git a/README.md b/README.md index 6ef75b4..c1f298b 100644 --- a/README.md +++ b/README.md @@ -357,14 +357,14 @@ prints one line naming what actually ran, first thing in its log and at the foot summary: ``` -cifail action v0.6.0 (SebHenn/ci-failure-intelligence@v1) | cifail 0.6.0 | image ghcr.io/sebhenn/cifail:0.6.0@sha256:… +cifail action v0.7.0 (SebHenn/ci-failure-intelligence@v1) | cifail 0.7.0 | image ghcr.io/sebhenn/cifail:0.7.0@sha256:… ``` If a fix listed in the [changelog](CHANGELOG.md) doesn't seem to be there, read that line before anything else — it names the action build, the CLI inside it, and the exact image digest your runner used (runners cache). The action runs the image built from its own release, so one pin covers both: pin by version if you'd rather upgrade deliberately, and -`uses: SebHenn/ci-failure-intelligence@v0.6.0` runs `ghcr.io/sebhenn/cifail:0.6.0`. +`uses: SebHenn/ci-failure-intelligence@v0.7.0` runs `ghcr.io/sebhenn/cifail:0.7.0`. Inputs: `log` (file, **directory or glob** to analyze), `mode` (`analyze`, the default, or `gate`), `args` (extra flags, e.g. `--type node`), `image` (run a different image; by diff --git a/SECURITY.md b/SECURITY.md index cc8a33c..d8890d4 100644 --- a/SECURITY.md +++ b/SECURITY.md @@ -22,7 +22,8 @@ release from `main`**. Only the latest release is supported. | Version | Supported | | --- | --- | -| 0.6.x | ✅ | +| 0.7.x | ✅ | +| 0.6.x | ❌ — superseded | | 0.5.x | ❌ — superseded | | 0.4.x | ❌ — superseded | | 0.3.x | ❌ — superseded | diff --git a/action.yml b/action.yml index 1cc71fa..8d4b2e5 100644 --- a/action.yml +++ b/action.yml @@ -116,7 +116,7 @@ runs: # Which build of this action is running. `@v1` is a moving tag, so the ref a consumer # wrote does not identify a build — this stamp does. Bumped with in # Directory.Build.props and enforced by scripts/check-versions.sh, so it cannot drift. - CIFAIL_ACTION_VERSION: '0.6.0' + CIFAIL_ACTION_VERSION: '0.7.0' # Empty for a local `uses: ./` checkout; that is reported as such rather than guessed. CIFAIL_ACTION_REF: ${{ github.action_ref }} CIFAIL_ACTION_REPO: ${{ github.action_repository }} diff --git a/deploy/helm/cifail/Chart.yaml b/deploy/helm/cifail/Chart.yaml index df9fdde..7e2bbba 100644 --- a/deploy/helm/cifail/Chart.yaml +++ b/deploy/helm/cifail/Chart.yaml @@ -6,10 +6,10 @@ description: | See deploy/README.md. type: application # Chart version; bump on chart changes. -version: 0.6.0 +version: 0.7.0 # The cifail version this chart targets (image tag default). # Must match in Directory.Build.props — scripts/check-versions.sh enforces this. -appVersion: "0.6.0" +appVersion: "0.7.0" keywords: - ci - diagnostics