Product updates
Changelog
Every release, fix, and improvement shipped to Relay.
AILatest
Relay AI flaky-test detection GA
Relay AI is generally available. Pipelines can now detect flaky tests, auto-retry transient failures, and post AI-generated summaries on pull requests.
- Flaky-test detection — statistical analysis across branches and matrix legs flags tests with intermittent failures
- Auto-retry — configure
retry.when: relay.ai.flakyon any step to retry only likely-transient failures - PR summaries —
relay/ai-summary@v1posts root-cause analysis and suggested fixes on failed builds - Quarantine workflow — move persistently flaky tests to non-blocking jobs without stopping the pipeline
- Insights dashboard — new Flaky Tests and Timing Regressions views under Insights
Enable Relay AI in Settings → AI or add an ai: block to relay.yaml. See the Relay AI docs for configuration examples.
Performance
Self-hosted ARM runners + 2x faster cache restores
This release expands runner coverage and significantly improves remote cache performance for monorepos and matrix builds.
- Self-hosted ARM64 runners — register
self-hosted-arm64agents for Apple Silicon and Linux ARM builds in your VPC - 2x faster cache restores — content-addressable cache layer reduces median restore time from 90s to under 45s on large
node_modulestrees - Cross-branch cache sharing — cache hits now apply across feature branches when lockfile hashes match
- Matrix deduplication — identical matrix legs share a single cache upload
- Runner labels UI — filter and manage self-hosted pools from Settings → Runners
Also in this release:
- Deploy gates support required reviewer groups per environment
- OIDC token lifetime extended to 15 minutes for multi-step cloud deploys
- Fixed a bug where preview environments were not destroyed when a PR was closed via merge queue
- Fixed a bug where cache keys containing
${{ hashFiles() }}were truncated on Windows runners - Fixed a bug where concurrent matrix jobs could exhaust small runner pools without queue visibility
Learn more in the Runners docs and API Reference.
Update
Preview environment TTL and idle cleanup
Preview environments now support per-repo TTL policies and idle detection so stale PR previews do not linger after merge or abandon.
- TTL policies — set default lifetime in hours under Settings → Environments → Previews
- Idle detection — previews with no HTTP traffic for 72 hours are queued for teardown with a Slack or email warning
- Bulk cleanup — admins can purge all previews for closed PRs from the Environments dashboard
- Cost visibility — preview compute minutes appear as a separate line item in Usage
Also in this release:
- Preview URLs support custom subdomains on verified domains
- Fixed a bug where redeploying a preview could leave the previous deployment running
- Fixed a bug where monorepo path filters ignored nested
preview:overrides
Configure TTL defaults in the API Reference.