Commit graph

4 commits

Author SHA1 Message Date
Jesse Bate
f1365f6fba perf: extend WebSocket batching to item_moved events
Bursts of completions (e.g. small playlist entries) fire one item_moved
frame per item. Route item_moved through the same ItemBatcher mechanism
as item_updated: one frame per 500ms tick, payload always a list.

ItemBatcher gains an optional key callable since item_moved payloads are
{"to", "preset", "item"} dicts rather than ItemDTOs; moves coalesce by
item _id with last write wins, so an item that moves twice within a tick
delivers only its final destination. The notifications service consumes
ITEM_MOVED from the event bus directly and is unaffected.

BREAKING CHANGE: the item_moved WebSocket event payload (data) is now
always an array of {to, preset, item} objects instead of a single one.
2026-06-10 23:47:25 +09:30
arabcoders
285e661667 feat: add rename to history items. 2026-05-04 20:29:34 +03:00
arabcoders
50253c650a refactor: re-add the automatic history update after download 2026-04-25 20:24:45 +03:00
arabcoders
e7dfee66b1 refactor: seperate history from queue 2026-04-21 21:48:38 +03:00