/upload: a late (spooled) upload is correlated against now, not the call's started_at #301

Closed
opened 2026-10-27 20:14:56 -04:00 by logan · 1 comment
Owner

Found by drb-audio-review on node-26#44 (edge branch fix/44-upload-spool, commit 6b884d5, not pushed).

The edge node now spools failed uploads and retries them for up to 72h. routers/upload.py (~L102-110) queues _run_intelligence_pipeline without a reference_time, so incident_correlator.py (~L867) uses now = reference_time or clock.now(). A call that lands hours late is linked to whatever incident is active on that talkgroup now, or opens a new incident at the current time: wrong timeline, possibly wrong pin.

recorrelation_sweep.py (~L215) already anchors to started_at. Fix: in /upload pass the call doc's started_at as reference_time, or refuse to correlate calls older than the correlation window (transcribe only).

Should land before or with the node-26#44 release, since the spool makes late uploads routine during any C2 outage.

Found by drb-audio-review on node-26#44 (edge branch `fix/44-upload-spool`, commit 6b884d5, not pushed). The edge node now spools failed uploads and retries them for up to 72h. `routers/upload.py` (~L102-110) queues `_run_intelligence_pipeline` without a `reference_time`, so `incident_correlator.py` (~L867) uses `now = reference_time or clock.now()`. A call that lands hours late is linked to whatever incident is active on that talkgroup now, or opens a new incident at the current time: wrong timeline, possibly wrong pin. `recorrelation_sweep.py` (~L215) already anchors to `started_at`. Fix: in /upload pass the call doc's `started_at` as `reference_time`, or refuse to correlate calls older than the correlation window (transcribe only). Should land before or with the node-26#44 release, since the spool makes late uploads routine during any C2 outage.
logan added the
type
bug
area/correlationarea/ai-pipeline
priority
p1
kind
behavior-bug
labels 2026-10-27 20:14:56 -04:00
Author
Owner

Fixed in ec35d80, deployed to prod as 4fab959 on 2026-11-08 (/health confirms).

Fixed in ec35d80, deployed to prod as 4fab959 on 2026-11-08 (/health confirms).
logan removed the
priority
p1
label 2026-11-08 21:51:16 -05:00
logan closed this issue 2026-11-08 21:51:16 -05:00
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: logan/server-26#301