From #487: the synchronous filter path blocks ~90ms at 50k where the cooperative baseline blocked 0 (while settling ~120ms sooner); the merged sort path blocks ~250ms. A row-count gate — synchronous below ~10k, cooperative above — would remove the large-scale block while keeping the small-scale wins, and matters most for filter-as-you-type at scale. The cooperative path is retained in full, so this is a dispatch-condition change plus bench certification at both scales.
🤖 Generated with Claude Code
From #487: the synchronous filter path blocks ~90ms at 50k where the cooperative baseline blocked 0 (while settling ~120ms sooner); the merged sort path blocks ~250ms. A row-count gate — synchronous below ~10k, cooperative above — would remove the large-scale block while keeping the small-scale wins, and matters most for filter-as-you-type at scale. The cooperative path is retained in full, so this is a dispatch-condition change plus bench certification at both scales.
🤖 Generated with Claude Code