Block a user
Migrate alert threshold to BIGINT
Time range comparison overlay
WebSocket push for real-time data
Chart annotations for events
Data export (CSV/JSON)
Signal autocomplete search
Chart duplication button
LH7: Add typecheck script to package.json
LHF: UpsChart deps array granular but fragile
LHF: Pre-load locale map at server startup
LHF: seriesLimit input can produce NaN
S7: Alert check O(n*m) loop over all signals per alert
S6: Explicit undefined passed to formatSI optional param
S5: Redundant .env gitignore patterns
S4: Divider/UPS charts send null for irrelevant fields
S2: Duplicated SQL CASE/WHERE construction in signals route
S1: usePlot bypasses exhaustive-deps — fragile closure contract
S3: TableViz gets individual props instead of spread
B5: UPS chart re-sorts already-sorted data
B4: Alert threshold uses INTEGER type - risk of overflow