[GH-ISSUE #182] application: run cross-version artifact scans in parallel #127

Closed
opened 2026-10-15 18:21:23 +00:00 by bsakaguchi · 0 comments
Owner

Originally created by @morluto on GitHub (Jul 14, 2026).
Original GitHub issue: https://github.com/morluto/rea/issues/182

Problem

scanVersions() in src/application/CrossVersionInventory.ts runs scanAuthorizedArtifactInventory() for left and right serially.

Evidence

  • src/application/CrossVersionInventory.ts:54
  • src/application/CrossVersionInventory.ts:61

Both calls are independent and each can be expensive for large trees. Current flow waits for the left scan to finish before starting the right scan, so user-facing runtime is roughly t_left + t_right instead of close to max(t_left, t_right) when I/O and subprocess limits allow concurrency.

Impact

  • Increases elapsed time for cross-version comparisons and any workflow that calls scanVersions, especially for large binaries with deep artifact trees.

Suggested fix

  • Run both scans concurrently via Promise.all, preserving the existing signal/error handling and failure shaping.
Originally created by @morluto on GitHub (Jul 14, 2026). Original GitHub issue: https://github.com/morluto/rea/issues/182 ## Problem `scanVersions()` in `src/application/CrossVersionInventory.ts` runs `scanAuthorizedArtifactInventory()` for `left` and `right` serially. ## Evidence - `src/application/CrossVersionInventory.ts:54` - `src/application/CrossVersionInventory.ts:61` Both calls are independent and each can be expensive for large trees. Current flow waits for the left scan to finish before starting the right scan, so user-facing runtime is roughly `t_left + t_right` instead of close to `max(t_left, t_right)` when I/O and subprocess limits allow concurrency. ## Impact - Increases elapsed time for cross-version comparisons and any workflow that calls `scanVersions`, especially for large binaries with deep artifact trees. ## Suggested fix - Run both scans concurrently via `Promise.all`, preserving the existing signal/error handling and failure shaping.
bsakaguchi 2026-10-15 18:21:23 +00:00
  • closed this issue
  • added the
    bug
    label
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
morluto/rea#127
No description provided.