A guided, founder-only console for SOST ↔ EVM cross-chain atomic swaps (HTLC), activating at block 15,000. It explains, validates and generates the exact sost-cli commands for you to run in your own terminal. It never asks for a seed phrase or private key, never signs, never broadcasts, and never sends your secret anywhere.
An HTLC (Hash Time-Locked Contract) is a self-custodial lockbox with two exits: CLAIM (whoever reveals the correct secret S whose sha256(S) equals the agreed hashlock can take the funds) and REFUND (if the timeout passes and nobody claimed, the owner takes their funds back). Two parties lock on their own chains under the same hashlock; revealing S to claim one side lets the other side be claimed too. No custodian, no trust.
It touches real funds on two chains. A wrong hashlock, timeout or pkh can lock funds until refund; a bug or a chain reorg can break atomicity; and if un-upgraded miners reject HTLC blocks, the SOST network can split. The point of no return is not block 15,000 — it is the FIRST HTLC you create.
createhtlclock).claimhtlc).refundhtlc).H = sha256(S). Identical on both chains. Public.Only live items are verified by this page (via the public /rpc). self items you must verify yourself on your machines — the website cannot inspect your node binary, flags or hashrate. Be honest with yourself.
b57c41ed or later) selfgit rev-parse --short HEAD on bothSOST_ENABLE_PHASE2_SBPOW=ON and SOST_TESTNET_FORKS=OFF selfREJECTED block / invalid / consensus in node logs selfThis checklist is advisory. Ticking boxes does not make the swap safe — it records that you checked. The hard invariant: do not create the first HTLC until height ≥ 15,010 AND every box is genuinely true.
The command generators are locked until you confirm this is founder-only use. Type exactly: I UNDERSTAND THIS IS FOUNDER-ONLY
The safest first test: lock a tiny amount of SOST, let the timeout pass, and recover it by refund. If refund works, you know you can never get stuck. No counterparty, no EVM, no claim.
sendrawtransaction yourself.This runs the real AtomicSwapHTLC contract via your wallet: it builds the exact calldata (verified against the contract ABI) and your wallet signs & sends. ETH/BNB native + ERC-20 (USDT/USDC/PAXG/XAUT). BTC is excluded (V15). No seed/private key ever touches this page.
AtomicSwapHTLC contract is NOT deployed by default (unaudited). Operations stay disabled until you deploy it and paste its address per network below. This is intentional — the console will not let you call a contract that does not exist.Type exactly: I UNDERSTAND THIS IS FOUNDER-ONLY
refund_height must open LATER in wall-clock time than this EVM refundTime (different block speeds — Ethereum ≈12s, BNB ≈3s, SOST varies). The contract does NOT enforce this; you do.Each action opens MetaMask for you to review & sign. The exact calldata is shown first.
Only attempt a claim after a refund test has succeeded. Native ETH/BNB only, cents-level amounts.
Flow: (1) you generate S/H; (2) you LOCK SOST with H + your refund_height; (3) counterparty LOCKs the EVM side with the same H and an earlier timeout; (4) you confirm their lock (amount + hashlock) on the EVM explorer; (5) you CLAIM the EVM side, revealing S; (6) counterparty CLAIMs your SOST with the now-public S.
Paste your swap identifiers to generate the read-only status command and to keep a local logbook. Your secret stays local and is never included in any upload.
In plain terms, what an atomic swap does: you lock funds on one chain under a "lock" (hashlock) with a deadline; whoever reveals the secret gets paid; if nobody claims in time, you get your funds back (refund). No intermediary.
forge create and run the whole cycle risk-free. The console detects the testnet automatically.Before a real swap, run the “1 · Refund test” tab: lock a minimal amount in SOST and recover it via refund. If refund works, you know you can never get stuck. Then try CLAIM.
More detail in each tab: Readiness (is everything ready?), EVM operate (the real operation), Swap status (query / log), Emergency (what to do if something goes wrong).
docs/ATOMIC_SWAP_V14_OPERATIONS.md, section E.)Reaching block 15,000 changes nothing until an HTLC is mined. If miner coverage is unsafe or you have doubts: simply do not create an HTLC. The clean lever is to revert the gate to INT64_MAX, rebuild, redeploy and re-announce — no fork, because no HTLC ever existed.
Symptoms: peers stuck, your tip diverges from the explorer, REJECTED block in logs. Actions: stop all tests; create no more HTLCs; tell miners to rebuild on the new binary & resync; the canonical chain is the majority-hashrate (your) chain; compare getblockcount / tip hash across node, explorer and peers before doing anything.
If you can't claim, can't refund, a tx is rejected, the EVM side mismatches, or a reorg hits: create no more HTLCs; harden the DO-NOT-USE banner; preserve everything (SOST txid, EVM txid, secret/hashlock, refund_height, node logs, block height, exact commands); check whether funds are recoverable via refund after the timeout; if it is a consensus bug, prepare a coordinated emergency point-release / fork; if it is a CLI/contract bug, patch and do not use again until tested.