github robintra/perf-sentinel v0.8.9

latest release: chart-v0.2.54
one hour ago

What's new in v0.8.9

v0.8.9 makes perf-sentinel demo mark its quality-gate verdict as informational, so a first-run user no longer mistakes the demo's red Quality gate: FAILED line for a real failure. It also recommends cargo install perf-sentinel --locked in the install docs for reproducible builds, and the repository now ships a complete CHANGELOG.md covering every release. There is no change to the daemon wire protocol, the configuration format, or any machine output format, and the only visible difference is one extra parenthetical on the demo console line. The minimum supported Rust version stays 1.96.0. The simulation-lab release-gate was skipped for this release, a CLI-only change with no daemon behavior change.

CLI: informational quality gate in demo

perf-sentinel demo runs an embedded dataset and never enforces the quality gate, it has no --ci and always exits 0. Its final line nonetheless read Quality gate: FAILED in red, which reads as an error to someone running the tool for the first time. The line now reads Quality gate: FAILED (informational in demo, would exit 1 under analyze --ci). The annotation is console-only, demo-only, and limited to the failed state, so the passed state and every other command are unchanged. It is appended after the color reset, so it stays uncolored in a terminal and ANSI-free when the output is piped. The analyze, tempo, and jaeger-query renderers and every machine export (JSON, SARIF, HTML, NDJSON) are byte-for-byte unchanged, and analyze --ci still exits 1 on a failed gate.

Documentation

The crates.io install command in README.md, README-FR.md, and the distribution-strategy notes now recommends cargo install perf-sentinel --locked for reproducible fresh installs. The repository also ships a complete CHANGELOG.md at its root, backfilled from the release notes to cover every release from 0.1.0 to 0.8.9 in Keep a Changelog form.

Helm chart

charts/perf-sentinel 0.2.53 to 0.2.54, appVersion 0.8.8 to 0.8.9. Template surface unchanged, additive metadata only.

Operator-visible behavior change

None on any daemon or machine surface. The only visible change is the extra informational parenthetical on the demo console line. No detection verdict, daemon route, OTLP wire shape, configuration key, or Prometheus metric changes.

Why this is a patch and not a minor

The release is additive and backward compatible. It changes one presentation line in the demo command and the recommended install incantation in the docs. There is no new CLI flag, no configuration change, and no change to any output format, daemon HTTP route, OTLP wire protocol, or Prometheus metric. The minimum supported Rust version stays 1.96.0.

Validation

The simulation-lab release-gate was skipped for this release, a CLI-only change with no daemon behavior change. CI covers the build, the full test suite (cargo test --workspace), clippy at -D warnings, and cargo fmt. The demo annotation is pinned by two end-to-end tests, one asserting the annotated line under demo and one asserting its absence on the analyze path.

Verifying this release

# Binary integrity via SLSA Build L3 attestation
gh attestation verify perf-sentinel-linux-amd64 \
  --owner robintra --repo perf-sentinel

# A periodic disclosure produced by this binary
perf-sentinel verify-hash --report perf-sentinel-report.json \
  --expected-identity "https://github.com/robintra/perf-sentinel/.github/workflows/release.yml@refs/tags/v0.8.9" \
  --expected-issuer "https://token.actions.githubusercontent.com"

gh CLI 2.49 or newer required for gh attestation verify (unchanged from v0.7.2).

Full Changelog: v0.8.8...v0.8.9

Don't miss a new perf-sentinel release

NewReleases is sending notifications on new releases.