Uses component: CP3.1
Author(s): k/f
Contributor(s):@WilliamFreude, @mustermeiszer , @cdamian , @luis, @goperez
Proposal on Proposal Repository (Github): cps/cps/CP92.md at main · centrifuge/cps · GitHub
Date proposed: 2024-03-13
About this proposal
Upgrade Centrifuge Chain to Runtime Version 1026.
Centrifuge 1026 - Release Notes Highlights
This release is packed with new features and a few breaking changes. Most notably, the definition of the NAV has changed. So far, the NAV represented the so called assets under management (abbreviated by AUM) which are represented by the evaluation of existing loans:
- NAV := NAV(Loans)
With the introduction of Pool Fees, the definition of the NAV needs to be extended due to the reducing effect which the sum of pending pool fees have on the pool valuation, i.e. they represent the negative part. Please note that the Pool Fees NAV does not include disbursement amounts which can be paid during epoch execution because these already reduce the reserve.
+ NAV := min(PoolReserve + NAV(Loans) - NAV(PoolFees), 0)
Please replace any existing reserve and NAV query with the new runtime API added in #1703:
let { navAum, navFees, reserve, total: navTotal } =
await api.call.poolsApi.nav(poolId)
Please note that runtime API metadata is not included in the v14 metadata such that you need to add type and runtime API call decorations manually.
Features and breaking changes
- Add Pool Fees (#1633, #1706, #1718)
- Replace external oracle implementation with internal one called Oracles V2 (#1629, #1661, #1670, #1671, #1672)
- Loans
- Orderbook
- Liquidity Pools:
- Add remarks pallet: Enables attaching remarks to transactions (#1659)
- [BREAKING] Block Rewards: Replace absolute treasury inflation with relative one (#1740)
- Transfer Allowlist:
- Add ERC-20 precompile for CFG balance to enable CFG bridging with Axelar ITS (#1731)
- Add
SwapCreated
,SwapFulfilled
andSwapCancelled
to ForeignInvestments (#1764)
Runtime API
We have both extended existing as well as added new runtime API:
- Pool Fees: Emulate epoch closing and pool fees update (#1728)
- Pool Nav: Emulate epoch closing and return Loans NAV (assets under management), Pool Fees NAV, altered reserve as well as total NAV (#1703)
- Loans API: Emulate portfolio update with custom prices (#1748)
WASM
✨ Your Substrate WASM Runtime is ready! ✨
Summary generated with srtool:1.75.0-0.14.0:
Package : centrifuge-runtime v0.10.26
GIT commit : 6fb8496
GIT tag : v0.10.37
GIT branch : main
Rustc : 1.75.0 (82e1608df 2023-12-21)
Time : 2024-03-12T15:36:55Z
== Compressed
🏋️ Runtime size: 1.825 MB (1,913,986 bytes)
🗜 Compressed: Yes, 78.41%
✨ Reserved meta: OK - [6D, 65, 74, 61]
🎁 Metadata version: V14
🔥 Core version: centrifuge-1026 (centrifuge-1.tx2.au1)
🗳️ system.setCode hash: 0x1afffb10cbdbe7e132b81d51c21e8dc803cf606f8a48e0974a2fbd13948ce01d
🗳️ Blake2-256 hash: 0x662ab43f34e78f0f722ce0391f5fb3246e76db88ee99c36d89bb89333e004e9e
📦 IPFS: https://www.ipfs.io/ipfs/Qmd16Zi95bTw3UMQif7mWs9Cobs4MraRwDgD2A64L39w5A
Release Notes: v0.10.37
Docker Image: docker pull centrifugeio/centrifuge-chain:main-6fb8496-2024-03-12
Full Changelog: v0.10.36…v0.10.37
Governance process for this proposal
- Council Motion + fast-track
- Referendum vote open for 21,600 blocks (~3 days)
- If the referendum passes, enactment will be immediately after