You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
perf: parallelize independent rules in check --all #81
The engine runs one subprocess per rule, sequentially (engine.evaluate → _run_check). On the normal commit path (a handful of staged files) this is instantaneous and correct. But becwright check --all on a large repo with many rules pays N sequential process starts + N full scans.
(The docs now state this honestly — see the Performance and limits section added in #77 — but stating a limit is not the same as removing it.)
Proposal
Rules are independent by design (each gets its own file list and subprocess), so they can run concurrently:
concurrent.futures.ThreadPoolExecutor around _run_check calls in evaluate — threads are enough since the work is subprocess-bound, no new dependency needed.
Keep output ordering deterministic: collect results, print in rule order.
Activity