-
Notifications
You must be signed in to change notification settings - Fork 6
Description
Summary
The last 24 hours show 240 total errors across 9 error types affecting 95 unique users. Critical system errors include function deployment timeouts, authentication failures, and site build issues. High-volume user errors indicate potential UX improvements needed for project configuration workflows.
Key Metrics
| Metric | Value |
|---|---|
| Time range | last 24 hours |
| Total errors | 240 |
| System errors | 85 |
| User errors (noteworthy) | 155 |
| Unique users affected | 95 |
| Internal user occurrences | 25 |
Recurring Errors
Based on comparison with the previous daily report (Issue #272):
| Error | Days recurring | Existing issue | Status |
|---|---|---|---|
| Function deployment API_ERROR | 2 days | none | untracked |
| CONFIG_NOT_FOUND (high volume) | 2 days | none | untracked |
| Authentication timeouts | 2 days | none | untracked |
| FILE_NOT_FOUND (site deployment) | 2 days | none | untracked |
All critical system errors are recurring from yesterday, indicating persistent infrastructure or codebase issues requiring immediate attention.
Critical Issues
Issue 1: Function Deployment API Failures Continue
Error code: API_ERROR | Occurrences: 53 | Users affected: 21
Command: functions deploy, deploy | Type: System
Recurring: Yes (2 days) | Existing issue: None
PostHog: View in error tracking
Error from PostHog:
ApiError: Function deployment errors:
'loginWithPassword' function: Deno deployment failed: Deployment loginWithPassword failed with error:
The deployment failed: Module not found "file:///-shared/auth-utils/main.ts".
Stack trace (from PostHog, abbreviated):
ApiError: Error deploying functions: Too many functions. Maximum is 50, got 96.
at runCLI (src/cli/index.ts:32:4)
at Command.parseAsync (node_modules/commander/lib/command.js:1091:4)
What happened:
Function deployments continue failing due to server-side timeout and validation issues. Main problems include Deno deployment timeouts, function count limits, and missing module references.
Root cause in code:
The CLI makes PUT requests to /backend-functions without client-side timeouts, relying entirely on server-side limits:
// src/core/resources/function/api.ts:29-32
response = await appClient.put("backend-functions", {
json: payload,
timeout: false, // No client timeout - problematic for long deployments
});Function deployment errors are collected and re-thrown as ApiError:
// src/cli/commands/functions/deploy.ts:42-50
if (result.errors && result.errors.length > 0) {
const errorMessages = result.errors
.map((e) => `'${e.name}' function: ${e.message}`)
.join("\n");
throw new ApiError(`Function deployment errors:\n${errorMessages}`);
}Additional context:
- CLI versions: 0.0.31, 0.0.32
- Platforms: macOS (both Intel and ARM), Linux (x64)
- Internal vs external: 9 of 53 occurrences from internal users
- HTTP status codes: 422 (validation failures), 428 (precondition failures)
Expected behavior: Functions should deploy successfully within reasonable timeout limits
Actual behavior: Functions fail with server timeouts and validation errors, blocking development workflows
Issue 2: Authentication Timeout Failures Persist
Error code: None (generic Error) | Occurrences: 20 | Users affected: 19
Command: login, whoami, create | Type: System
Recurring: Yes (2 days) | Existing issue: None
PostHog: View in error tracking
Error from PostHog:
Error: Authentication timed out. Please try again.
Stack trace (from PostHog, abbreviated):
Error: Authentication timed out. Please try again.
at runCLI (src/cli/index.ts:32:4)
at Command.parseAsync (node_modules/commander/lib/command.js:1091:4)
What happened:
Authentication operations are timing out, affecting basic CLI workflows including login and user verification commands.
Root cause in code:
Authentication timeout errors originate from the login flow with a generic Error instead of a proper CLI error type:
// src/cli/commands/auth/login-flow.ts:70-71
if (error instanceof Error && error.message.includes("timed out")) {
throw new Error("Authentication timed out. Please try again.");
}Additional context:
- CLI versions: 0.0.32
- Platforms: Linux (x64) primarily
- Internal vs external: 0 of 20 occurrences from internal users
- Affects 19 unique users, indicating widespread authentication issues
Expected behavior: Authentication should complete successfully or provide specific retry guidance
Actual behavior: Authentication times out with generic error message and no error code
Issue 3: Site Deployment Without Build
Error code: FILE_NOT_FOUND | Occurrences: 12 | Users affected: 9
Command: deploy, site deploy | Type: System
Recurring: Yes (2 days) | Existing issue: None
PostHog: View in error tracking
Error from PostHog:
FileNotFoundError: Output directory does not exist: /Users/<redacted>/Desktop/IseoCapital/Software/pe-insight-ivan-backend-test/dist. Make sure to build your project first.
Stack trace (from PostHog, abbreviated):
FileNotFoundError: Output directory does not exist: /Users/<redacted>/...
at runCLI (src/cli/index.ts:32:4)
What happened:
Users attempt to deploy sites before building them, resulting in missing output directories like "dist".
Root cause in code:
Site deployment checks for output directory existence with a clear error message:
// src/core/site/deploy.ts:14-22
if (!(await pathExists(siteOutputDir))) {
throw new FileNotFoundError(
`Output directory does not exist: ${siteOutputDir}. Make sure to build your project first.`,
{
hints: [
{ message: "Run your build command (e.g., 'npm run build') first" },
],
},
);
}Additional context:
- CLI versions: 0.0.32
- Platforms: macOS (arm64), Windows (x64)
- Internal vs external: 2 of 12 occurrences from internal users
- Clear error message but users still attempting deploy without build
Expected behavior: Users build projects before deploying or CLI offers to build automatically
Actual behavior: Users deploy without building, causing predictable failures
Issue 4: High-Volume Project Configuration Issues
Error code: CONFIG_NOT_FOUND | Occurrences: 57 | Users affected: 21
Command: link, deploy, dev, functions deploy | Type: User (High Volume)
Recurring: Yes (2 days) | Existing issue: None
PostHog: View in error tracking
Error from PostHog:
ConfigNotFoundError: No Base44 project found. Run this command from a project directory with a config.jsonc file.
Stack trace (from PostHog, abbreviated):
ConfigNotFoundError: No Base44 project found. Run this command from a project directory with a config.jsonc file.
at runCLI (src/cli/index.ts:32:4)
What happened:
Very high volume of users running Base44 commands outside project directories, suggesting UX or documentation issues.
Root cause in code:
Project discovery walks up directories but throws error when no config is found:
// src/core/project/config.ts:73-76
if (!found) {
throw new ConfigNotFoundError(
`Project root not found. Please ensure config.jsonc or config.json exists in the project directory or ${PROJECT_SUBDIR}/ subdirectory.`,
);
}Additional context:
- CLI versions: 0.0.32
- Platforms: All platforms affected
- Internal vs external: 9 of 57 occurrences from internal users
- Highest volume user error indicates poor user guidance
Expected behavior: Users understand where to run Base44 commands
Actual behavior: High volume of users running commands in wrong directories
Issue 5: Entity Schema Validation Problems
Error code: SCHEMA_INVALID | Occurrences: 18 | Users affected: 14
Command: eject, entities push, deploy | Type: User (High Volume)
Recurring: Yes (2 days) | Existing issue: None
PostHog: View in error tracking
Error from PostHog:
SchemaValidationError: Invalid entity file in C:/Users/<redacted>/5-stars/base44/entities/account.jsonc:
✖ Keys must be known RLS keys or match data.* pattern with valid value
→ at rls.read.$or[1]
✖ Keys must be known RLS keys or match data.* pattern with valid value
→ at rls.write.$or[0]
Stack trace (from PostHog, abbreviated):
SchemaValidationError: Invalid entity file in C:/Users/<redacted>/...
at runCLI (src/cli/index.ts:32:4)
What happened:
Users have invalid entity definition files, particularly with Row Level Security (RLS) configurations and required field validation.
Root cause in code:
Entity validation uses strict Zod schemas with formatted error messages:
// src/core/errors.ts:226-237
constructor(context: string, zodError: z.ZodError, filePath?: string) {
const message = filePath
? `${context} in ${filePath}:\n${z.prettifyError(zodError)}`
: `${context}:\n${z.prettifyError(zodError)}`;
const hints: ErrorHint[] = filePath
? [{ message: `Fix the schema/data structure errors in ${filePath}` }]
: [{ message: "Fix the schema/data structure errors above" }];
super(message, { hints });
}Additional context:
- CLI versions: 0.0.32
- Platforms: Windows (x64), macOS (arm64)
- Internal vs external: 4 of 18 occurrences from internal users
- Common issues: invalid RLS configurations, missing required fields
Expected behavior: Entity files validate successfully with good error guidance
Actual behavior: High volume of schema failures suggesting documentation gaps
Suggestions
-
Fix function deployment timeout handling (critical): Add client-side timeout configuration in
src/core/resources/function/api.tsline 31. Consider progressive timeouts, chunked deployments, or retry logic for large function deployments. -
Investigate authentication timeout root cause (high): The generic Error at
src/cli/commands/auth/login-flow.ts:71needs investigation. Add detailed logging and implement proper CLI error types with better recovery guidance. -
Add auto-build detection for site deployment (high): Before throwing FileNotFoundError in
src/core/site/deploy.ts:15, detect common build patterns and offer to run builds automatically. -
Improve project discovery UX (medium): The high volume CONFIG_NOT_FOUND errors from
src/core/project/config.ts:74suggest adding better guidance. Consider showing nearby directories with Base44 projects or global discovery commands. -
Enhance entity schema validation assistance (medium): Add
base44 entities validatecommand or improve error messages with examples for common RLS patterns that cause failures in the validation logic.