-
Notifications
You must be signed in to change notification settings - Fork 412
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
[Do not merge] ADR-8 vertical spike #1368
Conversation
var _ porttypes.Middleware = &IBCMiddleware{} | ||
|
||
// IBCMiddlewareAdapter is an adapter to build a Middleware for IBC modules | ||
type IBCMiddlewareAdapter struct { |
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.
This is unused
type UnRegisterPacketProcessedCallback struct { | ||
Sequence uint64 `json:"sequence"` | ||
ChannelID string `json:"channel_id"` | ||
} |
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.
requires PortID
as well
In case somebody reads the article by the IBC team which goes in some different direction. This spike was built for them to demo the integration and callback registration. There were also a call and long discussions on internal slack. |
Closing in favour of ADR-8 implementation deployed as part of 0.52 |
Spike to discuss a concrete example.
This includes a some of hacks to make it work without modifying wasmvm.
A good start would be to look at
TestIBCAdr8WithTransfer
for the test scenario. Ics29 fees or edge cases are not coveredThe middleware integration is done in
app.go
For the callback to the contracts, 2 new methods are added to the wasmvm interface and mocked for proof of concept
For the callback registration a custom message was added that the reflect contract emits in the test:
The message is handled in the
XMessageHandler
and contains some ugly hack for the reflect contract.Authorization
New Packages