Skip to content

fix(svelte): deliver synchronous updates and clean up subscriptions - #36

Merged
codeBelt merged 1 commit into
mainfrom
codex/svelte-subscription-fixes
Oct 23, 2026
Merged

codeBelt merged 1 commit into
mainfrom
codex/svelte-subscription-fixes

Conversation

@codeBelt

Copy link
Copy Markdown
Owner

Svelte consumers could read stale values immediately after changing a store because the adapter used batched notifications. Deliver snapshots synchronously to satisfy the Svelte store contract while keeping ordinary core subscriptions batched.

Subscribe before the initial callback to observe mutations it makes, stop delivery after unsubscription during an active notification, and clean up if the initial callback throws. Add Svelte 5 browser regressions for input caret behavior, computed values, keyed lists, and repeated component cleanup. Update public documentation and include a patch changeset for 0.8.1.

Validation:

  • 553 unit tests passed.
  • 106 browser tests passed across Chromium, Firefox, and WebKit, including all 12 Svelte cases; 8 existing clipboard cases skipped as expected.
  • Confirmed the timing regression fails on the original adapter and passes with the fix.
  • TypeScript/Svelte checks, library build, Svelte example check/build, scoped lint, and frozen-lockfile install passed.
  • Svelte browser and component type checks are included in existing CI commands.

@codeBelt
codeBelt merged commit 4d4e800 into main Oct 23, 2026
6 of 7 checks passed
@codeBelt
codeBelt deleted the codex/svelte-subscription-fixes branch October 23, 2026 14:32
@github-actions github-actions Bot mentioned this pull request Oct 23, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant