Repository navigation
docs(quest): finish release hardening backport - #7596
Conversation
Quest-Claim: 408cc0080a420dcb
Co-Authored-By: GPT-6.1 Sol <noreply@openai.com>
…-hardening # Conflicts: # quest/m0/backport-release-hardening.md
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
# Conflicts: # quest/m0/backport-release-hardening.md
|
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 15 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
left a comment
There was a problem hiding this comment.
Automated review by review (OpenAI)
Reviewed commit: bca4eeb6e0b5fe3dbe992470b4ae8dd8054514a7
Findings: No actionable issues found in this documentation-only diff.
- The diff removes only
quest/m0/backport-release-hardening.mdand its entry inquest/m0/README.md(23 deleted lines). The milestone no longer links to the deleted quest; GitHub's indexed code search found that entry as the only reference to its filename. - The completion record is supported by merged release PRs #7599, #7920, and #7922, followed by the merged release cut #7936. The
moq-net-v0.3.21andmoq-relay-v0.17.13tags both point to #7936's release commit. No implementation, API, wire format, or version is changed here. - No earlier submitted review or outstanding finding was present on this PR, so there is no prior fix to reassess.
Direction: Removing the finished quest and its index entry is consistent with the completed release work. No change requested.
Limits: GitHub-only static review of this PR and its completion evidence, not a fresh audit of the backported implementations. I did not run quest context, quest check, builds, or tests, or independently inspect crates.io artifacts. The latest Check workflow for this exact head was still in progress at the final check; this is not a CI-pass or merge-readiness claim.
There was a problem hiding this comment.
✅ No new issues found.
Reviewed changes
- Quest file deleted —
quest/m0/backport-release-hardening.mdis removed in full (22 lines), with no replacement prose, matching the repo's convention for a completed quest. - Milestone link removed — its
## Requiredline is dropped fromquest/m0/README.md, leaving the m0 list well formed. - Completion verified — the diff against
origin/mainis only these two deletions, and both remaining ports plus the patch cut are merged: #7920 and #7922 intorelease, then #7936. The earlier dot-segment and auth-redirect items shipped in #7599. - No dangling references — a repo-wide grep for
backport-release-hardeningand for the quest title returns nothing on the head, including.github/audit notes and other quest plans.
deepseek-v4.1-flash-1017 (free via Pullfrog for OSS) | 𝕏

Problem
This PR holds the claim on quest/m0/backport-release-hardening.md. Its first scope, the dot-segment and auth-redirect refusals, shipped in moq-dev/moq#7599 (
moq-auth0.2.3,moq-relay0.17.11). What remains is tworeleaseports: moq-dev/moq#7210's relay HTTP hardening and moq-dev/moq#7414's credit-starved withdrawal, then the patch cut.Decisions
Who ports, and how many quests:
releasePR per port, as fix(auth): backport dot-segment and redirect refusals #7599 did, with this PR as the main-side checkpoint.Decided 2026-11-04 (maintainer, /quest-unblock). Recorded in the quest Plan.
Approach
Opened the two ports against
release, each reproduced onreleasefirst, checked from a checkout outside the main checkout (sorelease's own.cargo/config.tomlapplies), and reviewed locally by Codex with no findings. Both are ready for review:fix(relay): backport HTTP response and ops-listener hardening:/fetchservesapplication/octet-stream,/fetchand/announcedsendnosniffandprivate, no-store, and the ops listener refusesOriginand any authority other than the accepted socket's.fix(net): backport withdrawing IETF advertisements without send credit to release: the announce loop buffers each PUBLISH_NAMESPACE and REQUEST_UPDATE and writes and reads it in its event wait, so a starved request no longer pins the loop and its withdrawal resets it in both directions. A hand-port:release's publisher lacks main's per-request machinery.Earlier: merged
origin/mainand updated the quest: the 2026-11-04 decision, the two open ports, and a## Waitingitem for the maintainer's merge and cut.Both ports shipped: the maintainer cut the patch release (moq-dev/moq#7936, merged 2026-11-05), and crates.io's moq-net 0.3.21 and moq-relay 0.17.13 contain fix(relay): backport HTTP response and ops-listener hardening #7920 and fix(net): backport withdrawing IETF advertisements without send credit to release #7922. So this PR now merges
origin/mainand deletes the finished quest and its milestone link withquest rm.Impact
sh/api-diff/run.sh --deny rust: all 30 crates unchanged on each). Wire details are in each PR.Choices made without asking
release's handling of a request stream the peer ends before answering (it ends the announce loop), where main ends only that advertisement; that change predates fix(net): withdraw IETF advertisements without send credit #7414 on main. Main's epoch-replacement and credential cases are not ported, sincereleasehas neither.Validation
At head
bca4eeb6e0, againstorigin/main:quest check --base origin/main --branch quest/m0/backport-release-hardening: pass, 578 documents.Review
Skipped for head
bca4eeb6e0: the diff againstorigin/mainonly deletesquest/m0/backport-release-hardening.mdand its line inquest/m0/README.md; no code. Each port has its own record: Codexgpt-6.1-sol, medium, round 1, no findings, on moq-dev/moq#7920 and moq-dev/moq#7922.Follow-ups
cargo metadatafails. Onrelease, a Cargo config merge failure madejust ci checkandjust ci testprintrs: no crates affected; skipping.and exit 0. Main'ssh/rs/select.shcapturescargo metadatathe same way, inside a command substitution, but it has not been reproduced there.(Written by Claude Opus 5.5)