You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Memory leak fixes:
- Engine.ts: Store unlock handler reference for proper cleanup
- useMultiplayer.ts: Restore original clock sync handler on cleanup
- App.tsx: Use useEffect for copied state timer instead of setTimeout in callback
- Recorder.tsx: Disconnect BufferSource on playback end
- StepSequencer.tsx: Use ref for copySource in keyboard listener to avoid recreating
Code deduplication:
- Extract clamp() to utils/math.ts (used by toneEffects, xyPad, grid reducers)
- Extract DELAY_TIME_OPTIONS to audio/delay-constants.ts (used by Transport, EffectsPanel)
- Create track-utils.ts with findTrackById, createStepsArray, createParameterLocksArray
All 1598 tests passing.
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
0 commit comments