Volumes have no CLI, MCP, or console surface: v0.0.8 shipped an HTTP API and nothing else #122
Loading…
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Volumes shipped in v0.0.8 with an HTTP API and nothing else. A tenant who wants durable storage has to hand-roll curl against the plane, which makes the feature effectively unavailable to anyone using eitri the way eitri asks to be used.
What exists today (internal/server/api/routes.go:269-293):
Attachment has no route at all. A claim is bound to a VM by passing
volume_claimsin the CreateVM body, inside the create transaction — so attach is create-only and there is no detach short of destroying the VM.Missing surfaces:
eitri volumecommand of any kind.cmd/eitridoes not mention volumes.web/srcmentions volumes only inlib/api-types.ts, which is generated from the OpenAPI spec: the types are already there and nothing renders them.Worth splitting from the surface question, because it is a design decision rather than plumbing: should attach/detach exist on a live VM, or does attachment stay a property of VM creation? The current model is deliberate — binding inside the create tx is what makes the claim/volume/attachment invariant simple — and exposing "attach" in a CLI or MCP tool will read as though a running VM can take a disk unless the verb is named for what it does. Decide that before designing the commands, or the surface will promise something the model does not do.
Related: the docs (docs/volumes.md) describe the API, so a user who reads them is told to use curl.
Migrated from git-collab issue
8b89d1971c786dd33212ec80c30a0c1b27eaee90.Original author: a73x dev@a73x.sh.