Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

feat: refactor ICQ module documentation [NTRN-349] #219

Open
wants to merge 36 commits into
base: main
Choose a base branch
from
Open
Changes from 1 commit
Commits
Show all changes
36 commits
Select commit Hold shift + click to select a range
b40035e
redesign the ICQ module documentation
sotnikov-s Jul 31, 2024
40cf0c3
remove target chain page
sotnikov-s Sep 2, 2024
5e05801
Merge branch 'main' of github.com:neutron-org/neutron-docs into feat/…
sotnikov-s Sep 2, 2024
7424e0f
Merge branch 'main' of github.com:neutron-org/neutron-docs into feat/…
sotnikov-s Oct 11, 2024
cf493d9
add a HowTo for chosing of connection ID for ICQ
sotnikov-s Oct 14, 2024
11e0065
fix ICQs known bugs sidebar element path
sotnikov-s Oct 14, 2024
4b29a30
add more explanations (IBC connection role, entry points, sudo calls,…
sotnikov-s Oct 14, 2024
d9bd882
add missing keywords highlighting
sotnikov-s Oct 14, 2024
b39ce02
fix misprints
sotnikov-s Oct 16, 2024
0111af7
add tx filter determination howto section, add pruning mention in pri…
sotnikov-s Oct 16, 2024
902e649
make steps in howtos headers
sotnikov-s Oct 16, 2024
5ddbce1
add explanation section for TX query submitted results verification
sotnikov-s Oct 18, 2024
de05b73
rm interchainqueries TODO file
sotnikov-s Oct 18, 2024
df5fc29
remove -typed suffix for ICQ types
sotnikov-s Oct 18, 2024
cbfeb42
add a howto section for simple ICQ registration with contract code sn…
sotnikov-s Oct 30, 2024
cbdc0fa
refine KV ICQ registration howtos
sotnikov-s Nov 4, 2024
c0b24e7
move code snippets into details in interchainqueries howto
sotnikov-s Nov 5, 2024
c7666f6
add a how to section for TX ICQ
sotnikov-s Nov 11, 2024
a9995ab
update code links and polish KV and custom KV ICQ howtos
sotnikov-s Nov 11, 2024
0dabdb7
add ToC and more Might be interesting links for ICQ docs
sotnikov-s Nov 13, 2024
b5e86bb
Merge branch 'main' of github.com:neutron-org/neutron-docs into feat/…
sotnikov-s Nov 13, 2024
51ca9e3
fox links to ICQ module
sotnikov-s Nov 13, 2024
feb7f06
update msg type names
sotnikov-s Nov 14, 2024
0ec51b7
update example of ICQ module params
sotnikov-s Nov 14, 2024
4cfc026
minor fixes to ICQ module docs
sotnikov-s Nov 14, 2024
3b32fa0
Merge branch 'main' of github.com:neutron-org/neutron-docs into feat/…
sotnikov-s Nov 14, 2024
9983744
fix links to ICQ module for v4.0
sotnikov-s Nov 14, 2024
46d7e03
update ICQ howto contract links
sotnikov-s Nov 15, 2024
50d6f64
move link to RPC node configuration to a note for better visibility
sotnikov-s Nov 18, 2024
3b2e8ed
apply ChatGPT for improving writing style and fixing grammar
sotnikov-s Nov 25, 2024
70529f9
fix wording in ICS32 team mention
sotnikov-s Nov 25, 2024
327d36a
put link to ICQ relayer explanation in ICQs explanation sections inst…
sotnikov-s Nov 25, 2024
98d7214
add alternative way of finding events for transactions filter
sotnikov-s Nov 25, 2024
bbfa169
add links to neutron ICQ relayer implementation
sotnikov-s Nov 25, 2024
ad236dc
refactor how to find tx filter for gaia v21.0.0
sotnikov-s Nov 27, 2024
a7e13b2
add explanation section that highlights reliance of KV ICQ on target …
sotnikov-s Nov 27, 2024
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
6 changes: 2 additions & 4 deletions docs/neutron/modules/interchain-queries/explanation.md
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,7 @@ Typical Flow of KV Interchain Queries Usage:

4. The smart contract registers a KV Interchain Query with the necessary set of keys. The registered query is saved in the `interchainqueries` module's state.

5. An Interchain Query relayer reads the state of the `interchainqueries` module, finds the registered query and its parameters, and performs the `abci_query` RPC. This call returns a set of key-value pairs along with proofs from the `IAVL tree`.
5. An [Interchain Query relayer](/neutron/modules/interchain-queries/explanation#what-is-an-interchain-query-relayer) reads the state of the `interchainqueries` module, finds the registered query and its parameters, and performs the `abci_query` RPC. This call returns a set of key-value pairs along with proofs from the `IAVL tree`.
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
5. An [Interchain Query relayer](/neutron/modules/interchain-queries/explanation#what-is-an-interchain-query-relayer) reads the state of the `interchainqueries` module, finds the registered query and its parameters, and performs the `abci_query` RPC. This call returns a set of key-value pairs along with proofs from the `IAVL tree`.
5. An [Interchain Query relayer](/neutron/modules/interchain-queries/explanation#what-is-an-interchain-query-relayer) reads the state of the `interchainqueries` module, finds the registered query and its parameters, and performs the `abci_query` query to RPC. This call returns a set of key-value pairs along with proofs from the `IAVL tree`.

?

Copy link
Contributor

@NeverHappened NeverHappened Nov 29, 2024

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

right now I think it works more like:

  • gets the query from chain, checks that it's time to update data for given query. if it is so, it makes step 6


6. The relayer submits the key-value pairs and proofs to the `interchainqueries` module. This operation is called KV Interchain Query result submission. The module verifies the result using the proofs, stores it on-chain, and notifies the owning smart contract about the new result.

Expand All @@ -28,7 +28,6 @@ Typical Flow of KV Interchain Queries Usage:
**Might be interesting:**
- [How to register and handle a KV Interchain Query](/neutron/modules/interchain-queries/how-to#how-to-register-and-handle-a-kv-interchain-query)
- [How to register and handle a KV Interchain Query with custom keys](/neutron/modules/interchain-queries/how-to#how-to-register-and-handle-a-kv-interchain-query-with-custom-keys)
- [What is an Interchain Query relayer?](/neutron/modules/interchain-queries/explanation#what-is-an-interchain-query-relayer)

## How do TX Interchain Queries work?
swelf19 marked this conversation as resolved.
Show resolved Hide resolved

Expand All @@ -47,7 +46,7 @@ Typical Flow of TX Interchain Queries Usage:

4. The smart contract registers a TX Interchain Query with the specified set of transaction filters. The registered query is saved in the `interchainqueries` module's state.

5. An Interchain Query relayer reads the state of the `interchainqueries` module, finds the registered query and its parameters, and performs the `tx_search` RPC. This call returns a list of transactions that match the filters and have been successfully processed on the remote chain.
5. An [Interchain Query relayer](/neutron/modules/interchain-queries/explanation#what-is-an-interchain-query-relayer) reads the state of the `interchainqueries` module, finds the registered query and its parameters, and performs the `tx_search` RPC. This call returns a list of transactions that match the filters and have been successfully processed on the remote chain.
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

tx_search query to RPC.

Or am i mistaken?


6. The relayer submits the list of transactions along with a few headers for each transaction (used to verify the result) to the `interchainqueries` module. This operation is called TX Interchain Query result submission. The module verifies the result using the headers and passes the data to the owning smart contract.

Expand All @@ -60,7 +59,6 @@ Typical Flow of TX Interchain Queries Usage:
- [How to find out what transaction filter to use](/neutron/modules/interchain-queries/how-to#how-to-find-out-what-transaction-filter-to-use)
- [Why doesn't interchainqueries module store TX query results?](/neutron/modules/interchain-queries/explanation#why-doesnt-interchainqueries-module-store-tx-query-results)
- [Why is it mandatory to do contract's side verification of submitted TX Interchain Query results?](/neutron/modules/interchain-queries/explanation#why-is-it-mandatory-to-do-contracts-side-verification-of-submitted-tx-interchain-query-results)
- [What is an Interchain Query relayer?](/neutron/modules/interchain-queries/explanation#what-is-an-interchain-query-relayer)

## What is an Interchain Query relayer?

Expand Down