Skip to content

forge-verify: tenderly verification fails due to remappings #9487

Open
@grandizzy

Description

@grandizzy
          > Hey folks, Aleksandar from Tenderly here 👋

We are looking into the issue with Superform team (their verifications are failing on our platform using foundry). They asked us to paste our findings here in case they are helpful:

We are getting compilation errors. Namely, the compiler is unable to find imports for DataTypes.sol and Error.sol. Looking at the compiler input, I can see that these are defined on path lib/superform-core/src/libraries/* .

Now, looking at DataTypes.sol import inside of the SuperVault.sol file it is being imported from path superform-core/src/types/DataTypes.sol. Given the remapping of superform-core/=lib/superform-core/, the path where the compiler expects the file is lib/superform-core/src/types/DataTypes.sol. And it cannot find it there, because it is on a similar (but not identical) path: lib/superform-core/src/libraries/DataTypes.sol

Hope some of this info helps.

Ok, I got confused with similar paths, and imagined an error where there is none. The error actually happens when attempting to import DataTypes.sol in the IBaseForm.sol file. The import path specified is absolute src/types/DataTypes.sol. As there are no remappings for this path in the compilation request, this cannot be resolved. This also happens when trying to import the DataTypes.sol in file IBaseRouter.sol as well as when trying to import Error.solin file DataLib.sol.

From our perspective, this should be fixed by either:

  1. Adding relevant remappings
  2. Using relative import paths in the solidity code

And I apologise for causing confusion with my initial message 🙏

Originally posted by @strahor-13 in #9483 (comment)

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    Status

    Todo

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions