Skip to content

Smart contracts for Continuous Clearing Auctions to be used with the Uniswap Liquidity Launcher

License

Notifications You must be signed in to change notification settings

Uniswap/continuous-clearing-auction

Repository files navigation

Continuous Clearing Auction

This repository contains the smart contracts for Continuous Clearing Auctions (CCAs). It is intended to be used in combination with the Uniswap Liquidity Launcher contracts suite.

Table of Contents

Overview

CCA is a novel auction mechanism that generalizes the uniform-price auction into continuous time. It provides fair price discovery for bootstrapping initial liquidity while eliminating timing games and encouraging early participation (see whitepaper).

The contracts can be used as a standalone auction or a part of a larger token distribution system. All contracts are MIT licensed.

Installation

forge install
forge build
forge test

Deployments

CCA instances are deployed via the ContinuousClearingAuctionFactory.

Addresses are cannonical across select EVM chains. If it is not already deployed, it can be deployed by anyone following the Deployment Guide.

ContinuousClearingAuctionFactory

Network Address Commit Hash Version
v1.1.0 0xCCccCcCAE7503Cac057829BF2811De42E16e0bD5 87b2546a298f691c095b06ec077ceef25ba56007 v1.1.0
v1.0.0* 0x0000ccaDF55C911a2FbC0BB9d2942Aa77c6FAa1D 154fd189022858707837112943c09346869c964f v1.0.0-candidate

*v1.0.0-candidate is the initial version of CCA and is NOT recommended for production use. For more details, see the Changelog.

Audits

The code has been audited by Spearbit, OpenZeppelin, and ABDK Consulting. The most recent audits for v1.1.0 are linked below. For a full list of audits, see Audits.

Version Date Report
v1.1.0 01/20/2026
v1.1.0 01/20/2026

Bug bounty

The files under src/ are covered under the Uniswap Labs bug bounty program here, subject to scope and other limitations.

Security contact

security@uniswap.org

Whitepaper

The whitepaper for the Continuous Clearing Auction.

Docs

Repository Structure

All contracts are located in the src/ directory. test/btt contains BTT unit tests for the Auction contracts and associated libraries, and the top level test/ folder contains additional tests. The suite has unit, fuzz, and invariant tests.

src/
----interfaces/
| IContinuousClearingAuction.sol
| IContinuousClearingAuctionFactory.sol
| ...
----libraries/
| ...
----ContinuousClearingAuction.sol
----ContinuousClearingAuctionFactory.sol
test/
----btt/
| auction/
| ...
----Auction.t.sol
----Auction.invariant.t.sol

License

The contracts are covered under the MIT License (MIT), see MIT_LICENSE.

About

Smart contracts for Continuous Clearing Auctions to be used with the Uniswap Liquidity Launcher

Resources

License

Contributing

Stars

Watchers

Forks

Packages

No packages published

Contributors 7