Skip to content

chore: update protos and gql#412

Merged
cgilbe27 merged 3 commits intodevelopfrom
chore/update-protos
Oct 15, 2025
Merged

chore: update protos and gql#412
cgilbe27 merged 3 commits intodevelopfrom
chore/update-protos

Conversation

@cgilbe27
Copy link
Contributor

No description provided.

@coderabbitai
Copy link
Contributor

coderabbitai bot commented Oct 14, 2025

📝 Walkthrough

Walkthrough

Adds EVM ConvertEvmToCoin RPC, message, and event; extends Params with canonicalWnibi and MsgCreateFunToken with allowZeroDecimals; adds QueryExchangeRateResponse.isVintage; introduces GraphQL Marketing query and schema changes; adds heart-monitor evm/marketing batch APIs and tests; updates nibiru submodule pointer.

Changes

Cohort / File(s) Summary of changes
Submodule update
nibiru:
Updates nibiru submodule pointer commit; no source file changes in this repo.
EVM tx & SDK message wiring
src/protojs/eth/evm/v1/tx.ts, src/sdk/msg/eth.ts, src/sdk/msg/eth.test.ts
Adds MsgConvertEvmToCoin and MsgConvertEvmToCoinResponse, RPC service method and MsgClientImpl.ConvertEvmToCoin, registers message type URL, wires SDK EthMsgExtension.convertEvmToCoin, adds tests/mocks. Also adds allowZeroDecimals to MsgCreateFunToken.
EVM events
src/protojs/eth/evm/v1/events.ts
Adds EventConvertEvmToCoin type and full encode/decode/fromJSON/toJSON/create/fromPartial helpers; minor doc-comment clarifications.
EVM params
src/protojs/eth/evm/v1/evm.ts
Adds Params.canonicalWnibi: string and updates createBase/encode/decode/fromJSON/toJSON/fromPartial to include it (field 82).
Oracle query + tests
src/protojs/nibiru/oracle/v1/query.ts, src/sdk/query/oracle.test.ts
Adds isVintage: boolean to QueryExchangeRateResponse with serialization/JSON/fromPartial support and updates tests to include the field.
GraphQL schema & generated types
src/gql/utils/schema.graphql, src/gql/utils/generated.ts
Adds Marketing type and marketing query, introduces StringEqualsFilter, makes ContractEventsFilter.block required, enforces required where for wasm contract events, adds Event.txHash, and removes events from GQLUserContract.
GQL marketing module & exports
src/gql/query/marketing.ts, src/gql/query/index.ts
New marketing query helper and types (QueryMarketingArgs, GqlOutMarketing, MarketingFields); re-exports marketing from query barrel.
Heart-monitor public API & tests
src/gql/heart-monitor/heart-monitor.ts, src/gql/heart-monitor/heart-monitor.test.ts
Adds batch query handler, evm and marketing instance methods on IHeartMonitor/HeartMonitor, implements routing to new helpers, and updates tests/imports.
Generated GQL helpers update
src/gql/utils/generated.ts
Adds GQLMarketing, GQLStringEqualsFilter, updates generated types and args to match schema changes.

Sequence Diagram(s)

sequenceDiagram
  autonumber
  actor App as SDK User
  participant Ext as EthMsgExtension
  participant Client as MsgClientImpl
  participant RPC as RPC
  participant Chain as EVM Module

  App->>Ext: convertEvmToCoin({sender, erc20Addr, amount, toAddr})
  Ext->>Client: ConvertEvmToCoin(MsgConvertEvmToCoin.fromPartial(...))
  Client->>RPC: unary("/eth.evm.v1.Msg/ConvertEvmToCoin", bytes)
  RPC->>Chain: Deliver ConvertEvmToCoin request
  alt success
    Chain-->>RPC: MsgConvertEvmToCoinResponse
    RPC-->>Client: response bytes
    Client-->>Ext: decoded response
    Ext-->>App: resolved Promise
  else error
    RPC-->>Client: error
    Client-->>Ext: reject
    Ext-->>App: rejected Promise
  end

  note over Chain: Emits EventConvertEvmToCoin on success
Loading

Estimated code review effort

🎯 4 (Complex) | ⏱️ ~45 minutes

Possibly related PRs

Suggested reviewers

  • CalicoNino
  • k-yang

Poem

I hop through code with a curious spin,
Converting tokens and adding new kin.
A canonical WNIBI, a vintage bell chime,
Queries and events stitched in good time.
Carrots and tests—celebrate with a rhyme. 🥕🐇

Pre-merge checks and finishing touches

❌ Failed checks (1 warning)
Check name Status Explanation Resolution
Description Check ⚠️ Warning The pull request description is empty and does not describe any of the changes made, leaving reviewers without context on the extensive updates to protobufs and GraphQL modules. Please provide a brief description summarizing the key changes introduced by this pull request, such as updates to protobuf definitions and GraphQL schema and code, to help reviewers quickly understand the scope and purpose of the modifications.
✅ Passed checks (2 passed)
Check name Status Explanation
Title Check ✅ Passed The title succinctly captures the nature of the task as a chore updating both protobuf definitions and GraphQL (gql) components, which aligns directly with the substantial code generation and schema changes in this pull request.
Docstring Coverage ✅ Passed No functions found in the changes. Docstring coverage check skipped.
✨ Finishing touches
  • 📝 Generate docstrings
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Post copyable unit tests in a comment
  • Commit unit tests in branch chore/update-protos

📜 Recent review details

Configuration used: CodeRabbit UI

Review profile: CHILL

Plan: Pro

📥 Commits

Reviewing files that changed from the base of the PR and between fc538f4 and 2c7bf64.

📒 Files selected for processing (1)
  • src/gql/query/marketing.ts (1 hunks)
🚧 Files skipped from review as they are similar to previous changes (1)
  • src/gql/query/marketing.ts
⏰ Context from checks skipped due to timeout of 90000ms. You can increase the timeout in your CodeRabbit configuration to a maximum of 15 minutes (900000ms). (1)
  • GitHub Check: checkout_cache_install_build_test

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

Copy link
Contributor

@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: 0

Caution

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

⚠️ Outside diff range comments (1)
src/protojs/eth/evm/v1/tx.ts (1)

1409-1416: Blocker: MsgConvertCoinToEvm encode/decode mismatch for toEthAddr

Encode writes raw bytes, but decode reads a string. This breaks round‑trip compatibility and likely the on‑wire format. Also the hex-to-bytes conversion will mis-handle "0x" prefixes/odd lengths.

Fix: encode as string (to match interface and decode).

Apply this diff:

   encode(message: MsgConvertCoinToEvm, writer: _m0.Writer = _m0.Writer.create()): _m0.Writer {
-    if (message.toEthAddr !== "") {
-      // Converting string to raw bytes
-      const bytes = new Uint8Array(
-        message.toEthAddr.match(/.{1,2}/g)!.map((byte) => parseInt(byte, 16))
-      )
-      writer.uint32(10).bytes(bytes)
-    }
+    if (message.toEthAddr !== "") {
+      writer.uint32(10).string(message.toEthAddr);
+    }

Also applies to: 1437-1452

🧹 Nitpick comments (3)
src/protojs/eth/evm/v1/events.ts (1)

80-90: New EventConvertEvmToCoin interface: LGTM; consider clarifying address formats.

Optional: add brief comments noting expected formats, e.g., toAddress (bech32) vs senderEthAddr (0x… EVM), to avoid misuse.

src/protojs/eth/evm/v1/tx.ts (1)

272-273: Biome lint: empty interface

MsgConvertEvmToCoinResponse is an empty interface. Either:

  • keep it as-is but silence lints for generated code (preferable), e.g., ignore src/protojs/** in Biome; or
  • change to a type alias: export type MsgConvertEvmToCoinResponse = {};

Based on static analysis hints

src/sdk/msg/eth.ts (1)

13-15: Wiring for ConvertEvmToCoin is consistent and complete

Imports, type URL, registry entry, interface, and client call all align. LGTM.

Minor nit: method names mix convertCoinToEVM vs convertEvmToCoin. Consider standardizing casing for consistency (e.g., both ...Evm...).

Also applies to: 23-24, 31-32, 43-46, 60-61

📜 Review details

Configuration used: CodeRabbit UI

Review profile: CHILL

Plan: Pro

📥 Commits

Reviewing files that changed from the base of the PR and between 63de262 and 4f1d29b.

📒 Files selected for processing (8)
  • nibiru (1 hunks)
  • src/protojs/eth/evm/v1/events.ts (4 hunks)
  • src/protojs/eth/evm/v1/evm.ts (7 hunks)
  • src/protojs/eth/evm/v1/tx.ts (12 hunks)
  • src/protojs/nibiru/oracle/v1/query.ts (7 hunks)
  • src/sdk/msg/eth.test.ts (4 hunks)
  • src/sdk/msg/eth.ts (4 hunks)
  • src/sdk/query/oracle.test.ts (1 hunks)
🧰 Additional context used
🧬 Code graph analysis (4)
src/protojs/eth/evm/v1/events.ts (2)
src/protojs/cosmos/base/v1beta1/coin.ts (2)
  • Coin (11-14)
  • Coin (41-106)
src/gql/utils/generated.ts (1)
  • Exact (3-3)
src/sdk/msg/eth.ts (1)
src/protojs/eth/evm/v1/tx.ts (5)
  • MsgServiceName (1707-1707)
  • MsgConvertEvmToCoin (248-270)
  • MsgConvertEvmToCoin (1541-1632)
  • MsgConvertEvmToCoinResponse (272-273)
  • MsgConvertEvmToCoinResponse (1638-1676)
src/protojs/eth/evm/v1/tx.ts (2)
src/gql/utils/generated.ts (1)
  • Exact (3-3)
src/gql/utils/consts.ts (1)
  • DeepPartial (29-49)
src/sdk/msg/eth.test.ts (2)
src/protojs/eth/evm/v1/tx.ts (2)
  • MsgConvertEvmToCoin (248-270)
  • MsgConvertEvmToCoin (1541-1632)
src/sdk/msg/eth.ts (1)
  • setupEthMsgExtension (48-63)
🪛 Biome (2.1.2)
src/protojs/eth/evm/v1/tx.ts

[error] 272-273: An empty interface is equivalent to {}.

Safe fix: Use a type alias instead.

(lint/suspicious/noEmptyInterface)

⏰ Context from checks skipped due to timeout of 90000ms. You can increase the timeout in your CodeRabbit configuration to a maximum of 15 minutes (900000ms). (1)
  • GitHub Check: checkout_cache_install_build_test
🔇 Additional comments (13)
src/protojs/eth/evm/v1/events.ts (3)

33-36: Doc change: LGTM.


50-53: Doc change for ConvertCoinToEvm: LGTM.


766-876: EventConvertEvmToCoin codec symmetry is correct; please manually confirm the .proto field numbers (1, 2, 3, 4, 6) match the encode/decode tags.

src/protojs/eth/evm/v1/evm.ts (1)

37-38: Confirm upstream .proto field number for canonical_wnibi

  • TS wiring (writer.uint32(82)/field 10) is correct; verify the upstream .proto declares canonical_wnibi = 10 to avoid tag mismatches.
nibiru (1)

1-1: Approve submodule pointer bump; verify config and CI

  • .gitmodules path/url entries are correct.
  • No branch is pinned—consider pinning to a stable release tag.
  • Ensure CI invokes git submodule sync --recursive and git submodule update --init --recursive.
src/protojs/nibiru/oracle/v1/query.ts (1)

30-31: isVintage addition looks correct; tag and defaults are consistent

Field 4 uses bool (wire type 0), encoded only when true, defaulted to false across base/fromJSON/fromPartial. Decode path matches tag 32. LGTM. Please confirm upstream nodes may omit this field without issues (default stays false).

Also applies to: 268-269, 282-284, 316-323, 337-338, 347-348, 364-365

src/sdk/query/oracle.test.ts (1)

43-44: Fixture updated for isVintage — good

Mocks now reflect the new field; keeps type-checking happy. LGTM.

src/sdk/msg/eth.test.ts (4)

20-23: Mocking ConvertEvmToCoin added — good coverage

Wires the new RPC into the test harness. LGTM.


69-70: Params.canonicalWnibi expectation added — OK

Tests assert new field in params; aligns with proto changes.

Also applies to: 75-76


96-97: createFunToken: allowZeroDecimals exercised — OK

Covers the new flag; assertion looks correct.

Also applies to: 102-103


129-150: New convertEVMToCoin test — OK

Verifies fromPartial args and mocked response. LGTM.

src/protojs/eth/evm/v1/tx.ts (2)

218-227: allowZeroDecimals field is correctly integrated

Boolean field on tag 4 with sensible default/encoding. All (de)serialization paths align. LGTM.

Also applies to: 1248-1249, 1262-1264, 1297-1302, 1317-1318, 1326-1327, 1339-1340


247-270: New MsgConvertEvmToCoin flow is wired correctly

Types, encode/decode, client interface, and MsgClientImpl method look consistent. LGTM.

Also applies to: 1537-1632, 1634-1676, 1700-1705, 1718-1719, 1744-1748

@github-actions
Copy link

github-actions bot commented Oct 14, 2025

Lines Statements Branches Functions
Coverage: 95%
95.49% (932/976) 80.82% (177/219) 89.65% (312/348)

@cgilbe27 cgilbe27 changed the title chore: update protos chore: update protos and gql Oct 14, 2025
Copy link
Contributor

@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: 1

🧹 Nitpick comments (2)
src/gql/heart-monitor/heart-monitor.test.ts (1)

308-328: Marketing tests cover happy path; consider adding a negative-case

Once input validation is added in marketingQueryString (see comment in src/gql/query/marketing.ts), add a test asserting a clear error when required args are omitted.

src/gql/heart-monitor/heart-monitor.ts (1)

107-111: Avoid double DeepPartial on MarketingFields

MarketingFields is already DeepPartial. Remove the extra DeepPartial for clarity and accurate typings.

-  readonly marketing: (
-    args: QueryMarketingArgs,
-    fields: DeepPartial<MarketingFields>
-  ) => Promise<GqlOutMarketing>
+  readonly marketing: (
+    args: QueryMarketingArgs,
+    fields: MarketingFields
+  ) => Promise<GqlOutMarketing>
-  marketing = async (
-    args: QueryMarketingArgs,
-    fields: DeepPartial<MarketingFields>
-  ) => marketing(args, this.gqlEndpt, fields)
+  marketing = async (
+    args: QueryMarketingArgs,
+    fields: MarketingFields
+  ) => marketing(args, this.gqlEndpt, fields)

Also applies to: 210-214

📜 Review details

Configuration used: CodeRabbit UI

Review profile: CHILL

Plan: Pro

📥 Commits

Reviewing files that changed from the base of the PR and between 4f1d29b and fc538f4.

📒 Files selected for processing (6)
  • src/gql/heart-monitor/heart-monitor.test.ts (3 hunks)
  • src/gql/heart-monitor/heart-monitor.ts (7 hunks)
  • src/gql/query/index.ts (1 hunks)
  • src/gql/query/marketing.ts (1 hunks)
  • src/gql/utils/generated.ts (6 hunks)
  • src/gql/utils/schema.graphql (7 hunks)
🧰 Additional context used
🧬 Code graph analysis (3)
src/gql/query/marketing.ts (2)
src/gql/utils/generated.ts (3)
  • GQLMarketingGqlIsTaskCompletedArgs (433-436)
  • GQLQuery (536-564)
  • GQLMarketing (427-430)
src/gql/utils/consts.ts (3)
  • DeepPartial (29-49)
  • arg (66-76)
  • doGqlQuery (179-190)
src/gql/heart-monitor/heart-monitor.test.ts (5)
src/gql/utils/generated.ts (2)
  • GQLEvm (135-138)
  • GQLMarketing (427-430)
src/gql/utils/consts.ts (1)
  • checkFields (53-59)
src/gql/query/evm.ts (1)
  • evm (25-28)
src/gql/utils/defaultObjects.ts (1)
  • defaultEvm (281-310)
src/gql/query/marketing.ts (2)
  • QueryMarketingArgs (10-12)
  • marketing (43-53)
src/gql/heart-monitor/heart-monitor.ts (4)
src/gql/utils/consts.ts (2)
  • DeepPartial (29-49)
  • queryBatchHandler (61-64)
src/gql/utils/generated.ts (1)
  • GQLEvm (135-138)
src/gql/query/evm.ts (2)
  • GqlOutEvm (10-12)
  • evm (25-28)
src/gql/query/marketing.ts (4)
  • QueryMarketingArgs (10-12)
  • MarketingFields (18-18)
  • GqlOutMarketing (14-16)
  • marketing (43-53)
⏰ Context from checks skipped due to timeout of 90000ms. You can increase the timeout in your CodeRabbit configuration to a maximum of 15 minutes (900000ms). (1)
  • GitHub Check: checkout_cache_install_build_test
🔇 Additional comments (19)
src/gql/query/index.ts (1)

12-12: Expose marketing query via barrel – LGTM

Exporting the new marketing module here is correct and matches the new surface.

src/gql/heart-monitor/heart-monitor.test.ts (2)

58-60: Imports for marketing types – LGTM

Types align with generated GQLMarketing and QueryMarketingArgs.


140-154: EVM test helper – LGTM

Covers presence and funTokens field; consistent with defaultEvm.

src/gql/utils/schema.graphql (5)

1-11: Add @defer directive – LGTM

Schema-level addition looks standard and non-breaking to existing queries.


108-116: Event.txHash added – LGTM

Enhances traceability without breaking changes.


343-346: New Marketing type and root field – LGTM; ensure clients pass required args

Matches generated types. Clients should provide both taskId and userAddress when querying isTaskCompleted.

Also applies to: 426-426


531-534: Introduce StringEqualsFilter – LGTM

Consistent with new equality-only semantics used in ContractEventsFilter.


49-53: Contract events filter is a breaking change; verify client queries updated

  • contractEvents now requires a non-null where: ContractEventsFilter! and block is mandatory in the filter.
  • Ensure all GraphQL queries or builders include the new where argument and handle the updated filters.
src/gql/heart-monitor/heart-monitor.ts (5)

48-52: Marketing imports – LGTM

Types and function are correctly wired into HeartMonitor.


72-75: Public batch handler exposure – LGTM

Interface addition mirrors implementation; naming consistent with tests.


86-87: EVM accessor in interface – LGTM

Signature matches underlying evm(endpt, fields).


177-179: Batch handler implementation – LGTM

Pass-through to queryBatchHandler with instance endpoint is sound.


192-193: EVM method implementation – LGTM

Consistent with other endpoint wrappers.

src/gql/utils/generated.ts (6)

124-124: LGTM!

Adding the optional txHash field to GQLEvent is backward compatible. Consumers can access transaction hashes when available.


427-436: LGTM!

The new GQLMarketing type and associated args provide marketing task completion queries. This is a non-breaking addition to the schema.


548-548: LGTM!

Adding the marketing field to the root Query type enables the new marketing functionality. This is a non-breaking addition.


785-787: LGTM!

The new GQLStringEqualsFilter provides exact-match-only filtering, distinguishing it from GQLStringFilter which supports pattern matching. This appears intentional for contract event queries (lines 58-59).


992-992: Require where clause on contractEvents queries.
The where parameter is now mandatory for contractEvents calls; verify every invocation supplies a valid where clause to avoid runtime failures.


56-60: Breaking changes in GQLContractEventsFilter

  • block is now required (was optional) — all queries must include a block filter.
  • contractAddress and type changed from GQLStringFilter (with like) to GQLStringEqualsFilter (exact matches only).

Verify all client queries and code using contractEvents have been updated to supply the required where/block filter and accommodate exact‐match filtering.

Copy link
Contributor

@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: 1

📜 Review details

Configuration used: CodeRabbit UI

Review profile: CHILL

Plan: Pro

📥 Commits

Reviewing files that changed from the base of the PR and between 4f1d29b and fc538f4.

📒 Files selected for processing (6)
  • src/gql/heart-monitor/heart-monitor.test.ts (3 hunks)
  • src/gql/heart-monitor/heart-monitor.ts (7 hunks)
  • src/gql/query/index.ts (1 hunks)
  • src/gql/query/marketing.ts (1 hunks)
  • src/gql/utils/generated.ts (6 hunks)
  • src/gql/utils/schema.graphql (7 hunks)
🧰 Additional context used
🧬 Code graph analysis (3)
src/gql/query/marketing.ts (2)
src/gql/utils/generated.ts (3)
  • GQLMarketingGqlIsTaskCompletedArgs (433-436)
  • GQLQuery (536-564)
  • GQLMarketing (427-430)
src/gql/utils/consts.ts (3)
  • DeepPartial (29-49)
  • arg (66-76)
  • doGqlQuery (179-190)
src/gql/heart-monitor/heart-monitor.test.ts (5)
src/gql/utils/generated.ts (2)
  • GQLEvm (135-138)
  • GQLMarketing (427-430)
src/gql/utils/consts.ts (1)
  • checkFields (53-59)
src/gql/query/evm.ts (1)
  • evm (25-28)
src/gql/utils/defaultObjects.ts (1)
  • defaultEvm (281-310)
src/gql/query/marketing.ts (2)
  • QueryMarketingArgs (10-12)
  • marketing (43-53)
src/gql/heart-monitor/heart-monitor.ts (3)
src/gql/utils/consts.ts (2)
  • DeepPartial (29-49)
  • queryBatchHandler (61-64)
src/gql/query/evm.ts (2)
  • GqlOutEvm (10-12)
  • evm (25-28)
src/gql/query/marketing.ts (4)
  • QueryMarketingArgs (10-12)
  • MarketingFields (18-18)
  • GqlOutMarketing (14-16)
  • marketing (43-53)
🔇 Additional comments (12)
src/gql/query/index.ts (1)

12-12: LGTM!

The marketing module export follows the existing barrel file pattern and aligns with the new marketing query functionality introduced in this PR.

src/gql/heart-monitor/heart-monitor.test.ts (2)

140-153: LGTM!

The EVM test implementation follows the established testing patterns in this file and correctly validates the EVM query functionality.


308-327: Verify that the hardcoded test values exist in the test environment.

The test uses hardcoded values (taskId: "task-123" and userAddress: "nibi1xyz"). Ensure these values exist in the testnet-2 environment, otherwise the test may fail.

src/gql/utils/generated.ts (1)

57-59: LGTM!

The generated types correctly reflect the GraphQL schema changes, including:

  • New GQLMarketing type with isTaskCompleted field
  • New GQLStringEqualsFilter for exact string matching
  • Added txHash field to GQLEvent
  • Updated GQLContractEventsFilter with required block and new filter types
  • Required where parameter in GQLWasmGqlContractEventsArgs

Also applies to: 124-124, 427-436, 548-548, 785-787, 992-992

src/gql/heart-monitor/heart-monitor.ts (3)

86-86: LGTM!

The evm method follows the established pattern for query methods and correctly delegates to the corresponding query function.

Also applies to: 192-192


107-110: LGTM!

The marketing method follows the established pattern for query methods and correctly delegates to the corresponding query function with proper argument ordering.

Also applies to: 210-213


72-74: No internal references to GQLQueryGqlBatchHandler; verify external usage
Ripgrep found zero internal calls or interface-typed invocations of this method—ensure no external consumers rely on it.

src/gql/query/marketing.ts (1)

43-53: LGTM!

The marketing function correctly follows the established pattern for query execution, properly wrapping the query string and delegating to doGqlQuery.

src/gql/utils/schema.graphql (4)

1-10: LGTM!

The @defer directive is a standard GraphQL feature for deferred fragment execution, properly defined with its standard arguments.


50-52: LGTM!

The schema changes improve the contract events filtering:

  • Required block filter enforces proper query scoping
  • StringEqualsFilter provides exact-match semantics for contractAddress and type
  • txHash field addition to Event type enhances event traceability

Also applies to: 113-113


343-345: LGTM!

The Marketing type and query field are properly defined, with isTaskCompleted requiring both taskId and userAddress as non-null arguments, aligning with the implementation in the query module.

Also applies to: 426-426


531-533: LGTM!

The StringEqualsFilter input type provides exact-match filtering semantics, and making where required in Wasm.contractEvents ensures proper query scoping, consistent with the required block filter in ContractEventsFilter.

Also applies to: 713-713

@cgilbe27 cgilbe27 merged commit c7fba00 into develop Oct 15, 2025
3 checks passed
@cgilbe27 cgilbe27 deleted the chore/update-protos branch October 15, 2025 13:16
cgilbe27 added a commit that referenced this pull request Oct 15, 2025
* chore: unstoppable domain proxy (#404)

* fix: move curly braces

* refactor: adding custom amino messages (#407)

* refactor: adding custom amino converter for convert to evm msg

* chore: comment and linting

* chore: new file instead of index

* chore: linting

* chore: pull latest protos

* chore: update protos and gql (#412)

* chore: update protos

* chore: add gql updates

* fix: small issue

---------

Co-authored-by: Calico Nino <54007257+CalicoNino@users.noreply.github.com>
github-actions bot pushed a commit that referenced this pull request Oct 15, 2025
### [6.3.1](v6.3.0...v6.3.1) (2025-10-15)

### Miscellaneous Chores

* develop -> main ([#413](#413)) ([1a4d173](1a4d173)), closes [#404](#404) [#407](#407) [#412](#412)

 [skip ci]
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