Given a stream of partial audio transcription events, determine the earliest event index where a spoken order should be considered complete rather than a temporary pause. Each event is a pair (text, silence_ms), where text is the cumulative transcript seen so far and silence_ms is the silence duration after that event. Return the first index that should be classified as finished, or -1 if the stream never clearly finishes.
An order is considered finished when the current transcript ends with a terminal cue word or punctuation and the following silence is long enough. Short silences or transcripts that appear incomplete should be treated as mid-sentence pauses.
1 <= len(events) <= 10^50 <= silence_ms <= 10^40 <= len(text) <= 10^4sum(len(text) for text in events) <= 2 * 10^5