From 0f1e9c4c0662952e99da6ef066ffb08300558801 Mon Sep 17 00:00:00 2001 From: mkflow27 Date: Wed, 26 Mar 2025 11:04:47 +0100 Subject: [PATCH] review: susdx --- rate-providers/registry.json | 9 ++++++++ rate-providers/sUSDXRateProvider.md | 34 +++++++++++++++++++++++++++++ 2 files changed, 43 insertions(+) create mode 100644 rate-providers/sUSDXRateProvider.md diff --git a/rate-providers/registry.json b/rate-providers/registry.json index fd8de47c..e6fd5a68 100644 --- a/rate-providers/registry.json +++ b/rate-providers/registry.json @@ -2626,6 +2626,15 @@ "implementationReviewed": "0x7a3e55e2c23ab6adc12accf1075b91c174ee0102" } ] + }, + "0xA4c27E4Aa764312fD958345Ed683c6eeC4581A10": { + "asset": "0x7788A3538C5fc7F9c7C8A74EAC4c898fC8d87d92", + "name": "sUSDXRateProvider", + "summary": "safe", + "review": "./sUSDXRateProvider.md", + "warnings": [], + "factory": "", + "upgradeableComponents": [] } }, "fantom": { diff --git a/rate-providers/sUSDXRateProvider.md b/rate-providers/sUSDXRateProvider.md new file mode 100644 index 00000000..832fbace --- /dev/null +++ b/rate-providers/sUSDXRateProvider.md @@ -0,0 +1,34 @@ + +# Rate Provider: sUSDXRateProvider.md + +## Details +This report was autogenerated on 26/03/2025. + +- Deployed at: + - [Ethereum:0xA4c27E4Aa764312fD958345Ed683c6eeC4581A10](https://etherscan.io/address/0xA4c27E4Aa764312fD958345Ed683c6eeC4581A10) +- Audit report(s): + - [susdx audits](https://docs.usdx.money/informaiton/audit) + +## Context +Staking is controlled by the StakedUSDX smart contract. Stakers can interact with it directly or through https://usdx.money/stake. +When staking, a user transfers USDX into the contract and receives sUSDX (staked USDX), another ERC20 token that represents a fractional interest in the USDX in the contract. +Over time, a portion of protocol revenue accumulates in the staking contract as additional USDX is transferred in. +When unstaking, sUSDX is burned in exchange for a proportionate USDX amount. For faster conversion into aforementioned stablecoins, users can swap sUSDX into USDX through liquidity pools (LPs). + +## 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/cf68cdb6-3b1a-4872-b4e0-079baf98781a) + +## 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. +