ActionSwapCT
ActionSwapCTV3 synthesizes CT swaps through the BT/FW AMM using a flash-callback pattern with BT+CT minting/redeeming.
Overview
CT is not directly traded in the AMM — the pool only has BT and FW. CT swaps are synthesized:
Buy CT (FW → CT)
Send FW to CT contract → mint BT+CT → sell BT back to market for FW → net output is CT. The callback mechanism handles this atomically: the market sends FW to the router first (flash-loan style), the router mints BT+CT using that FW to repay the BT debt.
Sell CT (CT → FW)
Buy BT from the market using FW → pair with user's CT → redeem BT+CT for FW → net output is FW minus the BT cost.
Functions
swapExactTokenForCt— User token → FW → CT (via synthesis)swapExactFwForCt— FW → CTswapExactCtForToken— CT → FW → user tokenswapExactCtForFw— CT → FW
Callback handling
The flash-style swaps use ActionCallbackV3 to handle the market's callback. The callback data encodes the action type and parameters, and the callback contract performs the BT+CT minting or redemption needed to settle the flash swap.
Last updated