fw-03 step 03 — Scheduling, then rebuild it as signals

Goal

Batch the effects, then discover how much of your Vue implementation was essential versus Vue-specific.

Tasks

  1. Scheduler. A deduplicated queue flushed on a microtask. Reproduce the un-batched case first: 1,000 writes in a loop, measured.
  2. Explain why a microtask is the right boundary, referencing bi-11.
  3. Now build signals.js from scratchsignal, computed, effect, batch. Do not refactor the Vue code into it. Copy the spec, adapt the API surface, and get it green.
  4. Compare the two implementations. What was essential? What was Vue-specific? The answer is the finding.
  5. Fill your version of the four-model comparison table (React / Vue / signals / Redux) across: how it knows what changed, unit of update, what cost scales with, whether "state at time T" exists, and what tooling each demands.

Done when

  • Batching measured before and after
  • signals.js written independently and passing an adapted spec
  • Comparison table filled in your own words
  • Notebook entry: the Vue scheduler