carry of #27675: add PlatformMachines snapshot deletion
Merged
TE
7d ago+155+155+012345678901234567890123456789-10-10-01234567890123456789
Carry of #27675: add PlatformMachines snapshot deletion. This branch merges current feat-cmux-next and carries the original purpose and authorship while repairing snapshot ownership expiry and failed-delete retry findings.
Original PR: https://github.com/manaflow-ai/cmux/pull/27675
Agent session: agent session
![View with [code]smith](https://pr-comments-assets.blacksmith.sh/codesmith/view-with-codesmith-dark-v3-3x.png)
![Autofix with [code]smith](https://pr-comments-assets.blacksmith.sh/codesmith/autofix-with-codesmith-dark-3x.png)
Need help on this PR? Tag @codesmith-bot with what you need.
Summary by cubic
Adds the deleteSnapshot RPC to PlatformMachines so a user can delete their own platform-created VM snapshots, including after the snapshot's creation ledger has been pruned and after the user has left the team.
- Platform snapshot rows now carry a
platformmarker that survives ledger pruning and source-machine deletion; legacy platform snapshots without the marker get the marker backfilled in the same transaction that prunes their creation key. - Failed provider deletes are retried idempotently instead of being trapped forever; deleting an already-deleted snapshot reports success.
- Deleting a non-platform snapshot is refused without calling the provider.
Migration
- No data migration needed; legacy platform snapshots are handled automatically the next time their creation ledger is pruned.