First real enhancement for the toggleable-enhancements framework (#3, #4).
Problem (UX)
In the Forge sandboxes list (https://forge.coreweave.com/sandboxes/*), a sandbox that has ended shows a green Completed pill with a checkmark. Green reads as healthy/running, so at a glance an ended sandbox looks live. "Completed" also implies the work succeeded, though a sandbox ends this way whether it was stopped or its process exited.
Proposed
A neutral grey Terminated pill with a neutral icon in place of the checkmark.
- Terminated, not Stopped: an ended sandbox cannot be started again — only a new sandbox can be created, optionally from a file-system snapshot. Common cloud usage reserves stopped for "can be started again" and terminated for "ended for good", so Stopped stays free for a future resumable state.
- Caveat to state alongside the clip: the list cannot tell a stopped sandbox from one whose process finished on its own, so a clean natural exit would also read as Terminated.
- Grey reuses Forge's own neutral pill colours (the pill styles itself from
--tag-text-color / --tag-background-color; the stylesheet already has a neutral variant), so the proposed state looks native.
Markup (from a saved copy of the page; structure only)
- Each row's status cell is a
td[role="gridcell"] whose data-key ends in :status.
- Inside it, a
span[data-component="Pill"] holds an icon span[data-icon="checkmark-circle"] (an inline SVG) followed by the text node Completed.
- Class names are build-hashed (e.g.
_green_<hash>_51) and will change between Forge releases — target the data- attributes, never the classes.
Tasks
First real enhancement for the toggleable-enhancements framework (#3, #4).
Problem (UX)
In the Forge sandboxes list (
https://forge.coreweave.com/sandboxes/*), a sandbox that has ended shows a green Completed pill with a checkmark. Green reads as healthy/running, so at a glance an ended sandbox looks live. "Completed" also implies the work succeeded, though a sandbox ends this way whether it was stopped or its process exited.Proposed
A neutral grey Terminated pill with a neutral icon in place of the checkmark.
--tag-text-color/--tag-background-color; the stylesheet already has a neutral variant), so the proposed state looks native.Markup (from a saved copy of the page; structure only)
td[role="gridcell"]whosedata-keyends in:status.span[data-component="Pill"]holds an iconspan[data-icon="checkmark-circle"](an inline SVG) followed by the text nodeCompleted._green_<hash>_51) and will change between Forge releases — target thedata-attributes, never the classes.Tasks
createRelabelchanges only the text node, so the icon element (and the framework's node references) survivetest/fixtures/(placeholder IDs only)enhancements/forge-sandbox-status.js: relabel + CSS (grey pill, neutral icon)