Component: Sequencer relayer
The Sequencer relayer's main responsibility is to fetch blocks from the Sequencer and submit them to Celestia.
It contains a couple of subcomponents:
The API server
The relayer
Since the last audit, the following changes have been made to the relayer:
Data submission. The relayer has moved from using a Celestia node as an intermediary to communicating directly with the consensus node. This simplifies the data-handling process, as the system now only requires reading from a single file containing the key. Given this change, it is important to securely manage the key file.
State checking. By interacting directly with the Celestia application, the relayer now supports polling to check the submission status of data, ensuring transactions are confirmed as included in Celestia. This improves management of in-flight data.
Lock file. The lock-file logic has been updated to handle restart situations more effectively, preventing repeated or missed data submissions. Two separate lock files have been merged into a single, simplified lock file.