Synthetixio / synthetix-v3

MIT License
117 stars 58 forks source link

hardhat-router: Error HH700: Artifact for contract "Proxy" not found. #1361

Closed ssolson closed 1 year ago

ssolson commented 1 year ago

Hello 👋 and thank you 🙏 for making the hardhat-router extension.

I found this plugin referenced in Igor Yalovoy's DevCon presentation https://youtu.be/qzlUNSt5pnA?t=640 and I have been trying to create his StaticRouter.sol using the hardhat-router plugin.

I created a simple MWE repo to reproduce the error I am receiving https://github.com/ssolson/StaticRouterTest. The contracts come from Igor's Devcon repo https://github.com/ylv-io/devcon-bogota-workshop-2022

I put the needed files from this repo into a contracts folder, modified hardhat configure to include @synthetixio/hardhat-router and deploy. When I attempt to do this I get an error from the plugin looking for a Proxy.sol contract. In the hardhat-router readme I do not see anything about the need to create a Proxy.sol contract. If I create some sort of dummy Proxy.sol the package will create a router contract for me but it does not link the modules together into the router.

Any pointers or other references I could checkout would be greatly appreciated. 🙏

ssolson commented 1 year ago

I mostly solved the issue by including a Proxy contract. And have updated my repo. The package will fail to deploy the proxy on a getImplementation() revert.

So to close out this question it required to include a Proxy contract for the hardhat-router package to work?

ssolson commented 1 year ago

ahh. The answer is no you do not need to deploy with a proxy. If you would simply like to deploy the router then call

npx hardhat deploy --skip-proxy