Notes from a 2 AM On-Call: Why Harper's WASM Module Silently Failed in Our Self-Hosted VSCode Server
Описание и применение
Добавление директив CSP worker‑src и script‑src в конфигурацию Traefik/Nginx восстановило работу расширения Harper в самохостед VSCode Server, устранив тихую ошибку создания Web Worker.
Задача
Harper grammar checking stopped silently in a self-hosted VSCode Server after a reverse‑proxy CSP change.
Результат
Adding worker‑src and script‑src CSP directives restored Harper functionality in a self‑hosted VSCode Server.
Рабочий процесс
- 1. Observe silent failure of Harper suggestions.
- 2. Verify extension activation, file associations, and language server process.
- 3. Check browser console for CSP errors – see "Refused to create a worker from 'blob:' (CSP violation)".
- 4. Update Traefik dynamic config to include worker‑src and script‑src directives.
- 5. Reload Traefik with SIGHUP and reload code‑server in browser.
- 6. Confirm "[Harper] WASM module loaded successfully" in console and suggestions appear.
- 7. Document CSP changes in runbook for future deployments.
Доказательства
Refused to create a worker from 'blob:' (CSP violation)
worker-src 'self' blob:
script-src 'unsafe-eval'
- Дата записи: 2026-10-19T10:41:27.817Z