Closed
Description
Summary
Currently ics29 fee uses the channelKeeper interface as both the channel keeper and ics4 wrapper. The issue is other applications may require more functions from the channel keeper than just send packet and write acknowledgement. For example, interchain accounts requires ChanOpenInit.
This concern was accounted for in the middleware documentation. We should apply this design to ics29 and ics27 by having two interfaces: channelKeeper and ics4Wrapper. The keeper for the ibc application should receive the app above it as the ics4wrapper and the ibc core channel keeper as the channel keeper
For Admin Use
- Not duplicate issue
- Appropriate labels applied
- Appropriate contributors tagged/assigned