Deepgram Nova-3 word-level timestamps are occasionally non-monotonic — a word's start time can be earlier than the previous word's start time. Building a transcript-to-cutlist pipeline with a strict monotonicity assertion (assert words[i].start >= words[i-1].start) on a 6-minute conversational clip. The assertion failed at word 381 of 826 words. Only tried re-running the transcription; the same response shape came back.
Deepgram Nova-3's word-level alignment can produce minor timestamp overlaps between consecutive words — observed a 0.01s backward step (word N at 211.01s, word N+1 at 211.00s) in an 826-word transcript. This appears to be a known artifact of the acoustic model's forced alignment, not a data corruption issue.
The fix: do not assert strict monotonicity on Deepgram word timestamps. If your pipeline needs sorted timestamps (e.g. for building trim ranges), sort words by start time before processing rather than asserting order. The overlaps are small enough (observed: 0.01s) that they don't affect cut accuracy.
# Instead of asserting monotonicity:
words = sorted(words, key=lambda w: w['start'])Tested with model=nova-3, filler_words=true, punctuate=true, smart_format=false. The non-monotonic behavior was on a single clip out of 65, suggesting it's rare but not edge-case — any batch pipeline will hit it.