-
Notifications
You must be signed in to change notification settings - Fork 7
Description
Summary
Authentication timeout classification bug continues for 7+ consecutive days - urgent fix needed. Backend deployment API continues returning "unusable" responses (27% of all errors). User validation errors remain stable at expected volumes.
| Metric | Value |
|---|---|
| Time range | last 24 hours |
| Total errors | 125 |
| CLI bugs | 1 |
| Backend issues | 2 |
| User errors (working as designed) | 5 |
| Unique users affected | 45 |
| Internal user occurrences | 19 |
Errors requiring action
1. Authentication timeout lacks error classification — CLI bug
| Error code | None (unclassified) |
| Occurrences | 18 (1 internal) |
| Users affected | 15 |
| Command | eject, deploy, login, whoami |
| Platforms | Multiple |
| PostHog | View in error tracking |
| Existing issue | #409 (recurring in multiple reports) |
| Recurring | Yes (7+ 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 a proper error class that extends UserError and sets error_code for telemetry classification.
Backend issues (not CLI fixes)
Brief table of errors caused by the backend/server, not the CLI:
| Error | Occurrences | Users | Command | PostHog |
|---|---|---|---|---|
| Site deployment returns "unusable" | 27 | 13 | deploy |
link |
| API_ERROR backend restrictions | 8 | 5 | functions deploy |
link |
Site deployment "unusable" responses (27 occurrences): Backend deployment API returning "unusable" status instead of successful deployment confirmation. This represents 22% of all errors and requires backend team investigation.
Backend Platform restrictions (8 occurrences): HTTP 428 "This endpoint is only available for Backend Platform apps" responses when users attempt to deploy functions to apps not created with Backend Platform features.
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) | 41 | 13 | link, deploy, functions deploy |
link |
| Output directory does not exist (INVALID_INPUT) | 19 | 6 | site deploy |
link |
| Invalid app/function schemas (SCHEMA_INVALID) | 5 | 4 | functions deploy |
link |
| App not configured (CONFIG_INVALID) | 4 | 4 | agents pull |
link |
| Project already linked (CONFIG_EXISTS) | 2 | 2 | link |
link |
All user validation errors provide clear error messages and actionable guidance for fixing configuration issues.
Recurring errors
| Error | Days recurring | Existing issue | Tracked? |
|---|---|---|---|
| Authentication timeout classification bug | 7+ days | #409 (multiple reports) | yes |
| Site deployment "unusable" responses | 4+ days | Previous error reports | no |
The authentication timeout error continues to lack proper error classification despite being flagged in multiple consecutive daily reports. This affects telemetry accuracy and error categorization.
Action items
Numbered list of concrete next steps, most important first:
- [critical]
packages/cli/src/cli/commands/auth/login-flow.ts:71— Replacethrow new Error("Authentication timed out. Please try again.")with a proper error class (e.g.,AuthenticationTimeoutErrorextendingUserError) that sets appropriateerror_codefor telemetry classification