Conversation
📝 WalkthroughWalkthroughA new MDX changelog entry dated June 16, 2026 is added, documenting a ChangesSender Key Arc Backlog Changelog
Estimated code review effort🎯 1 (Trivial) | ⏱️ ~3 minutes Poem
🚥 Pre-merge checks | ✅ 5✅ Passed checks (5 passed)
✏️ Tip: You can configure your own custom pre-merge checks in the settings. ✨ Finishing Touches📝 Generate docstrings
🧪 Generate unit tests (beta)
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. Comment |
|
Preview deployment for your docs. Learn more about Mintlify Previews.
💡 Tip: Enable Workflows to automatically generate PRs for you. |
There was a problem hiding this comment.
Actionable comments posted: 1
🧹 Nitpick comments (1)
changelog/2026-06-16-sender-key-arc-backlog.mdx (1)
14-14: ⚡ Quick winUse
###headings for section labels instead of bold text.Per the learnings from the recent changelog PR, section labels like "What changed", "Benchmark results", and "No breaking changes" should use markdown
###headings, not bold text. The guidance is explicit: "use bold (**...**) only for individual named entry titles (e.g.,**Bot message decryption (msmsg)**). Do not replace##section headings with bold text."♻️ Proposed refactor
-**What changed.** `SenderKeyState` now holds the backlog in a dedicated `Arc<Vec<SenderMessageKey>>` field. +### What changed + +`SenderKeyState` now holds the backlog in a dedicated `Arc<Vec<SenderMessageKey>>` field.-**Benchmark results** (`bench_group_in_order_decrypt_with_backlog`, ~2000-key backlog, same machine A/B): +### Benchmark results + +(`bench_group_in_order_decrypt_with_backlog`, ~2000-key backlog, same machine A/B):-**No breaking changes.** No public API surface changed. No new dependencies added. +### No breaking changes + +No public API surface changed. No new dependencies added.Also applies to: 20-20, 32-32
🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the rest with a brief reason, keep changes minimal, and validate. In `@changelog/2026-06-16-sender-key-arc-backlog.mdx` at line 14, Replace the bold text section label "**What changed.**" with a markdown heading "### What changed" on line 14. Move the content that follows onto a new line after the heading. Apply the same formatting change to any other section labels (like "Benchmark results" and "No breaking changes") elsewhere in the file at lines 20-20 and 32-32, converting bold text formatting to `###` markdown headings while preserving the section content.Source: Learnings
🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.
Inline comments:
In `@changelog/2026-06-16-sender-key-arc-backlog.mdx`:
- Line 2: The page title in the file uses title case when it should use sentence
case per coding guidelines. In the title attribute on line 2, change the word
"Arc" to lowercase "arc" to comply with sentence case formatting for
documentation headings. The title should read "June 16, 2026 — Group decrypt:
sender-key backlog shared behind arc" instead of the current version with
capitalized "Arc".
---
Nitpick comments:
In `@changelog/2026-06-16-sender-key-arc-backlog.mdx`:
- Line 14: Replace the bold text section label "**What changed.**" with a
markdown heading "### What changed" on line 14. Move the content that follows
onto a new line after the heading. Apply the same formatting change to any other
section labels (like "Benchmark results" and "No breaking changes") elsewhere in
the file at lines 20-20 and 32-32, converting bold text formatting to `###`
markdown headings while preserving the section content.
🪄 Autofix (Beta)
Fix all unresolved CodeRabbit comments on this PR:
- Push a commit to this branch (recommended)
- Create a new PR with the fixes
ℹ️ Review info
⚙️ Run configuration
Configuration used: defaults
Review profile: CHILL
Plan: Pro Plus
Run ID: e4f1df92-c94c-41c6-a578-464bc87c40a6
📒 Files selected for processing (2)
changelog/2026-06-16-sender-key-arc-backlog.mdxdocs.json
There was a problem hiding this comment.
No issues found across 2 files
Tip: cubic could auto-approve low-risk PRs like this, if it thinks it's safe to merge. Learn more
Re-trigger cubic
There was a problem hiding this comment.
1 issue found across 1 file (changes from recent commits).
Tip: Review your code locally with the cubic CLI to iterate faster.
Fix all with cubic | Re-trigger cubic
Summary\n\nDocuments the performance improvement merged in oxidezap/whatsapp-rust#881.\n\n- Adds
changelog/2026-06-16-sender-key-arc-backlog.mdx— explains theArc-COW change toSenderKeyState.message_keys, the ~3× median speedup for in-order group decrypts with a populated backlog, and the benchmark numbers\n- Updatesdocs.jsonto register the new entry at the top of the changelog navigation\n\n## What changed in whatsapp-rust#881\n\nSenderKeyStatenow stores its skipped-message-key backlog inArc<Vec<…>>rather than inside the protobuf struct. Cloning a sender-key record (which happens on every group decrypt viaload_sender_key) is now a refcount bump instead of a deep copy of up to ~82 KB. Copy-on-write (Arc::make_mut) is used only when the backlog is actually mutated. No public API changes, no new dependencies.\n\n## Test plan\n\n- [ ] Changelog page renders correctly in Mintlify preview\n- [ ] New entry appears at the top of the Changelog tab\n- [ ] Benchmark table and numbers match the PR description"Generated by Claude Code
Summary by cubic
Documented the sender-key backlog
Arc+ COW performance change fromwhatsapp-rust#881, with benchmarks showing ~3x faster in-order group decrypts. Added a new changelog page and put it first indocs.json; aligned sub-headings to###and restored RustArccapitalization in the title.Written for commit 4192d90. Summary will update on new commits.
Summary by CodeRabbit
Performance Improvements
Documentation