Metrics

Runtime, bundle, coverage, and manual measurement fields used by the lab.

This project records runtime metrics in the app benchmark panels and keeps manual benchmark results in Results Before and After.

Runtime Metrics

MetricSourceSlow app expectationOptimized app expectation
Commit countReact Profiler APIHigher during broad state updatesLower or more localized
Actual render durationReact Profiler APIHigher during search, sort, chart, and table updatesLower after memoization and virtualization
Base render durationReact Profiler APIReflects full tree costReflects smaller rendered tree
Interaction durationBrowser Performance APIMeasures event-side work for benchmark controlsMeasures event-side work after optimized state flow
Rows in DOMApp benchmark panelEqual to filtered result countEqual to virtual window size
Bundle outputVite build outputHeavy chart included in initial app bundleHeavy chart emitted as a lazy chunk
CoverageVitest V8 providerHTML generated into site/coverage/HTML generated into site/coverage/

Manual Measurement Fields

Use these fields when filling Results Before and After:

FieldDescription
BrowserBrowser name and version
HardwareCPU/RAM or machine description
ViewportWidth and height
Dataset sizeNumber of generated rows
Slow resultMeasured value from slow app
Optimized resultMeasured value from optimized app
DeltaAbsolute difference
ImprovementPercentage improvement, when meaningful
NotesObserved trade-offs or anomalies

Placeholder Policy

Do not invent numbers. Keep Manual measurement pending until the value has been collected from a real browser run.