| Age | Commit message (Expand) | Author |
| 2026-09-21 | Actually resolve shared links, and guard against dead code | Claude |
| 2026-09-21 | Record phase 1 state and the gate overrides in CLAUDE.md | Claude |
| 2026-09-21 | Playback controls, background workers, settings | Claude |
| 2026-09-21 | UI, wiring, and an end-to-end test against a real feed | Claude |
| 2026-09-21 | Episode downloads, with the YouTube path kept separate | Claude |
| 2026-09-21 | Playback: position persistence, completion rules, sleep timer | Claude |
| 2026-09-21 | Subscription resolution, OPML, queue ordering, retention | Claude |
| 2026-09-21 | Data layer: schema, episode matching, conditional-GET refresh | Claude |
| 2026-09-21 | Merge in-app yt-dlp: verified working end to end, Termux no longer needed | Peter Stone |
| 2026-09-21 | Embed yt-dlp via Chaquopy instead of shelling out to Termux | Claude |
| 2026-09-21 | Scaffold Listen, with a podcast-native feed parser | Claude |