Skip to content

Investigate: a synced library replacing data.json once didn't reach the view (e2e timeout) #477

Closed

Description

@chhoumann

An e2e run once timed out at tests/e2e/sync-persistence.test.ts:370, "keeps a new device's change when the library replaces its data.json". The view stayed on the first-run screen while data.json on disk already held the synced library.

Seen in: the V-475 verification (Obsidian 1.14.4, Linux, fresh vault, PR #475 head d2c2bff). In that first full run, 189 tests passed and this one timed out. The same test passed in isolation on both #475's head and master, and a second full fresh-vault run passed 190/190. Runtime error journals were empty.

Why it matters: if PodNotes sometimes misses an external data.json change (sync replacing the library) on a new device, the device keeps showing an empty library until something else triggers a reload. That's the multi-device flow 2.22.0 is built around (#388, #398). Root cause and any real-user impact are unproven.

Evidence: the screenshot, data.json, DOM, notices and console messages are preserved in the program store under evidence/V-475/full-suite-sync-timeout/ (coordinator machine).

Next step: run the journey in a loop under full-suite load. If it reproduces, check whether onExternalSettingsChange or the vault watcher fired, and whether the view re-reads the library after adoption.

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