I like it very much. I left couple more minor comments, apply them or not basing on your judgement, then just merge (no need for re-review).
One section I find missing here is about handling the "state rewinding". What I mean is that the IBC is non-transactional. This obviously brings the difficulty that if we get the timeout, we might want to make sure the changes we did are not happening - we need to rewind them manually.
I can see two strategies to work with that issue. One is to perform the "transaction rewinding" on the timeout/failure as mentioned. The other would be storing change state in some temporal place, and then "harden" it on ack. And probably mix of those as well.
I don't know if it is a thing to do in this PR, or if its needed, but I think some additional "advanced" chapter covering that would be nice. If you agree then please either add it or create an issue to add it later.
Originally posted by @hashedone in https://github.com/CosmWasm/docs/pull/19#pullrequestreview-2115349219