GeezerVisonThe World Wide Web, restored to 800 pixels of glory. | |
| Home|About|Gaming cabinet|Archives|How it works|Starter sites | |
GeezerVison is showing github.com — fix(reactive): bound self-triggered effect re-runs instead of recursing by JosunLP · Pull Request #186 · bQuery/bQuery Conversation
Collaborator
SummaryFixes #166 (High).
FixThe effect observer gets a re-entrancy guard (per-effect
Dispose-during-run semantics are preserved (cleanup still runs via the Verification
🤖 Generated with Claude Code
Sorry, something went wrong. Uh oh!
There was an error while loading. Please reload this page. All reactionsAn effect that writes a signal it also reads re-entered its own observer synchronously (scheduleObserver invokes observers directly outside a batch), overflowing the stack. batch() did not help because the re-write happens during flush when batchDepth is already 0. The effect observer now carries a re-entrancy guard: a self-trigger while running defers the re-run into a bounded loop (MAX_SYNC_RERUNS = 100). Effects that legitimately settle (e.g. clamping writes) still converge silently; true cycles stop after the bound with a 'cyclic effect update detected' warning instead of crashing the page. Fixes #166 Co-Authored-By: Claude Fable 5 <[email protected]>
|
There was an error while loading. Please reload this page.
|
Important Review skippedAuto reviews are disabled on base/target branches other than the default branch. Please check the settings in the CodeRabbit UI or the ⚙️ Run configurationConfiguration used: defaults Review profile: CHILL Plan: Pro Run ID: You can disable this status message by setting the Use the checkbox below for a quick retry:
✨ Finishing Touches🧪 Generate unit tests (beta)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
Sorry, something went wrong.
There was an error while loading. Please reload this page.
There was an error while loading. Please reload this page.
There was an error while loading. Please reload this page.
Successfully merging this pull request may close these issues.
There was an error while loading. Please reload this page.