Skip to content

Oscillator fallback audit: several engines falling back to default JS voice #720

@ford442

Description

@ford442

Problem

Some oscillator engines are not initializing correctly and silently fall back to the default JavaScript voice instead of their intended engine.

Current Status

Engine Status Notes
JS (Native) ✅ Pass Works as expected
PCM 303 ✅ Pass Works as expected
Open303 ❌ Fail Falls back to default JS voice
JC303 ❌ Fail Falls back to default JS voice
Rust ❌ Fail Falls back to default JS voice
Prophecy ❌ Fail Falls back to default JS voice
Pyodide ❌ Fail Falls back to default JS voice
WebGPU ❌ Fail Falls back to default JS voice

Checklist

  • Open303 – diagnose why engine fails to initialize and falls back to JS voice
  • JC303 – diagnose why engine fails to initialize and falls back to JS voice
  • Rust – diagnose why engine fails to initialize and falls back to JS voice
  • Prophecy – diagnose why engine fails to initialize and falls back to JS voice
  • Pyodide – diagnose why engine fails to initialize and falls back to JS voice
  • WebGPU – diagnose why engine fails to initialize and falls back to JS voice
  • Add console warning or error when fallback occurs (if not already present)
  • Update tests to cover each oscillator engine initialization path

Context

Observed during runtime testing. The fallback appears to happen silently without surfacing an error to the user. Each engine likely has a different root cause (WASM load failure, worklet registration error, missing binary, etc.).

Metadata

Metadata

Assignees

No one assigned

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions