Skip to content

Conversation

@Le-Caignec
Copy link
Contributor

@Le-Caignec Le-Caignec commented Oct 1, 2025

Objective
Improve traceability and consistency of build artifacts by committing them to the repo and adding automatic verification.

Main changes:
• Renamed build folder from out/ to artifacts for consistency with Hardhat standards
• Build artifacts are now tracked in Git (removed from .gitignore)
• Added a CI workflow to verify artifacts: runs forge build, compares results with committed artifacts, and blocks PRs if they are outdated.

Copilot AI review requested due to automatic review settings October 1, 2025 14:20
@@ -1,7 +1,7 @@
[profile.default]
solc = "0.8.23"
src = "src"
out = "out"
out = "artifacts"
Copy link
Contributor Author

Choose a reason for hiding this comment

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

To be consistent with Hardhat. This will prevent client repositories from having to change folder names to get the ABI, depending on the framework we use. This is an internal complexity for us.

Copy link
Contributor

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.

Copilot encountered an error and was unable to review this pull request. You can try again by re-requesting a review.

@codecov
Copy link

codecov bot commented Oct 1, 2025

Codecov Report

✅ All modified and coverable lines are covered by tests.
⚠️ Please upload report for BASE (main@87d32cd). Learn more about missing BASE report.

Additional details and impacted files
@@           Coverage Diff           @@
##             main     #106   +/-   ##
=======================================
  Coverage        ?   83.78%           
=======================================
  Files           ?        4           
  Lines           ?      111           
  Branches        ?        7           
=======================================
  Hits            ?       93           
  Misses          ?       17           
  Partials        ?        1           

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

@Le-Caignec Le-Caignec self-assigned this Oct 1, 2025
@gfournierPro gfournierPro requested a review from Copilot October 2, 2025 12:56
Copy link
Member

@zguesmi zguesmi left a comment

Choose a reason for hiding this comment

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

Since we only have a small number of contracts, why not just commit their artifacts instead of committing a lot of unused artifacts?
I think something like this would be enough:

# Ignore all artifacts except some files.
!/artifacts/
/artifacts/**
!/artifacts/*IexecLayerZeroBridge.sol
!/artifacts/*IexecLayerZeroBridge.sol/*
!/artifacts/*RLCCrosschainToken.sol
!/artifacts/*RLCCrosschainToken.sol/*
!/artifacts/*RLCLiquidityUnifier.sol
!/artifacts/*RLCLiquidityUnifier.sol/*

@Le-Caignec
Copy link
Contributor Author

Yeah it's true @zguesmi . You're right
Do you think we should also commit the corresponding interface? Or not, since the main contract directly inherits from the interface?

@zguesmi
Copy link
Member

zguesmi commented Oct 6, 2025

Yeah it's true @zguesmi . You're right Do you think we should also commit the corresponding interface? Or not, since the main contract directly inherits from the interface?

It really depends on where we'll be using these artifacts. If interfaces are not useful for Tenderly we can remove them at least for now.

You can keep forge clean with the cache BTW, my question was to understand.

@Le-Caignec Le-Caignec merged commit b670d26 into main Oct 6, 2025
5 checks passed
@Le-Caignec Le-Caignec deleted the feat/commit-artifact branch October 6, 2025 14:01
zguesmi added a commit that referenced this pull request Oct 13, 2025
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.

4 participants