You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
The ics27 host submodule currently returns the error string from message execution in the channel acknowledgement. If this value changes between patch releases, the marshalled acknowledgement will also changes. Nodes running different patch versions will set in state different acknowledgements and thus reach an app hash mismatch. Making error strings changes state machine breaking is too strict of a requirement for ics27 to impose on an entire chain.
Fix
Remove the error string from the channel acknowledgement. Emit the message execution error in the events.
For Admin Use
Not duplicate issue
Appropriate labels applied
Appropriate contributors tagged/assigned
The text was updated successfully, but these errors were encountered:
I've also noticed this issue is true for transfer? Would you like me to do the same there?
This is a really good point. We have two options:
ensure no calls to external modules outside ibc-go include error messages in our ack
remove the error string
I think we should probably remove the error string and document this issue. I think we could handle ensuring external calls are not included in our ack, but I don't think we can expect other developers developing IBC app modules to be aware of this issue, and since they will copy our code, it is probably best to keep it simple
Summary of Bug
The ics27 host submodule currently returns the error string from message execution in the channel acknowledgement. If this value changes between patch releases, the marshalled acknowledgement will also changes. Nodes running different patch versions will set in state different acknowledgements and thus reach an app hash mismatch. Making error strings changes state machine breaking is too strict of a requirement for ics27 to impose on an entire chain.
Fix
Remove the error string from the channel acknowledgement. Emit the message execution error in the events.
For Admin Use
The text was updated successfully, but these errors were encountered: