Streamline allowlist management by moving multicast group memberships into AccessPass#1566
Streamline allowlist management by moving multicast group memberships into AccessPass#1566juan-malbeclabs merged 8 commits intomainfrom
Conversation
There was a problem hiding this comment.
Pull Request Overview
This pull request streamlines allowlist management by moving multicast group membership control from the user level to AccessPass entities. The changes simplify user management while improving visibility into group relationships through enhanced access pass listings.
Key changes:
- Removal of user-level allowlist commands from CLI interfaces
- Multicast group allowlist management now operates through AccessPass accounts
- Enhanced display of multicast group memberships in access pass listings
Reviewed Changes
Copilot reviewed 70 out of 70 changed files in this pull request and generated 4 comments.
Show a summary per file
| File | Description |
|---|---|
| smartcontract/test/start-test.sh | Updated test script to use new allowlist command parameters |
| smartcontract/sdk/rs/src/commands/multicastgroup/subscribe.rs | Migrated allowlist checks from multicast groups to access passes |
| smartcontract/programs/doublezero-serviceability/src/state/multicastgroup.rs | Replaced publisher/subscriber lists with simple counts |
| smartcontract/programs/doublezero-serviceability/src/processors/multicastgroup/allowlist/publisher/add.rs | Refactored to manage allowlists via AccessPass accounts |
| smartcontract/cli/src/accesspass/list.rs | Added multicast group membership display to access pass listings |
Tip: Customize your code reviews with copilot-instructions.md. Create the file or learn how to get started.
...programs/doublezero-serviceability/src/processors/multicastgroup/allowlist/subscriber/add.rs
Show resolved
Hide resolved
.../programs/doublezero-serviceability/src/processors/multicastgroup/allowlist/publisher/add.rs
Show resolved
Hide resolved
smartcontract/programs/doublezero-serviceability/src/processors/multicastgroup/subscribe.rs
Show resolved
Hide resolved
smartcontract/programs/doublezero-serviceability/src/processors/multicastgroup/subscribe.rs
Show resolved
Hide resolved
7e9566a to
bf02e1a
Compare
5d9e5bd to
783eb44
Compare
There was a problem hiding this comment.
Pull Request Overview
Copilot reviewed 74 out of 74 changed files in this pull request and generated 5 comments.
Tip: Customize your code reviews with copilot-instructions.md. Create the file or learn how to get started.
smartcontract/programs/doublezero-serviceability/src/state/multicastgroup.rs
Outdated
Show resolved
Hide resolved
smartcontract/programs/doublezero-serviceability/src/processors/accesspass/set.rs
Outdated
Show resolved
Hide resolved
smartcontract/programs/doublezero-serviceability/src/processors/multicastgroup/subscribe.rs
Show resolved
Hide resolved
smartcontract/programs/doublezero-serviceability/src/processors/multicastgroup/subscribe.rs
Show resolved
Hide resolved
066a198 to
d314bbe
Compare
|
We should test this in devnet really well before merging to It changes a lot of things throughout the code in ways that are not super isolated, so I'd be a bit uncomfortable with merging to |
5d0c92d to
f4d128b
Compare
15de312 to
24a5403
Compare
…user payer - Removed unused fields from MulticastGroup struct and related deserialization logic. - Updated Add/Remove publisher/subscriber allowlist commands to accept client IP and user payer. - Deleted List commands for publisher and subscriber allowlists as they are no longer needed. - Adjusted tests to reflect changes in command structure and added necessary assertions. - Updated start-test.sh script to accommodate new command parameters for allowlist operations. - update multicast group PDA references in tests - remove unused globalstate PDA reference in multicast group subscribe tests - replace user allowlist with Access Pass in e2e test - update user_payer in sdk - update MulticastAllowListAdd to use --user-payer flag - improve error handling in deserialize_vec_with_capacity and add unit tests - update MulticastAllowListAdd to log user-payer instead of pubkey - update GetMulticastGroupCliCommand to filter users by pubkey and adjust mode text representation - add Publisher_count and Subscriber_count fields to MulticastGroup struct lint: refactor test setup for multicast group to improve readability chore: update goreleaser configuration for nightly releases chore: reorder git and nightly sections in goreleaser configuration changelog: reorganize sections and clarify changes in onchain programs Add support for multiple client IPs in MulticastAllowListAdd RPC Fix AccessPassNotFound error variant number and clean up unused code in helper functions Remove redundant client addition to user allowlist in device max users rollover test Enhance code clarity by improving comments and formatting in helper functions and multicast group display Refactor MulticastAllowListAdd to log client IP and streamline command execution Refactor MulticastGroup struct: rename Publisher_count and Subscriber_count to PublisherCount and SubscriberCount for consistency refactor: standardize formatting in MulticastGroup struct e2e/qa: client ip in MulticastAllowListAdd Fix import order and resolve merge conflict in agent.pb.go Refactor MulticastAllowListAddRequest by removing unused GetClientIp method
…lient IP in logs and display
…e test cases to include access pass details in output
532d898 to
832166c
Compare
|
Test of the new version against the current one on testnet. Testing the current version (currently on testnet) against devnet with the new version of the program |
… listings for improved visibility
This pull request makes several important changes to how user allowlists and multicast group memberships are managed and displayed in the DoubleZero project. The main update is the removal of user-level allowlist management from the CLI and admin interfaces, with multicast group memberships now shown directly in access pass listings. Additionally, error messages and formatting have been improved for clarity and consistency, and related tests have been updated to reflect these changes.
CLI and API Changes:
client/doublezeroandcontrolplane/doublezero-adminCLIs, simplifying user management and focusing allowlist operations at the multicast group level. [1] [2] [3] [4] [5] [6] [7] [8]--user-payerand--client-iparguments for multicast group allowlist commands, reflecting the new allowlist management approach.Access Pass and Multicast Group Display:
Error Message and Formatting Improvements:
These changes streamline allowlist management, improve the clarity of user and group relationships, and enhance error reporting throughout the codebase.