Skip to content

quest: mp4-atom iloc fixed upstream; the bump finishes it - #7686

Merged
kixelated merged 5 commits into
mainfrom
quest/m1/fuzz-findings/mp4-atom-iloc
Nov 3, 2026
Merged

kixelated merged 5 commits into
mainfrom
quest/m1/fuzz-findings/mp4-atom-iloc

Conversation

@kixelated

@kixelated kixelated commented Nov 3, 2026 •

Copy link
Copy Markdown
Collaborator

Quest: mp4-atom iloc is bounded

Summary

The fix belongs in mp4-atom, and kixelated/mp4-atom#267 merged on 2026-11-03 as kixelated/mp4-atom@2f19362. When an item's offset, length and index sizes are all 0, its extents take no bytes, so decode now rejects any zero-size extent after the item's first one, returning OutOfBounds. A single zero-size extent still decodes, as the maintainer decided on 2026-10-30. The pending release PR kixelated/mp4-atom#260 picks it up.

This PR only rewrites quests; it does not complete the iloc quest:

  • mp4-atom-iloc.md: records Add support for RUST_LOG again. #267's merge and states that the remaining work is tracked in the mp4-atom bump. That remaining work is moving to the release and committing the 31-byte cmaf input. The quest's ## Waiting keeps only the outside condition: a 0.17.x release containing 2f19362. Size drops from S to XS.
  • mp4-atom-bump.md: its Goal and Plan now cover the iloc input, rs/moq-mux/fuzz/regressions/cmaf/mp4-atom-iloc. Its Waiting now needs a release containing both Maybe close on disconnected element. #264 and Add support for RUST_LOG again. #267, and its PR deletes the iloc quest.
  • fuzz-findings/README.md: updates both children's summaries.

The regression input is not committed. Before the bump it would fail the merge gate, which the epic's Plan forbids.

Local verification

On moq-mux with mp4-atom 0.17.0, the input reproduces the bug: fuzz::tests::regressions panics with "31 input bytes allocated 6291464 bytes in 32 allocations". I then patched in #267's branch with a temporary [patch.crates-io] (not committed). With the patch, fuzz::tests::regressions and seeds_are_accepted pass, and so does all of cargo test -p moq-mux (1987 passed). quest check --base origin/main passes on fff5e66.

Decisions

The maintainer decided on 2026-11-03 to land this quest update now, rather than keep it as a draft until the bump.

Choices I made without asking, all in #267:

I kept the iloc quest open, waiting on the release, rather than folding it into the bump and deleting it here. The bump's PR deletes it.

Review

Round 3: Codex gpt-6.1-sol, medium effort, via quest review --base origin/main, on fff5e66, after merging origin/main. No findings.

Earlier rounds: round 1 raised one finding about quest/m2/performance-survey/mkv-fragments.md. I refuted it because that file is not in this branch's diff; origin/main had moved during the round. Round 2 had no findings.

(Written by Claude Opus 5.5)

🤖 Generated with Claude Code

kixelated and others added 3 commits November 2, 2026 23:09
The fix is up for review upstream. The quest now waits on it merging, then
commits the cmaf regression input with the mp4-atom bump.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@kixelated kixelated changed the title mp4-atom iloc is bounded quest: mp4-atom iloc fix is up as kixelated/mp4-atom#267 Nov 3, 2026
kixelated and others added 2 commits November 3, 2026 09:25
The iloc fix merged upstream as kixelated/mp4-atom@2f19362. What remains,
moving to the release and committing the cmaf input, is tracked in the
mp4-atom bump, whose PR also deletes the iloc quest.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@kixelated kixelated changed the title quest: mp4-atom iloc fix is up as kixelated/mp4-atom#267 quest: mp4-atom iloc fixed upstream; the bump finishes it Nov 3, 2026
@kixelated
kixelated marked this pull request as ready for review November 3, 2026 17:26

@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 head fff5e66 against base 9ac02f9. No actionable findings. The quest changes preserve the release and regression-input work as explicit follow-ups, and the linked upstream fixes and reproduction match the description.

Verification: static GitHub review of the three changed documents, upstream PRs and linked reproduction. I did not run tests or independently reproduce the allocation behavior.

@coderabbitai

coderabbitai Bot commented Nov 3, 2026

Copy link
Copy Markdown
Contributor

Review in Change Stack →

No actionable comments were generated in the recent review.

Walkthrough

The documentation now tracks upstream fixes #264 and #267 as part of the pending mp4-atom release. It records the 31-byte CMAF regression input and its allocation behavior on version 0.17.0, and updates the release verification requirements. The README and iloc finding also reflect the updated fix and release status.

Merge Risk: Minimal · up to fff5e

The documentation records the upstream fix while keeping the dependency update and regression input pending. No actionable merge-blocking risk is identified.

Pre-merge checks: Passed 5
Check name Status Explanation
Title check Passed The title clearly and concisely describes the main change: documenting the upstream iloc fix and the completion of the fix through the dependency bump.
Description check Passed The description directly explains the quest documentation changes, the upstream iloc fix, the pending release, and the remaining work. It is related to the changeset.
Docstring Coverage Passed No eligible functions found in the changed files. Skipping docstring coverage check. Docstring coverage is scoped to functions touched by this diff with cyclomatic complexity of at least 2. Documentat…
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.
Full details: Docstring Coverage

Explanation

No eligible functions found in the changed files. Skipping docstring coverage check. 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 0 functions across 0 files. (3 skipped: 3 unsupported.)

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

CodeRabbit Verify

  • Run CodeRabbit Verify to test the changes in this pull request.
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: 2a68726c-8917-4c82-be70-d10fa35c286e
Commits

Reviewing files that changed from the base of the PR and between 9ac02f9 and fff5e66.

Files selected for processing: 3
  • quest/m1/fuzz-findings/README.md
  • quest/m1/fuzz-findings/mp4-atom-bump.md
  • quest/m1/fuzz-findings/mp4-atom-iloc.md

Included review availability: This review used your included allowance. Your plan provides up to 4 included reviews per hour; 1 remain after this review.

@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

This quest-only PR records that the iloc bug is fixed upstream and hands the remaining moq-mux work to the mp4-atom bump. I verified the load-bearing external claims against the upstream API rather than trusting the prose:

  • mp4-atom-iloc.md — size [S] -> [XS], Plan reworded to the finished state, and a ## Waiting on the maintainer's 0.17.x release. kixelated/mp4-atom#267 indeed merged on 2026-11-03 as 2f19362…, returning OutOfBounds on a zero-size extent after an item's first.
  • mp4-atom-bump.md — Goal and Plan now cover the iloc input, name the exact path rs/moq-mux/fuzz/regressions/cmaf/mp4-atom-iloc, and Waiting requires a release containing both #264 (06a532aa) and #267 (2f19362). The 31-byte input decodes to the exact entry in the #7313 comment, and kixelated/mp4-atom#260 is the still-open release v0.17.1 PR whose changelog picks up both fixes.
  • fuzz-findings/README.md — both child summaries updated consistently with the files above.

All /quest/... link targets exist, regressions/cmaf/ is correctly absent (the input is deliberately uncommitted until the bump), and no other quest references iloc.

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

@kixelated
kixelated added this pull request to the merge queue Nov 3, 2026
Merged via the queue into main with commit 759e9e1 Nov 3, 2026
11 checks passed
@kixelated
kixelated deleted the quest/m1/fuzz-findings/mp4-atom-iloc branch November 3, 2026 19:53
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