Files
suaveplan/openspec/archive/2026-05-15-superseded-enterprise-audio-engine/SUPERSEDED.md
2026-05-27 23:29:53 +01:00

30 lines
2.0 KiB
Markdown

# Superseded — not folded into `openspec/specs/`
**Date superseded**: 2026-05-15
**Superseded by**:
- `openspec/changes/enterprise-audio-engine-browser/` (browser-tier `TimelineAdapter` implementation)
- `openspec/changes/enterprise-audio-engine-server/` (server-tier `TimelineAdapter` implementation)
## Why
This proposal was authored as a port of the upstream monolithic browser-only `@suaveplan/audio-engine`. Since it was drafted, the genesis audio suite settled on a different architecture:
- Universal core: `@suaveplan/audio-core` (`AudioDocument`, `PlanEngine`, `ProcessPipeline`, `OpRegistry`) — already shipped.
- Universal timeline: `@suaveplan/audio-timeline` (`TimelineEngine`, `Track`, `Clip`, and the `TimelineAdapter` port) — already shipped.
- Universal transport: `@suaveplan/audio-transport` (musical clock, PPQ, BPM) — already shipped.
- Render adapters: `@suaveplan/audio-engine-browser` (Web Audio) and `@suaveplan/audio-engine-server` (file I/O) — thin packages that implement `TimelineAdapter`.
- Plugin surface lives in `@suaveplan/audio-plugins-fx` (dual-mode `BlockProcessor` + optional `createAudioNode`).
The monolithic `@suaveplan/audio-engine` re-introduced its own `AudioContext` lifecycle, its own `AudioPlugin` base class, its own `PluginRegistry`, and its own queue engine — none of which compose with the universal core. Keeping it would have produced two parallel engines, two plugin interfaces, and two scheduling models.
No code from this proposal was implemented (`packages/audio/audio-engine/` contained only a 3-file stub which has been deleted).
## What to read instead
- `openspec/changes/enterprise-audio-engine-browser/` — adapter
- `openspec/changes/enterprise-audio-engine-server/` — adapter
- `openspec/archive/2026-05-14-enterprise-audio-core/` — universal core
- `openspec/archive/2026-05-15-enterprise-audio-timeline/` — universal timeline + `TimelineAdapter`
- `openspec/archive/2026-05-15-enterprise-audio-transport/` — universal clock
- `openspec/changes/enterprise-audio-plugins-fx/` — plugin surface