| Adding | Add .torrent file | FULL | File path or raw metainfo (base64); the add dialog takes either |
| Adding | Add magnet link | FULL | Hex and Base32 info-hashes, dn/tr/ws/xl/so honoured |
| Adding | Add torrent by HTTP URL | FULL | The engine downloads the .torrent itself, so the row is identified immediately |
| Adding | Drag and drop onto the window | FULL | Native Tauri file drops plus in-webview magnet / .torrent drops |
| Adding | Watch directory auto-add | FULL | Polled by session.tick on the GUI heartbeat; only size-settled files are added |
| Adding | Delete the source .torrent after adding | FULL | `trash-original-torrent-files` |
| Adding | Options prompt before adding (location, paused) | FULL | Destination + start-paused in the add dialog |
| Adding | Choose which files to download before adding | FULL | The add dialog inspects the torrent and lists its files with checkboxes |
| Adding | Start added torrents automatically | FULL | |
| Adding | Duplicate detection | FULL | Reports the existing torrent instead of a second row |
| Transfers | Start torrent | FULL | |
| Transfers | Stop torrent | FULL | |
| Transfers | Start all / stop all | FULL | |
| Transfers | Start now (bypass the queue) | FULL | Runs outside the queue and takes no slot from it |
| Transfers | Remove from list | FULL | |
| Transfers | Remove and delete data | FULL | |
| Transfers | Verify local data | FULL | The engine's own re-hash: works stopped, reports good/bad pieces and missing files |
| Transfers | Ask tracker for more peers (reannounce) | FULL | The engine announces over HTTP and UDP itself and bounces the torrent so the session re-announces too |
| Transfers | Set location / move data | FULL | Moves the payload on disk when `move` is set |
| Transfers | Rename a file or folder inside a torrent | FULL | Stops the torrent, renames on disk, re-adds and resumes it — the caller does not have to do the dance |
| Transfers | Sequential (in-order) download | FULL | Files are queued in order and pieces within a file already fetch in order — the fork made the queue order configurable |
| Transfers | Per-torrent download limit | FULL | Applied by re-adding the torrent, which is how the wire layer takes per-torrent limits |
| Transfers | Per-torrent upload limit | FULL | Applied by re-adding the torrent, which is how the wire layer takes per-torrent limits |
| Transfers | Honour session limits per torrent | FULL | Clearing it hands the torrent its own limits at re-add time; setting it drops back to the session's |
| Transfers | Per-torrent peer limit | FULL | Applied per torrent by the wire layer's connection manager |
| Files | File list with sizes | FULL | From the live session, or the stashed .torrent when stopped |
| Files | Per-file wanted / unwanted | FULL | Checkbox per file; pushed to the session as the only-files set |
| Files | Per-file priority (high / normal / low) | FULL | High-priority files are queued first; a change re-targets a running torrent in place through the fork's update_file_priorities |
| Files | Per-file progress | FULL | A progress bar per file in the Files tab |
| Files | Piece availability map | FULL | A Pieces tab that draws the have-map, downsampled for big torrents |
| Files | Open / reveal the downloaded file | FULL | Palette entry, falling back to copying the path off Tauri |
| Peers | Peer list with address and state | FULL | |
| Peers | Per-peer transfer counters | FULL | Received bytes per peer in the Peers tab |
| Peers | Peer client / flags column | FULL | Client name and transport (TCP or µTP) per peer, from the vendored fork's peer snapshot |
| Peers | Tracker list | FULL | |
| Peers | Add tracker | FULL | |
| Peers | Remove tracker | FULL | |
| Peers | Tracker announce status / last result | FULL | Seeders, leechers, peer count, interval and failure text per tracker, shown in the Trackers tab |
| Peers | Web seeds (BEP 19) | FULL | Parsed, written when creating, and listed in the Trackers tab |
| Peers | DHT | FULL | Toggled by `dht-enabled`; stats in session.stats |
| Peers | Peer exchange (PEX) | FULL | BEP 11 in the wire layer, with the on/off switch added on the fork; private torrents never gossip regardless |
| Peers | Local peer discovery (LPD) | FULL | Local service discovery in the wire layer, wired to the setting |
| Peers | µTP transport | FULL | µTP offered alongside TCP when the setting is on; the peer list shows which transport each connection used |
| Peers | Encryption preference | PARTIAL | Tolerated/preferred/required round-trips; not enforced on the wire |
| Queue | Download queue with a size limit | FULL | |
| Queue | Seed queue with a size limit | FULL | |
| Queue | Queue position per torrent | FULL | |
| Queue | Move to top / up / down / bottom | FULL | Palette entries and the engine's queue.* commands |
| Queue | Stalled torrents free their slot | FULL | |
| Queue | Bandwidth priority orders the queue | FULL | High jumps the queue, low sinks |
| Seeding | Global seed ratio limit | FULL | |
| Seeding | Per-torrent seed ratio limit | FULL | Global / this torrent / unlimited, as Transmission's three modes |
| Seeding | Global idle seeding limit | FULL | |
| Seeding | Per-torrent idle limit | FULL | |
| Seeding | Stop seeding when the limit is reached | FULL | Pauses the torrent and emits `seeding_limit_reached` |
| Seeding | Ratio progress display | FULL | A seeding bar in the ratio column once a torrent is done, tracking progress toward its limit |
| Bandwidth | Global download limit | FULL | |
| Bandwidth | Global upload limit | FULL | |
| Bandwidth | Alternative (turtle) speed limits | FULL | Toolbar toggle, palette entry, status-bar indicator |
| Bandwidth | Turtle scheduler (time window) | FULL | Including overnight windows that cross midnight |
| Bandwidth | Turtle schedule weekday bitfield | FULL | |
| Bandwidth | Speed graph | FULL | Rolling download/upload sparklines in the status bar |
| Network | Configurable peer port | FULL | The listener binds it and announces it; TCP and µTP share the port |
| Network | Random port on start | FULL | |
| Network | Port forwarding (UPnP / NAT-PMP) | FULL | UPnP through the session, NAT-PMP (RFC 6886) implemented here — request layout, result codes, gateway guess |
| Network | Port test | FULL | Asks a port-check service the way Transmission does; the endpoint is a setting, and an empty one reports unknown rather than guessing |
| Network | Global peer limit | PARTIAL | Carried and reported; the wire layer caps peers per torrent, not per session, so this one is not enforced |
| Network | Incomplete directory | FULL | Downloads land in the incomplete folder and are moved to the download folder when they finish |
| Network | Append .part to incomplete files | PARTIAL | Setting round-trips; the storage layer does not rename |
| Network | Disk cache size | PARTIAL | Carried and reported; the vendored wire layer dropped its deferred-write buffer, so there is nothing to apply it to |
| Network | Default trackers added to every torrent | FULL | |
| Network | SOCKS5 proxy | FULL | An addition over Transmission, which has no proxy setting |
| Blocklist | P2P plaintext blocklist format | FULL | `Name:1.2.3.4-1.2.3.255` |
| Blocklist | CIDR and bare-address rules | FULL | |
| Blocklist | Rule count / blocklist size | FULL | |
| Blocklist | Address lookup | FULL | Merged sorted ranges, binary search |
| Blocklist | Download the blocklist from a URL | FULL | Fetches the configured URL, gunzips it when it is gzipped, and reloads |
| Blocklist | Enforce the blocklist on peers | FULL | The session is pointed at the engine's own parsed file, so what the UI reports loaded is what the wire enforces |
| Create | Create a torrent from a file or folder | FULL | |
| Create | Piece length selection (auto or explicit) | FULL | |
| Create | Multiple tracker tiers | FULL | |
| Create | Comment and source fields | FULL | |
| Create | Private torrent flag | FULL | |
| Create | Web seeds in a created torrent | FULL | |
| Create | Creation progress for large payloads | FULL | Hashing reports progress through the engine's event sink; the create dialog draws it |
| Format | Byte-exact info-hash | FULL | SHA-1 over the original `info` bytes, never a re-encode |
| Format | Single-file and multi-file torrents | FULL | |
| Format | BitTorrent v2 file tree (read) | PARTIAL | The file list and the v2 hash are read; v2 transfers are not supported |
| Format | Magnet link generation | FULL | Per torrent, copied from the details pane |
| Format | Base32 magnet info-hashes | FULL | |
| Interface | Torrent list with progress bars | FULL | |
| Interface | Sortable columns | FULL | Shared zgui-core dataTable |
| Interface | Resizable columns | FULL | Shared dataTable, widths persisted |
| Interface | Status filter bar (all/active/downloading/seeding/paused/finished) | FULL | With live counts |
| Interface | Text filter over the list | FULL | Fuzzy (fzf) with matched-character highlighting |
| Interface | Labels and filtering by label | FULL | |
| Interface | Inspector: activity / info tab | FULL | |
| Interface | Inspector: files tab | FULL | |
| Interface | Inspector: peers tab | FULL | |
| Interface | Inspector: trackers tab | FULL | |
| Interface | Inspector: options tab | FULL | |
| Interface | Status bar with aggregate rates | FULL | |
| Interface | Compact view / alternate row layout | FULL | A compact row layout, toggled from the palette and remembered in prefs |
| Interface | Groups (macOS auto-grouping rules) | FULL | Coloured groups with name/tracker/location rules, applied as labels when a torrent is added |
| Interface | Message log window | FULL | A capped ring of engine activity, shown in a log panel with level colouring |
| Interface | Statistics window (session and cumulative) | FULL | A statistics panel: counts, totals, ratio, turtle state, blocklist size, live peers |
| Remote | Transmission RPC method translation | FULL | torrent-get/add/set/start/start-now/stop/remove/verify/reannounce/rename-path, session-get/set/stats, blocklist-update, queue moves |
| Remote | RPC over HTTP with a listening port | FULL | A std-only listener on rpc-port with Transmission's 409 session-id handshake |
| Remote | RPC authentication and host whitelist | FULL | Basic auth plus the comma-separated wildcard whitelist Transmission documents |
| Remote | Bundled web client | FULL | The listener serves the app's own frontend, and the view picks an HTTP transport when it is loaded that way — the same UI, in a browser |
| Automation | Run a script when a torrent completes | FULL | Spawned on completion with Transmission's own TR_* environment |
| Automation | Desktop notification on completion | FULL UNVERIFIED | A real OS notification posted by the app host (tauri-plugin-notification) on the engine's completion event, plus the in-window toast and chime. The wiring lives in the ztorrent repo, so this row carries no evidence pattern for this crate's audit |
| Automation | Sound on completion | FULL | A synthesized two-tone chime on completion — no bundled asset |
| Automation | Sleep prevention while downloading | PARTIAL | An IOKit assertion on macOS and SetThreadExecutionState on Windows, held while a torrent transfers; Linux needs a session-bus inhibitor and reports it unavailable |