內盤可售 Token 歸零後,協議把預留的2,000,000,000 Token + 全部真實曲線BNB儲備加入 PancakeSwap V2 Token/WBNB Pair,並部署初始化獨立 Short Engine。遷移不使用虛擬BNB,不混入其他曲線資金,也不把借貸庫存加入AMM。
1. 觸發條件與原子執行順序
| 順序 | 動作 | 結果 |
|---|---|---|
| 1 | 最終買入結算,發Token、處理費用與退款 | 可售量歸零,記錄Complete和曲線後狀態 |
| 2 | 讀取該幣MarketGroup與Engine預留 | 不採用後來切換的預設組或其他deployer |
| 3 | 進入Migrating,重新校驗Pair、場所、儲備和餘額 | 拒絕不合法場所或Token汙染 |
| 4 | 將完整真實BNB儲備包裝為WBNB | 逐wei驗證BNB減少與WBNB增加 |
| 5 | 向Pair轉入遷移Token和完整WBNB | 核驗實際到賬,不做精度截斷 |
| 6 | Registry記錄遷移儲備,固定deployer部署預留Engine 合約 | Engine繫結市場、經濟快照和已有借貸庫存 |
| 7 | 校驗Engine繫結並開啟Token外盤 | externalTradingEnabled=true |
| 8 | 清零本曲線真實BNB賬本,儲存遷移結果 | 最終狀態Migrated |
2. 原生BNB與WBNB:同精度,不同餘額
| 情境 | 資產 / 單位 |
|---|---|
| 內盤支付、Factory曲線賬本、Engine倉位結算 | BNB,18位wei |
| Pair儲備、Router輸入輸出 | WBNB,18位wei |
設本曲線真實BNB儲備為Q,則本次包裝及入池WBNB數量為:
全部wei入池,不存在小數精度轉換產生的遷移dust,也沒有該類dust領取桶。 BNB與WBNB餘額獨立;轉入BNB不會自動增加WBNB餘額。Factory在包裝前後、Pair轉賬前後分別核驗餘額增量。
3. 當前組的清盤算例
算例D:初始狀態一次性買完,無Token稅、無捐贈
買完8,000,000,000 Token,按18位原始整數計算:
| 項目 | 精確結果 |
|---|---|
| 淨入曲線 | 15.998084815592369216 BNB |
| 入池Token | 2,000,000,000 Token |
| 入池WBNB | 15.998084815592369216 WBNB |
| 入池WBNB原始整數 | 15998084815592369216 |
內盤終點、實際外盤與理想錨
| 指標 | 本例結果 | 用途 |
|---|---|---|
| 終點虛擬BNB | 22.138084815592369216 BNB | 內盤虛擬儲備 |
| 終點虛擬Token | 3,070,367,520 Token | 內盤虛擬儲備 |
| 終點曲線協議市值 | 72.102393838482141108 BNB | 虛擬儲備比乘固定曲線供給 |
| 實際外盤初始 WBNB | 15.998084815592369216 WBNB | 真實Pair儲備 |
| 實際外盤初始 Token | 2,000,000,000 Token | 真實Pair儲備 |
| 實際初始協議市值 | 79.990424077961846080 BNB | actualStartMarketCap |
| 固定理想遷移BNB錨 | 15.998084815592369216 BNB | 組內風險模型引數 |
| 固定理想遷移市值 | 79.990424077961846080 BNB | 組內風險/保證金模型錨 |
本例外盤實際值恰好等於理想錨,是初始狀態、單次買滿且無捐贈的結果;不是強制每次畢業都轉入同一金額。內盤虛擬儲備與外盤真實儲備是兩套數值,不保證遷移前後邊際價格逐wei連續。
4. Pair預建立、捐贈與汙染檢查
關鍵檢查包括:
- Pair的Token儲備和實際Token餘額均為0。
- WBNB賬面儲備不高於實際WBNB餘額。
- Pair為組內指定場所Factory登記的Token/WBNB組合;預測地址、資產順序及執行程式碼雜湊匹配。
- 本次WBNB實際到賬數量等於本曲線遷移金額。
- LP鑄造後全部LP由零地址持有;Token儲備等於遷移額度,WBNB儲備等於遷移前實際餘額加本次入池額。
檢查失敗回滾最終買單。場所 Factory / Router 的程式碼雜湊及關聯關係仍要複核;Engine 依據建立時預留的 deployer 和地址部署。
設遷移前Pair中實際WBNB餘額為 :
捐贈留在池中,不返給捐贈者或最終買家;它提高實際初始價格及 actualStartMarketCap,不會改寫固定理想錨,也不跳過TWAP逐步確認額度的條件。
算例E:上述畢業時額外保留1 WBNB捐贈
| 項目 | 無捐贈 | 額外1 WBNB |
|---|---|---|
| Token儲備 | 2,000,000,000 | 2,000,000,000 |
| WBNB 儲備 | 15.998084815592369216 | 16.998084815592369216 |
| 實際初始協議市值(BNB) | 79.990424077961846080 | 84.990424077961846080 |
| 固定理想市值(BNB) | 79.990424077961846080 | 79.990424077961846080 |
該例不保證任意規模捐贈均可接納;儲備整數範圍、LP及執行限制仍然成立。未同步捐贈也可能在遷移前被Pair正常操作移走,最終以執行時餘額為準。
直接給Factory的BNB不會自動增加某幣 realNativeReserves;直接給Factory的WBNB也不會被預設為該幣遷移資金。曲線賬本、Factory餘額、Pair實際餘額必須分開。
5. LP與借貸庫存
本次返回的流動性須大於0,LP總量還須大於本次返回值,以覆蓋V2初始最小流動性結構。creator、協議錢包、運營和最終買家都不收到遷移LP。
這裡“鎖定/銷燬LP”指零地址持有且普通賬戶不能贖回,不是LP的 總供應量 清零,更不是基礎Token銷燬;不能據此聲稱外部AMM以後永遠無法新增其他流動性。
1,997,367,528 Token借貸庫存早已鑄至預留Engine地址。遷移只部署初始化Engine,不重複鑄幣、不把這筆本金加入Pair;Engine依據獨立賬本和實際餘額管理庫存。