Skip to content

Conversation

@tsudmi
Copy link
Member

@tsudmi tsudmi commented Jan 19, 2026

No description provided.

Copilot AI review requested due to automatic review settings January 19, 2026 21:00
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 pull request addresses code review feedback for the redemptions feature by reorganizing import statements to follow a consistent ordering pattern and correcting event emissions in factory contracts.

Changes:

  • Reorganized import statements across multiple files to place external library imports before internal imports
  • Updated event emissions in factory contracts to include the caller address parameter
  • Relocated function definitions within library files for better organization

Reviewed changes

Copilot reviewed 16 out of 16 changed files in this pull request and generated 1 comment.

Show a summary per file
File Description
script/UpgradeGnoNetwork.s.sol Moved console import to follow standard import ordering
script/UpgradeEthNetwork.s.sol Moved console import to follow standard import ordering
script/Network.sol Reorganized imports to place external libraries before internal imports
contracts/vaults/gnosis/GnoPrivMetaVault.sol Moved Initializable import to precede internal imports
contracts/vaults/gnosis/GnoPrivErc20Vault.sol Fixed comment referencing wrong contract name (EthPrivMetaVault → GnoPrivErc20Vault)
contracts/vaults/gnosis/GnoMetaVaultFactory.sol Added caller parameter to MetaVaultCreated event emission
contracts/vaults/gnosis/GnoMetaVault.sol Reorganized imports with external libraries first
contracts/vaults/ethereum/EthPrivMetaVault.sol Moved external library imports before internal imports
contracts/vaults/ethereum/EthMetaVaultFactory.sol Added caller parameter to MetaVaultCreated event emission
contracts/vaults/ethereum/EthMetaVault.sol Reorganized imports with external libraries first
contracts/tokens/OsTokenRedeemer.sol Reorganized imports following standard ordering
contracts/tokens/GnoOsTokenRedeemer.sol Moved external library imports before internal imports
contracts/tokens/EthOsTokenRedeemer.sol Moved external library imports before internal imports
contracts/libraries/SubVaultUtils.sol Relocated calculateSubVaultsRedemptions and _isSubVaultCollateralized functions
contracts/interfaces/IGnoMetaVaultFactory.sol Updated event signature to include caller parameter
contracts/interfaces/IEthMetaVaultFactory.sol Updated event signature to include caller parameter

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

@github-actions
Copy link

Forge code coverage:

File % Lines % Statements % Branches % Funcs
contracts/base/ERC20Upgradeable.sol 100.00% (32/32) 100.00% (33/33) 100.00% (5/5) 100.00% (8/8)
contracts/base/Multicall.sol 100.00% (6/6) 100.00% (8/8) 100.00% (0/0) 100.00% (1/1)
contracts/curators/BalancedCurator.sol 100.00% (57/57) 100.00% (63/63) 100.00% (15/15) 100.00% (2/2)
contracts/curators/CuratorsRegistry.sol 100.00% (15/15) 100.00% (12/12) 100.00% (4/4) 100.00% (3/3)
contracts/libraries/EIP712Utils.sol 100.00% (3/3) 100.00% (2/2) 100.00% (0/0) 100.00% (1/1)
contracts/libraries/ExitQueue.sol 95.92% (47/49) 95.24% (60/63) 62.50% (5/8) 100.00% (5/5)
contracts/libraries/OsTokenUtils.sol 100.00% (13/13) 100.00% (14/14) 100.00% (5/5) 100.00% (1/1)
contracts/libraries/SubVaultExits.sol 100.00% (16/16) 93.75% (15/16) 75.00% (3/4) 100.00% (3/3)
contracts/libraries/SubVaultUtils.sol 99.02% (101/102) 98.35% (119/121) 91.67% (22/24) 100.00% (7/7)
contracts/libraries/ValidatorUtils.sol 100.00% (93/93) 100.00% (105/105) 100.00% (16/16) 100.00% (7/7)
contracts/misc/EthRewardSplitter.sol 100.00% (5/5) 100.00% (3/3) 100.00% (0/0) 100.00% (2/2)
contracts/misc/GnoRewardSplitter.sol 100.00% (6/6) 100.00% (3/3) 100.00% (0/0) 100.00% (3/3)
contracts/misc/RewardSplitter.sol 100.00% (86/86) 98.89% (89/90) 92.86% (13/14) 100.00% (17/17)
contracts/misc/RewardSplitterFactory.sol 100.00% (6/6) 100.00% (4/4) 100.00% (0/0) 100.00% (2/2)
contracts/tokens/EthOsTokenRedeemer.sol 100.00% (6/6) 100.00% (5/5) 100.00% (0/0) 100.00% (3/3)
contracts/tokens/EthOsTokenVaultEscrow.sol 0.00% (0/4) 0.00% (0/3) 100.00% (0/0) 0.00% (0/2)
contracts/tokens/GnoOsTokenRedeemer.sol 100.00% (11/11) 100.00% (8/8) 100.00% (1/1) 100.00% (5/5)
contracts/tokens/GnoOsTokenVaultEscrow.sol 0.00% (0/4) 0.00% (0/2) 100.00% (0/0) 0.00% (0/2)
contracts/tokens/OsToken.sol 0.00% (0/15) 0.00% (0/15) 0.00% (0/3) 0.00% (0/6)
contracts/tokens/OsTokenConfig.sol 0.00% (0/30) 0.00% (0/34) 0.00% (0/11) 0.00% (0/4)
contracts/tokens/OsTokenFlashLoans.sol 0.00% (0/13) 0.00% (0/16) 0.00% (0/2) 0.00% (0/2)
contracts/tokens/OsTokenRedeemer.sol 98.77% (160/162) 98.39% (183/186) 93.75% (30/32) 100.00% (19/19)
contracts/tokens/OsTokenVaultController.sol 0.00% (0/107) 0.00% (0/121) 0.00% (0/18) 0.00% (0/17)
contracts/tokens/OsTokenVaultEscrow.sol 0.00% (0/89) 0.00% (0/98) 0.00% (0/23) 0.00% (0/11)
contracts/tokens/PriceFeed.sol 100.00% (14/14) 100.00% (11/11) 100.00% (0/0) 100.00% (6/6)
contracts/validators/ConsolidationsChecker.sol 8.33% (2/24) 3.12% (1/32) 0.00% (0/3) 25.00% (1/4)
contracts/validators/EthValidatorsChecker.sol 83.33% (5/6) 66.67% (4/6) 0.00% (0/1) 100.00% (2/2)
contracts/validators/GnoValidatorsChecker.sol 55.56% (5/9) 57.14% (4/7) 0.00% (0/1) 66.67% (2/3)
contracts/validators/ValidatorsChecker.sol 100.00% (77/77) 100.00% (101/101) 100.00% (17/17) 100.00% (7/7)
contracts/vaults/base/MetaVault.sol 97.06% (33/34) 97.22% (35/36) 75.00% (3/4) 100.00% (9/9)
contracts/vaults/ethereum/EthBlocklistErc20Vault.sol 100.00% (27/27) 100.00% (23/23) 100.00% (1/1) 100.00% (8/8)
contracts/vaults/ethereum/EthBlocklistVault.sol 100.00% (23/23) 100.00% (20/20) 100.00% (1/1) 100.00% (7/7)
contracts/vaults/ethereum/EthErc20Vault.sol 100.00% (44/44) 100.00% (36/36) 100.00% (1/1) 100.00% (14/14)
contracts/vaults/ethereum/EthGenesisVault.sol 13.33% (6/45) 7.55% (4/53) 11.11% (1/9) 18.18% (2/11)
contracts/vaults/ethereum/EthMetaVault.sol 100.00% (40/40) 97.06% (33/34) 75.00% (3/4) 100.00% (14/14)
contracts/vaults/ethereum/EthMetaVaultFactory.sol 100.00% (9/9) 100.00% (7/7) 100.00% (0/0) 100.00% (2/2)
contracts/vaults/ethereum/EthPrivErc20Vault.sol 100.00% (27/27) 100.00% (23/23) 100.00% (1/1) 100.00% (8/8)
contracts/vaults/ethereum/EthPrivMetaVault.sol 100.00% (22/22) 100.00% (19/19) 100.00% (1/1) 100.00% (7/7)
contracts/vaults/ethereum/EthPrivVault.sol 100.00% (23/23) 100.00% (20/20) 100.00% (1/1) 100.00% (7/7)
contracts/vaults/ethereum/EthVault.sol 100.00% (28/28) 100.00% (23/23) 100.00% (1/1) 100.00% (9/9)
contracts/vaults/ethereum/EthVaultFactory.sol 100.00% (14/14) 100.00% (10/10) 100.00% (2/2) 100.00% (2/2)
contracts/vaults/ethereum/custom/EthFoxVault.sol 100.00% (23/23) 100.00% (22/22) 100.00% (2/2) 100.00% (7/7)
contracts/vaults/ethereum/mev/OwnMevEscrow.sol 100.00% (10/10) 100.00% (9/9) 100.00% (2/2) 100.00% (3/3)
contracts/vaults/ethereum/mev/SharedMevEscrow.sol 100.00% (8/8) 100.00% (6/6) 100.00% (1/1) 100.00% (3/3)
contracts/vaults/gnosis/GnoBlocklistErc20Vault.sol 100.00% (22/22) 100.00% (20/20) 100.00% (1/1) 100.00% (6/6)
contracts/vaults/gnosis/GnoBlocklistVault.sol 100.00% (18/18) 100.00% (17/17) 100.00% (1/1) 100.00% (5/5)
contracts/vaults/gnosis/GnoErc20Vault.sol 100.00% (43/43) 100.00% (34/34) 100.00% (1/1) 100.00% (13/13)
contracts/vaults/gnosis/GnoGenesisVault.sol 100.00% (40/40) 97.96% (48/49) 85.71% (6/7) 100.00% (8/8)
contracts/vaults/gnosis/GnoMetaVault.sol 100.00% (36/36) 100.00% (27/27) 100.00% (2/2) 100.00% (12/12)
contracts/vaults/gnosis/GnoMetaVaultFactory.sol 100.00% (12/12) 100.00% (10/10) 100.00% (0/0) 100.00% (2/2)
contracts/vaults/gnosis/GnoPrivErc20Vault.sol 100.00% (22/22) 100.00% (20/20) 100.00% (1/1) 100.00% (6/6)
contracts/vaults/gnosis/GnoPrivMetaVault.sol 100.00% (17/17) 100.00% (15/15) 100.00% (0/0) 100.00% (6/6)
contracts/vaults/gnosis/GnoPrivVault.sol 100.00% (18/18) 100.00% (17/17) 100.00% (1/1) 100.00% (5/5)
contracts/vaults/gnosis/GnoVault.sol 100.00% (27/27) 100.00% (21/21) 100.00% (1/1) 100.00% (8/8)
contracts/vaults/gnosis/GnoVaultFactory.sol 100.00% (17/17) 100.00% (13/13) 100.00% (2/2) 100.00% (2/2)
contracts/vaults/gnosis/mev/GnoOwnMevEscrow.sol 100.00% (11/11) 100.00% (9/9) 100.00% (2/2) 100.00% (3/3)
contracts/vaults/gnosis/mev/GnoSharedMevEscrow.sol 100.00% (8/8) 100.00% (6/6) 100.00% (1/1) 100.00% (3/3)
contracts/vaults/modules/VaultAdmin.sol 100.00% (16/16) 100.00% (14/14) 100.00% (3/3) 100.00% (5/5)
contracts/vaults/modules/VaultBlocklist.sol 100.00% (17/17) 100.00% (14/14) 100.00% (4/4) 100.00% (5/5)
contracts/vaults/modules/VaultEnterExit.sol 100.00% (61/61) 98.61% (71/72) 91.67% (11/12) 100.00% (8/8)
contracts/vaults/modules/VaultEthStaking.sol 100.00% (30/30) 100.00% (29/29) 100.00% (3/3) 100.00% (9/9)
contracts/vaults/modules/VaultFee.sol 100.00% (29/29) 100.00% (28/28) 100.00% (6/6) 100.00% (5/5)
contracts/vaults/modules/VaultGnoStaking.sol 100.00% (43/43) 100.00% (37/37) 100.00% (2/2) 100.00% (11/11)
contracts/vaults/modules/VaultImmutables.sol 100.00% (9/9) 100.00% (8/8) 100.00% (2/2) 100.00% (4/4)
contracts/vaults/modules/VaultMev.sol 100.00% (16/16) 100.00% (16/16) 100.00% (5/5) 100.00% (4/4)
contracts/vaults/modules/VaultOsToken.sol 100.00% (89/89) 100.00% (94/94) 100.00% (17/17) 100.00% (13/13)
contracts/vaults/modules/VaultState.sol 98.28% (114/116) 95.35% (123/129) 71.43% (15/21) 100.00% (17/17)
contracts/vaults/modules/VaultSubVaults.sol 96.00% (216/225) 96.81% (243/251) 88.37% (38/43) 96.30% (26/27)
contracts/vaults/modules/VaultToken.sol 100.00% (21/21) 100.00% (21/21) 100.00% (3/3) 100.00% (7/7)
contracts/vaults/modules/VaultValidators.sol 100.00% (70/70) 100.00% (63/63) 100.00% (12/12) 100.00% (11/11)
contracts/vaults/modules/VaultVersion.sol 100.00% (12/12) 100.00% (20/20) 100.00% (1/1) 100.00% (3/3)
contracts/vaults/modules/VaultWhitelist.sol 100.00% (17/17) 100.00% (15/15) 100.00% (4/4) 100.00% (5/5)
Total 86.19% (2154/2499) 84.49% (2190/2592) 76.26% (302/396) 87.89% (421/479)

@tsudmi tsudmi merged commit 748bb38 into main Jan 20, 2026
7 checks passed
@tsudmi tsudmi deleted the redemptions-review-fixes branch January 20, 2026 05:38
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.

2 participants