Skip to content

chore(quest): retire merged binding linger work - #6229

Merged
kixelated merged 5 commits into
mainfrom
quest/m1/linger-ffi
Oct 22, 2026
Merged

kixelated merged 5 commits into
mainfrom
quest/m1/linger-ffi

Conversation

@kixelated

@kixelated kixelated commented Oct 22, 2026 •

Copy link
Copy Markdown
Collaborator

Problem

The ready quest tree still assigns binding linger work already merged in moq-dev/moq#6157, and leaves completed prerequisites on the interop finish and Go first-dial quests.

Approach

Verified main contains merge commit 150111bc3f. The merged code consumes the broadcast into a finish handle, retains finished raw/media tracks until broadcast end, exposes linger/wait/interrupt across the bindings, and includes wrapper smoke tests and documentation. The Python test-clock regression checks late tail delivery before 2 seconds and expiry at 2 seconds; FFI/C tests cover retention and interruption.

Delete the completed quest and its references. Merging main brought a requirement from moq-dev/moq#6092 that the C half land on the generated C package; #6157 already shipped it on hand-written moq-c, and the generated package inherits the moq-ffi finish handle, so the quest is dropped from that epic's list too. JS linger also landed, so interop-finish is now unblocked. Existing consumers are quest runners selecting ready work and the dependent interop/Go quest plans.

Impact

  • Public API and wire: none; only quest files change.
  • Preserve the maintainer-approved API, finish-time deadline, finished-track lifetime, immediate OBS stop and excluded JSON/flate behavior from the merged PR.

Checks

  • just ci: passed.
  • Codex review: completed with no findings on 54fcb06b4c90a24bc43d06efa104c54d4481166a.
  • quest check: 462 documents valid after merging main; no remaining path references.
  • just rs test -p moq-ffi -p moq-c -E 'test(finish) | test(cancelling_the_wait)': 19 passed.
  • Inspected all binding finish wrappers/smokes and the existing mocked-clock regression; no runtime code changed or new cross-language gate required for this quest-only diff.

Alternatives

Reimplementing the merged L-sized quest would duplicate working code. Keeping the stale quest would continue recommending completed work.

Follow-ups

No open decisions for this retirement. The interop finish quest is now ready. Optional separate /quest-plan: retain finished JSON/flate producers in moq-mux, as approved for later consideration in decision 5 of the merged PR. No separate quest currently records it, and this PR does not create or implement it.

(Written by GPT-6)

kixelated and others added 2 commits October 21, 2026 17:51
Co-Authored-By: GPT-6 <noreply@openai.com>
Co-Authored-By: GPT-6 <noreply@openai.com>
@kixelated

Copy link
Copy Markdown
Collaborator Author

Verified the actual merged binding implementation from moq-dev/moq#6157 at main commit 150111b. This change retires only its stale quest and four references. All 19 targeted FFI/C finish tests, quest check (441 documents), and just ci pass.

The merged maintainer decisions remain unchanged. No new scope or API decision was needed. JSON/flate retention remains an optional separate quest-planning follow-up; interop finish remains blocked on JS linger.

(Written by GPT-6)

@kixelated
kixelated marked this pull request as ready for review October 22, 2026 00:56
@coderabbitai

coderabbitai Bot commented Oct 22, 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 6 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: 408469de-f3bc-4dd2-97b1-10c138ced8c9
📥 Commits

Reviewing files that changed from the base of the PR and between b15af4a and ffe83fb.

📒 Files selected for processing: 5
  • quest/m1/README.md
  • quest/m1/c/README.md
  • quest/m1/interop-finish.md
  • quest/m1/linger-ffi.md
  • quest/m2/go-first-dial-failure.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

Comment @coderabbitai help to get the list of available commands.

@chatgpt-codex-connector

chatgpt-codex-connector Bot commented Oct 22, 2026 •

Copy link
Copy Markdown

Codex Review Summary

This comment shows the latest Codex review activity on this pull request.

Review Status Commit Review trigger
📝 Code Review ✅ Completed 2026-10-22T10:58:04.087406Z ffe83fb New commits
ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review" or "@codex security review".

Codex reacts with 👀 while any review is running, comments if it has suggestions, and reacts with 👍 once all reviews finish with no findings.

Drop the JS and binding linger requirements from interop-finish, since
both landed, and remove binding linger from the generated C epic's list:
#6157 shipped the C half, and the generated package inherits
the moq-ffi finish handle.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@kixelated

Copy link
Copy Markdown
Collaborator Author

Merged origin/main (6d6974f) to clear the conflicts. Resolution, quest files only:

  • quest/m0/audit-quests.md was moved by main; the stale C-ABI note no longer exists there.
  • Main's audit (moq-dev/moq#6092) made binding linger Require the generated C package. moq-dev/moq#6157 already landed the finish handle in moq-ffi (which the generated C package inherits) and in hand-written moq-c, so the quest stays retired and is dropped from the C epic's decision list.
  • JS linger also landed, so interop-finish loses its Required section and is ready.

quest check: 462 documents ok. The earlier Codex review (no findings on 54fcb06) covers the substance; the merge only aligns quests. Enabling auto-merge.

(Written by Claude Opus 5.5)

@kixelated
kixelated added this pull request to the merge queue Oct 22, 2026
@github-merge-queue
github-merge-queue Bot removed this pull request from the merge queue due to a conflict with the base branch Oct 22, 2026
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@kixelated
kixelated added this pull request to the merge queue Oct 22, 2026
@github-merge-queue
github-merge-queue Bot removed this pull request from the merge queue due to a conflict with the base branch Oct 22, 2026
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@kixelated

Copy link
Copy Markdown
Collaborator Author

Merged origin/main to clear the merge-queue conflict. Mechanical resolution in quest/m1/README.md: main dropped the completed Silent-peer close and Gateway linger entries while this PR drops Binding linger, so all three are removed. quest check and quest check --base origin/main pass.

(Written by Claude Opus 5.5)

@kixelated
kixelated enabled auto-merge October 22, 2026 10:55
@kixelated
kixelated added this pull request to the merge queue Oct 22, 2026

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: ffe83fb467

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

@@ -19,7 +19,3 @@ while their examples only use `Moq.connect`, which never hands back a
binding PRs that also touch those pages have landed.

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

P2 Badge Keep auth as a prerequisite for the Go quest

Removing the final ## Required section makes this quest ready immediately, even though its plan still says these documentation edits must wait for both the linger and auth binding PRs. quest/m1/auth/bindings-polish.md only lists this quest as Related, so it creates no dependency, and that m1 auth work remains open; a quest runner can now start this work concurrently and conflict on the same Kotlin and Dart pages. Replace the retired linger edge with an explicit dependency on Binding auth polish.

Useful? React with 👍 / 👎.

Merged via the queue into main with commit 22cae44 Oct 22, 2026
10 checks passed
@kixelated
kixelated deleted the quest/m1/linger-ffi branch October 22, 2026 12:08
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