T6c: the no-cooperation Lightning-faithful layer. The commitment pays the closer to a revocation output [ OP_IF <revPub> CHECKSIG OP_ELSE <CSV> CSV DROP <closerPub> CHECKSIG OP_ENDIF ]. Honest close = ELSE after the CSV delay; a STALE broadcast = the counterparty sweeps via the revocation key (IF branch), immediately — the penalty. Validated on real signet (scripts/btc-signet-penalty.mjs): funded 2-of-2 (6163...), Alice broadcast a revoked commitment (b76d17..., her 4500 to the revocation output), Bob penalised it (b35186..., seized the 4500). Cheating costs the whole balance -> unilateral exit is trustless. BTC enforces the penalty (it holds the funds); the BCH board says WHEN to act. So T6 is complete: BCH records state, BTC locks/settles/penalises. Only the honest CSV- delayed self-close (liveness mirror) is unrun. Record + tracker updated. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com> |
||
|---|---|---|
| .. | ||
| ASM-Multichain.md | ||
| ASM-Orbital-Swap-native.md | ||
| btc-on-bch-rails_test-program.md | ||
| cross-chain-asm-concept-and-state.md | ||
| DEX-Multichain-Atomic-Swaps.md | ||
| DEX-native-Order-book.md | ||
| README.md | ||
ASM vs DEX — the Deviant swap taxonomy
Two ways to move value, separated by the single question: does anyone have to take the other side?
-
ASM — Automated Swap Mechanism. Single-party (SP), zero counterparty. You alone act. No maker, no liquidity provider, no order, no human on the other end. The swap is a machine — a covenant (and, cross-chain, an oracle) executes a conversion against the asset's own backing or claim. It does not match a trade; it executes one.
-
DEX — Decentralized P2P Exchange. Two-party (P2P), needs a counterparty. Someone must provide the other side — a maker/LP on an order book, or a swap partner in an atomic swap. Non-custodial and on-chain, but counterparty-dependent by construction. This is the classical exchange paradigm, automated.
A second, orthogonal axis is chain:
- Native — one chain (Bitcoin Cash).
- Multichain — cross-chain.
The 2×2
| Native (one chain, BCH) | Multichain (cross-chain) | |
|---|---|---|
| ASM (SP, zero counterparty) | Orbital Swap — covenant-fixed rate, no order book, zero slippage | Lock → oracle → mint IOU — lock under a VM condition, mint a transferable IOU on the other chain |
| DEX (P2P, needs counterparty) | Order book — manual limit orders (CLOB) + optional AMM liquidity | Atomic swap — HTLC, two parties agree, trustless |
Each cell is documented separately:
- ASM · Orbital Swap — native Bitcoin Cash
- ASM · Multichain — chains that support VM scripts
- DEX · Order book — native Bitcoin Cash
- DEX · Atomic Swaps — multichain
Why ASM is not "just another DEX"
A canonical on-chain DEX is the classical exchange, automated and on-chain — it still requires a counterparty. An AMM or CLOB both rely on someone providing the other side, so both carry price discovery, spread, slippage, and price impact. The price is the market clearing between two sides.
ASM removes the market, not the exchange. "Exchange" is a function — the
user still exchanges two assets (asset A for asset B). What ASM removes is the
P2P market: there is no order book, no matchmaking, no LP, no maker, no
human. You feed an MBA into the covenant and it converts at a rate fixed by
consensus (units × backingRate) — the same for 1 unit or 1,000,000. Zero
slippage, zero price impact regardless of size, because there is no curve to
move. So ASM is not a P2P exchange — it is how you perform the exchange
function through an automated mechanism instead of a P2P market.
The automation ladder (inside DEX only)
CLOB and AMM are the same species — one order book, one matching engine — differing only in who makes the orders:
| Order-making | Order book + matchmaking | Liquidity from | Human in loop | |
|---|---|---|---|---|
| CLOB | manual — you place each order | yes | counterparties' resting orders | yes (both sides) |
| AMM | automated — a preconfigured bot makes & maintains orders | yes (the pool is the book) | LPs who fund the pool | yes (the LPs) |
| ASM | none — no orders exist | no | the asset's own BCH backing | none |
An AMM is a CLOB with the order-making automated: you preconfigure (deposit liquidity + a curve) and a bot runs that configuration onto the same book, matched the same way. (A constant-product curve is mathematically equivalent to a continuum of resting limit orders.) ASM is off this ladder entirely.
Two cross-chain modes, split by the same counterparty test
Both move value across chains, but they fall on opposite sides of the SP/P2P line:
- ASM · Multichain = single-party, no counterparty. You lock under a VM
condition; an oracle attests; a covenant mints a transferable IOU whose identity
is its CashToken category (one per source chain); displayed as the asset name
- a network badge (
USDt · Tron), with aτ/εprefix as the text-only fallback (see naming). Trust = the lock VM + the oracle (not a person). Requires the source chain to support VM scripts.
- a network badge (
- DEX · Atomic swap = two-party, needs a counterparty, but trustless via a shared hashlock (no oracle, no escrow). Requires both chains to support HTLCs (hashlock + timelock).
Related project records
- ASM = the counterparty-free protocol swap validated on chipnet (snapshot 0008).
wiki/decisions.md: ADR-0007 (reservoir model), ADR-0016 (route by asset class: MBAs → ASM, Token-class → external market), ADR-0025 (obligor-free MBA), ADR-0031 (synthetic USD), ADR-0035 (USD-rail bridge trilemma — a covenant verifies a signature, not a claim's truth), ADR-0036 (on-ramp).- Interactive model:
design/mockups/bch-dex.html— all four cells are live and testable (ASM rate is size-independent; DEX shows slippage/matchmaking; cross-chain shows the oracle-mint vs HTLC trust split).