Notes from a 2 AM On-Call: Why Harper's WASM Module Silently Failed in Our Self-Hosted VSCode Server
Notes from a 2 AM On-Call: Why Harper's WASM Module Silently Failed in Our Self-Hosted VSCode Server The Failure Symptom [Extension Host] Error loading webview: Failed to execute 'postMessage' on 'Worker' [Harper] WASM module instantiation failed: CompileError Browser console: Refused to create a worker from 'blob:' (CSP violation) Grammar checking just stopped. No crashes, no obvious errors in…
A self-hosted Visual Studio Code server experienced silent failure of the Harper WASM module during a 2 AM on-call rotation. Users typed in files and the language server remained active, but suggestions stopped appearing. The issue was traced to reverse proxy configuration blocking specific Content-Security-Policy headers required by the WASM worker threads.
The fix involved adding the correct CSP headers to Traefik's dynamic configuration or Nginx proxy settings. After applying the necessary changes, the Harper suggestions returned within 200ms. The article emphasizes the importance of auditing reverse proxy CSP headers before deploying self-hosted web IDEs or extensions that use WebAssembly workers, as browser console errors often mask the root cause.
Written by urgent.news from Dev.to's reporting — not their text. Machine-written — may contain errors; check the original before relying on it.