Skip to content

[IC-988] Update API docs for v1.19.0 chain upgrade#185

Merged
aarmoa merged 2 commits into
mainfrom
ic-988/update-api-docs-for-v1190-chain-upgrade
Apr 28, 2026
Merged

[IC-988] Update API docs for v1.19.0 chain upgrade#185
aarmoa merged 2 commits into
mainfrom
ic-988/update-api-docs-for-v1190-chain-upgrade

Conversation

@aarmoa
Copy link
Copy Markdown
Contributor

@aarmoa aarmoa commented Apr 28, 2026

  • Update API docs for v1.19.0 chain upgrade

Summary by CodeRabbit

  • Chores
    • Bumped chain/indexer and SDK versions (chain v1.19.0; Python v1.14.0; Go v1.61.0) and related build refs.
  • Documentation
    • Added voucher gRPC queries and MsgClaimVoucher docs with examples.
    • Updated many code examples to load env and read private key from environment.
    • Simplified type names across numerous auto-generated API tables for readability.
  • Changelog
    • Added 2026-04-28 release entry documenting version bumps.

@linear
Copy link
Copy Markdown

linear Bot commented Apr 28, 2026

@coderabbitai
Copy link
Copy Markdown

coderabbitai Bot commented Apr 28, 2026

Caution

Review failed

The pull request is closed.

ℹ️ Recent review info
⚙️ Run configuration

Configuration used: defaults

Review profile: CHILL

Plan: Pro

Run ID: 82bd00aa-ae9d-41af-b472-7063a16d4db9

📥 Commits

Reviewing files that changed from the base of the PR and between 9a981ce and b66ad16.

📒 Files selected for processing (2)
  • source/includes/_auction.md
  • source/includes/_insurance.md

📝 Walkthrough

Walkthrough

Updated pinned dependency versions in the Makefile, refined proto discovery logic in a script, standardized Go examples to load environment variables for private keys, added voucher-related auction/insurance docs, and simplified many auto-generated JSON/table type names across documentation files.

Changes

Cohort / File(s) Summary
Dependency Version Updates
Makefile
Bumped version pins for 8 dependencies (Cosmos SDK, Injective Core, Indexer, IBC-Go, CometBFT, Wasmd, Python SDK, Go SDK).
Proto discovery script
scripts/generate_proto_json_files.sh
Reworked get_type trimming to drop package qualifiers; changed module processing to check for root *.pb.go files and recurse when types/ namespace files are located.
Go examples: env-based config
source/includes/_*.md (many includes listed below)*
Added github.com/joho/godotenv import and godotenv.Load() calls in embedded Go examples, and changed key input to os.Getenv("INJECTIVE_PRIVATE_KEY") instead of hardcoded private keys across ~22 include files.
New voucher docs & msg
source/includes/_auction.md, source/includes/_insurance.md
Added QueryVouchers, QueryVoucher, and MsgClaimVoucher documentation, examples, and request/response tables; added TxResponse/ABCIMessageLog tables.
Type-name simplification in docs
Many include files and JSON tables (e.g., _chainstream.md, _derivativesrpc.md, _spotrpc.md, _changelog.md, _errors.md, _explorerrpc.md)
Rewrote rendered type strings in autogenerated tables: removed package/version qualifiers (e.g., types.*/v1.*/cosmossdk_io_math.*Any/TxResponse/Event array/Int/LegacyDec/Coin etc.); updated several field descriptions and error tables.
JSON tables — CometBFT / ABCI / consensus / state / types
source/json_tables/cometbft/abci/..., .../blocksync/..., .../consensus/..., .../privval/..., .../rpc/..., .../services/..., .../state/..., .../types/...
Normalized type strings across many CometBFT-related JSON table files: removed versioned prefixes and fully-qualified package paths; mapped time.TimeTime, time.DurationDuration, and simplified array/type annotations.
JSON tables — Cosmos SDK modules
source/json_tables/cosmos/... (auth, authz, bank, distribution, evidence, cmtservice, etc.)
Applied analogous simplifications across numerous Cosmos JSON table files: types.AnyAny, query.PageRequest/PageResponsePageRequest/PageResponse, github_com_cosmos_cosmos_sdk_types.CoinsCoins, cosmossdk_io_math.Int/LegacyDecInt/LegacyDec, and similar.
Documentation: misc updates
source/includes/_derivativesrpc.md, _explorerrpc.md, _errors.md, _changelog.md, _spotrpc.md, etc.
Adjusted field descriptions (e.g., execution_side values), added memo field in some TxData tables, updated error tables (added Vouchers module error, adjusted evm error), and added changelog entry for 2026-04-28 noting v1.19.0/indexer and SDK bumps.

*Files with Go env/key changes include (non-exhaustive): source/includes/_account.md, _auction.md, _authz.md, _bank.md, _binaryoptions.md, _chainexchange.md, _chainstream.md, _erc20.md, _evm.md, _ibccorechannel.md, _ibccoreclient.md, _ibccoreconnection.md, _ibctransfer.md, _insurance.md, _oracle.md, _oraclerpc.md, _permissions.md, _spot.md, _spotrpc.md, _staking.md, _tendermint.md, _tokenfactory.md, _txfees.md, _wasm.md, _wasmx.md.

Sequence Diagram(s)

(omitted — changes do not introduce a new multi-component runtime control flow requiring a sequence diagram)

Estimated Code Review Effort

🎯 4 (Complex) | ⏱️ ~60 minutes

Poem

🐰 A hop, a bump, versions set just right,
Secrets tucked in .env for safe night,
Proto paths pruned, doc types made lean,
Vouchers and claims now added to the scene,
I nibble the changelog — everything’s bright!

✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch ic-988/update-api-docs-for-v1190-chain-upgrade

Copy link
Copy Markdown

@coderabbitai coderabbitai Bot left a comment

Choose a reason for hiding this comment

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

Actionable comments posted: 8

Caution

Some comments are outside the diff and can’t be posted inline due to platform limitations.

⚠️ Outside diff range comments (3)
source/includes/_authz.md (1)

404-425: ⚠️ Potential issue | 🟠 Major

Use distinct private-key env vars for granter and grantee in MsgExec example.

Both InitCosmosKeyring calls currently read INJECTIVE_PRIVATE_KEY, so the example cannot represent two principals reliably (and conflicts with the delegated-execution narrative).

🔧 Proposed fix
 	granterAddress, _, err := chainclient.InitCosmosKeyring(
 		os.Getenv("HOME")+"/.injectived",
 		"injectived",
 		"file",
-		"inj-user",
+		"inj-granter",
 		"12345678",
-		os.Getenv("INJECTIVE_PRIVATE_KEY"), // keyring will be used if pk not provided
+		os.Getenv("INJECTIVE_GRANTER_PRIVATE_KEY"), // keyring will be used if pk not provided
 		false,
 	)
@@
 	senderAddress, cosmosKeyring, err := chainclient.InitCosmosKeyring(
 		os.Getenv("HOME")+"/.injectived",
 		"injectived",
 		"file",
-		"inj-user",
+		"inj-grantee",
 		"12345678",
-		os.Getenv("INJECTIVE_PRIVATE_KEY"), // keyring will be used if pk not provided
+		os.Getenv("INJECTIVE_GRANTEE_PRIVATE_KEY"), // keyring will be used if pk not provided
 		false,
 	)
🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In `@source/includes/_authz.md` around lines 404 - 425, The example uses the same
env var INJECTIVE_PRIVATE_KEY for both InitCosmosKeyring calls (granterAddress
and senderAddress), which prevents showing two distinct principals; update the
second call to use a different env var (e.g., INJECTIVE_PRIVATE_KEY_GRANTEE or
INJECTIVE_PRIVATE_KEY_SENDER) and adjust any surrounding comments to reflect
granter vs grantee so that InitCosmosKeyring is invoked with two distinct
private-key environment variables for granter and grantee.
source/includes/_bank.md (1)

102-116: ⚠️ Potential issue | 🟡 Minor

Document runtime prerequisites for env-based auth.

Lines 102 and 115 moved credentials to env-based loading, but this section does not tell readers to set INJECTIVE_PRIVATE_KEY (or .env) before running examples. That causes avoidable run failures/confusion.

🛠️ Suggested docs addition (apply in the generator/template so all snippets get it)
 ### Request Parameters
 > Request Example:
+>
+> **Prerequisites**
+> - Set `INJECTIVE_PRIVATE_KEY` in your shell or `.env` file.
+> - Ensure your environment is loaded before running the Go examples.
🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In `@source/includes/_bank.md` around lines 102 - 116, Add a short runtime
prerequisites note telling users to set the INJECTIVE_PRIVATE_KEY env (or
provide a .env file) before running the examples that call godotenv.Load() and
chainclient.InitCosmosKeyring; mention that InitCosmosKeyring will fallback to
the file keyring only if INJECTIVE_PRIVATE_KEY is absent, show the required env
variable name (INJECTIVE_PRIVATE_KEY) and briefly how to provide it (export
INJECTIVE_PRIVATE_KEY or place it in .env) so examples that call godotenv.Load()
and use network/TmEndpoint succeed.
source/includes/_permissions.md (1)

2048-2048: ⚠️ Potential issue | 🟠 Major

Fix incorrect RPC method in PolicyManagerCapabilities example.

Line 2048 calls FetchPermissionsPolicyStatuses, but the PolicyManagerCapabilities section should use FetchPermissionsPolicyManagerCapabilities (consistent with the Python SDK example in the same section).

Diff
-	res, err := chainClient.FetchPermissionsPolicyStatuses(ctx, denom)
+	res, err := chainClient.FetchPermissionsPolicyManagerCapabilities(ctx, denom)
🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In `@source/includes/_permissions.md` at line 2048, The example in the
PolicyManagerCapabilities section incorrectly calls
chainClient.FetchPermissionsPolicyStatuses; change this call to
chainClient.FetchPermissionsPolicyManagerCapabilities so it matches the Python
SDK example and the intended RPC, and update any variable names or expected
return handling in that example to match the
FetchPermissionsPolicyManagerCapabilities signature (e.g., response and error
handling) to ensure the example compiles and accurately demonstrates
PolicyManagerCapabilities usage.
🧹 Nitpick comments (6)
source/json_tables/cometbft/abci/v1beta2/Request_Commit.json (1)

5-5: Consider adding a description.

The Description field is empty, which may reduce documentation value for API consumers. While this is a pre-existing issue, adding a brief description of the commit parameter would improve the documentation quality.

🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In `@source/json_tables/cometbft/abci/v1beta2/Request_Commit.json` at line 5, The
Request_Commit JSON currently has an empty "Description" for the Request_Commit
object; update the "Description" field in Request_Commit.json to a concise
sentence explaining what the commit request represents (e.g., that it requests
the node to commit the current state and return the commit response including
last block height and state hash) so API consumers understand the purpose of
Request_Commit and its returned commit parameters.
source/json_tables/cosmos/auth/QueryAccountsResponse.json (1)

4-4: Consider disambiguating Any array for reader clarity.

PageResponse is great, but Any array can be interpreted generically. Consider a clearer label (e.g., protobuf.Any array) or a short description note to avoid ambiguity for API consumers.

Also applies to: 9-9

🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In `@source/json_tables/cosmos/auth/QueryAccountsResponse.json` at line 4, Update
the ambiguous type label "Any array" in the JSON schema to a clearer description
so readers know it refers to protobuf Any messages (e.g., change the Type value
from "Any array" to "protobuf.Any array" or "array of protobuf Any"); apply the
same change where "Any array" appears (including the other occurrence noted) and
optionally add a short description field or comment mentioning these are
protobuf Any messages used for heterogeneous account payloads to avoid ambiguity
for API consumers referencing PageResponse.
source/includes/_derivativesrpc.md (1)

1853-1853: Consider clearer enum formatting for execution_side.

The new values are correct, but formatting them with spaces/backticks would improve readability in generated docs (e.g., maker, taker, n/a).

Also applies to: 2191-2191, 4410-4410

🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In `@source/includes/_derivativesrpc.md` at line 1853, Update the description for
the execution_side parameter to show the enum values as inline code and
separated by commas (e.g., `maker`, `taker`, `n/a`) so generated docs render
clearly; specifically edit the execution_side description text (symbol:
execution_side) to use backticks around each value and include spaces after
commas and apply the same change to the other two occurrences referenced (the
other execution_side entries around the noted locations).
source/includes/_staking.md (1)

1385-1387: Standardize PrivateKey import path across Python snippets.

The file uses both from pyinjective import PrivateKey and from pyinjective.wallet import PrivateKey. Per official pyinjective documentation (v1.13.1), the canonical import is from pyinjective.wallet import PrivateKey. Update lines 1385–1387 and 2041–2043 to use this standard path for consistency.

🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In `@source/includes/_staking.md` around lines 1385 - 1387, Replace the
non-canonical PrivateKey import so all Python snippets use the documented path:
change any occurrence of "from pyinjective import PrivateKey" to "from
pyinjective.wallet import PrivateKey" (e.g., the snippet that currently imports
PrivateKey with AsyncClient and MsgBroadcasterWithPk and the later similar
snippet around the AsyncClient usage); keep the other imports (AsyncClient,
MsgBroadcasterWithPk) unchanged.
source/includes/_wasm.md (1)

1938-1938: Consider harmonizing Coins vs Coin terminology in adjacent docs sections.

Nearby sections use both Coins and Coin; picking one convention (e.g., Coin array) would reduce reader ambiguity.

Also applies to: 1947-1947, 2093-2093, 2102-2102

🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In `@source/includes/_wasm.md` at line 1938, The doc uses both "Coins" and "Coin"
for the same concept (see the funds parameter type shown as "Coins");
standardize the terminology across the WASM docs by replacing all occurrences of
"Coins" and lone "Coin" type labels (including the funds parameter and the
nearby entries) with a single consistent form such as "Coin array" or "Coin[]"
(choose one convention and apply it consistently to the funds parameter and the
other mentioned occurrences).
source/includes/_auction.md (1)

57-57: Handle godotenv.Load() errors for better developer experience.

The error from godotenv.Load() is silently discarded. If the .env file is missing or malformed, the code will continue with empty environment variables, potentially causing cryptic failures later when os.Getenv("INJECTIVE_PRIVATE_KEY") returns an empty string.

🔍 Suggested improvement
-	_ = godotenv.Load()
+	if err := godotenv.Load(); err != nil {
+		// .env file is optional, but log if there's an issue loading it
+		fmt.Printf("Warning: Error loading .env file: %v\n", err)
+	}
🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In `@source/includes/_auction.md` at line 57, The call that discards the error
from godotenv.Load() should handle failures: replace "_ = godotenv.Load()" with
code that captures the returned error from godotenv.Load(), checks it, and
either logs a clear error (including the error value) and exits (e.g.,
log.Fatalf / process exit) or returns the error up the stack so the program
fails fast when the .env cannot be loaded; reference the godotenv.Load() call
and any downstream use of os.Getenv("INJECTIVE_PRIVATE_KEY") to ensure you
surface a helpful message like "failed to load .env" plus the underlying error.
🤖 Prompt for all review comments with AI agents
Verify each finding against the current code and only fix it if needed.

Inline comments:
In `@Makefile`:
- Around line 2-23: INJECTIVE_CORE_REPO and INDEXER_REPO point to non-existent
GitHub URLs and will break the build; locate the correct repositories or
organization (or their new names) and update the Makefile variables
INJECTIVE_CORE_REPO and INDEXER_REPO to the valid GitHub repository URLs, and if
the tags v1.19.0 don't exist there also update INJECTIVE_CORE_VERSION and
INDEXER_VERSION to the correct tags (or remove pinning), then re-run a git/tag
check to ensure the URLs and versions resolve successfully.

In `@scripts/generate_proto_json_files.sh`:
- Around line 450-457: The branch logic can skip nested .pb.go files and the
find pipeline is fragile; modify the conditionals so you do not use an elif that
prevents both checks — e.g., first check for any .pb.go anywhere under
module_dir using find with -print -quit and test its exit status (avoid piping
to head/grep), and separately check for direct files with compgen to call
process_directory for root-level .pb.go and process_repository_modules for
nested/namespace modules (or run both paths as appropriate); update the find
invocation to use "find \"$module_dir\" -name \"*.pb.go\" -type f -print -quit"
and use its exit code to decide calling process_repository_modules, while
keeping process_directory invocation for direct matches (functions:
process_directory, process_repository_modules; variable: module_dir,
module_name).

In `@source/includes/_account.md`:
- Line 208: Update the parameter description for tx_response to use singular
phrasing: replace "tx_response is the queried TxResponses." with "tx_response is
the queried TxResponse." and apply the same singular fix for every other
occurrence where the tx_response parameter description currently uses "queried
TxResponses" so all descriptions for the tx_response parameter are consistent
and singular.

In `@source/includes/_derivativesrpc.md`:
- Line 2528: The upnl field description contains a duplicated word "with
with_upnl=true"; update the description for the parameter named "upnl" in
source/includes/_derivativesrpc.md to remove the duplicate and use correct
phrasing (e.g., "only present when requested with upnl=true" or "only present
when with_upnl=true" consistently), and fix the same duplicated wording at the
other occurrence mentioned (the second "upnl" description around the later
occurrence). Ensure both occurrences reference the same, corrected form.

In `@source/includes/_insurance.md`:
- Around line 122-124: There are empty response example JSON blocks in
source/includes/_insurance.md (notably the three empty ```json``` blocks around
the new endpoint sections); replace each empty block with concrete sample
response payloads that match the endpoint schemas (include typical fields, data
types, nested objects/arrays, and an example of success and common error
response where relevant), locating the blocks by looking for the empty
triple-backtick json fences under the new endpoint headings in that file and
updating them with realistic example JSON bodies that consumers can use for
integration testing.

In `@source/includes/_oraclerpc.md`:
- Line 697: Heading "StreamPricesByMarket" is inconsistent with the RPC/method
name used elsewhere; change the section title to "StreamPricesByMarkets" so it
matches the request file and examples, and update any in-page references or
links that point to the old singular name (look for occurrences of
StreamPricesByMarket and replace them with StreamPricesByMarkets).

In `@source/includes/_tendermint.md`:
- Line 1268: Update the pagination description text in
source/includes/_tendermint.md: replace the incorrect phrase "defines an
pagination for the request." with "defines a pagination for the request." for
the table entry where the Parameter is "pagination" (and likewise fix the same
phrase in the other occurrences referenced around the file, e.g., the rows at
the other instances noted); ensure the exact wording change is applied to each
table cell containing "defines an pagination" so all occurrences are corrected.

In `@source/includes/_tokenfactory.md`:
- Line 578: The parameter docs for denom_creation_fee use an inconsistent type
name ("Coins") while nearby documentation uses "Coin"; update the
denom_creation_fee type to a consistent representation — either change "Coins"
to "Coin array" in the parameter table for denom_creation_fee, or add a
dedicated "Coins" type block that documents it as an array alias; ensure
references to denom_creation_fee and the Coin/Coin array naming are consistent
across this section.

---

Outside diff comments:
In `@source/includes/_authz.md`:
- Around line 404-425: The example uses the same env var INJECTIVE_PRIVATE_KEY
for both InitCosmosKeyring calls (granterAddress and senderAddress), which
prevents showing two distinct principals; update the second call to use a
different env var (e.g., INJECTIVE_PRIVATE_KEY_GRANTEE or
INJECTIVE_PRIVATE_KEY_SENDER) and adjust any surrounding comments to reflect
granter vs grantee so that InitCosmosKeyring is invoked with two distinct
private-key environment variables for granter and grantee.

In `@source/includes/_bank.md`:
- Around line 102-116: Add a short runtime prerequisites note telling users to
set the INJECTIVE_PRIVATE_KEY env (or provide a .env file) before running the
examples that call godotenv.Load() and chainclient.InitCosmosKeyring; mention
that InitCosmosKeyring will fallback to the file keyring only if
INJECTIVE_PRIVATE_KEY is absent, show the required env variable name
(INJECTIVE_PRIVATE_KEY) and briefly how to provide it (export
INJECTIVE_PRIVATE_KEY or place it in .env) so examples that call godotenv.Load()
and use network/TmEndpoint succeed.

In `@source/includes/_permissions.md`:
- Line 2048: The example in the PolicyManagerCapabilities section incorrectly
calls chainClient.FetchPermissionsPolicyStatuses; change this call to
chainClient.FetchPermissionsPolicyManagerCapabilities so it matches the Python
SDK example and the intended RPC, and update any variable names or expected
return handling in that example to match the
FetchPermissionsPolicyManagerCapabilities signature (e.g., response and error
handling) to ensure the example compiles and accurately demonstrates
PolicyManagerCapabilities usage.

---

Nitpick comments:
In `@source/includes/_auction.md`:
- Line 57: The call that discards the error from godotenv.Load() should handle
failures: replace "_ = godotenv.Load()" with code that captures the returned
error from godotenv.Load(), checks it, and either logs a clear error (including
the error value) and exits (e.g., log.Fatalf / process exit) or returns the
error up the stack so the program fails fast when the .env cannot be loaded;
reference the godotenv.Load() call and any downstream use of
os.Getenv("INJECTIVE_PRIVATE_KEY") to ensure you surface a helpful message like
"failed to load .env" plus the underlying error.

In `@source/includes/_derivativesrpc.md`:
- Line 1853: Update the description for the execution_side parameter to show the
enum values as inline code and separated by commas (e.g., `maker`, `taker`,
`n/a`) so generated docs render clearly; specifically edit the execution_side
description text (symbol: execution_side) to use backticks around each value and
include spaces after commas and apply the same change to the other two
occurrences referenced (the other execution_side entries around the noted
locations).

In `@source/includes/_staking.md`:
- Around line 1385-1387: Replace the non-canonical PrivateKey import so all
Python snippets use the documented path: change any occurrence of "from
pyinjective import PrivateKey" to "from pyinjective.wallet import PrivateKey"
(e.g., the snippet that currently imports PrivateKey with AsyncClient and
MsgBroadcasterWithPk and the later similar snippet around the AsyncClient
usage); keep the other imports (AsyncClient, MsgBroadcasterWithPk) unchanged.

In `@source/includes/_wasm.md`:
- Line 1938: The doc uses both "Coins" and "Coin" for the same concept (see the
funds parameter type shown as "Coins"); standardize the terminology across the
WASM docs by replacing all occurrences of "Coins" and lone "Coin" type labels
(including the funds parameter and the nearby entries) with a single consistent
form such as "Coin array" or "Coin[]" (choose one convention and apply it
consistently to the funds parameter and the other mentioned occurrences).

In `@source/json_tables/cometbft/abci/v1beta2/Request_Commit.json`:
- Line 5: The Request_Commit JSON currently has an empty "Description" for the
Request_Commit object; update the "Description" field in Request_Commit.json to
a concise sentence explaining what the commit request represents (e.g., that it
requests the node to commit the current state and return the commit response
including last block height and state hash) so API consumers understand the
purpose of Request_Commit and its returned commit parameters.

In `@source/json_tables/cosmos/auth/QueryAccountsResponse.json`:
- Line 4: Update the ambiguous type label "Any array" in the JSON schema to a
clearer description so readers know it refers to protobuf Any messages (e.g.,
change the Type value from "Any array" to "protobuf.Any array" or "array of
protobuf Any"); apply the same change where "Any array" appears (including the
other occurrence noted) and optionally add a short description field or comment
mentioning these are protobuf Any messages used for heterogeneous account
payloads to avoid ambiguity for API consumers referencing PageResponse.
🪄 Autofix (Beta)

Fix all unresolved CodeRabbit comments on this PR:

  • Push a commit to this branch (recommended)
  • Create a new PR with the fixes

ℹ️ Review info
⚙️ Run configuration

Configuration used: defaults

Review profile: CHILL

Plan: Pro

Run ID: 7a075e69-230d-41cb-92d4-0298a7484083

📥 Commits

Reviewing files that changed from the base of the PR and between a04a09c and 9a981ce.

📒 Files selected for processing (300)
  • Makefile
  • scripts/generate_proto_json_files.sh
  • source/includes/_account.md
  • source/includes/_auction.md
  • source/includes/_authz.md
  • source/includes/_bank.md
  • source/includes/_binaryoptions.md
  • source/includes/_chainexchange.md
  • source/includes/_chainstream.md
  • source/includes/_changelog.md
  • source/includes/_derivatives.md
  • source/includes/_derivativesrpc.md
  • source/includes/_erc20.md
  • source/includes/_errors.md
  • source/includes/_evm.md
  • source/includes/_explorerrpc.md
  • source/includes/_ibccorechannel.md
  • source/includes/_ibccoreclient.md
  • source/includes/_ibccoreconnection.md
  • source/includes/_ibctransfer.md
  • source/includes/_insurance.md
  • source/includes/_oracle.md
  • source/includes/_oraclerpc.md
  • source/includes/_permissions.md
  • source/includes/_spot.md
  • source/includes/_spotrpc.md
  • source/includes/_staking.md
  • source/includes/_tendermint.md
  • source/includes/_tokenfactory.md
  • source/includes/_txfees.md
  • source/includes/_wasm.md
  • source/includes/_wasmx.md
  • source/json_tables/cometbft/abci/v1/ExtendVoteRequest.json
  • source/json_tables/cometbft/abci/v1/ExtendedVoteInfo.json
  • source/json_tables/cometbft/abci/v1/FinalizeBlockRequest.json
  • source/json_tables/cometbft/abci/v1/FinalizeBlockResponse.json
  • source/json_tables/cometbft/abci/v1/InitChainRequest.json
  • source/json_tables/cometbft/abci/v1/InitChainResponse.json
  • source/json_tables/cometbft/abci/v1/Misbehavior.json
  • source/json_tables/cometbft/abci/v1/PrepareProposalRequest.json
  • source/json_tables/cometbft/abci/v1/ProcessProposalRequest.json
  • source/json_tables/cometbft/abci/v1/QueryResponse.json
  • source/json_tables/cometbft/abci/v1/VoteInfo.json
  • source/json_tables/cometbft/abci/v1beta1/ConsensusParams.json
  • source/json_tables/cometbft/abci/v1beta1/Evidence.json
  • source/json_tables/cometbft/abci/v1beta1/RequestBeginBlock.json
  • source/json_tables/cometbft/abci/v1beta1/RequestInitChain.json
  • source/json_tables/cometbft/abci/v1beta1/ResponseQuery.json
  • source/json_tables/cometbft/abci/v1beta1/ValidatorUpdate.json
  • source/json_tables/cometbft/abci/v1beta2/CommitInfo.json
  • source/json_tables/cometbft/abci/v1beta2/ExtendedVoteInfo.json
  • source/json_tables/cometbft/abci/v1beta2/Misbehavior.json
  • source/json_tables/cometbft/abci/v1beta2/RequestBeginBlock.json
  • source/json_tables/cometbft/abci/v1beta2/RequestInitChain.json
  • source/json_tables/cometbft/abci/v1beta2/RequestPrepareProposal.json
  • source/json_tables/cometbft/abci/v1beta2/RequestProcessProposal.json
  • source/json_tables/cometbft/abci/v1beta2/Request_ApplySnapshotChunk.json
  • source/json_tables/cometbft/abci/v1beta2/Request_CheckTx.json
  • source/json_tables/cometbft/abci/v1beta2/Request_Commit.json
  • source/json_tables/cometbft/abci/v1beta2/Request_DeliverTx.json
  • source/json_tables/cometbft/abci/v1beta2/Request_Echo.json
  • source/json_tables/cometbft/abci/v1beta2/Request_EndBlock.json
  • source/json_tables/cometbft/abci/v1beta2/Request_Flush.json
  • source/json_tables/cometbft/abci/v1beta2/Request_ListSnapshots.json
  • source/json_tables/cometbft/abci/v1beta2/Request_LoadSnapshotChunk.json
  • source/json_tables/cometbft/abci/v1beta2/Request_OfferSnapshot.json
  • source/json_tables/cometbft/abci/v1beta2/Request_Query.json
  • source/json_tables/cometbft/abci/v1beta2/ResponseEndBlock.json
  • source/json_tables/cometbft/abci/v1beta2/ResponseInitChain.json
  • source/json_tables/cometbft/abci/v1beta2/Response_ApplySnapshotChunk.json
  • source/json_tables/cometbft/abci/v1beta2/Response_Commit.json
  • source/json_tables/cometbft/abci/v1beta2/Response_Echo.json
  • source/json_tables/cometbft/abci/v1beta2/Response_Exception.json
  • source/json_tables/cometbft/abci/v1beta2/Response_Flush.json
  • source/json_tables/cometbft/abci/v1beta2/Response_Info.json
  • source/json_tables/cometbft/abci/v1beta2/Response_ListSnapshots.json
  • source/json_tables/cometbft/abci/v1beta2/Response_LoadSnapshotChunk.json
  • source/json_tables/cometbft/abci/v1beta2/Response_OfferSnapshot.json
  • source/json_tables/cometbft/abci/v1beta2/Response_Query.json
  • source/json_tables/cometbft/abci/v1beta3/ExecTxResult.json
  • source/json_tables/cometbft/abci/v1beta3/ExtendedVoteInfo.json
  • source/json_tables/cometbft/abci/v1beta3/RequestExtendVote.json
  • source/json_tables/cometbft/abci/v1beta3/RequestFinalizeBlock.json
  • source/json_tables/cometbft/abci/v1beta3/RequestInitChain.json
  • source/json_tables/cometbft/abci/v1beta3/RequestPrepareProposal.json
  • source/json_tables/cometbft/abci/v1beta3/RequestProcessProposal.json
  • source/json_tables/cometbft/abci/v1beta3/Request_ApplySnapshotChunk.json
  • source/json_tables/cometbft/abci/v1beta3/Request_CheckTx.json
  • source/json_tables/cometbft/abci/v1beta3/Request_Commit.json
  • source/json_tables/cometbft/abci/v1beta3/Request_Echo.json
  • source/json_tables/cometbft/abci/v1beta3/Request_Flush.json
  • source/json_tables/cometbft/abci/v1beta3/Request_Info.json
  • source/json_tables/cometbft/abci/v1beta3/Request_ListSnapshots.json
  • source/json_tables/cometbft/abci/v1beta3/Request_LoadSnapshotChunk.json
  • source/json_tables/cometbft/abci/v1beta3/Request_OfferSnapshot.json
  • source/json_tables/cometbft/abci/v1beta3/Request_Query.json
  • source/json_tables/cometbft/abci/v1beta3/ResponseCheckTx.json
  • source/json_tables/cometbft/abci/v1beta3/ResponseFinalizeBlock.json
  • source/json_tables/cometbft/abci/v1beta3/ResponseInitChain.json
  • source/json_tables/cometbft/abci/v1beta3/Response_ApplySnapshotChunk.json
  • source/json_tables/cometbft/abci/v1beta3/Response_Echo.json
  • source/json_tables/cometbft/abci/v1beta3/Response_Exception.json
  • source/json_tables/cometbft/abci/v1beta3/Response_Flush.json
  • source/json_tables/cometbft/abci/v1beta3/Response_Info.json
  • source/json_tables/cometbft/abci/v1beta3/Response_ListSnapshots.json
  • source/json_tables/cometbft/abci/v1beta3/Response_LoadSnapshotChunk.json
  • source/json_tables/cometbft/abci/v1beta3/Response_OfferSnapshot.json
  • source/json_tables/cometbft/abci/v1beta3/Response_PrepareProposal.json
  • source/json_tables/cometbft/abci/v1beta3/Response_ProcessProposal.json
  • source/json_tables/cometbft/abci/v1beta3/Response_Query.json
  • source/json_tables/cometbft/abci/v1beta3/VoteInfo.json
  • source/json_tables/cometbft/blocksync/v1/BlockResponse.json
  • source/json_tables/cometbft/blocksync/v1beta1/BlockResponse.json
  • source/json_tables/cometbft/consensus/v1/BlockPart.json
  • source/json_tables/cometbft/consensus/v1/HasVote.json
  • source/json_tables/cometbft/consensus/v1/MsgInfo.json
  • source/json_tables/cometbft/consensus/v1/NewValidBlock.json
  • source/json_tables/cometbft/consensus/v1/Proposal.json
  • source/json_tables/cometbft/consensus/v1/ProposalPOL.json
  • source/json_tables/cometbft/consensus/v1/TimedWALMessage.json
  • source/json_tables/cometbft/consensus/v1/TimeoutInfo.json
  • source/json_tables/cometbft/consensus/v1/Vote.json
  • source/json_tables/cometbft/consensus/v1/VoteSetBits.json
  • source/json_tables/cometbft/consensus/v1/VoteSetMaj23.json
  • source/json_tables/cometbft/consensus/v1/WALMessage_EventDataRoundState.json
  • source/json_tables/cometbft/consensus/v1beta1/BlockPart.json
  • source/json_tables/cometbft/consensus/v1beta1/HasVote.json
  • source/json_tables/cometbft/consensus/v1beta1/NewValidBlock.json
  • source/json_tables/cometbft/consensus/v1beta1/Proposal.json
  • source/json_tables/cometbft/consensus/v1beta1/ProposalPOL.json
  • source/json_tables/cometbft/consensus/v1beta1/TimedWALMessage.json
  • source/json_tables/cometbft/consensus/v1beta1/TimeoutInfo.json
  • source/json_tables/cometbft/consensus/v1beta1/Vote.json
  • source/json_tables/cometbft/consensus/v1beta1/VoteSetBits.json
  • source/json_tables/cometbft/consensus/v1beta1/VoteSetMaj23.json
  • source/json_tables/cometbft/consensus/v1beta1/WALMessage_EventDataRoundState.json
  • source/json_tables/cometbft/p2p/v1/AuthSigMessage.json
  • source/json_tables/cometbft/privval/v1/SignProposalRequest.json
  • source/json_tables/cometbft/privval/v1/SignVoteRequest.json
  • source/json_tables/cometbft/privval/v1/SignedProposalResponse.json
  • source/json_tables/cometbft/privval/v1/SignedVoteResponse.json
  • source/json_tables/cometbft/privval/v1beta1/PubKeyResponse.json
  • source/json_tables/cometbft/privval/v1beta1/SignProposalRequest.json
  • source/json_tables/cometbft/privval/v1beta1/SignVoteRequest.json
  • source/json_tables/cometbft/privval/v1beta1/SignedProposalResponse.json
  • source/json_tables/cometbft/privval/v1beta1/SignedVoteResponse.json
  • source/json_tables/cometbft/privval/v1beta2/PubKeyResponse.json
  • source/json_tables/cometbft/privval/v1beta2/SignProposalRequest.json
  • source/json_tables/cometbft/privval/v1beta2/SignVoteRequest.json
  • source/json_tables/cometbft/privval/v1beta2/SignedProposalResponse.json
  • source/json_tables/cometbft/privval/v1beta2/SignedVoteResponse.json
  • source/json_tables/cometbft/rpc/grpc/v1beta1/ResponseBroadcastTx.json
  • source/json_tables/cometbft/rpc/grpc/v1beta2/ResponseBroadcastTx.json
  • source/json_tables/cometbft/rpc/grpc/v1beta3/ResponseBroadcastTx.json
  • source/json_tables/cometbft/services/block/v1/GetByHeightResponse.json
  • source/json_tables/cometbft/services/block_results/v1/GetBlockResultsResponse.json
  • source/json_tables/cometbft/state/v1/ABCIResponsesInfo.json
  • source/json_tables/cometbft/state/v1/ConsensusParamsInfo.json
  • source/json_tables/cometbft/state/v1/LegacyABCIResponses.json
  • source/json_tables/cometbft/state/v1/ResponseBeginBlock.json
  • source/json_tables/cometbft/state/v1/ResponseEndBlock.json
  • source/json_tables/cometbft/state/v1/State.json
  • source/json_tables/cometbft/state/v1/ValidatorsInfo.json
  • source/json_tables/cometbft/state/v1/Version.json
  • source/json_tables/cometbft/state/v1beta1/ABCIResponses.json
  • source/json_tables/cometbft/state/v1beta1/ConsensusParamsInfo.json
  • source/json_tables/cometbft/state/v1beta1/State.json
  • source/json_tables/cometbft/state/v1beta1/ValidatorsInfo.json
  • source/json_tables/cometbft/state/v1beta1/Version.json
  • source/json_tables/cometbft/state/v1beta2/ABCIResponses.json
  • source/json_tables/cometbft/state/v1beta2/ConsensusParamsInfo.json
  • source/json_tables/cometbft/state/v1beta2/State.json
  • source/json_tables/cometbft/state/v1beta3/ABCIResponsesInfo.json
  • source/json_tables/cometbft/state/v1beta3/ConsensusParamsInfo.json
  • source/json_tables/cometbft/state/v1beta3/LegacyABCIResponses.json
  • source/json_tables/cometbft/state/v1beta3/ResponseBeginBlock.json
  • source/json_tables/cometbft/state/v1beta3/ResponseEndBlock.json
  • source/json_tables/cometbft/state/v1beta3/State.json
  • source/json_tables/cometbft/types/v1/CanonicalProposal.json
  • source/json_tables/cometbft/types/v1/CanonicalVote.json
  • source/json_tables/cometbft/types/v1/CommitSig.json
  • source/json_tables/cometbft/types/v1/DuplicateVoteEvidence.json
  • source/json_tables/cometbft/types/v1/EvidenceParams.json
  • source/json_tables/cometbft/types/v1/ExtendedCommitSig.json
  • source/json_tables/cometbft/types/v1/FeatureParams.json
  • source/json_tables/cometbft/types/v1/Header.json
  • source/json_tables/cometbft/types/v1/LightClientAttackEvidence.json
  • source/json_tables/cometbft/types/v1/Part.json
  • source/json_tables/cometbft/types/v1/Proposal.json
  • source/json_tables/cometbft/types/v1/SimpleValidator.json
  • source/json_tables/cometbft/types/v1/SynchronyParams.json
  • source/json_tables/cometbft/types/v1/TxProof.json
  • source/json_tables/cometbft/types/v1/Validator.json
  • source/json_tables/cometbft/types/v1/Vote.json
  • source/json_tables/cometbft/types/v1beta1/CanonicalProposal.json
  • source/json_tables/cometbft/types/v1beta1/CanonicalVote.json
  • source/json_tables/cometbft/types/v1beta1/CommitSig.json
  • source/json_tables/cometbft/types/v1beta1/DuplicateVoteEvidence.json
  • source/json_tables/cometbft/types/v1beta1/EvidenceParams.json
  • source/json_tables/cometbft/types/v1beta1/Header.json
  • source/json_tables/cometbft/types/v1beta1/LightClientAttackEvidence.json
  • source/json_tables/cometbft/types/v1beta1/Part.json
  • source/json_tables/cometbft/types/v1beta1/Proposal.json
  • source/json_tables/cometbft/types/v1beta1/SimpleValidator.json
  • source/json_tables/cometbft/types/v1beta1/TxProof.json
  • source/json_tables/cometbft/types/v1beta1/Validator.json
  • source/json_tables/cometbft/types/v1beta1/Vote.json
  • source/json_tables/cometbft/types/v1beta2/ConsensusParams.json
  • source/json_tables/cosmos/Coin.json
  • source/json_tables/cosmos/DecCoin.json
  • source/json_tables/cosmos/DecProto.json
  • source/json_tables/cosmos/IntProto.json
  • source/json_tables/cosmos/Result.json
  • source/json_tables/cosmos/SearchBlocksResult.json
  • source/json_tables/cosmos/TxMsgData.json
  • source/json_tables/cosmos/TxResponse.json
  • source/json_tables/cosmos/auth/BaseAccount.json
  • source/json_tables/cosmos/auth/GenesisState.json
  • source/json_tables/cosmos/auth/QueryAccountResponse.json
  • source/json_tables/cosmos/auth/QueryAccountsRequest.json
  • source/json_tables/cosmos/auth/QueryAccountsResponse.json
  • source/json_tables/cosmos/auth/QueryModuleAccountByNameResponse.json
  • source/json_tables/cosmos/auth/QueryModuleAccountsResponse.json
  • source/json_tables/cosmos/authz/Grant.json
  • source/json_tables/cosmos/authz/GrantAuthorization.json
  • source/json_tables/cosmos/authz/MsgExec.json
  • source/json_tables/cosmos/authz/QueryGranteeGrantsRequest.json
  • source/json_tables/cosmos/authz/QueryGranteeGrantsResponse.json
  • source/json_tables/cosmos/authz/QueryGranterGrantsRequest.json
  • source/json_tables/cosmos/authz/QueryGranterGrantsResponse.json
  • source/json_tables/cosmos/authz/QueryGrantsRequest.json
  • source/json_tables/cosmos/authz/QueryGrantsResponse.json
  • source/json_tables/cosmos/bank/Balance.json
  • source/json_tables/cosmos/bank/BalanceUpdate.json
  • source/json_tables/cosmos/bank/DenomOwner.json
  • source/json_tables/cosmos/bank/GenesisState.json
  • source/json_tables/cosmos/bank/Input.json
  • source/json_tables/cosmos/bank/MsgSend.json
  • source/json_tables/cosmos/bank/Output.json
  • source/json_tables/cosmos/bank/QueryAllBalancesRequest.json
  • source/json_tables/cosmos/bank/QueryAllBalancesResponse.json
  • source/json_tables/cosmos/bank/QueryBalanceResponse.json
  • source/json_tables/cosmos/bank/QueryDenomOwnersByQueryRequest.json
  • source/json_tables/cosmos/bank/QueryDenomOwnersByQueryResponse.json
  • source/json_tables/cosmos/bank/QueryDenomOwnersRequest.json
  • source/json_tables/cosmos/bank/QueryDenomOwnersResponse.json
  • source/json_tables/cosmos/bank/QueryDenomsMetadataRequest.json
  • source/json_tables/cosmos/bank/QueryDenomsMetadataResponse.json
  • source/json_tables/cosmos/bank/QuerySendEnabledRequest.json
  • source/json_tables/cosmos/bank/QuerySendEnabledResponse.json
  • source/json_tables/cosmos/bank/QuerySpendableBalanceByDenomResponse.json
  • source/json_tables/cosmos/bank/QuerySpendableBalancesRequest.json
  • source/json_tables/cosmos/bank/QuerySpendableBalancesResponse.json
  • source/json_tables/cosmos/bank/QuerySupplyOfResponse.json
  • source/json_tables/cosmos/bank/QueryTotalSupplyRequest.json
  • source/json_tables/cosmos/bank/QueryTotalSupplyResponse.json
  • source/json_tables/cosmos/bank/SendAuthorization.json
  • source/json_tables/cosmos/bank/Supply.json
  • source/json_tables/cosmos/circuit/AccountsResponse.json
  • source/json_tables/cosmos/circuit/QueryAccountsRequest.json
  • source/json_tables/cosmos/cmtservice/Block.json
  • source/json_tables/cosmos/cmtservice/GetBlockByHeightResponse.json
  • source/json_tables/cosmos/cmtservice/GetLatestBlockResponse.json
  • source/json_tables/cosmos/cmtservice/GetLatestValidatorSetRequest.json
  • source/json_tables/cosmos/cmtservice/GetLatestValidatorSetResponse.json
  • source/json_tables/cosmos/cmtservice/GetNodeInfoResponse.json
  • source/json_tables/cosmos/cmtservice/GetValidatorSetByHeightRequest.json
  • source/json_tables/cosmos/cmtservice/GetValidatorSetByHeightResponse.json
  • source/json_tables/cosmos/cmtservice/Header.json
  • source/json_tables/cosmos/cmtservice/Validator.json
  • source/json_tables/cosmos/consensus/MsgUpdateParams.json
  • source/json_tables/cosmos/consensus/QueryParamsResponse.json
  • source/json_tables/cosmos/crisis/GenesisState.json
  • source/json_tables/cosmos/crisis/MsgUpdateParams.json
  • source/json_tables/cosmos/distribution/CommunityPoolSpendProposal.json
  • source/json_tables/cosmos/distribution/DelegationDelegatorReward.json
  • source/json_tables/cosmos/distribution/DelegatorStartingInfo.json
  • source/json_tables/cosmos/distribution/FeePool.json
  • source/json_tables/cosmos/distribution/MsgCommunityPoolSpend.json
  • source/json_tables/cosmos/distribution/MsgDepositValidatorRewardsPool.json
  • source/json_tables/cosmos/distribution/MsgFundCommunityPool.json
  • source/json_tables/cosmos/distribution/MsgWithdrawDelegatorRewardResponse.json
  • source/json_tables/cosmos/distribution/MsgWithdrawValidatorCommissionResponse.json
  • source/json_tables/cosmos/distribution/Params.json
  • source/json_tables/cosmos/distribution/QueryCommunityPoolResponse.json
  • source/json_tables/cosmos/distribution/QueryDelegationRewardsResponse.json
  • source/json_tables/cosmos/distribution/QueryDelegationTotalRewardsResponse.json
  • source/json_tables/cosmos/distribution/QueryValidatorDistributionInfoResponse.json
  • source/json_tables/cosmos/distribution/QueryValidatorSlashesRequest.json
  • source/json_tables/cosmos/distribution/QueryValidatorSlashesResponse.json
  • source/json_tables/cosmos/distribution/ValidatorAccumulatedCommission.json
  • source/json_tables/cosmos/distribution/ValidatorCurrentRewards.json
  • source/json_tables/cosmos/distribution/ValidatorHistoricalRewards.json
  • source/json_tables/cosmos/distribution/ValidatorOutstandingRewards.json
  • source/json_tables/cosmos/distribution/ValidatorOutstandingRewardsRecord.json
  • source/json_tables/cosmos/distribution/ValidatorSlashEvent.json
  • source/json_tables/cosmos/evidence/Equivocation.json
  • source/json_tables/cosmos/evidence/GenesisState.json
  • source/json_tables/cosmos/evidence/MsgSubmitEvidence.json
  • source/json_tables/cosmos/evidence/QueryAllEvidenceRequest.json

Comment thread Makefile
Comment on lines +2 to +23
COSMOS_SDK_VERSION := v0.50.14-inj.9
COSMOS_SDK_REPO := https://github.com/InjectiveLabs/cosmos-sdk.git

INJECTIVE_CORE_VERSION := v1.18.0
INJECTIVE_CORE_VERSION := v1.19.0
INJECTIVE_CORE_REPO := https://github.com/InjectiveLabs/injective-core.git

INDEXER_VERSION := v1.18.3
INDEXER_VERSION := v1.19.0
INDEXER_REPO := https://github.com/InjectiveLabs/injective-indexer.git

IBC_GO_VERSION := v8.7.0-inj.3
IBC_GO_VERSION := v8.7.0-inj.4
IBC_GO_REPO := https://github.com/InjectiveLabs/ibc-go.git

COMETBFT_VERSION := v1.0.1-inj.6
COMETBFT_VERSION := v1.0.1-inj.7
COMETBFT_REPO := https://github.com/InjectiveLabs/cometbft.git

WASMD_VERSION := v0.53.3-inj.2
WASMD_VERSION := v0.53.3-inj.3
WASMD_REPO := https://github.com/InjectiveLabs/wasmd.git

PYTHON_SDK_VERSION := v1.13.0
PYTHON_SDK_VERSION := v1.14.0
PYTHON_SDK_REPO := https://github.com/InjectiveLabs/sdk-python.git

GO_SDK_VERSION := v1.60.0
GO_SDK_VERSION := v1.61.0
Copy link
Copy Markdown

Choose a reason for hiding this comment

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

⚠️ Potential issue | 🔴 Critical

🧩 Analysis chain

🏁 Script executed:

#!/bin/bash
# Description: Verify all dependency version tags exist in their repositories

echo "Checking version tags..."

# Array of repo URLs and versions
declare -A repos=(
  ["https://github.com/InjectiveLabs/cosmos-sdk.git"]="v0.50.14-inj.9"
  ["https://github.com/InjectiveLabs/injective-core.git"]="v1.19.0"
  ["https://github.com/InjectiveLabs/injective-indexer.git"]="v1.19.0"
  ["https://github.com/InjectiveLabs/ibc-go.git"]="v8.7.0-inj.4"
  ["https://github.com/InjectiveLabs/cometbft.git"]="v1.0.1-inj.7"
  ["https://github.com/InjectiveLabs/wasmd.git"]="v0.53.3-inj.3"
  ["https://github.com/InjectiveLabs/sdk-python.git"]="v1.14.0"
  ["https://github.com/InjectiveLabs/sdk-go.git"]="v1.61.0"
)

failed=0
for repo in "${!repos[@]}"; do
  version="${repos[$repo]}"
  echo "Checking $repo for tag $version..."
  
  if git ls-remote --tags "$repo" | grep -q "refs/tags/$version"; then
    echo "✓ Found $version in $repo"
  else
    echo "✗ Tag $version NOT FOUND in $repo"
    failed=1
  fi
done

if [ $failed -eq 1 ]; then
  echo ""
  echo "ERROR: Some version tags were not found. Please verify the version numbers."
  exit 1
else
  echo ""
  echo "SUCCESS: All version tags exist in their repositories."
fi

Repository: InjectiveLabs/api-exchange-docs

Length of output: 1622


🏁 Script executed:

#!/bin/bash
# Check if the injective-core and injective-indexer repos are accessible via GitHub API
# and verify the exact repository status

echo "Checking repository accessibility via GitHub API..."
echo ""

# Function to check repo using curl to GitHub API
check_github_repo() {
  local repo_path=$1
  echo "Checking: $repo_path"
  
  # Try GitHub API endpoint
  status=$(curl -s -o /dev/null -w "%{http_code}" "https://api.github.com/repos/$repo_path")
  
  if [ "$status" = "200" ]; then
    echo "✓ Repository exists and is public"
    # Get latest releases/tags
    curl -s "https://api.github.com/repos/$repo_path/tags?per_page=5" | head -c 200
    echo ""
  elif [ "$status" = "404" ]; then
    echo "✗ Repository not found (404)"
  elif [ "$status" = "403" ]; then
    echo "⚠ Access forbidden (403) - may be private"
  else
    echo "⚠ Status: $status"
  fi
  echo ""
}

check_github_repo "InjectiveLabs/injective-core"
check_github_repo "InjectiveLabs/injective-indexer"

# Also check the Makefile to see if there's any additional context
echo "Checking Makefile for context..."
if [ -f "Makefile" ]; then
  echo "Makefile found. Checking relevant lines..."
  head -25 Makefile
fi

Repository: InjectiveLabs/api-exchange-docs

Length of output: 1151


Two dependency repositories do not exist on GitHub and will cause build failures.

Verification of dependency version tags reveals a critical issue: the repositories for injective-core (v1.19.0) and injective-indexer (v1.19.0) return 404 Not Found errors and cannot be accessed. The following six repositories were successfully verified:

  • cosmos-sdk: v0.50.14-inj.9 ✓
  • ibc-go: v8.7.0-inj.4 ✓
  • wasmd: v0.53.3-inj.3 ✓
  • sdk-python: v1.14.0 ✓
  • sdk-go: v1.61.0 ✓
  • cometbft: v1.0.1-inj.7 ✓

Correct the URLs for INJECTIVE_CORE_REPO and INDEXER_REPO or verify if these repositories have been renamed or moved to a different organization.

🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In `@Makefile` around lines 2 - 23, INJECTIVE_CORE_REPO and INDEXER_REPO point to
non-existent GitHub URLs and will break the build; locate the correct
repositories or organization (or their new names) and update the Makefile
variables INJECTIVE_CORE_REPO and INDEXER_REPO to the valid GitHub repository
URLs, and if the tags v1.19.0 don't exist there also update
INJECTIVE_CORE_VERSION and INDEXER_VERSION to the correct tags (or remove
pinning), then re-run a git/tag check to ensure the URLs and versions resolve
successfully.

Comment on lines +450 to 457
elif compgen -G "$module_dir/*.pb.go" > /dev/null 2>&1; then
echo "Processing module with direct .pb.go files: $module_name"
mkdir -p "$output_dir/$module_name"
process_directory "$module_dir" "$output_dir/$module_name"
elif find "$module_dir" -name "*.pb.go" -type f | head -1 | grep -q .; then
echo "Processing namespace directory: $module_name"
process_repository_modules "$module_dir" "$output_dir/$module_name"
fi
Copy link
Copy Markdown

Choose a reason for hiding this comment

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

⚠️ Potential issue | 🟠 Major

Module traversal can miss files due branch structure and brittle pipeline.

Two issues in this block:

  1. elif makes direct-file modules skip deeper namespace traversal, so nested .pb.go files in the same module are not processed.
  2. find ... | head -1 | grep -q . is fragile with set -o pipefail.
🔧 Proposed fix
-        elif compgen -G "$module_dir/*.pb.go" > /dev/null 2>&1; then
-            echo "Processing module with direct .pb.go files: $module_name"
-            mkdir -p "$output_dir/$module_name"
-            process_directory "$module_dir" "$output_dir/$module_name"
-        elif find "$module_dir" -name "*.pb.go" -type f | head -1 | grep -q .; then
-            echo "Processing namespace directory: $module_name"
-            process_repository_modules "$module_dir" "$output_dir/$module_name"
+        elif compgen -G "$module_dir/*.pb.go" > /dev/null 2>&1; then
+            echo "Processing module with direct .pb.go files: $module_name"
+            mkdir -p "$output_dir/$module_name"
+            process_directory "$module_dir" "$output_dir/$module_name"
+            if find "$module_dir" -mindepth 2 -type f -name "*.pb.go" -print -quit | grep -q .; then
+                echo "Processing namespace directory: $module_name"
+                process_repository_modules "$module_dir" "$output_dir/$module_name"
+            fi
+        elif find "$module_dir" -type f -name "*.pb.go" -print -quit | grep -q .; then
+            echo "Processing namespace directory: $module_name"
+            process_repository_modules "$module_dir" "$output_dir/$module_name"
         fi
📝 Committable suggestion

‼️ IMPORTANT
Carefully review the code before committing. Ensure that it accurately replaces the highlighted code, contains no missing lines, and has no issues with indentation. Thoroughly test & benchmark the code to ensure it meets the requirements.

Suggested change
elif compgen -G "$module_dir/*.pb.go" > /dev/null 2>&1; then
echo "Processing module with direct .pb.go files: $module_name"
mkdir -p "$output_dir/$module_name"
process_directory "$module_dir" "$output_dir/$module_name"
elif find "$module_dir" -name "*.pb.go" -type f | head -1 | grep -q .; then
echo "Processing namespace directory: $module_name"
process_repository_modules "$module_dir" "$output_dir/$module_name"
fi
elif compgen -G "$module_dir/*.pb.go" > /dev/null 2>&1; then
echo "Processing module with direct .pb.go files: $module_name"
mkdir -p "$output_dir/$module_name"
process_directory "$module_dir" "$output_dir/$module_name"
if find "$module_dir" -mindepth 2 -type f -name "*.pb.go" -print -quit | grep -q .; then
echo "Processing namespace directory: $module_name"
process_repository_modules "$module_dir" "$output_dir/$module_name"
fi
elif find "$module_dir" -type f -name "*.pb.go" -print -quit | grep -q .; then
echo "Processing namespace directory: $module_name"
process_repository_modules "$module_dir" "$output_dir/$module_name"
fi
🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In `@scripts/generate_proto_json_files.sh` around lines 450 - 457, The branch
logic can skip nested .pb.go files and the find pipeline is fragile; modify the
conditionals so you do not use an elif that prevents both checks — e.g., first
check for any .pb.go anywhere under module_dir using find with -print -quit and
test its exit status (avoid piping to head/grep), and separately check for
direct files with compgen to call process_directory for root-level .pb.go and
process_repository_modules for nested/namespace modules (or run both paths as
appropriate); update the find invocation to use "find \"$module_dir\" -name
\"*.pb.go\" -type f -print -quit" and use its exit code to decide calling
process_repository_modules, while keeping process_directory invocation for
direct matches (functions: process_directory, process_repository_modules;
variable: module_dir, module_name).


<!-- MARKDOWN-AUTO-DOCS:START (JSON_TO_HTML_TABLE:src=./source/json_tables/cosmos/tx/BroadcastTxResponse.json) -->
<table class="JSON-TO-HTML-TABLE"><thead><tr><th class="parameter-th">Parameter</th><th class="type-th">Type</th><th class="description-th">Description</th></tr></thead><tbody ><tr ><td class="parameter-td td_text">tx_response</td><td class="type-td td_text">types.TxResponse</td><td class="description-td td_text">tx_response is the queried TxResponses.</td></tr></tbody></table>
<table class="JSON-TO-HTML-TABLE"><thead><tr><th class="parameter-th">Parameter</th><th class="type-th">Type</th><th class="description-th">Description</th></tr></thead><tbody ><tr ><td class="parameter-td td_text">tx_response</td><td class="type-td td_text">TxResponse</td><td class="description-td td_text">tx_response is the queried TxResponses.</td></tr></tbody></table>
Copy link
Copy Markdown

Choose a reason for hiding this comment

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

⚠️ Potential issue | 🟡 Minor

Fix singular/plural mismatch in tx_response description.

The description says “queried TxResponses” while the field is singular (tx_response). Please make this singular for consistency and clarity.

✏️ Proposed wording update
- ... <td class="description-td td_text">tx_response is the queried TxResponses.</td> ...
+ ... <td class="description-td td_text">tx_response is the queried TxResponse.</td> ...

Also applies to: 447-447, 694-694, 941-941, 1204-1204, 2130-2130

🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In `@source/includes/_account.md` at line 208, Update the parameter description
for tx_response to use singular phrasing: replace "tx_response is the queried
TxResponses." with "tx_response is the queried TxResponse." and apply the same
singular fix for every other occurrence where the tx_response parameter
description currently uses "queried TxResponses" so all descriptions for the
tx_response parameter are consistent and singular.

<tr ><td class="parameter-td td_text">cumulative_funding_entry</td><td class="type-td td_text">string</td><td class="description-td td_text">Cumulative funding entry of the position</td></tr>
<tr ><td class="parameter-td td_text">effective_cumulative_funding_entry</td><td class="type-td td_text">string</td><td class="description-td td_text">Effective cumulative funding entry of the position</td></tr></tbody></table>
<tr ><td class="parameter-td td_text">effective_cumulative_funding_entry</td><td class="type-td td_text">string</td><td class="description-td td_text">Effective cumulative funding entry of the position</td></tr>
<tr ><td class="parameter-td td_text">upnl</td><td class="type-td td_text">string</td><td class="description-td td_text">Unrealized profit and loss of the position (only present when requested with with_upnl=true)</td></tr></tbody></table>
Copy link
Copy Markdown

Choose a reason for hiding this comment

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

⚠️ Potential issue | 🟡 Minor

Fix duplicated wording in upnl description.

The phrase “with with_upnl=true” has a typo and should be corrected in both places.

✏️ Proposed docs fix
-<tr ><td class="parameter-td td_text">upnl</td><td class="type-td td_text">string</td><td class="description-td td_text">Unrealized profit and loss of the position (only present when requested with with_upnl=true)</td></tr></tbody></table>
+<tr ><td class="parameter-td td_text">upnl</td><td class="type-td td_text">string</td><td class="description-td td_text">Unrealized profit and loss of the position (only present when requested with `with_upnl=true`)</td></tr></tbody></table>

Also applies to: 2773-2773

🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In `@source/includes/_derivativesrpc.md` at line 2528, The upnl field description
contains a duplicated word "with with_upnl=true"; update the description for the
parameter named "upnl" in source/includes/_derivativesrpc.md to remove the
duplicate and use correct phrasing (e.g., "only present when requested with
upnl=true" or "only present when with_upnl=true" consistently), and fix the same
duplicated wording at the other occurrence mentioned (the second "upnl"
description around the later occurrence). Ensure both occurrences reference the
same, corrected form.

Comment on lines +122 to +124
``` json

```
Copy link
Copy Markdown

Choose a reason for hiding this comment

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

⚠️ Potential issue | 🟡 Minor

Add concrete response payload examples for new endpoints.

These newly added sections currently show empty response example blocks, which makes integration validation harder for users.

Also applies to: 269-271, 890-892

🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In `@source/includes/_insurance.md` around lines 122 - 124, There are empty
response example JSON blocks in source/includes/_insurance.md (notably the three
empty ```json``` blocks around the new endpoint sections); replace each empty
block with concrete sample response payloads that match the endpoint schemas
(include typical fields, data types, nested objects/arrays, and an example of
success and common error response where relevant), locating the blocks by
looking for the empty triple-backtick json fences under the new endpoint
headings in that file and updating them with realistic example JSON bodies that
consumers can use for integration testing.

<!-- MARKDOWN-AUTO-DOCS:END -->


## StreamPricesByMarket
Copy link
Copy Markdown

Choose a reason for hiding this comment

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

⚠️ Potential issue | 🟡 Minor

Section name is inconsistent with method naming.

Line 697 uses StreamPricesByMarket (singular), while the request file and examples use StreamPricesByMarkets (plural). Aligning names will avoid confusion.

🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In `@source/includes/_oraclerpc.md` at line 697, Heading "StreamPricesByMarket" is
inconsistent with the RPC/method name used elsewhere; change the section title
to "StreamPricesByMarkets" so it matches the request file and examples, and
update any in-page references or links that point to the old singular name (look
for occurrences of StreamPricesByMarket and replace them with
StreamPricesByMarkets).


<!-- MARKDOWN-AUTO-DOCS:START (JSON_TO_HTML_TABLE:src=./source/json_tables/cosmos/cmtservice/GetLatestValidatorSetRequest.json) -->
<table class="JSON-TO-HTML-TABLE"><thead><tr><th class="parameter-th">Parameter</th><th class="type-th">Type</th><th class="description-th">Description</th><th class="required-th">Required</th></tr></thead><tbody ><tr ><td class="parameter-td td_text">pagination</td><td class="type-td td_text">query.PageRequest</td><td class="description-td td_text">pagination defines an pagination for the request.</td><td class="required-td td_text">No</td></tr></tbody></table>
<table class="JSON-TO-HTML-TABLE"><thead><tr><th class="parameter-th">Parameter</th><th class="type-th">Type</th><th class="description-th">Description</th><th class="required-th">Required</th></tr></thead><tbody ><tr ><td class="parameter-td td_text">pagination</td><td class="type-td td_text">PageRequest</td><td class="description-td td_text">pagination defines an pagination for the request.</td><td class="required-td td_text">No</td></tr></tbody></table>
Copy link
Copy Markdown

Choose a reason for hiding this comment

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

⚠️ Potential issue | 🟡 Minor

Fix grammar in pagination descriptions.

The phrase “defines an pagination” should be “defines a pagination” in these rows.

✏️ Proposed wording update
- pagination defines an pagination for the request.
+ pagination defines a pagination for the request.

- pagination defines an pagination for the response.
+ pagination defines a pagination for the response.

Also applies to: 1338-1338, 1480-1480, 1550-1550

🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In `@source/includes/_tendermint.md` at line 1268, Update the pagination
description text in source/includes/_tendermint.md: replace the incorrect phrase
"defines an pagination for the request." with "defines a pagination for the
request." for the table entry where the Parameter is "pagination" (and likewise
fix the same phrase in the other occurrences referenced around the file, e.g.,
the rows at the other instances noted); ensure the exact wording change is
applied to each table cell containing "defines an pagination" so all occurrences
are corrected.


<!-- MARKDOWN-AUTO-DOCS:START (JSON_TO_HTML_TABLE:src=./source/json_tables/injective/tokenfactory/Params.json) -->
<table class="JSON-TO-HTML-TABLE"><thead><tr><th class="parameter-th">Parameter</th><th class="type-th">Type</th><th class="description-th">Description</th></tr></thead><tbody ><tr ><td class="parameter-td td_text">denom_creation_fee</td><td class="type-td td_text">github_com_cosmos_cosmos_sdk_types.Coins</td><td class="description-td td_text">The denom creation fee</td></tr></tbody></table>
<table class="JSON-TO-HTML-TABLE"><thead><tr><th class="parameter-th">Parameter</th><th class="type-th">Type</th><th class="description-th">Description</th></tr></thead><tbody ><tr ><td class="parameter-td td_text">denom_creation_fee</td><td class="type-td td_text">Coins</td><td class="description-td td_text">The denom creation fee</td></tr></tbody></table>
Copy link
Copy Markdown

Choose a reason for hiding this comment

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

⚠️ Potential issue | 🟡 Minor

Use a consistent coin type name in this section.

Line 578 uses Coins, while the nearby type block is documented as Coin (Line 583). This can confuse readers about whether this is a distinct type or an array alias. Consider changing to Coin array (or adding a dedicated Coins type block) for consistency.

💡 Suggested doc fix
-<tr ><td class="parameter-td td_text">denom_creation_fee</td><td class="type-td td_text">Coins</td><td class="description-td td_text">The denom creation fee</td></tr>
+<tr ><td class="parameter-td td_text">denom_creation_fee</td><td class="type-td td_text">Coin array</td><td class="description-td td_text">The denom creation fee</td></tr>
📝 Committable suggestion

‼️ IMPORTANT
Carefully review the code before committing. Ensure that it accurately replaces the highlighted code, contains no missing lines, and has no issues with indentation. Thoroughly test & benchmark the code to ensure it meets the requirements.

Suggested change
<table class="JSON-TO-HTML-TABLE"><thead><tr><th class="parameter-th">Parameter</th><th class="type-th">Type</th><th class="description-th">Description</th></tr></thead><tbody ><tr ><td class="parameter-td td_text">denom_creation_fee</td><td class="type-td td_text">Coins</td><td class="description-td td_text">The denom creation fee</td></tr></tbody></table>
<table class="JSON-TO-HTML-TABLE"><thead><tr><th class="parameter-th">Parameter</th><th class="type-th">Type</th><th class="description-th">Description</th></tr></thead><tbody ><tr ><td class="parameter-td td_text">denom_creation_fee</td><td class="type-td td_text">Coin array</td><td class="description-td td_text">The denom creation fee</td></tr></tbody></table>
🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In `@source/includes/_tokenfactory.md` at line 578, The parameter docs for
denom_creation_fee use an inconsistent type name ("Coins") while nearby
documentation uses "Coin"; update the denom_creation_fee type to a consistent
representation — either change "Coins" to "Coin array" in the parameter table
for denom_creation_fee, or add a dedicated "Coins" type block that documents it
as an array alias; ensure references to denom_creation_fee and the Coin/Coin
array naming are consistent across this section.

@aarmoa aarmoa merged commit b98927d into main Apr 28, 2026
8 of 9 checks passed
@aarmoa aarmoa deleted the ic-988/update-api-docs-for-v1190-chain-upgrade branch April 28, 2026 16:39
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant