BridgeGovernance – Missing setRebateStaking Function

Context

As outlined in the October 22 Deployment Plan, the deployed BridgeGovernance contract (0xf286EA706A2512d2B9232FE7F8b2724880230b45) does not include a setRebateStaking(address) or a generalized beginGovernanceUpdate(...) function.

This prevents the system from registering the new RebateStaking contract (0x0184739C32edc3471D3e4860c8E39a5f3Ff85A45) with the Bridge proxy (0x5e4861a80B55f035D899f66772117F00FA0E8e7B) and and its new implementation 0x98e19c416100Ad0C66B52d05075F4C899184f2aD, resulting in the following error when attempting execution:

Error: Called function does not exist in the contract

Findings

Recommendation: Deploy an Upgraded BridgeGovernance

Deploy a new version of BridgeGovernance that adds a single administrative function:

function setRebateStaking(address rebateStaking) external onlyOwner {
    IBridge(bridge).setRebateStaking(rebateStaking);
}

This mirrors existing immediate-execution functions like:

and preserves the current governance patterns—no timelock for one-off administrative setup, while all parameterized updates still flow through the standard timelock process.

Deployment & Governance Handoff

  1. Deploy the upgraded BridgeGovernance with the added setRebateStaking(address) function.