Skip to content

Commit 2502cb9

Browse files
authored
v0.2.0 (#79)
* fix(strategy-manager): change slashing and obligationUpdate event order * fix(strategy): revert slashing if strategy not opted in * test(strategy): revert slash not opted in strategy * Add Security Checks for Config (#49) * Enrich SSVBasedApps interface (#51) * Remove IERC165 Interface Check (#52) * feat: check bApp registered during OptIn (#53) * Use `ICore.TokenConfig` for `registerBApp()` (#50) * chore: add Renovate config * Example ECDSA verifier (#72) * Fix: Propose Obligation Update storage ref (#74) * feat: add script for implementation update and solidity 0.8.30
1 parent b66645e commit 2502cb9

File tree

86 files changed

+2040
-1009
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

86 files changed

+2040
-1009
lines changed

.github/workflows/tests.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -23,7 +23,7 @@ jobs:
2323
- name: Install Node.js
2424
uses: actions/setup-node@49933ea5288caeca8642d1e84afbd3f7d6820020 # v4
2525
with:
26-
node-version: '18'
26+
node-version: '22'
2727
cache: 'npm'
2828
cache-dependency-path: package-lock.json
2929

.solhint.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
{
22
"extends": "solhint:recommended",
33
"rules": {
4-
"compiler-version": ["error", "0.8.29"],
4+
"compiler-version": ["error", "0.8.30"],
55
"no-inline-assembly": "off",
66
"no-unused-import": "error",
77
"func-named-parameters": "off",

.tool-versions

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
solidity 0.8.29
1+
solidity 0.8.30

RELEASE_NOTES.md

Lines changed: 40 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,45 @@
11
# Release Notes
22

3+
## [v0.2.0] 2024-06-xx
4+
### Description
5+
- fix(strategy-manager): change slashing and obligationUpdate event order
6+
- fix(strategy): revert slashing if strategy not opted in
7+
- feat: add and enforce basic checks for config vars
8+
- Enrich SSVBasedApps interface (#51)
9+
- Remove IERC165 Interface Check (#52)
10+
- feat: check bApp registered during OptIn (#53)
11+
- chore: update docs + add release notes
12+
- chore: sepolia deployment, bump version
13+
- Example ECDSA verifier (#72)
14+
- Fix: Propose Obligation Update storage ref (#74)
15+
- feat: add script for implementation update and solidity 0.8.30
16+
17+
### Contracts
18+
#### New (examples)
19+
- `contract ECDSAVerifier is OwnableBasedApp`
20+
21+
### Interfaces
22+
#### New
23+
- `interface IViews`
24+
25+
#### Modified
26+
- `interface IBasedApp is IERC165` -> `interface IBasedApp`
27+
28+
### Functions
29+
#### Modified
30+
- `function registerBApp(
31+
address[] calldata tokens,
32+
uint32[] calldata sharedRiskLevels,
33+
string calldata metadataURI) external`
34+
35+
->
36+
- `function registerBApp(
37+
ICore.TokenConfig[] calldata tokenConfigs,
38+
string calldata metadataURI
39+
) external
40+
`
41+
42+
343
## [v0.1.1 - fix] 2024-06-17
444
### Description
545
- Fix to update the storage references when proposing an obligation
@@ -9,13 +49,11 @@
949
## [v0.1.1] 2024-06-xx
1050

1151
### Functions
12-
1352
#### Modified
1453
- `function registerBApp(ICore.TokenConfig[] calldata tokenConfigs, string calldata metadataURI) external`
1554
- `function updateDisabledFeatures(uint32 value) external onlyOwner`
1655

1756
### Errors
18-
1957
#### New
2058
- `error InvalidDisabledFeatures();`
2159
- `error InvalidFeeExpireTime();`
@@ -28,6 +66,5 @@
2866
- `error InvalidWithdrawalTimelockPeriod();`
2967

3068
### Events
31-
3269
#### Modified
3370
- `event BAppRegistered(address indexed bApp, ICore.TokenConfig[] tokenConfigs, string metadataURI);`

artifacts/deploy-sepolia.json

Lines changed: 25 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,25 @@
1+
{
2+
"addresses": {
3+
"BAppsModule": "0x7321E62c0aC3C49b84464cD2EacE43e6995a1ca5",
4+
"ProtocolModule": "0x7a30a199ff232Ddbf2863bB5B9517D67B482484c",
5+
"SSVBasedAppsImpl": "0x9fCD30C040B40D633bae83d49b3A2B79D02899b0",
6+
"SSVBasedAppsProxy": "0x413eEE616aEC463E5605B008EBC2DDDC536a0cE8",
7+
"StrategyModule": "0x868C2789045d7ffC144635Da7D8cC0a974C58f89"
8+
},
9+
"chainInfo": {
10+
"chainId": 11155111,
11+
"deploymentBlock": 8489872
12+
},
13+
"parameters": {
14+
"disabledFeatures": 0,
15+
"feeExpireTime": 3600,
16+
"feeTimelockPeriod": 300,
17+
"maxFeeIncrement": 500,
18+
"maxShares": 100000000000000000000000000000000000000000000000000,
19+
"obligationExpireTime": 3600,
20+
"obligationTimelockPeriod": 300,
21+
"tokenUpdateTimelockPeriod": 300,
22+
"withdrawalExpireTime": 3600,
23+
"withdrawalTimelockPeriod": 300
24+
}
25+
}

docs/src/README.md

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -65,6 +65,8 @@ __`❍ forge test`__
6565

6666
[Slashing & Withdrawals](./guides/slashing-and-withdrawals.md)
6767

68+
[Generation pattern](./guides/generations.md)
69+
6870
## :gear: _Feature Activation_
6971

7072
[Feature Activation](./guides/feature-activation.md)
@@ -78,7 +80,6 @@ __`❍ forge test`__
7880

7981
[Based Apps Onboarding Guide](./guides/bApp-onboarding.md)
8082

81-
 
8283

8384
## :rocket: _Deployments_
8485

docs/src/SUMMARY.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,7 @@
88
- [IProtocolManager](src/core/interfaces/IProtocolManager.sol/interface.IProtocolManager.md)
99
- [ISSVBasedApps](src/core/interfaces/ISSVBasedApps.sol/interface.ISSVBasedApps.md)
1010
- [IStrategyManager](src/core/interfaces/IStrategyManager.sol/interface.IStrategyManager.md)
11+
- [IViews](src/core/interfaces/IViews.sol/interface.IViews.md)
1112
- [❱ libraries](src/core/libraries/README.md)
1213
- [SSVCoreModules](src/core/libraries/CoreStorageLib.sol/enum.SSVCoreModules.md)
1314
- [CoreStorageLib](src/core/libraries/CoreStorageLib.sol/library.CoreStorageLib.md)

docs/src/src/core/SSVBasedApps.sol/contract.SSVBasedApps.md

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,8 @@
11
# SSVBasedApps
2-
[Git Source](https://github.com/ssvlabs/based-applications/blob/f462573124548b82b6a002d4ef069bdfacf5c637/src/core/SSVBasedApps.sol)
2+
[Git Source](https://github.com/ssvlabs/based-applications/blob/3ee95af731e4fce61ac2b03f418aa4e9fb5f64bd/src/core/SSVBasedApps.sol)
33

44
**Inherits:**
5-
[ISSVBasedApps](/src/core/interfaces/ISSVBasedApps.sol/interface.ISSVBasedApps.md), UUPSUpgradeable, Ownable2StepUpgradeable, [IBasedAppManager](/src/core/interfaces/IBasedAppManager.sol/interface.IBasedAppManager.md), [IStrategyManager](/src/core/interfaces/IStrategyManager.sol/interface.IStrategyManager.md), [IProtocolManager](/src/core/interfaces/IProtocolManager.sol/interface.IProtocolManager.md)
5+
[ISSVBasedApps](/src/core/interfaces/ISSVBasedApps.sol/interface.ISSVBasedApps.md), UUPSUpgradeable, Ownable2StepUpgradeable
66

77
**Author:**
88

@@ -91,7 +91,7 @@ function updateBAppMetadataURI(string calldata metadataURI) external;
9191

9292

9393
```solidity
94-
function registerBApp(address[] calldata tokens, uint32[] calldata sharedRiskLevels, string calldata metadataURI) external;
94+
function registerBApp(ICore.TokenConfig[] calldata tokenConfigs, string calldata metadataURI) external;
9595
```
9696

9797
### updateBAppsTokens
@@ -329,7 +329,7 @@ function updateMaxFeeIncrement(uint32 value) external onlyOwner;
329329

330330

331331
```solidity
332-
function updateDisabledFeatures(uint32 disabledFeatures) external onlyOwner;
332+
function updateDisabledFeatures(uint32 value) external onlyOwner;
333333
```
334334

335335
### delegations

docs/src/src/core/interfaces/IBasedAppManager.sol/interface.IBasedAppManager.md

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,13 +1,13 @@
11
# IBasedAppManager
2-
[Git Source](https://github.com/ssvlabs/based-applications/blob/f462573124548b82b6a002d4ef069bdfacf5c637/src/core/interfaces/IBasedAppManager.sol)
2+
[Git Source](https://github.com/ssvlabs/based-applications/blob/3ee95af731e4fce61ac2b03f418aa4e9fb5f64bd/src/core/interfaces/IBasedAppManager.sol)
33

44

55
## Functions
66
### registerBApp
77

88

99
```solidity
10-
function registerBApp(address[] calldata tokens, uint32[] calldata sharedRiskLevels, string calldata metadataURI) external;
10+
function registerBApp(ICore.TokenConfig[] calldata tokenConfigs, string calldata metadataURI) external;
1111
```
1212

1313
### updateBAppMetadataURI
@@ -34,7 +34,7 @@ event BAppMetadataURIUpdated(address indexed bApp, string metadataURI);
3434
### BAppRegistered
3535

3636
```solidity
37-
event BAppRegistered(address indexed bApp, address[] tokens, uint32[] sharedRiskLevel, string metadataURI);
37+
event BAppRegistered(address indexed bApp, ICore.TokenConfig[] tokenConfigs, string metadataURI);
3838
```
3939

4040
### BAppTokensUpdated

docs/src/src/core/interfaces/ICore.sol/interface.ICore.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
# ICore
2-
[Git Source](https://github.com/ssvlabs/based-applications/blob/f462573124548b82b6a002d4ef069bdfacf5c637/src/core/interfaces/ICore.sol)
2+
[Git Source](https://github.com/ssvlabs/based-applications/blob/3ee95af731e4fce61ac2b03f418aa4e9fb5f64bd/src/core/interfaces/ICore.sol)
33

44

55
## Structs

0 commit comments

Comments
 (0)