Add-torrent and set-category dropdowns default to Uncategorized so a
category is no longer forced; set-category preselects the current one.
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
- Automation tab: settings form (define_settings) beside the editor,
stacking above it when narrow; script/settings save split.
- Set location modal: current location + reset checkbox.
- saveScriptSettings/setSavePath API wiring; plugins panel.
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
readTorrentFile only returned parsed metadata for the preview, so a
file-based add sent no torrent content and the server rejected it. Include
the raw bytes as base64 ("data") alongside the preview fields so uploads
actually add.
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Wire up controls that were rendered but inert, expose unused server
actions, and harden the live update path.
Controls now functional:
- File priority dropdowns (Content tab) now persist via new
setFilePriority server action
- Context menu: Set location, Limit download/upload rate, Set share
limit (wire setSavePath/setDownLimit/setUpLimit/setRatioLimit)
- Trackers sidebar filter actually filters (snapshot now carries
per-torrent trackerHosts)
Robustness:
- Grid updates cells in place when row order/columns are unchanged
(preserves text selection/scroll, no per-second listener re-bind)
- Boot retries until the server responds; SSE drops show a
"Reconnecting" banner; failed actions/add/delete surface a toast
- Prune selection/detail for torrents that disappear
- Drop Backspace-as-delete (kept Delete)
Cleanup:
- Remove pseudo DHT/PeX/LSD names from the real-tracker host pool in
mock data (they leaked into announce URLs and the sidebar)
- Remove dead detailTab import/export
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>