Skip to content

Opening the restored player after an Obsidian restart starts audio automatically #377

Closed

Description

@chhoumann

PodNotes resumes audio automatically when the restored Player tab opens after an app restart. The saved episode and nonzero position restore correctly, but reopening the player starts playback without pressing Play.

Reproduced on Obsidian 1.13.7, headless Linux, PodNotes 2.20.3 at d420a7d, in isolated vault podnotes-test-journey-e2e with the checkout's production bundle. The fixture RSS uses http://127.0.0.1.nip.io:<ephemeral port>/playback/feed.xml and a real 60-second WAV for Long Listen.

  1. Open Journey Playback from the podcast grid and click Long Listen.
  2. Wait for a nonzero playback checkpoint of at least five seconds in data.json.
  3. Quit Obsidian by closing its main window, then relaunch with the private profile preserved.
  4. Open PodNotes and click the Player tab. Do not select an episode or press Play.

Expected behavior is the same episode at the saved position, paused. The app initially reports paused before the media player mounts. After opening Player, the public API reports isPlaying: true and the WAV plays automatically.

The QA1 real-runtime repro command was TMPDIR=/data/home/tmp/podnotes-QA1 fnm exec --using 22 npm run test:e2e -- -t J-PLAY-11. The added paused assertion fails with expected true to be false after both process IDs change and the saved-position assertions pass. Evidence is .obsidian-e2e-artifacts/qa1/repro-autoplay.log in the QA1 worktree.

Source inspection points to restoreSavedPlaybackTime in src/ui/PodcastView/EpisodePlayer.svelte, which sets isPaused to false during restoration. QA1 adds coverage only and does not fix product behavior. This is distinct from #353, which loses progress after switching episodes following a restart.

Activity

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

    No labels
    No labels

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions