bi-15 step 03 — Traces 6–7: setState and fetch, then the table
Goal
The two traces that require the framework strand, and the artefact the whole module exists to produce.
Tasks
Trace 6 — setCount(count + 1) (after fw-04)
- State slot write, scheduling, batching, priority.
- Render phase (interruptible) and commit phase (atomic).
- Count the DOM operations.
- Invalidation scope; layout needed or not; paint needed or not; compositor-only or not.
- Produce two variants: one compositor-only, one running every stage. Explain the difference at every layer.
Trace 7 — fetch() (after bi-02)
- Binding, promise creation, which microtask resolves it.
- Renderer → network service via Mojo. The renderer never holds the socket.
- Where CORS, CSP, and cross-origin read blocking are enforced — and why there.
- Response streaming; which thread the body arrives on.
- Does resolution yield to rendering? (
bi-11)
Then: the layer-skipping table. Fill it from your own traces. Cross-check every row against
css_properties.json5.
Done when
- Both traces complete with all eight layers addressed
-
Two
setStatevariants explained layer by layer - The layer-skipping table filled from your own measurements
-
PROGRESS.mdledger updated with deepest genuinely resolved layer per trace