Repository navigation
Epic: Android post-v1 upgrade tracks #52
Description
Important
Follow-up program for Android capabilities intentionally excluded from the mobile-v1 and Android TV launch boundary in #14. These items remain captured without delaying either launch.
Outcome
The shipped Compose mobile and Android TV apps gain the deferred platform integrations, richer home and sharing surfaces, tablet features, and playback-engine proof that were explicitly placed after v1.
Completion boundary
This epic does not gate #14. It closes when every child below is complete or closed with a recorded product or technical decision. Work remains unscheduled until an item receives an explicit Wave in the Frontend project.
Child issues
- Picture-in-Picture for mobile video playback #37 — Picture-in-Picture for mobile video playback
- Continue Watching and richer home rails on mobile and TV #38 — Continue Watching and richer home rails
- Android TV platform integration: voice search provider, home channel, QR pairing #39 — Android TV platform integrations
- Documents provider (SAF) integration #40 — Documents provider integration
- Widgets, app shortcuts, and notification actions #41 — widgets, shortcuts, and notification actions
- Evaluate libVLC direct-play: licensing, store compliance, Media3 fallback boundary #42 — libVLC direct-play evaluation
- Prove supported 10-bit playback on Android TV #11 — 10-bit playback proof, after Evaluate libVLC direct-play: licensing, store compliance, Media3 fallback boundary #42
- Public links and sharing UI #43 — public links and sharing UI
- Tablet power features: keyboard shortcuts, drag-and-drop, multi-window #44 — tablet power features
- Sharing and public-links namespace putio-sdk-kotlin#26 — sharing and public-links namespace, done (feat(sharing): add sharing and public-links namespace putio-sdk-kotlin#56); Public links and sharing UI #43 unblocked
- Complete Android download queue management and offline polish #53 — download queue management and offline polish, after Mobile downloads v1: download-to-device with explicit local availability and offline playback #28
App-only batch: 2026-10-04
Altay scheduled every child that needs no hardware, credentials, SDK release or product call. One agent per item in its own worktree; a PR merges after verify, the debug assembles, emulator proof and green CI.
- Merged: Widgets, app shortcuts, and notification actions #41 shortcuts, Transfers widget, download notification actions → feat(mobile): launcher shortcuts, a Transfers widget and download notification actions #319 (cold-start Try again and non-Pixel launchers unverified)
- Merged: Tablet power features: keyboard shortcuts, drag-and-drop, multi-window #44 tablet keyboard, drag and drop, multi-window → feat(mobile): keyboard shortcuts, drag and drop, and multi-window on tablets #318 (live API, mouse drag, real drop targets and physical tablets unverified)
- Merged: Complete Android download queue management and offline polish #53 download queue → feat(mobile): manage the download queue and polish offline playback #312 (live
devs-autolane unverified) - Merged: Documents provider (SAF) integration #40 documents provider → feat(mobile): list put.io files in the system file picker #316 (live signed-in pick, on-device grant revocation and
Rangesupport unverified; MIME from extension until Expose content_type on PutioFile putio-sdk-kotlin#83) - Merged: Picture-in-Picture for mobile video playback #37 Picture-in-Picture → feat(mobile): picture-in-picture for video playback #314 (live put.io playback, Android 8–11 and OEM limits unverified)
- Merged: Android TV platform integration: voice search provider, home channel, QR pairing #39 TV QR, Watch Next and search → feat(tv): QR sign-in, Watch Next row and system search #313 (system search UI unproven: emulator Assistant has no Google account)
- Merged: Public links and sharing UI #43 public links → feat(mobile): create, share and revoke public links #310; the live create → open-in-browser recording still needs a human
devs-autosign-in on the phone emulator (same as auth: API 37 Auth Tab drops the OAuth callback on Chrome 145 #107) - Batch done 2026-10-05: every app-only child merged. Left: Continue Watching and richer home rails on mobile and TV #38, Evaluate libVLC direct-play: licensing, store compliance, Media3 fallback boundary #42, Prove supported 10-bit playback on Android TV #11, and the live signed-in proof below
- Live signed-in mobile proof for Public links and sharing UI #43, Complete Android download queue management and offline polish #53 and Documents provider (SAF) integration #40 waits on one human
devs-autosign-in (agents may not enter the password) - Not in this batch: Continue Watching and richer home rails on mobile and TV #38 until the API's in-progress and pinned-folder data is confirmed; Evaluate libVLC direct-play: licensing, store compliance, Media3 fallback boundary #42 and Prove supported 10-bit playback on Android TV #11 need hardware
Definition of done
Each child follows the same proof contract as #14: repository verification is green, behavior is exercised on the harness or required physical device, acceptance criteria carry linked evidence, and visible behavior has screenshots or a recording published from the PR with attach put <file> --repo putdotio/putio-android --pr <number> (or gh attach put ...). Link the returned preview URL, use --markdown only for an inline embed, follow the installed attach-cli skill, and do not commit generated proof media.
Boundaries
- Mobile v1 and the Android TV replacement remain owned by Epic: native Android rewrite — Compose mobile + Android TV from one codebase #14.
- Adding a Wave is the scheduling decision; issue order in this list is not a commitment.
- SDK contract work remains in putdotio/putio-sdk-kotlin.
Activity