Skip to content

test(net): quarantine the lite-07 datagram queue test and plan its fix - #8379

Merged
kixelated merged 1 commit into
mainfrom
quest-plan/datagram-queues-flake
Nov 9, 2026
Merged

kixelated merged 1 commit into
mainfrom
quest-plan/datagram-queues-flake

Conversation

@kixelated

@kixelated kixelated commented Nov 9, 2026 •

Copy link
Copy Markdown
Collaborator

Quarantines js/net's "lite-07 bounds and prioritizes independent createWritable datagram queues" test and plans its fix as js/net's lite-07 datagram queue test holds up under load. This was the follow-up moq-dev/moq#8276 suggested. The test failed once in a full just check on that branch and passed 8 of 8 times alone. The suspected cause is that it asserts two send queues exist right after the second track's first datagram, before the first track's queue is sure to exist.

The repository's rule is to disable a flaky test immediately and plan a follow-up, so the test is test.skipped with a comment naming the quest, as the epic's other quarantines are.

Decisions

  • Milestone: the quest joins the existing m0 More tests hold up under load epic. The maintainer moved that epic to m0 on 2026-10-26 because every flake drops queued PRs, so this used that standing placement instead of a new prompt.

Impact

Test and quests only. Public API: none. Wire: none.

Checks

bun test src/lite/datagram-tracks.test.ts (36 pass, 4 skip), biome on the file, and quest check pass.

Models

Size: XS
Implementer: Claude Code, claude-opus-5-5, high effort

🤖 Generated with Claude Code

(Written by Claude Opus 5.5 with high effort)

Review

Rewritten by quest review after each round.

  • Reviewer: Codex, gpt-6.1-sol, low effort
  • Session: 01a1c193-e502-70c1-b7a3-1fb933ab7236, round 1
  • Head: c087bcf
  • Base: origin/main at 99b1a0c
  • Score: 10/10, The change quarantines a flaky test and records a linked investigation plan as repository policy requires, without changing runtime behavior or introducing actionable defects.
  • Findings: none

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@kixelated
kixelated marked this pull request as ready for review November 9, 2026 20:15
@kixelated
kixelated added this pull request to the merge queue Nov 9, 2026

@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

  • Test quarantined: js/net/src/lite/datagram-tracks.test.ts's lite-07 createWritable datagram queue test becomes test.skip with a // Quarantined: flaky under load, see /quest/m0/test-flakes-2/datagram-queues.md comment, matching the wording and comment style of the other quarantines in js/net.
  • Follow-up quest added: quest/m0/test-flakes-2/datagram-queues.md is a 25-line XS child whose Plan reproduces the failure under load first, then replaces the immediate two-queue assertion with a wait on the event that creates the first track's send queue, with a note to decide whether early delivery on the second track is itself a bug.
  • Epic index updated: the quest joins the existing m0 test-flakes epic with one ## Required bullet, appended in the same format as its siblings.

The plan's suspected cause holds up against the code: the test waits for the publisher's datagrams.priority to reach 19, but nothing orders the server-side createWritable send queue before it asserts pair.server.sendStreams.datagrams has two entries. The test body is unchanged on current main, so the quarantine is still warranted, and no duplicate child exists there.

Pullfrog  | View workflow run | Using deepseek-v4.1-flash-1017 (free via Pullfrog for OSS) | 𝕏

@kixelated kixelated left a comment

Copy link
Copy Markdown
Collaborator Author

Choose a reason for hiding this comment

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

Automated review by review (OpenAI)

Reviewed head: c087bcf

No actionable findings. The change disables only the identified test, links its follow-up from both the test and the epic, and leaves production behavior unchanged. The plan appropriately treats the queue-ordering explanation as unconfirmed and calls for reproduction before choosing a test or publisher fix.

Verification: GitHub-only static review of all three changed files, repository guidance, related quarantine history, and the publisher/datagram-writer/mock paths. I did not run tests, reproduce the flake, or run quest checks; the head's Check workflow was still in progress when inspected.

@coderabbitai

coderabbitai Bot commented Nov 9, 2026

Copy link
Copy Markdown
Contributor

Explain Change →

No actionable comments were generated in the recent review.

Walkthrough

The lite-07 datagram queue test is now skipped. The work list calls for waiting for the first track’s queue and removing the skip. A new plan records a suspected race after second.recv() and proposed steps to investigate queue creation and publisher ordering.

Merge Risk: Minimal · up to c087b

The flaky test is temporarily skipped, with a documented plan to restore it. No merge-blocking risk is identified.

Pre-merge checks: Passed 5

Check name Status Explanation
Title check Passed The title clearly summarizes the main change: quarantining the lite-07 datagram queue test and planning its fix.
Description check Passed The description explains the test quarantine, suspected race, investigation plan, and reported checks. It is directly related to the changeset.
Docstring Coverage Passed No eligible functions found in the changed files. Skipping docstring coverage check. Docstring coverage is scoped to functions touched by this diff with cyclomatic complexity of at least 2. Documentat…
Linked Issues check Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check Passed Check skipped because no linked issues were found for this pull request.
Full details: Docstring Coverage

Explanation

No eligible functions found in the changed files. Skipping docstring coverage check. Docstring coverage is scoped to functions touched by this diff with cyclomatic complexity of at least 2. Documentation-only edits and deletions within surviving functions are included; unchanged diff context and fully deleted functions are excluded. Analyzed 0 functions across 1 files. (2 skipped: 2 unsupported.)

Finishing Touches

Simplify code

  • Commit to this branch
  • Create a new PR
  • Autofix · Keep fixing CodeRabbit findings and required CI, and resolving merge conflicts

Warning

Some tools did not complete. Review the errors below.

Biome (2.5.15)

js/net/src/lite/datagram-tracks.test.ts

Biome could not lint this file: configuration resulted in errors. Check the repository's Biome configuration and plugins.

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

Recent review info

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: ca0fde8e-7397-4658-912c-44b1a953741c
Commits

Reviewing files that changed from the base of the PR and between ba9a184 and c087bcf.

Files selected for processing: 3

  • js/net/src/lite/datagram-tracks.test.ts
  • quest/m0/test-flakes-2/README.md
  • quest/m0/test-flakes-2/datagram-queues.md

Included review availability: This review used your included allowance. Your plan provides up to 4 included reviews per hour; 0 remain after this review.

Merged via the queue into main with commit c53356a Nov 9, 2026
9 checks passed
@kixelated
kixelated deleted the quest-plan/datagram-queues-flake branch November 9, 2026 20:56
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