Measure long tasks caused by filtering rather than counting renders alone
A render counter improved after memoization, but typing still stalls because sorting and formatting happen before React commits.
- Focused work estimate
- 2h + prerequisites
- Priority in the scenario
- Medium
- Engineering practice
- Main-thread work · Instrumentation
Estimated field mix
- Performance engineering60%
- Frontend40%
Field percentages are editorial estimates of the ticket's engineering focus. They total 100%; they are not measured time, proficiency scores, or ownership evidence.
Review it, then add it to your workspace.
The board opens an editable draft; nothing is saved until you confirm it. Sign-in and workspace permissions apply, and Demo boards remain ephemeral.
Project context
A fictional repair coordinator opens a week containing 2,000 jobs. The initial page loads, but filtering and selecting a job can freeze the interface. Build a synthetic scheduling screen with keyboard operation before measuring changes.
Setup prerequisites
- Create a local schedule UI with 2,000 synthetic jobs, long labels, empty results and deterministic responses.
- Record browser version, viewport, device emulation, CPU/network throttling and build mode for every comparison.
Preceding work
Complete these dependencies, or supply their agreed outputs before taking this ticket.
Acceptance criteria
- Record input-event start, result commit and long-task observations around the filter workflow.
- Attribute measured time to filtering, sorting, rendering and layout where supported; label gaps as unknown.
- Keep measurements bounded and remove observers when the screen is left.
Implementation constraints
- A lab interaction duration is not a claim about field Core Web Vitals; name the measured boundary explicitly.
Verification to include
- Inject a known synchronous filter delay and verify it appears in the recorded interaction.
- Navigate away and back repeatedly and confirm only one active observer set remains.
Deliverables
- Interaction measurement helper and trace interpretation notes
Rollout and recovery
Enable the helper only for the local profiling build; detach it without changing application behavior.
Value of the work
For the engineer: Connect bundle, rendering and interaction measurements to user-visible behavior without losing accessibility.
For the team: Produce a bounded performance investigation and regression workflow for dense operational interfaces.
Evidence boundaries
Outcome Evidence: Tests, patches, and runbooks are requested deliverables. They become Outcome Evidence only through a qualified Mission and immutable Evidence IDs.
Ownership Evidence: Independent adaptation must be observed under a declared verification policy and cite immutable Evidence IDs. Completing a planning ticket establishes no Ownership Evidence.