daniel-c-harvey
e84823be39
docs: update AudioProcessor notes for EXTENSIBLE-PCM WAV support
2026-06-10 15:26:50 -04:00
daniel-c-harvey
0f5eaa42b5
Merge branch 'soft-delete-fix' into dev
2026-06-10 14:32:50 -04:00
daniel-c-harvey
f0185587f7
fix(data): route all TrackRepository queries through soft-delete-filtered Query
2026-06-10 14:32:31 -04:00
daniel-c-harvey
0a5ddfdad8
Merge branch 'seek-load-race' into dev
2026-06-10 14:31:48 -04:00
daniel-c-harvey
8b94a5fdf7
fix: assign seek CTS synchronously and guard load finally to stop seek/load race
2026-06-10 14:30:12 -04:00
daniel-c-harvey
fb27918ed6
fix: guard LoadTrackStreaming OCE catch with loadCts identity so an in-flight seek isn't clobbered mid-load
2026-06-10 14:22:35 -04:00
daniel-c-harvey
691d904273
Merge branch 'track-new-image' into dev
2026-06-10 14:18:44 -04:00
daniel-c-harvey
ded5a3e5eb
feat(manager): add optional cover art upload to Add Track form
2026-06-10 14:14:35 -04:00
daniel-c-harvey
f25d0f624f
Merge branch 'seek-hardening' into dev
2026-06-10 13:25:17 -04:00
daniel-c-harvey
43f54cb950
Merge branch 'p2-w1-filter-views' into dev
2026-06-10 12:43:33 -04:00
daniel-c-harvey
f40940b957
fix: guard SeekBeyondBuffer OCE catch with when(seekCts.IsCancellationRequested) so timeout OCEs fall through to error handler
2026-06-10 11:08:54 -04:00
daniel-c-harvey
10256677ac
docs: close Phase 2.2/2.3 — move to COMPLETED.md, update DeepDrftPublic proxy CLAUDE.md
2026-06-10 10:58:16 -04:00
daniel-c-harvey
6fe7663667
fix: harden seek — timeout no longer swallowed as cancel, rapid seek-on-seek no longer clears active seek flag
2026-06-10 10:55:49 -04:00
daniel-c-harvey
5cae83b9ed
feat: add search/album/genre filtering and /albums + /genres browse pages
2026-06-10 10:54:56 -04:00
daniel-c-harvey
d9b92e0703
Merge branch 'seek-cancel-fix' into dev
2026-06-10 09:03:11 -04:00
daniel-c-harvey
0fd1977353
fix: silence false error log when streaming is cancelled during seek
2026-06-10 09:01:59 -04:00
daniel-c-harvey
1071ba7374
docs: bring CONTEXT.md §4 current — Phase 4 complete, iframe player landed
2026-06-09 21:58:24 -04:00
daniel-c-harvey
79a015f60a
docs: update CLAUDE.md files to reflect Range header seek, remove WavOffsetService references
2026-06-09 07:41:38 -04:00
daniel-c-harvey
0bd7e6904d
Merge branch 'p4-w2-retire-offset' into dev
2026-06-09 07:37:51 -04:00
daniel-c-harvey
f602eb9772
chore: remove WavOffsetService and ?offset= seek path, superseded by Range header (Phase 4.1)
2026-06-09 07:30:36 -04:00
daniel-c-harvey
b372bee365
Merge branch 'stream-now-button' into dev
2026-06-09 07:25:25 -04:00
daniel-c-harvey
fad3635fa1
Merge branch 'p4-w1-range-streaming' into dev
2026-06-09 07:19:26 -04:00
daniel-c-harvey
561f4a500a
docs: close Phase 4.1 and 4.2 — move to COMPLETED.md
2026-06-09 07:07:57 -04:00
daniel-c-harvey
9be35e5a58
refactor: extract StreamNowButton component shared by hero and nav menu
2026-06-09 07:00:37 -04:00
daniel-c-harvey
aaa9f732ae
feat: replace ?offset= seek with HTTP Range streaming across API, proxy, and client
...
- API: enableRangeProcessing true on no-offset FileStream path
- Proxy: transparent Range relay, forwards 206/416/Content-Range verbatim
- TrackMediaClient: Range: bytes=X- replaces ?offset=X; response disposed via TrackMediaResponse
- StreamDecoder: reinitializeForRangeContinuation retains wavHeader, counts raw PCM against 206 Content-Length
- AudioPlayer: seekBeyondBuffer adds headerSize for file-absolute offset; duration guard prevents continuation overwriting full-track duration
- StreamingAudioPlayerService: seek guard corrected to >= 0 (file-absolute offset contract)
2026-06-09 07:00:35 -04:00
daniel-c-harvey
5c3c3c3d0c
docs(plan): commit Phase 4.1 to Option A1 (Range headers, custom decoder)
...
Record the design-gate decision for HTTP Range support: Range headers in
the JS fetch retaining the AudioBuffer decoder, rejecting MediaElement
(loses early-playback) and synthesized-header-over-Range (breaks caching
invariant). Add per-file shape, acceptance criteria, and the file-absolute
offset constraint. Tighten 4.2 — disk-streaming already done on the
default path; only the legacy offset branch remains.
2026-06-09 06:33:29 -04:00
daniel-c-harvey
760e9a1982
fix: Adjust Spectrum Bar Colors
Deploy DeepDrftPublic / Build & Publish (push) Successful in 3m37s
Deploy DeepDrftPublic / Deploy (push) Successful in 1m23s
2026-06-09 06:23:23 -04:00
daniel-c-harvey
5b3bbc7b47
Merge branch 'lmf-icon-56' into dev
Deploy DeepDrftAPI / Build, Publish & Bundle (push) Successful in 2m2s
Deploy DeepDrftManager / Build & Publish (push) Successful in 1m8s
Deploy DeepDrftPublic / Build & Publish (push) Successful in 3m36s
Deploy DeepDrftAPI / Deploy (push) Successful in 1m34s
Deploy DeepDrftManager / Deploy (push) Successful in 1m30s
Deploy DeepDrftPublic / Deploy (push) Successful in 1m28s
2026-06-08 16:33:28 -04:00
daniel-c-harvey
f40786171d
fix: shrink .lmf-icon to 56px to match MudFab Size.Large
2026-06-08 16:33:20 -04:00
daniel-c-harvey
cef1e6bc69
Merge branch 'lmf-big-note' into dev
2026-06-08 16:27:14 -04:00
daniel-c-harvey
5258729c86
feat: enlarge LevelMeterFab note to 68px so it fills the 72px FAB
2026-06-08 16:27:08 -04:00
daniel-c-harvey
8679a9f619
fix: scale LevelMeterFab music note to fill the FAB — bump .lmf-icon from 24px to 56px
2026-06-08 16:17:23 -04:00
daniel-c-harvey
ae22153edb
style: LevelMeterFab FAB to 72px, icon to 36px
2026-06-08 16:16:22 -04:00
daniel-c-harvey
e3df6dd93e
fix: scale LevelMeterFab music note to fill the FAB — bump .lmf-icon from 24px to 56px
2026-06-08 16:15:01 -04:00
daniel-c-harvey
6151e6024c
Merge branch 'gradient-tune' into dev
2026-06-08 14:55:07 -04:00
daniel-c-harvey
505ac0c47b
style: retune spectrum gradient — dark green floor 0-30%, expand yellow/orange zones
2026-06-08 14:54:56 -04:00
daniel-c-harvey
6cacf51318
Merge branch 'gallery-card-border' into dev
2026-06-08 14:53:33 -04:00
daniel-c-harvey
87971dbd6f
style: revert fallback thumb background to deepdrft-navy-mid
2026-06-08 14:53:09 -04:00
daniel-c-harvey
881d3d49cd
style: thicken track card border to 2px solid secondary palette color
2026-06-08 14:52:01 -04:00
daniel-c-harvey
561cd45237
Merge branch 'spectrum-gradient' into dev
2026-06-08 14:49:30 -04:00
daniel-c-harvey
4e6e3c9eab
feat: apply amplitude-tracking gradient to spectrum bars matching LevelMeterFab color scheme
2026-06-08 14:49:23 -04:00
daniel-c-harvey
4ab48ce527
Merge branch 'level-rms' into dev
2026-06-08 14:41:29 -04:00
daniel-c-harvey
58725c4646
feat: true RMS dBFS level measurement for LevelMeterFab via getFloatTimeDomainData
2026-06-08 14:40:11 -04:00
daniel-c-harvey
9cbc09edf7
Merge branch 'level-meter-tune' into dev
2026-06-08 14:20:57 -04:00
daniel-c-harvey
149127c920
fix: recalibrate level meter dB window to [-70, -10] for FFT peak data
2026-06-08 14:20:50 -04:00
daniel-c-harvey
ad1c85f3ee
Merge branch 'p2-w1-interactivity-guards' into dev
2026-06-08 14:14:02 -04:00
daniel-c-harvey
095b49701f
docs: move PLAN 2.4 to COMPLETED — interactivity-gap loading guards landed
2026-06-08 14:11:42 -04:00
daniel-c-harvey
0392ef6954
Merge branch 'level-meter-fill' into dev
2026-06-08 13:31:58 -04:00
daniel-c-harvey
c086d03776
feat: guard interactivity-gap controls until WASM hydrates (PLAN 2.4)
2026-06-08 13:31:54 -04:00
daniel-c-harvey
b9969640e5
feat: continuous vertical VU fill for LevelMeterFab, replacing 3-band tint
2026-06-08 08:55:45 -04:00