3.6 KiB
3.6 KiB
Tasks — refresh-audio-queue-2026-05-23
1. Path migration across 13 change folders
- 1.1 Replace
packages/audio/→packages/media/audio/in every.mdfile underopenspec/changes/enterprise-audio-{codecs,codec-ffmpeg-native,codec-ffmpeg-wasm,engine-server,analysis-spectrum,analysis-beat,analysis-loudness,analysis-pitch,cli,sprite-player}/ - 1.2 Replace
packages/audio/react-audio-→packages/ui/react/react-audio-in every.mdfile underopenspec/changes/enterprise-react-audio-{player,stream,fingerprint}/ - 1.3 Re-stamp the
Date:line in each refreshed proposal to2026-05-23 - 1.4 Verify no
packages/audio/strings remain in any audio-queue change folder
2. Workspace catalog additions
- 2.1 Add
fluent-ffmpeg(pinned) tocatalog.audioin rootpackage.json - 2.2 Add
@ffmpeg-installer/ffmpeg(pinned) tocatalog.audio - 2.3 Add
@types/fluent-ffmpegtocatalog.types - 2.4 Add
@ffmpeg/ffmpeg(pinned) tocatalog.audio - 2.5 Add
@ffmpeg/core(pinned) tocatalog.audio - 2.6
bun installto update lockfile
3. @suaveplan/audio-core AnalysisOp contract
- 3.1 Add
src/analysis/analysis-op.types.tsdeclaringAnalysisOp<TConfig, TResult>,AnalysisResultbase shape,AnalysisFramewindow descriptor,AnalysisCapabilitiesflags - 3.2 Add
src/analysis/analysis-op.tsexposingcreateAnalysisOp<TConfig, TResult>(spec): AnalysisOp<TConfig, TResult>builder with Zod config validation, OTel instrumentation, AbortSignal handoff - 3.3 Add sibling
analysis-op.md(6 required sections) - 3.4 Add
analysis-op.test.tscovering builder happy-path, Zod rejection, OTel attribute propagation, signal handoff, error wrapping viaAUDIO_CORE.* - 3.5 Add
src/analysis/index.tsbarrel with explicit named re-exports - 3.6 Wire
./analysis/analysis-opsubpath export inpackage.json - 3.7 Add
./analysisentry in rootsrc/index.tsexports - 3.8 Pre-publish gate green:
bunx turbo lint typecheck test --filter=@suaveplan/audio-core+bunx turbo test:coverage --filter=@suaveplan/audio-coreat 100/100/100/100
4. Engine-server upstream-contract relocation
- 4.1 In
openspec/changes/enterprise-audio-engine-server/specs/audio-engine-server/spec.mdreplace every@suaveplan/audio-plugins-fx/chainreference with./fx/plugin-chain(relative to the engine-server package) - 4.2 Add a NEW Requirement to that spec delta: "Engine-server owns its
PluginChain+BusRegistrycontracts" — three scenarios (chain interface shape, registry cycle detection, future-amendment seam) - 4.3 Update
enterprise-audio-engine-server/proposal.mdworkspace-deps table: remove@suaveplan/audio-plugins-fx, add note that contracts live in-package pending future upstream amendment
5. Analysis-spectrum spec clarifications
- 5.1 Add a Scenario to
enterprise-audio-analysis-spectrum/specs/audio-analysis-spectrum/spec.mdspecifying the bin-reduction algorithm (log-spaced bucket means over theframeSize/2+1magnitude bins) - 5.2 Confirm the window-list (Hann/Hamming/Blackman only — drop Kaiser from any task-prompt drift)
6. Ship the refresh
- 6.1 Fold this proposal's spec delta into
openspec/specs/audio-core/spec.md(audio-core gains theAnalysisOprequirement) - 6.2 Move this change folder to
openspec/archive/2026-05-23-refresh-audio-queue-2026-05-23/ - 6.3 Run
bun scripts/folder-reorg/generate-manifest.ts - 6.4 Commit on
feat/audio-codecs(no separate branch — this change is groundwork for all 13 downstream branches)