Skip to content

test(interop): record ten complete go to python matrix runs - #8633

Merged
kixelated merged 3 commits into
mainfrom
quest/m0/test-flakes-2/interop-go-python
Nov 13, 2026
Merged

kixelated merged 3 commits into
mainfrom
quest/m0/test-flakes-2/interop-go-python

Conversation

@kixelated

@kixelated kixelated commented Nov 13, 2026 •

Copy link
Copy Markdown
Collaborator

Problem

The scheduled run 43260674067 failed go -> python with audio gap after 648 samples. Focused runs had not reproduced it.

Approach

Complete the maintainer-authorized repeated-run investigation in the normal dev shell. Retire the separate quest and leave the results in both parent epics. No runtime fix is claimed: Go-to-Python held across ten completed full matrices, which does not rule out a rarer failure.

Read moq-dev/moq#8531 first: its short hole wait reaches the Python decoder. The failing artifact contains six contiguous PCM frames totaling 648 samples, one 20 ms batch minus Opus pre-skip. The original logs do not establish which skip condition fired. moq-dev/moq#8611 has since reproduced a CPU-starvation skip in the same consumer and owns its Rust/JS fix and client diagnostics. This PR changes no clients or playback policy.

Validation

Command: HARNESS_KEEP=1 HARNESS_RUNS="$PWD/.tmp/full-runs" RUST_LOG=warn,moq_mux=debug quest gate nix develop --command just test interop --all (the loop ran this recipe in one gated dev-shell invocation).

All JS clients built and participated. Ten matrices completed: Go-to-Python passed in every one, including its finished-media check. Nine matrices passed entirely. The ten retained run directories, under .tmp/full-runs/, are:

Attempt Run directory Full result Go-to-Python
1 interop-9yU8pg2y pass pass
2 interop-2zEbSMTx pass pass
3 interop-69icPRjf pass pass
4 interop-aIsnYcMc fail pass
8 interop-8y6NSyFX pass pass
10 interop-0JwyMBJh pass pass
12 interop-xv9Qi7dP pass pass
13 interop-cckzAqyg pass pass
14 interop-Xf38kdl3 pass pass
15 interop-VsgcAjFv pass pass

Attempt 4 failed browser-publisher cells after its session timed out, plus Rust and C swapped-tone cells. Those logs remain retained; it is not counted as a green matrix. Attempts 5, 6, 7, and 11 never reached the matrix: mbx reported waiting for machine-wide scheduler capacity inside nextest's 60 s timeout. Attempt 9 was interrupted after Go-to-Python passed and is excluded from the ten completed matrices.

  • Browser and native-JS bun run check pass inside nix develop.
  • python3 sh/gh/rustc-cost.test.py: all four tests pass on the PR and in a separate unchanged origin/main checkout at 6aa4f9c1cad482aa86adcf3cf26bd7779697a01a, inside the dev shell. Both test files are identical to the base. Open PRs were searched by text and changed files; no rustc-cost fix was found. The earlier plain-shell failures came from the session's BASH_ENV snapshot replacing subprocess PATH entries, including the test's fake perf; no tests were changed or skipped.
  • quest check --base origin/main: 504 documents pass.
  • quest gate nix develop --command just ci: passed (124 s), including all rustc-cost tests.

Impact

  • Public API, wire, and runtime behavior: none.
  • Removes the investigated Go-to-Python quest; existing epics retain its measured outcome and link to the related root-cause work.

Alternatives

Changing a delay or retrying a failing cell into a pass would hide the failure. No delay, timeout, assertion, or retry policy changed. All attempts, including failed and incomplete ones, are reported above.

Decisions

  • Maintainer, 2026-11-13: continue unattended with the recommendations; complete full matrices until Go-to-Python fails or enough completed runs establish its observed behavior. Check unchanged origin/main and open PRs before touching rustc-cost tests. If OpenCode credit is the only remaining blocker, record it and stop.
  • Implementer under that authorization: finish the repeated-run branch after ten completed matrices with zero Go-to-Python failures. Retire its separate quest without claiming a root-cause fix. Keep the CPU-starvation consumer fix in quest: python -> cpp audio gap, repro attempt #8611 to avoid duplicating that implementation.

Caused by

Undetermined for the original Go-to-Python failure. #8531 is a lead; #8611 confirms its media-age skip problem for another cell.

Follow-ups

No new quest. moq-dev/moq#8611 owns the common consumer skip; the existing Interop epic retains the matrix-wide outcome.

Review

Skipped on head 9d131e8: the maintainer chose Pullfrog's online review over the local OpenCode pass, which is out of credit.

Models

Size: S
Implementer: Codex, gpt-6.1-sol, medium effort (iterate, S)

(Written by GPT-6.1 Sol with medium)

@kixelated kixelated changed the title Interop's go -> python media cell holds up quest: investigate go to python interop audio gap Nov 13, 2026
@kixelated kixelated changed the title quest: investigate go to python interop audio gap test(interop): record ten complete go to python matrix runs Nov 13, 2026
@kixelated
kixelated marked this pull request as ready for review November 13, 2026 17:57
@coderabbitai

coderabbitai Bot commented Nov 13, 2026

Copy link
Copy Markdown
Contributor

Warning

Review limit reached

You'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 8 minutes.

Check out review usage here.

View limit details

Limit details: You’ve used all 4 included reviews currently available.

Learn how review limits work.

Review configuration:

Run configuration

  • Source mode: Auto
  • Repository: Unavailable
  • Branch: Unavailable
  • File: No configuration file from this repository applied
  • Commit: Unavailable
  • Layers: Organization UI
  • Review profile: CHILL
  • Plan: Advanced
  • Run ID: c86274f2-49b5-438b-b434-0ddf925d72aa
Commits

Reviewing files that changed from the base of the PR and between 6aa4f9c and 9d131e8.

Files selected for processing: 3

  • quest/m0/interop-green/README.md
  • quest/m0/test-flakes-2/README.md
  • quest/m0/test-flakes-2/interop-go-python.md
  • Autofix · Keep fixing CodeRabbit findings and required CI, and resolving merge conflicts

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.

Share

@pullfrog pullfrog Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

✅ No new issues found.

Reviewed changes — the full diff, three quest documents, no code.

  • Interop epic: rewrites the go -> python entry to record ten completed matrices with no reproduction, and links #8611.
  • Test flakes epic: replaces the "added" note with the investigation outcome and says no fix is claimed.
  • Quest removal: deletes quest/m0/test-flakes-2/interop-go-python.md. Nothing in the checkout still links to it.

Pullfrog  | View workflow run | Using claude-sonnet-5-5 | 𝕏

@kixelated
kixelated added this pull request to the merge queue Nov 13, 2026
Merged via the queue into main with commit b852a32 Nov 13, 2026
8 checks passed
@kixelated
kixelated deleted the quest/m0/test-flakes-2/interop-go-python branch November 13, 2026 18:57
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant