-
Notifications
You must be signed in to change notification settings - Fork 79
Deployed GlacisFacet on new chains, updated glacis.json to add airlift configurations for new networks #1130
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
Conversation
## Walkthrough
The configuration file `config/glacis.json` was updated to include new network entries for several blockchain networks. Deployment JSON files for these networks were also updated to add a new `"GlacisFacet"` contract address entry. A deployment log file was extended with new deployment metadata for these networks. A script was modified to remove an unnecessary argument in a private key retrieval function call. No existing entries were removed or altered.
## Changes
| File(s) | Change Summary |
|----------------------------------------------------------------------------------------------|--------------------------------------------------------------------------------------------------------------------------------------|
| config/glacis.json | Added new network entries (`berachain`, `blast`, `celo`, `gnosis`, `ink`, `lisk`, `polygonzkevm`, `sonic`, `swellchain`, `unichain`) with the same `"airlift"` address. No existing entries were changed or removed. |
| deployments/berachain.json, deployments/blast.json, deployments/celo.json, deployments/gnosis.json, deployments/lisk.json, deployments/polygonzkevm.json, deployments/sonic.json | Added `"GlacisFacet"` entry with address `"0xf34B594fDBC0dD8477756Cb7C6e77CF9A71691d6"` to each deployment JSON file. Added trailing commas to previous last entries to maintain JSON validity. |
| deployments/ink.json, deployments/unichain.json | Added `"GlacisFacet"` entry with addresses `"0x5789928b75C05aC6E8B8765D6f87dAC396A656a2"` to deployment files. Added trailing commas as needed. |
| deployments/swellchain.json | Added `"GlacisFacet"` entry with address `"0xe81aB8385FA41d7789c89c802eaB76EB7Dc06066"`. Added trailing comma to previous last entry. |
| deployments/_deployments_log_file.json | Added new deployment log entries for multiple networks (`berachain`, `blast`, `celo`, `gnosis`, `ink`, `lisk`, `polygonzkevm`, `sonic`, `swellchain`, `unichain`) under production environment with contract addresses, optimizer runs, timestamps, constructor args, and verification status. |
| deployments/berachain.diamond.json, deployments/blast.diamond.json, deployments/celo.diamond.json, deployments/gnosis.diamond.json, deployments/ink.diamond.json, deployments/lisk.diamond.json, deployments/polygonzkevm.diamond.json, deployments/sonic.diamond.json, deployments/swellchain.diamond.json, deployments/unichain.diamond.json | Added new `"GlacisFacet"` facet entries with version `"1.0.0"` and corresponding addresses to the `"Facets"` section. Modified periphery entries by removing `"LiFuelFeeCollector"` and `"Receiver"`, adding `"ReceiverChainflip"` and other empty string placeholders as applicable. Some diamond files also updated facet versions or replaced facet addresses. |
| script/deploy/safe/confirm-safe-tx.ts | Removed an unnecessary `undefined` argument from the `getPrivateKey` function call, adjusting the invocation to match the expected signature without altering logic. |
## Possibly related PRs
- lifinance/contracts#918: Adds deployment and configuration support for the "sonic" network, including facets and deployment logs, overlapping with this PR's additions for sonic.
- lifinance/contracts#1060: Adds and modifies "MayanFacet" deployment entries for Unichain; related through Unichain deployment updates with different facets.
- lifinance/contracts#1087: Introduces the "swellchain" network with environment variables, configuration, deployment JSONs, and facets, overlapping with this PR's swellchain additions.
## Suggested reviewers
- mirooonTip ⚡️ Faster reviews with caching
Enjoy the performance boost—your workflow just got faster. Warning Review ran into problems🔥 ProblemsErrors were encountered while retrieving linked issues. Errors (1)
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. 🪧 TipsChatThere are 3 ways to chat with CodeRabbit:
SupportNeed help? Create a ticket on our support page for assistance with any issues or questions. 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: 0
🧹 Nitpick comments (1)
config/glacis.json (1)
2-62: Consider reducing duplication of theairliftaddress
Every network entry repeats the same address string. To improve maintainability and avoid drift, you might generate this JSON via a small script or template that DRYs the address across all chains, or leverage a JSON Schema with$reffor shared values.
📜 Review details
Configuration used: CodeRabbit UI
Review profile: CHILL
Plan: Pro
📒 Files selected for processing (1)
config/glacis.json(2 hunks)
⏰ Context from checks skipped due to timeout of 90000ms (8)
- GitHub Check: version-control
- GitHub Check: enforce-min-test-coverage
- GitHub Check: run-unit-tests
- GitHub Check: validate-json
- GitHub Check: protect_audit_labels
- GitHub Check: check-new-network-health
- GitHub Check: run-unit-tests
- GitHub Check: Analyze (javascript-typescript)
🔇 Additional comments (10)
config/glacis.json (10)
14-16: Add 'berachain' network configuration
The new entry is correctly formatted, adheres to the existing indentation and alphabetical ordering, and uses the same validatedairliftaddress. JSON syntax is valid.
17-19: Add 'blast' network configuration
This block follows the established pattern and placement (alphabetically betweenberachainandbsc). Indentation and JSON structure are correct.
23-25: Add 'celo' network configuration
Inserted in the correct alphabetical position, with matching address and proper JSON formatting.
26-28: Add 'gnosis' network configuration
Consistent with neighboring entries. The key placement, indentation, and comma usage are all correct.
29-31: Add 'ink' network configuration
Properly inserted, valid JSON, and maintains the alphabetical ordering among existing chains.
35-37: Add 'lisk' network configuration
This addition is well-placed betweenlineaandmode, follows the same structure, and is syntactically correct.
47-49: Add 'polygonzkevm' network configuration
Correctly positioned afterpolygon, with consistent formatting and the expectedairliftaddress.
52-55: Insert comma forscrollblock and add 'sonic' entry
- The comma at the end of the
scrollblock is necessary to maintain valid JSON.- The new
sonicnetwork entry matches the style and ordering of other entries.
56-58: Add 'swell' network configuration
Properly placed in alphabetical order, with correct indentation and JSON syntax.
59-61: Add 'unichain' network configuration
Final entry in the list, correctly formatted without a trailing comma, and uses the standardairliftaddress.
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: 1
📜 Review details
Configuration used: CodeRabbit UI
Review profile: CHILL
Plan: Pro
📒 Files selected for processing (10)
deployments/berachain.diamond.json(2 hunks)deployments/blast.diamond.json(2 hunks)deployments/celo.diamond.json(1 hunks)deployments/gnosis.diamond.json(1 hunks)deployments/ink.diamond.json(1 hunks)deployments/lisk.diamond.json(1 hunks)deployments/polygonzkevm.diamond.json(2 hunks)deployments/sonic.diamond.json(1 hunks)deployments/swellchain.diamond.json(1 hunks)deployments/unichain.diamond.json(1 hunks)
✅ Files skipped from review due to trivial changes (8)
- deployments/gnosis.diamond.json
- deployments/swellchain.diamond.json
- deployments/ink.diamond.json
- deployments/sonic.diamond.json
- deployments/lisk.diamond.json
- deployments/unichain.diamond.json
- deployments/berachain.diamond.json
- deployments/polygonzkevm.diamond.json
🧰 Additional context used
🪛 Gitleaks (8.21.2)
deployments/blast.diamond.json
88-88: Detected a Generic API Key, potentially exposing access to various services and sensitive operations.
(generic-api-key)
⏰ Context from checks skipped due to timeout of 90000ms (1)
- GitHub Check: run-unit-tests
🔇 Additional comments (5)
deployments/blast.diamond.json (3)
80-83: Ensure "AcrossFacetV3" version bump aligns with deployment.
The version for"AcrossFacetV3"was updated to"1.1.0"at address0x5052fc5c7486162deDf7458E1f7c6ABaFbcd6895. Please confirm that this reflects the actual deployed contract and update any related changelogs or documentation.
88-91: Approve addition of new "GlacisFacet".
The"GlacisFacet"(v1.0.0) has been introduced at0xf34B594fDBC0dD8477756Cb7C6e77CF9A71691d6. This matches the plan for extending support to new networks. Ensure the address is EIP-55 checksummed and corresponds to the audited contract.🧰 Tools
🪛 Gitleaks (8.21.2)
88-88: Detected a Generic API Key, potentially exposing access to various services and sensitive operations.
(generic-api-key)
101-101:⚠️ Potential issueCritical: Populate or remove empty "ReceiverChainflip" value.
An empty string for"ReceiverChainflip"will cause configuration errors at runtime. Either provide the correct periphery contract address or remove this entry if it’s not required on Blast.⛔ Skipped due to learnings
Learnt from: 0xDEnYO PR: lifinance/contracts#1112 File: deployments/soneium.diamond.json:81-81 Timestamp: 2025-04-22T09:04:44.244Z Learning: In the lifinance/contracts repository, it's normal and expected for periphery contracts to have empty address values in deployment files when they are not deployed on a particular network. This applies to all periphery contracts including ReceiverChainflip, ReceiverStargateV2, and others. PRs should not flag empty periphery contract addresses as issues.deployments/celo.diamond.json (2)
67-71: Approve addition of "GlacisFacet" on Celo.
Added"GlacisFacet"(v1.0.0) at0xf34B594fDBC0dD8477756Cb7C6e77CF9A71691d6. Please verify this address against the audited Celo deployment.
81-81:⚠️ Potential issueCritical: Populate or remove empty "ReceiverChainflip".
Leaving"ReceiverChainflip": ""without a valid address will lead to initialization failures. Please fill in the proper periphery address or remove this field if unused on Celo.⛔ Skipped due to learnings
Learnt from: 0xDEnYO PR: lifinance/contracts#1112 File: deployments/soneium.diamond.json:81-81 Timestamp: 2025-04-22T09:04:44.244Z Learning: In the lifinance/contracts repository, it's normal and expected for periphery contracts to have empty address values in deployment files when they are not deployed on a particular network. This applies to all periphery contracts including ReceiverChainflip, ReceiverStargateV2, and others. PRs should not flag empty periphery contract addresses as issues.
Which Jira task belongs to this PR?
Why did I implement it this way?
Checklist before requesting a review
Checklist for reviewer (DO NOT DEPLOY and contracts BEFORE CHECKING THIS!!!)