feat: Embedded local worker for offline/local mode (v0.3.4)

Summary

Implement inline worker creation using embedded worker bundle:

  • Add separate webpack configs for worker and main bundles
  • Worker is built first, then embedded as base64 in TypeScript
  • WorkerWrapper creates inline worker via Blob URL when URL not provided
  • Version number now injected at build time from package.json (fixes missed version update in 0.3.3)

This enables ai-delegate to work without requiring a separate worker file to be served, useful for offline/local development scenarios.

Changes

  • package.json - Version 0.3.4, new build scripts for embedded worker
  • webpack.worker.config.js - Worker build config with DefinePlugin for version injection
  • webpack.main.config.js - Main build config
  • scripts/embed-worker.js - Script to embed compiled worker as base64
  • src/worker/worker.ts - Version now injected from package.json
  • src/worker/WorkerWrapper.ts - Support for inline worker via Blob URL
  • src/worker/embedded-worker.ts - Generated embedded worker source
  • src/core/AiDelegate.ts - Updated for local worker support

Test Plan

  • Build succeeds: npm run build
  • Worker version shows 0.3.4 in console
  • Inline worker creation works without URL

Merge request reports

Loading