docs: encrypted CAG reactions and channel comments (whatsapp-rust#830) - #305
Conversation
|
Warning Review limit reached
More reviews will be available in 53 minutes and 39 seconds. Learn how PR review limits work. Your organization has run out of usage credits. Purchase more in the billing tab. ⌛ How to resolve this issue?After more reviews become available, a review can be triggered using the We recommend that you space out your commits to avoid hitting the rate limit. 🚦 How do rate limits work?CodeRabbit enforces hourly rate limits for each developer per organization. Our paid plans include higher PR review limits than trial, open-source, and free plans. In all cases, reviews become available again over time. During sustained high-volume PR review activity, CodeRabbit may temporarily slow when the next review becomes available. Please see our Fair Usage Limits Policy for further information. ℹ️ Review info⚙️ Run configurationConfiguration used: defaults Review profile: CHILL Plan: Pro Plus Run ID: 📒 Files selected for processing (2)
📝 WalkthroughWalkthroughThis PR updates documentation to announce and explain two new WhatsApp Community Announcement Group (CAG) features: automatic encryption of reactions to CAG posts and a new ChangesCAG Encrypted Reactions and Channel Comments
Estimated code review effort🎯 2 (Simple) | ⏱️ ~10 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 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 |
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: 1e64c4a892
ℹ️ About Codex in GitHub
Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
| client.send_reaction(&cag_jid, target_key, "🔥").await?; | ||
|
|
||
| // Remove a reaction with an empty emoji: | ||
| client.send_reaction(&cag_jid, target_key, "").await?; |
There was a problem hiding this comment.
Clone target_key before reusing it
In this single Rust example, the first send_reaction call takes ownership of target_key, so the removal call immediately below cannot reuse it. wa::MessageKey is a protobuf struct and is not Copy, so readers who paste this CAG reaction example will hit a move error; clone the key for the first call or recreate it before the revoke example.
Useful? React with 👍 / 👎.
There was a problem hiding this comment.
🧹 Nitpick comments (1)
changelog/2026-06-10-cag-enc-reactions-comments.mdx (1)
88-88: ⚡ Quick winClarify verb tense for better readability.
The sentence "Blobs persisted before this field deserialize with
None" is grammatically awkward. Consider rephrasing for clarity.✏️ Suggested rephasing
-**`GroupInfo`** gains `is_community_announce: Option<bool>`. Blobs persisted before this field deserialize with `None` ("unknown") and trigger one metadata re-query when the value is first needed. No migration is required — existing serialized blobs remain valid. +**`GroupInfo`** gains `is_community_announce: Option<bool>`. Blobs persisted before this field was added will deserialize with `None` ("unknown") and trigger one metadata re-query when the value is first needed. No migration is required — existing serialized blobs remain valid.🤖 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-10-cag-enc-reactions-comments.mdx` at line 88, Update the awkward sentence about GroupInfo's new field by fixing the verb tense and making the behavior clear: change "Blobs persisted before this field deserialize with `None`" to something like "Blobs persisted before this field are deserialized with `None`" or "Blobs persisted before this field deserialize as `None`", so the line describing GroupInfo and is_community_announce reads clearly that older blobs deserialize to `None` ("unknown") and trigger a single metadata re-query when first needed.
🤖 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.
Nitpick comments:
In `@changelog/2026-06-10-cag-enc-reactions-comments.mdx`:
- Line 88: Update the awkward sentence about GroupInfo's new field by fixing the
verb tense and making the behavior clear: change "Blobs persisted before this
field deserialize with `None`" to something like "Blobs persisted before this
field are deserialized with `None`" or "Blobs persisted before this field
deserialize as `None`", so the line describing GroupInfo and
is_community_announce reads clearly that older blobs deserialize to `None`
("unknown") and trigger a single metadata re-query when first needed.
ℹ️ Review info
⚙️ Run configuration
Configuration used: defaults
Review profile: CHILL
Plan: Pro Plus
Run ID: ddc8c8e8-b27a-440a-bcc9-162f1aeb076b
📒 Files selected for processing (5)
changelog/2026-06-10-cag-enc-reactions-comments.mdxdocs.jsonguides/communities.mdxguides/receiving-messages.mdxguides/sending-messages.mdx
|
Preview deployment for your docs. Learn more about Mintlify Previews.
💡 Tip: Enable Workflows to automatically generate PRs for you. |
Summary
Documents the changes from whatsapp-rust#830 — encrypted reactions for Community Announcement Groups and the new channel comments API.
Files changed
changelog/2026-06-10-cag-enc-reactions-comments.mdx— new changelog entry covering both features and the breaking changes (MessageInfo.comment_target,GroupInfo.is_community_announce,SecretEncKindnew variants)guides/communities.mdx— two new sections: Community Announcement Group (CAG) reactions and Channel comments (sending and receiving)guides/sending-messages.mdx— new Reactions in Community Announcement Groups subsection explaining the transparent encryption gate; new Channel Comments section coveringclient.comments().send_text()/send_message(); updated Best Practices listguides/receiving-messages.mdx— updated Reactions section noting CAG encrypted reactions are transparent; new Channel Comments subsection documentingMessageInfo::comment_target; updated MessageInfo field list and Next Stepsdocs.json— new changelog entry added at the top of the changelog nav listTest plan
/guides/communities#channel-comments,/guides/communities#community-announcement-group-cag-reactions)comment_target: NoneinMessageInfostruct literals)Generated by Claude Code
Summary by CodeRabbit
New Features
Documentation