Skip to main content

Reporting-table performance

Status and scope​

FieldState
Contract statusCurrent master
Implementation statusMixed; historical designs require remeasurement
Last source review2026-08-26
Runtime verificationRequired for performance and interaction claims
OwnerNot recorded in this public document

This master combines the C1/C2 design and hierarchy-table virtualization plan. It owns performance behavior for the paid-acquisition table without weakening frozen columns, interactions, or tenant scope.

Problem model​

Historical investigations isolated redundant focus/expand fetch work and large nested renders, plus column-drag state invalidating a wide cell tree. Memoized row boundaries, stable handlers, debounced focus work, and cached derivations come before virtualization. Re-measure current source before reusing historical component counts.

Invariants​

  • Sticky columns keep offsets, z-index, widths, and horizontal-scroll behavior.
  • Expansion, selection, sorting, visibility, resizing, reordering, and drill actions remain intact.
  • Nested rows maintain stable identity and effective expanded state.
  • Data fetching stays scoped and does not multiply by rendered row count.
  • Performance work does not replace unavailable/missing values with zero.

Change sequence​

  1. Reproduce on the current public or authorized preview deployment.
  2. Measure renders, queries, visible rows, and interaction latency.
  3. Remove duplicate fetches and unstable state/handler dependencies.
  4. Memoize the narrowest stable row boundary.
  5. Cache expensive pure derivations with tests.
  6. Consider windowing only after browser/component coverage exists for sticky and nested behavior.

Virtualization contract​

A proposal must define the flattened visible-row model, stable keys, height policy, sticky-column composition, keyboard/focus behavior, nested expansion, scroll restoration, representative browser tests, and rollback without changing data contracts.

Acceptance gates​

  • Focus/expand produces the intended request count.
  • Drag/resize stays within a measured render budget.
  • Long names, hover disclosure, sticky offsets, and horizontal scrolling work.
  • Nested interactions and tenant tests pass.
  • Browser measurements are recorded; a local build is insufficient.

Provenance​

Replaced documentContribution retained here
C1/C2 table performance designMemoization/debounce, frozen-column and rollback contracts
Hierarchy table virtualization planHot paths, handler stabilization, staged windowing design