错误说明
当前 ABI:版本化源码 c96cd0d。示例使用已激活的 PACKAGE_VERSION 对象;历史非版本化地址需要不同 ABI。详见版本管理及部署参考。
中止采用 Move clever errors,包含模块、常量名称及消息。未特别注明时,模块为 blast_presale。
| 阶段 | 错误 | 含义与处理方法 |
|---|---|---|
| 版本检查 | blast_admin::operational_version 中止码 13(版本不匹配) |
调用字节码的编译代数与共享 PackageVersion 不同。重新解析已激活的包和同一部署的版本对象;不要重试旧版调用。 |
| 完成初始化 | ESaleTokenNotUnregulated |
注册状态不是明确的 Unregulated,或仍为旧版 Unknown。使用无监管配置的新币种。 |
| 启动创建 | creation_policy::EQuoteNotAllowed、EMigrationWitnessNotAllowed |
支付代币类型或交易平台未获准,请联系 Blast。 |
| 启动创建 | EInvalidAssetPair |
预售代币与支付代币类型相同。 |
| 启动创建 | EInitialSupplyNotZero |
TreasuryCap 已铸过币,请使用全新币种。 |
| 启动创建 | bluefin::EInvalidTier、bluefin::ESymbolTooLong |
Bluefin 档位超出范围,或符号超过 32 字节。 |
| 合作伙伴 | creation_policy::EPartnerNotAccepted |
初始化器的 set_partner 指定了未获准用于新预售的伙伴。 |
| 完成初始化 | EMissingSetting |
未设置参与资格规则或手续费分配。 |
| 完成初始化 | EInvalidRaiseTarget |
募资目标为零或未设置。 |
| 完成初始化 | EInvalidTokenAllocation |
供应量为零或未设置;加上 Blast 代币费率后供应量份额不等于 10,000;或接收方地址为零、重复、数量超过 64。 |
| 完成初始化 | EInvalidRaiseAllocation |
扣除接收方和 Blast 后池无剩余份额,或份额重复、为零。 |
| 完成初始化 | EInvalidWindow |
时长为零或未设置,或流动性部署期限短于 7 天。截止时间溢出时,share 也会抛出此错误。 |
| 完成初始化 | EUnreachableRaise |
最低认购额容量不足。公开规则使用 min_commitment × max_participants;白名单转向所有人开放的阶段仅计新增名额,即 min_commitment × (max_participants − leaf_count)。 |
| 完成初始化 | EInvalidHardCap |
硬顶生效时间在窗口结束时或之后。 |
| 完成初始化 | EInvalidEligibilityPolicy、EInvalidUncappedPhase、EInvalidFeeSplit、EInvalidVestingTerms |
未通过构造函数或 finalize 的校验。详见创建预售。 |
| 完成初始化 | EUnseedablePrice |
池初始价格超出两平台均可定价的范围。 |
| 认购 | EPresaleNotStarted、EPresaleEnded |
不在认购窗口内。 |
| 认购 | EZeroCommitment |
认购代币对象金额为零。 |
| 认购 | EWrongEligibilityPolicy |
调用的认购函数与该预售规则不符。 |
| 认购 | EInvalidEligibilityProof |
索引、上限、证明或发送者错误,或上限与钱包首次认购时不同。 |
| 认购 | EWalletCapExceeded |
降低金额,或等待无单钱包上限阶段。 |
| 认购 | EBelowMinimumCommitment |
钱包累计金额必须达到最低认购额。 |
| 认购 | EParticipantCapacityReached |
新钱包参与名额已满。 |
| 认购 | EUncappedPhaseNotOpen |
未设向所有人开放的阶段,或该阶段尚未开始。 |
| 认购 | EPresaleFilled |
硬顶已生效且募资已满。 |
| 认购 | EInvalidLifecycle |
预售不处于 Open:尚未共享,或已经结算(可能提前结束)。 |
| 结算 | EPresaleNotEnded |
窗口尚未结束,且不满足提前结束条件。 |
| 迁移 | EInvalidLifecycle |
不处于 Funded:尚未结算、未达标、已取消或已迁移。 |
| 迁移 | EWrongMigrationWitness |
使用了错误交易平台。 |
| 迁移 | cetus::EInvalidCoinOrder、cetus::EWrongCoinPair |
交换 CoinA 与 CoinB,或传入该预售的正确两种币种类型。 |
| 合作伙伴付款 | EWrongPartner、ENoPartnerPayout |
伙伴错误,或尚未迁移、已经付款。 |
| 领取 | ENoCommitment |
钱包从未认购,或已领取。 |
| 取消 | ELiquidityDeadlineNotReached |
等待至 end_ms + liquidity_window_ms。 |
PresaleCap |
EWrongPresaleCap、presale_vault::ENoMigrationResiduals |
凭证错误,或剩余代币已领取。 |
| 锁定仓位 | cetus::EPositionPoolMismatch、bluefin::EPositionPoolMismatch、presale_vault::EZeroLiquidity |
仓位属于其他池,或无流动性。 |
| 奖励 | holder_rewards::EInvalidProof、EAlreadyClaimed、EClaimsStillOpen |
证明错误、重复领取,或截止时间前尝试关闭。 |
| 发布奖励 | holder_rewards::ETreasuryChanged、EInsufficientBudget、EInvalidInterval |
重新读取当前 FeePolicy.destination 作为 expected_treasury;奖励资金与 gas 预留之和不得超过余额;区间必须非空且不与上一轮重叠。 |
| 结算 gas 预留 | holder_rewards::EReserveSettled、EOverReserve、EWrongVault |
补偿未启用或已结算、金额超过预留,或金库错误。 |
管理调用需要共享 Blast ACL 中对应的预售角色。blast_acl::sign_in 会拒绝已撤销或不具备相应角色的 AdminCap。详见权限。
完整错误及消息列表见 llms/presale.txt。