Bundle Format

A FastLane Atlas bundle consists of 2 transactions:

  1. The opportunity-creating transaction. (regular opportunity transaction)

  2. Searcher meta transaction which includes: - callData which will be passed to searcher solver contract - bidAmount - atlas specific parameter such as dAppControl contract address (PLF auction address)

The transactions must be hexadecimal encoded (see Relay JSON-RPC API for more information)

1. Generate CallData for the Solver contract function

The first step is to generate and encode the backrun for a particular opportunity transaction

  • In our example the solve() function

  • Responsibilities:

    • perform backrun operation

    • makes sure the the contract has bidToken in bidAmount quantity (POL)


// This function is called by atlasSolverCall() which forwards the solverOpData calldata
// by doing: address(this).call{value: msg.value}(solverOpData)
// where solverOpData contains the ABI-encoded call to solve()
function solve() public view onlySelf {
    //do backrun stuff
}

2. Generate SolverOperation to Submit for

The second part will be generating the a EIP-712 signed messages with a atlas specific format

  • dAppControl Contract Address

    • Description: This is the current address of the PFL AuctiondappControl contract, which is responsible for generating the userOpHash needed for the solver operation.

    • helper contract for Fastlane to submit bundles

    • entrypoint contract which configures Atlas behavior for PFL auction system

  • dAppOpSigner Address

    • Description: This is the address of the dAppOpSigner, which acts as the signer for the bundles dAppOperation

    • Fastlane PFL system is using this authorizes signer to generate dAppControl operation

  • AtlasVerification Contract Address

  • atlas Contract Address

Alway verify that the provided example address are up to date. User our Addresses & Endpoints page

Example:

Last updated