fw-03 step 01 — Tracking, and the precision test

Goal

Stages 1–3 of the spec. Stage 3 is the whole value proposition: an effect that never read b must not re-run when b changes.

Tasks

  1. reactive(obj) via Proxy get/set traps.
  2. effect(fn) — run immediately; maintain a stack of active effects, not a single global.
  3. track(target, key) on get; trigger(target, key) on set.
  4. ref(value) for primitives; explain why .value is required.
  5. Precision. Confirm that writing an unread property does not re-run the effect, and that writing the same value does not trigger at all.

Done when

  • Stages 1–3 green
  • You can state what distinguishes this from "re-run everything on any write"