Reporting-table performance
Status and scope
| Field | State |
|---|---|
| Contract status | Current master |
| Implementation status | Mixed; historical designs require remeasurement |
| Last source review | 2026-08-26 |
| Runtime verification | Required for performance and interaction claims |
| Owner | Not 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
- Reproduce on the current public or authorized preview deployment.
- Measure renders, queries, visible rows, and interaction latency.
- Remove duplicate fetches and unstable state/handler dependencies.
- Memoize the narrowest stable row boundary.
- Cache expensive pure derivations with tests.
- 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 document | Contribution retained here |
|---|---|
| C1/C2 table performance design | Memoization/debounce, frozen-column and rollback contracts |
| Hierarchy table virtualization plan | Hot paths, handler stabilization, staged windowing design |