Lester Labs DeFi suite live on LitVM LiteForge testnet · chain 4441.
All tutorials
DEX

LitVM DEX — Immutable Replacement and Legacy Recovery

How new chain-guarded testnet swaps work, why the direct fee route is disclosed, and how authenticated legacy LP recovery remains separate.

6 min readTutorial

Current immutable replacement status

New swaps, approvals, wrapping, pool creation, and liquidity actions use only the source-pinned immutable replacement on chain 4441. Quotes and reserve ratios remain untrusted read-only observations; they are not oracle prices or proof that a trade is safe. The pair transparently routes 0.20% of measured swap input to the fixed valueless test treasury and retains roughly 0.10% in-pool. This noncanonical extra recipient can resemble a malicious-transaction heuristic, but the replacement `feeToSetter` is frozen at the no-key 0x…01 precompile and cannot redirect it. The old mutable tuple remains recovery-only.

Existing-position recovery checklist

1

Verify the network independently

Cross-check LiteForge chain ID 4441, RPC https://liteforge.rpc.caldera.xyz/http, native currency zkLTC, and explorer https://liteforge.explorer.caldera.xyz against LitVM’s official testnet hub before opening any wallet prompt.

2

Authenticate the exact legacy tuple

For an existing LP position, use only a source-pinned factory/router/wrapped-native tuple. Verify exact runtime hashes, pair token addresses, factory `getPair`, and router `factory()` / `WETH()` values. Do not accept an address from a search result, social post, message, or mutable environment variable.

3

Do not approve or swap

A reserve quote does not authorize a trade. For a new replacement swap, verify chain 4441, exact router/runtime/spender, path, recipient, minimum output, value, and deadline. Never grant a token allowance or submit a swap to the retired router. For recovery, approve only the exact LP amount immediately before removal.

4

Remove only an authenticated existing position

Use explicit minimum outputs, a short deadline, and the connected wallet as recipient for a legacy `removeLiquidity` call. New deposits, pool creation, wrapping, and liquidity additions are allowed only against the separately attested replacement tuple.

5

Verify the recovery receipt

Confirm the exact target, function, calldata, value, minimum outputs, deadline, and recipient in the wallet. After confirmation, verify token transfers and the remaining allowance through an independently selected RPC or explorer.

Existing legacy wrapped-native tokens may be withdrawn only through the exact source-pinned legacy wrapper after runtime verification. New wrapping targets only the separately attested replacement wrapper on chain 4441.

Replacement economics and frozen authority

The immutable testnet replacement uses Lester-specific noncanonical economics: 0.20% of measured input is sent directly to the disclosed valueless test treasury and roughly 0.10% remains in-pool, yielding the router’s effective 997/1000 quote factor. Factory `feeTo` is fixed to that treasury and `feeToSetter` is frozen at 0x…01. Exact runtimes, roles, fee behavior, and chain-guarded transaction intent are source-pinned and publicly disclosed.

Continue reading

Setup

Setting up your LitVM wallet in 5 minutes

5 min read

Launchpad

LitVM Launchpad — Immutable Replacement and Legacy Recovery

8 min read

Locker

Liquidity Locker — Immutable Replacement and Legacy Withdrawal

5 min read