Refactor Data reactivity with signals#515
Conversation
Codecov Report❌ Patch coverage is
Additional details and impacted files@@ Coverage Diff @@
## feature/data-scope #515 +/- ##
========================================================
- Coverage 80.51% 79.81% -0.70%
Complexity 145 145
========================================================
Files 99 96 -3
Lines 3197 3067 -130
Branches 610 569 -41
========================================================
- Hits 2574 2448 -126
+ Misses 545 541 -4
Partials 78 78
Flags with carried forward coverage won't be shown. Click here to find out more.
🚀 New features to boost your workflow:
|
Code ReviewRisk: Low — No blocking defects were identified in the reviewed diff; this looks safe to merge after the skipped lockfile change is checked separately. This MR replaces the manual Data group fan-out with signal-backed channels, extracts form-control normalization into shared helpers, and updates Notes:
Review usage: 227,659 in (195,584 cached) / 6,496 out tokens — $0.2265 (cloudflare-ai-gateway/gpt-5.4, thinking: medium) Reviewed by @weareikko/code-review v0.8.3 for commit 41f13ef. Previous review runsPrevious run archived 2026-07-16T12:29:05ZCode ReviewRisk: Low — I did not find any blocking defects in the reviewed diff; this looks safe to merge once the skipped lockfile is checked separately. This MR replaces the manual Data group fan-out with a signal-backed Notes:
Review usage: 211,739 in (178,688 cached) / 7,174 out tokens — $0.2349 (cloudflare-ai-gateway/gpt-5.4, thinking: medium) Reviewed by @weareikko/code-review v0.8.3 for commit 0c3cc91. Previous run archived 2026-07-16T12:25:54ZCode ReviewRisk: Low — no blocking issues; safe to merge aside from nits. This MR replaces the manual Data group fan-out with signal-backed channels, extracts form-control read/write/serialization helpers, and adds regression coverage around hydration, equal writes, lifecycle recreation, Notes:
Review usage: 487,194 in (421,376 cached) / 12,157 out tokens — $0.4522 (cloudflare-ai-gateway/gpt-5.4, thinking: medium) Reviewed by @weareikko/code-review v0.8.3 for commit e82e59d. |
e82e59d to
0c3cc91
Compare
Summary
alien-signalsset()dispatch and lifecycle disposalset()overrides and reentrant updatesImplementation notes
The upstream
alien-signalspackage is used directly instead of@webreflection/alien-signals: the latter is a Preact-style facade over the same dependency and does not reduce the final bundled core. Signals remain a private implementation detail.The form-control extraction follows Vue's separation of DOM normalization from reactivity, while preserving the existing Data semantics for numbers, dates, grouped checkboxes, selects and the
[]group convention.Validation
npm run test— 47 files passed, 330 tests passed, 3 skipped, 1 todonpm run lint— passed with 15 pre-existing warningsnpm run buildnpm run docs:buildgit diff --check