# Shared Auction

Chains in the Composium opt-in to a shared auction that allows for their blocks to be bid on by builders. Once a chain opts into the shared auction, the validators of the NodeKit L1 are alerted via a WebSocket endpoint. The validators subscribe to the shared auction to receive chunks from builders. Once a chain has registered, they are always considered for shared block building and are included in the list of participating chains for the ahead-of-time (AOT) auction.

The auction sells the right to build for an epoch. An epoch is a 12 second period of time for which a builder has the right to build blocks for chains.

<figure><img src="https://lh7-rt.googleusercontent.com/docsz/AD_4nXf1dAtPULCeAMa6EqbEpIECvve8SWQJrT89-ash8Us1HuLGj6CoM6FUxiJD3rdQzoR1hve-M2rFaldyat4SplLeJP4XGIqCQ3RSUl5xf3J6539PD_HubBQ6bN5oKlJr9_O3dr6w-Q?key=mcWQm1Amijc8vua1uSfrnrz1" alt=""><figcaption></figcaption></figure>

Auctions begin every 12 seconds (maintaining synchrony with Ethereum blocks) at epoch n-1 for block building rights of epoch n. The builder with the highest bid wins the auction and will start building blocks when their epoch starts. Auction winner and results are sent to the NodeKit L1 that is purpose-built for redistributing fees to stakers and providing a shared common ledger amongst chains.

<figure><img src="https://lh7-rt.googleusercontent.com/docsz/AD_4nXeb5J_2FBvG7VqA_jTyeTt4mo_cAuNk7tRTw7lJzyy3B6vLZPf8_USz0vi_qUAX-f1sfYPR_PwlAJmOzuLSG9bi1GsgOt6EXP-8W0bj6chcbPzeS_sF5ZDj-WmguhPfTvBZJl7Yig?key=mcWQm1Amijc8vua1uSfrnrz1" alt=""><figcaption></figcaption></figure>

Their are two types of blocks within the system. One is called Top of Block(ToB), and the other is called Rest of Block(RoB). ToBs are uniquely enabled by Javelin and contain cross-chain bundle. RoBs enable atomic bundles and MEV capture within individual chains. The builder who has won the auction will submit their chunks to the shared auction.

The shared auction then simulates these chunks to ensure the builder has not included a faulty bundle. Once the chunk is validated, it is then sent out to the list of subscribed validators on the L1 to be preconfirmed. Once signed by the majority of validators, it is sent back to Arcadia, where the signatures are verified.&#x20;

After verification, the preconfirmed chunk is added to a list of preconfirmed chunks that chains can make GetPayload requests to retrieve.&#x20;

<figure><img src="/files/nOCvOOQJgsS18HSHVlze" alt=""><figcaption></figcaption></figure>


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://nodekit.gitbook.io/nodekit-documentation/architecture/shared-auction.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
