Update arithmetization to beta-v3.1-rc6 and adapt Sequencer to the new version (#1194)

Signed-off-by: Fabio Di Fabio <fabio.difabio@consensys.net>
This commit is contained in:
Fabio Di Fabio
2025-06-19 11:52:47 +02:00
committed by GitHub
parent c21b6d3d97
commit 0c508e3109
4 changed files with 37 additions and 19 deletions

View File

@@ -25,6 +25,7 @@ import net.consensys.linea.config.LineaRpcCliOptions;
import net.consensys.linea.config.LineaRpcConfiguration;
import net.consensys.linea.config.LineaTracerCliOptions;
import net.consensys.linea.config.LineaTracerConfiguration;
import net.consensys.linea.config.LineaTracerLineLimitConfiguration;
import net.consensys.linea.config.LineaTransactionPoolValidatorCliOptions;
import net.consensys.linea.config.LineaTransactionPoolValidatorConfiguration;
import net.consensys.linea.config.LineaTransactionSelectorCliOptions;
@@ -33,6 +34,8 @@ import net.consensys.linea.config.LineaTransactionValidatorCliOptions;
import net.consensys.linea.config.LineaTransactionValidatorConfiguration;
import net.consensys.linea.plugins.AbstractLineaSharedOptionsPlugin;
import net.consensys.linea.plugins.LineaOptionsPluginConfiguration;
import net.consensys.linea.plugins.config.LineaTracerSharedCliOptions;
import net.consensys.linea.plugins.config.LineaTracerSharedConfiguration;
import net.consensys.linea.utils.Compressor;
import org.hyperledger.besu.plugin.ServiceManager;
import org.hyperledger.besu.plugin.services.BesuConfiguration;
@@ -124,8 +127,16 @@ public abstract class AbstractLineaSharedPrivateOptionsPlugin
}
public LineaTracerConfiguration tracerConfiguration() {
return (LineaTracerConfiguration)
getConfigurationByKey(LineaTracerCliOptions.CONFIG_KEY).optionsConfig();
var tracerLineLimitConfig =
(LineaTracerLineLimitConfiguration)
getConfigurationByKey(LineaTracerCliOptions.CONFIG_KEY).optionsConfig();
var tracerSharedConfig =
(LineaTracerSharedConfiguration)
getConfigurationByKey(LineaTracerSharedCliOptions.CONFIG_KEY).optionsConfig();
return new LineaTracerConfiguration(
tracerLineLimitConfig.moduleLimitsFilePath(),
tracerLineLimitConfig.moduleLimitsMap(),
tracerSharedConfig.isLimitless());
}
public LineaRejectedTxReportingConfiguration rejectedTxReportingConfiguration() {

View File

@@ -14,12 +14,10 @@ import net.consensys.linea.sequencer.modulelimit.ModuleLineCountValidator;
import picocli.CommandLine;
public class LineaTracerCliOptions implements LineaCliOptions {
public static final String CONFIG_KEY = "tracer-config";
public static final String CONFIG_KEY = "tracer-sequencer-config";
public static final String MODULE_LIMIT_FILE_PATH = "--plugin-linea-module-limit-file-path";
public static final String DEFAULT_MODULE_LIMIT_FILE_PATH = "moduleLimitFile.toml";
public static final String LIMITLESS_ENABLED = "--plugin-linea-limitless-enabled";
public static final boolean DEFAULT_LIMITLESS_ENABLED = false;
@CommandLine.Option(
names = {MODULE_LIMIT_FILE_PATH},
@@ -29,14 +27,6 @@ public class LineaTracerCliOptions implements LineaCliOptions {
"Path to the toml file containing the module limits (default: ${DEFAULT-VALUE})")
private String moduleLimitFilePath = DEFAULT_MODULE_LIMIT_FILE_PATH;
@CommandLine.Option(
names = {LIMITLESS_ENABLED},
hidden = true,
paramLabel = "<BOOLEAN>",
description =
"If the sequencer needs to use or not the limitless prover (default: ${DEFAULT-VALUE})")
private boolean limitlessEnabled = DEFAULT_LIMITLESS_ENABLED;
private LineaTracerCliOptions() {}
/**
@@ -57,7 +47,6 @@ public class LineaTracerCliOptions implements LineaCliOptions {
public static LineaTracerCliOptions fromConfig(final LineaTracerConfiguration config) {
final LineaTracerCliOptions options = create();
options.moduleLimitFilePath = config.moduleLimitsFilePath();
options.limitlessEnabled = config.isLimitless();
return options;
}
@@ -67,11 +56,10 @@ public class LineaTracerCliOptions implements LineaCliOptions {
* @return the Linea factory configuration
*/
@Override
public LineaTracerConfiguration toDomainObject() {
return LineaTracerConfiguration.builder()
public LineaTracerLineLimitConfiguration toDomainObject() {
return LineaTracerLineLimitConfiguration.builder()
.moduleLimitsFilePath(moduleLimitFilePath)
.moduleLimitsMap(ModuleLineCountValidator.createLimitModules(moduleLimitFilePath))
.isLimitless(limitlessEnabled)
.build();
}
@@ -79,7 +67,6 @@ public class LineaTracerCliOptions implements LineaCliOptions {
public String toString() {
return MoreObjects.toStringHelper(this)
.add(MODULE_LIMIT_FILE_PATH, moduleLimitFilePath)
.add(LIMITLESS_ENABLED, limitlessEnabled)
.toString();
}
}

View File

@@ -0,0 +1,20 @@
/*
* Copyright Consensys Software Inc.
*
* This file is dual-licensed under either the MIT license or Apache License 2.0.
* See the LICENSE-MIT and LICENSE-APACHE files in the repository root for details.
*
* SPDX-License-Identifier: MIT OR Apache-2.0
*/
package net.consensys.linea.config;
import java.util.Map;
import lombok.Builder;
import net.consensys.linea.plugins.LineaOptionsConfiguration;
/** The Linea tracer line limit configuration. */
@Builder(toBuilder = true)
public record LineaTracerLineLimitConfiguration(
String moduleLimitsFilePath, Map<String, Integer> moduleLimitsMap)
implements LineaOptionsConfiguration {}

View File

@@ -26,7 +26,7 @@ wiremock = "3.13.0"
logcaptor = "2.11.0"
# Runtime
arithmetization="beta-v3.1-rc5"
arithmetization="beta-v3.1-rc6"
besu = "25.6.0-linea1"
blobCompressor = "1.2.2"
blobShnarfCalculator = "1.2.0"