ErrLookup › koala73/worldmonitor
koala73/worldmonitor
Real-time global intelligence dashboard. AI-powered news aggregation, geopolitical monitoring, and infrastructure tracking in a unified situational awareness interface · TypeScript · 2,147 source files
Analyzed at ffec79ac33 on 2026-08-12. 189 documented errors.
| Code / Message | Type | Severity | Tags |
|---|---|---|---|
| Redis not configured | exception | critical | redis, health, configuration, edge-function, env-vars |
| Webhook URL is not a valid URL | validation | error | webhook, ssrf, validation, url-parsing |
| Webhook URL must use HTTPS | validation | error | webhook, ssrf, tls, validation |
| Webhook URL must not point to a metadata endpoint | validation | error | webhook, ssrf, security, metadata, validation |
| Webhook URL must not point to a private/local address | validation | error | webhook, ssrf, security, private-ip, validation |
| Webhook URL DNS resolution failed: ${message} | validation | error | webhook, ssrf, dns, network, retryable |
| Webhook URL DNS resolution returned no addresses | validation | error | webhook, ssrf, dns, validation |
| HTTP ${response.status} | exception | error | scraper, network, upstream, rss, retryable |
| Redis request failed | exception | critical | redis, health, upstash, network, timeout |
| Redis snapshot lock failed | exception | critical | redis, health, distributed-lock, upstash, cold-start |
| Redis snapshot wait failed | exception | critical | redis, health, distributed-lock, backoff, upstash |
| Redis snapshot lock retry failed | exception | critical | redis, health, distributed-lock, upstash, retryable |
| serverUrl host is not allowed | exception | error | mcp, ssrf, security, proxy, private-ip |
| serverUrl hostname is blocked: ${hostname} | exception | error | mcp, ssrf, security, metadata, proxy |
| serverUrl DNS resolution failed: ${message} | exception | error | mcp, ssrf, dns, proxy, retryable |
| serverUrl DNS resolution returned no addresses | exception | error | mcp, ssrf, dns, proxy, validation |
| No result found in SSE response | exception | error | mcp, sse, json-rpc, proxy, upstream |
| No event feeds are available for exposure enrichment | exception | error | mcp, redis, source-unavailable, cache-miss, population-exposure |
| No digest input feeds are available | exception | error | mcp, redis, source-unavailable, cache-miss, alert-digest |
| No hotspot-escalation input feeds are available | exception | error | mcp, redis, source-unavailable, cache-miss, hotspot-escalation |
| The submarine-cable catalog is unavailable | exception | error | mcp, redis, source-unavailable, infrastructure, submarine-cable |
| Feed digest unavailable for ${variant}/en | exception | error | mcp, redis, source-unavailable, nlp, news-digest |
| get-china-decision-signals returned no canonical payload | exception | error | mcp, contract-regression, china-decision-signals, http |
| get-china-decision-signals returned an invalid canonical pay | exception | error | mcp, schema-regression, type-guard, china-decision-signals |
| Seeded world brief unavailable (${result.reason}) | exception | error | mcp, source-unavailable, world-brief, validation, llm-producer |
| get-country-intel-brief HTTP ${res.status}${code ? `: ${code | exception | error | mcp, http, country-intel-brief, upstream-failure, llm |
| cache_all_null | exception | error | mcp, redis, cache-miss, markets, degenerate-empty |
| Airspace data unavailable: both civilian and military source | exception | error | mcp, upstream-failure, airspace, aviation, both-sources-failed |
| get-vessel-snapshot HTTP ${res.status}${detail ? ` — ${detai | exception | error | mcp, http, vessel-snapshot, maritime, upstream-failure |
| get_intel_timeline requires at least one of domain ("conflic | validation | error | mcp, validation, intel-timeline, input-validation |
| URL protocol not allowed | http | error | rss-proxy, security, ssrf, url-validation, edge-function |
| Redirect to disallowed domain | http | error | rss-proxy, security, redirect, allowlist, edge-function |
| Too many redirects | http | error | rss-proxy, redirect, edge-function, loop-protection |
| Railway relay unavailable for relay-only domain: ${hostname} | http | error | rss-proxy, railway, relay, config, edge-function |
| payload_too_large | exception | error | security, payload-limit, edge-function, report-endpoint |
PRO_REQUIRED Notifications are a PRO feature. Upgrade to enable real-time and digest alerts. | error_code | error | convex, authorization, pro-required, entitlements, notifications |
INCOMPATIBLE_DELIVERY Real-time delivery is for Critical events only. To receive High or All events, c | error_code | error | convex, validation, notifications, business-rule |
COUNTRIES_LIMIT_EXCEEDED countries list capped at ${COUNTRIES_MAX} entries | error_code | error | convex, validation, limits, notifications |
TICKERS_LIMIT_EXCEEDED tickers list capped at ${TICKERS_MAX} entries | error_code | error | convex, validation, limits, notifications, watchlist |
UNAUTHENTICATED UNAUTHENTICATED | error_code | error | convex, auth, clerk, notifications |
| digestHour must be an integer 0–23 | validation | error | convex, validation, notifications, datetime |
| digestTimezone must be a valid IANA timezone (e.g. America/N | validation | error | convex, validation, notifications, datetime, timezone |
| quietHoursStart must be an integer 0–23 | validation | error | convex, validation, notifications, datetime, quiet-hours |
| quietHoursEnd must be an integer 0–23 | validation | error | convex, validation, notifications, datetime, quiet-hours |
| quietHoursTimezone must be a valid IANA timezone (e.g. Ameri | validation | error | convex, validation, notifications, timezone, quiet-hours |
| quietHoursStart and quietHoursEnd must differ (same value = | validation | error | convex, validation, business-rule, notifications, quiet-hours |
INVALID_API_KEY_SCOPES INVALID_API_KEY_SCOPES | error_code | error | convex, validation, api-keys, scopes |
API_ACCESS_REQUIRED API_ACCESS_REQUIRED | error_code | error | convex, entitlements, billing, api-keys, authorization |
COMPANY_MONITORING_ACCESS_DENIED COMPANY_MONITORING_ACCESS_DENIED | error_code | error | convex, api-keys, company-monitoring, authorization, entitlements |
INVALID_NAME INVALID_NAME | error_code | error | convex, api-keys, validation, input-validation |
INVALID_PREFIX INVALID_PREFIX | error_code | error | convex, api-keys, validation, regex, input-validation |
INVALID_HASH INVALID_HASH | error_code | error | convex, api-keys, validation, crypto, sha256, input-validation |
KEY_LIMIT_REACHED KEY_LIMIT_REACHED | error_code | error | convex, api-keys, quota, limit, concurrency |
DUPLICATE_KEY DUPLICATE_KEY | error_code | error | convex, api-keys, duplicate, uniqueness, crypto |
NOT_FOUND NOT_FOUND | error_code | error | convex, api-keys, not-found, tenancy, ownership |
ALREADY_REVOKED ALREADY_REVOKED | error_code | warning | convex, api-keys, idempotency, revocation |
NOTICE_NOT_FOUND NOTICE_NOT_FOUND | error_code | error | convex, notices, not-found, tenancy, ownership |
| [assignAndExportWave] waveLabel "${waveLabel}" already has s | exception | error | convex, broadcast, resend, wave-export, uniqueness, idempotency |
| [assignAndExportWave] pool empty — all registrations are sup | exception | warning | convex, broadcast, resend, wave-export, empty-pool, suppression |
| [backfillCanary250] RESEND_API_KEY not set — run with the sa | exception | critical | convex, broadcast, resend, env, config, backfill |
| [backfillCanary250] CANARY_SENT_AT_MS failed Date.parse — ch | exception | critical | convex, broadcast, backfill, config, source-bug |
| [backfillCanary250] Resend list-contacts ${res.status}: ${bo | exception | error | convex, broadcast, resend, http, network, backfill |
| [backfillCanary250] unexpected Resend response shape: ${JSON | exception | error | convex, broadcast, resend, schema-drift, api-contract, backfill |
| [initRamp] rampCurve must be non-empty | exception | error | convex, broadcast, ramp, validation, config |
| [initRamp] rampCurve entries must be positive integers | exception | error | convex, broadcast, ramp, validation, input-validation |
| [initRamp] seedLastWaveBroadcastId and seedLastWaveSentAt mu | exception | error | convex, broadcast, ramp, validation, config, paired-args |
| [initRamp] waveLabelOffset=${offset} signals resumption afte | exception | error | convex, broadcast, ramp, validation, kill-gate, config |
| [initRamp] ramp already configured (active=${existing.active | exception | error | convex, broadcast, ramp, idempotency, config, state-guard |
| [pauseRamp] no ramp configured | exception | error | convex, broadcast-ramp, state-missing, operator-error |
| [resumeRamp] no ramp configured | exception | error | convex, broadcast-ramp, state-missing, operator-error |
| [resumeRamp] kill-gate is tripped; clearKillGate first after | exception | error | convex, broadcast-ramp, kill-gate, sender-reputation, safety-gate |
| [clearKillGate] no ramp configured | exception | error | convex, broadcast-ramp, state-missing, kill-gate |
| [clearPartialFailure] no ramp configured | exception | error | convex, broadcast-ramp, state-missing, partial-failure |
| [clearPartialFailure] refused: pending progress markers pres | exception | error | convex, broadcast-ramp, partial-failure, safety-gate, fail-closed |
| [recoverFromPartialFailure] no ramp configured | exception | error | convex, broadcast-ramp, state-missing, partial-failure |
| [recoverFromPartialFailure:manual-finished] currentTier=${ro | exception | error | convex, broadcast-ramp, partial-failure, bounds-check, operator-error |
| [recoverFromPartialFailure:manual-finished] missing required | exception | error | convex, broadcast-ramp, partial-failure, validation, operator-error |
| [forceReleaseLease] no ramp configured | exception | error | convex, broadcast-ramp, state-missing, lease |
| [_recordPendingExport] no ramp configured | exception | error | convex, broadcast-ramp, state-missing, lease, runner-internal |
| [_recordPendingExport] lease lost: expected runId=${args.run | exception | error | convex, broadcast-ramp, lease, concurrency, runner-internal |
| [_recordPendingBroadcast] no ramp configured | exception | error | convex, broadcast-ramp, state-missing, lease, runner-internal |
| [_recordPendingBroadcast] lease lost: expected runId=${args. | exception | error | convex, broadcast-ramp, lease, concurrency, runner-internal |
| [_recordWaveSent] no ramp configured | exception | error | convex, broadcast-ramp, state-missing, lease, runner-internal |
| [_recordWaveSent] tier moved underneath us: expected ${args. | exception | error | convex, broadcast-ramp, lease, concurrency, runner-internal, race-condition |
| [_recordWaveSent] lease lost: expected runId=${args.runId}, | exception | error | convex, broadcast-ramp, lease, concurrency, runner-internal |
| [runDailyRamp] rampCurve[${nextTier}] is undefined despite b | exception | critical | convex, broadcast-ramp, invariant, config-corruption, defensive |
| [runDailyRamp] inFlight bounds-check invariant violated | exception | critical | convex, broadcast-ramp, invariant, unreachable, defensive, code-defect |
| [createProLaunchBroadcast] RESEND_API_KEY not set | exception | error | convex, broadcast-ramp, resend, env-missing, configuration |
| [createProLaunchBroadcast] PRO_LAUNCH_PHYSICAL_ADDRESS is st | exception | critical | compliance, can-spam, email-broadcast, config, convex |
| [createProLaunchBroadcast] Resend ${res.status}: ${body} | exception | error | resend, email-broadcast, network, api-error, convex |
| [createProLaunchBroadcast] Resend response missing id: ${JSO | exception | error | resend, api-contract, network, convex, email-broadcast |
| [sendProLaunchBroadcast] RESEND_API_KEY not set | exception | critical | resend, environment, config, convex, secrets |
| [sendProLaunchBroadcast] Resend ${res.status}: ${errBody} | exception | error | resend, email-broadcast, network, api-error, convex |
| [_recordPoolFilterStats] no run ${args.runId} | exception | error | convex, state-machine, wave-runs, logic-bug, internal-mutation |
| [_persistPickedBatch] chunk too large: ${contacts.length} > | exception | error | convex, batching, write-limit, wave-runs, internal-mutation |
| [_markPickComplete] no run ${args.runId} | exception | error | convex, state-machine, wave-runs, logic-bug, internal-mutation |
| [_markPickComplete] run ${args.runId} is ${run.status}, expe | exception | error | convex, state-machine, wave-runs, idempotency, internal-mutation |
| INVALID_${field.toUpperCase()} | validation | warning | validation, input-sanitization, convex, security, unicode |
| COMPANY_MONITORING_ACCESS_DENIED | exception | error | convex, entitlement, authorization, company-monitoring, access-control |
| ACCOUNT_OWNER_FENCE_CONFLICT | exception | critical | convex, data-integrity, company-monitoring, fence-keyring, duplicate-root |
| ACCOUNT_OWNER_BINDING_MISMATCH | exception | critical | convex, data-integrity, company-monitoring, owner-binding, fence-keyring |
| COMPANY_MONITORING_ACCESS_DENIED | exception | error | convex, entitlement, authorization, company-monitoring, access-control, provisioning |
| ACCOUNT_NOT_FOUND | exception | error | convex, company-monitoring, not-found, terminalization, idempotency |
| COMPANY_MONITORING_${field}_INVALID | exception | warning | validation, input-sanitization, convex, company-monitoring, admission |
| COMPANY_MONITORING_MODEL_VERSION_INVALID | exception | error | |
| COMPANY_MONITORING_ADMISSION_EVIDENCE_INVALID | exception | error | |
| COMPANY_MONITORING_ADMISSION_EVIDENCE_MISSING | exception | error | |
| COMPANY_MONITORING_ADMISSION_QUERY_VERSION_INVALID | exception | error | |
| COMPANY_MONITORING_ADMISSION_EVIDENCE_STALE | exception | error | |
| COMPANY_MONITORING_EVIDENCE_REVISION_INVALID | exception | error | |
| COMPANY_MONITORING_CLASSIFICATION_REPLAY_CONFLICT | exception | error | |
| COMPANY_MONITORING_CLASSIFICATION_FENCED | exception | error | |
| COMPANY_MONITORING_ADMISSION_QUERY_VERSIONS_INVALID | exception | error | |
| COMPANY_MONITORING_CANDIDATE_HOLD_INVALID | exception | error | |
| COMPANY_MONITORING_ACCOUNT_NOT_FOUND | exception | error | |
| COMPANY_MONITORING_CLAIM_LIMIT_EXCEEDED | exception | error | |
| REPLAY_CONFLICT | exception | error | |
| COMPANY_LIMIT_REACHED | exception | error | |
| NOT_FOUND | exception | error | convex, not-found, company-monitoring, mutation |
| INVALID_COMPANY_PATCH | exception | error | convex, validation, limits, company-monitoring |
| CUSTOMER_REFERENCE_CONFLICT | exception | error | convex, uniqueness, conflict, company-monitoring |
| CLAIM_NOT_FOUND | exception | error | convex, not-found, claims, company-monitoring |
| REMOVED_COMPANY_IS_TERMINAL | exception | error | convex, state-machine, lifecycle, company-monitoring |
| COMPANY_MONITORING_EVIDENCE_SUBJECTS_INVALID | exception | error | convex, validation, limits, evidence, company-monitoring |
| COMPANY_MONITORING_EVIDENCE_BATCH_INVALID | exception | error | convex, validation, limits, evidence, company-monitoring |
| COMPANY_MONITORING_ACCOUNT_INACTIVE | exception | error | convex, authorization, account, evidence, company-monitoring |
| COMPANY_MONITORING_EVIDENCE_EXPANSION_INVALID | exception | error | convex, validation, limits, evidence, company-monitoring |
| INVALID_COMPANY_MONITORING_WORKER_ID | exception | error | convex, validation, worker, orchestration, company-monitoring |
| COMPANY_MONITORING_WORKER_UNAUTHORIZED | exception | critical | convex, security, authentication, secrets, worker, company-monitoring |
| COMPANY_MONITORING_CLAIM_POLICY_MIGRATION_REQUIRED | exception | error | convex, migration, rollout, policy, company-monitoring |
| COMPANY_MONITORING_ACCOUNT_INACTIVE | exception | error | convex, authorization, account, scheduling, company-monitoring |
| INVALID_COMPANY_MONITORING_COHORT | exception | error | convex, validation, limits, scheduling, company-monitoring |
| COMPANY_MONITORING_COMPANY_NOT_ACTIVE | exception | error | convex, lifecycle, scheduling, company-monitoring |
| Name is required | exception | warning | convex, validation, form, contact |
| Valid email is required | exception | error | validation, convex, contact-form, email |
FREE_EMAIL_NOT_ALLOWED Please use a corporate email address. | exception | error | validation, email, business-logic, b2b |
rate_limited Too many recent submissions for this email; try again later. | exception | warning | rate-limit, throttle, convex, contact-form |
UNAUTHENTICATED UNAUTHENTICATED | exception | error | auth, convex, clerk, follow |
INVALID_COUNTRY INVALID_COUNTRY | exception | error | validation, convex, country, iso2 |
EMPTY_INPUT EMPTY_INPUT | exception | warning | validation, convex, merge, input-guard |
INPUT_TOO_LARGE INPUT_TOO_LARGE | exception | error | validation, convex, merge, input-guard |
AUTH_REQUIRED AUTH_REQUIRED | error_code | error | auth, convex, clerk, helper |
| Dodo checkout session ${session.session_id} has no checkout_ | exception | error | payments, dodo, checkout, provider, convex |
PRO_REQUIRED PRO_REQUIRED | error_code | error | auth, convex, entitlement, pro, mcp |
NOT_FOUND NOT_FOUND | error_code | error | convex, mcp, tenancy, not-found |
ALREADY_REVOKED ALREADY_REVOKED | error_code | warning | convex, mcp, idempotency, revoke |
PRO_REQUIRED Notifications are a PRO feature. Upgrade to enable real-time and digest alerts. | error_code | error | auth, convex, entitlement, pro, notifications |
UNAUTHENTICATED UNAUTHENTICATED | error_code | error | auth, convex, clerk, notifications |
| chatId required for telegram channel | validation | error | validation, convex, notifications, telegram |
| webhookEnvelope required for slack channel | validation | error | validation, convex, notifications, slack |
| email required for email channel | validation | error | validation, convex, notifications, email |
| webhookEnvelope required for webhook channel | validation | error | validation, convex, notifications, webhook |
| discord channel must be set via set-discord-oauth | validation | error | validation, convex, notifications, discord, oauth |
DODO_API_KEY_MISSING DODO_API_KEY_MISSING | error_code | critical | config, convex, billing, env, dodo-payments |
NO_CUSTOMER NO_CUSTOMER | error_code | error | billing, convex, dodo-payments, validation, customer-portal |
DODO_PORTAL_ERROR DODO_PORTAL_ERROR | error_code | error | billing, convex, dodo-payments, network, retry, customer-portal |
USER_ID_REQUIRED USER_ID_REQUIRED | error_code | error | validation, convex, billing, auth, edge |
ANON_CLAIM_PROOF_REQUIRED ANON_CLAIM_PROOF_REQUIRED | error_code | error | billing, convex, auth, validation, anon-claim |
OWNER_EMAIL_UNAVAILABLE OWNER_EMAIL_UNAVAILABLE | error_code | error | billing, convex, business-seats, validation, email |
OWNER_NOT_BUSINESS OWNER_NOT_BUSINESS | error_code | error | billing, convex, business-seats, entitlement, validation |
OWNER_DOMAIN_NOT_CORPORATE OWNER_DOMAIN_NOT_CORPORATE | error_code | error | billing, convex, business-seats, validation, email, domain |
NO_EMAILS_PROVIDED NO_EMAILS_PROVIDED | error_code | error | validation, convex, business-seats, billing |
TOO_MANY_EMAILS TOO_MANY_EMAILS | error_code | error | validation, convex, business-seats, billing, limit |
CANNOT_INVITE_SELF CANNOT_INVITE_SELF | error_code | error | validation, convex, business-seats, billing |
INVITEE_DOMAIN_NOT_CORPORATE INVITEE_DOMAIN_NOT_CORPORATE | error_code | error | validation, convex, business-seats, billing, email, domain |
INVITEE_DOMAIN_MISMATCH INVITEE_DOMAIN_MISMATCH | error_code | error | validation, convex, business-seats, billing, email, domain |
SEAT_CAP_REACHED SEAT_CAP_REACHED | error_code | error | payments, business-seats, seats, convex, authorization |
GRANT_NOT_FOUND GRANT_NOT_FOUND | error_code | error | payments, business-seats, grants, convex |
NOT_OWNER NOT_OWNER | error_code | error | payments, business-seats, authorization, convex |
INVITEE_EMAIL_UNAVAILABLE INVITEE_EMAIL_UNAVAILABLE | error_code | error | payments, business-seats, auth, clerk, invites |
INVITE_ALREADY_USED INVITE_ALREADY_USED | error_code | warning | payments, business-seats, invites, state-machine |
INVITE_EXPIRED INVITE_EXPIRED | error_code | warning | payments, business-seats, invites, expiry, ttl |
INVALID_INVITE_TOKEN INVALID_INVITE_TOKEN | error_code | error | payments, business-seats, security, hmac, invites |
INVITE_EMAIL_MISMATCH INVITE_EMAIL_MISMATCH | exception | error | payments, business-seats, email, invites, identity |
BUSINESS_NOT_ACTIVE BUSINESS_NOT_ACTIVE | exception | error | payments, business-seats, subscription, lifecycle |
| Invalid returnUrl: must be a valid absolute URL | validation | error | payments, checkout, validation, url, open-redirect |
| Invalid returnUrl: must use a trusted worldmonitor.app origi | validation | error | payments, checkout, security, open-redirect, url |
| Checkout failed: ${msg} | exception | error | payments, checkout, dodo, provider, error-handling |
ACTIVE_SUBSCRIPTION_EXISTS A ${subscription.displayName} subscription already exists for this account. Use | exception | warning | payments, checkout, subscription, guard |
PAYMENT_IN_PROGRESS A ${pending.displayName} payment is already in progress for this account. It may | exception | warning | payments, checkout, pending, double-charge, guard |
CHECKOUT_RATE_LIMITED Checkout is temporarily rate limited. Retry shortly. | exception | warning | payments, checkout, rate-limit, dodo, retry |
UNAUTHENTICATED UNAUTHENTICATED | exception | error | preferences, auth, clerk, convex |
| get() needs a host-relative API path starting with '/' | validation | error | python, sdk, validation, rest, url |
| HTTP %d: %s%s | exception | error | python, rest, http, api-error, sdk |
-32001 MCP error %d: %s%s | exception | error | python, mcp, auth, json-rpc, sdk |
| HTTP %d: %s | exception | error | python, mcp, http, transport, gateway, sdk |
| HTTP #{status}: #{body} | exception | error | ruby, rest, http, api-error, sdk |
| MCP error #{code}: #{message} | exception | error | ruby, mcp, auth, json-rpc, sdk |
| get() needs a host-relative API path starting with '/' | validation | warning | ruby, validation, argument-error, sdk |