docs(contracts): document Arcscan Etherscan-compatible contract verification - #396
kutluhaneth46 wants to merge 1 commit into
Conversation
Explain why Blockscout-native verify field names return a misleading Missing codeformat error (circlefin#210), and document working Foundry/Hardhat flows against https://testnet.arcscan.app/api. Register arc_testnet in foundry.toml so forge verify-contract can target Arc Testnet.
48e3111 to
dfe5885
Compare
|
Hi @kutluhaneth46 — please coordinate before jumping into issues where another contributor has already indicated they’re working on them. Opening overlapping work before the existing thread is resolved creates avoidable duplication and makes contribution tracking harder. If there is a prior claim, active branch, or implementation in progress, please check with that contributor or a maintainer first so we can avoid stepping on each other’s work. Stop attacking everything like a hungry dog!!! And you're supposed to be a student!! Haven't you learned anything at school!! |
|
@huklaa Thanks for the note on coordination. Happy to keep that bar. On this specific issue: when I claimed #210 it had no assignee, no prior claim comment, and no open PR. I left a claim comment first, then opened this PR against that claim. If I missed an active thread somewhere else that already covered the same Arcscan field-name pitfall, point me at it and I will close or reshape this one so we are not duplicating. Separately, please keep the tone professional. Happy to coordinate; personal remarks are not needed for that. |
Summary
/apiverify endpoint is Etherscan V1 compatible, not Blockscout-native. Requests that sendaddressHash/name/contractSourceCodeget a misleadingMissing codeformat fieldresponse even whencodeformatis present.https://testnet.arcscan.app/api.arc_testnetentry infoundry.tomlsoforge verify-contractcan target Arc Testnet.Verification
Reproduced both shapes against live Arcscan:
Also confirmed:
forge verify-contract 0x5294E9927c3306DcBaDb03fe70b92e01cCede505 \ contracts/src/memo/Memo.sol:Memo \ --chain 5042002 \ --verifier custom \ --verifier-url https://testnet.arcscan.app/api \ --verifier-api-key empty # -> already verified (end-to-end API path works)Notes
Hardhat still needs an
etherscan.customChainsentry for chain5042002(tracked separately if not yet onmain). This PR documents the requirement and lands the Foundry side.Test plan
forge verify-contractagainst genesis Memo reaches Arcscan successfullycontracts/README.md+foundry.toml[etherscan]entry