Docs

Status messages

Status messages are the headlines and errors your deployment card shows the customer. These practices apply to every Deployment UX option that shows status in your product: a Deploy button and your own setup screen.

Example UI /Second retry

Document processing

Settings · Deploy in your cloud

Setting up

Setting up in your AWS account

Resources

Compute3Setting up
  • Compute clustercomputeCreating

    Could not read the security group for the machines. Retrying automatically.

    Error details
    CLOUD_PLATFORM_ERROR: Could not read the security group for the machines: AWS reported it missing.
  • API serverapiWaiting

    Waiting for Compute cluster.

  • Event processoreventsRunning
Data1Running
  • Uploads bucketuploadsRunning
Secrets and keys2Running
  • Service credentialscredentialsRunning
  • Application secretssecretsRunning
Networking and access3Running
  • Networkdefault-networkRunning
  • Management identitymanagementRunning
  • Service account (application)application-saRunning

Name the cloud and the customer's role ("your AWS admin"), not Alien. Your customer bought your product.

Words to use

SituationUseAvoid
Waiting for initial setup"Finish the setup in AWS.""Deploying…"
Setting up"Setting up in your AWS account.""45% complete"
Repeated retry"Could not read the security group. Retrying automatically.""Failed"
Failed, customer fix"Ask your AWS admin to raise the vCPU quota for us-east-1.""Something went wrong."
Running, not tested"Deployed. Run a connection test.""Live"
Stale heartbeat"We can't confirm the current state.""Down", "Offline"
Blocked update"Version 13 needs your AWS admin. Version 12 keeps running.""Update failed"
Removed"Removed from Document processing.""Nothing left in your account"

Say "set up" or "deploy" for what the admin does. Never show internal steps or IDs in the headline.

Errors

Show the cloud's real error, under the resource it belongs to, with the fix.

  • Hide the first retry. retryAttempt is 1: nothing in the main view. Keep it in a details view and your logs.
  • Show repeated retries inline. retryAttempt is 2 or more: the error under its resource, with "Retrying automatically."
  • Show a stop at once. A status that ends in -failed: the error, with what to do.
  • Pass every error to automation. Hide it only for humans. APIs and agents get every error from the first failure.

Errors and retries has the fields and the responses.

Accessibility

  • Text, not color alone. Every badge and dot has a word next to it.
  • Announce changes once. Put the status headline in an aria-live="polite" region, and update it only when the state changes, not on each poll.
  • Keep focus. Don't move focus when a poll updates the page.
  • Readable times. Render relative times in a <time datetime="…"> element with the full time on hover.
  • Reduced motion. Swap spinners for a static icon when prefers-reduced-motion is set.

Test it

  • Read every headline aloud with a screen reader while the page polls. It announces each state change once.
  • Replay a retry. Return the same error with retryAttempt 1, then 2. The main view stays quiet on 1 and shows one inline message on 2.

Next

On this page