ebce90b984
One bug with teeth. capture.windowBytes computed int64(window.Seconds()) * bytesPerSecond, truncating to whole seconds. A sub-second window came out as zero bytes, which transcribeFile reads as no window, so it hands the transcriber the entire recording in one call. Multiplied in float now. One drifted comment. Peek said expired entries below the top are left alone. The code deletes the whole stack, which is what Pop and TakeExpired both document. The corrected comment also names the ordering the silent drop depends on: TakeExpired must run before Peek on a turn, or the expiry notice is unreachable. Two default TTL literals became DefaultClarifyTTL and DefaultSessionTTL, beside the existing DefaultMaxAttempts. PendingQuestion was not gofmt clean. Push and Pop are unused outside tests and stay. Push documents itself as the widening V-561 fills in, and the stack tests cover it. Neither package holds a Russian stem pattern. The only Russian strings are two markers and two prompts, and none of them routes or becomes a fact. (V-581)