Skip to content

1.11.1

Choose a tag to compare

@github-actions github-actions released this 22 May 07:58
· 197 commits to main since this release

Changes

Fix: stuck sync between devices when the same tag was mapped to a profile on both

  • If two devices independently applied a profile to the same tag (each generating its own internal mapping id), syncing one device's log into the other would hit a UNIQUE constraint failed: profile_tag_mappings.tag error inside the tag_mapping_upsert handler. The handler threw before the dispatcher could advance journal_state, so the same op was retried on every subsequent sync — permanently blocking the source device. All later session/rate ops behind it were stalled too.
  • The handler now resolves the tag conflict atomically with a newer-wins check: if the incoming mapping is newer than the local one, it replaces it; otherwise the local mapping is kept. Either way the op is consumed and sync moves forward.
  • After updating, your iOS (or other previously-stuck) device will resume syncing on the next pass and drain its backlog of reviews/sessions automatically.