diff --git a/erc4626/SavingsUSGErc4626VaultReview9758.md b/erc4626/SavingsUSGErc4626VaultReview9758.md new file mode 100644 index 0000000..ec498be --- /dev/null +++ b/erc4626/SavingsUSGErc4626VaultReview9758.md @@ -0,0 +1,32 @@ + +# Rate Provider: SavingsUSG rate provider + +## Details +This report was autogenerated on 26/05/2026. + +- Deployed at: + - [Ethereum:0xF17D6f98A5C6EAA99d149079984119e0A4EF6900](https://etherscan.io/address/0xF17D6f98A5C6EAA99d149079984119e0A4EF6900) +- Audit report(s): + - [Audits](https://docs.tangent.finance/docs/faq/audits) + +## Context +The sUSG ERC4626 vault is the yield-bearing savings version of Tangent's USG stablecoin,developed by Tangent Finance and available at https://app.tangent.finance/,which accrues a share of Tangent protocol revenues so the USG-per-sUSG ratio appreciates over time. Docs: https://docs.tangent.finance/docs/usg/susg + +## Review Checklist: Bare Minimum Compatibility +Each of the items below represents an absolute requirement for the Rate Provider. If any of these is unchecked, the Rate Provider is unfit to use. + +- [x] Tests based on the [balancer-v3-monorepo](https://github.com/balancer/balancer-v3-monorepo/tree/main/pkg/vault/test/foundry/fork) pass for the given ERC4626 vaults, which can be found [here](https://github.com/balancer/balancer-v3-erc4626-tests/tree/main/test). +- [x] The required Vault implements the required operational ERC4626 Interface + +### Administrative Privileges +- [ ] The ERC4626 Vault is upgradeable** (e.g., via a proxy architecture). +- [ ] Other contracts which are part of the `mint` callchain are upgradeable**. You can find more information + about the involved contracts in this [tenderly simulation](https://www.tdly.co/shared/simulation/ffaede0f-58e7-4cc8-ada3-ad566438b496) + +## Conclusion +**Summary judgment: USABLE** +Passing fork tests can be found at https://github.com/balancer/balancer-v3-erc4626-tests/pull/138. + +** upgradeable in this context means that: +- The contract is a proxy contract with an implementation sourced from Etherscan. + diff --git a/erc4626/registry.json b/erc4626/registry.json index 7a95459..93d76ce 100644 --- a/erc4626/registry.json +++ b/erc4626/registry.json @@ -925,6 +925,17 @@ "canUseBufferForSwaps": true, "useUnderlyingForAddRemove": true, "useWrappedForAddRemove": true + }, + "0xF17D6f98A5C6EAA99d149079984119e0A4EF6900": { + "asset": "0xB1c2Db5d6cA03FCe73dBd304d320bF76C55Ae1B1", + "name": "SavingsUSGErc4626Vault.md", + "summary": "safe", + "review": "./SavingsUSGErc4626VaultReview9758.md", + "warnings": [], + "upgradeableComponents": [], + "canUseBufferForSwaps": true, + "useUnderlyingForAddRemove": true, + "useWrappedForAddRemove": true } }, "gnosis": { diff --git a/rate-providers/SavingsUSGRateProviderReview565c.md b/rate-providers/SavingsUSGRateProviderReview565c.md new file mode 100644 index 0000000..6713395 --- /dev/null +++ b/rate-providers/SavingsUSGRateProviderReview565c.md @@ -0,0 +1,31 @@ + +# Rate Provider: SavingsUSG rate provider + +## Details +This report was autogenerated on 26/05/2026. + +- Deployed at: + - [Ethereum:0x72F332dA42E21721Ba047B95f8f6fB1fd34340Be](https://etherscan.io/address/0x72F332dA42E21721Ba047B95f8f6fB1fd34340Be) +- Audit report(s): + - [Audits](https://docs.tangent.finance/docs/faq/audits) + +## Context +The rate provider is used to provide the rate of sUSG in terms of underlying USG using its ERC4626 contract. + +## Review Checklist: Bare Minimum Compatibility +Each of the items below represents an absolute requirement for the Rate Provider. If any of these is unchecked, the Rate Provider is unfit to use. + +- [x] Implements the [`IRateProvider`](https://github.com/balancer/balancer-v2-monorepo/blob/bc3b3fee6e13e01d2efe610ed8118fdb74dfc1f2/pkg/interfaces/contracts/pool-utils/IRateProvider.sol) interface. +- [x] `getRate` returns an 18-decimal fixed point number (i.e., 1 == 1e18) regardless of underlying token decimals. + +### Administrative Privileges +- [ ] The Rate Provider is upgradeable** (e.g., via a proxy architecture). +- [ ] Other contracts which are part of the `getRate` callchain are upgradeable**. You can find more information + about the involved contracts in this [tenderly simulation](https://www.tdly.co/shared/simulation/14714f7a-2dc3-4618-9489-f2abdf72574a) + +## Conclusion +**Summary judgment: USABLE** + +** upgradeable in this context means that: +- The contract is a proxy contract with an implementation sourced from Etherscan and the proxy emitted an "Upgraded" event. + diff --git a/rate-providers/registry.json b/rate-providers/registry.json index 5b19dd6..4f2c72c 100644 --- a/rate-providers/registry.json +++ b/rate-providers/registry.json @@ -2793,6 +2793,15 @@ "implementationReviewed": "0x8147b99df7672a21809c9093e6f6ce1a60f119bd" } ] + }, + "0x72F332dA42E21721Ba047B95f8f6fB1fd34340Be": { + "asset": "0xF17D6f98A5C6EAA99d149079984119e0A4EF6900", + "name": "SavingsUSGRateProvider.md", + "summary": "safe", + "review": "./SavingsUSGRateProviderReview565c.md", + "warnings": [], + "factory": "", + "upgradeableComponents": [] } }, "fantom": {},