From ac798ea2d8eab5dcb3a8a44c2ff1626f93fbbed7 Mon Sep 17 00:00:00 2001 From: rcourtman Date: Sat, 28 Mar 2026 01:56:30 +0000 Subject: [PATCH] style(portal): clarify suspended overview posture --- internal/cloudcp/portal/dist/build_manifest.json | 2 +- internal/cloudcp/portal/dist/portal_app.js | 8 ++++---- .../portal/frontend/src/shell_view.test.ts | 3 +++ .../cloudcp/portal/frontend/src/shell_view.ts | 16 ++++++++++++---- 4 files changed, 20 insertions(+), 9 deletions(-) diff --git a/internal/cloudcp/portal/dist/build_manifest.json b/internal/cloudcp/portal/dist/build_manifest.json index ff0329700..304e7a06e 100644 --- a/internal/cloudcp/portal/dist/build_manifest.json +++ b/internal/cloudcp/portal/dist/build_manifest.json @@ -1,5 +1,5 @@ { - "source_hash": "53ef52e68bc30e2c6f494ddab770cd1a0c307b7b7521a22db366b067e603235f", + "source_hash": "fff9a599aa20c8a365424cb8744df17dde3d643784358165e71e9b3ab07d786c", "build_inputs": [ "package.json", "tsconfig.json", diff --git a/internal/cloudcp/portal/dist/portal_app.js b/internal/cloudcp/portal/dist/portal_app.js index 421f98cbd..bf31ec608 100644 --- a/internal/cloudcp/portal/dist/portal_app.js +++ b/internal/cloudcp/portal/dist/portal_app.js @@ -1836,10 +1836,10 @@ var checkingCount = countWorkspacesByHealth(workspaces, "checking"); var unhealthyCount = countWorkspacesByHealth(workspaces, "unhealthy"); var suspendedCount = countWorkspacesByState(workspaces, "suspended"); - var postureTitle = unhealthyCount > 0 ? "Hosted posture needs review" : checkingCount > 0 ? "Hosted posture is still settling" : "Hosted posture is stable"; - var postureCopy = unhealthyCount > 0 ? "One or more workspaces still need attention before the hosted fleet is trustworthy." : checkingCount > 0 ? "The hosted fleet is mostly healthy, but some workspaces are still waiting on a completed health check." : "The hosted fleet is healthy and ready for routine operator work."; - var nextStepTitle = unhealthyCount > 0 ? "Start in Workspaces" : checkingCount > 0 ? "Review pending checks" : "Fleet is clear"; - var nextStepCopy = unhealthyCount > 0 ? "One or more workspaces need review before you treat the hosted fleet as trustworthy." : checkingCount > 0 ? "The fleet is mostly healthy, but there are still workspaces waiting on a completed health check." : "Hosted posture looks stable. Move into team or account services only if you need to change access or billing."; + var postureTitle = unhealthyCount > 0 ? "Hosted posture needs review" : checkingCount > 0 ? "Hosted posture is still settling" : suspendedCount > 0 ? "Active fleet is stable" : "Hosted posture is stable"; + var postureCopy = unhealthyCount > 0 ? "One or more workspaces still need attention before the hosted fleet is trustworthy." : checkingCount > 0 ? "The hosted fleet is mostly healthy, but some workspaces are still waiting on a completed health check." : suspendedCount > 0 ? "Active hosted workspaces are healthy while suspended workspaces stay parked until you resume them." : "The hosted fleet is healthy and ready for routine operator work."; + var nextStepTitle = unhealthyCount > 0 ? "Start in Workspaces" : checkingCount > 0 ? "Review pending checks" : suspendedCount > 0 ? "Active fleet is clear" : "Fleet is clear"; + var nextStepCopy = unhealthyCount > 0 ? "One or more workspaces need review before you treat the hosted fleet as trustworthy." : checkingCount > 0 ? "The fleet is mostly healthy, but there are still workspaces waiting on a completed health check." : suspendedCount > 0 ? "Active hosted workspaces look stable. Resume a suspended workspace only when you are ready to bring it back into the operator path." : "Hosted posture looks stable. Move into team or account services only if you need to change access or billing."; var nextStepChecklist = unhealthyCount > 0 ? '
1. Review attention itemsOpen the fleet and inspect any workspace marked as checking or needs attention.
2. Resolve operator blockersUse Team if the right people are not already attached to the hosted account.
3. Escalate billing separatelyKeep account billing or self-hosted license work out of the workspace review flow.
' : checkingCount > 0 ? '
1. Verify pending health checksOpen the workspaces still settling and confirm they are safe to operate.
2. Keep the roster leanReview Team only if a pending workspace needs a different operator mix.
3. Leave billing as a separate actionUse account services or billing only when the hosted fleet is already understood.
' : '
1. Use Workspaces for the next operational taskOpen a client workspace directly when you are ready to do hosted work.
2. Use Team for access changes onlyKeep roster changes explicit instead of mixing them into routine workspace work.
3. Use account services when the task is commercialLicenses, refunds, privacy, and self-hosted billing stay in their own section.
'; var nextStepActions = '
"; return '