PodNotes data.json changed elsewhere adopts data.json once it becomes readable after a start that could not read it
PodNotes data.json changed elsewhere applies the change without a reload and keeps it through the next local save
PodNotes data.json changed elsewhere does not treat its own saves as external changes
PodNotes data.json changed elsewhere keeps a new device's change when the library replaces its data.json
PodNotes data.json changed elsewhere keeps an edit made here that was not saved yet when another device's change lands
PodNotes data.json changed elsewhere keeps its library when a new device's file replaces data.json
PodNotes data.json changed elsewhere leaves the playing episode, its position and the queue alone
PodNotes data.json changed elsewhere saves an unsaved edit and keeps the change made elsewhere when disabled during their read
PodNotes data.json changed elsewhere shows both names when the library saved a podcast under an earlier name than a new device
PodNotes queue identity keeps same-titled episodes from two podcasts queued, and playing one keeps the other (#356)
PodNotes runtime a level set before a restored episode plays survives it, and the next episode starts at the default speed
PodNotes runtime captures a linked segment into the active editor
PodNotes runtime captures a linked timestamp into the active editor
PodNotes runtime keeps data.json when Obsidian reloads while an episode plays
PodNotes runtime leaves a data.json it cannot read unchanged and saves nothing
PodNotes runtime migrates legacy dates and credentials before runtime hydration
PodNotes runtime opens timestamp URI links at requested progress even after an episode is played
PodNotes runtime persists API volume changes and clamps out-of-range values
PodNotes runtime playback-rate commands update the live player rate and reset to the configured default
PodNotes runtime preserves zero-second timestamp URI links at runtime
PodNotes runtime previous-track Media Session action appends to the episode note without an active editor
PodNotes runtime previous-track Media Session action captures a timestamp into the active editor
PodNotes runtime refuses a future schema without modifying its data
PodNotes runtime registers commands, protocol handling, and the player view
PodNotes runtime renders feed-controlled Markdown punctuation only as visible text
PodNotes runtime seeks immediately when the linked episode is already loaded
PodNotes runtime stops playback when a segment URI reaches its end
PodNotes runtime the Media Session shows the episode, and each of its actions drives the player
closes a leaked window and reports it during workspace rollback
closing a popout with a player moved to a popout while playing keeps the audio playing and data.json intact
closing a popout with a player opened in a popout keeps the audio playing and data.json intact
feed journeys J-EDGE-03 offline with a cache older than its TTL still lists the podcast's episodes
feed journeys J-EDGE-05 a feed missing optional fields still lists and plays its episodes, skipping one without audio
feed journeys J-EDGE-05: a feed episode without pubDate still appears in the episode list (#378)
feed journeys J-FEED-01 searching Settings and clicking Add subscribes to the podcast for good
feed journeys J-FEED-05 removing a podcast drops it from the grid, Latest Episodes and the feed cache at once
feed journeys J-FEED-06 opening a podcast lists every episode, beyond the Latest Episodes limit
feed journeys J-FEED-08 importing an OPML file through the file picker subscribes to its new podcasts
feed journeys J-LIST-04 a refresh that returns after the user moved on never shows the old feed or sticks
feed journeys a podcast without artwork still gets a card in the grid (#358)
feed journeys podcasts titled toString and __proto__ download, queue, play and keep their names after a reload
feed journeys the Episode list tab shows episodes that loaded while the grid was open (#375)
feed journeys two saved podcasts sharing one feed URL each keep their own card, episodes and Remove
hiding the main window saves the playing position at once
keeps a setting changed 50 ms before the main window closes
keeps data.json intact through a reload right after a popout player closes (#370)
link and local file journeys J-LOCAL-01 Play with PodNotes on a vault audio file opens the player and keeps the file in Local Files
link and local file journeys J-NOTE-07 the default note's Resume in PodNotes link resumes the saved position
link and local file journeys J-URI-03 a timestamp link to a podcast that was never loaded fetches it and plays from that time
link and local file journeys a timestamp link to a moved vault file plays the one file with its name, and refuses when two share it
local files runtime asks before trashing a download PodNotes cannot confirm it made
local files runtime removing a local file from Local Files keeps the user's file in the vault (disabled explorer)
local files runtime removing a local file from Local Files keeps the user's file in the vault (enabled and closed explorer)
local files runtime removing a local file from Local Files keeps the user's file in the vault (enabled and open explorer)
marketplace review runtime paths copies the universal link through the real command and clipboard boundary
marketplace review runtime paths finds a uniquely renamed episode note within only its expected folder
marketplace review runtime paths normalizes raw async rejection reasons to Error objects in the live bundle
marketplace review runtime paths renders searchable declarative settings and completes export/import with persistence
marketplace review runtime paths streams a ranged download through the real adapter and renders it in Local Files
mobile journeys J-EDGE-13 a private feed URL moved to SecretStorage on a mobile start leaves no copy in the old feed cache
mobile journeys J-ONB-02 on a mobile first launch PodNotes stays closed until its ribbon icon opens it
playback journeys #353 a restored position survives switching to another episode before the player opens
playback journeys #355 J-PLAY-09 an episode that ends while the user browses plays the queued one
playback journeys #355 audio keeps playing while the user browses the grid, an episode list and settings
playback journeys #377 J-PLAY-11: after restart the restored player keeps its saved position without autoplay
playback journeys J-LIST-08 clicking an episode in the list plays its real media
playback journeys J-PLAY-01 the on-screen button pauses, keeps the position, and resumes
playback journeys J-PLAY-09 an episode that ends is marked played and the queue plays the next one
playback journeys J-PLAY-12 J-API-06 J-URI-07 commands, the API and a timestamp link control playback with the view closed
playback journeys Start playing while a slow link to another show loads keeps playing the paused episode
playback journeys a data.json change from another device during playback does not seek, reload, or advance the queue
playback journeys a link to another show's same-titled episode plays that show's episode
refuses a restart with an extra window before closing the test vault
resilience journeys J-EDGE-03 offline after a restart: cached episodes browse, the downloaded episode plays, an unloaded podcast fails cleanly
resilience journeys J-EDGE-12: a data.json replaced by sync keeps both the remote and the local change (#357)
resilience journeys J-TR-02 transcribing the current episode writes its transcript note from the real audio
restores the explorer runtime state and exact persisted core-plugin config
