Skip to content

Auth serve logs the address it bound - #7351

Merged
moq-bot[bot] merged 7 commits into
mainfrom
quest/m2/auth-serve-bound-addr
Nov 1, 2026
Merged

moq-bot[bot] merged 7 commits into
mainfrom
quest/m2/auth-serve-bound-addr

Conversation

@kixelated

@kixelated kixelated commented Oct 30, 2026 •

Copy link
Copy Markdown
Collaborator

Claims quest/m2/auth-serve-bound-addr.md.

Summary

moq auth serve --listen 127.0.0.1:0 logged addr=127.0.0.1:0. Serve::run (rs/moq-cli/src/auth.rs) now logs listener.local_addr() after binding, so the log line carries the port the OS assigned.

  • rs/moq-cli/tests/integration/auth_serve.rs: the existing signal test already waits for the auth server listening line; it now parses the logged port and asserts it is nonzero. Verified it fails without the fix (logged the requested port instead of the bound one: ... addr=127.0.0.1:0) and passes with it.
  • Deletes the finished quest and its link in quest/m2/README.md.
  • Merging main (mesh enrollment, moq-dev/moq#7301) restructured Serve::run and added a mesh coordinator listener on --mesh-listen. The conflict was resolved by keeping main's structure and reapplying the fix; the mesh coordinator's log line now also reports listener.local_addr(), since it had the same requested-vs-bound gap.

Choices made without asking:

  • Only the TCP path changed; the unix-socket log already names the path it bound.
  • Reused the existing integration test, rather than adding a new one, since it already spawns auth serve --listen 127.0.0.1:0 and reads the log line.

Checks

  • just check origin/main (in nix develop, on head 8d4ccc0): passed.
  • cargo test -p moq-cli --test integration auth_serve: passed (2 tests).
  • quest check --base origin/main: passed.

Review

  • Reviewer: Codex, gpt-6.1-sol, medium effort (quest review --base origin/main, session 01a19662, round 2)
  • Head: 8d4ccc0
  • Round 1 (head 9f055a9, the hand-resolved merge): 2 findings in rs/moq-net/src/model/resume.rs and rs/moq-net/src/ietf/subscriber.rs, refuted: origin/main advanced to 08e71cd during the round, so the diff showed main's newer moq-net fixes reversed; they are not part of this PR. The next head merged that main conflict-free.
  • Round 2: no findings.
  • Head de80208 merges origin/main (0e9e828) conflict-free (the quest/m2/README.md link list resolved by the quest merge driver), so it carries no new review. just check origin/main and quest check --base origin/main passed on it.

Follow-ups

None.

🤖 Generated with Claude Code

(Written by Claude Opus 5.5)

kixelated and others added 2 commits October 30, 2026 04:58
`moq auth serve --listen 127.0.0.1:0` logged port 0; log
`listener.local_addr()` so scripts and tests can find the server.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@kixelated
kixelated marked this pull request as ready for review October 30, 2026 12:08
@coderabbitai

coderabbitai Bot commented Oct 30, 2026 •

Copy link
Copy Markdown
Contributor

Review in Change Stack →

No actionable comments were generated in the recent review.

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: 3cb32834-1bc3-4d64-8628-ec7acaf98e51
Commits

Reviewing files that changed from the base of the PR and between 08e71cd and 8d4ccc0.

Files selected for processing: 4
  • quest/m2/README.md
  • quest/m2/auth-serve-bound-addr.md
  • rs/moq-cli/src/auth.rs
  • rs/moq-cli/tests/integration/auth_serve.rs
Files with no reviewable changes: 2
  • quest/m2/README.md
  • quest/m2/auth-serve-bound-addr.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.

Walkthrough

Serve::run now reads the actual local addresses of its bound listeners and reports an error if it cannot read an address. The integration test parses the port from the listening log and checks that it is not zero. The related quest list entry and quest document were removed.

Merge Risk: Minimal · up to 8d4cc

The change correctly reports OS-assigned TCP ports and retains existing serving paths. No merge-blocking risk remains.

Pre-merge checks: Passed 4 · Failed 1

Failed Failed checks: 1 warning

Check name Status Explanation Resolution
Docstring Coverage Warning Docstring coverage is 0.00% which is insufficient. The required threshold is 80.00%. Docstring coverage is scoped to functions touched by this diff with cyclomatic complexity of at least 2. Documentat… Write docstrings for the functions missing them to satisfy the coverage threshold.
Passed Passed checks: 4 passed
Check name Status Explanation
Title check Passed The title clearly and concisely describes the main change: auth serve now logs the address it actually bound.
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.
Description check Passed The description directly explains the bound-address logging fix, the updated integration test, and the related quest cleanup. It matches the changeset.
Full details: Docstring Coverage

Explanation

Docstring coverage is 0.00% which is insufficient. The required threshold is 80.00%. 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 2 functions across 2 files.

Resolution

Write docstrings for the functions missing them to satisfy the coverage threshold.

Finishing Touches
Simplify code
  • Commit to this branch
  • Create a new PR
  • 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

@chatgpt-codex-connector

chatgpt-codex-connector Bot commented Oct 30, 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-30T12:09:51.786457Z 2809f04 Draft marked ready
ℹ️ 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.

@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 commit 2809f04.

No actionable findings. Reading local_addr() after the successful TCP bind reports the OS-assigned port while preserving the existing bind-error context and Unix-socket path. Extending the existing port-zero signal test is a focused regression check: the new assertion rejects the former logged port 0 without weakening the shutdown assertions. No broader listener refactor is needed.

Static GitHub review only; I did not execute the integration tests or verify the reported negative-mutation and gate results.

(Written by OpenAI)

@kixelated

Copy link
Copy Markdown
Collaborator Author

Landing summary: Serve::run now logs listener.local_addr() after binding, so auth serve --listen 127.0.0.1:0 reports the OS-assigned port; the existing integration test asserts a nonzero logged port. Finished quest quest/m2/auth-serve-bound-addr.md is deleted.

Reviews on head 2809f04: local Codex round 1 (no findings), online OpenAI review (no findings), Codex connector 👍; CodeRabbit was rate-limited. CI green (15/15), quest check --base origin/main passed. No decisions outstanding; queuing for quest land.

(Written by Claude Opus 5.5)

@kixelated
kixelated enabled auto-merge (squash) October 31, 2026 05:00
@moq-bot
moq-bot Bot disabled auto-merge October 31, 2026 10:03
@moq-bot moq-bot Bot removed the quest:merge label Oct 31, 2026
@moq-bot

moq-bot Bot commented Oct 31, 2026

Copy link
Copy Markdown
Contributor

quest land removed this pull request from the queue: GitHub refused /repos/moq-dev/moq/pulls/7351: Pull Request has merge conflicts; the rest of the batch was not merged.

@moq-bot

moq-bot Bot commented Oct 31, 2026

Copy link
Copy Markdown
Contributor

Codex land fixer: PR cl·osed or head moved while fixing; inspect and pick it again. Recommendation: run /quest-iterate before picking it again.

…1.0 not found in Cargo.lock
�[2m2026-10-31T09:25:58.871158Z�[0m �[34mDEBUG�[0m �[1mdevelop_cmd�[0m:�[1mbuild_wheels�[0m:�[1mbuild_wheels_inner�[0m:�[1mgenerate�[0m: �[2mcargo_cyclonedx::generator�[0m�[2m:�[0m Hash for package ID path+file:///work/rs/moq-clock#0.11.0 not found in Cargo.lock
�[2m2026-10-31T09:25:58.871167Z�[0m �[34mDEBUG�[0m �[1mdevelop_cmd�[0m:�[1mbuild_wheels�[0m:�[1mbuild_wheels_inner�[0m:�[1mgenerate�[0m: �[2mcargo_cyclonedx::generator�[0m�[2m:�[0m Hash for package ID path+file:///work/rs/moq-clock/macros#moq-clock-macros@0.1.0 not found in Cargo.lock
�[2m2026-10-31T09:25:58.871179Z�[0m �[34mDEBUG�[0m �[1mdevelop_cmd�[0m:�[1mbuild_wheels�[0m:�[1mbuild_wheels_inner�[0m:�[1mgenerate�[0m: �[2mcargo_cyclonedx::generator�[0m�[2m:�[0m Hash for package ID path+file:///work/rs/moq-json#0.5.8 not found in Cargo.lock
�[2m2026-10-31T09:25:58.871189Z�[0m �[34mDEBUG�[0m �[1mdevelop_cmd�[0m:�[1mbuild_wheels�[0m:�[1mbuild_wheels_inner�[0m:�[1mgenerate�[0m: �[2mcargo_cyclonedx::generator�[0m�[2m:�[0m Hash for package ID path+file:///work/rs/moq-loc#0.2.19 not found in Cargo.lock
�[2m2026-10-31T09:25:58.871205Z�[0m �[34mDEBUG�[0m �[1mdevelop_cmd�[0m:�[1mbuild_wheels�[0m:�[1mbuild_wheels_inner�[0m:�[1mgenerate�[0m: �[2mcargo_cyclonedx::generator�[0m�[2m:�[0m Hash for package ID path+file:///work/rs/moq-msf#0.5.1 not found in Cargo.lock
�[2m2026-10-31T09:25:58.871215Z�[0m �[34mDEBUG�[0m �[1mdevelop_cmd�[0m:�[1mbuild_wheels�[0m:�[1mbuild_wheels_inner�[0m:�[1mgenerate�[0m: �[2mcargo_cyclonedx::generator�[0m�[2m:�[0m Hash for package ID path+file:///work/rs/moq-mux#0.10.11 not found in Cargo.lock
�[2m2026-10-31T09:25:58.871237Z�[0m �[34mDEBUG�[0m �[1mdevelop_cmd�[0m:�[1mbuild_wheels�[0m:�[1mbuild_wheels_inner�[0m:�[1mgenerate�[0m: �[2mcargo_cyclonedx::generator�[0m�[2m:�[0m Hash for package ID path+file:///work/rs/moq-net#0.3.10 not found in Cargo.lock
�[2m2026-10-31T09:25:58.871249Z�[0m �[34mDEBUG�[0m �[1mdevelop_cmd�[0m:�[1mbuild_wheels�[0m:�[1mbuild_wheels_inner�[0m:�[1mgenerate�[0m: �[2mcargo_cyclonedx::generator�[0m�[2m:�[0m Hash for package ID path+file:///work/rs/moq-nvenc#0.1.2 not found in Cargo.lock
�[2m2026-10-31T09:25:58.871259Z�[0m �[34mDEBUG�[0m �[1mdevelop_cmd�[0m:�[1mbuild_wheels�[0m:�[1mbuild_wheels_inner�[0m:�[1mgenerate�[0m: �[2mcargo_cyclonedx::generator�[0m�[2m:�[0m Hash for package ID path+file:///work/rs/moq-pattern#0.1.2 not found in Cargo.lock
�[2m2026-10-31T09:25:58.874202Z�[0m �[34mDEBUG�[0m �[1mdevelop_cmd�[0m:�[1mbuild_wheels�[0m:�[1mbuild_wheels_inner�[0m:�[1mgenerate�[0m: �[2mcargo_cyclonedx::generator�[0m�[2m:�[0m Hash for package ID path+file:///work/rs/moq-video#0.1.10 not found in Cargo.lock
�[2m2026-10-31T09:25:58.898431Z�[0m �[34mDEBUG�[0m �[1mdevelop_cmd�[0m:�[1mbuild_wheels�[0m:�[1mbuild_wheels_inner�[0m:�[1mgenerate�[0m: �[2mcargo_cyclonedx::generator�[0m�[2m:�[0m Hash for package ID path+file:///work/rs/moq-nvenc#0.1.2 not found in Cargo.lock
�[2m2026-10-31T09:25:58.918983Z�[0m �[34mDEBUG�[0m �[1mdevelop_cmd�[0m:�[1mbuild_wheels�[0m:�[1mbuild_wheels_inner�[0m:�[1mgenerate�[0m: �[2mcargo_cyclonedx::generator�[0m�[2m:�[0m Hash for package ID path+file:///work/rs/moq-v4l#0.1.0 not found in Cargo.lock
�[2m2026-10-31T09:25:58.937748Z�[0m �[34mDEBUG�[0m �[1mdevelop_cmd�[0m:�[1mbuild_wheels�[0m:�[1mbuild_wheels_inner�[0m:�[1mgenerate�[0m: �[2mcargo_cyclonedx::generator�[0m�[2m:�[0m Hash for package ID path+file:///work/rs/libmoq#0.6.12 not found in Cargo.lock
�[2m2026-10-31T09:25:58.963653Z�[0m �[34mDEBUG�[0m �[1mdevelop_cmd�[0m:�[1mbuild_wheels�[0m:�[1mbuild_wheels_inner�[0m:�[1mgenerate�[0m: �[2mcargo_cyclonedx::generator�[0m�[2m:�[0m Hash for package ID path+file:///work/rs/kio#0.6.2 not found in Cargo.lock
�[2m2026-10-31T09:25:58.963692Z�[0m �[34mDEBUG�[0m �[1mdevelop_cmd�[0m:�[1mbuild_wheels�[0m:�[1mbuild_wheels_inner�[0m:�[1mgenerate�[0m: �[2mcargo_cyclonedx::generator�[0m�[2m:�[0m Hash for package ID path+file:///work/rs/kio/macros#kio-macros@0.1.0 not found in Cargo.lock
�[2m2026-10-31T09:25:58.963709Z�[0m �[34mDEBUG�[0m �[1mdevelop_cmd�[0m:�[1mbuild_wheels�[0m:�[1mbuild_wheels_inner�[0m:�[1mgenerate�[0m: �[2mcargo_cyclonedx::generator�[0m�[2m:�[0m Hash for package ID path+file:///work/rs/moq-clock#0.11.0 not found in Cargo.lock
�[2m2026-10-31T09:25:58.963719Z�[0m �[34mDEBUG�[0m �[1mdevelop_cmd�[0m:�[1mbuild_wheels�[0m:�[1mbuild_wheels_inner�[0m:�[1mgenerate�[0m: �[2mcargo_cyclonedx::generator�[0m�[2m:�[0m Hash for package ID path+file:///work/rs/moq-clock/macros#moq-clock-macros@0.1.0 not found in Cargo.lock
�[2m2026-10-31T09:25:58.963727Z�[0m �[34mDEBUG�[0m �[1mdevelop_cmd�[0m:�[1mbuild_wheels�[0m:�[1mbuild_wheels_inner�[0m:�[1mgenerate�[0m: �[2mcargo_cyclonedx::generator�[0m�[2m:�[0m Hash for package ID path+file:///work/rs/moq-net#0.3.10 not found in Cargo.lock
�[2m2026-10-31T09:25:58.963741Z�[0m �[34mDEBUG�[0m �[1mdevelop_cmd�[0m:�[1mbuild_wheels�[0m:�[1mbuild_wheels_inner�[0m:�[1mgenerate�[0m: �[2mcargo_cyclonedx::generator�[0m�[2m:�[0m Hash for package ID path+file:///work/rs/moq-pattern#0.1.2 not found in Cargo.lock
�[2m2026-10-31T09:25:58.966196Z�[0m �[34mDEBUG�[0m �[1mdevelop_cmd�[0m:�[1mbuild_wheels�[0m:�[1mbuild_wheels_inner�[0m:�[1mgenerate�[0m: �[2mcargo_cyclonedx::generator�[0m�[2m:�[0m Hash for package ID path+file:///work/rs/moq-archive#0.0.11 not found in Cargo.lock
�[2m2026-10-31T09:25:58.992910Z�[0m �[34mDEBUG�[0m �[1mdevelop_cmd�[0m:�[1mbuild_wheels�[0m:�[1mbuild_wheels_inner�[0m:�[1mgenerate�[0m: �[2mcargo_cyclonedx::generator�[0m�[2m:�[0m Hash for package ID path+file:///work/rs/hang#0.21.11 not found in Cargo.lock
�[2m2026-10-31T09:25:58.992948Z�[0m �[34mDEBUG�[0m �[1mdevelop_cmd�[0m:�[1mbuild_wheels�[0m:�[1mbuild_wheels_inner�[0m:�[1mgenerate�[0m: �[2mcargo_cyclonedx::generator�[0m�[2m:�[0m Hash for package ID path+file:///work/rs/kio#0.6.2 not found in Cargo.lock
�[2m2026-10-31T09:25:58.992959Z�[0m �[34mDEBUG�[0m �[1mdevelop_cmd�[0m:�[1mbuild_wheels�[0m:�[1mbuild_wheels_inner�[0m:�[1mgenerate�[0m: �[2mcargo_cyclonedx::generator�[0m�[2m:�[0m Hash for package ID path+file:///work/rs/kio/macros#kio-macros@0.1.0 not found in Cargo.lock
�[2m2026-10-31T09:25:58.992968Z�[0m �[34mDEBUG�[0m �[1mdevelop_cmd�[0m:�[1mbuild_wheels�[0m:�[1mbuild_wheels_inner�[0m:�[1mgenerate�[0m: �[2mcargo_cyclonedx::generator�[0m�[2m:�[0m Hash for package ID path+file:///work/rs/moq-clock#0.11.0 not found in Cargo.lock
�[2m2026-10-31T09:25:58.992976Z�[0m �[34mDEBUG�[0m �[1mdevelop_cmd�[0m:�[1mbuild_wheels�[0m:�[1mbuild_wheels_inner�[0m:�[1mgenerate�[0m: �[2mcargo_cyclonedx::generator�[0m�[2m:�[0m Hash for package ID path+file:///work/rs/moq-clock/macros#moq-clock-macros@0.1.0 not found in Cargo.lock
�[2m2026-10-31T09:25:58.992985Z�[0m �[34mDEBUG�[0m �[1mdevelop_cmd�[0m:�[1mbuild_wheels�[0m:�[1mbuild_wheels_inner�[0m:�[1mgenerate�[0m: �[2mcargo_cyclonedx::generator�[0m�[2m:�[0m Hash for package ID path+file:///work/rs/moq-json#0.5.8 not found in Cargo.lock
�[2m2026-10-31T09:25:58.992994Z�[0m �[34mDEBUG�[0m �[1mdevelop_cmd�[0m:�[1mbuild_wheels�[0m:�[1mbuild_wheels_inner�[0m:�[1mgenerate�[0m: �[2mcargo_cyclonedx::generator�[0m�[2m:�[0m Hash for package ID path+file:///work/rs/moq-loc#0.2.19 not found in Cargo.lock
�[2m2026-10-31T09:25:58.993002Z�[0m �[34mDEBUG�[0m �[1mdevelop_cmd�[0m:�[1mbuild_wheels�[0m:�[1mbuild_wheels_inner�[0m:�[1mgenerate�[0m: �[2mcargo_cyclonedx::generator�[0m�[2m:�[0m Hash for package ID path+file:///work/rs/moq-msf#0.5.1 not found in Cargo.lock
�[2m2026-10-31T09:25:58.993010Z�[0m �[34mDEBUG�[0m �[1mdevelop_cmd�[0m:�[1mbuild_wheels�[0m:�[1mbuild_wheels_inner�[0m:�[1mgenerate�[0m: �[2mcargo_cyclonedx::generator�[0m�[2m:�[0m Hash for package ID path+file:///work/rs/moq-mux#0.10.11 not found in Cargo.lock
�[2m2026-10-31T09:25:58.993033Z�[0m �[34mDEBUG�[0m �[1mdevelop_cmd�[0m:�[1mbuild_wheels�[0m:�[1mbuild_wheels_inner�[0m:�[1mgenerate�[0m: �[2mcargo_cyclonedx::generator�[0m�[2m:�[0m Hash for package ID path+file:///work/rs/moq-net#0.3.10 not found in Cargo.lock
�[2m2026-10-31T09:25:58.993049Z�[0m �[34mDEBUG�[0m �[1mdevelop_cmd�[0m:�[1mbuild_wheels�[0m:�[1mbuild_wheels_inner�[0m:�[1mgenerate�[0m: �[2mcargo_cyclonedx::generator�[0m�[2m:�[0m Hash for package ID path+file:///work/rs/moq-pattern#0.1.2 not found in Cargo.lock
�[2m2026-10-31T09:25:58.995094Z�[0m �[34mDEBUG�[0m �[1mdevelop_cmd�[0m:�[1mbuild_wheels�[0m:�[1mbuild_wheels_inner�[0m:�[1mgenerate�[0m: �[2mcargo_cyclonedx::generator�[0m�[2m:�[0m Hash for package ID path+file:///work/rs/moq-audio#0.1.10 not found in Cargo.lock
�[2m2026-10-31T09:25:59.024378Z�[0m �[34mDEBUG�[0m �[1mdevelop_cmd�[0m:�[1mbuild_wheels�[0m:�[1mbuild_wheels_inner�[0m:�[1mgenerate�[0m: �[2mcargo_cyclonedx::generator�[0m�[2m:�[0m Hash for package ID path+file:///work/rs/kio#0.6.2 not found in Cargo.lock
�[2m2026-10-31T09:25:59.024409Z�[0m �[34mDEBUG�[0m �[1mdevelop_cmd�[0m:�[1mbuild_wheels�[0m:�[1mbuild_wheels_inner�[0m:�[1mgenerate�[0m: �[2mcargo_cyclonedx::generator�[0m�[2m:�[0m Hash for package ID path+file:///work/rs/kio/macros#kio-macros@0.1.0 not found in Cargo.lock
�[2m2026-10-31T09:25:59.024419Z�[0m �[34mDEBUG�[0m �[1mdevelop_cmd�[0m:�[1mbuild_wheels�[0m:�[1mbuild_wheels_inner�[0m:�[1mgenerate�[0m: �[2mcargo_cyclonedx::generator�[0m�[2m:�[0m Hash for package ID path+file:///work/rs/moq-clock#0.11.0 not found in Cargo.lock
�[2m2026-10-31T09:25:59.024429Z�[0m �[34mDEBUG�[0m �[1mdevelop_cmd�[0m:�[1mbuild_wheels�[0m:�[1mbuild_wheels_inner�[0m:�[1mgenerate�[0m: �[2mcargo_cyclonedx::generator�[0m�[2m:�[0m Hash for package ID path+file:///work/rs/moq-clock/macros#moq-clock-macros@0.1.0 not found in Cargo.lock
�[2m2026-10-31T09:25:59.024438Z�[0m �[34mDEBUG�[0m �[1mdevelop_cmd�[0m:�[1mbuild_wheels�[0m:�[1mbuild_wheels_inner�[0m:�[1mgenerate�[0m: �[2mcargo_cyclonedx::generator�[0m�[2m:�[0m Hash for package ID path+file:///work/rs/moq-pattern#0.1.2 not found in Cargo.lock
�[2m2026-10-31T09:25:59.027347Z�[0m �[34mDEBUG�[0m �[1mdevelop_cmd�[0m:�[1mbuild_wheels�[0m:�[1mbuild_wheels_inner�[0m:�[1mgenerate�[0m: �[2mcargo_cyclonedx::generator�[0m�[2m:�[0m Hash for package ID path+file:///work/rs/moq-auth#0.2.1 not found in Cargo.lock
�[2m2026-10-31T09:25:59.057973Z�[0m �[34mDEBUG�[0m �[1mdevelop_cmd�[0m:�[1mbuild_wheels�[0m:�[1mbuild_wheels_inner�[0m:�[1mgenerate�[0m: �[2mcargo_cyclonedx::generator�[0m�[2m:�[0m Hash for package ID path+file:///work/rs/kio#0.6.2 not found in Cargo.lock
�[2m2026-10-31T09:25:59.058004Z�[0m �[34mDEBUG�[0m �[1mdevelop_cmd�[0m:�[1mbuild_wheels�[0m:�[1mbuild_wheels_inner�[0m:�[1mgenerate�[0m: �[2mcargo_cyclonedx::generator�[0m�[2m:�[0
thread 'codex-main' (75) panicked at /rustc/48a229ceaefd4985c50990b14116b6d856af0985/library/std/src/io/stdio.rs:1166:9:
failed printing to stderr: Resource temporarily unavailable (os error 11)
stack backtrace:
   0: __rustc::rust_begin_unwind
   1: core::panicking::panic_fmt
   2: std::io::stdio::_eprint
   3: <codex_exec::event_processor_with_human_output::EventProcessorWithHumanOutput as codex_exec::event_processor::EventProcessor>::process_server_notification
   4: codex_exec::run_exec_session::{closure#0}
   5: <tracing::instrument::Instrumented<codex_exec::run_exec_session::{closure#0}> as core::future::future::Future>::poll
   6: codex_exec::run_main::{closure#0}
   7: codex::cli_main::{closure#0}
   8: <tokio::runtime::park::CachedParkThread>::block_on::<codex_arg0::run_main_with_arg0_guard<codex::main::{closure#0}, codex::main::{closure#0}::{closure#0}>::{closure#0}>
   9: tokio::runtime::context::runtime::enter_runtime::<<tokio::runtime::scheduler::multi_thread::MultiThread>::block_on<codex_arg0::run_main_with_arg0_guard<codex::main::{closure#0}, codex::main::{closure#0}::{closure#0}>::{closure#0}>::{closure#0}, core::result::Result<(), anyhow::Error>>
  10: <tokio::runtime::runtime::Runtime>::block_on::<codex_arg0::run_main_with_arg0_guard<codex::main::{closure#0}, codex::main::{closure#0}::{closure#0}>::{closure#0}>
note: Some details are omitted, run with `RUST_BACKTRACE=full` for a verbose backtrace.
quest: fixer agent exited 101

(written by Codex)

@kixelated

Copy link
Copy Markdown
Collaborator Author

Requeueing after landing-stopped merge_conflict. Head fcaf364 is the quest land merge of main into the reviewed head 2809f04. A fresh merge-tree of those two parents gives the same tree (86121bbb), so it's a conflict-free base merge and the round-1 review still covers it. It also merges cleanly with the current main. Required checks pass and quest check --base origin/main passes. No code changes in this pass.

(Written by Claude Opus 5.5)

@kixelated
kixelated enabled auto-merge (squash) October 31, 2026 15:01
@moq-bot
moq-bot Bot disabled auto-merge October 31, 2026 21:52
@moq-bot moq-bot Bot removed the quest:merge label Oct 31, 2026
@moq-bot

moq-bot Bot commented Oct 31, 2026

Copy link
Copy Markdown
Contributor

quest land removed this pull request from the queue: the batch check failed (exit 101).

js: selecting docs
..js: selecting reader
...
----------------------------------------------------------------------
Ran 24 tests in 0.875s

OK
python3 sh/js/audit.test.py
..
----------------------------------------------------------------------
Ran 2 tests in 0.100s

OK
python3 sh/rs/test-lints.test.py
.
----------------------------------------------------------------------
Ran 1 test in 4.005s

OK
python3 sh/gh/nightly.test.py
..............
----------------------------------------------------------------------
Ran 14 tests in 1.939s

OK
python3 sh/gh/pages-clean.test.py
....
----------------------------------------------------------------------
Ran 4 tests in 0.079s

OK
python3 sh/gh/bench-report.test.py
............
----------------------------------------------------------------------
Ran 12 tests in 1.200s

OK
bench-ffi: 2 measured entries
bench-rust: failure; no history point
bench-ffi: failure; no history point
bench-rust: failure; no history point
no completed benchmark reports; no history point
bench-rust: 1 measured entries
bench-rust: failure; no history point
no completed benchmark reports; no history point
Paired comparison of c2 against c1: 1 confirmed regressions, 1 targets not compared

- `rust/kio/lock/4`: +40.0% (rounds +30.0%, +40.0%, +50.0%)
- `rust/gst/moq-gst/catalog` not compared: base build failed
Paired comparison of c2 against c1: 0 confirmed regressions, 0 targets not compared

python3 sh/gh/ts-paths.test.py
.....
----------------------------------------------------------------------
Ran 5 tests in 0.001s

OK
sh/go/publish-wrapper.test.sh
publish-wrapper test: no rsync on PATH, skipping
bash .claude/hooks/direnv.test.sh
direnv hook: could not load the dev shell, see the direnv output above.
direnv hook: regression tests passed
python3 sh/rs/uring.test.py
jq: error (at <stdin>:36): null (null) cannot be matched, as it is not a string
rs: selecting moq-relay moq-uring 
jq: error (at <stdin>:36): null (null) cannot be matched, as it is not a string
rs: selecting moq-relay 
jq: error (at <stdin>:36): null (null) cannot be matched, as it is not a string
rs: selecting kio moq-relay moq-uring 
jq: error (at <stdin>:36): null (null) cannot be matched, as it is not a string
rs: selecting moq-unrelated 
rs: selecting the workspace
rs: selecting the workspace
rs: selecting the workspace
.
----------------------------------------------------------------------
Ran 1 test in 0.734s

OK
ci: check rs failed
ci: check rs_shapes failed
ci: check js failed
ci: seconds per module
    39  check rs (failed)
    12  check rs_shapes (failed)
    23  check js (failed)
    21  check markdown
     2  check gh
    64  test gh
    49  check flake
     1  check drill
     1  check quest
     2  check ts_paths
    15  check shell
     0  check large_files
     0  check toml
     0  check nix
     0  check justfile
   110  wall time
error: recipe `ci` failed on line 106 with exit code 101

.

@moq-bot
moq-bot Bot enabled auto-merge (squash) October 31, 2026 22:44
@moq-bot moq-bot Bot added the quest:merge label Oct 31, 2026
@moq-bot

moq-bot Bot commented Oct 31, 2026

Copy link
Copy Markdown
Contributor

codex / Codex land fixer: Requeued unchanged: Healthy relative to the logged failure; all failed checks trace to PR &#35;7383 calling a helper renamed by base.

(written by codex / Codex)

kixelated and others added 2 commits November 1, 2026 01:10
Resolve rs/moq-cli/src/auth.rs against the mesh coordinator restructure
(#7301): log the bound address in the new auth listener branch, and do
the same for the mesh coordinator's listener.

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

Copy link
Copy Markdown
Collaborator Author

Merged origin/main (08e71cd) into the branch. The conflict in rs/moq-cli/src/auth.rs came from the mesh enrollment restructure (moq-dev/moq#7301); I kept main's structure and reapplied the bound-address log. The mesh coordinator's listener had the same gap, so it now logs listener.local_addr() as well. just check passed in nix develop, and a local Codex review of head 8d4ccc0 reported no findings (round 1 flagged only main's newer moq-net changes, an artifact of main moving mid-review). Queuing for quest land.

(Written by Claude Opus 5.5)

@kixelated
kixelated enabled auto-merge (squash) November 1, 2026 09:17

@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 commit 8d4ccc0, compared with the previous review at 2809f04 and accounting for the updated base.

No actionable bugs found. The substantive addition applies the same bound-address correction to the mesh coordinator listener in rs/moq-cli/src/auth.rs:580. It reads local_addr() after a successful bind, preserves bind-error context, and does not change the advertised mesh URL or which listener is served. The auth listener correction remains intact after the surrounding mesh restructure. This is a focused extension; no broader listener abstraction is warranted. The previous review had no findings to carry forward.

Static GitHub review only; I did not run tests or validate CI. The existing port-zero regression assertion covers the auth listener, not the new mesh-listener log.

@moq-bot
moq-bot Bot disabled auto-merge November 1, 2026 09:38
@moq-bot moq-bot Bot removed the quest:merge label Nov 1, 2026
@moq-bot

moq-bot Bot commented Nov 1, 2026

Copy link
Copy Markdown
Contributor

quest land removed this pull request from the queue: Conflicts with the base: rs/moq-cli/src/auth.rs
.

@moq-bot

moq-bot Bot commented Nov 1, 2026

Copy link
Copy Markdown
Contributor

codex / Codex land fixer: This maintainer pick already used its mechanical fi·x attempt. Run /quest-iterate to diagnose the repeated failure, then pick it again.

(written by codex / Codex)

@moq-bot
moq-bot Bot disabled auto-merge November 1, 2026 12:26
@moq-bot moq-bot Bot removed the quest:merge label Nov 1, 2026
@moq-bot

moq-bot Bot commented Nov 1, 2026

Copy link
Copy Markdown
Contributor

quest land removed this pull request from the queue: the batch check failed (exit 1).

     568      │ - → → → "ok",
     569      │ - → → → "probe"
     570      │ - → → ]
          528 │ + → → "video":·["ok",·"probe"]
     571  529 │     },
     572  530 │     {
    ········· │ 
     584  542 │         }
     585  543 │       },
     586      │ - → → "video":·[
     587      │ - → → → "ok",
     588      │ - → → → "probe"
     589      │ - → → ]
          544 │ + → → "video":·["ok",·"probe"]
     590  545 │     },
     591  546 │     {
    ········· │ 
     667  622 │         }
     668  623 │       },
     669      │ - → → "video":·[
     670      │ - → → → "ok",
     671      │ - → → → "probe"
     672      │ - → → ]
          624 │ + → → "video":·["ok",·"probe"]
     673  625 │     },
     674  626 │     {
    ········· │ 
     686  638 │         }
     687  639 │       },
     688      │ - → → "video":·[
     689      │ - → → → "ok",
     690      │ - → → → "probe"
     691      │ - → → ]
  533 more lines truncated
  

Checked 2197 files in 1410ms. No fixes applied.
Found 2 errors.
check ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

  × Some errors were emitted while running checks.
  

error: "biome" exited with code 1
error: recipe `biome` failed on line 131 with exit code 1
ci: check go cancelled in 85s
==> check go
bash ../sh/go/check.sh
go check: gofmt -l...
go stage: building moq-ffi for x86_64-unknown-linux-gnu...
    Finished `dev` profile [unoptimized + debuginfo] target(s) in 1.25s
go stage: generating bindings...
go stage: assembling ffi module...
  go lib linux_amd64 <- x86_64-unknown-linux-gnu (615 MiB)
  go lib linux_arm64: skipped, /work/dist/go-libs/aarch64-unknown-linux-gnu/libmoq_ffi.a missing
  go lib darwin_arm64: skipped, /work/dist/go-libs/aarch64-apple-darwin/libmoq_ffi.a missing
  go lib windows_amd64: skipped, /work/dist/go-libs/x86_64-pc-windows-msvc/moq_ffi.lib missing

Staged: /work/dist/go-ffi-pkg/moq-ffi-0.0.0-dev-go
go stage: staging wrapper module...
  skipping go mod tidy (no go.sum staged)

Staged: /work/dist/go-wrapper-pkg/moq-go-0.7-wrapper
go check: checking error sentinels...
go check: go vet ./...
go check: go build ./...
go check: go test -race ./...
error: recipe `check` failed on line 17 with exit code 143
ci: check biome failed
ci: seconds per module
   259  check py
    51  test py
    54  check rs
   280  test rs
   375  check c
   194  check cpp
    33  check obs_compile
   264  check js
    49  test js
    29  check drafts
     2  check biome (failed)
   162  check kt
    56  check flake
    50  check bench
    17  check carla
     0  check swift
    85  check go (cancelled)
     1  check drill
     8  check workers
     7  check moq_sh
     3  check quest
     4  check obs
     1  check ts_paths
    14  check shell
     0  check large_files
     2  check toml
     0  check nix
     0  check justfile
   678  wall time
error: recipe `ci` failed on line 107 with exit code 1

.

@moq-bot
moq-bot Bot enabled auto-merge (squash) November 1, 2026 12:43
@moq-bot

moq-bot Bot commented Nov 1, 2026

Copy link
Copy Markdown
Contributor

codex / Codex land fixer: Requeued unchanged: healthy; batch Rust checks and tests passed; failure is in PR &#35;7434 whole-repository Biome lane

(written by codex / Codex)

@kixelated

Copy link
Copy Markdown
Collaborator Author

The 12:26Z quest land removal was a Biome format failure in JSON fixtures this PR does not touch (rs/hang/fixtures/catalog-parity.json, already unformatted on main, likely exposed by a batch-mate widening Biome's scope such as moq-dev/moq#7434). Not this PR's failure.

Separately, the PR had gone conflicting with main on quest/m2/README.md; I merged origin/main (0e9e828) locally, which resolved conflict-free via the quest merge driver, and pushed head de80208. just check origin/main (in nix develop) and quest check --base origin/main pass on it. No code changes since the reviewed head 8d4ccc0, so no new review. Landing again.

(Written by Claude Opus 5.5)

@moq-bot
moq-bot Bot disabled auto-merge November 1, 2026 12:49
@moq-bot moq-bot Bot removed the quest:merge label Nov 1, 2026
@moq-bot

moq-bot Bot commented Nov 1, 2026

Copy link
Copy Markdown
Contributor

quest land removed this pull request from the queue: its head moved from 8d4ccc0 to de80208 after it was queued.

@kixelated

Copy link
Copy Markdown
Collaborator Author

Requeueing after the 12:49Z landing-stopped head_moved. The head moved because this session merged main into the branch. The follow-up --land never took effect: the timeline shows no relabel or auto-merge after the removal.

Head de80208 merges main (0e9e828) into the reviewed head 8d4ccc0. Running git merge-tree --write-tree on those two parents gives the same tree (d1a90f4e), so it's a conflict-free base merge and needs no new review. The Codex round 2 review on 8d4ccc0 found nothing. Checks on de80208 pass (5/5), and quest check --base origin/main (main at cfea19b) passes.

Summary: Serve::run logs listener.local_addr() after binding, so auth serve --listen 127.0.0.1:0 reports the OS-assigned port. The mesh coordinator listener gets the same fix. The integration test asserts the logged port is nonzero. The finished quest quest/m2/auth-serve-bound-addr.md is deleted.

(Written by Claude Opus 5.5)

@kixelated
kixelated enabled auto-merge (squash) November 1, 2026 13:55
@moq-bot
moq-bot Bot merged commit 435ee2c into main Nov 1, 2026
1 check passed
@moq-bot
moq-bot Bot deleted the quest/m2/auth-serve-bound-addr branch November 1, 2026 19:14
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant