Skip to content

Conversation

zguesmi
Copy link
Member

@zguesmi zguesmi commented Jul 26, 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.
  • Merge feature/diamond in develop
  • Merge PR Update deployment CI #228
  • Set admin in deployment script
  • Update docs (soldoc, diagrams, ...)

@zguesmi zguesmi self-assigned this Jul 26, 2025
Copy link

codecov bot commented Jul 26, 2025

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 83.60%. Comparing base (aaf7224) to head (72ab9d8).
⚠️ Report is 3 commits behind head on feature/diamond.

Additional details and impacted files
@@               Coverage Diff                @@
##           feature/diamond     #237   +/-   ##
================================================
  Coverage            83.60%   83.60%           
================================================
  Files                   38       38           
  Lines                 1214     1214           
  Branches               225      225           
================================================
  Hits                  1015     1015           
  Misses                 199      199           

☔ 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.

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 fixes build issues after migrating to a new diamond storage layout in the IExec protocol. The changes primarily update storage slot references to use a new namespaced storage approach instead of hardcoded slot indices.

  • Adds a utility function to calculate storage slot locations using a base storage location constant
  • Updates test files to use the new storage slot calculation method instead of hardcoded slot indices
  • Includes minor code improvements and formatting updates

Reviewed Changes

Copilot reviewed 12 out of 12 changed files in this pull request and generated 2 comments.

Show a summary per file
File Description
utils/proxy-tools.ts Adds getPocoStorageSlotLocation function for calculating namespaced storage slots
test/byContract/IexecPoco/IexecPoco2-finalize.test.ts Updates storage slot reference to use new calculation method
test/byContract/IexecPoco/IexecPoco2-contribute-and-finalize.test.ts Marks test as TODO/skipped
test/byContract/IexecPoco/IexecPoco1.test.ts Updates commented storage slot reference
test/byContract/IexecEscrow/IexecEscrowNative.test.ts Updates storage slot references and adds new test cases
test/byContract/IexecConfiguration/IexecConfiguration.test.ts Updates storage slot references and reformats test structure
test/byContract/IexecAccessors/IexecAccessors.test.ts Marks test as TODO/skipped
package.json Expands prettier formatting to include more file types
deploy/0_deploy.ts Removes TODO comment
contracts/modules/facets/IexecPocoBoostFacet.sol Refactors variable extraction and improves comments
contracts/modules/facets/IexecAccessorsABILegacyFacet.sol Fixes "Stack too deep" compilation errors
.prettierignore Adds ignore patterns for build artifacts and dependencies

@zguesmi zguesmi mentioned this pull request Jul 26, 2025
12 tasks
"solidity-coverage": "Fixing Hardhat's solidity-coverage: TypeError: provider.send is not a function"
}
}
}
Copy link
Contributor

Choose a reason for hiding this comment

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

EOF

Copy link
Member Author

Choose a reason for hiding this comment

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

It's the formatter.

Copy link
Member Author

Choose a reason for hiding this comment

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

Fixed in other PRs.

Copy link
Contributor

@Le-Caignec Le-Caignec left a comment

Choose a reason for hiding this comment

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

Good job 💪🏻

"coverage": "npx hardhat coverage",
"verify": "npx hardhat verify",
"format": "npx prettier --write ./contracts/**/*.sol",
"format": "npx prettier --write '**/*.{js,ts,sol,json,yml}'",
Copy link
Contributor

Choose a reason for hiding this comment

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

i agree with that. But we need to format many files in a dedicated PR if we do that !

@zguesmi zguesmi marked this pull request as ready for review July 28, 2025 09:29
Base automatically changed from feature/namespaced-storage to feature/diamond July 28, 2025 09:34
@zguesmi zguesmi merged commit efa1d22 into feature/diamond Jul 28, 2025
4 checks passed
@zguesmi zguesmi deleted the feature/namespaced-storage-fix-build branch July 28, 2025 09:53
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