Skip to main content

Troubleshooting Playbook

Start with the visible state. Do not guess from the infrastructure layer. The product should show enough context to decide whether the next owner is the user, tenant admin, app owner, or platform support.

First Triage

  1. Confirm tenant and project.
  2. Confirm the action attempted.
  3. Check whether the problem is account, access, quota, capacity, runtime, route, storage, billing, or cleanup.
  4. Capture the visible state and correlation ID.
  5. Retry only when the UI or API says retry is safe.
  6. Escalate to the correct owner with the evidence packet below.

Evidence Packet

Tenant:
Project:
User or service account:
Runtime, app, allocation, or resource:
Action attempted:
Visible state:
Correlation ID:
Timestamp and timezone:
Expected result:
Actual result:
Recent change:

Never include bearer tokens, cookies, private keys, one-time MFA codes, QR seeds, passwords, provider payloads, or raw secrets.

Blocked-State Matrix

StateWhat it usually meansFirst ownerWhat to do
Tenant missingUser is not mapped to the expected workspace.Tenant adminConfirm invitation, identity mapping, and tenant membership.
Project missingUser lacks project membership or project is not active.Tenant admin or project ownerGrant project role or switch to the right project.
Access deniedCurrent role cannot perform the action.Tenant adminConfirm role and least-privilege expectation.
MFA requiredAccount needs factor setup or recovery.User, then tenant adminComplete setup or start recovery.
SSH key missingRuntime requires SSH access and no public key is available.UserAdd a public key under Account Security.
Catalog emptyEntitlement, quota, region, or catalog visibility is not ready.Tenant adminConfirm project entitlement and target region.
Capacity unavailableRequested SKU or region has no matching capacity.Tenant admin or supportPick another profile or request capacity help.
Billing restrictedBalance, entitlement, or billing policy blocks launch.Tenant admin or billing ownerReview balance, quota, and billing status.
Quota blockedProject or tenant quota is exhausted.Tenant adminRelease unused work or request quota change.
Provisioning failedRuntime setup did not finish.Platform supportSend workload ID and correlation ID.
Connect failedRuntime exists but route, SSH, terminal, or endpoint is not working.User, app owner, or supportConfirm active state, retry once, send route/action evidence.
Storage deniedProject, user, or service account lacks storage access.Project ownerConfirm bucket ownership, role, and mount policy.
Release failedCleanup needs retry or operator assistance.User, then supportUse visible retry; escalate if retry remains blocked.

API And SDK Troubleshooting

SymptomLikely causeFix
token_missingNo bearer token was sent.Send Authorization: Bearer <token>.
token_invalid or token_expiredToken is wrong or expired.Refresh login or token.
insufficient_permissionsRole is too narrow for the action.Ask admin to review project role.
validation_errorRequest shape is invalid.Fix the request body and required fields.
allocation_not_foundResource does not exist in this project or user context.Check project ID and allocation ID.
sku_unavailableRequested capacity profile is unavailable.Choose another SKU or region.
rate_limit_exceededAutomation is calling too often.Back off and retry with jitter.

Log the correlation_id with your application error. Do not log token values.

App Developer Triage

When an app launch or route fails, check:

  1. manifest endpoint name and port;
  2. endpoint auth pattern;
  3. artifact digest and promotion state;
  4. required inputs and defaults;
  5. health check path;
  6. storage mount and permissions;
  7. release cleanup behavior.

If the app works only with manual operator steps, it is not ready for user promotion.

When The Docs Are Not Enough

If the product page does not explain a blocked state, send the evidence packet and say which page was unclear. That is a documentation and product gap, not a user failure.