Skip to content

Conversation

zguesmi
Copy link
Member

@zguesmi zguesmi commented Jul 28, 2025

Migration steps:

  • Migrate src files (minimal changes)
  • Modify receive and fallback behavior in Diamond.sol
  • Rename all 1538 to 2535 in contracts and rename Module to Facet in contracts names
  • Add unit tests for Diamond.sol
  • Remove ENSIntegration modules/functions
  • Update all facets to use namespaces app storage.
  • Rename only ✔️ feat: Use namespaced storage #236
  • Fix compilation and tests ✔️ fix: Fix build with new storage layout #237
  • Update contracts file tree.
  • Target latest EVM version instead of Berlin
  • Merge feature/diamond in develop
  • Merge PR Update deployment CI #228
  • Set admin in deployment script
  • Save IexecLibOrders_v5 in config.json
  • Update docs (soldoc, diagrams, ...)

Copy link

codecov bot commented Jul 28, 2025

Codecov Report

❌ Patch coverage is 78.78788% with 133 lines in your changes missing coverage. Please review.
✅ Project coverage is 83.66%. Comparing base (f83a6cf) to head (b4963d2).
⚠️ Report is 105 commits behind head on develop.

Files with missing lines Patch % Lines
contracts/facets/IexecEscrowTokenSwapFacet.sol 0.00% 70 Missing ⚠️
contracts/facets/IexecEscrowNativeFacet.sol 0.00% 36 Missing ⚠️
contracts/tools/TimelockController.sol 0.00% 17 Missing ⚠️
contracts/facets/FacetBase.v8.sol 28.57% 5 Missing ⚠️
contracts/facets/IexecPocoAccessorsFacet.sol 0.00% 4 Missing ⚠️
contracts/facets/IexecConfigurationFacet.sol 97.14% 1 Missing ⚠️
Additional details and impacted files
@@             Coverage Diff             @@
##           develop     #241      +/-   ##
===========================================
- Coverage    84.50%   83.66%   -0.85%     
===========================================
  Files           35       38       +3     
  Lines         1084     1218     +134     
  Branches       221      227       +6     
===========================================
+ Hits           916     1019     +103     
- Misses         168      199      +31     

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.
  • 📦 JS Bundle Analysis: Save yourself from yourself by tracking and limiting bundle sizes in JS merges.

@zguesmi zguesmi marked this pull request as ready for review July 28, 2025 13:44
@zguesmi zguesmi self-assigned this Jul 28, 2025
Copy link
Contributor

@Copilot Copilot AI left a comment

Choose a reason for hiding this comment

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

Pull Request Overview

This PR migrates the Iexec smart contracts from the EIP-1538 proxy pattern to the Diamond pattern (ERC-2535), representing a significant architectural upgrade. The migration introduces a new proxy structure with Diamond facets for improved modularity and upgradability.

Key changes include:

  • Introduction of Diamond pattern proxy architecture with facets
  • Removal of ENS integration modules and functions
  • Updates to deployment configurations across testnet environments

Reviewed Changes

Copilot reviewed 144 out of 182 changed files in this pull request and generated 1 comment.

Show a summary per file
File Description
deployments/arbitrumSepolia/ReverseRegistrar.json Updated deployment address and added constructor arguments for ENS components
deployments/arbitrumSepolia/RLC.json Incremented deployment counter for token contract
deployments/arbitrumSepolia/PublicResolver.json Updated ENS resolver address and added constructor parameters
deployments/arbitrumSepolia/OwnershipFacet.json New Diamond facet for ownership management functionality
deployments/arbitrumSepolia/LibDiamond.json New Diamond library deployment for core Diamond pattern functionality
deployments/arbitrumSepolia/IexecRelayDelegate.json Updated relay delegate address and removed ownership-related ABI entries

"name": "OwnershipTransferred",
"type": "event"
},
{
Copy link
Preview

Copilot AI Jul 28, 2025

Choose a reason for hiding this comment

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

The ABI contains duplicate OwnershipTransferred events (lines 20-38 and 40-57). This duplication could cause confusion for developers integrating with the contract and may indicate an issue with the ABI generation process.

Copilot uses AI. Check for mistakes.

@zguesmi
Copy link
Member Author

zguesmi commented Jul 28, 2025

Bypassing Codecov fail status due to heavy refactoring:

image

@zguesmi zguesmi merged commit 1d2c8f7 into develop Jul 28, 2025
3 of 4 checks passed
@zguesmi zguesmi deleted the feature/diamond branch July 28, 2025 13:59
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.

3 participants