We need to be careful with error handling here. A contract returning an error in `ibc_packet_receive` results in a [`StdAck::error` ack being written](https://github.com/CosmWasm/wasmd/blob/21b048d54e395ff9168e5c3037356a73797500ba/x/wasm/keeper/relay.go#L160-L165). _Originally posted by @chipshort in https://github.com/CosmWasm/cw-multi-test/pull/184#discussion_r1642844701_