@@ -76,19 +76,32 @@ To see all available options and more examples visit the
7676[ foundry-verify ] : https://book.getfoundry.sh/reference/forge/forge-verify-contract
7777[ sourcify docs ] : https://docs.sourcify.dev/docs/how-to-verify/#foundry
7878
79- ## Verification on Sourcify
79+ ## Verification with Sourcify UI
8080
81- To verify maunally a contract deployed on Sapphire Mainnet or Testnet on Sourcify:
81+ To manually verify a contract deployed on Sapphire Mainnet or Testnet on Sourcify:
8282
83831 . Visit the [ Sourcify] website and hit the "VERIFY CONTRACT" button.
8484
8585 ![ Sourcify website] ( ../images/tools/sourcify1.png )
8686
87- 2 . Upload the contracts JSON metadata file. (Sourcify can parse the Hardhat
88- .json output file under ` artifacts/build-info ` )
87+ 2 . Select the "Oasis Sapphire" or "Oasis Sapphire Testnet" chain for Mainnet or
88+ Testnet accordingly and enter the address of the specific contract. Then,
89+ select the "Solidity" language", either "Hardhat" or "Foundry" and toggle the
90+ "Upload build-info" file.
8991
9092 ![ Sourcify: Upload metadata JSON file] ( ../images/tools//sourcify2.png )
9193
94+ 3 . Under the "File Upload" section go ahead and upload the contract's build-info
95+ JSON file that bundles your contract metadata. This file should be located
96+ under ` artifacts/build-info ` on Hardhat or ` out/build-info ` on Foundry once
97+ you compile the contract.
98+
99+ Sourcify will then unpack the metadata and collect bundled contracts. Pick
100+ the contract name you want to verify from the "Contract Identifier" dropdown
101+ below.
102+
103+ ![ Sourcify: File upload] ( ../images/tools/sourcify3.png )
104+
92105 :::tip Store your metadata files
93106
94107 For production deployments, it is generally a good idea to ** archive your
@@ -101,27 +114,22 @@ To verify maunally a contract deployed on Sapphire Mainnet or Testnet on Sourcif
101114
102115 :::
103116
104- 3 . Sourcify will decode the metadata and prepare a list of included contracts on
105- the right. Enter the address of the specific contract and select the "Oasis
106- Sapphire" or "Oasis Sapphire Testnet" chain for Mainnet or Testnet
107- accordingly. If your contract assigns any immutable variables in the
108- constructor, you will also need to correctly fill those out under the "More
109- Inputs (optional)" panel. Finally, click on the "Verify" button.
110-
111- ![ Sourcify: Verify contract] ( ../images/tools/sourcify3.png )
117+ 4 . Finally, click on the "Verify Contract" button to submit verification data.
118+ In a few moments the job should succeed and your contract is now verified!
112119
113- 4 . If everything goes well, you will get a * Perfect match* notice. Your
114- contract is now verified. Congratulations!
120+ ![ Sourcify: Verify contract] ( ../images/tools/sourcify4.png )
115121
116- In case of a * Partial match* , the contracts metadata JSON differs from the one
122+ In case of a * Partial match* , the contracts metadata JSON differed from the one
117123used for deployment although the compiled contract bytecode matched. Make sure
118- the source code ` .sol ` file of the contract is the same as the one used during the
119- deployment (including the comments, variable names and source code file
124+ the source code ` .sol ` file of the contract is the same as the one used during
125+ the deployment (including the comments, variable names and source code file
120126names) and use the same version of Hardhat and solc compiler.
121127
122128::: info
129+
123130You can also explore all verification methods on Sourcify by reading the
124131[ official Sourcify contract verification instructions] [ sourcify-contract-verify ] .
132+
125133:::
126134
127135[ Sourcify ] : https://sourcify.dev/
0 commit comments