What's Changed
Changed
-
Server — Arrival-time-only duplicate detection
- Duplicate detection now uses server arrival time (
receivedAt) exclusively — PCM content hash and P25 radio timestamp checks removed - Two passes: in-memory cache catches simultaneous uploads before either is written to the database; DB check catches near-simultaneous uploads within 1 second
- Duplicate calls are dropped immediately — no database write, no downstream delivery, no transcription, no tone detection
- Duplicate detection now uses server arrival time (
-
Server — Downstream forwarding loop prevention
- Calls forwarded to a downstream TLR server are tagged with
tlrForwarded=1in the multipart form body - Receiving servers save and emit the call to local clients but never re-forward it, preventing circular loops between servers that downstream to each other
- Calls forwarded to a downstream TLR server are tagged with
-
Server — Background purge of legacy duplicate rows
- Any
isDuplicate = truerows left in the database are deleted in small batches at startup by a background goroutine
- Any