@Override
  public TransactionSelectionResult evaluateTransactionPreProcessing(
      final TransactionEvaluationContext evaluationContext) {
    final var sender = evaluationContext.getTransaction().getSender();
    final var skippedNonce = skippedSenderNonceMap.get(sender);
    if (nonceGap(evaluationContext, skippedNonce)) {
      LOG.atTrace()
          .setMessage("Not selecting tx {} since its sender {} is in the skip list with nonce {}")
          .addArgument(() -> evaluationContext.getPendingTransaction().toTraceLog())
          .addArgument(sender)
          .addArgument(skippedNonce)
          .log();

      return TransactionSelectionResult.SENDER_WITH_PREVIOUS_TX_NOT_SELECTED;
    }
    return TransactionSelectionResult.SELECTED;
  }
Check if this pending tx belongs to a sender with a previous pending tx not selected, in which
case we can safely skip the evaluation due to the nonce gap

@param evaluationContext The current selection session data.
@return SENDER_WITH_PREVIOUS_TX_NOT_SELECTED if there is a nonce gas for this sender
ethereum/blockcreation/src/main/java/org/hyperledger/besu/ethereum/blockcreation/txselection/selectors/SkipSenderTransactionSelector.java