-
Notifications
You must be signed in to change notification settings - Fork 53
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
Update contract pragmas #979
Conversation
WalkthroughThis pull request updates the Solidity version pragma in several test files (changing from a fixed version to a caret notation) and introduces comprehensive support for the Berachain network. Multiple configuration files (JSON, TOML) now include new entries for Berachain, detailing network properties, RPC and Etherscan settings, and deployment parameters. In addition, the target state for LiFiDiamond facets has been updated with new version numbers and a new RelayFacet. No changes have been made to functional logic beyond these configuration and versioning updates. Changes
Possibly related PRs
Suggested reviewers
Warning Review ran into problems🔥 ProblemsErrors were encountered while retrieving linked issues. Errors (1)
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? 🪧 TipsChatThere are 3 ways to chat with CodeRabbit:
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 using PR comments)
Other keywords and placeholders
CodeRabbit Configuration File (
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Actionable comments posted: 2
🧹 Nitpick comments (1)
config/amarok.json (1)
95-100
: Formatting Adjustment in Mode SectionThe tokensToApprove array in the "mode" section has been reformatted to a single-line array. This change is purely stylistic and improves readability while maintaining functionality.
📜 Review details
Configuration used: CodeRabbit UI
Review profile: CHILL
Plan: Pro
📒 Files selected for processing (21)
archive/test/LiFiDiamondImmutable.t.sol
(1 hunks)config/amarok.json
(2 hunks)config/dexs.json
(2 hunks)config/global.json
(1 hunks)config/networks.json
(1 hunks)config/permit2Proxy.json
(1 hunks)config/relay.json
(1 hunks)config/stargate.json
(4 hunks)config/symbiosis.json
(1 hunks)config/tokenwrapper.json
(1 hunks)deployments/_deployments_log_file.json
(25 hunks)deployments/berachain.diamond.json
(1 hunks)deployments/berachain.json
(1 hunks)foundry.toml
(2 hunks)networks
(1 hunks)script/deploy/_targetState.json
(57 hunks)test/solidity/Facets/GasZipFacet.t.sol
(1 hunks)test/solidity/Facets/RelayFacet.t.sol
(1 hunks)test/solidity/Helpers/WithdrawablePeriphery.t.sol
(1 hunks)test/solidity/Periphery/GasZipPeriphery.t.sol
(1 hunks)test/solidity/Periphery/Permit2Proxy.t.sol
(1 hunks)
✅ Files skipped from review due to trivial changes (7)
- networks
- test/solidity/Periphery/Permit2Proxy.t.sol
- test/solidity/Facets/GasZipFacet.t.sol
- test/solidity/Helpers/WithdrawablePeriphery.t.sol
- archive/test/LiFiDiamondImmutable.t.sol
- test/solidity/Facets/RelayFacet.t.sol
- test/solidity/Periphery/GasZipPeriphery.t.sol
🧰 Additional context used
📓 Learnings (1)
config/dexs.json (1)
Learnt from: ezynda3
PR: lifinance/contracts#861
File: config/dexs.json:748-752
Timestamp: 2024-11-21T08:39:29.530Z
Learning: In the 'worldchain' network, the addresses `0x50D5a8aCFAe13Dceb217E9a071F6c6Bd5bDB4155`, `0x8f023b4193a6b18C227B4a755f8e28B3D30Ef9a1`, and `0x603a538477d44064eA5A5d8C345b4Ff6fca1142a` are used as DEXs and should be included in `config/dexs.json`.
🪛 Biome (1.9.4)
script/deploy/_targetState.json
[error] 263-263: The key GasZipFacet was already declared.
This where a duplicated key was declared again.
If a key is defined multiple times, only the last definition takes effect. Previous definitions are ignored.
(lint/suspicious/noDuplicateObjectKeys)
[error] 300-300: The key GasZipFacet was already declared.
This where a duplicated key was declared again.
If a key is defined multiple times, only the last definition takes effect. Previous definitions are ignored.
(lint/suspicious/noDuplicateObjectKeys)
[error] 538-538: expected ,
but instead found "ReceiverStargateV2"
Remove "ReceiverStargateV2"
(parse)
[error] 537-537: The key ReceiverStargateV2 was already declared.
This where a duplicated key was declared again.
If a key is defined multiple times, only the last definition takes effect. Previous definitions are ignored.
(lint/suspicious/noDuplicateObjectKeys)
[error] 706-706: The key GasZipFacet was already declared.
This where a duplicated key was declared again.
If a key is defined multiple times, only the last definition takes effect. Previous definitions are ignored.
(lint/suspicious/noDuplicateObjectKeys)
[error] 815-815: The key GasZipFacet was already declared.
This where a duplicated key was declared again.
If a key is defined multiple times, only the last definition takes effect. Previous definitions are ignored.
(lint/suspicious/noDuplicateObjectKeys)
[error] 1023-1023: The key ReceiverStargateV2 was already declared.
This where a duplicated key was declared again.
If a key is defined multiple times, only the last definition takes effect. Previous definitions are ignored.
(lint/suspicious/noDuplicateObjectKeys)
[error] 1347-1347: expected ,
but instead found "GasZipFacet"
Remove "GasZipFacet"
(parse)
[error] 1346-1346: The key GasZipFacet was already declared.
This where a duplicated key was declared again.
If a key is defined multiple times, only the last definition takes effect. Previous definitions are ignored.
(lint/suspicious/noDuplicateObjectKeys)
[error] 1463-1463: expected ,
but instead found "GasZipFacet"
Remove "GasZipFacet"
(parse)
[error] 1462-1462: The key GasZipFacet was already declared.
This where a duplicated key was declared again.
If a key is defined multiple times, only the last definition takes effect. Previous definitions are ignored.
(lint/suspicious/noDuplicateObjectKeys)
🪛 GitHub Actions: JSON Checker
script/deploy/_targetState.json
[error] 537-537: Parse error on line 537: Expecting 'EOF', '}', ':', ',', ']', got 'STRING'
⏰ Context from checks skipped due to timeout of 90000ms (2)
- GitHub Check: enforce-min-test-coverage
- GitHub Check: run-unit-tests
🔇 Additional comments (47)
config/permit2Proxy.json (1)
8-8
: New "berachain" entry in permit2Proxy configuration.
The new entry at line 8 correctly adds the Berachain network with its designated address. Please confirm that this address is accurate and consistent with your network’s deployment requirements.deployments/berachain.json (1)
1-27
: New Berachain deployment mappings added.
A complete deployment file for Berachain has been introduced with detailed facet-to-address mappings. Verify that each address corresponds to the correct deployed facet and that the overall structure matches your diamond architecture design.config/global.json (1)
4-4
: Addition of "berachain" in create3Factory.
The new key for Berachain in the create3Factory object (line 4) extends network support. Ensure this address ("0x8b60A21A0e2852cCC944971486868beBB9f32287") is intentional and aligns with the factory contracts for this network.config/tokenwrapper.json (1)
5-5
: New Berachain entry in tokenwrapper configuration.
The addition at line 5 introduces the Berachain network with the address "0x6969696969696969696969696969696969696969". This address appears to use a patterned value; please double-check that it is correct for production or if it is meant to be a placeholder.deployments/berachain.diamond.json (1)
1-72
: Comprehensive LiFiDiamond deployment configuration for Berachain.
This new file outlines the complete facet configuration under "LiFiDiamond" (including facets and periphery details) with specified versions and addresses. Please ensure that:
• All facet addresses and version numbers are accurate and reflect the actual deployed contracts on Berachain.
• The periphery configuration (e.g., ERC20Proxy, Executor, etc.) is fully updated and consistent with your system’s requirements.
It may be beneficial to cross-check these settings against your deployment logs to ensure full consistency.config/symbiosis.json (1)
22-25
: Berachain Entry Addition in Symbiosis ConfigA new "berachain" entry has been added with its own metaRouter and gateway values. The addresses ("0xcE8f24A58D85eD5c5A6824f7be1F8d4711A0eb4C" for metaRouter and "0xAdB2d3b711Bb8d8Ea92ff70292c466140432c278" for gateway) are consistent with similar entries in other networks.
config/relay.json (1)
17-21
: Berachain Relay Configuration AdditionThe new "berachain" section is introduced with chainId 80094 along with a designated relayReceiver ("0x7f4babd2c7d35221e72ab67ea72cba99573a0089") and a relaySolver consistent with other networks. Please double-check that the relayReceiver is correct and that these values align with the overall deployment strategy.
foundry.toml (2)
32-33
: New RPC Endpoint for Berachain AddedThe addition of the Berachain RPC endpoint using the environment variable "${ETH_NODE_URI_BERACHAIN}" fits well within the [rpc_endpoints] section. Ensure that the corresponding environment variable is correctly configured in your deployment environment.
83-83
: New Etherscan Configuration for BerachainA dedicated Etherscan configuration for Berachain has been added with its API key, URL, and chain ID (80094). Verify that the provided URL ("https://api.routescan.io/v2/network/mainnet/evm/80094/etherscan") is correct for Berachain explorers and that the API key variable is properly set.
config/amarok.json (1)
38-43
: Berachain Section Added to Amarok ConfigA new "berachain" section appears with properties: chainId 80094, a zero-address for connextHandler, an empty domain, and an empty tokensToApprove array. The structure is consistent with similar network entries. Confirm that the zero-address for connextHandler is intentional (perhaps as a placeholder) and that all values meet the integration requirements.
config/stargate.json (4)
10-10
: EndpointV2 Update for BerachainAn entry for Berachain has been introduced in the endpointV2 section with the address "0x6F475642a6e85809B1c36Fa62763669b1b48DD5B". Verify that this address is accurate for the Berachain endpoint as per deployment documentation.
52-52
: Token Messaging Update for BerachainThe tokenMessaging section now includes a Berachain entry with the address "0xAf5191B0De278C7286d6C7CC6ab6BB8A73bA2Cd6". Make sure that this address corresponds to the intended token messaging contract for Berachain.
216-216
: Composer Entry for BerachainThe composers section features a Berachain entry with a placeholder address ("0x0000000000000000000000000000000000000000"). Please confirm if this is meant to be a temporary placeholder or if an actual deployed address should be provided in subsequent updates.
264-264
: Router Entry for BerachainA new router entry for Berachain has been added with a placeholder address ("0x0000000000000000000000000000000000000000"). Verify that this value is correct for the current deployment phase or if it requires an update when the router is finalized.
config/networks.json (1)
128-145
: New 'berachain' network configuration.
A new entry for the "berachain" network has been added with values such as chainId 80094, nativeCurrency "BERA", and specific RPC/explorer URLs. Please verify that the RPC URL ("https://bold-skilled-sheet.furtim-network.quiknode.pro/cece5b4f5d66ab9b4db94dbaa82daac45bc9013e/") and explorer endpoints ("https://80094.routescan.io" and its API) are correct and reliable for production use. Also note that the multicallAddress is an empty string; if the network supports multicall, consider populating this field. Moreover, review the safeWebUrl ("https://www.basdf1234.xyz/transactions/queue?safe=berachain:0xdf61270fDC1A892874Fd3C0143A0A4CBA74F4EF1") to ensure it meets your production standards.config/dexs.json (1)
199-203
: Addition of 'berachain' DEX addresses.
A new entry for "berachain" has been added with three addresses:
• "0x070EC43b4222E0f17EEcD2C839cb9D1D5adeF73c"
• "0xbf7d441A5015d92357bB41DB2552E11619D62326"
• "0x6295b30297C254108E0bF16C70D513d2043E3d45"
These are in line with the style of entries for other networks. Please double-check that these addresses match those of the deployed DEX contracts for Berachain.script/deploy/_targetState.json (6)
14-25
: Mainnet Version Updates:
The version numbers for several facets (e.g., CalldataVerificationFacet, ERC20Proxy, Executor, FeeCollector, Receiver, LiFuelFeeCollector, TokenWrapper, LiFiDEXAggregator, and Permit2Proxy) have been updated as intended in the mainnet production configuration. Please ensure that these changes are synchronized with all related deployment scripts and that any contract references are updated accordingly.
51-51
: New Facet Addition – RelayFacet in Mainnet:
The addition of "RelayFacet" with version "1.0.0" appears correct. Please verify that its integration is fully tested and that any dependent configurations reflect its presence properly.
73-84
: Polygon Version Updates:
The facets in the polygon production configuration (including CalldataVerificationFacet, ERC20Proxy, Executor, FeeCollector, Receiver, LiFuelFeeCollector, TokenWrapper, LiFiDEXAggregator, and Permit2Proxy) have been updated to their new versions. These changes are consistent with the intended update; just ensure that these revisions propagate to all downstream deployment files.
105-105
: New Facet Addition – RelayFacet in Polygon:
The inclusion of "RelayFacet" with version "1.0.0" in the polygon section appears correct. Confirm that its deployment is coordinated with the other facet updates and that any related tests are updated.
1-1619
: Overall Duplicate Keys and JSON Syntax Issues:
Across multiple environments in this JSON file, several keys (such as "GasZipFacet" and "ReceiverStargateV2") are declared more than once. Duplicate keys in JSON are problematic because only the last defined value is used, and they can trigger parsing errors—as evidenced by the static analysis and pipeline messages. Please review each environment block throughout the file and remove or consolidate duplicate definitions to ensure a valid and unambiguous JSON structure.🧰 Tools
🪛 Biome (1.9.4)
[error] 538-538: expected
,
but instead found"ReceiverStargateV2"
Remove "ReceiverStargateV2"
(parse)
[error] 1347-1347: expected
,
but instead found"GasZipFacet"
Remove "GasZipFacet"
(parse)
[error] 1463-1463: expected
,
but instead found"GasZipFacet"
Remove "GasZipFacet"
(parse)
[error] 41-41: The key GasZipFacet was already declared.
This where a duplicated key was declared again.
If a key is defined multiple times, only the last definition takes effect. Previous definitions are ignored.
(lint/suspicious/noDuplicateObjectKeys)
[error] 99-99: The key GasZipFacet was already declared.
This where a duplicated key was declared again.
If a key is defined multiple times, only the last definition takes effect. Previous definitions are ignored.
(lint/suspicious/noDuplicateObjectKeys)
[error] 223-223: The key GasZipFacet was already declared.
This where a duplicated key was declared again.
If a key is defined multiple times, only the last definition takes effect. Previous definitions are ignored.
(lint/suspicious/noDuplicateObjectKeys)
[error] 263-263: The key GasZipFacet was already declared.
This where a duplicated key was declared again.
If a key is defined multiple times, only the last definition takes effect. Previous definitions are ignored.
(lint/suspicious/noDuplicateObjectKeys)
[error] 300-300: The key GasZipFacet was already declared.
This where a duplicated key was declared again.
If a key is defined multiple times, only the last definition takes effect. Previous definitions are ignored.
(lint/suspicious/noDuplicateObjectKeys)
[error] 339-339: The key GasZipFacet was already declared.
This where a duplicated key was declared again.
If a key is defined multiple times, only the last definition takes effect. Previous definitions are ignored.
(lint/suspicious/noDuplicateObjectKeys)
[error] 390-390: The key GasZipFacet was already declared.
This where a duplicated key was declared again.
If a key is defined multiple times, only the last definition takes effect. Previous definitions are ignored.
(lint/suspicious/noDuplicateObjectKeys)
[error] 443-443: The key GasZipFacet was already declared.
This where a duplicated key was declared again.
If a key is defined multiple times, only the last definition takes effect. Previous definitions are ignored.
(lint/suspicious/noDuplicateObjectKeys)
[error] 537-537: The key ReceiverStargateV2 was already declared.
This where a duplicated key was declared again.
If a key is defined multiple times, only the last definition takes effect. Previous definitions are ignored.
(lint/suspicious/noDuplicateObjectKeys)
[error] 706-706: The key GasZipFacet was already declared.
This where a duplicated key was declared again.
If a key is defined multiple times, only the last definition takes effect. Previous definitions are ignored.
(lint/suspicious/noDuplicateObjectKeys)
[error] 815-815: The key GasZipFacet was already declared.
This where a duplicated key was declared again.
If a key is defined multiple times, only the last definition takes effect. Previous definitions are ignored.
(lint/suspicious/noDuplicateObjectKeys)
[error] 1023-1023: The key ReceiverStargateV2 was already declared.
This where a duplicated key was declared again.
If a key is defined multiple times, only the last definition takes effect. Previous definitions are ignored.
(lint/suspicious/noDuplicateObjectKeys)
[error] 1346-1346: The key GasZipFacet was already declared.
This where a duplicated key was declared again.
If a key is defined multiple times, only the last definition takes effect. Previous definitions are ignored.
(lint/suspicious/noDuplicateObjectKeys)
[error] 1462-1462: The key GasZipFacet was already declared.
This where a duplicated key was declared again.
If a key is defined multiple times, only the last definition takes effect. Previous definitions are ignored.
(lint/suspicious/noDuplicateObjectKeys)
🪛 GitHub Actions: JSON Checker
[error] 537-537: Parse error on line 537: Expecting 'EOF', '}', ':', ',', ']', got 'STRING'
537-538
:⚠️ Potential issuePipeline JSON Parse Error:
The JSON checker reported a parse error (expected ',', '}', ':', or ']' but found a string) likely due to duplicate key occurrences or missing commas—such as with "ReceiverStargateV2". Revisit the affected sections and fix the syntax so the file adheres strictly to JSON format.🧰 Tools
🪛 Biome (1.9.4)
[error] 538-538: expected
,
but instead found"ReceiverStargateV2"
Remove "ReceiverStargateV2"
(parse)
[error] 537-537: The key ReceiverStargateV2 was already declared.
This where a duplicated key was declared again.
If a key is defined multiple times, only the last definition takes effect. Previous definitions are ignored.
(lint/suspicious/noDuplicateObjectKeys)
🪛 GitHub Actions: JSON Checker
[error] 537-537: Parse error on line 537: Expecting 'EOF', '}', ':', ',', ']', got 'STRING'
deployments/_deployments_log_file.json (25)
763-777
: Berachain entry for DiamondLoupeFacet added.
A new "berachain" key is inserted with a production configuration block for version "1.0.0". All expected fields (ADDRESS, OPTIMIZER_RUNS, TIMESTAMP, CONSTRUCTOR_ARGS, SALT, VERIFIED) are present and formatted consistently.
1527-1542
: Berachain entry for OwnershipFacet added.
The deployment record for "berachain" under the OwnershipFacet is clearly added with version "1.0.0". The details (address "0x95a05b09d2c84d8a37c03536A0BAd75876F8F8e9", optimizer runs, timestamp, etc.) match the expected format.
2290-2305
: Berachain entry for DexManagerFacet added.
This block adds a production deployment for version "1.0.0" with the given address "0x696d81Ff9FCa84aCA9Aba638CbB6Bf6904121000". The configuration values look consistent with the other entries.
3352-3371
: Berachain entry for AccessManagerFacet added.
A new configuration appears with version "1.0.1" and expected properties under "production". Please verify that the version increment (from 1.0.0 to 1.0.1) accurately reflects the intended deployment update.
4116-4135
: Berachain entry for WithdrawFacet added.
The production deployment entry for "berachain" is introduced with version "1.0.0". All keys and values (ADDRESS, OPTIMIZER_RUNS, TIMESTAMP, etc.) are consistent with the overall log format.
4866-4885
: Berachain entry for PeripheryRegistryFacet added.
This new section provides production deployment details for version "1.0.0". The fields are complete and follow the same schema as other network entries.
5629-5647
: Berachain entry for LiFiDiamond added.
The configuration adds a production deployment for version "1.0.0" under the LiFiDiamond facet. The parameters, including the address and timestamp, are present and correctly formatted.
6367-6386
: Berachain entry for LiFiDiamondImmutable added.
A new "berachain" production record is added with version "1.0.0" for the immutable variant. The JSON structure is consistent with previous entries.
8176-8195
: Berachain entry for HopFacetOptimized added.
This block adds a deployment record for version "1.0.0" under HopFacetOptimized. The uniformity in fields and their values is maintained, ensuring consistency across facets.
9716-9734
: Berachain entry for MultichainFacet added.
The new section under MultichainFacet introduces a production deployment for version "1.0.1". Verify that the versioning is intended and consistent with this facet’s release scheme.
11666-11685
: Berachain entry for Executor added.
A production deployment block for Executor is added with version "1.1.0". The inclusion of a non-empty CONSTRUCTOR_ARGS (hex-encoded) suggests additional configuration details—confirm that these are verified.
12604-12623
: Berachain entry for FeeCollector added.
This section introduces a production deployment for version "2.1.0". Note that the "VERIFIED" flag is set to "false" in this record; please ensure that the unverified status is intentional and understood.
13343-13362
: Berachain entry for Receiver added.
The deployment record for Receiver now includes a production configuration for "berachain" with version "1.0.1". All the mandatory fields appear correctly formatted.
14637-14656
: Berachain entry for ServiceFeeCollector added.
Here, a new deployment record for version "2.1.0" is added under ServiceFeeCollector. The JSON structure and field values (especially long CONSTRUCTOR_ARGS) appear proper.
20297-20316
: Berachain entry for CalldataVerificationFacet added.
This block adds a production deployment for version "1.1.0". The fields are in line with the expected JSON schema; please double-check that the configuration details match the intended deployment contract.
21099-21118
: Berachain entry for LiFuelFeeCollector added.
A production deployment is added for version "1.2.0". The details are consistent with other facets; ensure that the version update is in line with contract changes.
22901-22920
: Berachain entry for MayanBridgeFacet added.
The new record introduces a production deployment for version "1.0.0". All fields are present and appropriately formatted for logging purposes.
23528-23547
: Berachain entry for GasRebateDistributor added.
This addition specifies a production deployment for version "1.1.0". It is consistent with the established schema; the address and deployment parameters appear accurate.
24280-24299
: Berachain entry for StargateFacetV2 added.
A production deployment entry for version "1.0.1" is now included with complete fields. The configuration is uniform; please ensure consolidation of this network’s record with external documentation if needed.
24726-24745
: Berachain entry for ReceiverStargateV2 added.
This new section provides production deployment details for version "1.0.1". All expected attributes are present and adhere to the overall format.
25020-25039
: Berachain entry for LiFiDEXAggregator added.
The entry for version "1.1.0" includes a lengthy CONSTRUCTOR_ARGS parameter. Ensure that this hex string has been thoroughly validated to match the constructor’s expected input.
25612-25631
: Berachain entry for EmergencyPauseFacet added.
A production deployment record for version "1.6.0" is introduced. The parameters look complete; it is advisable to verify that the complex CONSTRUCTOR_ARGS value is correct as per the deployment requirements.
26208-26227
: Berachain entry for AcrossFacetV3 added.
This block adds a production deployment for version "1.0.1", with all key fields formatted correctly. The consistency with other facets is maintained.
27391-27410
: Berachain entry for GasZipFacet added.
A new deployment record for version "1.0.2" is added under GasZipFacet. Notice that the "VERIFIED" flag is set to "false"; please double-check whether this status is expected or requires further verification.
28475-28494
: Berachain entry for GetGasFacet added.
The final addition provides a production deployment for version "1.0.0". The entry is complete with all necessary parameters, and the structure aligns well with the rest of the file.
@@ -97,10 +97,12 @@ | |||
"RelayerCelerIM": "2.0.0", | |||
"CelerIMFacetMutable": "2.0.0", | |||
"GasZipFacet": "2.0.2", | |||
"GasZipFacet": "2.0.2", |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
🛠️ Refactor suggestion
Duplicate Key Detected – GasZipFacet in Polygon:
A duplicate "GasZipFacet" key exists in the polygon configuration. Duplicate keys may cause parsing issues and lead to unintended behavior. Please remove one of the duplicate entries so that each key is uniquely defined.
"GasZipFacet": "2.0.2", | ||
"GasZipFacet": "2.0.2", |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
🛠️ Refactor suggestion
Duplicate Key Detected – GasZipFacet in Mainnet:
In the mainnet configuration, "GasZipFacet" is declared twice with the same value ("2.0.2"). Duplicate keys in JSON cause only the last occurrence to be effective and can lead to JSON parsing errors. Please remove one of these entries to resolve the issue.
Suggested Diff:
- "GasZipFacet": "2.0.2",
📝 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.
"GasZipFacet": "2.0.2", | |
"GasZipFacet": "2.0.2", | |
"GasZipFacet": "2.0.2", |
🧰 Tools
🪛 Biome (1.9.4)
[error] 41-41: The key GasZipFacet was already declared.
This where a duplicated key was declared again.
If a key is defined multiple times, only the last definition takes effect. Previous definitions are ignored.
(lint/suspicious/noDuplicateObjectKeys)
Test Coverage ReportLine Coverage: 78.66% (2238 / 2845 lines) |
Which Jira task belongs to this PR?
Why did I implement it this way?
These contracts dont have floating pragmas which prevents compiling with another solidity version.
Checklist before requesting a review
Checklist for reviewer (DO NOT DEPLOY and contracts BEFORE CHECKING THIS!!!)