perf: index non-code paths by dir in compute-batches (O(dirs·N) → O(N))
`buildNonCodeBatches` re-materialized `[...byPath.keys()]` seven times and, for Group A (Dockerfile clusters) and Group D (SQL migrations), re-filtered the full path list once per directory — O(dirs·N). On a many-service monorepo (one Dockerfile per service) that was the dominant cost. Hoist the path list once and build a dir→paths index once; Group A/D lookups become O(1). Output is byte-for-byte identical (the path ordering, sorts and group boundaries are all preserved). Verified [executed]: byte-identical to the previous implementation on the `scan-result-non-code.json` fixture and over 300 fuzzed non-code repos (0 mismatches); 17–31× faster on 300–600-service synthetic monorepos (e.g. 4250 files: 105ms → 3.4ms). Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
D
DashBot-0001 committed
94346d736bd52be5c9ae8a30d7ef42d86b08b428
Parent: a781a61