Charts (draw mode) already auto-refresh via useAdaptivePoll (2–60s adaptive, src/scenes/Editor/Notebook/DrawCanvas/index.tsx), but grid/run cells never poll — re-running is manual (reRunResultAt in src/scenes/Editor/Notebook/useCellExecution.ts).
Request: a smooth "run-as-you-type" / live mode for grids.
Critical safety: SELECT/DQL is safe to re-run repeatedly; DDL/DML (CREATE/INSERT/UPDATE/DELETE/DROP) must NOT auto-rerun.
Existing building block: draw mode already classifies queries via validateWithGlobals — DQL responses carry columns, write statements carry queryType, and DrawCanvas blocks drawing on write queries ("Cannot draw a write query…"). There is no shared client-side isDDL/isDML helper; classification is inline in DrawCanvas.
Ask: reuse the same validate-based classification to gate live re-runs to read-only statements. For multi-statement cells, only run live if the whole script is DQL.
Charts (draw mode) already auto-refresh via
useAdaptivePoll(2–60s adaptive,src/scenes/Editor/Notebook/DrawCanvas/index.tsx), but grid/run cells never poll — re-running is manual (reRunResultAtinsrc/scenes/Editor/Notebook/useCellExecution.ts).Request: a smooth "run-as-you-type" / live mode for grids.
Critical safety: SELECT/DQL is safe to re-run repeatedly; DDL/DML (CREATE/INSERT/UPDATE/DELETE/DROP) must NOT auto-rerun.
Existing building block: draw mode already classifies queries via
validateWithGlobals— DQL responses carrycolumns, write statements carryqueryType, and DrawCanvas blocks drawing on write queries ("Cannot draw a write query…"). There is no shared client-sideisDDL/isDMLhelper; classification is inline in DrawCanvas.Ask: reuse the same validate-based classification to gate live re-runs to read-only statements. For multi-statement cells, only run live if the whole script is DQL.