Closed RyanRHall closed 1 month ago
f4c616f
during Solidity Foundry #8141Summary coverage rate: lines......: 97.6% (2195 of 2248 lines) functions..: 94.5% (411 of 435 functions) branches...: 93.4% (524 of 561 branches) Files changed coverage rate: n/a
Issues
0 New issues
0 Fixed issues
0 Accepted issues
Measures
0 Security Hotspots
No data about Coverage
0.0% Duplication on New Code
Motivation
I encountered a scenario w/ RMN where offchain needs to abi.encode a struct that is not included in any public contract functions (as input param or return value) and so it is not a part of the ABI or the go wrapper. Offchain is currently doing a manual encoding by re-defining the type, which I usually try to avoid at all costs. In the past, we've used a Utils contract (ex here from automation) to expose all private structs in public functions so that offchain components can use E2E type safety when encoding / decoding.
Solution
Create a
CCIPEncodingUtils
contract and accompanying gethwrapper