Saltar al contenido principal

Documentación técnica y código

Documentación técnica e información sobre repositorios de código para desarrolladores.

Repositorio principal

https://github.com/NeriteOrg/nerite

Contiene el núcleo de contratos y librerías para el Protocolo Nerite. También incluye el front-end y todo lo necesario para ejecutar su propia instancia de la aplicación.

El ReadMe también tiene más información sobre diseño y arquitectura.

Cambios en las especificaciones técnicas de Nerite desde Liquity V2

Delegación

ActivePool.sol ahora tiene la función delegateTokens. Cualquier token puede ser delegado al rol delegate. El papel puede ser actualizado por governance, que es el DAO de los titulares de NERI. Cualquiera puede llamar a la función de delegación de forma segura, ya que siempre delega en el papel delegado.

Superfluid

Bold token (que es renombrado ), es ahora streamable via custom streaming token usando esta librería: (https://www.npmjs.com/package/@superfluid-finance/ethereum-contracts)

Las funciones _mint, _burn, _transfer han sido sustituidas por selfMint, selfBurn, y selfTransfer del superfluid supertoken.

BoldToken ya no es un ERC-20 por sí mismo, sino un proxy que se initaliza en un ERC-20. Muchos cambios de despliegue como resultado. Nota del desarrollador: no utilice deal() cheatcode con boldToken en las pruebas, ya que la memoria no se almacena como foundry espera.

Las importaciones de ERC-20 en BoldToken se eliminan en favor del uso de UUPS proxy ERC-20 importado por superfluid. Utiliza la misma implementación ERC-20 de openzeppelin.

También remaps OZ en muchos lugares debido a las dependencias circulares.

Más colaterales y límites de deuda

BorrowOperations maneja la acuñación de nuevas stablecoins. La deuda puede ser acuñada en withdrawBold, _openTrove (que se utiliza en el gestor de lotes y en otros lugares también, así que ten cuidado), y _moveTokensFromAdjustment. El límite de deuda simple es sólo un uint256 almacenado en el TroveManager de cada sucursal, y accesible al CollateralRegistry a través del índice de la garantía. Se añaden getters y setters.

No gestiona la situación en la que los intereses devengados superan el límite de deuda.

El límite de deuda puede ser incrementado por el governance en un factor máximo de 2 a la vez, llamando al CollateralRegistry que entonces llama al TroveManager para esa rama colateral.

El límite de deuda puede reducirse a cualquier cantidad en cualquier momento. (Todavía debe utilizar el timelock)