Parent
Part of #414
Problem
Extension driver RPC uses newline-delimited JSON (LineSplitter + jsonDecode(line)). A db.query result can be one unbounded line → O(result) on the UI isolate before compute, plus another copy into the isolate.
Evidence
lib/core/extensions/rpc/json_rpc_stdio_client.dart
lib/core/extensions/sandbox/extension_driver_session.dart (query parse path)
Acceptance
Suggested fix
Chunked framing or row-batch RPC; hard max line/payload size; mirror SQL workspace caps.
Parent
Part of #414
Problem
Extension driver RPC uses newline-delimited JSON (
LineSplitter+jsonDecode(line)). Adb.queryresult can be one unbounded line → O(result) on the UI isolate beforecompute, plus another copy into the isolate.Evidence
lib/core/extensions/rpc/json_rpc_stdio_client.dartlib/core/extensions/sandbox/extension_driver_session.dart(query parse path)Acceptance
Suggested fix
Chunked framing or row-batch RPC; hard max line/payload size; mirror SQL workspace caps.