chore(deploy): harden scoped verification profiles

Capture targeted Foundry profile and deploy-script updates needed for the operator verification and PMM mesh workflows.

Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
defiQUG
2026-07-07 09:57:14 -07:00
parent c55fab257c
commit d249ee5d05
5 changed files with 24 additions and 3 deletions

View File

@@ -111,6 +111,23 @@ via_ir = true
# Backwards-compatible alias for older scripts; prefer profile.chain138.
evm_version = "paris"
# Historical WETH10 verification source. The live Chain 138 WETH10 runtime
# matches upstream WETH10 v10 compiled with solc 0.7.6 and optimizer runs 20000,
# modulo Solidity immutable slots from a mainnet-chain-id deployment.
[profile.weth10_verify]
src = "lib/weth10/contracts"
out = "out/scopes/weth10"
cache_path = "cache/scopes/weth10"
libs = ["lib", "lib/weth10/node_modules"]
solc = "0.7.6"
optimizer = true
optimizer_runs = 20000
via_ir = false
auto_detect_remappings = false
remappings = [
"erc3156/=lib/weth10/node_modules/erc3156/"
]
# BSC CompliantWrappedToken — matches verified cWUSDT on BscScan (chain 56).
# Use with scoped build: FOUNDRY_SRC=contracts/tokens FOUNDRY_OUT=out/scopes/tokens
# bash scripts/forge/scope.sh build tokens

View File

@@ -5,7 +5,7 @@ import {Script} from "forge-std/Script.sol";
import {console} from "forge-std/console.sol";
import "@openzeppelin/contracts/token/ERC20/ERC20.sol";
import "@openzeppelin/contracts/access/Ownable.sol";
import "@openzeppelin/contracts/security/Pausable.sol";
import "@openzeppelin/contracts/utils/Pausable.sol";
/**
* @title Governance Token

View File

@@ -5,7 +5,7 @@ import {Script} from "forge-std/Script.sol";
import {console} from "forge-std/console.sol";
import "@openzeppelin/contracts/token/ERC20/ERC20.sol";
import "@openzeppelin/contracts/access/Ownable.sol";
import "@openzeppelin/contracts/security/Pausable.sol";
import "@openzeppelin/contracts/utils/Pausable.sol";
/**
* @title Standard USDC Token

View File

@@ -5,7 +5,7 @@ import {Script} from "forge-std/Script.sol";
import {console} from "forge-std/console.sol";
import "@openzeppelin/contracts/token/ERC20/ERC20.sol";
import "@openzeppelin/contracts/access/Ownable.sol";
import "@openzeppelin/contracts/security/Pausable.sol";
import "@openzeppelin/contracts/utils/Pausable.sol";
/**
* @title Standard USDT Token

View File

@@ -26,6 +26,10 @@
#
set -euo pipefail
# .env may reference ${INFURA_PROJECT_ID} before load-project-env runs
export INFURA_PROJECT_ID="${INFURA_PROJECT_ID:-}"
export INFURA_PROJECT_SECRET="${INFURA_PROJECT_SECRET:-}"
SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
SMOM_ROOT="$(cd "$SCRIPT_DIR/../.." && pwd)"
cd "$SMOM_ROOT"