Skip to main content
← TurnTwoMISSION CONTROL0.4812655050996505

Troubleshooting

Common issues, why they happen, and the fix.

Updated 2026-05-19

Cockpit shows "Recon" but I just paid

The Stripe webhook lands within seconds of payment, but the cockpit's tier badge is cached for ~5 seconds. Two options:

  • Wait 5–10 seconds and hard-refresh (Ctrl+F5 / Cmd+Shift+R).
  • If still wrong after 30 seconds, your webhook may have been deferred. Check /mission-control/settings → Subscription. If that page reflects the new tier but the cockpit badge doesn't, hard-refresh once more. If the settings page also shows the old tier, contact support — the Stripe event made it to your account but the mc_subscriptions row didn't write.

A module says "Locked — upgrade to Operator" but I'm Commander

This usually means the access cache is stale. Sign out and sign back in. If still locked, your subscription may have lapsed (Stripe's payment_failed webhook downgraded you). Check /mission-control/settings → Subscription for the actual state.

Topup ran but my budget didn't go up

Topups credit mc_ai_spend_ledger.topup_cents for the current period on receipt of the Stripe checkout.session.completed webhook. If the webhook was deferred, the budget bump is deferred too. Wait 30 seconds, hard-refresh; if still wrong, raise it — the payment is recorded server-side and we'll reconcile.

Telemetry purge — is it actually gone?

Yes. mc telemetry purge (or the same button on Settings → Devices) issues a hard delete on every mc_cli_sessions row matching your user_id. There's no soft-delete + trash. The action writes one audit-log row (mc_mission_logs) recording the deletion event for your own records, but the underlying telemetry rows are unrecoverable.

Light mode looks broken on page X

The two-tone toggle is new (S44, May 2026). First-pass light-mode token values may need polish on specific surfaces — rail-notches contrast, status LEDs at 8px, scanline opacity. If something looks visibly wrong, the fastest path is to toggle back to dark and report the issue with a screenshot. The light theme will iterate.

I switched to light on my laptop but my phone still shows dark

If you're signed in: your preference syncs across devices via users.mc_theme_preference. After your laptop toggle, the next page load on your phone should SSR-paint in light immediately. If it still shows dark, sign out and back in on the phone — the server preference loads on layout render.

If you're signed out: the toggle is per-browser via localStorage. There's no way to sync across devices without an account.

Anthropic API requests are 401-ing from my CLI

Your CLI token (mc_dev_*) is for Mission Control, not Anthropic. The MC CLI doesn't proxy Anthropic — it sits beside Claude Code, capturing your sessions and running cost analysis. To call Anthropic, use your own Anthropic API key (sk-ant-...) directly in Claude Code's config or your own SDK setup.

My alert never fired

Five things to check, in order:

  1. The forecast cron runs every 15 minutes. If you just crossed the threshold, give it 15 minutes.
  2. Each threshold (50 / 80 / 100) only fires once per period. If you're under the threshold, then over, then under again, the next fire is next period.
  3. The channel has to be enabled on the alert row in /mission-control/settings/alerts, not just present. Click the toggle so it's bright cyan.
  4. Webhooks need to be the incoming URL, not the channel URL. Slack: https://hooks.slack.com/services/.... Discord: https://discord.com/api/webhooks/....
  5. Hit Test on the alert row. If the test dispatch lands, the alert is wired right and the only remaining issue is threshold logic. If the test doesn't land, the webhook URL or the email rule is wrong.

More help

Email mc@turntwo.dev. SLA: Operator 24h, Commander 12h, Fleet 4h. Include your account email + a screenshot if it's a UI bug.