Skip to content
Hotrail

Docs

Staged rollouts and auto-pause

Release a bundle to a share of devices and let Hotrail pause the channel when failures spike.

Percent rollouts

Release with a percent between 0 and 100. Each device is assigned to a bucket from a hash of its device ID and the channel, so a device that got the update keeps getting it as you raise the percent.

bash
npx @buffersol/hotrail release --channel production --bundle 2K47 --percent 5
npx @buffersol/hotrail release --channel production --bundle 2K47 --percent 50
npx @buffersol/hotrail release --channel production --bundle 2K47 --percent 100

Auto-pause

Pass --autopause with a failure rate from 0 to 1. For example 0.02 means 2 percent. An evaluator runs every minute. When the failure rate of the channel passes the threshold and enough devices have reported, the channel is paused.

Pricing lists auto-pause under Maker and above. The code does not gate it by plan yet, so it runs on every plan, Free included.

bash
npx @buffersol/hotrail release --channel production --bundle 2K47 --percent 10 --autopause 0.02

What a pause does

A paused channel stops offering the bundle to new devices. Devices that already installed it keep it. To go back to the previous bundle, roll back. The pause also sends a channel.paused webhook, The channel.failure_spike webhook warns earlier, at half the threshold.

Failures that count

Devices report download, checksum, signature, manifest and unzip failures, and crash reverts, through the stats beacon. Every outcome is stored in full (failures and successes); there is no sampling.