HealkiteDocs

Guarded rollouts

A guarded release starts small, widens on its own while it's healthy and stops itself when it isn't.

sh
npx healkite release -p android -c <channel-key> -r 1.0.0 --sign healkite-signing.pem --guarded

What it watches

SignalHalts when
Rollbacks (trial launch never reached notifyAppReady)Rate is above 2% and above 2× the previous release's rate, or 10 rollbacks in total
Crashes (fatal JS errors via installErrorHandler())Above 2% of sessions
Your metrics (trackEvent)Events per session drop more than your limit vs the previous release

The previous release on the same target is the baseline, so a release isn't blamed for problems that were already there.

Steps

Defaults: 1% → 10% → 50% → 100%, at least 30 minutes and 20 installs per step. Change them per release:

sh
npx healkite release … --guarded --guard-steps 5,25,100 --guard-soak 2h --guard-min-installs 200

Business metrics

sh
npx healkite release … --guarded --guard-metric checkout_success:20 --guard-metric signup:30

Halts if checkout_success per session falls more than 20% compared with the previous release.

When a guard halts

The release is turned off, devices that installed it go back to the previous release on their next launch, and an alert goes to your Slack, Discord or webhook:

sh
npx healkite apps alerts --app app_… --webhook https://hooks.slack.com/services/… --test

Pause and resume

sh
npx healkite guard rel_…           # status and history
npx healkite guard pause rel_…
npx healkite guard resume rel_…