-
Notifications
You must be signed in to change notification settings - Fork 105
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Remove ordered channels #1258
base: main
Are you sure you want to change the base?
Remove ordered channels #1258
Conversation
contracts/src/Gateway.sol
Outdated
Ticket, | ||
Costs | ||
} from "./Types.sol"; | ||
import {Channel, ChannelID, InboundMessage, OperatingMode, ParaID, Command, MultiAddress, Ticket, Costs} from "./Types.sol"; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Seems the format change here is unnecessary?
Seems this PR is mixed with a lot of format change and a bit challenge to review.
|
Seems we need still changes on relayer/substrate side to coordinate with the changes here. Let me know if I can help. |
bytes32[] calldata leafProof, | ||
Verification.Proof calldata headerProof |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
would it be more clear to rename leafProof
to messageProof
and headerProof
to mmrProof
?
Oops, I am using a new editor and I and need to configure it properly. Will revert 👍 |
@@ -12,6 +13,10 @@ library CoreStorage { | |||
mapping(ChannelID channelID => Channel) channels; | |||
// Agents | |||
mapping(bytes32 agentID => address) agents; | |||
// V2 | |||
mapping(bytes32 messageHash => bool) messageHashes; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Will a bitmap storage make more sense here?https://github.com/OpenZeppelin/openzeppelin-contracts/blob/master/contracts/utils/structs/BitMaps.sol
contracts/src/Gateway.sol
Outdated
function tokenTransfer(bytes calldata data) external onlySelf { | ||
CoreStorage.Layout storage $ = CoreStorage.layout(); | ||
|
||
(address token, address recipient, uint128 amount) = abi.dec | ||
|
||
} |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Coding here unfinished and this won't compile.
Seems gonna to move the AgentExecuteCommand
to top level? If so we may still need Agent.invoke
with executor to delegate call the transfer.
Makes the gateway support unordered messaging
Gateway.submitV2
for unordered inbound message deliveryGateway._submitOutbound
for unordered outbound message acceptancePaymaster
contract which now handles message delivery incentivization.