Skip to main content

Addresses & network

Live, and not externally audited

The contracts below are deployed and trading on Ethereum mainnet. The pool is seeded, so C4 can be bought and sold.

The addresses on this page are the only ones that are ours. Check any address you are shown against this table, character by character, before approving anything. An address that differs by a single character is a different contract, and a live market is exactly when that mistake gets made.

The code has not been externally audited. That has not changed, and it matters more now than it did before there was money in the pool.

Network​

Covenant runs on Ethereum mainnet, and only there.

NetworkChain IDUniswap v4 PoolManager
Ethereum mainnet10x000000000004444c5dc75cB358380D2e3dE08A90

Nothing else is a target: no other chain, no sidechain, no bridged version. If you find "Covenant" deployed somewhere else, it is not this project.

Contract addresses​

Deployed 2026-08-19 on Ethereum mainnet, except the marketplace, which was added on 2026-08-20 against the same contracts.

ContractAddressRole
CovenantCoin0x35f897fDbbbbc7f959395F6050ceb6E620C57592The C4 token: fixed supply, no mint
CovenantCore0x5175279C159F044F6F312d0320928Af5b43e58CcThe Uniswap v4 hook: tax, retention, launch liquidity
CovenantNotes0x7798Ee1C7f63df202Eb4F9f17706B3AAAC75853aBond positions, held as ERC-721 tokens
CovenantSwap0x24cEE6F75a20940465882BBC84136C2b5315b423Trading entrypoints
CovenantBondMarket0xfFd9B97A5ac1dE408D4a82c7E8b91F6E2bfFb711Fixed-price marketplace for bond positions

Bonds are ordinary ERC-721 tokens and they are transferable, so they can also be traded anywhere ERC-721s are traded. CovenantBondMarket exists to add the one guarantee a generic marketplace cannot: it takes custody of a listed position, so the seller cannot claim its rewards out from under a buyer mid-sale. It is wired as the bond contract's custodian, which is what lets an escrowed position keep earning for its seller while it sits listed.

It is the only Covenant marketplace. Any other one, at any other address, is not ours — including one that looks identical and lists real bonds.

The wallet that deployed them, and that receives the creator tax, is 0xE3d6843c02A6242A692025Ddc2cb6F347E23e616.

Every one of them is on etherscan.io. If a page you are reading shows different addresses, trust this table.

How the launch went​

The pool was created and seeded in a single transaction, which is what stops anyone from re-pricing an empty pool between the two steps.

  • The liquidity was seeded single-sided: all tokens, no ETH fronted. The price therefore starts at the top of the band and walks down as buyers arrive, which is also why nobody could sell until the first buys brought ETH into the band.
  • That liquidity has no withdrawal path. It was deposited once and no function in any of these contracts can take it back out, for the team or for anyone else.
  • Bonds are minted from that moment on, by selling or by committing.

How addresses reach the app​

Addresses and ABIs are exported into the dApp's deployments.json by the backend export script, generated from the compiled contracts rather than typed by hand. The app pins every transaction to the right chainId, so it cannot sign against the wrong contracts.