Skip to content

feat(status): warn when the workspace lost its bundle components#74

Merged
hbrombeer merged 1 commit into
mainfrom
feat/status-bundle-health
Jul 11, 2026
Merged

feat(status): warn when the workspace lost its bundle components#74
hbrombeer merged 1 commit into
mainfrom
feat/status-bundle-health

Conversation

@hbrombeer

Copy link
Copy Markdown
Member

grounds cluster status rendered an emptied workspace as a perfectly healthy one:

│ state        │ active   │
│ deployments  │ 0 ready  │

which is byte-for-byte what a working, freshly-created workspace looks like. When a vCluster loses its state (idle-pause stranded its RWO Cinder volume, taking etcd with it), nothing in the CLI said anything was wrong — it took a manual kubectl get pods to discover the bundle base was gone.

forge now returns bundleHealth on GET /v1/cluster (groundsgg/grounds-forge#450) — the components it installed vs. what is actually running in the vCluster. This surfaces it:

│ bundle       │ degraded — 2 missing │

[✗] Workspace - Bundle components missing
    velocity, minestom-lobby
    The workspace is running but its bundle base is gone. `grounds cluster reset` rebuilds it.

Quiet when healthy. Tests cover both (degraded renders the components + the remedy; ok warns about nothing).

`grounds cluster status` rendered an emptied workspace as a perfectly
healthy `active` / `0 ready` — the exact output a working, freshly created
workspace produces. When a vCluster loses its state (idle-pause stranded its
RWO volume), nothing in the CLI said anything was wrong.

forge now returns `bundleHealth` on GET /v1/cluster (the components it
installed vs. what is actually running). Surface it: a `bundle` row in the
table, plus an error block naming the missing components and pointing at
`grounds cluster reset`.
@hbrombeer hbrombeer merged commit ea76365 into main Jul 11, 2026
5 checks passed
@hbrombeer hbrombeer deleted the feat/status-bundle-health branch July 11, 2026 22:27
This was referenced Jul 11, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant