Summary
User validation errors dominate with appropriate CLI messaging, while backend API restrictions continue as expected patterns. One CLI bug identified with unclassified build failures in eject command when npm/vite commands fail.
| Metric |
Value |
| Time range |
last 24 hours |
| Total errors |
401 |
| CLI bugs |
1 |
| Backend issues |
3 |
| User errors (working as designed) |
6 |
| Unique users affected |
130 |
| Internal user occurrences |
13 |
Errors requiring action
1. Build command failures in eject lack proper CLI error classification — CLI bug
|
|
| Error code |
null (missing) |
| Occurrences |
13 (0 internal) |
| Users affected |
13 |
| Command |
eject |
| Platforms |
Darwin, Windows |
| PostHog |
View in error tracking |
| Existing issue |
Referenced in #524, #525, #526, #527, #528 |
| Recurring |
Yes (8+ days across multiple reports) |
Error: (from PostHog — the actual error message users see)
Command failed with exit code 1: 'npm run build'
warn - The class `duration-[1500ms]` is ambiguous and matches multiple utilities.
warn - If this is content and not a class, replace it with `duration-[1500ms]` to silence this warning.
✗ Build failed in 20.10s
error during build:
Could not resolve "../components/search/GlobalSearch" from "src/Layout.jsx"
Stack trace: (only CLI frames shown)
at runCLI (packages/cli/src/cli/index.ts:59)
at Command.parseAsync (commander library)
Root cause: In the eject command, execa calls for npm install and build commands are not wrapped in proper CLI error handling:
// packages/cli/src/cli/commands/project/eject.ts:164-167
await execa({ cwd: resolvedPath, shell: true })`${installCommand}`;
updateMessage("Building project...");
await execa({ cwd: resolvedPath, shell: true })`${buildCommand}`;
When these commands fail (missing files, build errors, permission issues), raw ExecaError objects bubble up without proper CLI error classification, resulting in null error_code and is_user_error values in telemetry.
Suggested fix: In packages/cli/src/cli/commands/project/eject.ts:164-167, wrap the execa calls in try-catch blocks and throw appropriate CLI error classes (like BuildFailedError or DependencyInstallationError) instead of allowing raw ExecaError to bubble up unclassified.
Backend issues (not CLI fixes)
| Error |
Occurrences |
Users |
Command |
PostHog |
| Backend Platform restrictions (428) |
46 |
30 |
deploy, entities push |
link |
| Archive not found (404) |
4 |
1 |
eject |
link |
| Missing index.html (400) |
3 |
1 |
deploy |
link |
Backend correctly enforces business rules where certain endpoints are only available for Backend Platform apps. CLI properly reports these via standard API error handling. Archive not found and missing index.html errors represent backend data integrity issues properly surfaced to users.
User errors (working as designed)
| Error |
Occurrences |
Users |
Command |
PostHog |
| Function entry file validation |
165 |
21 |
eject |
link |
| Project not found validation |
78 |
31 |
exec, link |
link |
| Entity schema validation |
55 |
22 |
entities push, functions deploy |
link |
| Authentication timeout |
27 |
27 |
whoami |
link |
| Deno dependency validation |
16 |
8 |
exec |
link |
| Project already linked |
13 |
11 |
link |
link |
Function entry file validation: From packages/cli/src/core/resources/function/config.ts:40-47, provides clear guidance:
throw new InvalidInputError(
`Function entry file not found: ${entryPath} (referenced in ${configPath})`,
{
hints: [{ message: "Check the 'entry' field in your function config" }],
},
);
Project not found validation: From packages/cli/src/core/project/app-config.ts:48-50, provides clear guidance:
throw new ConfigNotFoundError(
"No Base44 project found. Run this command from a project directory with a config.jsonc file.",
);
All user errors provide specific validation messages and actionable guidance for resolution.
Recurring errors
Based on previous daily reports (#524-528), these errors continue from multiple days:
| Error |
Days recurring |
Existing issue |
Tracked? |
| Function entry file validation |
2+ days |
Recent reports |
Yes (expected user error) |
| Backend Platform restrictions |
15+ days |
All recent reports |
Yes (backend business rules) |
| Project not found validation |
23+ days |
All previous reports |
Yes (expected user error) |
| Entity schema validation |
23+ days |
All previous reports |
Yes (expected user error) |
| Build command failures in eject |
8+ days |
#524, #525, #526, #527, #528 |
Partially tracked (needs error classification fix) |
| Authentication timeout |
23+ days |
All previous reports |
Yes (expected timeout) |
| Dependency validation |
23+ days |
All previous reports |
Yes (expected user error) |
The build command failures in eject are tracked in recent reports but the underlying error classification bug persists.
Action items
- [medium]
packages/cli/src/cli/commands/project/eject.ts:164-167 — Wrap execa calls for npm install and build commands in try-catch blocks and throw appropriate CLI error classes (like BuildFailedError or DependencyInstallationError) to ensure proper error classification instead of allowing raw ExecaError to bubble up with null error_code values
- [low] Backend Platform restrictions (428 errors) and archive not found (404 errors) represent correct API behavior - users receive appropriate error messages and guidance
- [low] All user validation errors provide clear guidance and actionable next steps for resolution - no CLI changes needed
Summary
User validation errors dominate with appropriate CLI messaging, while backend API restrictions continue as expected patterns. One CLI bug identified with unclassified build failures in eject command when npm/vite commands fail.
Errors requiring action
1. Build command failures in eject lack proper CLI error classification — CLI bug
ejectError: (from PostHog — the actual error message users see)
Stack trace: (only CLI frames shown)
Root cause: In the eject command, execa calls for npm install and build commands are not wrapped in proper CLI error handling:
When these commands fail (missing files, build errors, permission issues), raw
ExecaErrorobjects bubble up without proper CLI error classification, resulting in null error_code and is_user_error values in telemetry.Suggested fix: In
packages/cli/src/cli/commands/project/eject.ts:164-167, wrap the execa calls in try-catch blocks and throw appropriate CLI error classes (likeBuildFailedErrororDependencyInstallationError) instead of allowing raw ExecaError to bubble up unclassified.Backend issues (not CLI fixes)
Backend correctly enforces business rules where certain endpoints are only available for Backend Platform apps. CLI properly reports these via standard API error handling. Archive not found and missing index.html errors represent backend data integrity issues properly surfaced to users.
User errors (working as designed)
Function entry file validation: From
packages/cli/src/core/resources/function/config.ts:40-47, provides clear guidance:Project not found validation: From
packages/cli/src/core/project/app-config.ts:48-50, provides clear guidance:All user errors provide specific validation messages and actionable guidance for resolution.
Recurring errors
Based on previous daily reports (#524-528), these errors continue from multiple days:
The build command failures in eject are tracked in recent reports but the underlying error classification bug persists.
Action items
packages/cli/src/cli/commands/project/eject.ts:164-167— Wrap execa calls for npm install and build commands in try-catch blocks and throw appropriate CLI error classes (likeBuildFailedErrororDependencyInstallationError) to ensure proper error classification instead of allowing raw ExecaError to bubble up with null error_code values