Skip to content

chore(rind): finish transport on rind - #7931

Merged
kixelated merged 3 commits into
mainfrom
quest/m1/rind/transport
Nov 5, 2026
Merged

kixelated merged 3 commits into
mainfrom
quest/m1/rind/transport

Conversation

@kixelated

@kixelated kixelated commented Nov 5, 2026 •

Copy link
Copy Markdown
Collaborator

Problem

moq-dev/moq#7873 implemented quest/m1/rind/transport.md but rewrote the quest instead of deleting it, so it still blocks quest/m1/rind/cpu-error.md and the MoQ on rind epic.

Verification on main

Checked the Goal and the plan items #7873 dropped from the file (git show 44a24b976 -- quest/m1/rind/transport.md):

  • No aws-lc or ring. cargo tree --locked --target all -e normal,build -i {aws-lc-sys,ring} is empty for moq-quic, moq-uring, moq-rtmp, qmux, moq-relay, moq-ffi and moq-c with --all-features, and for moq-tokio with every feature except webrtc. Every remaining aws-lc path (moq-tokio webrtc, moq-cli's default build) runs through str0m/dimpl in moq-rtc and moq-ice, which moq-rtc on rind owns.
  • Provider features removed. moq-tokio and moq-quic have no aws-lc-rs/ring features; their MIGRATE notes say to drop them. (moq-native's no-op features belong to its rename tombstone, which no build compiles as a dependency.)
  • CPU check at setup. moq-tokio's client and server TLS builders call crypto::provider()?, so every binary built on it (moq-ffi through Client::new, moq-c, moq-gst, moq-boy) fails setup with UnsupportedCpu naming the feature. moq-relay, moq-bench, and now moq-cli also check at the top of main.
  • Docs. The CPU requirement is in doc/bin/relay/index.md, doc/bin/cli.md, and doc/lib/rs/index.md.

Approach

  • Delete the quest and its links: the epic README's Required list, and cpu-error.md's Required entry and Plan prose (now past tense, so cpu-error.md is unblocked).
  • moq-cli's startup calls moq_tokio::crypto::install_default()? like moq-relay and moq-bench, instead of rind_rustls::default_provider() plus an unreachable "already installed" error. It drops its direct rind-rustls dependency.
  • doc/lib/rs/index.md and the moq-tokio README no longer name the removed aws-lc-rs/ring features; that migration note lives in each crate's MIGRATE.md, and doc/ describes only what ships.
  • Stale aws-lc text fixed: moq-gst's stop docs and tests now give the reason that still holds (a dial outliving the state change an app waits on), .oss-scanner/threat_model.md says rustls with rind, and deny.toml's rsa note says production signing uses rind.

Impact

  • Public API: none. moq-cli's startup error on an unsupported CPU now reads unsupported CPU: rind requires ... through moq-tokio's typed error.
  • Wire: none.

Alternatives

  • Removing the Windows NASM steps from release-c.yml/release-cpp.yml, since moq-c's and moq-ffi's graphs no longer hold aws-lc on any target. Left for the epic's final aws-lc removal: those workflows only run at release, so the change can't be exercised here, and release-binary.yml still needs NASM for moq-cli until rtc.md lands.

Follow-ups

  • None new. The epic's own work (removing aws-lc-rs from the workspace and the graph guard) can drop the NASM action once rtc.md and cpu-error.md land.

Validation

  • quest gate just check origin/main on 5a3ac90 (d95e2bf only edits a deny.toml comment): every module passed (check/test rs with 11760 tests, js, gh, markdown, shell, quest, drill, and the rest) except check flake, which stops before running because this host has no /dev/kvm for the NixOS VM tests. That precondition fails identically on any checkout; CI runs it on a KVM host.
  • quest check: 588 documents ok.
  • The cargo tree sweeps listed above.

Review

  • Harness: Codex (quest review), gpt-6.1-sol, medium effort, round 1.
  • Reviewed head: d95e2bf, against origin/main.
  • Findings: none.

(Written by Claude Opus 5.5)

🤖 Generated with Claude Code

kixelated and others added 3 commits November 4, 2026 22:23
Quest-Claim: 7a2f66ed9e56542b
Delete the transport quest, which #7873 implemented, and the
links to it. Route moq-cli's startup CPU check through moq-tokio's shared
`crypto::install_default`, dropping its direct rind-rustls dependency.
Drop the removed-feature migration note from doc/lib and the moq-tokio
README (MIGRATE.md carries it), and replace stale aws-lc rationale in
moq-gst and the threat model.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@kixelated kixelated changed the title Finish transport on rind chore(rind): finish transport on rind Nov 5, 2026
@kixelated
kixelated marked this pull request as ready for review November 5, 2026 07:06
@coderabbitai

coderabbitai Bot commented Nov 5, 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 13 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: 6b5dc938-53d3-418d-83de-b4cef112cfd9
Commits

Reviewing files that changed from the base of the PR and between 877c145 and d95e2bf.

Files ignored due to path filters: 1

  • Cargo.lock is excluded by !**/*.lock
Files selected for processing: 11

  • .oss-scanner/threat_model.md
  • deny.toml
  • doc/lib/rs/index.md
  • quest/m1/rind/README.md
  • quest/m1/rind/cpu-error.md
  • quest/m1/rind/transport.md
  • rs/moq-cli/Cargo.toml
  • rs/moq-cli/src/main.rs
  • rs/moq-gst/src/sink/session.rs
  • rs/moq-gst/src/source/imp.rs
  • rs/moq-tokio/README.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

  • Quest cleanup — deletes quest/m1/rind/transport.md and removes its entry from the epic README's Required list, plus cpu-error.md's Required entry and past-tense Plan rewrite, unblocking cpu-error.md.
  • moq-cli startup — routes the CPU check through moq_tokio::crypto::install_default()? like moq-relay/moq-bench, dropping the direct rind-rustls dependency and the unreachable "already installed" error.
  • Docs — removes the removed-feature migration note from doc/lib/rs/index.md and rs/moq-tokio/README.md (MIGRATE.md carries it).
  • Stale aws-lc text — moq-gst stop docs/tests now give the still-valid reason, .oss-scanner/threat_model.md says rustls with rind, and deny.toml's rsa note names rind.

Verified moq_tokio::crypto::install_default() is unconditional (so moq-cli's default-features = false build still has it), returns a thiserror error that works with anyhow::?, and that no rind_rustls references or transport.md links remain. The remaining aws-lc mentions in .oss-scanner/Dockerfile and threat_model line 42 are still accurate while moq-cli/moq-rtc pull it via str0m/dimpl.

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

@kixelated
kixelated added this pull request to the merge queue Nov 5, 2026
Merged via the queue into main with commit c0888cf Nov 5, 2026
14 checks passed
@kixelated
kixelated deleted the quest/m1/rind/transport branch November 5, 2026 20:19
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