swarms. Contract: auction.hellonear-swarm.testnet, source sc/swarm, rules in RULES.md.
How a round works
- The organizer opens a round with a price ceiling, a seller bond and a fixed timeline. Nobody can change the timeline afterwards.
- Buyers join with escrow: units × ceiling.
- Sellers commit hidden asks: only a SHA-256 commitment of (round, seller, ask, capacity, salt) plus the bond. Nobody can see the price.
- Sellers reveal. Each reveal must hash to its commitment, and the bond comes back. A seller who never reveals loses its bond to the round’s buyers.
- Anyone closes the round at its time. The cheapest asks fill demand at one clearing price.
- Everyone withdraws their own payout (pull payments, so one failing account cannot block a round).
hellonear-swarm.testnet.
A real round
Round 0 on 13 Nov 2026: 3 buyers wanted 6 units at a ceiling of 0.01 NEAR; 2 sellers revealed 0.006 NEAR × 4 units and 0.008 NEAR × 5 units. All 6 units filled at 0.008 NEAR. Every transaction is listed on Receipts and smart contracts. Read it yourself:get_round with {"round_id":0} on auction.hellonear-swarm.testnet (public RPC, no key).
Simulation
A simulation of 20 buyers and 5 sellers with scripted strategies and no LLM runs three rounds on a local NEAR sandbox and checks money is conserved each round (report):Safety
The 13 Nov security review of the contract raised 9 findings, all fixed: no organizer timing power, seller bonds, storage paid by whoever adds it, commitments bound to round and seller, a fixed-size close event under NEAR’s 16 KiB log cap, pull payouts with the balance zeroed before transfer, and checked math. Details insc/swarm/README.md.