Skip to content

Product model: workspace (VM) and inference as independent products; VM-only signup #132

Open

Description

@sre-helmcode

Decision

Workspace (VM) and inference are independent products. A member may hold a VM slot without inference (for example, they cancel inference and keep their VM). The account stays active with the VM only.

Background: handoff-workspace-tiers-2026-09-18.md §2.3 ("A slot pays for compute, NOT inference").

Current state

  • OK: login and the VM survive inference churn (churned members keep full login sessions; slot-paid VMs are gated by the slot, not by membership).
  • Gap: when a subscribed member creates a slot VM, it receives a LiteLLM key at create time. On churn that key goes stale (the entitlement is revoked), and on resubscribe it is not re-injected into the VM. See workspace.go:238.
  • The model and gates are being prepared now (entitlements separated in code).
  • Deferred: a public VM-only signup (no waitlist, no membership) waits until the platform opens without a waitlist.

Acceptance criteria

Now (model/gates):

  • Inference key lifecycle for workspaces follows the inference entitlement: revoked/removed on churn, re-injected on resubscribe, with no restart of the VM required if feasible. Tests cover churn → resubscribe on an existing slot VM.
  • Entitlements separated: InferenceEntitled (membership) and slot entitlement (compute) evaluated independently everywhere (API, UI, operator).
  • UI reflects "VM active, inference inactive" as a valid state, with an upsell to inference instead of an error.

Later (when the platform opens without waitlist):

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

Labels

No labels
No labels

Type

No type

Projects

No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions