Skip to content

Conversation

@0xrajath
Copy link
Collaborator

@0xrajath 0xrajath commented Dec 16, 2025

v1.10.0 Rewards v2.2

Release Manager

@0xrajath

Overview

Rewards v2.2 releases 2 new reward types:

  • Rewards that are linear to allocated unique stake (Needs to be both retroactive and future-looking).
  • Rewards that are linear to total stake (Needs to be both retroactive and future-looking).

The below release notes cover Core Contracts.

Highlights

🚀 New Features

  • The RewardsCoordinator includes 2 new reward functions: createUniqueStakeRewardsSubmission (Rewards linear to allocated unique stake) and createTotalStakeRewardsSubmission (Rewards linear to total stake)

Changelog

  • chore: rewards v2.2 upgrade script PR #1702
  • chore: forge fmt
  • chore: updated bindings for Rewards
  • feat: rewards v2.2 PR #1659

@0xrajath 0xrajath self-assigned this Dec 16, 2025
**Motivation:**

We need to support Rewards v2.2 :
- Rewards that are linear to allocated unique stake (Needs to be both
retroactive and future-looking).
- Rewards that are linear to total stake (Needs to be both retroactive
and future-looking).

TDD:
https://www.notion.so/eigen-labs/PRD-Rewards-v2-2-Operator-Set-Rewards-with-Unique-Total-Stake-28513c11c3e080cbb856e41ddc6362f5

**Modifications:**

Updates in `RewardsCoordinator`:
- New `createUniqueStakeRewardsSubmission` function with
`UniqueStakeRewardsSubmissionCreated` event emission
- New `PAUSED_UNIQUE_STAKE_REWARDS_SUBMISSION` constant
- New `isUniqueStakeRewardsSubmissionHash` mapping
- New `createTotalStakeRewardsSubmission` function with
`TotalStakeRewardsSubmissionCreated` event emission
- New `PAUSED_TOTAL_STAKE_REWARDS_SUBMISSION` constant
- New `isTotalStakeRewardsSubmissionHash` mapping
- Updated storage gap to 33 slots (from 35 slots)

Updated Bindings

**Result:**

Support for Rewards v2.2
@0xrajath 0xrajath force-pushed the release-dev/rewards-v2.2-fmt branch from 9e0aee8 to bd57ecb Compare January 14, 2026 21:26
@0xrajath 0xrajath marked this pull request as ready for review January 14, 2026 21:32
Copilot AI review requested due to automatic review settings January 14, 2026 21:32
Copy link

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This PR introduces Rewards v2.2, implementing two new reward submission types for the RewardsCoordinator contract: rewards linear to allocated unique stake and rewards linear to total stake. Both types support retroactive and future-looking submissions.

Changes:

  • Added two new functions createUniqueStakeRewardsSubmission and createTotalStakeRewardsSubmission to enable new reward distribution models
  • Added new pause flags (indices 10 and 11) for the new submission functions
  • Updated storage with new mapping variables and reduced storage gap accordingly
  • Generated Go bindings for the updated contract interfaces

Reviewed changes

Copilot reviewed 6 out of 7 changed files in this pull request and generated 2 comments.

Show a summary per file
File Description
src/contracts/core/RewardsCoordinator.sol Implements the two new reward submission functions with operator set validation
src/contracts/interfaces/IRewardsCoordinator.sol Defines interfaces, events, and documentation for new submission types
src/contracts/core/storage/RewardsCoordinatorStorage.sol Adds new pause flags, storage mappings, and adjusts storage gap
src/test/unit/RewardsCoordinatorUnit.t.sol Comprehensive test coverage for both new functions including edge cases and UAM scenarios
pkg/bindings/RewardsCoordinatorStorage/binding.go Updated Go bindings for storage contract
pkg/bindings/IRewardsCoordinator/binding.go Updated Go bindings for interface
Comments suppressed due to low confidence (1)

src/test/unit/RewardsCoordinatorUnit.t.sol:1860

  • Corrected spelling of 'realisticly' to 'realistically'.
        // Set the timestamp to when Rewards v2 will realisticly go out (i.e 6 months)
        cheats.warp(GENESIS_REWARDS_TIMESTAMP + 168 days);

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

**Motivation:**

Rewards v2.2 upgrade scripts (v1.10.0)

**Modifications:**

- `v1.10.0-rewards-v2.2` release script that includes 3 steps
(Collectively it upgrades the RewardsCoordinator to include Rewards v2.2
functionality and also updates `MAX_REWARDS_DURATION` from 70 days to 2
years):

1. `1-deployRewardsCoordinatorImpl.s.sol`
2. `2-queueRewardsCoordinatorUpgrade.s.sol`
3. `3-executeRewardsCoordinatorUpgrade.s.sol`

- Updated `v1.9.0-slashing-ux` and `v1.9.0-slashing-ux-destination`
release scripts to have a version check for `v1.8.1`.

**Result:**

Rewards v2.2 upgrade.
@0xrajath 0xrajath merged commit 709611f into main Jan 27, 2026
21 checks passed
@0xrajath 0xrajath deleted the release-dev/rewards-v2.2-fmt branch January 27, 2026 22:54
@github-actions
Copy link

Certora Run Started (Verified Rules)

  • Group ID: 85255fc6-03c2-44a9-b2b5-d2015aa70338
Config Status Link Log File
core/AllocationManager.conf Failed (1) - certora/confs/core/AllocationManager.conf-007a3552b956.log
core/AllocationManagerOverslashing.conf Failed (1) - certora/confs/core/AllocationManagerOverslashing.conf-7a35363cd9fb.log
core/AllocationManagerSanity.conf Compiled - certora/confs/core/AllocationManagerSanity.conf-8589cb713519.log
core/AllocationManagerValidState.conf Failed (1) - certora/confs/core/AllocationManagerValidState.conf-8e893e87c689.log
core/DelegationManager.conf Compiled - certora/confs/core/DelegationManager.conf-1995e8ec0518.log
core/DelegationManagerValidState.conf Compiled - certora/confs/core/DelegationManagerValidState.conf-de22e4ada7f8.log
core/StrategyManager.conf Compiled - certora/confs/core/StrategyManager.conf-3f8e71e7e647.log
multichain/BN254CertificateVerifier.conf Compiled - certora/confs/multichain/BN254CertificateVerifier.conf-f91e75e07b2f.log
multichain/CrossChainRegistry.conf Failed (1) - certora/confs/multichain/CrossChainRegistry.conf-5095ed5c94ac.log
multichain/ECDSACertificateVerifier.conf Compiled - certora/confs/multichain/ECDSACertificateVerifier.conf-3b14c93f1fca.log
multichain/KeyRegistrar.conf Compiled - certora/confs/multichain/KeyRegistrar.conf-663bb3425f70.log
multichain/OperatorTableUpdater.conf Failed (1) - certora/confs/multichain/OperatorTableUpdater.conf-e8f44f27a1f3.log
permissions/Pausable.conf Compiled - certora/confs/permissions/Pausable.conf-6c0a3acae345.log
pods/EigenPodManagerRules.conf Compiled - certora/confs/pods/EigenPodManagerRules.conf-b8aa02a09a35.log
strategies/StrategyBase.conf Compiled - certora/confs/strategies/StrategyBase.conf-ebd649a4f992.log

Certora Run Summary

  • Started 0 jobs
  • 5 jobs failed

Download Logs

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants