Skip to content

Downloads overhaul 1.8.0: acceptance and landing on main #403

Open

Description

@jlipworth

Tracks everything that waits on device testing of the 1.8.0 TestFlight internal build. That build is built from downloads/overhaul, which already holds the squash-merged stack #371 → #389. Nothing here has happened yet.

Acceptance (maintainer)

  • Vision Pro: background downloads during off-head sleep, then relaunch and reconcile, with no termination. This is the scenario from build-1506 and build-1513.
  • If a termination happens, export the matching Labstream-…ips or JetsamEvent-…ips from Settings ▸ Privacy & Security ▸ Analytics & Improvements ▸ Analytics Data. Also record device free space before and after (B86/B87 storage loss).
  • iPhone/iPad and Mac:
    • download, pause, resume, delete;
    • the D2 delete copy;
    • the shared row states and colours;
    • Offline play from both Detail and Offline, with resume parity;
    • the combined subtitle menu;
    • Cinema return.
  • Live backends: a Plex, Jellyfin and Emby download each. Include an Emby Convert case with subtitles (B51) and a Jellyfin original with a comma-list container (B57).
  • Cold launch without connectivity blocks completed offline downloads #259: cold launch with no connectivity reaches completed downloads. Close Cold launch without connectivity blocks completed offline downloads #259 if this passes.
  • D3 (Jellyfin: live Ping-only keepalive A/B for transcoded downloads (D3 / B55) #400) remains blocked; it is not a landing gate unless decided otherwise.

Landing (after acceptance)

  • Open one PR downloads/overhaul → main. Run scripts/check-sensitive-paths.py and the full checks.
  • Annotated tag v1.8.0 on the merge commit. It must not already exist locally or on the remote.
  • docs/RELEASES.md: record the 1.8.0 TestFlight build(s) (archive commit, build number, processing result). Record build selection only if separately approved.
  • Once the evidence page is on main, check that its blob/main link in RELEASES.md resolves.
  • Archive docs/plans/2026-10-16-downloads-overhaul.md to docs/archive/ and repair its links.
  • Delete the stack branches (downloads/manager-overhaul, p2-cleanup, p3-lifecycle, p3b-v5, p4-admission, p5-storage-transport, p6-store, p7-mediabrowser-ux), then downloads/overhaul. Close out the overhaul worktree and its simulators.

Follow-ups already filed: #390–#395 (deferred bugs and perf), #396–#399 (D4 features), #400 (D3), #401 (safety limits and test gaps), #402 (product deferrals), #379 (speed counter, not addressed by the overhaul).

Activity

  1. jlipworth commented on Nov 5, 2026

    @jlipworth
    OwnerAuthor

    Landing PR opened: #425. Its full local checks are running.

    Maintainer acceptance notes (2026-11-05):

    • iPhone/iPad/Mac: download, pause, resume and delete, the row states and colours, and offline play still work, as far as the maintainer knows. This is informal, not a formal pass.
    • Cinema return: low priority, and this branch didn't meaningfully change it.
    • Vision Pro off-head background downloads: still not 100%. The maintainer suspects Apple background-task scheduling rather than this branch. Still open.
    • Not yet recorded: the live-backend cases (B51 Emby Convert with subtitles, B57 Jellyfin comma-list container) and Cold launch without connectivity blocks completed offline downloads #259 (offline cold launch).
  2. jlipworth commented on Nov 5, 2026

    @jlipworth
    OwnerAuthor

    Landed on main via #425 (squash commit 0b7f3fcb, pushed). Annotated tag v1.8.0 is on that commit.

    Validated on the final head:

    Merged with caveats (the maintainer accepted these). This issue stays open for them:

    • Vision Pro off-head background downloads are not fully reliable. This is suspected to be Apple background-task scheduling, not this branch.
    • B51 (Emby Convert with subtitles), B57 (Jellyfin comma-list container) and Cold launch without connectivity blocks completed offline downloads #259 (offline cold launch) are not recorded.
    • iPhone/iPad/Mac download, pause, resume, delete, row states and offline play work per the maintainer's informal use, not a formal pass. Cinema return was not retested.

    Landing checklist:

    • Done:
      • the PR, check-sensitive-paths, the full local checks and the tag;
      • the TestFlight builds, which are recorded in RELEASES.md;
      • the stack branches, which were already gone.
    • Remaining: docs/plans/2026-10-16-downloads-overhaul.md stays active in docs/plans/ until the gates above close. Then archive it.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    downloadsOffline downloadskeystoneFoundational / unblocks otherstask

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions