Skip to content

Commit cf823f7

Browse files
tonychang04claude
andcommitted
fix: make suspend copy honest on both compute planes
Review round 1: legacy Fly-backed services still get a true RAM-snapshot suspend, so "in-memory state does not persist" was unconditional in the wrong direction; and volume-bearing services cannot be suspended at all, so "volume state persists" pointed at an unreachable case. "Releases the machine" also avoids overloading "scales to zero", which this help output uses for auto-wake behavior. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
1 parent 876bddb commit cf823f7

1 file changed

Lines changed: 1 addition & 1 deletion

File tree

src/index.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -227,7 +227,7 @@ compute.command('start [service]').description('Bring a compute service online (
227227
.option('--json').option('--branch <branch>', 'branch (default: current)').action(guard((service, o) => computeCmd.computeStart(service, o)))
228228
compute.command('stop [service]').description('Take a compute service offline; traffic will NOT wake it until `start`')
229229
.option('--json').option('--branch <branch>', 'branch (default: current)').action(guard((service, o) => computeCmd.computeStop(service, o)))
230-
compute.command('suspend [service]').description('Suspend a compute service (scales to zero; disk/volume state persists, in-memory state does not); stays down until `start`')
230+
compute.command('suspend [service]').description('Suspend a compute service (releases the machine; disk state persists — do not rely on in-memory state surviving); stays down until `start`')
231231
.option('--json').option('--branch <branch>', 'branch (default: current)').action(guard((service, o) => computeCmd.computeSuspend(service, o)))
232232
compute.command('restart [service]').description("Restart a compute service by re-running the image it already runs against a freshly resolved env bundle — this is how a changed secret or binding reaches a running machine (env is baked into the machine at deploy time), and how a machine that is up but wedged gets cycled (`start` no-ops on one that is already started). No new image, no new spec. The service must be running: a stopped or suspended one comes back with `insta compute start`. All plans; gated: deploy — it lands configuration the same way a deploy does, so a policy denying deploys denies this too (`start`/`stop` stay ungated, and cycle a wedged machine without one). A service whose app fails to answer on its port coming back up reports that failure, and the machines are rolled back, best-effort, to the config they were serving")
233233
.option('--json').option('--branch <branch>', 'branch (default: current)').action(guard((service, o) => computeCmd.computeRestart(service, o)))

0 commit comments

Comments
 (0)