Spectra
Browse docs

troubleshooting

Common errors

Error codes the desktop and cloud worker emit, with what they mean and how to resolve.


Spectra surfaces every error with a stable code. The codes are searchable across logs, support tickets, and the script-editor diagnostics.

Desktop errors

| Code | Meaning | Resolution | |---|---|---| | E_GPU_INIT | wgpu adapter selection failed | Reboot; if persistent, check that your GPU driver supports Vulkan/Metal/DX12. | | E_BROKER_AUTH | Broker rejected your API key | Re-enter credentials; check that the key is read-write if you're trying to trade. | | E_SCRIPT_BUDGET | Script exceeded its CPU/memory budget | See Sandbox limits; simplify the loop or request an extended budget. | | E_DATA_GAP | Historical data feed has a gap at requested range | Different timeframe usually works; report the gap if reproducible. | | E_WORKSPACE_CORRUPT | Saved workspace JSON failed to parse | Profile → Workspaces → Reset (deletes only that workspace; everything else stays). |

Cloud worker errors

These appear in webhook responses and Profile → Webhooks → Activity.

| Code | HTTP | Meaning | |---|---|---| | signature_invalid | 401 | HMAC mismatch. Check the body bytes you signed match what you POSTed. | | timestamp_out_of_range | 401 | Sender clock drift > 5 min. Check NTP. | | ip_not_allowed | 403 | IP allowlist excludes you. Add the source IP. | | cap_breached | 403 | Daily-loss cap breached. Wait until next 00:00 broker tz, or reset manually. | | secret_paused | 403 | Admin or auto-paused. Check Activity for cause. | | idempotent_replay | 200 | Same client_id seen in last 24 h. Returns the original outcome. | | replay_attack | 409 | Same (timestamp, body) seen recently. Sender bug or attack. | | rate_limited | 429 | > 1 req/sec/secret. Back off. | | broker_rejected | 502 | Broker returned non-2xx. Body includes broker's reason. |

Script-editor errors

The bytecode VM compiler emits errors with line + column. The most common:

  • type_mismatch — the operands don't have compatible types. Inspect the inferred types via Editor → Inspect (Cmd+I).
  • unbound_identifier — typo or missing let.
  • arity_error — wrong number of arguments to a built-in.
  • series_index_negativeseries[N] requires N >= 0.

Reporting

If an error reproduces with steps, file at [email protected] including the error code, the build version (Help → About → Copy diagnostic), and the workspace export if relevant.