IUsdnProtocolErrors

Git Source

All errors used in the USDN Protocol.

Errors

UsdnProtocolInsufficientOracleFee

Insufficient Ether provided to cover the cost of price validation.

error UsdnProtocolInsufficientOracleFee();

UsdnProtocolEtherRefundFailed

Ether refund to the sender failed.

error UsdnProtocolEtherRefundFailed();

UsdnProtocolNotEligibleForRefund

Validator is not eligible for a security deposit refund.

error UsdnProtocolNotEligibleForRefund(address validator);

Parameters

NameTypeDescription
validatoraddressThe address of the validator.

UsdnProtocolZeroAmount

The provided amount is zero.

error UsdnProtocolZeroAmount();

UsdnProtocolInvalidAddressTo

The provided to address is invalid.

error UsdnProtocolInvalidAddressTo();

UsdnProtocolInvalidAddressValidator

The provided validator address is invalid.

error UsdnProtocolInvalidAddressValidator();

UsdnProtocolMinInitAmount

The initial amount provided during initialization is too small to support opening a long position.

error UsdnProtocolMinInitAmount();

UsdnProtocolInvalidUsdn

The provided USDN token has a non-zero total supply at deployment.

error UsdnProtocolInvalidUsdn(address usdnAddress);

Parameters

NameTypeDescription
usdnAddressaddressThe address of the USDN contract.

UsdnProtocolInvalidAssetDecimals

The asset's decimal precision is invalid.

error UsdnProtocolInvalidAssetDecimals(uint8 assetDecimals);

Parameters

NameTypeDescription
assetDecimalsuint8The specified asset decimals.

UsdnProtocolInvalidTokenDecimals

The token's decimals do not match TOKENS_DECIMALS.

error UsdnProtocolInvalidTokenDecimals();

UsdnProtocolUnauthorized

The caller is not authorized to perform the action.

error UsdnProtocolUnauthorized();

UsdnProtocolPendingAction

A pending action already exists for the user.

error UsdnProtocolPendingAction();

UsdnProtocolNoPendingAction

The user does not have any pending action.

error UsdnProtocolNoPendingAction();

UsdnProtocolInvalidPendingAction

A pending action exists, but its type is not the expected one.

error UsdnProtocolInvalidPendingAction();

UsdnProtocolTimestampTooOld

The provided timestamp predates the last balance update.

error UsdnProtocolTimestampTooOld();

UsdnProtocolLeverageTooLow

The calculated leverage is below the minimum allowed.

error UsdnProtocolLeverageTooLow();

UsdnProtocolLeverageTooHigh

The calculated leverage exceeds the maximum allowed.

error UsdnProtocolLeverageTooHigh();

UsdnProtocolLongPositionTooSmall

The amount of collateral in the long position is too small.

error UsdnProtocolLongPositionTooSmall();

UsdnProtocolInvalidLiquidationPrice

The liquidation price exceeds or equals the starting price.

error UsdnProtocolInvalidLiquidationPrice(uint128 liquidationPrice, uint128 startPrice);

Parameters

NameTypeDescription
liquidationPriceuint128The specified liquidation price.
startPriceuint128The starting price.

UsdnProtocolLiquidationPriceSafetyMargin

The liquidation price exceeds the safety margin.

error UsdnProtocolLiquidationPriceSafetyMargin(uint128 liquidationPrice, uint128 maxLiquidationPrice);

Parameters

NameTypeDescription
liquidationPriceuint128The specified liquidation price.
maxLiquidationPriceuint128The maximum liquidation price.

UsdnProtocolOutdatedTick

The provided tick version is outdated due to liquidation.

error UsdnProtocolOutdatedTick(uint256 currentVersion, uint256 providedVersion);

Parameters

NameTypeDescription
currentVersionuint256The current tick version.
providedVersionuint256The provided tick version.

UsdnProtocolPositionNotValidated

The position cannot be closed because it has not been validated yet.

error UsdnProtocolPositionNotValidated();

UsdnProtocolInvalidPositionFee

The specified position fee exceeds the allowed maximum.

error UsdnProtocolInvalidPositionFee();

UsdnProtocolInvalidVaultFee

The specified vault fee exceeds the allowed maximum.

error UsdnProtocolInvalidVaultFee();

UsdnProtocolInvalidSdexRewardsRatio

The specified SDEX rewards ratio exceeds the allowed maximum.

error UsdnProtocolInvalidSdexRewardsRatio();

UsdnProtocolInvalidRebalancerBonus

The specified rebalancer bonus exceeds the allowed maximum.

error UsdnProtocolInvalidRebalancerBonus();

UsdnProtocolInvalidBurnSdexOnDepositRatio

The specified ratio exceeds the allowed maximum.

error UsdnProtocolInvalidBurnSdexOnDepositRatio();

UsdnProtocolInvalidMiddlewareAddress

The specified middleware address is invalid.

error UsdnProtocolInvalidMiddlewareAddress();

UsdnProtocolInvalidRebalancerMinLeverage

The specified minimum leverage is invalid.

error UsdnProtocolInvalidRebalancerMinLeverage();

UsdnProtocolInvalidMinLeverage

The specified minLeverage value is invalid.

error UsdnProtocolInvalidMinLeverage();

UsdnProtocolInvalidMaxLeverage

The specified maxLeverage value is invalid.

error UsdnProtocolInvalidMaxLeverage();

UsdnProtocolInvalidValidatorDeadline

The specified validation deadline is invalid.

error UsdnProtocolInvalidValidatorDeadline();

UsdnProtocolInvalidLiquidationPenalty

The specified liquidation penalty is invalid.

error UsdnProtocolInvalidLiquidationPenalty();

UsdnProtocolInvalidSafetyMarginBps

The specified safety margin basis points are invalid.

error UsdnProtocolInvalidSafetyMarginBps();

UsdnProtocolInvalidLiquidationIteration

The specified liquidation iteration value is invalid.

error UsdnProtocolInvalidLiquidationIteration();

UsdnProtocolInvalidEMAPeriod

The specified EMA period is invalid.

error UsdnProtocolInvalidEMAPeriod();

UsdnProtocolInvalidFundingSF

The specified funding scale factor (SF) is invalid.

error UsdnProtocolInvalidFundingSF();

UsdnProtocolInvalidLiquidationRewardsManagerAddress

The specified LiquidationRewardsManager contract address is invalid.

error UsdnProtocolInvalidLiquidationRewardsManagerAddress();

UsdnProtocolInvalidProtocolFeeBps

The specified protocol fee basis points are invalid.

error UsdnProtocolInvalidProtocolFeeBps();

UsdnProtocolInvalidFeeCollector

The specified fee collector address is invalid.

error UsdnProtocolInvalidFeeCollector();

UsdnProtocolSecurityDepositTooLow

The specified security deposit is below the required value.

error UsdnProtocolSecurityDepositTooLow();

UsdnProtocolUnexpectedBalance

The contract's ether balance after the action is not as expected.

error UsdnProtocolUnexpectedBalance();

UsdnProtocolInvalidExpoImbalanceLimit

The specified trading exposure imbalance limit is invalid.

error UsdnProtocolInvalidExpoImbalanceLimit();

UsdnProtocolInvalidLongImbalanceTarget

The specified imbalance target is invalid.

error UsdnProtocolInvalidLongImbalanceTarget();

UsdnProtocolImbalanceLimitReached

The protocol imbalance limit has been reached.

error UsdnProtocolImbalanceLimitReached(int256 imbalanceBps);

Parameters

NameTypeDescription
imbalanceBpsint256The imbalance value in basis points.

UsdnProtocolInvalidRebalancerTick

The tick of the rebalancer position is invalid.

error UsdnProtocolInvalidRebalancerTick();

UsdnProtocolInvalidLongExpo

The long total exposure value is invalid.

error UsdnProtocolInvalidLongExpo();

UsdnProtocolZeroTotalExpo

The total exposure value is zero.

error UsdnProtocolZeroTotalExpo();

UsdnProtocolInvalidPendingActionData

Indicates that the data provided to validate an actionable pending action is invalid.

error UsdnProtocolInvalidPendingActionData();

UsdnProtocolInvalidTargetUsdnPrice

The specified target USDN price is invalid.

error UsdnProtocolInvalidTargetUsdnPrice();

UsdnProtocolInvalidUsdnRebaseThreshold

The specified USDN rebase threshold is invalid.

error UsdnProtocolInvalidUsdnRebaseThreshold();

UsdnProtocolAmountToCloseHigherThanPositionAmount

The amount to close exceeds the position amount.

error UsdnProtocolAmountToCloseHigherThanPositionAmount(uint128 amountToClose, uint128 positionAmount);

Parameters

NameTypeDescription
amountToCloseuint128The specified amount to close.
positionAmountuint128The total amount in the position.

UsdnProtocolDepositTooSmall

The deposit amount is too small to mint USDN.

error UsdnProtocolDepositTooSmall();

UsdnProtocolZeroLongTradingExpo

The long trading exposure is zero, making liquidation tick calculation impossible.

error UsdnProtocolZeroLongTradingExpo();

UsdnProtocolEmptyVault

The vault balance is zero, so the calculation cannot proceed.

error UsdnProtocolEmptyVault();

UsdnProtocolSlippageMaxPriceExceeded

The entry price exceeds the maximum specified by the user.

error UsdnProtocolSlippageMaxPriceExceeded();

UsdnProtocolSlippageMinPriceExceeded

The current price is below the minimum specified by the user.

error UsdnProtocolSlippageMinPriceExceeded();

UsdnProtocolAmountReceivedTooSmall

The estimated amount of tokens to be received is less than expected.

error UsdnProtocolAmountReceivedTooSmall();

UsdnProtocolPaymentCallbackFailed

The payment callback execution failed.

error UsdnProtocolPaymentCallbackFailed();

UsdnProtocolDeadlineExceeded

The user initiate action's deadline has passed.

error UsdnProtocolDeadlineExceeded();

UsdnProtocolInvalidDelegationSignature

The delegation signature is invalid.

error UsdnProtocolInvalidDelegationSignature();

UsdnProtocolInvalidSecurityDeposit

The specified security deposit value exceeds the allowed maximum

error UsdnProtocolInvalidSecurityDeposit();

UsdnProtocolInvalidMinLongPosition

The specified minimum long position value exceeds the allowed maximum.

error UsdnProtocolInvalidMinLongPosition();

UsdnProtocolInvalidMiddlewareLowLatencyDelay

The low latency delay of the specified oracle middleware contract is below the validator's deadline.

error UsdnProtocolInvalidMiddlewareLowLatencyDelay();

UsdnProtocolInvalidRebalancerMinAssetDeposit

The minimum asset deposit of the specified rebalancer contract is below the protocol's minimum asset deposit.

error UsdnProtocolInvalidRebalancerMinAssetDeposit();