From ec2bbb030976fdf0da5c8dd0d5581bc961a6dbf6 Mon Sep 17 00:00:00 2001 From: SiddGud Date: Sat, 4 Jul 2026 15:38:45 +0530 Subject: [PATCH 1/2] fix(runes): preserve derived memoization during async batch reading (#18503) --- packages/svelte/src/internal/client/runtime.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/svelte/src/internal/client/runtime.js b/packages/svelte/src/internal/client/runtime.js index 227203523e..92ce8a3c6d 100644 --- a/packages/svelte/src/internal/client/runtime.js +++ b/packages/svelte/src/internal/client/runtime.js @@ -669,7 +669,7 @@ export function get(signal) { var is_new = (derived.f & REACTION_RAN) === 0; - if (is_dirty(derived)) { + if (is_dirty(derived) && (!batch_values?.has(derived) || current_batch?.is_fork)) { if (should_connect) { // set the flag before `update_derived`, so that the derived // is added as a reaction to its dependencies From 965bb360808a7c3115ed6dddd8e0abedbcb03f33 Mon Sep 17 00:00:00 2001 From: SiddGud Date: Sat, 4 Jul 2026 15:44:29 +0530 Subject: [PATCH 2/2] chore: add changeset for #18503 fix --- .changeset/preserve-async-derived-memo.md | 5 +++++ 1 file changed, 5 insertions(+) create mode 100644 .changeset/preserve-async-derived-memo.md diff --git a/.changeset/preserve-async-derived-memo.md b/.changeset/preserve-async-derived-memo.md new file mode 100644 index 0000000000..f65907966e --- /dev/null +++ b/.changeset/preserve-async-derived-memo.md @@ -0,0 +1,5 @@ +--- +'svelte': patch +--- + +fix(runes): preserve derived memoization during async batch reading (#18503)