Scan concurrency: the scan is I/O-bound — each directory read is a network round-trip to the share, so the lever is parallel in-flight reads, not CPU threads. Replace the per-level BFS barrier (which idled workers waiting on the slowest dir in each level) with a continuous shared-queue pool that keeps up to SCAN_CONCURRENCY (16, up from 6) reads in flight at once, pulling newly discovered child dirs as they land. Still roughly breadth-first (FIFO), so top levels surface first. ensureScanned reuses it. Error messages: translate File System Access DOMExceptions into accurate, actionable text keyed on err.name (not the cryptic raw message, which reads like a permission problem when it isn't). e.g. InvalidStateError now reads 'the folder changed on disk since it was first read … rescan' instead of 'an operation that depends on state cached in an interface object …'. The raw name+message is appended in parens for copy-paste troubleshooting. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com> |
||
|---|---|---|
| .. | ||
| app.js | ||
| excel.js | ||
| filter.js | ||
| preview.js | ||
| resize.js | ||
| scanner.js | ||
| selection.js | ||
| sort.js | ||
| spreadsheet.js | ||
| store.js | ||
| tree.js | ||
| utils.js | ||
| validator.js | ||