Skip to content

Conversation

@clement-ux
Copy link
Collaborator

@clement-ux clement-ux commented Dec 9, 2025

Description

This pull request makes significant changes to the IVault interface and related contracts, primarily removing price provider and swapper logic, simplifying asset management, and updating mocks and strategies to align with these changes. The main goal is to streamline the vault contract interfaces and deprecate unused or redundant features.

Key changes include:

1. Removal of Price Provider and Swapper Logic

  • Removed all functions, events, and state related to price providers and swappers from the IVault interface, including priceProvider, setPriceProvider, swap functions, and related events. [1] [2] [3] [4] [5]
  • Updated AbstractHarvester to no longer require a price provider; now uses a dummy address for oracle in swap operations, as the contract is deprecated. [1] [2]
  • Updated the BridgedWOETHStrategy to accept an immutable oracle address in the constructor instead of fetching from the vault. [1] [2] [3]

2. Simplification and Refactoring of Asset and Strategy Management

  • Simplified asset and strategy management in IVault by removing per-asset strategy support and related events, replacing them with a single defaultStrategy and associated functions/events. [1] [2]
  • Refactored asset support in mocks and core contracts to only allow the backingAsset as supported. [1] [2]

3. Updates to Mocks and Test Contracts

  • Updated mock contracts (MockVault, MockVaultCoreInstantRebase, MockOETHVault, MockOETHVaultAdmin, MockEvilReentrantContract, MockRebornMinter) to align with the new interface, constructor signatures, and removed price provider logic. [1] [2] [3] [4] [5] [6] [7] [8]

4. Event and Function Cleanup

  • Removed or renamed several events in IVault to reflect the simplified design, including asset, swap, and strategy-related events. Added or renamed events for default strategy and withdrawal claim delay. [1] [2]

5. Miscellaneous Cleanups

  • Removed the OETHVault contract, which was simply extending Vault without additional logic.

These changes help reduce contract complexity, remove unused features, and prepare the codebase for future upgrades.

Code Change Checklist

To be completed before internal review begins:

  • The contract code is complete
  • Executable deployment file
  • Fork tests that test after the deployment file runs
  • Unit tests *if needed
  • The owner has done a full checklist review of the code + tests

Internal review:

  • Two approvals by internal reviewers

Deploy checklist

Two reviewers complete the following checklist:

- [ ] All deployed contracts are listed in the deploy PR's description
- [ ] Deployed contract's verified code (and all dependencies) match the code in master
- [ ] Contract constructors have correct arguments
- [ ] The transactions that interacted with the newly deployed contract match the deploy script.
- [ ] Governance proposal matches the deploy script
- [ ] Smoke tests pass after fork test execution of the governance proposal

… improve clarity by removing deprecated functions and updating asset handling methods.
…itialization by using address(0) for backing asset.
…address, simplifying price retrieval and enhancing clarity
…nstructors for improved clarity and functionality
…y by removing unused variables and consolidating test cases
…et address, update test fixtures to use USDC instead of USDS, and simplify Dripper and VaultValueChecker tests by removing unused variables and consolidating logic.
@codecov
Copy link

codecov bot commented Dec 17, 2025

Codecov Report

❌ Patch coverage is 97.53086% with 4 lines in your changes missing coverage. Please review.
✅ Project coverage is 36.15%. Comparing base (7fdf6e1) to head (e4d7c73).
⚠️ Report is 2 commits behind head on master.

Files with missing lines Patch % Lines
contracts/contracts/vault/VaultCore.sol 97.41% 3 Missing ⚠️
contracts/contracts/harvest/AbstractHarvester.sol 0.00% 1 Missing ⚠️
Additional details and impacted files
@@            Coverage Diff             @@
##           master    #2714      +/-   ##
==========================================
- Coverage   41.10%   36.15%   -4.95%     
==========================================
  Files         126      128       +2     
  Lines        5778     5504     -274     
  Branches     1537     1463      -74     
==========================================
- Hits         2375     1990     -385     
- Misses       3401     3513     +112     
+ Partials        2        1       -1     

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.
  • 📦 JS Bundle Analysis: Save yourself from yourself by tracking and limiting bundle sizes in JS merges.

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