Permissioned Pools

The default pool type in Ambient is a permissionless pool. Permissionless pools allow any user to mint, burn or swap without any restrictions. Permissionless pool types also allow any user to initialize a pool for any arbitrary pair of tokens. Pool types in Ambient are 256-bit values, allowing for an essentially unlimited number of pool types.

Permissioned pools operate with the same underlying AMM mechanics, but every mint, burn, swap and initialize action is gated by an external permission oracle. A permission oracle can be any arbitrary smart contract that implements the interface. The address of a pool's permission oracle is determistically fixed based on the value of the pool index number. Therefore the permission oracle is fixed ahead of time.

Permission oracles may or may not also be set as policy oracles allowing them to dynamically and internally change the parameters (e.g. swap fee, concentrated liquidity tick spacing, etc.) in their own pool.

Currently permissioned pool types can only be created through protocol governance.

Last updated