Files
proxmox/docs/archive/fixes/ETHERSCAN_STANDARD_JSON_FIXED.md
defiQUG cb47cce074 Complete markdown files cleanup and organization
- Organized 252 files across project
- Root directory: 187 → 2 files (98.9% reduction)
- Moved configuration guides to docs/04-configuration/
- Moved troubleshooting guides to docs/09-troubleshooting/
- Moved quick start guides to docs/01-getting-started/
- Moved reports to reports/ directory
- Archived temporary files
- Generated comprehensive reports and documentation
- Created maintenance scripts and guides

All files organized according to established standards.
2026-01-06 01:46:25 -08:00

2.7 KiB

Etherscan Standard JSON - FIXED

Error: Unknown key "compiler"
Fix: Removed invalid key from Standard JSON


Fixed Standard JSON

File: docs/CCIPWETH9Bridge_standard_json.json

Changes:

  • Removed invalid "compiler" key
  • Kept valid Standard JSON Input format
  • viaIR: true still included
  • Optimizer settings correct

📋 Corrected Standard JSON Format

The Standard JSON Input format should NOT include a "compiler" key. The compiler version is:

  1. Specified in the Etherscan form (when using Standard JSON Input)
  2. Or inferred from the pragma statement in the source code

Correct Format:

{
  "language": "Solidity",
  "sources": {
    "CCIPWETH9Bridge.sol": {
      "content": "[contract code]"
    }
  },
  "settings": {
    "optimizer": {
      "enabled": true,
      "runs": 200
    },
    "viaIR": true,
    "evmVersion": "london",
    "outputSelection": {
      "*": {
        "*": ["abi", "evm.bytecode", "evm.deployedBytecode"]
      }
    }
  }
}

🎯 Updated Instructions

Step 1: Go to Etherscan

  1. Navigate to: https://etherscan.io/address/0x89dd12025bfcd38a168455a44b400e913ed33be2#code
  2. Click "Contract" tab → "Verify and Publish"

Step 2: Select Compiler Type

Select "Standard JSON Input"

Step 3: Specify Compiler Version

Important: In the form, select:

  • Compiler Version: v0.8.20+commit.a1b79de6

(This is separate from the JSON - Etherscan will use the version you select in the form)

Step 4: Upload Standard JSON

  1. Open: docs/CCIPWETH9Bridge_standard_json.json
  2. Copy the entire contents
  3. Paste into the "Standard JSON Input" field

Step 5: Enter Constructor Arguments

0x00000000000000000000000080226fc0ee2b096224eeac085bb9a8cba1146f7d000000000000000000000000c02aaa39b223fe8d0a0e5c4f27ead9083c756cc2000000000000000000000000514910771af9ca656af840dff83e8264ecf986ca

Step 6: Submit

Click "Verify and Publish"


⚠️ Important Notes

  1. Compiler Version: Select v0.8.20+commit.a1b79de6 in the Etherscan form (not in the JSON)
  2. Via IR: Already set to true in the Standard JSON
  3. Optimizer: Already set to enabled with 200 runs in the JSON

🔍 Why This Format

The Solidity Standard JSON Input format doesn't include a "compiler" key. The compiler version is:

  • Specified separately in the Etherscan form UI
  • Or can be inferred from the pragma solidity ^0.8.19; statement

However, since the contract was deployed with 0.8.20 (not 0.8.19), you must select v0.8.20+commit.a1b79de6 in the Etherscan form.


Last Updated: $(date)
Status: FIXED - USE UPDATED STANDARD JSON