Repository navigation
Say what a stopped box costs, when it goes, and what is saved - #80
Merged
Merged
Conversation
A stopped box keeps billing for its disk until it's resumed or destroyed, and
only /workspace is saved, for the same box only. The page, CLI and Slack said
little of this and some of it wrong ("its last saved workspace is kept", which
no member can reach once the box is destroyed).
- krater/services/boxes.py: the rate now (spend.hourly_rate_microusd), when a
stopped box is destroyed, the last /workspace save, cents a day.
- Job page: a stopped box's price is "$X/h while stopped (about $Y a day): only
its disk bills", with when it is destroyed; every box shows its last save and
what is (and isn't) saved; Cancel says what it loses, for a running and a
stopped box.
- API: machine.usd_per_hour_now, and box.{destroy_at, destroy_after_hours,
workspace_saved_at, workspace_save_minutes}; usd_per_hour is unchanged.
- CLI: `krater show` prints the stopped cost, destroy time and last save
(old machine line against an older Krater); `krater cancel` on a box says
it can't be brought back.
- Slack: "Box stopped" gives the disk cost and destroy time (notices queued
before this render as before); destroy-soon and destroyed no longer say the
workspace is kept.
- Scheduler: the destroy reason and the stopped notice's payload.
- Guide and CLI docs: concrete disk cost, Cancel for boxes, the saved copy is
for that box only, troubleshooting rows.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
A stopped box keeps billing for its disk until it's resumed or destroyed. Only
/workspaceis saved, and only for that same box. Members weren't told most of this:krater showgave a stopped box's full GPU price;What members now see
/workspacewas last saved, and what is and isn't saved;machine.usd_per_hour_nowandbox.{destroy_at, destroy_after_hours, workspace_saved_at, workspace_save_minutes}.usd_per_houris unchanged.krater showprints the stopped cost, the destroy time and the last save. Against an older Krater it falls back to the old machine line;krater cancelon a box says the box can't be brought back.The rate comes from
spend.hourly_rate_microusd, the same rule the accrual uses. There is no migration.Not in this PR
A destroyed box's
/workspacecan't be downloaded, and a new box can't start from it. That's a separate decision.Tests
boxfield;showandcancellines, including against an older Krater;🤖 Generated with Claude Code