[Phase 3] Build the sandboxed Web Worker action runner #19

Closed
opened 2026-07-25 21:54:37 +00:00 by lost-rob0t · 0 comments
lost-rob0t commented 2026-07-25 21:54:37 +00:00 (Migrated from github.com)

Parent: #2
Depends on: #18

Scope

  • Execute local JavaScript actions in dedicated Web Workers.
  • Pass immutable action context, selection snapshots, parameters, cancellation signals, and capability grants.
  • Enforce runtime, input, output, mutation-count, and memory-oriented limits where the platform permits.
  • Prevent direct IndexedDB, renderer, DOM, and application-service access unless explicitly exposed by a narrow capability.
  • Terminate and clean up timed-out, cancelled, crashed, or completed workers.

Acceptance criteria

  • A deterministic built-in action runs entirely in a worker.
  • Cancellation stops execution and ignores late results.
  • Worker crashes become structured action failures.
  • Returned data is cloned and validated before use.
  • Tests prove an action cannot directly mutate the active graph or Cytoscape instance.
Parent: #2 Depends on: #18 ## Scope - Execute local JavaScript actions in dedicated Web Workers. - Pass immutable action context, selection snapshots, parameters, cancellation signals, and capability grants. - Enforce runtime, input, output, mutation-count, and memory-oriented limits where the platform permits. - Prevent direct IndexedDB, renderer, DOM, and application-service access unless explicitly exposed by a narrow capability. - Terminate and clean up timed-out, cancelled, crashed, or completed workers. ## Acceptance criteria - A deterministic built-in action runs entirely in a worker. - Cancellation stops execution and ignores late results. - Worker crashes become structured action failures. - Returned data is cloned and validated before use. - Tests prove an action cannot directly mutate the active graph or Cytoscape instance.
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
nsaspy/quasar-ui#19
No description provided.