References — fw-04 mini-react II: Batching, Scheduling, Deriving Fiber
Primary sources first. Read the real implementation after you have written yours, never before.
The scheduler
react/packages/scheduler— readforks/Scheduler.js, specificallyschedulePerformWorkUntilDeadline. It prefersMessageChannelover microtasks andsetTimeoutfor reasons fe-01 (sibling project) measures directly: microtask yielding rendered 0 frames.react-reconciler/src/ReactFiberWorkLoop.js— the render/commit split and the interruptible work loop- React Fiber Architecture — the data structure, explained before the code
Concurrent features
- React docs —
startTransition·useDeferredValue·<Suspense> - React 18 working group discussions — the design rationale, in public
- React Labs updates — where concurrent behaviour changes get announced
The platform underneath
- HTML Standard §8.1.7 — Event loops
- Prioritized Task Scheduling API —
scheduler.postTask,scheduler.yield - web.dev — Optimize long tasks — the ~5 ms yield budget
Related modules
- fe-01 — Execution model & scheduling (sibling project) — the measured substrate. Do this first; the design decisions here are unreadable without it.
- bi-11 — Blink scheduling — what the browser does with the tasks React posts
- fw-02 — mini-react core — stages 1–7
When a claim here proves stale, record it in PROGRESS.md section 7.