Skip to main content
20260415.279
April 15, 2026

Performance and operational improvements

This release improves startup performance, reliability, and operational visibility for EC2 runners. To that end, this release introduces a managed metrics pipeline that lets you export runner metrics for monitoring runner health, environment lifecycle, and resource utilization. Every payload is written to S3 for auditing. Contact your account team to enable it.
  • Terminals are now killed when the dev container is rebuilt, preventing unresponsive sessions after a rebuild.
  • When multiple MCP servers expose tools with the same name, tool names are automatically prefixed with the server name to prevent silent overwrites.
  • Environment startup is faster. Independent supervisor initialization steps now run concurrently, and disk pre-warming runs for all instances with startup-critical paths prioritized.
  • SCM context parsing uses ETag-based caching, reducing latency for repeated operations.
  • Environments with a configured idle timeout now auto-stop correctly when all SSH connections close.
  • OAuth token refresh is more resilient. The token cache is invalidated on permanent errors, and retries use exponential backoff.
  • The “All Changes” diff view no longer shows stale or empty results when starting environments from pull requests.
  • Git status parsing correctly handles renamed files, fixing broken tree rendering and diff fetching.
  • Devcontainer features referenced by local path no longer break the cache key computation.
  • Instances under memory pressure now receive stop commands promptly.
  • The ReadFile API no longer returns stale content due to cache collisions.
  • CORS headers are now set on the in-environment browser proxy, fixing silent failures for cross-origin requests.
  • Agent SCM tool registration errors are no longer fatal, preventing empty system prompts when tool setup fails.
  • The runner-side agent now shows the “MCP servers taking longer than expected” warning.
  • GitHub PR agent reactions fire reliably when mentioning the agent.
  • Core dumps are disabled at supervisor startup, preventing potential secret leakage.
  • Updated Node.js to v24.14.1 (security) and BuildKit to v0.28.1.
20260407.1269
April 7, 2026

Faster startup and reliability improvements

Environment startup is 1-2 seconds faster. Automation trigger API calls now run in parallel instead of sequentially, and the devcontainer reconciler caches configuration reads in steady state, saving an additional ~130ms per cycle.

What else is in this release

  • Automation-triggered agent executions no longer get stuck in a waiting state when the agent attempts to ask for user input. The request is rejected immediately so the agent can proceed autonomously.
  • File watch self-healing now works correctly in all configurations. The discovery agent starts when watch mode is enabled, and the path denylist updates after a denylisted file is unlinked and recreated.
  • BPF watch-only mode emits WATCH_WRITE and WATCH_MMAP events correctly when untouchable mode is off.
  • Fixed a runner manager startup panic when multiple managed runners run in the same process.
  • Updated VM images for AWS runners.
  • Security dependency update: go-jose/v4 bumped to v4.1.4 (fixes GHSA-78h2-9frx-2jm8).
20260402.401
April 2, 2026

Warm pools now GA

Warm pools keep pre-initialized EC2 instances running from the latest prebuild snapshot. When you create an environment, Ona claims an instance that is already running with the snapshot loaded instead of launching a new one. Startup drops from minutes to around 10 seconds.Enable warm pools per environment class in your project’s prebuild settings. The runner dynamically scales the pool between 0 and your configured maximum (up to 10 in the dashboard, up to 20 via the CLI) based on demand. It also handles replenishment and automatic snapshot rotation when new prebuilds complete.Requires an Enterprise plan. Currently available on EC2 runners only. See the warm pools documentation for prerequisites and setup instructions.

Infrastructure upgrade required

This release requires a CloudFormation stack update.
This upgrade causes approximately 10-15 minutes of downtime where environments are unreachable. Schedule it during a low-usage period.
The full update takes ~30 minutes. Your data and environments are preserved. Running environments reconnect automatically after the update completes.

Before you upgrade

  1. Note your Prometheus metrics settings. The upgrade resets them. You will re-enter them afterward. See Custom metrics pipeline.
  2. Internet Gateway users (no NAT gateway): You must set Assign Public IP to Fargate Tasks to true during the CloudFormation parameter review step.
  3. Templates from January 2025 or earlier: Either stop and discard existing environments before upgrading, or add port 22 to your security group first.

Upgrade steps

  1. Go to Settings > Runners and select your runner
  2. Open the three-dot menu and click Upgrade runner
  3. Follow the dialog to update your CloudFormation stack
  4. Re-enter your Prometheus metrics settings after the update completes
Full walkthrough: Upgrade runner infrastructure

What else is in this release

  • Fargate replaces EC2 instances for the runner service. No more AMI allowlisting or update bottlenecks.
  • MemoryDB persists Ona agent conversations in real time, with S3 as a durable backup. This is a new billable AWS resource in your account.
  • Runner sizing lets you choose between small and large infrastructure via a CloudFormation parameter. Select large if your organization runs many concurrent agent sessions.
  • Runner update windows let you control when your runner applies updates. Set a maintenance window to avoid disruptions during peak hours.
  • Environment startup is faster thanks to earlier Docker socket activation and optimized content initialization.
  • Runner updates no longer cause brief user disconnects. The proxy now runs as a separate service.