Skip to content

Error Report: 2026-03-17 (242 errors in last 24h) #423

@claude

Description

@claude

Summary

Authentication timeout classification bug persists for 9+ consecutive days - critical fix needed. The unclassified authentication timeout remains the top error, affecting 79 users with 56+ occurrences from the highest-impact error group alone.

Metric Value
Time range last 24 hours
Total errors 242
CLI bugs 1
Backend issues 1
User errors (working as designed) 6
Unique users affected 79
Internal user occurrences 35

Errors requiring action

1. Authentication timeout lacks error classification — CLI bug

Error code None (unclassified)
Occurrences 79 (2 internal)
Users affected 79
Command site deploy, login
Platforms Linux, Windows, Darwin
PostHog View in error tracking
Existing issue Referenced in #416, #415, #414, #413, #409
Recurring Yes (9+ days)

Error: (from PostHog — the actual error message users see)

Error: Authentication timed out. Please try again.

Stack trace: (only showing frames from packages/cli/src/)

at waitForAuthentication (packages/cli/src/cli/commands/auth/login-flow.ts:71)
at login (packages/cli/src/cli/commands/auth/login-flow.ts:105)

Root cause: The authentication timeout throws a generic Error without proper classification:

// packages/cli/src/cli/commands/auth/login-flow.ts:69-73
} catch (error) {
  if (error instanceof Error && error.message.includes("timed out")) {
    throw new Error("Authentication timed out. Please try again.");
  }
  throw error;
}

This timeout occurs when the OAuth2 device code expires (line 60: timeout: expiresIn * 1000). The generic Error lacks proper classification for telemetry tracking, causing error_code: null and is_user_error: null in PostHog.

Suggested fix: In packages/cli/src/cli/commands/auth/login-flow.ts:71, replace throw new Error("Authentication timed out. Please try again.") with throw new AuthExpiredError("Authentication timed out. Please try again.") using the existing error class, or create a new AuthTimeoutError extending AuthExpiredError.


Backend issues (not CLI fixes)

Brief table of errors caused by the backend/server, not the CLI:

Error Occurrences Users Command PostHog
OAuth expired_token 46 28 login View in error tracking

This represents OAuth token expiration errors handled correctly by the CLI but originating from backend authentication service.

User errors (working as designed)

Brief table of expected user errors where the CLI validation is correct:

Error Occurrences Users Command PostHog
No Base44 project found (CONFIG_NOT_FOUND) 40 16 functions deploy View in error tracking
Function not found (INVALID_INPUT) 39 11 logs View in error tracking
Invalid app configuration (SCHEMA_INVALID) 13 5 site deploy View in error tracking
Project already linked (CONFIG_EXISTS) 12 8 link View in error tracking
App not configured (CONFIG_INVALID) 11 7 site deploy View in error tracking
Deno dependency missing (DEPENDENCY_NOT_FOUND) 2 2 dev View in error tracking

All user errors provide appropriate validation messages and guidance for resolution.

Recurring errors

Error Days recurring Existing issue Tracked?
Authentication timeout (unclassified) 9+ days Referenced in multiple error reports No dedicated issue

The authentication timeout classification bug has been flagged in consecutive daily reports since at least 2026-03-08 but remains unfixed, affecting user experience and telemetry accuracy.

Action items

Numbered list of concrete next steps, most important first:

  1. [critical] packages/cli/src/cli/commands/auth/login-flow.ts:71 — Replace throw new Error("Authentication timed out. Please try again.") with throw new AuthExpiredError("Authentication timed out. Please try again.") to enable proper telemetry classification. The AuthExpiredError class is already defined in packages/cli/src/core/errors.ts:147 and extends UserError with appropriate error code and hints.

  2. [medium] Monitor OAuth expired_token errors — while these are backend authentication service issues, the volume (46 occurrences, 28 users) suggests potential auth flow improvements could reduce user friction.

Metadata

Metadata

Assignees

No one assigned

    Labels

    error-reportDaily error reports from telemetry data

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions