APoW$AGENT Docs
Docs/Liquidity

Liquidity

Mint revenue accumulates in LPVault for permanently locked $AGENT liquidity. The vault exposes no general ETH withdrawal function, but the owner must submit the initial deployment and follow-on liquidity transactions.


How It Works

Accumulation

Every mining rig mint forwards its full msg.value to the LPVault contract. The vault accumulates ETH until it reaches the deployment threshold.

Deployment

When the vault balance reaches 5 ETH (4.97 ETH + 0.03 ETH UNCX fee), the owner can call deployLP(minUsdcOut):

  1. Wrap: All ETH is wrapped to WETH
  2. Swap: All WETH is swapped to USDC via Uniswap V3
  3. Pool: A new AGENT/USDC pool is created and initialized
  4. Liquidity: 2,100,000 AGENT + all USDC deposited as full-range liquidity
  5. Lock: The LP position NFT is locked forever via UNCX

After Deployment

  • The initial LP position is permanently locked and cannot be withdrawn (eternal lock)
  • Trading fees accrue to the deployer's collectAddress
  • The vault continues accumulating ETH from ongoing mint fees for addLiquidity()

Adding Liquidity (Repeatable)

After initial LP deployment, the vault continues accumulating ETH from ongoing mint fees. When the balance reaches ≥0.1 ETH (ADD_LIQUIDITY_THRESHOLD), the owner can call addLiquidity(minUsdcOut, minAgentOut) to deepen the existing UNCX-locked position:

  1. Wraps all vault ETH to WETH (no UNCX fee for increaseLiquidity)
  2. Swaps all WETH → USDC via Uniswap V3
  3. Swaps half USDC → AGENT (buying from the pool)
  4. Increases liquidity on the existing UNCX-locked position

This function is callable multiple times. Each call deepens the same eternal liquidity lock without creating new positions. The 0.1 ETH minimum prevents uneconomical gas-to-value ratios.


LP Composition

AssetAmountSource
AGENT2,100,000LP reserve (minted at deployment)
USDCSwap proceeds from 4.97 ETHConverted from mint fee ETH, net of execution

The LP reserve is 10% of total supply, a significant amount that ensures meaningful liquidity depth from launch.


UNCX Eternal Lock

The Uniswap V3 position NFT is locked via UNCX Network with the following parameters:

ParameterValue
Lock durationtype(uint256).max (forever)
Fee collectionDeployer address
WithdrawalImpossible
Fee nameDEFAULT
UNCX flat fee0.03 ETH

This is not a time-locked position that eventually unlocks. The lock duration is set to the maximum possible value (~10^77 years). The liquidity is permanent.


Why AGENT/USDC

The LP pair is AGENT/USDC, not AGENT/WETH. This means:

  • Stable pricing: traders see AGENT priced in dollars, not a volatile asset
  • Lower impermanent loss: one side of the pair is stable
  • Better UX: users think in dollar terms

All mint fee ETH is swapped to USDC before LP deployment.


Slippage Protection

The LP deployment includes safety measures:

ProtectionImplementation
Mint slippage90% minimum on both token amounts
Swap slippageConfigurable minUsdcOut parameter
Pool initializationAtomic create-and-initialize

Execution and Lock Model

The LP flow combines an owner-triggered execution step with an irreversible on-chain lock:

  • Threshold-gated: deployLP() reverts until the vault contains 5 ETH
  • Owner-initiated: deployLP() is restricted to the contract owner (onlyOwner)
  • Owner-selected slippage bounds: The owner supplies minimum output parameters for swaps
  • Atomic execution: wrap, swap, pool, liquidity, lock in one transaction
  • No intermediate custody: ETH goes directly from vault to Uniswap
  • Verifiable on-chain: UNCX lock is publicly auditable