| qBittorrent | Categories with a save path per category | FULL | A category is a name plus a save path, with its own share and speed limits |
| qBittorrent | Automatic torrent management (move on category change) | FULL | Changing a category, or a category's path, moves the payload |
| qBittorrent | Subcategories | FULL | `films/4k` inherits the parent's path unless it sets its own |
| qBittorrent | Tags (flat, many per torrent) | FULL | Labels are exactly this: many per torrent, filterable in the sidebar |
| qBittorrent | Share-ratio limit with an action (pause / remove / delete / super-seed) | FULL | Stop, remove, remove with data, or switch to super-seeding — the one action that leaves the torrent running |
| qBittorrent | Per-category share limits | FULL | A category's ratio and idle limits stand in for the session's, inherited by subcategories |
| qBittorrent | RSS feeds | FULL | RSS 2.0 and Atom, refreshed on their own timer |
| qBittorrent | RSS auto-download rules (must contain / must not contain) | FULL | Terms with `|` alternatives, per-feed scoping, and a seen-list so a refresh takes nothing twice |
| qBittorrent | RSS rules with regular expressions | FULL | Per-rule switch; both term fields compile case-insensitively and a broken pattern fails the rule closed |
| qBittorrent | RSS episode filter (season/episode ranges) | FULL | `1x01-1x12;2x*` ranges, open-ended runs, and the smart-episode guard that takes one release per episode |
| qBittorrent | IP filter: eMule ipfilter.dat | FULL | Levels honoured, and eMule's zero-padded octets parsed |
| qBittorrent | IP filter: PeerGuardian .p2p text | FULL | The same line shape the P2P plaintext lists use |
| qBittorrent | IP filter: PeerGuardian .p2b binary | FULL | v1/v2 interleaved names and the v3 name table, sniffed by magic; a truncated download keeps the rows that arrived |
| qBittorrent | Bandwidth scheduler (alternate limits on a timetable) | FULL | Time window plus a weekday bitfield, overnight windows included |
| qBittorrent | Sequential download | FULL | Files queued in order; pieces within a file already fetch in order |
| qBittorrent | Download first and last pieces first | FULL | First and last piece of every wanted file, requested ahead of the sequential order; applied on add and live |
| qBittorrent | Super seeding (BEP 16) | FULL | Implemented on the wire in the fork: no bitfield, one rarest piece shown per peer at a time, the next only once that one has been served; an e2e test downloads a whole torrent from a super-seeding peer byte for byteThe wire layer has no super-seed mode |
| qBittorrent | Force recheck | FULL | The engine's own re-hash |
| qBittorrent | Recheck uses every core | FULL | Pieces are dealt round-robin to one worker per core, each with its own file handles; measured 14.9x over the single-threaded path on 18 cores |
| qBittorrent | Force reannounce | FULL | HTTP and UDP announces |
| qBittorrent | Torrent creation (v1) | FULL | Tracker tiers, comment, source, private flag, web seeds, piece size |
| qBittorrent | Torrent creation (v2 / hybrid) | MISSING | Needs merkle piece layers (BEP 52) |
| qBittorrent | Web UI with authentication | FULL | The listener serves the app's own UI with Basic auth and a host whitelist |
| qBittorrent | Web UI over HTTPS | FULL | The listener serves TLS itself from a .p12 bundle or a PEM pair, and refuses to start rather than fall back to cleartext on a port the user believes is encrypted; a test does a real handshake against it |
| qBittorrent | Alternative Web UI (custom directory) | FULL | Point `rpc-web-root` at any directory |
| qBittorrent | Anonymous mode | PARTIAL | The setting is carried and reported; the session still advertises its client string |
| qBittorrent | SOCKS5 / HTTP proxy with authentication | PARTIAL | SOCKS5 without credentials; no HTTP proxy and no proxy auth |
| qBittorrent | Disk-space preallocation | FULL | Transmission's three levels; full really reserves blocks (F_PREALLOCATE on macOS, fallocate on Linux) and reports which of reserve/sparse happened rather than claiming either |
| qBittorrent | Incomplete-file extension (.!qB) | PARTIAL | The setting round-trips; the storage layer has no rename hook |
| qBittorrent | Content layout (original / subfolder / no subfolder) | FULL | Session default plus a per-add override, pinned on the torrent so a later settings change cannot move files already on disk |
| qBittorrent | Email notification when a download finishes | FULL | A small SMTP client (RFC 5321/4954/3207): STARTTLS, implicit TLS or cleartext, AUTH PLAIN, dot-stuffing, and a test-message button; the dialogue is tested against an in-process server |
| qBittorrent | Run an external program on completion | FULL | Spawned with the torrent's identity in the environment |
| qBittorrent | Statistics window (all-time totals) | FULL | All-time bytes, session count and ratio, persisted beside the session |
| qBittorrent | Execution log | FULL | The message log |
| qBittorrent | Speed limits per torrent | FULL | Applied by re-adding, which is how the wire layer takes them |
| qBittorrent | Torrent queueing with limits | FULL | Download and seed queues with slots and stalled detection |
| qBittorrent | Network interface binding | PARTIAL | Carried as a setting; the wire layer's bind_device_name is not wired to it yet |
| Deluge | AutoAdd: watch a folder | FULL | Polled by the tick; only size-settled files are added |
| Deluge | AutoAdd: per-folder options (label, save path, paused) | FULL | Any number of watched folders, each with its own save path, category, labels and add-paused, and its own poll state so two folders never confuse one another |
| Deluge | AutoAdd: copy the .torrent elsewhere after adding | FULL | Every added .torrent is written into the configured folder as well as the engine's own stash |
| Deluge | Label plugin: labels with per-label save paths | FULL | Categories are exactly this, and a torrent keeps its many tags alongside |
| Deluge | Label plugin: filter by state / tracker / keyword | PARTIAL | Rules match name, tracker and location; not state |
| Deluge | Scheduler plugin: 7x24 per-hour grid | FULL | Seven days by twenty-four hours, three levels, superseding the single window when on |
| Deluge | Scheduler: limited state (slower, not stopped) | FULL | The grid's limited level turns turtle mode on; its stopped level pauses everything |
| Deluge | Execute plugin: run a command on an event | PARTIAL | Completion only; no hook for added or removed |
| Deluge | Notifications: desktop popup | FULL | tauri-plugin-notification on the completion event |
| Deluge | Notifications: email | FULL | The same sender, fired when a torrent completes, with the failure logged and raised as an event rather than swallowed |
| Deluge | Notifications: sound | FULL | A synthesized chime, no bundled asset |
| Deluge | Blocklist plugin: download and import | FULL | Fetches, gunzips and loads |
| Deluge | Blocklist: periodic auto-update | FULL | Refreshed on its own interval by the tick |
| Deluge | Extractor plugin: unpack archives on completion | MISSING | |
| Deluge | Stats plugin: traffic graphs | PARTIAL | Live sparklines plus all-time totals in the statistics panel; no historical chart with axes |
| Deluge | Thin client: connect to a remote daemon | MISSING | The listener accepts remotes; the app cannot BE a remote for another host |
| Deluge | Move completed downloads to another folder | FULL | The incomplete folder is exactly this, applied on completion |
| Deluge | Prioritize first and last pieces | FULL | Same primer, exposed per torrent in the options tab and the context menu |
| Deluge | Outgoing port range | MISSING | |
| Deluge | Peer TOS byte | MISSING | |
| uTorrent | RSS downloader with filters | FULL | The same rule engine, with the episode filter and per-rule category and save path |
| uTorrent | Labels | FULL | |
| uTorrent | Scheduler | FULL | |
| uTorrent | Remote control (uTorrent Remote) | FULL | The RPC listener plus the served web client |
| uTorrent | Streaming preview while downloading | FULL | Play-while-downloading from the file context menu: the first/last primer plus an HTTP range endpoint over the partial file, handed to the OS default player |
| uTorrent | Protocol encryption (MSE/PE) | MISSING | The wire layer has no MSE handshake |
| uTorrent | Ultra-seeding (super seed) | FULL | The same BEP 16 mode, per torrent from the options tab and the context menu, and available as a share-limit action that keeps seeding instead of stopping |
| uTorrent | Auto-shutdown when downloads complete | PARTIAL | The engine reports when everything is done; quitting is the host's call, sleeping and shutting the machine down are not the client's business |
| uTorrent | Disk cache tuning | PARTIAL | Carried and reported; the wire layer dropped its write buffer |
| uTorrent | Peer sources toggles (DHT / PEX / LSD / trackers) | FULL | Each is a setting the session honours |
| rTorrent | XML-RPC / SCGI control surface | PARTIAL | A Transmission-shaped JSON-RPC listener, not XML-RPC over SCGI |
| rTorrent | Custom views (saved filters) | FULL | Named condition sets with and/or and their own sort, stored beside the session; the sidebar counts and filters by them, and view.torrents answers the same set for RPC clients |
| rTorrent | Throttle groups (named up/down groups) | PARTIAL | A category carries download and upload caps for its torrents, which is the same idea under another name; they are not yet applied to the session |
| rTorrent | Ratio groups with actions | PARTIAL | Per-torrent ratio rules exist; grouped ratio policies do not |
| rTorrent | Session save and restore | FULL | Atomic JSON, restored into the session on start |
| rTorrent | Command scripting on events | PARTIAL | One event, one script |
| BiglyBT | Tags with auto-apply constraints | PARTIAL | Rules on name, tracker and location, applied on add; size, ratio and state constraints are not expressible |
| BiglyBT | Swarm merging across torrents | MISSING | Sharing pieces between torrents with identical content |
| BiglyBT | Subscriptions (saved searches) | MISSING | Follows from RSS |
| BiglyBT | Speed test | MISSING | |
| BiglyBT | Media server / device streaming (UPnP AV) | MISSING | |
| BiglyBT | I2P / Tor transport plugins | MISSING | |
| Tixati | Detailed bandwidth charts over time | PARTIAL | Live sparklines; no historical chart with axes |
| Tixati | Event scheduler with per-day rules | MISSING | |
| Tixati | Per-torrent bandwidth allocation weights | FULL | Weights divide the global cap between running torrents each tick; a torrent's own limit caps its share and the remainder is redistributed rather than lost |
| aria2 | JSON-RPC control surface | FULL | The engine's own command surface over HTTP, plus the Transmission RPC envelope |
| aria2 | Web seeds (BEP 19) | FULL | Parsed, written when creating, listed in the Trackers tab |
| WebTorrent | Stream a torrent to a media player while downloading | FULL | `/ztorrent/stream/<hash>/<index>` serves ranges out of the partial file; a range past what has landed is a 416, never zeros a player would cache as real data |
| WebTorrent | Browser-embeddable client | PARTIAL | The listener serves the same UI in a browser; it drives the desktop engine rather than running in the page |