bi-10 — Broader Ideas
Stale but consistent beats correct but late
Checkerboarding and the pending/active tree split are both deliberate choices to show consistent content rather than block for complete content.
That trade appears everywhere:
- Stale-while-revalidate in HTTP caching and in
fw-09's query cache. - Optimistic UI — show the expected result, reconcile later.
- Eventual consistency in distributed stores.
- Progressive rendering — paint what you have.
The browser makes this choice at 60 Hz, thousands of times a session. It is a good argument to cite when someone insists a UI must never show anything but confirmed state.
Budget thinking
16.7 ms shared across a dozen stages, of which your script is one, and overrunning by 1 ms costs
a whole frame. Cliffs, not slopes.
Generalise it: any system with a deadline — an SLA, a request timeout, a batch window — has the same property. Averages hide cliff behaviour, which is why p95/p99 is the right instrument and why "our mean response time improved" can accompany a worse user experience.
The author-guarantee lever, at its clearest
{passive: true} is a promise that unlocks a fast path. It became a default because the guarantee
was almost always true and almost never declared.
That is a template for API evolution: ship the opt-in, measure how often the guarantee holds, then flip the default. If you own a library with a conservative default nobody needs, this is the path.
Next
bi-11 explains how work is chosen within a frame; bi-15's scroll and click traces make the
process boundaries observable rather than diagrammatic.