Addresses
Program IDs are the same on every cluster. Always compare the full address, not just its first and last characters.
Clusters#
| Cluster | Use |
|---|---|
| Devnet | The public test deployment, with test mints and seeded pools. |
| Mainnet | Follows devnet, with the same program IDs. |
| Localnet | Tests. Load the programs into solana-test-validator as shown in Write a module. |
This site’s app is connected to Devnet. The explorer links above let you check where each program is live, and who holds its upgrade authority.
Account seeds#
| Program | Seeds | Account |
|---|---|---|
| patchbay | ["config"] | Global config |
| patchbay | ["pool", mint_a, mint_b, fee_bps (u16 LE), patch_hash] | Pool |
| patchbay | ["vault", pool, mint] | Token vault, one per side |
| patchbay | ["lp", pool] | LP mint |
| patchbay | ["hook_auth", pool, module] | Hook authority, one per module of a pool |
| patchbay | ["listing", module] | Registry listing |
| patchbay-modules | ["module", nonce (u64 LE)] | Built-in module account |
| patchbay-modules | ["state", module, pool] | A module’s per-pool state |
| patchbay-modules | ["hook_vault", state, mint] | Limit order escrow |
Module accounts of third-party programs use whatever seeds their program chooses. Only the last byte of the address matters to the AMM.
$PATCH#
$PATCH is the Patchbay token. Its contract address is published on this site, on the plate below and on the home page. While the plate says “launching soon” there is no official token, and any token called Patchbay or $PATCH is not ours.
$PATCHlaunching soon