Skip to content

quest: unblock (2026-11-07, second pass) - #8120

Merged
kixelated merged 2 commits into
mainfrom
quest-unblock/2026-11-07-b
Nov 7, 2026
Merged

kixelated merged 2 commits into
mainfrom
quest-unblock/2026-11-07-b

Conversation

@kixelated

@kixelated kixelated commented Nov 7, 2026 •

Copy link
Copy Markdown
Collaborator

Quest edits from the second 2026-11-07 /quest-unblock. It ran after moq-dev/moq#8097 and covers only what changed since.

  • Deleted quest/m0/test-flakes-2/uring-memlock.md: the dev host's hard RLIMIT_MEMLOCK is now 64 MiB. The agent installed /etc/systemd/system/user@.service.d/memlock.conf (LimitMEMLOCK=64M) and /etc/security/limits.d/90-memlock.conf (kixelated hard memlock 65536), and raised the running t3 serve's hard limit with prlimit, so new agent sessions inherit it. Checked: a login shell's ulimit -Hl prints 65536, systemctl show user@1000 -p LimitMEMLOCK prints 67108864, and t3 serve reports a 67108864-byte hard limit.
  • New m1 quest quest/m1/h265-sps-reader.md, replacing quest/m4/scuffle-sps-bump.md: ScuffleCloud/scuffle looks unmaintained, and moq-mux already walks the whole H.265 SPS itself to protect scuffle-h265. Its walk becomes the parser, and scuffle-h265 and scuffle-expgolomb leave the tree.
  • quest/m3/video-quality/corpus-bucket.md: a checked-in just create recipe makes both buckets with the desktop's wrangler login. The maintainer item narrows to minting the read-only token, which wrangler cannot do.
  • Prose waits become ## Waiting: corpus-bucket and quest/m5/rind-instant-acme.md.

Decisions

Memlock raise (the maintainer said done, but the check failed):

  • ✅ The agent applies it (maintainer: "you do it")
  • Keep waiting

Scuffle (unmaintained upstream):

  • ✅ Drop scuffle-h265 and make the parser a module in moq-mux
  • Fork under moq-dev
  • Keep waiting upstream

Its milestone:

  • ✅ m1
  • m2
  • m4, as before

Video corpus buckets:

  • ✅ Checked-in wrangler setup
  • Create them by hand now
  • Keep waiting

Checked, still waiting

  • CACHIX_AUTH_TOKEN is already deleted (gh secret list no longer lists it). Another session recorded this on moq-dev/moq#8048 at 02:03Z.
  • The maintainer reported that moq-dev/moq#8058's listening run sounds clean; a /quest-iterate sub-agent is recording it.
  • webgpu-safari: skipped this session.
  • Upstream items:
    • crossbeam#1352 and Add encoder's AudioContext sampleRate override #1355 are open, and crossbeam-epoch is still 0.9.21.
    • cpal#1421 is open, and cpal is still 0.18.2.
    • rust2's ffi-export epic is still open.
    • rind's instant-acme-publish quest is still open, and instant-acme's latest is 0.8.5.
    • Bun is 1.4.4 with no bun lint.
    • Playwright 1.65.0 bundles Firefox 159, and nixpkgs has driver 1.64.1.
    • moq-tokio 0.19.34 and @moq/net 0.4.7 have no announcement-withdrawing close().
  • Scheduled Interop is red through 2026-11-06.
  • Waits dated 2026-11-24 or later, or gated on the cut, hold by date.

Public API: none. Wire: none.

Review

Codex (quest review --base origin/main), gpt-6.1-sol, medium effort, session 01a1b3d4-e676-75e2-bb73-3d2fb8998330, round 2 on 494cef323f: no findings. Round 1 on 834848f also had none. The maintainer's and pullfrog's matching finding, that scuffle-av1 does have a known bug, was fixed in 494cef3: the new quest now records the u8 UVLC overflow and moq-dev/moq#8042's validate_timing guard.

(Written by Claude Opus 5.5 with high effort)

🤖 Generated with Claude Code

- Delete the uring-memlock quest: the host's hard memlock limit is 64 MiB.
- Replace the scuffle bump wait with an m1 quest for moq-mux's own SPS reader.
- The video corpus buckets come from a checked-in wrangler setup.
- Turn the corpus and rind-instant-acme prose waits into Waiting sections.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@kixelated
kixelated marked this pull request as ready for review November 7, 2026 02:28
@coderabbitai

coderabbitai Bot commented Nov 7, 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: 9efc373c-46aa-4b7e-b6db-41cff6fc4d3c
Commits

Reviewing files that changed from the base of the PR and between fba4180 and 494cef3.

Files selected for processing: 8

  • quest/m0/test-flakes-2/README.md
  • quest/m0/test-flakes-2/uring-memlock.md
  • quest/m1/README.md
  • quest/m1/h265-sps-reader.md
  • quest/m3/video-quality/corpus-bucket.md
  • quest/m4/README.md
  • quest/m4/scuffle-sps-bump.md
  • quest/m5/rind-instant-acme.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

@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: 834848f
Base: fba4180

One P3 factual correction in the new H.265 plan: scuffle-av1 has a known overflow guarded locally by #8042. This does not challenge the recorded decision to replace the H.265 parser or require expanding this quest to AV1.

Direction: reusing the bounded SPS walk, explicitly correcting its dependency-specific layout, and preserving fuzz regressions avoids another parallel parser layer. The corpus plan keeps private content in a separate bucket and retains explicit access checks; the remaining ACME wait is still conditional on publication.

Verification: GitHub-only static inspection of the plans, SPS parser and VUI caller, dependency graph, AV1 guard/#8042, and existing R2 setup recipe. No quest commands, builds, tests, host memlock inspection, Cloudflare access, or registry checks were run. The host/registry claims remain author-reported. Visible Check runs were skipped or cancelled, not a verified green run.

(Written by review (OpenAI))

Comment thread quest/m1/h265-sps-reader.md Resolved

@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.

ℹ️ One factual correction in the new H.265 plan — minor, inline.

Reviewed changes

  • Deleted the memlock flake quest: quest/m0/test-flakes-2/uring-memlock.md and its index line go, on the claim that the dev host's hard RLIMIT_MEMLOCK is now 64 MiB.
  • Replaced the scuffle bump quest: quest/m4/scuffle-sps-bump.md is deleted for a new m1 quest, quest/m1/h265-sps-reader.md, where moq-mux's existing SPS pre-walk becomes the parser and scuffle-h265 and scuffle-expgolomb leave the tree.
  • Corpus buckets: quest/m3/video-quality/corpus-bucket.md records the checked-in infra/ wrangler setup and narrows the maintainer item to minting the read-only R2 token.
  • Wait formatting: corpus-bucket and quest/m5/rind-instant-acme.md move their conditions into ## Waiting.

Beyond the inline note, the tree checks out: nothing in the repo still references either deleted quest, sps::check/walk do exist as cited (rs/moq-mux/src/codec/h265/sps.rs:315, :343, added by merged #7685), the upstream claims match GitHub and crates.io (scuffle main last commit 2025-10-31, #652 open with no reviews, #653/#654 open with no replies, scuffle-h265 0.2.2 and scuffle-expgolomb 0.1.5 from mid-2025, instant-acme at 0.8.5, no rind-instant-acme), and both new ## Waiting items open with a party prefix. Note that #8097 is still open and also edits quest/m1/README.md, so whichever of the two merges second needs a trivial rebase.

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

Comment thread quest/m1/h265-sps-reader.md Resolved
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>

@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 494cef3 against base fba4180, focusing on the delta from 834848f.

The prior factual finding is addressed. quest/m1/h265-sps-reader.md now records scuffle-av1's UVLC counter overflow, names the existing validate_timing boundary guard, and explicitly retains it while the dependency remains. The source calls that guard before SequenceHeaderObu::parse and includes oversized-prefix regression cases. This is the only incremental file change; no new findings.

Direction: no further changes requested in this round; the H.265 replacement remains appropriately separate from the retained AV1 guard.

Verification limits: GitHub-only static inspection of the incremental diff, full updated plan and AV1 guard/callers/tests. I did not run quest commands or tests, or verify host memlock, Cloudflare or registry claims.

(Written by review (OpenAI))

@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

  • Recorded scuffle-av1's known u8 UVLC leading-zero overflow in quest/m1/h265-sps-reader.md, naming validate_timing in rs/moq-mux/src/codec/av1/import.rs (from #8042) as the local guard and the reason the crate stays.

This is the only change since the prior pullfrog review, and it resolves the earlier factual finding. Checked against the tree: validate_timing is defined at rs/moq-mux/src/codec/av1/import.rs:331 with the overflow rationale at :330, and parse_sequence_header calls it before SequenceHeaderObu::parse (:322-325), so the quest's description of the boundary guard is accurate. No other file changed, and the H.265 replacement decision remains untouched.

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

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 7, 2026
Merged via the queue into main with commit 1efb2f3 Nov 7, 2026
8 of 9 checks passed
@kixelated
kixelated deleted the quest-unblock/2026-11-07-b branch November 7, 2026 04:57
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