Agoric / agoric-sdk

monorepo for the Agoric Javascript smart contract platform
Apache License 2.0
327 stars 206 forks source link

orchestration: query chains that do not have async-icq enabled #9326

Open 0xpatrickdev opened 6 months ago

0xpatrickdev commented 6 months ago

What is the Problem Being Solved?

As a developer using the Orchestration API, I want to be able to query state on remote chains that do not have the async-icq module enabled. #9198 gives me support for revisions like osmosis:v21.0.0, but does not work for others like gaia:v14.0.0.

Description of the Design

### Tasks
- [ ] [ibc-go v8.3 - https://github.com/Agoric/agoric-sdk/issues/8951 ](https://github.com/Agoric/agoric-sdk/issues/8951)

In ibc-go v8.3.0, MsgModuleQuerySafe was introduced to allow ICAs to send queries. See: https://github.com/cosmos/ibc-go/blob/v8.3.1/proto/ibc/applications/interchain_accounts/host/v1/tx.proto#L41

Security Considerations

Scaling Considerations

Test Plan

Upgrade Considerations

0xpatrickdev commented 2 months ago

In ibc-go v8.3.0, ICA's can send queries with MsgModuleQuerySafe

(apps/27-interchain-accounts) https://github.com/cosmos/ibc-go/pull/5785 Introduce a new tx message that ICA host submodule can use to query the chain (only those marked with module_query_safe) and write the responses to the acknowledgement.

https://github.com/cosmos/ibc-go/blob/main/CHANGELOG.md#v830---2024-05-16