Update: LIP-118 is live onchain
LIP-118 Delegated Reward Calling has been deployed on Arbitrum One as part of the July protocol release, via this governance transaction, which points the BondingManager Proxy to the new implementation contract. Orchestrators can now authorize a separate, low-privilege wallet to call rewards on their behalf, allowing the main orchestrator wallet to remain cold.
The subgraph and Explorer have also been updated to support the new reward-caller data and events. go-livepeer client support is currently under review, and we’ll update the operator docs once it is released.
There is currently an Arbiscan UI issue where the BondingManager proxy page does not pick up the latest implementation ABI, so the new methods are not available through its Read/Write UI. We have reached out to Arbiscan support to get this resolved. In the meantime, the methods are live onchain and can still be called directly against the proxy using Foundry cast or any Ethereum client.
Set reward caller (from the orchestrator wallet):
cast send 0x35Bcf3c30594191d53231E4FF333E8A770453e40 \
"setRewardCaller(address)" <REWARD_CALLER_ADDR> \
--rpc-url <ARBITRUM_RPC_URL> \
--keystore <ORCHESTRATOR_KEYSTORE>
Check the currently configured reward caller:
cast call 0x35Bcf3c30594191d53231E4FF333E8A770453e40 \
"transcoderToRewardCaller(address)(address)" <ORCHESTRATOR_ADDR> \
--rpc-url <ARBITRUM_RPC_URL>
Call reward (from the reward-caller wallet):
cast send 0x35Bcf3c30594191d53231E4FF333E8A770453e40 \
"rewardForTranscoder(address)" <ORCHESTRATOR_ADDR> \
--rpc-url <ARBITRUM_RPC_URL> \
--keystore <REWARD_CALLER_KEYSTORE>
Thanks to everyone who reviewed, discussed, and voted, and to Sidestream for helping the community develop, review, and ship it. It shows we have a strong protocol delivery pipeline to ship the upgrades proposed in the Livepeer 2.0 vision.