Skip to content

v0.40.6 — decompose IntervalHistory into hooks

Choose a tag to compare

@hazptr hazptr released this 22 Jun 20:02
· 2 commits to main since this release

Tech-debt batch 5b (epic #161). Behavior-preserving decomposition.

  • #156 — IntervalHistory.tsx 1424→899 LOC; extracted useIntervalFetch/useOverscanLoad/useChartNavigation hooks (pure window math stays in intervalZoom.ts). Explicitly guarded every payload deref against the loading/null state (the v0.40.2 #150 crash class); preserved fresh-curWindowRef, horizontal-wheel pan + stopPropagation, and the justified exhaustive-deps disable.
    Verified: Docker test 983 / build green; staging force-mount probe (cleared layout → all interval widgets mount) renders clean, 0 console errors. No schema change. Gesture interactions (zoom/pan/drag-select) are byte-equivalent code — confirm on the live dashboard.