feat: add sequencer dangerous flag to disable tx size checks #2885
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
adding the
disable-seq-inbox-max-data-size-check
flag under a newdangerous
field in the sequencer config. this config disables the check innitro.go
that compares the sequencer MaxTxDataSize to ensure that it is at least 15kB below the sequencer inbox's MaxDataSize.discussions with offchain labs on slack helped clarify that this should be a dangerous flag because it breaks batcher manual fallbacks in case the DA layer is down. if the sequencer MaxTxDataSize is too high, there is no way the txs(and further the batches) into the sequencer inbox on the parent chain in a manual fallback scenario.
had some difficulties with the naming of this flag to fit all of the needed context. the sequencer inbox MaxTxDataSize is checked two times. once against the sequencer inbox MaxDataSize(in
nitro.go
, we are trying to disable this one) and the other time against arbostypes.MaxL2MessageSize(insequencer.go
, not disabling this check). it can be quite verbose to try to spell out the entire interaction(likeDisableMaxTxDataSizeCheckAgainstSeqInboxMaxDataSize
) to avoid confusion on the exact check that is being targeted. on the other hand, i dont see any precedent in any other configs to nest thedangerous
section(likesequencer.dangerous.max-tx-data-size.disable-seq-inbox-max-data-size-check
). for now, i shortened it down toDisableSeqInboxMaxDataSizeCheck
, but i understand this can leave some ambiguity. as this is my first contribution to this repo, please let me know what kind of style you all prefer.with this new dangerous flag, the new limit for sequencer MaxTxDataSize should be ~212kB(
arbostypes.MaxL2MessageSize-50000
).internal context for the offchain labs team: https://alchemyinsights.slack.com/archives/C06SZ7EKS2H/p1736987075713719