From 678b765235e4ca2b7eaa819299679be0b3c5ab9c Mon Sep 17 00:00:00 2001 From: larryob Date: Thu, 15 Jan 2026 15:11:48 -0500 Subject: [PATCH 1/3] ci: only run bytecode check on PRs targeting main MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Added branch filter to bytecode-analysis workflow so it only runs on pull requests targeting the main branch. 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude Opus 4.5 --- .github/workflows/bytecode-analysis.yml | 2 ++ 1 file changed, 2 insertions(+) diff --git a/.github/workflows/bytecode-analysis.yml b/.github/workflows/bytecode-analysis.yml index a89c7dfa8b8..5f1ee2a3f55 100644 --- a/.github/workflows/bytecode-analysis.yml +++ b/.github/workflows/bytecode-analysis.yml @@ -2,6 +2,8 @@ name: Check Bytecode Changes on: pull_request: + branches: + - main paths: - 'solidity/**' - '.github/workflows/bytecode-analysis.yml' From a1312b9d73da7d60ff9640e6facf46f5444a1258 Mon Sep 17 00:00:00 2001 From: larryob Date: Thu, 15 Jan 2026 15:17:06 -0500 Subject: [PATCH 2/3] test: add comment to test bytecode check CI (no bytecode change) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit This is a test commit to verify the bytecode check workflow passes when there are no bytecode changes (comment only). DELETE THIS BRANCH AFTER TESTING. 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude Opus 4.5 --- solidity/contracts/Mailbox.sol | 1 + 1 file changed, 1 insertion(+) diff --git a/solidity/contracts/Mailbox.sol b/solidity/contracts/Mailbox.sol index cc0b55865d4..220bf3e6f02 100644 --- a/solidity/contracts/Mailbox.sol +++ b/solidity/contracts/Mailbox.sol @@ -31,6 +31,7 @@ contract Mailbox is // ============ Constants ============ + // Test comment for bytecode check CI test - DELETE ME // Domain of chain on which the contract is deployed uint32 public immutable localDomain; From ffcc5f637796187e53e7dfefea1a70f1bce4e11f Mon Sep 17 00:00:00 2001 From: larryob Date: Thu, 15 Jan 2026 17:54:02 -0500 Subject: [PATCH 3/3] fix(solidity): add bytecode_hash to ci profile for valid compiler config MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit The ci profile sets cbor_metadata=false but was missing bytecode_hash. When cbor_metadata is false, bytecode_hash must be "none" per the Solidity compiler specification. This fixes the bytecode check workflow. 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude Opus 4.5 --- solidity/foundry.toml | 1 + 1 file changed, 1 insertion(+) diff --git a/solidity/foundry.toml b/solidity/foundry.toml index 21e9804eecc..905b6641568 100644 --- a/solidity/foundry.toml +++ b/solidity/foundry.toml @@ -19,6 +19,7 @@ ignored_warnings_from = ['lib', 'test', 'contracts/test'] verbosity = 4 # disable metadata for bytecode comparison cbor_metadata = false +bytecode_hash = "none" [rpc_endpoints] mainnet = "${RPC_URL_MAINNET}"