Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

SR 1.5 #879

Merged
merged 420 commits into from
Nov 27, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
420 commits
Select commit Hold shift + click to select a range
aa51127
feat: update scratch deploy for sanity checker
mkurayan Jun 13, 2024
2ef7140
feat: accounting oracle scratch deploy update consensus version
mkurayan Jun 13, 2024
a91b0a5
feat: cache Lido address
vp4242 Jun 14, 2024
4b8e1a8
fix: style for local var
vp4242 Jun 17, 2024
cc55ac5
feat: check withdrawal vault balance against second opinion
vp4242 Jun 17, 2024
7a6ea53
feat: add withdrawalVaultBalance to the confirmed event
vp4242 Jun 17, 2024
a822a15
test: add test for withdrawal vault balance cases
vp4242 Jun 17, 2024
69621e2
feat: update comment
mkurayan Jun 17, 2024
9d8c038
fix: rename withdrawalVaultBalance -> withdrawalVaultBalanceWei
vp4242 Jun 18, 2024
efeff81
fix: improve readability
vp4242 Jun 18, 2024
5b848ea
fix: script for deploy sr v2
Amuhar Jun 11, 2024
548cedc
fix: removed empty func
Amuhar Jun 19, 2024
79711fe
fix: deploy on holesky
Amuhar Jun 19, 2024
2538d79
fix: deploy NOR impl only once
Amuhar Jun 19, 2024
60f0372
fix: gas cost optim
krogla Jun 19, 2024
23e2c07
docs: add explainer for _isMinDepositDistancePassed
avsetsin Jun 19, 2024
3dabb5a
chore: unification of iterators in dsm
avsetsin Jun 19, 2024
806715b
fix: targetLimitMode type in comments
avsetsin Jun 20, 2024
ab0fff9
fix: reading contract addresses from json
Amuhar Jun 20, 2024
09fe5ae
fix: add guardians
Amuhar Jun 20, 2024
37fa449
fix: moved APPEARED_VALIDATORS_PER_DAY_LIMIT in env
Amuhar Jun 21, 2024
e312c0b
docs: fix depositBufferedEther natspec
avsetsin Jun 21, 2024
da25340
docs: staking router natspec fixes
avsetsin Jun 21, 2024
1a2326a
chore: sr iterators unification
avsetsin Jun 21, 2024
5b71ed3
docs: natspec harmonization for SR contract
avsetsin Jun 24, 2024
4565e72
fix: owner agent
Amuhar Jun 25, 2024
8fa0b58
fix: get rid of env for contracts parameters
Amuhar Jun 25, 2024
a368e1c
fix: deploy script for holesky with verification
Amuhar Jun 25, 2024
9009332
fix: lint
Amuhar Jun 26, 2024
a4d3330
fix: verification with concrete contracts impl
Amuhar Jun 26, 2024
4293a8e
feat: update staking limits
mkurayan Jun 27, 2024
df3c660
feat: update PAUSE_INTENT_VALIDITY_PERIOD_BLOCKS
mkurayan Jun 27, 2024
d1e7cd9
fix: deploy params
eddort Jun 27, 2024
9e78b26
Merge pull request #112 from lidofinance/feat/sr-1.5-deploy-scripts-d…
Amuhar Jun 28, 2024
30bd6ca
fix: refactoring
Amuhar Jun 30, 2024
0062457
fix: addresses
Amuhar Jun 30, 2024
d642257
fix: sdvt updtae in config
Amuhar Jul 1, 2024
b2e20fa
fix: typo
krogla Jul 1, 2024
3816e90
fix: typo
krogla Jul 1, 2024
5be9976
fix: env sample
Amuhar Jul 1, 2024
66dd925
feat: support old method to set soft limit
avsetsin Jul 1, 2024
ca60d6b
test: unset soft limit via deprecated updateTargetValidatorsLimits
avsetsin Jul 1, 2024
771bd9e
refactor: updateTargetValidatorsLimits notation
avsetsin Jul 1, 2024
20aad57
Merge pull request #113 from lidofinance/feat/sr-1.5-deprecated-targe…
avsetsin Jul 1, 2024
1f30fb6
fix: logs
Amuhar Jul 1, 2024
bf5158f
fix: script
Amuhar Jul 2, 2024
14aa14e
fix: reset mainnet config
Amuhar Jul 2, 2024
10a7540
Merge branch 'feat/sr-1.5' into feat/sr-1.5-deploy-scripts-1
mkurayan Jul 3, 2024
dca2f5f
fix: remove unused total keys count
krogla Jul 3, 2024
3930b81
refactor: simplify method descriptionj
mkurayan Jul 3, 2024
1fc28bb
test: refactor naming
krogla Jul 3, 2024
da28d37
refactor: sr codesize
krogla Jun 19, 2024
e6091ec
style: fixes
krogla Jul 3, 2024
4e86e99
test: sr coverage
krogla Jul 4, 2024
7a11bc2
fix: comments
vp4242 Jul 4, 2024
af1dad9
fix: remove unused error
vp4242 Jul 4, 2024
9feb647
fix: note and limits list read from memory instead of the storage
vp4242 Jul 4, 2024
78eb3da
fix: correct IncorrectAppearedValidators error and usage
vp4242 Jul 4, 2024
ac37eb1
test: fix the IncorrectAppearedValidators error args
vp4242 Jul 4, 2024
98b1fb9
Merge commit 'efeff81c18f85451ebf98e8fd8bb78b8eb0095f6' into feat/sr-1.5
mkurayan Jul 4, 2024
434d60b
feat: fix errors after negative rebase merge
mkurayan Jul 4, 2024
32749f2
Merge branch 'develop' of github.com:lidofinance/core into feat/sr-1.…
eddort Jul 5, 2024
8ec7dc9
fix: nor tests
eddort Jul 5, 2024
cdcb3d3
fix: remove reward distribution tests and handle NOR v3
eddort Jul 5, 2024
7ce2811
feat: reduce requestTimestampMargin size in order to fit all limits i…
mkurayan Jul 5, 2024
ea0d2e2
feat: fix scratch deploy
mkurayan Jul 5, 2024
068d823
fix: lint
Amuhar Jul 5, 2024
3c61076
fix: nor distributeReward test
eddort Jul 5, 2024
4f0be1a
fix: use updateTargetLimits and updateTargetLimitsDeprecated in aux t…
eddort Jul 5, 2024
cfa60ed
feat: refactor and decreaseVettedSigningKeysCount tests
eddort Jul 8, 2024
db572a3
refactor: move staking limit tests
eddort Jul 8, 2024
7935a3f
Merge pull request #121 from lidofinance/feat/rebase-limit-f1
vp4242 Jul 9, 2024
583da54
Update contracts/0.8.9/sanity_checks/OracleReportSanityChecker.sol
mkurayan Jul 9, 2024
468ddd9
fix: typo, comment
vp4242 Jul 9, 2024
55ed777
feat: remove unused SafeCastExt
mkurayan Jul 9, 2024
fa3a319
fix: correct exited validators count calculation
vp4242 Jul 9, 2024
8edf723
fix: keep LimitsList fields order for backward compatibility
vp4242 Jul 9, 2024
55b8099
Merge commit '8edf723223e97950c3a5657b7b2b34a9c9f27acd' into feat/sr-…
mkurayan Jul 9, 2024
3ede3de
test: fix requestTimestampMargin test
mkurayan Jul 9, 2024
5077858
test: fix post negative rebase merge errors
mkurayan Jul 9, 2024
29a94e0
feat: move appearedValidatorsPerDayLimit to deprecatedOneOffCLBalance…
mkurayan Jul 9, 2024
68536ae
Merge pull request #123 from lidofinance/feat/sr-1.5-plus-negative-re…
mkurayan Jul 10, 2024
ddfeed5
feat: rename limits
mkurayan Jul 10, 2024
d2f1c01
Merge branch 'feat/sr-1.5' into feat/sr-1.5-deploy-scripts
mkurayan Jul 10, 2024
5fdce69
feat: fix deploy script after merging negative rebase
mkurayan Jul 10, 2024
c540cdc
fix: improve event params names
vp4242 Jul 11, 2024
605c5e4
feat: fix deployment script
vp4242 Jul 11, 2024
c258f4b
refactor: tests code review
eddort Jul 15, 2024
d386234
fix: code review nor aux
eddort Jul 16, 2024
878dcb7
fix: move getRewardsDistribution to penalties flow file
eddort Jul 16, 2024
5028f77
refactor: move the limit tests to a separate file
eddort Jul 16, 2024
9d04d5f
fix: check targetValidatorsCount in limits tests
eddort Jul 16, 2024
ee7d64b
refactor: added todos for test cases
eddort Jul 16, 2024
a33c0ca
Update test/0.4.24/nor/nor.management.flow.test.ts
eddort Jul 16, 2024
480d791
Merge commit '605c5e4df7b5bd745e27fd400452447be62878e1' into feat/sr-…
mkurayan Jul 17, 2024
afc1908
Merge pull request #129 from lidofinance/feat/sr-1.5-merge-negative-r…
mkurayan Jul 17, 2024
9753ca3
feat: rename setter for maxItemsPerExtraDataTransaction
mkurayan Jul 17, 2024
6bca576
feat: rename role for maxItemsPerExtraDataTransaction parameter
mkurayan Jul 17, 2024
b222cb8
feat: rename setter for maxNodeOperatorsPerExtraDataItem limit
mkurayan Jul 17, 2024
dfffad4
feat: rename role for maxNodeOperatorsPerExtraDataItem limit
mkurayan Jul 17, 2024
bb8cdf6
Merge pull request #125 from lidofinance/feat/sr-1.5-sanity-cheker-re…
mkurayan Jul 17, 2024
0e2c21e
refactor: nor tests code review
eddort Jul 17, 2024
aec7e66
Merge branch 'feat/sr-1.5-sync-develop' of github.com:lidofinance/cor…
eddort Jul 17, 2024
0761fee
feat: finalizeUpgrade_v3 test cases
eddort Jul 17, 2024
a87fbe1
feat: v2 to v3 upgrade test
eddort Jul 17, 2024
7802598
feat: updateTargetValidatorsLimits nonce and targetValidatorsCount ch…
eddort Jul 17, 2024
b7c32ce
chore: remove unused mock function
vp4242 Jul 17, 2024
dc5459e
Update test/0.8.9/contracts/StakingRouterMockForValidatorsCount.sol
vp4242 Jul 17, 2024
abc750c
Merge branch 'feat/rebase-limit' of git-ldo:lidofinance/core into fea…
vp4242 Jul 17, 2024
e2e4c83
chore: naming fixes
vp4242 Jul 17, 2024
6a01c8e
refactor: move unsafeUpdateValidatorsCount to aux test
eddort Jul 17, 2024
9e30c4a
feat: use both abi versions in limit tests
eddort Jul 17, 2024
bcdf4c6
feat: nor limits no summary invariants
eddort Jul 17, 2024
5ec7172
Merge pull request #119 from lidofinance/feat/sr-1.5-fix-nor
avsetsin Jul 18, 2024
7578a9b
feat: distributeReward tests
eddort Jul 18, 2024
23a691f
Merge branch 'feat/sr-1.5' of github.com:lidofinance/core into feat/s…
eddort Jul 18, 2024
adab914
fix: remove unused test case
eddort Jul 18, 2024
f352360
feat: extract public interface into separate file
vp4242 Jul 19, 2024
9479a6a
fix: limit solidity version
vp4242 Jul 19, 2024
2be37a7
fix: put back LidoLocatorMock
vp4242 Jul 19, 2024
f75f53b
fix: force re-run
vp4242 Jul 19, 2024
f6deb4b
fix: revert "force re-run" commit
vp4242 Jul 19, 2024
1142482
Merge pull request #67 from lidofinance/feat/rebase-limit
vp4242 Jul 19, 2024
6f05f34
Update test/0.4.24/nor/nor.initialize.upgrade.test.ts
eddort Jul 19, 2024
85665da
Update test/0.4.24/nor/nor.initialize.upgrade.test.ts
eddort Jul 19, 2024
4f07949
Update test/0.4.24/nor/nor.initialize.upgrade.test.ts
eddort Jul 19, 2024
02e29f4
Update test/0.4.24/nor/nor.initialize.upgrade.test.ts
eddort Jul 19, 2024
acd4b8a
Update test/0.4.24/nor/nor.limits.test.ts
eddort Jul 19, 2024
974001a
refactor: code review
eddort Jul 19, 2024
e8c1d32
refactor: code review
eddort Jul 19, 2024
6c6d5ae
Merge pull request #122 from lidofinance/feat/sr-1.5-sync-develop
eddort Jul 19, 2024
6fc5aab
fix: mock location
tamtamchik Jul 19, 2024
f6aaa14
Merge pull request #133 from lidofinance/feat/fix-develop
tamtamchik Jul 19, 2024
1d62958
Merge branch 'develop' of github.com:lidofinance/core into feat/sr-1.…
eddort Jul 19, 2024
fafa232
Merge pull request #134 from lidofinance/feat/sr-1.5-resolve-conflicts
eddort Jul 19, 2024
4856ea5
Merge branch 'feat/sr-1.5' into feat/sr-1.5-deploy-scripts
mkurayan Jul 22, 2024
094d5b3
Merge pull request #140 from lidofinance/master
tamtamchik Jul 30, 2024
17fb46e
Merge branch 'develop' of github.com:lidofinance/core into sr-1.5-sync
eddort Jul 30, 2024
b8d5e0e
fix: hash consensus version test
eddort Jul 30, 2024
1eccd17
Merge branch 'master' into develop
tamtamchik Aug 9, 2024
a87fd04
fix: linters
tamtamchik Aug 9, 2024
c23ec97
ci: skip integration tests
tamtamchik Aug 9, 2024
3bd9c71
Merge pull request #144 from lidofinance/feat/sync-develop
tamtamchik Aug 14, 2024
130088f
Merge branch 'master' into feat/sync-with-master
tamtamchik Aug 21, 2024
243f124
Merge pull request #158 from lidofinance/feat/sync-with-master
tamtamchik Aug 26, 2024
4be7ff5
docs: fix description
krogla Aug 28, 2024
f535754
refactor: unify array length validation to reduce duplication and con…
mkurayan Aug 29, 2024
c5db72e
feat: update maxNodeOperatorsPerExtraDataItemCount
mkurayan Sep 5, 2024
2f0811c
feat: update sanity checker scratch deploy parameters
mkurayan Sep 5, 2024
8d4c244
Merge branch 'develop' into feat/update-develop
tamtamchik Sep 6, 2024
d022f76
chore: fix OracleReportSanityChecker.sol tests
tamtamchik Sep 6, 2024
a64bca8
chore: update negative rebase tests
tamtamchik Sep 6, 2024
759c1d0
fix: tests
tamtamchik Sep 6, 2024
da704b8
fix: prevent overflow in minDepositBlockDistance and maxDepositsPerBl…
mkurayan Aug 30, 2024
6002003
fix: prevent potential revert due to underflow
mkurayan Aug 30, 2024
cf7e9fa
fix: return the boolean value from clearNodeOperatorPenalty function
mkurayan Aug 30, 2024
f317759
fix: add event on clearNodeOperatorPenalty
mkurayan Aug 30, 2024
bf68809
fix: typo in nor function name
mkurayan Aug 30, 2024
05fcb34
Merge branch 'master' into feat/update-develop
tamtamchik Sep 12, 2024
d48268a
test: skip integration tests for now
tamtamchik Sep 12, 2024
6c8e359
chore: update scratch deploy for neg rebase sanity checker
tamtamchik Sep 12, 2024
b7528ec
chore: update upgrade for neg rebase sanity checker
tamtamchik Sep 12, 2024
54538e1
fix: ci tests on scratch deploy
tamtamchik Sep 12, 2024
e11c59a
fix: ci tests on mainnet fork
tamtamchik Sep 12, 2024
2aeb34b
fix: calling statefile on fork
tamtamchik Sep 12, 2024
76be705
fix: update params for mainnet
tamtamchik Sep 12, 2024
e5fa6a7
feat: bail on failure
tamtamchik Sep 12, 2024
ff369b0
chore: add comment
tamtamchik Sep 13, 2024
dc3c289
test: second opinion test
vp4242 Sep 18, 2024
5f3ce0b
feat: remove unused stub
vp4242 Sep 19, 2024
87a29e0
test: improve test
vp4242 Sep 19, 2024
ecf9fd0
fix: modify accounting to enable negative rebase checker
vp4242 Sep 19, 2024
3a3f2f6
Merge branch 'master' into feat/update-develop
tamtamchik Sep 23, 2024
eaaed4b
fix: apply review suggestions
tamtamchik Sep 23, 2024
669d8e5
Merge pull request #201 from lidofinance/feat/update-develop
tamtamchik Sep 23, 2024
8f9048b
Merge branch 'develop' into feat/sr-1.5-develop-sync
tamtamchik Sep 24, 2024
c341371
fix: move limits values in constants
Amuhar Sep 24, 2024
9f38053
fix: eslint
tamtamchik Sep 24, 2024
7fa02d7
ci: disable integration tests
tamtamchik Sep 24, 2024
07b46eb
fix: scratch deploy
tamtamchik Sep 24, 2024
4fa09a9
chore: fix mock and harness contracts
tamtamchik Sep 24, 2024
771ebca
chore: fix ts errors
tamtamchik Sep 24, 2024
a78fdf4
chore: formattings
tamtamchik Sep 24, 2024
f008366
test: fix hash consensus
tamtamchik Sep 24, 2024
24ab291
fix: typo
tamtamchik Sep 24, 2024
beb6ceb
fix: remove redundant check
krogla Sep 24, 2024
cb315a9
Merge branch 'feat/sr-1.5' into feat/sr-1.5-develop-sync
tamtamchik Sep 24, 2024
d437268
Merge pull request #141 from lidofinance/sr-1.5-sync
avsetsin Sep 25, 2024
769bdfc
fix: add nonce update on refund count changes
krogla Sep 25, 2024
e21a591
test: nonce on refund count upd
krogla Sep 25, 2024
1ffbb7e
fix: clear the penalized state test
avsetsin Sep 25, 2024
6f1e0a1
Merge remote-tracking branch 'origin/feat/sr-1.5' into feat/sr-1.5-de…
tamtamchik Sep 25, 2024
db3d683
ci: update images
tamtamchik Sep 25, 2024
6d00ddc
chore: rearrange mock and harness contracts
tamtamchik Sep 25, 2024
898ffdb
fix: typecheck errors
tamtamchik Sep 25, 2024
15ce3a4
test: enable integration tests
tamtamchik Sep 25, 2024
aea6504
docs: description for sr deploy params
avsetsin Sep 26, 2024
514e6e7
fix: read contract addresses from locator
Amuhar Sep 26, 2024
06f2644
fix: loging
Amuhar Sep 26, 2024
f44c9fe
Merge pull request #221 from lidofinance/feat/sr-1.5-deploy-scripts-desc
Amuhar Sep 26, 2024
c53008c
Merge commit '1ffbb7e49e112fcac678f59bf63ba57a7e522874' into feat/sr-…
mkurayan Oct 2, 2024
e5733bd
feat: use steth on optimism locator impl in sr2 deploy script
avsetsin Oct 7, 2024
9bd43f6
Merge pull request #226 from lidofinance/feat/sr-1.5-deploy-scripts-l…
avsetsin Oct 7, 2024
57a5167
Merge pull request #110 from lidofinance/feat/sr-1.5-deploy-scripts
avsetsin Oct 7, 2024
4ec12a8
test: refine second opinion test
vp4242 Oct 7, 2024
81eef77
feat: refine comments
vp4242 Oct 7, 2024
47e43bd
test: second opinion test
vp4242 Sep 18, 2024
3ff99fc
feat: remove unused stub
vp4242 Sep 19, 2024
66f5e7c
test: improve test
vp4242 Sep 19, 2024
3249449
fix: modify accounting to enable negative rebase checker
vp4242 Sep 19, 2024
c0f4b98
test: refine second opinion test
vp4242 Oct 7, 2024
f45f506
feat: refine comments
vp4242 Oct 7, 2024
5257193
Merge branch 'feat/second-opinion-test' of git-ldo:lidofinance/core i…
vp4242 Oct 7, 2024
9e64ca0
feat: update cl balances oracle error upper limit
avsetsin Oct 8, 2024
643d46d
docs: update forum post link to sr v2 upgrade announcement
avsetsin Oct 8, 2024
14904a6
Merge pull request #227 from lidofinance/feat/sr-1.5-sc-oracle-upper-…
avsetsin Oct 8, 2024
430e3db
New deploy params
hweawer Oct 8, 2024
737b675
Merge pull request #228 from lidofinance/deployed-mainnet-SR-1.5
avsetsin Oct 9, 2024
e838b5f
Merge branch 'master' into feat/develop-sync
tamtamchik Oct 9, 2024
17c5ca7
fix: review feedback
tamtamchik Oct 10, 2024
7e0bae9
fix: restore coverage
tamtamchik Oct 10, 2024
ab36d1c
Merge pull request #229 from lidofinance/feat/develop-sync
TheDZhon Oct 10, 2024
5834d31
Merge remote-tracking branch 'core/develop' into sync/develop
tamtamchik Oct 10, 2024
04557e4
Merge remote-tracking branch 'core/develop' into sync/develop
tamtamchik Oct 10, 2024
72a14c6
Merge branch 'master' into sync/develop
tamtamchik Oct 10, 2024
71badc1
fix: typecheck
tamtamchik Oct 10, 2024
c2470f5
Merge pull request #854 from lidofinance/sync/develop
TheDZhon Oct 11, 2024
d2e4479
Merge branch 'develop' into feat/second-opinion-test
tamtamchik Oct 11, 2024
2ec00cc
fix: tests
tamtamchik Oct 11, 2024
a862c7a
fix: fix mainnet fork update for sanity checker
tamtamchik Oct 11, 2024
071b0df
feat: fix clBalanceOraclesErrorUpperBPLimit value
vp4242 Oct 11, 2024
261f90f
fix: clBalanceOraclesErrorUpperBPLimit value
vp4242 Oct 11, 2024
5897662
Merge branch 'feat/second-opinion-test' of git-ldo:lidofinance/lido-d…
vp4242 Oct 11, 2024
ba3c50e
test: improve second opinion tests
vp4242 Oct 11, 2024
7dea205
fix: remove PostTotalShares event checks
tamtamchik Oct 14, 2024
5888b1c
chore: fix SecondOpinionOracleMock naming
tamtamchik Oct 14, 2024
f3a4a14
Merge pull request #857 from lidofinance/feat/second-opinion-test
tamtamchik Oct 14, 2024
4169110
Merge branch 'develop' into feat/sr-1.5-develop-sync
tamtamchik Nov 7, 2024
a9eacbd
Merge remote-tracking branch 'origin/feat/sr-1.5' into feat/sr-1.5-de…
tamtamchik Nov 7, 2024
a2a846d
fix: scratch deploy
tamtamchik Nov 7, 2024
426fb06
fix: linter
tamtamchik Nov 7, 2024
5e1925c
chore: fix extra reporting by CSM
tamtamchik Nov 7, 2024
38310fc
ci: update scratch deploy params
tamtamchik Nov 7, 2024
2518c9f
test: fix nor distributer rewards
krogla Nov 18, 2024
6f96202
chore: update deps
tamtamchik Nov 25, 2024
1860a19
test(integration): restore happy path
tamtamchik Nov 25, 2024
25ab456
test(integration): restore accounting
tamtamchik Nov 26, 2024
9c0bc19
chore: fix linter warnings
tamtamchik Nov 26, 2024
957fd2f
Merge pull request #858 from lidofinance/feat/sr-1.5-develop-sync
krogla Nov 26, 2024
39caac3
Merge pull request #860 from lidofinance/feat/sr-1.5
krogla Nov 26, 2024
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
3 changes: 2 additions & 1 deletion .github/workflows/tests-integration-scratch.yml
Original file line number Diff line number Diff line change
Expand Up @@ -41,4 +41,5 @@ jobs:
- name: Run integration tests
run: yarn test:integration:fork:local
env:
LOG_LEVEL: debug
LOG_LEVEL: "debug"
INTEGRATION_WITH_CSM: "off"
190 changes: 153 additions & 37 deletions contracts/0.4.24/nos/NodeOperatorsRegistry.sol

Large diffs are not rendered by default.

460 changes: 309 additions & 151 deletions contracts/0.8.9/DepositSecurityModule.sol

Large diffs are not rendered by default.

914 changes: 550 additions & 364 deletions contracts/0.8.9/StakingRouter.sol

Large diffs are not rendered by default.

26 changes: 26 additions & 0 deletions contracts/0.8.9/interfaces/ISecondOpinionOracle.sol
Original file line number Diff line number Diff line change
@@ -0,0 +1,26 @@
// SPDX-FileCopyrightText: 2024 Lido <[email protected]>
// SPDX-License-Identifier: GPL-3.0

pragma solidity 0.8.9;

/// @title Second Opinion Oracle interface for Lido. See LIP-23 for details.
interface ISecondOpinionOracle {
/// @notice Returns second opinion report for the given reference slot
/// @param refSlot is a reference slot to return report for
/// @return success shows whether the report was successfully generated
/// @return clBalanceGwei is a balance of the consensus layer in Gwei for the ref slot
/// @return withdrawalVaultBalanceWei is a balance of the withdrawal vault in Wei for the ref slot
/// @return totalDepositedValidators is a total number of validators deposited with Lido
/// @return totalExitedValidators is a total number of Lido validators in the EXITED state
function getReport(uint256 refSlot)
external
view
returns (
bool success,
uint256 clBalanceGwei,
uint256 withdrawalVaultBalanceWei,
uint256 totalDepositedValidators,
uint256 totalExitedValidators
);
}

26 changes: 20 additions & 6 deletions contracts/0.8.9/interfaces/IStakingModule.sol
Original file line number Diff line number Diff line change
Expand Up @@ -23,7 +23,7 @@ interface IStakingModule {

/// @notice Returns all-validators summary belonging to the node operator with the given id
/// @param _nodeOperatorId id of the operator to return report for
/// @return isTargetLimitActive shows whether the current target limit applied to the node operator
/// @return targetLimitMode shows whether the current target limit applied to the node operator (0 = disabled, 1 = soft mode, 2 = forced mode)
/// @return targetValidatorsCount relative target active validators limit for operator
/// @return stuckValidatorsCount number of validators with an expired request to exit time
/// @return refundedValidatorsCount number of validators that can't be withdrawn, but deposit
Expand All @@ -37,7 +37,7 @@ interface IStakingModule {
/// EXITED state this counter is not decreasing
/// @return depositableValidatorsCount number of validators in the set available for deposit
function getNodeOperatorSummary(uint256 _nodeOperatorId) external view returns (
bool isTargetLimitActive,
uint256 targetLimitMode,
uint256 targetValidatorsCount,
uint256 stuckValidatorsCount,
uint256 refundedValidatorsCount,
Expand Down Expand Up @@ -86,6 +86,14 @@ interface IStakingModule {
/// Details about error data: https://docs.soliditylang.org/en/v0.8.9/control-structures.html#error-handling-assert-require-revert-and-exceptions
function onRewardsMinted(uint256 _totalShares) external;

/// @notice Called by StakingRouter to decrease the number of vetted keys for node operator with given id
/// @param _nodeOperatorIds bytes packed array of the node operators id
/// @param _vettedSigningKeysCounts bytes packed array of the new number of vetted keys for the node operators
function decreaseVettedSigningKeysCount(
bytes calldata _nodeOperatorIds,
bytes calldata _vettedSigningKeysCounts
) external;

/// @notice Updates the number of the validators of the given node operator that were requested
/// to exit but failed to do so in the max allowed time
/// @param _nodeOperatorIds bytes packed array of the node operators id
Expand All @@ -97,10 +105,10 @@ interface IStakingModule {

/// @notice Updates the number of the validators in the EXITED state for node operator with given id
/// @param _nodeOperatorIds bytes packed array of the node operators id
/// @param _stuckValidatorsCounts bytes packed array of the new number of EXITED validators for the node operators
/// @param _exitedValidatorsCounts bytes packed array of the new number of EXITED validators for the node operators
function updateExitedValidatorsCount(
bytes calldata _nodeOperatorIds,
bytes calldata _stuckValidatorsCounts
bytes calldata _exitedValidatorsCounts
) external;

/// @notice Updates the number of the refunded validators for node operator with the given id
Expand All @@ -110,11 +118,11 @@ interface IStakingModule {

/// @notice Updates the limit of the validators that can be used for deposit
/// @param _nodeOperatorId Id of the node operator
/// @param _isTargetLimitActive Active flag
/// @param _targetLimitMode target limit mode
/// @param _targetLimit Target limit of the node operator
function updateTargetValidatorsLimits(
uint256 _nodeOperatorId,
bool _isTargetLimitActive,
uint256 _targetLimitMode,
uint256 _targetLimit
) external;

Expand Down Expand Up @@ -163,4 +171,10 @@ interface IStakingModule {

/// @dev Event to be emitted on StakingModule's nonce change
event NonceChanged(uint256 nonce);

/// @dev Event to be emitted when a signing key is added to the StakingModule
event SigningKeyAdded(uint256 indexed nodeOperatorId, bytes pubkey);

/// @dev Event to be emitted when a signing key is removed from the StakingModule
event SigningKeyRemoved(uint256 indexed nodeOperatorId, bytes pubkey);
}
Loading
Loading