+49
−14
+24
−1
Loading
Subscriptions were only ever uploaded with `remove: []`, so a local
unsubscribe never reached the gpodder.net / Nextcloud server and stale
feeds (e.g. a removed duplicate) lingered there.
- Reconcile via a three-way merge against a persisted baseline (the
subscription set in sync at the last successful sync): apply remote-only
changes locally and push only local-only adds *and* removes.
- A podcast added on another device is no longer mistaken for a local
removal, so multi-device sync is robust (no accidental unsubscribes).
- First sync (no baseline) unions both sides and removes nothing; removals
start propagating from the next sync.
Co-Authored-By:
Claude <claude@anthropic.com>