Summary
The CLI exposes --num-threads, but the value is currently unused, and processing is sequential.
Proposed change
- Use
tokio concurrency primitives (e.g. Semaphore + JoinSet or FuturesUnordered) to process images in parallel.
- Respect
--num-threads as the maximum concurrent in-flight OCR+embedding tasks.
Acceptance criteria
--num-threads caps concurrency deterministically
- Default behavior matches current docs/help text (e.g. num CPUs)
- No new panics; errors are logged per-file as today
Summary
The CLI exposes
--num-threads, but the value is currently unused, and processing is sequential.Proposed change
tokioconcurrency primitives (e.g.Semaphore+JoinSetorFuturesUnordered) to process images in parallel.--num-threadsas the maximum concurrent in-flight OCR+embedding tasks.Acceptance criteria
--num-threadscaps concurrency deterministically