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

Problem: require gas in RecvPacket is inaccurate when ReceiverChainIsSource #1458

Merged
merged 4 commits into from
May 28, 2024

Conversation

mmsqe
Copy link
Collaborator

@mmsqe mmsqe commented May 27, 2024

For more info, denom can't be converted in middleware.

👮🏻👮🏻👮🏻 !!!! REFERENCE THE PROBLEM YOUR ARE SOLVING IN THE PR TITLE AND DESCRIBE YOUR SOLUTION HERE !!!! DO NOT FORGET !!!! 👮🏻👮🏻👮🏻

PR Checklist:

  • Have you read the CONTRIBUTING.md?
  • Does your PR follow the C4 patch requirements?
  • Have you rebased your work on top of the latest master?
  • Have you checked your code compiles? (make)
  • Have you included tests for any non-trivial functionality?
  • Have you checked your code passes the unit tests? (make test)
  • Have you checked your code formatting is correct? (go fmt)
  • Have you checked your basic code style is fine? (golangci-lint run)
  • If you added any dependencies, have you checked they do not contain any known vulnerabilities? (go list -json -m all | nancy sleuth)
  • If your changes affect the client infrastructure, have you run the integration test?
  • If your changes affect public APIs, does your PR follow the C4 evolution of public contracts?
  • If your code changes public APIs, have you incremented the crate version numbers and documented your changes in the CHANGELOG.md?
  • If you are contributing for the first time, please read the agreement in CONTRIBUTING.md now and add a comment to this pull request stating that your PR is in accordance with the Developer's Certificate of Origin.

Thank you for your code, it's appreciated! :)

Summary by CodeRabbit

  • New Features

    • Adjusted gas requirements for recvPacket method to improve performance.
  • Bug Fixes

    • Enhanced integration tests to cover a wider range of scenarios for better reliability.
  • Chores

    • Updated dependencies to the latest commit references and corresponding SHA256 hashes.

Copy link
Contributor

coderabbitai bot commented May 27, 2024

Walkthrough

The recent changes focus on optimizing gas calculations for IBC transactions, enhancing integration tests, and updating dependencies. Key modifications include adjusting gas requirements for the RecvPacket method, expanding test loops to better simulate real-world scenarios, and refining the execution logic in utility functions. These updates aim to improve performance, accuracy, and maintainability of the cronos project.

Changes

File Summary
CHANGELOG.md Documented changes related to gas requirement adjustments for recvPacket.
integration_tests/configs/ibc.jsonnet Expanded loop range from 1-2 to 1-50 to enhance test coverage.
integration_tests/ibc_utils.py Added new sender funding, contract deployment, and updated user range for ibc_multi_transfer.
nix/sources.json Updated rev and sha256 for crypto-org-chain/relayer repository.
x/cronos/keeper/precompiles/relayer.go Adjusted gas calculations and imports for IBC-related types.
x/cronos/keeper/precompiles/utils.go Removed input2 []byte field and consolidated execMultipleWithHooks into execMultiple.

In the code where packets roam,
Gas calculations find their home.
Tests expand from one to fifty,
Ensuring flows are smooth and nifty.
Dependencies now up to date,
Cronos strides with a lighter weight.
🎩🐇


Thank you for using CodeRabbit. We offer it for free to the OSS community and would appreciate your support in helping us grow. If you find it useful, would you consider giving us a shout-out on your favorite social media?

Share
Tips

Chat

There are 3 ways to chat with CodeRabbit:

  • Review comments: Directly reply to a review comment made by CodeRabbit. Example:
    • I pushed a fix in commit <commit_id>.
    • Generate unit testing code for this file.
    • Open a follow-up GitHub issue for this discussion.
  • Files and specific lines of code (under the "Files changed" tab): Tag @coderabbitai in a new review comment at the desired location with your query. Examples:
    • @coderabbitai generate unit testing code for this file.
    • @coderabbitai modularize this function.
  • PR comments: Tag @coderabbitai in a new PR comment to ask questions about the PR branch. For the best results, please provide a very specific query, as very limited context is provided in this mode. Examples:
    • @coderabbitai generate interesting stats about this repository and render them as a table.
    • @coderabbitai show all the console.log statements in this repository.
    • @coderabbitai read src/utils.ts and generate unit testing code.
    • @coderabbitai read the files in the src/scheduler package and generate a class diagram using mermaid and a README in the markdown format.

Note: Be mindful of the bot's finite context window. It's strongly recommended to break down tasks such as reading entire modules into smaller chunks. For a focused discussion, use review comments to chat about specific files and their changes, instead of using the PR comments.

CodeRabbit Commands (invoked as PR comments)

  • @coderabbitai pause to pause the reviews on a PR.
  • @coderabbitai resume to resume the paused reviews.
  • @coderabbitai review to trigger an incremental review. This is useful when automatic reviews are disabled for the repository.
  • @coderabbitai full review to full the review from scratch and review all the files again.
  • @coderabbitai summary to regenerate the summary of the PR.
  • @coderabbitai resolve resolve all the CodeRabbit review comments.
  • @coderabbitai help to get help.

Additionally, you can add @coderabbitai ignore anywhere in the PR description to prevent this PR from being reviewed.

CodeRabbit Configration File (.coderabbit.yaml)

  • You can programmatically configure CodeRabbit by adding a .coderabbit.yaml file to the root of your repository.
  • Please see the configuration documentation for more information.
  • If your editor has YAML language server enabled, you can add the path at the top of this file to enable auto-completion and validation: # yaml-language-server: $schema=https://coderabbit.ai/integrations/schema.v2.json

Documentation and Community

  • Visit our Documentation for detailed information on how to use CodeRabbit.
  • Join our Discord Community to get help, request features, and share feedback.
  • Follow us on X/Twitter for updates and announcements.

Copy link

codecov bot commented May 27, 2024

Codecov Report

Attention: Patch coverage is 5.88235% with 16 lines in your changes are missing coverage. Please review.

Project coverage is 35.85%. Comparing base (b2a47a2) to head (d0b582b).

Additional details and impacted files

Impacted file tree graph

@@             Coverage Diff             @@
##             main    #1458       +/-   ##
===========================================
+ Coverage   17.78%   35.85%   +18.07%     
===========================================
  Files          87      136       +49     
  Lines        5337     9806     +4469     
===========================================
+ Hits          949     3516     +2567     
- Misses       4278     5894     +1616     
- Partials      110      396      +286     
Files Coverage Δ
x/cronos/keeper/precompiles/utils.go 0.00% <ø> (ø)
x/cronos/keeper/precompiles/relayer.go 33.56% <5.88%> (-0.14%) ⬇️

... and 71 files with indirect coverage changes

@mmsqe mmsqe marked this pull request as ready for review May 28, 2024 01:46
@mmsqe mmsqe requested a review from a team as a code owner May 28, 2024 01:46
@mmsqe mmsqe requested review from devashishdxt and thomas-nguy and removed request for a team May 28, 2024 01:46
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

Review Details

Configuration used: CodeRabbit UI
Review profile: CHILL

Commits Files that changed from the base of the PR and between b2a47a2 and d0b582b.
Files selected for processing (6)
  • CHANGELOG.md (1 hunks)
  • integration_tests/configs/ibc.jsonnet (2 hunks)
  • integration_tests/ibc_utils.py (3 hunks)
  • nix/sources.json (1 hunks)
  • x/cronos/keeper/precompiles/relayer.go (6 hunks)
  • x/cronos/keeper/precompiles/utils.go (2 hunks)
Files skipped from review due to trivial changes (2)
  • nix/sources.json
  • x/cronos/keeper/precompiles/utils.go
Additional Context Used
LanguageTool (48)
CHANGELOG.md (48)

Near line 21: The conjunction “when” requires the past participle “registered”. Or did you mean “you register”?
Context: ...ronos/pull/1421) Validate e2ee key when register. * (store) [#1448](https://github.com/c...
Rule ID: IF_VB_PCT


Near line 123: Did you mean “or”? ‘Of’ refers to parts of a whole, while ‘or’ refers to alternatives.
Context: ...onos/pull/1216) Update ethermint to fix of avoid redundant parse chainID from gens...
Rule ID: CONFUSION_OF_OR


Near line 164: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ...n processing and double spend check. - [cronos#742](https://github.com/crypto-org-chai...
Rule ID: ENGLISH_WORD_REPEAT_BEGINNING_RULE


Near line 165: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ...e handler for v0.8.0-gravity-alpha2. - [cronos#750](https://github.com/crypto-org-chai...
Rule ID: ENGLISH_WORD_REPEAT_BEGINNING_RULE


Near line 166: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ...e handler for v0.8.0-gravity-alpha3. - [cronos#769](https://github.com/crypto-org-chai...
Rule ID: ENGLISH_WORD_REPEAT_BEGINNING_RULE


Near line 167: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ...cope of the contract that manage it. - [cronos#775](https://github.com/crypto-org-chai...
Rule ID: ENGLISH_WORD_REPEAT_BEGINNING_RULE


Near line 168: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ...775) Support turnbridge transaction. - [cronos#781](https://github.com/crypto-org-chai...
Rule ID: ENGLISH_WORD_REPEAT_BEGINNING_RULE


Near line 169: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: .../cronos/pull/781) Add prune command. - [cronos#830](https://github.com/crypto-org-chai...
Rule ID: ENGLISH_WORD_REPEAT_BEGINNING_RULE


Near line 172: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ...upgrade handler for v2.0.0-testnet3. - [cronos#795](https://github.com/crypto-org-chai...
Rule ID: ENGLISH_WORD_REPEAT_BEGINNING_RULE


Near line 173: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: .../795) Support permissions in cronos. - [cronos#997](https://github.com/crypto-org-chai...
Rule ID: ENGLISH_WORD_REPEAT_BEGINNING_RULE


Near line 174: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ...ontract for cronos originated crc20. - [cronos#1005](https://github.com/crypto-org-cha...
Rule ID: ENGLISH_WORD_REPEAT_BEGINNING_RULE


Near line 175: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ...o-ibc event in case of source token. - [cronos#1069](https://github.com/crypto-org-cha...
Rule ID: ENGLISH_WORD_REPEAT_BEGINNING_RULE


Near line 176: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ...o v1.10.26 and ibc-go to v6.2.0. - [cronos#1147](https://github.com/crypto-org-cha...
Rule ID: ENGLISH_WORD_REPEAT_BEGINNING_RULE


Near line 180: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ...adjusted correctly in ibc-go v7.2.0. - [cronos#1163](https://github.com/crypto-org-cha...
Rule ID: ENGLISH_WORD_REPEAT_BEGINNING_RULE


Near line 181: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ...ateful precompiled contract for ica. - [cronos#837](https://github.com/crypto-org-chai...
Rule ID: ENGLISH_WORD_REPEAT_BEGINNING_RULE


Near line 182: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ...teful precompiled contract for bank. - [cronos#1184](https://github.com/crypto-org-cha...
Rule ID: ENGLISH_WORD_REPEAT_BEGINNING_RULE


Near line 183: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ...ull/1184) Update ibc-go to v7.3.1. - [cronos#1186](https://github.com/crypto-org-cha...
Rule ID: ENGLISH_WORD_REPEAT_BEGINNING_RULE


Near line 184: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... max block gas limit in new version. - [cronos#1187](https://github.com/crypto-org-cha...
Rule ID: ENGLISH_WORD_REPEAT_BEGINNING_RULE


Near line 185: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ...1187) Disable gravity module in app. - [cronos#1185](https://github.com/crypto-org-cha...
Rule ID: ENGLISH_WORD_REPEAT_BEGINNING_RULE


Near line 186: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ...nos/pull/1185) Support ibc callback. - [cronos#1196](https://github.com/crypto-org-cha...
Rule ID: ENGLISH_WORD_REPEAT_BEGINNING_RULE


Near line 205: It seems that “to” is missing before the verb.
Context: .../cronos/pull/1150) Fix memiavl's unsafe retain of the root hashes. ### Features - [#...
Rule ID: MISSING_TO_BETWEEN_BE_AND_VB


Near line 209: Did you mean the phrasal verb “clean up” instead of the noun ‘cleanup’?
Context: .../pull/1042) call Close method on app to cleanup resource on graceful shutdown ([ethermi...
Rule ID: CLEAN_UP


Near line 325: After ‘it’, use the third-person verb form “fixes”.
Context: ...790) Update cosmos-sdk to v0.46.7, it fix a migration issue which affects pending...
Rule ID: IT_VBZ


Near line 392: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ...file state streamer (backport #702). - [cronos#730](https://github.com/crypto-org-chai...
Rule ID: ENGLISH_WORD_REPEAT_BEGINNING_RULE


Near line 414: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ...elSendToChain support from evm call. - [cronos#600](https://github.com/crypto-org-chai...
Rule ID: ENGLISH_WORD_REPEAT_BEGINNING_RULE


Near line 415: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ...plement bidirectional token mapping. - [cronos#611](https://github.com/crypto-org-chai...
Rule ID: ENGLISH_WORD_REPEAT_BEGINNING_RULE


Near line 416: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ...owledgement error in ibc middleware. - [cronos#627](https://github.com/crypto-org-chai...
Rule ID: ENGLISH_WORD_REPEAT_BEGINNING_RULE


Near line 431: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ...leware, use ibc-go upstream version. - [cronos#550](https://github.com/crypto-org-chai...
Rule ID: ENGLISH_WORD_REPEAT_BEGINNING_RULE


Near line 432: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ...basic json-rpc apis on pruned nodes. - [cronos#549](https://github.com/crypto-org-chai...
Rule ID: ENGLISH_WORD_REPEAT_BEGINNING_RULE


Near line 433: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ...tom tx indexer feature of ethermint. - [cronos#673](https://github.com/crypto-org-chai...
Rule ID: ENGLISH_WORD_REPEAT_BEGINNING_RULE


Near line 451: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ...ed in json-rpc apis (backport #502). - [cronos#526](https://github.com/crypto-org-chai...
Rule ID: ENGLISH_WORD_REPEAT_BEGINNING_RULE


Near line 452: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... Fix tendermint duplicated tx issue. - [cronos#584](https://github.com/crypto-org-chai...
Rule ID: ENGLISH_WORD_REPEAT_BEGINNING_RULE


Near line 453: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ...shes returned in some JSON-RPC apis. - [cronos#587](https://github.com/crypto-org-chai...
Rule ID: ENGLISH_WORD_REPEAT_BEGINNING_RULE


Near line 454: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... tx patch cmd recompute eth tx hash. - [cronos#595](https://github.com/crypto-org-chai...
Rule ID: ENGLISH_WORD_REPEAT_BEGINNING_RULE


Near line 460: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ...nd to patch txs post v0.7.0 upgrade. - [cronos#522](https://github.com/crypto-org-chai...
Rule ID: ENGLISH_WORD_REPEAT_BEGINNING_RULE


Near line 461: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... the tendermint tx duplicated issue. - [cronos#585](https://github.com/crypto-org-chai...
Rule ID: ENGLISH_WORD_REPEAT_BEGINNING_RULE


Near line 475: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ...ase fee related logic in the code. - [ethermint#817](https://github.com/tharsis/ethermi...
Rule ID: ENGLISH_WORD_REPEAT_BEGINNING_RULE


Near line 476: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ...ogic related to effectiveGasPrice. - [ethermint#822](https://github.com/tharsis/ethermi...
Rule ID: ENGLISH_WORD_REPEAT_BEGINNING_RULE


Near line 479: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... tx when block gas limit exceeded. - [cosmos-sdk#10725](https://github.com/cosmos/cosmos...
Rule ID: ENGLISH_WORD_REPEAT_BEGINNING_RULE


Near line 487: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ...e url query parameter in swagger-ui. - [cronos#328](https://github.com/crypto-org-chai...
Rule ID: ENGLISH_WORD_REPEAT_BEGINNING_RULE


Near line 488: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ...query result when --trace enabled. - [cronos#441](https://github.com/crypto-org-chai...
Rule ID: ENGLISH_WORD_REPEAT_BEGINNING_RULE


Near line 495: ‘prior to’ might be wordy. Consider a shorter alternative.
Context: ...ll/329) Fix panic of eth_call on blocks prior to upgrade. - [cronos#340](https://github....
Rule ID: EN_WORDINESS_PREMIUM_PRIOR_TO


Near line 496: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ...eth_call on blocks prior to upgrade. - [cronos#340](https://github.com/crypto-org-chai...
Rule ID: ENGLISH_WORD_REPEAT_BEGINNING_RULE


Near line 497: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ...t, b) fix data races traceContext. - [cronos#370](https://github.com/crypto-org-chai...
Rule ID: ENGLISH_WORD_REPEAT_BEGINNING_RULE


Near line 498: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ...g, add websockets integration tests. - [cronos#378](https://github.com/crypto-org-chai...
Rule ID: ENGLISH_WORD_REPEAT_BEGINNING_RULE


Near line 499: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... add returnValue message on tracing. - [cronos#446](https://github.com/crypto-org-chai...
Rule ID: ENGLISH_WORD_REPEAT_BEGINNING_RULE


Near line 619: After ‘it’, use the third-person verb form “upgrades”.
Context: ...org Chain. In addition to that, it also upgrade ethermint to its latest version (v0.5.0...
Rule ID: IT_VBZ


Near line 657: Possible missing comma found.
Context: ... version is a new scaffolding of cronos project where ethermint is included as a librar...
Rule ID: AI_HYDRA_LEO_MISSING_COMMA

Markdownlint (298)
CHANGELOG.md (298)

47: Expected: asterisk; Actual: dash
Unordered list style


59: Expected: asterisk; Actual: dash
Unordered list style


67: Expected: asterisk; Actual: dash
Unordered list style


75: Expected: asterisk; Actual: dash
Unordered list style


83: Expected: asterisk; Actual: dash
Unordered list style


84: Expected: asterisk; Actual: dash
Unordered list style


85: Expected: asterisk; Actual: dash
Unordered list style


89: Expected: asterisk; Actual: dash
Unordered list style


97: Expected: asterisk; Actual: dash
Unordered list style


98: Expected: asterisk; Actual: dash
Unordered list style


99: Expected: asterisk; Actual: dash
Unordered list style


100: Expected: asterisk; Actual: dash
Unordered list style


101: Expected: asterisk; Actual: dash
Unordered list style


102: Expected: asterisk; Actual: dash
Unordered list style


106: Expected: asterisk; Actual: dash
Unordered list style


107: Expected: asterisk; Actual: dash
Unordered list style


113: Expected: asterisk; Actual: dash
Unordered list style


114: Expected: asterisk; Actual: dash
Unordered list style


115: Expected: asterisk; Actual: dash
Unordered list style


116: Expected: asterisk; Actual: dash
Unordered list style


117: Expected: asterisk; Actual: dash
Unordered list style


121: Expected: asterisk; Actual: dash
Unordered list style


122: Expected: asterisk; Actual: dash
Unordered list style


123: Expected: asterisk; Actual: dash
Unordered list style


124: Expected: asterisk; Actual: dash
Unordered list style


125: Expected: asterisk; Actual: dash
Unordered list style


126: Expected: asterisk; Actual: dash
Unordered list style


130: Expected: asterisk; Actual: dash
Unordered list style


131: Expected: asterisk; Actual: dash
Unordered list style


132: Expected: asterisk; Actual: dash
Unordered list style


133: Expected: asterisk; Actual: dash
Unordered list style


134: Expected: asterisk; Actual: dash
Unordered list style


135: Expected: asterisk; Actual: dash
Unordered list style


139: Expected: asterisk; Actual: dash
Unordered list style


140: Expected: asterisk; Actual: dash
Unordered list style


141: Expected: asterisk; Actual: dash
Unordered list style


149: Expected: asterisk; Actual: dash
Unordered list style


150: Expected: asterisk; Actual: dash
Unordered list style


154: Expected: asterisk; Actual: dash
Unordered list style


162: Expected: asterisk; Actual: dash
Unordered list style


163: Expected: asterisk; Actual: dash
Unordered list style


164: Expected: asterisk; Actual: dash
Unordered list style


165: Expected: asterisk; Actual: dash
Unordered list style


166: Expected: asterisk; Actual: dash
Unordered list style


167: Expected: asterisk; Actual: dash
Unordered list style


168: Expected: asterisk; Actual: dash
Unordered list style


169: Expected: asterisk; Actual: dash
Unordered list style


170: Expected: asterisk; Actual: dash
Unordered list style


171: Expected: asterisk; Actual: dash
Unordered list style


172: Expected: asterisk; Actual: dash
Unordered list style


173: Expected: asterisk; Actual: dash
Unordered list style


174: Expected: asterisk; Actual: dash
Unordered list style


175: Expected: asterisk; Actual: dash
Unordered list style


176: Expected: asterisk; Actual: dash
Unordered list style


177: Expected: asterisk; Actual: dash
Unordered list style


178: Expected: asterisk; Actual: dash
Unordered list style


179: Expected: asterisk; Actual: dash
Unordered list style


180: Expected: asterisk; Actual: dash
Unordered list style


181: Expected: asterisk; Actual: dash
Unordered list style


182: Expected: asterisk; Actual: dash
Unordered list style


183: Expected: asterisk; Actual: dash
Unordered list style


184: Expected: asterisk; Actual: dash
Unordered list style


185: Expected: asterisk; Actual: dash
Unordered list style


186: Expected: asterisk; Actual: dash
Unordered list style


190: Expected: asterisk; Actual: dash
Unordered list style


191: Expected: asterisk; Actual: dash
Unordered list style


192: Expected: asterisk; Actual: dash
Unordered list style


193: Expected: asterisk; Actual: dash
Unordered list style


194: Expected: asterisk; Actual: dash
Unordered list style


195: Expected: asterisk; Actual: dash
Unordered list style


196: Expected: asterisk; Actual: dash
Unordered list style


197: Expected: asterisk; Actual: dash
Unordered list style


198: Expected: asterisk; Actual: dash
Unordered list style


199: Expected: asterisk; Actual: dash
Unordered list style


200: Expected: asterisk; Actual: dash
Unordered list style


201: Expected: asterisk; Actual: dash
Unordered list style


202: Expected: asterisk; Actual: dash
Unordered list style


203: Expected: asterisk; Actual: dash
Unordered list style


204: Expected: asterisk; Actual: dash
Unordered list style


205: Expected: asterisk; Actual: dash
Unordered list style


209: Expected: asterisk; Actual: dash
Unordered list style


210: Expected: asterisk; Actual: dash
Unordered list style


211: Expected: asterisk; Actual: dash
Unordered list style


212: Expected: asterisk; Actual: dash
Unordered list style


213: Expected: asterisk; Actual: dash
Unordered list style


214: Expected: asterisk; Actual: dash
Unordered list style


215: Expected: asterisk; Actual: dash
Unordered list style


216: Expected: asterisk; Actual: dash
Unordered list style


220: Expected: asterisk; Actual: dash
Unordered list style


221: Expected: asterisk; Actual: dash
Unordered list style


222: Expected: asterisk; Actual: dash
Unordered list style


223: Expected: asterisk; Actual: dash
Unordered list style


224: Expected: asterisk; Actual: dash
Unordered list style


225: Expected: asterisk; Actual: dash
Unordered list style


226: Expected: asterisk; Actual: dash
Unordered list style


227: Expected: asterisk; Actual: dash
Unordered list style


228: Expected: asterisk; Actual: dash
Unordered list style


229: Expected: asterisk; Actual: dash
Unordered list style


230: Expected: asterisk; Actual: dash
Unordered list style


231: Expected: asterisk; Actual: dash
Unordered list style


232: Expected: asterisk; Actual: dash
Unordered list style


233: Expected: asterisk; Actual: dash
Unordered list style


234: Expected: asterisk; Actual: dash
Unordered list style


235: Expected: asterisk; Actual: dash
Unordered list style


236: Expected: asterisk; Actual: dash
Unordered list style


237: Expected: asterisk; Actual: dash
Unordered list style


238: Expected: asterisk; Actual: dash
Unordered list style


239: Expected: asterisk; Actual: dash
Unordered list style


240: Expected: asterisk; Actual: dash
Unordered list style


241: Expected: asterisk; Actual: dash
Unordered list style


242: Expected: asterisk; Actual: dash
Unordered list style


243: Expected: asterisk; Actual: dash
Unordered list style


244: Expected: asterisk; Actual: dash
Unordered list style


252: Expected: asterisk; Actual: dash
Unordered list style


253: Expected: asterisk; Actual: dash
Unordered list style


254: Expected: asterisk; Actual: dash
Unordered list style


258: Expected: asterisk; Actual: dash
Unordered list style


259: Expected: asterisk; Actual: dash
Unordered list style


260: Expected: asterisk; Actual: dash
Unordered list style


261: Expected: asterisk; Actual: dash
Unordered list style


262: Expected: asterisk; Actual: dash
Unordered list style


263: Expected: asterisk; Actual: dash
Unordered list style


264: Expected: asterisk; Actual: dash
Unordered list style


272: Expected: asterisk; Actual: dash
Unordered list style


280: Expected: asterisk; Actual: dash
Unordered list style


284: Expected: asterisk; Actual: dash
Unordered list style


285: Expected: asterisk; Actual: dash
Unordered list style


286: Expected: asterisk; Actual: dash
Unordered list style


294: Expected: asterisk; Actual: dash
Unordered list style


298: Expected: asterisk; Actual: dash
Unordered list style


299: Expected: asterisk; Actual: dash
Unordered list style


300: Expected: asterisk; Actual: dash
Unordered list style


308: Expected: asterisk; Actual: dash
Unordered list style


316: Expected: asterisk; Actual: dash
Unordered list style


324: Expected: asterisk; Actual: dash
Unordered list style


325: Expected: asterisk; Actual: dash
Unordered list style


334: Expected: asterisk; Actual: dash
Unordered list style


342: Expected: asterisk; Actual: dash
Unordered list style


350: Expected: asterisk; Actual: dash
Unordered list style


358: Expected: asterisk; Actual: dash
Unordered list style


359: Expected: asterisk; Actual: dash
Unordered list style


360: Expected: asterisk; Actual: dash
Unordered list style


361: Expected: asterisk; Actual: dash
Unordered list style


369: Expected: asterisk; Actual: dash
Unordered list style


377: Expected: asterisk; Actual: dash
Unordered list style


378: Expected: asterisk; Actual: dash
Unordered list style


386: Expected: asterisk; Actual: dash
Unordered list style


390: Expected: asterisk; Actual: dash
Unordered list style


391: Expected: asterisk; Actual: dash
Unordered list style


392: Expected: asterisk; Actual: dash
Unordered list style


400: Expected: asterisk; Actual: dash
Unordered list style


412: Expected: asterisk; Actual: dash
Unordered list style


413: Expected: asterisk; Actual: dash
Unordered list style


414: Expected: asterisk; Actual: dash
Unordered list style


415: Expected: asterisk; Actual: dash
Unordered list style


416: Expected: asterisk; Actual: dash
Unordered list style


417: Expected: asterisk; Actual: dash
Unordered list style


418: Expected: asterisk; Actual: dash
Unordered list style


422: Expected: asterisk; Actual: dash
Unordered list style


423: Expected: asterisk; Actual: dash
Unordered list style


424: Expected: asterisk; Actual: dash
Unordered list style


428: Expected: asterisk; Actual: dash
Unordered list style


429: Expected: asterisk; Actual: dash
Unordered list style


430: Expected: asterisk; Actual: dash
Unordered list style


431: Expected: asterisk; Actual: dash
Unordered list style


432: Expected: asterisk; Actual: dash
Unordered list style


433: Expected: asterisk; Actual: dash
Unordered list style


441: Expected: asterisk; Actual: dash
Unordered list style


449: Expected: asterisk; Actual: dash
Unordered list style


450: Expected: asterisk; Actual: dash
Unordered list style


451: Expected: asterisk; Actual: dash
Unordered list style


452: Expected: asterisk; Actual: dash
Unordered list style


453: Expected: asterisk; Actual: dash
Unordered list style


454: Expected: asterisk; Actual: dash
Unordered list style


458: Expected: asterisk; Actual: dash
Unordered list style


459: Expected: asterisk; Actual: dash
Unordered list style


460: Expected: asterisk; Actual: dash
Unordered list style


461: Expected: asterisk; Actual: dash
Unordered list style


469: Expected: asterisk; Actual: dash
Unordered list style


470: Expected: asterisk; Actual: dash
Unordered list style


471: Expected: asterisk; Actual: dash
Unordered list style


472: Expected: asterisk; Actual: dash
Unordered list style


473: Expected: asterisk; Actual: dash
Unordered list style


474: Expected: asterisk; Actual: dash
Unordered list style


475: Expected: asterisk; Actual: dash
Unordered list style


476: Expected: asterisk; Actual: dash
Unordered list style


477: Expected: asterisk; Actual: dash
Unordered list style


478: Expected: asterisk; Actual: dash
Unordered list style


479: Expected: asterisk; Actual: dash
Unordered list style


480: Expected: asterisk; Actual: dash
Unordered list style


484: Expected: asterisk; Actual: dash
Unordered list style


485: Expected: asterisk; Actual: dash
Unordered list style


486: Expected: asterisk; Actual: dash
Unordered list style


487: Expected: asterisk; Actual: dash
Unordered list style


488: Expected: asterisk; Actual: dash
Unordered list style


492: Expected: asterisk; Actual: dash
Unordered list style


493: Expected: asterisk; Actual: dash
Unordered list style


494: Expected: asterisk; Actual: dash
Unordered list style


495: Expected: asterisk; Actual: dash
Unordered list style


496: Expected: asterisk; Actual: dash
Unordered list style


497: Expected: asterisk; Actual: dash
Unordered list style


498: Expected: asterisk; Actual: dash
Unordered list style


499: Expected: asterisk; Actual: dash
Unordered list style


507: Expected: asterisk; Actual: dash
Unordered list style


508: Expected: asterisk; Actual: dash
Unordered list style


516: Expected: asterisk; Actual: dash
Unordered list style


524: Expected: asterisk; Actual: dash
Unordered list style


525: Expected: asterisk; Actual: dash
Unordered list style


526: Expected: asterisk; Actual: dash
Unordered list style


530: Expected: asterisk; Actual: dash
Unordered list style


531: Expected: asterisk; Actual: dash
Unordered list style


539: Expected: asterisk; Actual: dash
Unordered list style


540: Expected: asterisk; Actual: dash
Unordered list style


541: Expected: asterisk; Actual: dash
Unordered list style


542: Expected: asterisk; Actual: dash
Unordered list style


543: Expected: asterisk; Actual: dash
Unordered list style


551: Expected: asterisk; Actual: dash
Unordered list style


555: Expected: asterisk; Actual: dash
Unordered list style


556: Expected: asterisk; Actual: dash
Unordered list style


557: Expected: asterisk; Actual: dash
Unordered list style


558: Expected: asterisk; Actual: dash
Unordered list style


568: Expected: asterisk; Actual: dash
Unordered list style


572: Expected: asterisk; Actual: dash
Unordered list style


573: Expected: asterisk; Actual: dash
Unordered list style


574: Expected: asterisk; Actual: dash
Unordered list style


575: Expected: asterisk; Actual: dash
Unordered list style


579: Expected: asterisk; Actual: dash
Unordered list style


580: Expected: asterisk; Actual: dash
Unordered list style


591: Expected: asterisk; Actual: dash
Unordered list style


592: Expected: asterisk; Actual: dash
Unordered list style


593: Expected: asterisk; Actual: dash
Unordered list style


594: Expected: asterisk; Actual: dash
Unordered list style


595: Expected: asterisk; Actual: dash
Unordered list style


599: Expected: asterisk; Actual: dash
Unordered list style


600: Expected: asterisk; Actual: dash
Unordered list style


601: Expected: asterisk; Actual: dash
Unordered list style


611: Expected: asterisk; Actual: dash
Unordered list style


612: Expected: asterisk; Actual: dash
Unordered list style


623: Expected: asterisk; Actual: dash
Unordered list style


627: Expected: asterisk; Actual: dash
Unordered list style


628: Expected: asterisk; Actual: dash
Unordered list style


629: Expected: asterisk; Actual: dash
Unordered list style


630: Expected: asterisk; Actual: dash
Unordered list style


631: Expected: asterisk; Actual: dash
Unordered list style


632: Expected: asterisk; Actual: dash
Unordered list style


634: Expected: asterisk; Actual: dash
Unordered list style


635: Expected: asterisk; Actual: dash
Unordered list style


643: Expected: asterisk; Actual: dash
Unordered list style


647: Expected: asterisk; Actual: dash
Unordered list style


651: Expected: asterisk; Actual: dash
Unordered list style


661: Expected: asterisk; Actual: dash
Unordered list style


662: Expected: asterisk; Actual: dash
Unordered list style


663: Expected: asterisk; Actual: dash
Unordered list style


664: Expected: asterisk; Actual: dash
Unordered list style


670: Expected: asterisk; Actual: dash
Unordered list style


671: Expected: asterisk; Actual: dash
Unordered list style


675: Expected: asterisk; Actual: dash
Unordered list style


33: null
Emphasis used instead of a heading


41: null
Emphasis used instead of a heading


53: null
Emphasis used instead of a heading


61: null
Emphasis used instead of a heading


69: null
Emphasis used instead of a heading


77: null
Emphasis used instead of a heading


91: null
Emphasis used instead of a heading


109: null
Emphasis used instead of a heading


143: null
Emphasis used instead of a heading


156: null
Emphasis used instead of a heading


246: null
Emphasis used instead of a heading


266: null
Emphasis used instead of a heading


274: null
Emphasis used instead of a heading


288: null
Emphasis used instead of a heading


302: null
Emphasis used instead of a heading


310: null
Emphasis used instead of a heading


318: null
Emphasis used instead of a heading


328: null
Emphasis used instead of a heading


336: null
Emphasis used instead of a heading


344: null
Emphasis used instead of a heading


352: null
Emphasis used instead of a heading


363: null
Emphasis used instead of a heading


371: null
Emphasis used instead of a heading


380: null
Emphasis used instead of a heading


394: null
Emphasis used instead of a heading


402: null
Emphasis used instead of a heading


406: null
Emphasis used instead of a heading


435: null
Emphasis used instead of a heading


443: null
Emphasis used instead of a heading


463: null
Emphasis used instead of a heading


501: null
Emphasis used instead of a heading


510: null
Emphasis used instead of a heading


518: null
Emphasis used instead of a heading


533: null
Emphasis used instead of a heading


545: null
Emphasis used instead of a heading


560: null
Emphasis used instead of a heading


582: null
Emphasis used instead of a heading


603: null
Emphasis used instead of a heading


614: null
Emphasis used instead of a heading


637: null
Emphasis used instead of a heading


653: null
Emphasis used instead of a heading

GitHub Check Runs (1)
codecov/patch failure (5)

x/cronos/keeper/precompiles/relayer.go: [warning] 135-137: x/cronos/keeper/precompiles/relayer.go#L135-L137
Added lines #L135 - L137 were not covered by tests


x/cronos/keeper/precompiles/relayer.go: [warning] 139-142: x/cronos/keeper/precompiles/relayer.go#L139-L142
Added lines #L139 - L142 were not covered by tests


x/cronos/keeper/precompiles/relayer.go: [warning] 144-147: x/cronos/keeper/precompiles/relayer.go#L144-L147
Added lines #L144 - L147 were not covered by tests


x/cronos/keeper/precompiles/relayer.go: [warning] 149-151: x/cronos/keeper/precompiles/relayer.go#L149-L151
Added lines #L149 - L151 were not covered by tests


x/cronos/keeper/precompiles/relayer.go: [warning] 153-154: x/cronos/keeper/precompiles/relayer.go#L153-L154
Added lines #L153 - L154 were not covered by tests

Additional comments not posted (7)
integration_tests/configs/ibc.jsonnet (2)

15-15: Increased the range of user accounts from 2 to 50 in the 'cronos_777-1' configuration. Ensure that the system can handle the increased load and that all necessary resources are scaled accordingly.


90-90: Increased the range of user accounts from 2 to 50 in the 'chainmain-1' configuration. This change should be tested to ensure that the system's performance remains stable under the increased load.

x/cronos/keeper/precompiles/relayer.go (3)

16-17: Added imports for IBC transfer types and channel types. Ensure these imports are used effectively in the code and that there are no unused imports.


135-156: Updated the RecvPacket method to dynamically adjust gas requirements based on whether the receiver chain is the source. This is a critical update and should be thoroughly tested to ensure it behaves as expected under all conditions.


50-51: Updated constants for gas calculations when the receiver chain is the source and when it is not. Ensure these values are derived from accurate measurements or calculations to prevent over or underestimation of gas costs.

integration_tests/ibc_utils.py (1)

350-350: Updated the range of users for the ibc_multi_transfer function from 2 to 51. This change increases the test coverage and should help in identifying issues at scale. Ensure that the infrastructure can handle the increased number of transactions without performance degradation.

CHANGELOG.md (1)

11-11: The changelog entry correctly summarizes the changes made in PR #1458 regarding the adjustment of gas requirements for recvPacket. This entry is consistent with the format and practices observed in the rest of the changelog.

@mmsqe mmsqe added this pull request to the merge queue May 28, 2024
Merged via the queue into crypto-org-chain:main with commit 6fe4612 May 28, 2024
36 of 37 checks passed
mmsqe added a commit to mmsqe/cronos that referenced this pull request May 28, 2024
…Source (crypto-org-chain#1458)

* Problem: require gas in RecvPacket is inaccurate when ReceiverChainIsSource

* cleanup combo

* set relayer caller for hermes

* more users
mmsqe added a commit that referenced this pull request May 28, 2024
…Source (#1458) (#1460)

* Problem: require gas in RecvPacket is inaccurate when ReceiverChainIsSource

* cleanup combo

* set relayer caller for hermes

* more users
alienc0der pushed a commit to alienc0der/supernova that referenced this pull request Jun 8, 2024
…Source (crypto-org-chain#1458)

* Problem: require gas in RecvPacket is inaccurate when ReceiverChainIsSource

* cleanup combo

* set relayer caller for hermes

* more users
mmsqe added a commit to mmsqe/cronos that referenced this pull request Jun 18, 2024
yihuang added a commit that referenced this pull request Jun 18, 2024
…rChainIsSource (#1458)" (#1478)

This reverts commit 0ef63b9.

Co-authored-by: yihuang <huang@crypto.com>
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.

2 participants