Closed johnletey closed 4 months ago
[!WARNING]
Review failed
The pull request is closed.
The updates to the Aura module introduce robust functionality for managing blocked IBC channels. New commands, message types, and state management functions allow blocking and unblocking channels, ensuring controlled transfers. Consistent command descriptions, comprehensive tests, and various related updates further stabilize and validate these changes. The enhancements ensure improved transfer restrictions and administrative control over IBC channels.
Files | Change Summary |
---|---|
x/aura/client/cli/tx.go |
Added commands for blocked channels and updated existing ones for consistency. |
x/aura/keeper/... |
Added logic for sending restrictions based on blocked channels and associated tests. |
x/aura/spec/... |
Added new sections for blocked channels in documentation files. |
x/aura/types/... |
Introduced message types and codec registration for managing blocked channels. |
e2e/main_test.go |
Updated tests to include scenarios for IBC transfers and blocked channels. |
sequenceDiagram
participant User as User
participant CLI as CLI
participant MsgServer as MsgServer
participant Keeper as Keeper
participant Blockchain as Blockchain
User->>CLI: Execute "block channel" command
CLI->>MsgServer: Sends blocking request
MsgServer->>Keeper: Add channel to blocked list
Keeper->>Blockchain: Update state with blocked channel
Note right of Keeper: Emit BlockedChannelAdded event
User->>CLI: Execute "unblock channel" command
CLI->>MsgServer: Sends unblocking request
MsgServer->>Keeper: Remove channel from blocked list
Keeper->>Blockchain: Update state removing the blocked channel
Note right of Keeper: Emit BlockedChannelRemoved event
sequenceDiagram
participant User as User
participant CLI as CLI
participant MsgServer as MsgServer
participant Keeper as Keeper
participant Blockchain as Blockchain
User->>Blockchain: Initiate IBC Transfer
Blockchain->>Keeper: Check SendRestrictionFn
Keeper->>Keeper: Validate blocked channels
Keeper-->>Blockchain: Allow/Deny based on channel status
Blockchain-->>User: Transfer result
In the realm of blockchain's song,
Channels locked and blocked along,
Now commands both bold and bright,
Guard the paths and set things right.
Transfers flow or find their end,
With rules that Keeper doth defend.
🌟✨🐇
Thank you for using CodeRabbit. We offer it for free to the OSS community and would appreciate your support in helping us grow. If you find it useful, would you consider giving us a shout-out on your favorite social media?
All modified and coverable lines are covered by tests :white_check_mark:
:loudspeaker: Thoughts on this report? Let us know!
This PR implements a blocklist approach to IBC transfers.
A new E2E test has been added to demonstrate this feature:
Summary by CodeRabbit
New Features
TxAddBlockedChannel()
andTxRemoveBlockedChannel()
.Bug Fixes
Tests
Documentation