Commit 8105719
committed
fix(services): log JoinSet task panics in concurrent file fetch
The JoinSet loop in `fetch_file_contents` previously used
`if let Ok(..)` to unpack the join result, silently discarding the
`Err(JoinError)` variant emitted when a spawned git-show task panics or
is cancelled. Panics under the async runtime were therefore invisible
to operators even in `--verbose` / `COMMITBEE_LOG=debug` runs, making
root-cause analysis of missing diff context nearly impossible.
Switch to a full `match` arm and emit `tracing::warn!` with the
JoinError context when a task fails to join. The returned HashMap
shape is unchanged — panicked tasks are still omitted from the maps,
matching the previous fallback behaviour — so no caller logic has to
change.
Closes audit entry F-008 from #3.1 parent 7163ef7 commit 8105719
1 file changed
Lines changed: 13 additions & 5 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
7 | 7 | | |
8 | 8 | | |
9 | 9 | | |
| 10 | + | |
10 | 11 | | |
11 | 12 | | |
12 | 13 | | |
| |||
247 | 248 | | |
248 | 249 | | |
249 | 250 | | |
250 | | - | |
251 | | - | |
252 | | - | |
| 251 | + | |
| 252 | + | |
| 253 | + | |
| 254 | + | |
| 255 | + | |
| 256 | + | |
| 257 | + | |
| 258 | + | |
253 | 259 | | |
254 | | - | |
255 | | - | |
| 260 | + | |
| 261 | + | |
| 262 | + | |
| 263 | + | |
256 | 264 | | |
257 | 265 | | |
258 | 266 | | |
| |||
0 commit comments