Skip to content

deployed SymbiosisFacet to morph#1648

Draft
0xDEnYO wants to merge 1 commit intomainfrom
symbiosis-morph
Draft

deployed SymbiosisFacet to morph#1648
0xDEnYO wants to merge 1 commit intomainfrom
symbiosis-morph

Conversation

@0xDEnYO
Copy link
Contributor

@0xDEnYO 0xDEnYO commented Mar 11, 2026

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!!!)

  • I have checked that any arbitrary calls to external contracts are validated and or restricted
  • I have checked that any privileged calls (i.e. storage modifications) are validated and or restricted
  • I have ensured that any new contracts have had AT A MINIMUM 1 preliminary audit conducted on by <company/auditor>

@lifi-action-bot lifi-action-bot marked this pull request as draft March 11, 2026 07:57
@coderabbitai
Copy link
Contributor

coderabbitai bot commented Mar 11, 2026

Walkthrough

A new network entry "morph" is added to the configuration with metaRouter and gateway addresses, and a corresponding SymbiosisFacet deployment is introduced for the morph network in its deployment manifest.

Changes

Cohort / File(s) Summary
Network Configuration
config/symbiosis.json
Added new top-level "morph" network entry containing metaRouter and gateway string fields.
Deployment Manifest
deployments/morph.json
Added SymbiosisFacet deployment entry; adjusted RelayDepositoryFacet with trailing comma addition.

Estimated code review effort

🎯 2 (Simple) | ⏱️ ~8 minutes

Possibly related PRs

Suggested labels

AuditNotRequired

🚥 Pre-merge checks | ✅ 2 | ❌ 1

❌ Failed checks (1 warning)

Check name Status Explanation Resolution
Description check ⚠️ Warning The description follows the required template structure with all sections present, but critical fields are empty: no Jira task specified, no implementation rationale provided, and all security/audit checklists remain unchecked. Fill in the Jira task reference, provide explanation for implementation choices, and ensure reviewer checklists are completed before merging, particularly the audit requirement for new facets.
✅ Passed checks (2 passed)
Check name Status Explanation
Title check ✅ Passed The title clearly and specifically summarizes the main change: deploying SymbiosisFacet to the morph network, which aligns with both configuration updates and the new deployment entry added.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.

✏️ Tip: You can configure your own custom pre-merge checks in the settings.

✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Post copyable unit tests in a comment
  • Commit unit tests in branch symbiosis-morph

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

🤖 Prompt for all review comments with AI agents
Verify each finding against the current code and only fix it if needed.

Inline comments:
In `@deployments/morph.json`:
- Line 26: Add a Facets entry for SymbiosisFacet to the diamond deployment JSON
so the two public functions become callable: insert an object into the "Facets"
array with "name": "SymbiosisFacet", "address":
"0xCDA650d97F35928f740544E9854f03a1e1c2b81E" (taken from morph.json) and a
"functionSelectors" array that includes the selectors for
startBridgeTokensViaSymbiosis and swapAndStartBridgeTokensViaSymbiosis; ensure
the selector hexes match the SymbiosisFacet ABI and follow the same facet object
structure as the other entries in morph.diamond.json so the diamond knows to
route those calls to SymbiosisFacet.

ℹ️ Review info
⚙️ Run configuration

Configuration used: Repository UI

Review profile: CHILL

Plan: Pro

Run ID: fa37ec0f-f252-4f90-82c6-8612be049a05

📥 Commits

Reviewing files that changed from the base of the PR and between ecef43c and 40fbd0f.

📒 Files selected for processing (2)
  • config/symbiosis.json
  • deployments/morph.json

"RelayFacet": "0x830DAfBCAE31141f1f1BfDF96D6Ad545D4cc9bB4",
"RelayDepositoryFacet": "0xcFDe3d0c9d2Ced6cC5731439Ac8944De0E029Ce4"
"RelayDepositoryFacet": "0xcFDe3d0c9d2Ced6cC5731439Ac8944De0E029Ce4",
"SymbiosisFacet": "0xCDA650d97F35928f740544E9854f03a1e1c2b81E"
Copy link
Contributor

Choose a reason for hiding this comment

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

⚠️ Potential issue | 🔴 Critical

🧩 Analysis chain

🏁 Script executed:

#!/bin/bash
set -euo pipefail

fd 'morph(\.diamond)?\.json$' deployments -x sh -c '
  file="$1"
  echo "== $file =="
  rg -n -C2 "\"SymbiosisFacet\"|\"LiFiDiamond\"" "$file" || true
' sh {}

Repository: lifinance/contracts

Length of output: 784


🏁 Script executed:

cat deployments/morph.diamond.json

Repository: lifinance/contracts

Length of output: 2654


🏁 Script executed:

fd 'SymbiosisFacet.sol' src/Facets -x cat -n {}

Repository: lifinance/contracts

Length of output: 6469


🏁 Script executed:

git diff HEAD~1 HEAD -- deployments/morph.diamond.json | head -50

Repository: lifinance/contracts

Length of output: 91


🏁 Script executed:

git diff --name-only 2>/dev/null | grep deployments || echo "Cannot determine git diff context"

Repository: lifinance/contracts

Length of output: 96


Register SymbiosisFacet in deployments/morph.diamond.json as part of this PR.

Line 26 in deployments/morph.json records the deployed implementation address for SymbiosisFacet. However, SymbiosisFacet is missing from the Facets array in deployments/morph.diamond.json. Without diamond registration, the public functions startBridgeTokensViaSymbiosis and swapAndStartBridgeTokensViaSymbiosis will remain unreachable through LiFiDiamond on Morph, making the deployment incomplete.

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

In `@deployments/morph.json` at line 26, Add a Facets entry for SymbiosisFacet to
the diamond deployment JSON so the two public functions become callable: insert
an object into the "Facets" array with "name": "SymbiosisFacet", "address":
"0xCDA650d97F35928f740544E9854f03a1e1c2b81E" (taken from morph.json) and a
"functionSelectors" array that includes the selectors for
startBridgeTokensViaSymbiosis and swapAndStartBridgeTokensViaSymbiosis; ensure
the selector hexes match the SymbiosisFacet ABI and follow the same facet object
structure as the other entries in morph.diamond.json so the diamond knows to
route those calls to SymbiosisFacet.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants