[Troubleshooting]

Diagnose empty charts, CORS, engine failures, Pyodide assets, streams, storage, and PWA cache issues in AXIS.

Troubleshooting

Systematic triage for AXIS. Prefer logs drawer + Network tab + status bar before reinstalling.

Abstract

Failure domains:

  1. Data plane — source / stream
  2. Calc plane — engine / endpoint / Pyodide assets
  3. Shell plane — store, SW cache, plugins
  4. Storage plane — library backends

Decision tree

Data plane

SymptomChecksFix
Infinite loadingNetwork klines; status messageCorrect symbol; try mock-walk
CORS on RESTBinance/public APIs usually OK; custom sources may failProxy plugin or Worker
CSV no barsParse error in statusFix columns/time; re-upload
Wrong interval barsStore interval vs requestSettings interval + Load

Calc plane — server engine

SymptomChecksFix
Failed fetch /runEndpoint, CORS preflightALLOWED_ORIGINS; Settings probe
HTTP 4xx/5xxResponse JSON messageFix script; backend logs
TimeoutBar count × complexityShorter history; raise server resources
Plots missingstatus: success but empty seriesScript has no plots; check Raw

Probe: Settings → Test endpoint (health GET).

Calc plane — Pyodide

SymptomChecksFix
HTML instead of wheelContent-Type / ZIP magicDeploy public/vendor, public/pyodide into dist/
Slow first runCold runtimeWait; preloadPyodide on idle
Offline fail first visitAssets never cachedOne online warm-up
Interpreter errorResults Raw / logsLanguage issue → PYNE

Live streams

SymptomChecksFix
Live toggle no effectStream = none?Select binance-ws or mock-poll
WS errorsConsole; venue symbol formatUppercase BTCUSDT style
Reconnect loopNetwork flapLogs drawer; stop/start Live
DO streamWorker session queryWorker docs; example plugin

Storage / library

SymptomChecksFix
Save no-opActive storage; errors in panelRead status line
Cloud 401Bearer keySettings/library key field
Git deniedToken scopesPAT permissions
Lost local scriptsCleared site dataImport JSON backup

Shell / PWA

SymptomChecksFix
Old UI after deployService WorkerUnregister SW; hard reload
State weirdlocalStorage['pynescript.axis.v1']Export scripts; clear key; reload
Plugin vanishedURL install listRe-install URL
Theme wrongdata-themeToggle theme once

Logging

  • System logs drawer: boot, pyodide ready, live re-run errors (appendLog)
  • Status bar: ready / loading / running / error + short message
  • Results → Raw: last engine payload

Security-related

  • Poisoned localStorage: app should tolerate parse failures (see security tests)
  • Plugin URL schemes restricted
  • Never paste production PATs into shared screen recordings

Internals for deeper digs

AreaPath
Load historydata/load-symbol.ts
Run pipelineindicators/runner.ts
Streamsstreams/multiplex.ts
Enginesengines/catalog.ts
Storestore/index.ts

See also