Tier 2ProposedNative apps: tokens only. Row progress would be a stock linear ProgressView; the shipped download control is on the Download button card.--yellow-solid · --solid · --red-solid · --red-text-secondary
Progress is a control, not a painted row
Proposed: not in putio-ios. It has no Transfers screen; its Downloads tab lists offline copies. The web transfer row paints its own background as the progress fill. That is a tier-1 recipe for a wide desktop list. On iOS progress is a 4pt ProgressView under the subtitle.
Failure reads as a sentence, not a code. No seeders found, never ERR_NO_PEERS, and never a dialog.
9:41
Transfers
ActiveFinishedAll
Seinfeld.S09E23.The.Finale.Part.2.720p.HDTV.x264-FLEET.mkv
11.2 of 18.6 GB · 18.4 MB/s · 6 min left
The.Wire.S03E04.Back.Burners.1080p.BluRay.x264-DEMAND.mkv
Seeding · ratio 1.42
document-scan-march-2026.pdf
Queued · position 2
ubuntu-24.04.1-desktop-amd64.iso
No seeders found
Retry
Remove
Files
Transfers
Activity
Account
List + ProgressViewStock segmented Picker on top; 4pt linear progress inside the row, tinted.
Row progress
ProgressView 4pt
tint fill, system-owned track
Row height
76pt
two lines plus the bar
Segmented
32pt · 9pt
stock Picker, system selection
Failed
--red-text-secondary
subtitle + red bar remainder
Swipe
Retry / Remove
system widths, system roles
Numerics
Berkeley Mono
rate, remaining, ratio, quota
Spacing
4 / 8 / 16
put.io ramp inside the row
Per-control detail, the token map and the full don't list live in platforms/apple/DESIGN.md.
Do not bring the web transfer row's self-painting progress fill to iOS. It relies on a hover model, a 6px radius and a row width no phone has, and it makes the row's background mean two things at once.

A ProgressView says the same thing in 4pt and comes with VoiceOver.