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

USDs-v2 contract deployment #62

Merged
merged 75 commits into from
Jan 19, 2024
Merged

USDs-v2 contract deployment #62

merged 75 commits into from
Jan 19, 2024

Conversation

YashP16
Copy link
Contributor

@YashP16 YashP16 commented Jan 19, 2024

Overview:

  1. Standardize formatting with forge-fmt.
  2. Improve nat-spec docs.
  3. Improve test coverage and assertions.
  4. Add sequence diagrams for important transactional flows in the protocol.
  5. Improve contracts post audit.
  6. Add deployment scripts and post-deployment artifacts.

Changes

  • Strategies:
    • Update response of checkRewardEarned()
    • StargateStrategy: Add updateFarm()
    • AaveStrategy: Add depositLp()
  • SPABuyback:
    • Integrate new veSPA rewarder contract
  • Dripper:
    • call collect() internally in addUSDs()
    • update lastCollectTS even if nothing to collect.

arcantheon and others added 30 commits November 24, 2023 16:56
Co-authored-by: Parv Garg <parv3213@gmail.com>
parv3213 and others added 17 commits January 10, 2024 17:45
Changes:
* Add mintUSDs() in yieldReserve contract to directly convert collaterals to USDs.
* Don't charge any mint fee for yieldReserve contract.
* chore(test): Improved MasterPriceOracle tests

- Refactor tests into separate contracts
- Made constant variables for all manual variables
- Made event emit checks more robust

* test(buyback/SPABuyback): Fix test naming convention and generalize test

* improved naming convention and event testing in test files

* test cases improved

* improved stargate testing

* improved FeeCalculator testing

* chore(test): Improved USDs tests

- Refactor tests into separate contracts
- Made constant variables for all manual variables
- Made event emit checks more robust

* chore(test): Fix failing USDs tests

- Fix fuzz range

* improved test cases

* update

* fixed stargate testing

* chore(VaultCore.t): Add fee related tests

* chore(Dripper.t): Improve tests

* standarfized test function names

* fixed test function names

* chore(Dripper.t): Fix tests

* test(VaultCore): Fix redemption from strategy tests

* improved variable names in VaultCore.t.sol

* chore(USDs.t): Fix failing USDs tests

- Fix fuzz range

* chore(Dripper.t): Add additional test for modifier code

* chore(RebaseManager.t): Fix/add tests

* chore(Dripper.t): Fix test for modified code

* fixed test_burn_rebasing test case in USDs.t.sol

* refactor(tests): Update old addresses and other fixes

* added depositLp test cases for aave

* improved compound strategy coverage and test cases

* update

* refactor(tests): Improve tests and coverage

* refactor(tests): Consistent use of `RevertWhen`

* refactor(USDs.t): Remove TODOs

* refactor(AaveStrategy.t): reduce redundancy and improve tests

---------

Co-authored-by: YashP16 <yash.pitroda786@gmail.com>
Co-authored-by: TechnoGeek01 <rsudharsangames@gmail.com>
Co-authored-by: mehultuteja <arcantheon@gmail.com>
@YashP16 YashP16 self-assigned this Jan 19, 2024
@parv3213
Copy link
Member

Forge coverage has significantly improved. The only cases not covered are either due to bugs in the Forge coverage or are attributed to dead code.

@YashP16 YashP16 merged commit ff71faf into main Jan 19, 2024
2 checks passed
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.

5 participants