Repository navigation
Binding playout-delay tests stop racing the native wall clock - #8811
Merged
Merged
Conversation
Quest-Claim: d5c69c4d81979597
…l clock The Go, Swift, Kotlin, and Dart audio consumer delay tests pass no max delay, as the Python and Rust ones do, so a read that starts late under load no longer waits out its timeout. Kotlin's retry writer loop is gone. The rule that native timing is asserted once, in moq-ffi's Rust tests, joins its AGENTS.md. Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
kixelated
marked this pull request as ready for review
November 15, 2026 11:35
Contributor
|
Warning Review limit reachedYou've used all free OSS reviews for now. Wait for the free limit to reset to keep reviewing this public repository. Next included review available in 28 minutes. View limit details
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. |
kixelated
enabled auto-merge
November 15, 2026 11:35
Contributor
There was a problem hiding this comment.
✅ No new issues found.
Reviewed changes: the full diff of the Go, Swift, Kotlin and Dart playout-delay tests, plus the AGENTS.md and quest changes.
- Go, Swift, Dart tests: the fixed and estimated consumers now pass an unset max (
MaxUnlimited,max: nil,max: null), so a late first read no longer hangs on a zero-max wall-clock skip. - Kotlin test: the retry writer loop is replaced by two plain writes and a single
assertIs<AudioReadFrame>per reader. I checked that the removed imports (Dispatchers,launch,yield,isActive,cancelAndJoin) have no remaining uses and thatassertIsis imported. rs/moq-ffi/AGENTS.md: adds a# Testssection that says native timing and decoding are asserted once in Rust, and that decoded-media read tests pass no max delay.- Quest file: the finished quest is deleted.
I did not run the tests.
claude-sonnet-5-5 | 𝕏
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.

Summary
The Go, Swift, Kotlin, and Dart "audio consumer reports its playout delay" tests pass no max delay to either consumer (
MaxUnlimited,max: nil,max = null,max: null), matching the Python and Rust fixes (#8050, #8566). A max of zero skips a group by the native wall clock, so a read starting more than the warmup late never returned.rs/moq-ffi/AGENTS.mdgains a# Testssection with the rule: native timing and decoding are asserted once, in moq-ffi's Rust tests; wrapper tests cover only what the wrapper owns.Public API: none. Wire: none.
Decisions
Choices I made without asking, each reviewable:
Validation
TestAudioConsumerDelayfails withcontext deadline exceeded(10 s). With the fix and the same stall it passes (-count=3).just go check,just dart check, andjust kt checkpass; ktfmt, gofmt,dart format, andswift-format lintare clean;quest checkpasses.max: nilon both outputs, and CI's macOS job covers it.Follow-ups
None.
Models
Size: XS
Implementer: Claude, claude-sonnet-5-5, unknown effort (arm A)
Review
Rewritten by
quest reviewafter each round.Head: 5f4281a
Base: origin/main at 31a5d6b
Risk: medium,
the base has no RISK.md to name what is always high or customer-facing, so every change is mediumClassified: medium by default
Reviewer: Codex, gpt-6.1-sol, medium effort
Session:
01a1defc-f51d-7471-90a8-1f450f0e0c33, round 1Score: 9/10,
The fix consistently removes the wall-clock-dependent skip limit across all four bindings and bounds Kotlin's input, with no actionable regressions found, though tests were not run as instructed.Rounds: 1; first round 0; findings 0: fixed 0, refuted 0, open 0
Findings: none