21 Commits

Author SHA1 Message Date
Fabio Di Fabio
3e185e41f9 Chore: Update Besu artifacts coordinates (#1155)
Signed-off-by: Fabio Di Fabio <fabio.difabio@consensys.net>
2025-06-13 15:18:17 +10:00
kyzooghost
c6550573d3 [Feat] GoogleJavaFormat rules for Spotless (#1109)
* add google javaformat

* add googleJavaSpotless to libs catalog
2025-06-06 18:08:36 +10:00
kyzooghost
361f90d369 [Fix] Remove targetExclude from Java linting config (#1085)
* remove targetExclude

* empty
2025-06-03 19:48:43 +10:00
kyzooghost
cce0126d90 [Feat] Upgrade Spotless from 6.16 to 6.25 (Breaking change) (#1068)
* remove 2nd subproject.spotless

* make linea-sequencer lint command, do lint command of child projects

* bump spotless to 6.25

* bump ktlint to 0.50.0

* run spotlessApply

* fix spotlessCheck for testing-tools:app

* spotless apply for many kt projects

* spotless apply for many kt projects

* set trailing comma to false in .editorconfig for kt files

* add more .editorconfig settings

* Revert "add more .editorconfig settings"

This reverts commit bd9f040f950930a662e8f815c5d504b3b4403703.

* Revert "set trailing comma to false in .editorconfig for kt files"

This reverts commit 4bcc08aa295c4da8d0bef2c75cf3fe621e0a00ae.

* empty
2025-06-03 00:02:21 +10:00
kyzooghost
1eda2498ce [Feat] Merge linea-sequencer plugin repo into monorepo (#1041)
* fix: overflow for modexp arg (#489)

* fix: overflow for modexp arg

* fix: can be longer than 32 Bytes

* Log ZkTracer counters for every produced block (#485)

Signed-off-by: Fabio Di Fabio <fabio.difabio@consensys.net>

* fix(romLex): wrong stack arg for extcodecopy address (#498)

* fix: lookup txndata <-> wcp (#488)

Fixes #486 

Signed-off-by: franklin.delehelle@consensys.net

* fix: continuous tracing plugin start check (#500)

Fixes #499 

Signed-off-by: Daniel Lehrner <daniel.lehrner@consensys.net>
Signed-off-by: franklin.delehelle@consensys.net

* perf: cache tx-specific line counter (#497)

Signed-off-by: franklin.delehelle@consensys.net

* style: update name of prec limits to avoid confusion with old geth name (#506)

* style: update name of prec limits to avoid confusion with old geth name

* style: update module name

* style: update name in .toml files

* style: remove NB

* [MINOR] Add javadoc (#507)

Signed-off-by: Gabriel-Trintinalia <gabriel.trintinalia@consensys.net>

* refactor: group RLPs modules, use retro-compatible module keys (#508)

* feat: enable TxnData constraints (#502)

Co-authored-by: Franklin Delehelle <franklin.delehelle@odena.eu>

* feat: introduce a trivial assembler in `BytecodeCompiler` (#512)

* ci: use Corset releases (#518)

Directly download corset binary release instead of building it from scratch every time.

This should spare 3-5 minutes per test CI cycle.

* Perf/issue 520/update wcp module (#521)

* perf: new spec

* feat: constraint update

* fix: debug

* style: spotless

* fix: constraint

* fix: constraint

* fix: constraint

* fix: debug

* perf: smart slt and sgt

* docs: add reminder for value of slt and sgt + constraints update

* fix: maxCT must take acc5 and acc6 as arg

* style: rename + move stuff to tracing time

* docs(copyright): fix copyright (#525)

Signed-off-by: Gabriel-Trintinalia <gabriel.trintinalia@consensys.net>

* perf: adaptive line count for ADD (#522)


Signed-off-by: Fabio Di Fabio <fabio.difabio@consensys.net>
Co-authored-by: Franklin Delehelle <franklin.delehelle@odena.eu>
Co-authored-by: Fabio Di Fabio <fabio.difabio@consensys.net>

* perf: generalize line count caching (#527)

Signed-off-by: franklin.delehelle@consensys.net

* feat: implement EUC (#526)

* feat: wip

* feat(euc): module implem

* refactor: convert to new module system

* fix: constraints and .toml

* style: spotless

* fix: ras

* fix: toml

* feat: constraints

---------

Co-authored-by: Franklin Delehelle <franklin.delehelle@odena.eu>

* fix: invalid SStore gas computation (#532)

* Upgrade Linea Besu to 24.1.0-SNAPSHOT (#535)

Signed-off-by: Fabio Di Fabio <fabio.difabio@consensys.net>

* Add profitable transaction selector (#530)

* Add profitable transaction selector

Signed-off-by: Fabio Di Fabio <fabio.difabio@consensys.net>

* Set default min margin to 1.0

Co-authored-by: Julien Marchand <julien-marchand@users.noreply.github.com>

* Pass TransactionSelectionContext to all methods of plugin selector

Signed-off-by: Fabio Di Fabio <fabio.difabio@consensys.net>

* log each tx margin at trace level

* Update arithmetization/src/main/java/net/consensys/linea/sequencer/txselection/selectors/ProfitableTransactionSelector.java

Co-authored-by: Roman Vaseev <4833306+Filter94@users.noreply.github.com>

* Add a test for verifying that a prev unprofitable tx is selected after a gas price bump
Signed-off-by: Fabio Di Fabio <fabio.difabio@consensys.net>

* Enforce validation on tx selection parameters that must be positive

Signed-off-by: Fabio Di Fabio <fabio.difabio@consensys.net>

* Acceptance test for profitable tx selector

Signed-off-by: Fabio Di Fabio <fabio.difabio@consensys.net>

---------

Signed-off-by: Fabio Di Fabio <fabio.difabio@consensys.net>
Co-authored-by: Julien Marchand <julien-marchand@users.noreply.github.com>
Co-authored-by: Roman Vaseev <4833306+Filter94@users.noreply.github.com>

* fix: the hub should trace its transactions in the correct order (#538)

* Fix CHANGELOG (#537)

* Bump Linea Besu to 24.1.1-SNAPSHOT (#539)

Signed-off-by: Fabio Di Fabio <fabio.difabio@consensys.net>

* refactor: add @EqualsAndHashCode annotations and remove corresponding methods (#541)

Resolves: #540 
Signed-off-by: Tsvetan Dimitrov <tsvetan.dimitrov@consensys.net>

* fix: semantics of LinkedList (#544)

* Update CHANGELOG (#545)

Signed-off-by: Fabio Di Fabio <fabio.difabio@consensys.net>

* fix: stacked set multiple insertions in a single transaction (#548)

* Update CHANGELOG from v0.1.4-test12 (#550)

Signed-off-by: Fabio Di Fabio <fabio.difabio@consensys.net>

* fix: `StackedSet` semantics (#551)


Co-authored-by: FlorianHuc <florian.huc@gmail.com>

* Update changelog to v0.1.4-test13 (#552)



Signed-off-by: Fabio Di Fabio <fabio.difabio@consensys.net>

* build: update Corset to 9.3.0 (#554)

* Fix log of line counts in case of block limit reached + minor changes (#555)

Signed-off-by: Fabio Di Fabio <fabio.difabio@consensys.net>

* Add the possibility to adjust the tx size in the profitability formula (#562)

Signed-off-by: Fabio Di Fabio <fabio.difabio@consensys.net>

* Upgrade Linea Besu to 24.1.2-SNAPSHOT (#560)

Signed-off-by: Fabio Di Fabio <fabio.difabio@consensys.net>

* tests: drop huge random tests (#563)

Signed-off-by: franklin.delehelle@consensys.net

* feat(modexp-data): implement MODEXP_DATA module (#547)

Resolves: #288 
Signed-off-by: Tsvetan Dimitrov <tsvetan.dimitrov@consensys.net>

* feat: mechanics to capture conflations & replay them as test cases (#561)

Signed-off-by: franklin.delehelle@consensys.net

* perf(EUC): one less column (#570)

* perf(EUC): one less column

* feat(constraint): update

* docs: Add  basic plugins doc (#509)

Signed-off-by: Gabriel-Trintinalia <gabriel.trintinalia@consensys.net>

* Check upfront profitability + Unprofitable txs cache and retry limit (#565)

Signed-off-by: Fabio Di Fabio <fabio.difabio@consensys.net>

* Avoid reprocessing txs that go over line count limit (#571)


Signed-off-by: Fabio Di Fabio <fabio.difabio@consensys.net>

* Update CHANGELOG (#577)

Signed-off-by: Fabio Di Fabio <fabio.difabio@consensys.net>

* Linea estimate gas endpoint (#585)


Signed-off-by: Fabio Di Fabio <fabio.difabio@consensys.net>
Co-authored-by: Pedro Novais <1478752+jpnovais@users.noreply.github.com>

* Fix for NoSuchElementException when not passing the gasPrice param (#587)

Signed-off-by: Fabio Di Fabio <fabio.difabio@consensys.net>

* Update CHANGELOG for 0.1.4-test18-RC2 (#588)

Signed-off-by: Fabio Di Fabio <fabio.difabio@consensys.net>

* Use compressed tx size also when selecting txs from block creation (#590)

Signed-off-by: Fabio Di Fabio <fabio.difabio@consensys.net>

* Update CHANGELOG for release 0.1.4-test18-RC3 (#594)

Signed-off-by: Fabio Di Fabio <fabio.difabio@consensys.net>

* fix: check that spilling and limits file contain all counted modules (#592)

Fixes #511

Signed-off-by: franklin.delehelle@consensys.net

* Avoid returing an estimated priority fee that is less than the min gas price (#598)

Signed-off-by: Fabio Di Fabio <fabio.difabio@consensys.net>

* Get L2L1 settings from CLI options (#591)

Signed-off-by franklin.delehelle@consensys.net
Co-authored-by: Fabio Di Fabio <fabio.difabio@consensys.net>

* feat: add a replay capture script (#600)

Signed-off-by franklin.delehelle@consensys.net

* Update CHANGELOG for v0.1.4-test18 (#599)

Signed-off-by: Fabio Di Fabio <fabio.difabio@consensys.net>

* Upgrade Linea-Besu to 24.2.0-SNAPSHOT (#602)

Signed-off-by: Fabio Di Fabio <fabio.difabio@consensys.net>

* move compress native into plugin repo (#604)

* move compress native into plugin repo

Signed-off-by: stefan.pingel@consensys.net <stefan.pingel@consensys.net>

* spotless and add a missing header

Signed-off-by: stefan.pingel@consensys.net <stefan.pingel@consensys.net>

* some cleanup

Signed-off-by: stefan.pingel@consensys.net <stefan.pingel@consensys.net>

---------

Signed-off-by: stefan.pingel@consensys.net <stefan.pingel@consensys.net>

* Add compression (#605)

Signed-off-by: stefan.pingel@consensys.net <stefan.pingel@consensys.net>

* make use of compression in profitability calculation

Co-authored-by: Fabio Di Fabio <fabio.difabio@consensys.net>

* Update for the new bad block manager (#607)

Signed-off-by: Fabio Di Fabio <fabio.difabio@consensys.net>

* Update CHANGELOG for v0.1.4-test20 (#610)

Signed-off-by: Fabio Di Fabio <fabio.difabio@consensys.net>

* fix: capture SSTORE-touched storage slots for correct gas computations (#606)

* build: make the build script portable, explicit dependency on Go & GCC, test libcompress build (#621)

Signed-off-by franklin.delehelle@consensys.net

* Update after the refactor of transaction selection service (#626)

Signed-off-by: Fabio Di Fabio <fabio.difabio@consensys.net>

* Use the right classloader to load the native library (#628)

Signed-off-by: Fabio Di Fabio <fabio.difabio@consensys.net>

* Update CHANGELOG for v0.1.4-test21 (#630)

Signed-off-by: Fabio Di Fabio <fabio.difabio@consensys.net>

* linea_estimateGas compatibility switch (#634)

Signed-off-by: Fabio Di Fabio <fabio.difabio@consensys.net>
Co-authored-by: Sally MacFarlane <macfarla.github@gmail.com>

* Refactor profitability options and calculator + gas price adjustment option (#638)

Signed-off-by: Fabio Di Fabio <fabio.difabio@consensys.net>

* Update code to latest plugin API (#640)

Signed-off-by: Fabio Di Fabio <fabio.difabio@consensys.net>

* Txpool profitability check (#603)


Signed-off-by: Fabio Di Fabio <fabio.difabio@consensys.net>

* Fix price adjustment in profitability formula (#642)

Signed-off-by: Fabio Di Fabio <fabio.difabio@consensys.net>

* Update CHANGELOG for v0.1.4-test22 (#641)

Signed-off-by: Fabio Di Fabio <fabio.difabio@consensys.net>

* Build native lib for Windows (#645)

Signed-off-by: Fabio Di Fabio <fabio.difabio@consensys.net>

* linea_estimateGas compatibility mode multiplier (#646)

Signed-off-by: Fabio Di Fabio <fabio.difabio@consensys.net>

* Update CHANGELOG for v0.1.4-test23 (#647)

Signed-off-by: Fabio Di Fabio <fabio.difabio@consensys.net>

* On Windows also build Linux native lib so it can run on WSL (#651)

Signed-off-by: Fabio Di Fabio <fabio.difabio@consensys.net>

* Improve linea_estimateGas error response (#650)

* Improve linea_estimateGas error response

Signed-off-by: Fabio Di Fabio <fabio.difabio@consensys.net>

* Update arithmetization/src/main/java/net/consensys/linea/rpc/linea/LineaEstimateGas.java

Co-authored-by: Sally MacFarlane <macfarla.github@gmail.com>

---------

Signed-off-by: Fabio Di Fabio <fabio.difabio@consensys.net>
Co-authored-by: Sally MacFarlane <macfarla.github@gmail.com>

* Update CHANGELOG for v0.1.4-test24 (#652)

Signed-off-by: Fabio Di Fabio <fabio.difabio@consensys.net>

* Rename to TransactionPoolValidator to make it clear it only apply to txpool (#654)

Signed-off-by: Fabio Di Fabio <fabio.difabio@consensys.net>

* feature: disable arithmetization tests (#4)

Signed-off-by: Gabriel-Trintinalia <gabriel.trintinalia@consensys.net>

* Extend Module Line Count Verification to `linea_estimateGas` RPC Method (#1)

Signed-off-by: Gabriel-Trintinalia <gabriel.trintinalia@consensys.net>

* In the txpool, reject a tx if its simulation fails (#2)


Signed-off-by: Gabriel-Trintinalia <gabriel.trintinalia@consensys.net>
Signed-off-by: Fabio Di Fabio <fabio.difabio@consensys.net>
Co-authored-by: Gabriel-Trintinalia <gabriel.trintinalia@consensys.net>

* Update Linea Besu (#5)

* feature: Add module limit verification to linea_estimateGas

Signed-off-by: Gabriel-Trintinalia <gabriel.trintinalia@consensys.net>

* feature: Add module limit verification to linea_estimateGas

Signed-off-by: Gabriel-Trintinalia <gabriel.trintinalia@consensys.net>

* feature: Add module limit verification to linea_estimateGas

Signed-off-by: Gabriel-Trintinalia <gabriel.trintinalia@consensys.net>

* feature: Add module limit verification to linea_estimateGas

Signed-off-by: Gabriel-Trintinalia <gabriel.trintinalia@consensys.net>

* feature: Add module limit verification to linea_estimateGas

Signed-off-by: Gabriel-Trintinalia <gabriel.trintinalia@consensys.net>

* feature: PR suggestion

Signed-off-by: Gabriel-Trintinalia <gabriel.trintinalia@consensys.net>

* feature: Add unit test

Signed-off-by: Gabriel-Trintinalia <gabriel.trintinalia@consensys.net>

* feature: Fix logging

Signed-off-by: Gabriel-Trintinalia <gabriel.trintinalia@consensys.net>

* Reject a tx, sent via eth_sendRawTransaction, if its simulation fails

Signed-off-by: Fabio Di Fabio <fabio.difabio@consensys.net>

* remove unused method

Signed-off-by: Fabio Di Fabio <fabio.difabio@consensys.net>

* Apply suggestions from code review

Signed-off-by: Fabio Di Fabio <fabio.difabio@consensys.net>

* Fix test flakyness

Signed-off-by: Fabio Di Fabio <fabio.difabio@consensys.net>

* Update Linea Besu version

Signed-off-by: Fabio Di Fabio <fabio.difabio@consensys.net>

---------

Signed-off-by: Gabriel-Trintinalia <gabriel.trintinalia@consensys.net>
Signed-off-by: Fabio Di Fabio <fabio.difabio@consensys.net>
Co-authored-by: Gabriel-Trintinalia <gabriel.trintinalia@consensys.net>

* Build native lib for arm64 (#8)


Signed-off-by: Fabio Di Fabio <fabio.difabio@consensys.net>

* Improve ZkTracer initialization time  (#11)

Improve ZkTracer initialization time by doing only once Opcodes and spilling loading from disk resources

Signed-off-by: Ameziane H <ameziane.hamlat@consensys.net>

* Add more log to txpool simulation validator (#12)

Signed-off-by: Fabio Di Fabio <fabio.difabio@consensys.net>

* Update CHANGELOG for 0.1.4-test25 and 0.1.4-test26 (#9)

Signed-off-by: Fabio Di Fabio <fabio.difabio@consensys.net>

* Calculate line count only once in linea_estimateGas (#13)

Signed-off-by: Fabio Di Fabio <fabio.difabio@consensys.net>

* Update CHANGELOG for v0.1.4-test27 release (#14)

Signed-off-by: Fabio Di Fabio <fabio.difabio@consensys.net>

* Extra data based pricing (#10)


Signed-off-by: Fabio Di Fabio <fabio.difabio@consensys.net>

* Remove check that minGasPrice need to decrease to retry unprofitable tx (#17)

Signed-off-by: Fabio Di Fabio <fabio.difabio@consensys.net>

* Update CHANGELOG for v0.1.4-test28 release (#16)

* Update CHANGELOG for v0.1.4-test27 release

Signed-off-by: Fabio Di Fabio <fabio.difabio@consensys.net>

* Update CHANGELOG for v0.1.4-test28 release

Signed-off-by: Fabio Di Fabio <fabio.difabio@consensys.net>

* update CHANGELOG

Signed-off-by: Fabio Di Fabio <fabio.difabio@consensys.net>

---------

Signed-off-by: Fabio Di Fabio <fabio.difabio@consensys.net>

* Update Java, Gradle and dependencies (#20)

* Update Gradle and dependencies

Signed-off-by: Fabio Di Fabio <fabio.difabio@consensys.net>

* Upgrade to Java 21

Signed-off-by: Fabio Di Fabio <fabio.difabio@consensys.net>

---------

Signed-off-by: Fabio Di Fabio <fabio.difabio@consensys.net>

* Update README.md (#21)

Fixed typos in the documentation:
   - Changed "relating" to "related" for correct usage.
   - Corrected "build" to "built" for proper past tense.
   - Changed "than" to "then" for proper conditional usage.

* Update besu to 24.6-develop-711dff7 (#18)

* Update besu to 24.6-develop-711dff7

* update overridden traceEndTransaction methods

* Remove arthimization code and include it as dependency (#15)

Resolves: #3 

Signed-off-by: Fabio Di Fabio <fabio.difabio@consensys.net>
Co-authored-by: Tsvetan Dimitrov <tsvetan.dimitrov@consensys.net>
Co-authored-by: Gabriel-Trintinalia <gabriel.trintinalia@consensys.net>

* Update Linea Besu dependecy to 24.6-develop-752aeff (#22)

Signed-off-by: Fabio Di Fabio <fabio.difabio@consensys.net>

* Implement linea_setExtraData (#19)

* Implement linea_setExtraData

Signed-off-by: Fabio Di Fabio <fabio.difabio@consensys.net>

* Fix and test

Signed-off-by: Fabio Di Fabio <fabio.difabio@consensys.net>

* Apply suggestions from code review

Signed-off-by: Fabio Di Fabio <fabio.difabio@consensys.net>

* Apply suggestions from code review

Signed-off-by: Fabio Di Fabio <fabio.difabio@consensys.net>

---------

Signed-off-by: Fabio Di Fabio <fabio.difabio@consensys.net>

* Set plugin-linea-tx-pool-simulation-check-api-enabled=false by default (#23)

Signed-off-by: Fabio Di Fabio <fabio.difabio@consensys.net>

* Update documentation (#24)

* Update documentation

Signed-off-by: Fabio Di Fabio <fabio.difabio@consensys.net>

* minor edits

---------

Signed-off-by: Fabio Di Fabio <fabio.difabio@consensys.net>
Co-authored-by: Sally MacFarlane <macfarla.github@gmail.com>

* Re-add dependencies to the jar and change duplication strategy (#28)

Re-add dependencies to the jar and change duplication strategy

* Align linea_estimateGas behavior to geth (#25)

Signed-off-by: Fabio Di Fabio <fabio.difabio@consensys.net>

* Update arithmetizationVersion to 0.1.5-rc3 (#29)

Signed-off-by: Fabio Di Fabio <fabio.difabio@consensys.net>

* Remove leftover of the repo split (#27)

Signed-off-by: Fabio Di Fabio <fabio.difabio@consensys.net>

* Update CHANGELOG for Release v0.1.5-test1 and fix artifact publishing (#32)

Signed-off-by: Fabio Di Fabio <fabio.difabio@consensys.net>

* Include baseFee in the calculation of a profitable tx (#30)

Signed-off-by: Fabio Di Fabio <fabio.difabio@consensys.net>

* update arithmetization to 0.1.5-rc4 (#36)

* update arithmetization to 1.5.0-rc4

Signed-off-by: Sally MacFarlane <macfarla.github@gmail.com>

* update module limits files

Signed-off-by: Sally MacFarlane <macfarla.github@gmail.com>

* ordering and add missing modules

Signed-off-by: Sally MacFarlane <macfarla.github@gmail.com>

* added missing modules blake_modexp_data and shakira_data and gas

Signed-off-by: Sally MacFarlane <macfarla.github@gmail.com>

* rename rlp txnrcpt

Signed-off-by: Sally MacFarlane <macfarla.github@gmail.com>

* Update module limit files and fix test

Signed-off-by: Gabriel-Trintinalia <gabriel.trintinalia@consensys.net>

---------

Signed-off-by: Sally MacFarlane <macfarla.github@gmail.com>
Signed-off-by: Gabriel-Trintinalia <gabriel.trintinalia@consensys.net>
Co-authored-by: Gabriel-Trintinalia <gabriel.trintinalia@consensys.net>

* fix: patch inconsistencies in module line count limits (#41)


Signed-off-by: Tsvetan Dimitrov <tsvetan.dimitrov@consensys.net>

* fix typos (#40)

* s/ConsenSys/Consensys (#37)

Signed-off-by: Sally MacFarlane <macfarla.github@gmail.com>

* Improve error log when setting pricing conf via extra data fails (#44)

* Improve error log when setting pricing conf via extra data fails

Signed-off-by: Fabio Di Fabio <fabio.difabio@consensys.net>

* Documentation using javadoc (#33)

* Documentation using javadoc

Signed-off-by: Fabio Di Fabio <fabio.difabio@consensys.net>

* Apply suggestions from code review

* Update Javadoc

Signed-off-by: Fabio Di Fabio <fabio.difabio@consensys.net>

---------

Signed-off-by: Fabio Di Fabio <fabio.difabio@consensys.net>

* Fix and enable unit tests in CI (#45)

Signed-off-by: Fabio Di Fabio <fabio.difabio@consensys.net>

* Remove the check that profitable priority fee must be greater than minGasPrice (#49)

Signed-off-by: Fabio Di Fabio <fabio.difabio@consensys.net>

* Option to disable setting minGasPrice via extra data (#50)

Signed-off-by: Fabio Di Fabio <fabio.difabio@consensys.net>

* feat: bump linea-arithmetization version to 0.2.0-rc4 (#47)

* feat: bump linea-arithmetization version to 0.2.0-rc1

* Set arithmetizationVersion=0.2.0-rc2

Signed-off-by: Fabio Di Fabio <fabio.difabio@consensys.net>

* Avoid including sequencer twice when running acceptance tests

Signed-off-by: Fabio Di Fabio <fabio.difabio@consensys.net>

* Use shared options from arithmization and separate private options

Signed-off-by: Fabio Di Fabio <fabio.difabio@consensys.net>

* Set arithmetizationVersion=0.2.0-rc3

Signed-off-by: Fabio Di Fabio <fabio.difabio@consensys.net>

* Set a value for plugin-linea-conflated-trace-generation-traces-output-path

Signed-off-by: Fabio Di Fabio <fabio.difabio@consensys.net>

* Update to the latest version of the shared config

Signed-off-by: Fabio Di Fabio <fabio.difabio@consensys.net>

* Set arithmetizationVersion=0.2.0-rc4

Signed-off-by: Fabio Di Fabio <fabio.difabio@consensys.net>

---------

Signed-off-by: Fabio Di Fabio <fabio.difabio@consensys.net>
Co-authored-by: Fabio Di Fabio <fabio.difabio@consensys.net>

* Update CHANGELOG for release 0.2.0-rc4.1 (#52)

Signed-off-by: Fabio Di Fabio <fabio.difabio@consensys.net>

* Set version to 0.2.0-SNAPSHOT (#53)

Signed-off-by: Fabio Di Fabio <fabio.difabio@consensys.net>

* Change artithmetization dependency version to 0.2.0-rc5 (#55)

Change artithmetization dependency version to 0.2.0-rc5

Signed-off-by: Ameziane H <ameziane.hamlat@consensys.net>

* Set besuVersion=24.7-develop-f812936 and arithmetizationVersion=0.3.0-rc1  (#54)

* Set besuVersion=24.7-develop-f812936

Signed-off-by: Fabio Di Fabio <fabio.difabio@consensys.net>

* Set arithmetizationVersion=0.3.0-rc1

Signed-off-by: Fabio Di Fabio <fabio.difabio@consensys.net>

---------

Signed-off-by: Fabio Di Fabio <fabio.difabio@consensys.net>

* Fix `linea_estimateGas` when called with `gasPrice` set (#58)

* Fix `linea_estimateGas` when called with `gasPrice` set

Signed-off-by: Fabio Di Fabio <fabio.difabio@consensys.net>

* Add test

Signed-off-by: Fabio Di Fabio <fabio.difabio@consensys.net>

---------

Signed-off-by: Fabio Di Fabio <fabio.difabio@consensys.net>

* Update CHANGELOG for v0.3.0-rc1.1 (#59)

Signed-off-by: Fabio Di Fabio <fabio.difabio@consensys.net>

* docs:extends userdocs (#57)

* docs:extends userdocs

* docs:extends userdocs

* Update README.md

repo name change & update of descriptions

* Update README.md

updated description

* Update README.md

updated description

* Update README.md

adds verbose description

* Update README.md

moving this repo to top

* Update README.md

moves this repo to top

* Update README.md

---------

Co-authored-by: Julien Marchand <julien-marchand@users.noreply.github.com>

* docs: retires zk-EVM (#61)

* Update linea besu version 24.7 develop c0029e6 (#62)

* Set besuVersion=24.7-develop-f812936

Signed-off-by: Fabio Di Fabio <fabio.difabio@consensys.net>

* set besuVersion=24.7-develop-5622666

Signed-off-by: Fabio Di Fabio <fabio.difabio@consensys.net>

* Update Linea-Besu to version 24.7-develop-c0029e6

Signed-off-by: Fabio Di Fabio <fabio.difabio@consensys.net>

* Workaround fof DNSJava bug

Signed-off-by: Fabio Di Fabio <fabio.difabio@consensys.net>

---------

Signed-off-by: Fabio Di Fabio <fabio.difabio@consensys.net>

* Gradle cleanup and simplification (#63)

Signed-off-by: Fabio Di Fabio <fabio.difabio@consensys.net>

* Gradle: replace license check plugin (#65)

Signed-off-by: Fabio Di Fabio <fabio.difabio@consensys.net>

* Improve linea_estimateGas error handling (#48)

* improve linea-estimateGas error handling

Signed-off-by: stefan.pingel@consensys.net <stefan.pingel@consensys.net>

---------

Signed-off-by: stefan.pingel@consensys.net <stefan.pingel@consensys.net>
Co-authored-by: Sally MacFarlane <macfarla.github@gmail.com>

* Fix: postpone registration of plugin validator factory when blockchain service is fully inited (#67)

Signed-off-by: Fabio Di Fabio <fabio.difabio@consensys.net>

* Update Linea-Besu and Tracer dependencies (#70)

Signed-off-by: Fabio Di Fabio <fabio.difabio@consensys.net>

* Set besuVersion=24.9-delivery32 and arithmetizationVersion=0.6.0-rc1 (#71)

* Set besuVersion=24.8-develop-915fcb01 and arithmetizationVersion=0.5.3-beta

Signed-off-by: Fabio Di Fabio <fabio.difabio@consensys.net>

* Make it easier to reproduce and debug the failing ATs

Signed-off-by: Fabio Di Fabio <fabio.difabio@consensys.net>

* fix ATs

Signed-off-by: Fabio Di Fabio <fabio.difabio@consensys.net>

* Set besuVersion=24.9-delivery32 and arithmetizationVersion=0.6.0-rc1

Signed-off-by: Fabio Di Fabio <fabio.difabio@consensys.net>

* Align dependencies with Besu

Signed-off-by: Fabio Di Fabio <fabio.difabio@consensys.net>

---------

Signed-off-by: Fabio Di Fabio <fabio.difabio@consensys.net>

* Split rpc methods into different plugins (#73)

Signed-off-by: Gabriel-Trintinalia <gabriel.trintinalia@consensys.net>

* Update CHANGELOG for release 0.6.0-rc1.1 (#74)

Signed-off-by: Fabio Di Fabio <fabio.difabio@consensys.net>

* feat: Report discarded transactions to external service (#69)

CLI option: --plugin-linea-rejected-tx-endpoint=<URI>

This feature enables reporting of rejected transactions to an external server via JSON-RPC calls when the above CLI option is specified with a valid URI.

* rename Hyperledger Besu to just Besu (#75)

Signed-off-by: Sally MacFarlane <macfarla.github@gmail.com>

* Log the transaction hash in the module limit warning (#76)

Signed-off-by: Simon Dudley <simon.dudley@consensys.net>

* Update arithmetization dependency version (#77)

Signed-off-by: Ameziane H <ameziane.hamlat@consensys.net>

* Update arithmetization dependency version (#79)

Signed-off-by: Ameziane H <ameziane.hamlat@consensys.net>

* Improve SimulationValidation Trace Logs (#78)

- Trace log for transaction details when module over limit
- Only print simulation disabled log when it is actually disabled

Signed-off-by: Simon Dudley <simon.dudley@consensys.net>

* Build macOS native lib (#80)

Signed-off-by: Fabio Di Fabio <fabio.difabio@consensys.net>

* removed references to junit4 (#81)

* removed references to junit4

Signed-off-by: Sally MacFarlane <macfarla.github@gmail.com>

* formatting

Signed-off-by: Sally MacFarlane <macfarla.github@gmail.com>

* revert failing test

Signed-off-by: Sally MacFarlane <macfarla.github@gmail.com>

---------

Signed-off-by: Sally MacFarlane <macfarla.github@gmail.com>

* update actions to node20 versions (#83)

* update actions to node20 versions

Signed-off-by: Sally MacFarlane <macfarla.github@gmail.com>

* update gradlewrapper action

Signed-off-by: Sally MacFarlane <macfarla.github@gmail.com>

---------

Signed-off-by: Sally MacFarlane <macfarla.github@gmail.com>
Co-authored-by: Fabio Di Fabio <fabio.difabio@consensys.net>

* Update arithmetization dependency version (#84)

* Update arithmetization dependency version to 0.6.0-rc6.
* Fix build issues.

Signed-off-by: Ameziane H <ameziane.hamlat@consensys.net>

* Calculate the gas limit upper bound for the sender in linea_estimateGas (#86)

Signed-off-by: Fabio Di Fabio <fabio.difabio@consensys.net>

* Fix a config key name clash with the tracer (#87)

Signed-off-by: Fabio Di Fabio <fabio.difabio@consensys.net>

* Update tracer (#88)

Signed-off-by: Fabio Di Fabio <fabio.difabio@consensys.net>

* Set besuVersion=24.9-delivery33 and arithmetizationVersion=0.7.0-rc1 (#89)

Signed-off-by: Fabio Di Fabio <fabio.difabio@consensys.net>

* Set besuVersion=24.10-delivery34 and arithmetizationVersion=0.8.0-rc1 (#90)

Signed-off-by: Fabio Di Fabio <fabio.difabio@consensys.net>

* Use required plugins in ATs to not register tracer plugins (#91)

Signed-off-by: Fabio Di Fabio <fabio.difabio@consensys.net>

* feat: Report rejected transactions to an external service for tx pool validators used by LineaTransactionPoolValidatorPlugin (#85)

* Extract reporting endpoint URI cli option
* Linea Transaction Pool Validator to report rejected tx
* Linea node type and refactored request builder
* Update unit tests to use refactored generateSaveRejectedTxJsonRpc
* Use transactionSelectionResult.toString in LineaTransactionSelector
* Use Mutually exclusive = false for co-dep cli options
* Add unit test for cli options. Change endpoint type to URL
* JsonRpcManager - Use plugin identifier to create sub directories to store rpc calls
* JsonRpcManager convert submitNewJsonRpcCall to do async chaining before calling submitJsonRpcCall
* Add rej tx reporting to all tx pool validators

* fix: Validate rejected-tx cli options without ArgGroup (#95)

Removed PicoCli ArgGroup validation as it didn't work in Besu with config file parsing which uses DefaultValueProvider.

Instead, validate rejected tx cli options in the toDomainObject method. Enforce the rule that node type is required when endpoint is specified. If only node type is specified, we need no custom validation as we are only enabling reporting when endpoint is specified.

* Provide `chainId` to `createZkTracer(...)` (#93)

* fix: provide chainId to createZkTracer(...)

* fix: bumped arithmetization version to 0.8.0-rc2

* Make sure chainId is present and positive

Signed-off-by: Fabio Di Fabio <fabio.difabio@consensys.net>

* Set arithmetizationVersion=0.8.0-rc4

Signed-off-by: Fabio Di Fabio <fabio.difabio@consensys.net>

---------

Signed-off-by: Fabio Di Fabio <fabio.difabio@consensys.net>
Co-authored-by: Fabio Di Fabio <fabio.difabio@consensys.net>

* Fix for required chainId check (#96)

Signed-off-by: Fabio Di Fabio <fabio.difabio@consensys.net>

* docs: Update plugins doc with reporting rejected tx cli options (#97)

Update plugins doc with reporting rejected transaction cli options

* added missing javadoc comments (#98)

Signed-off-by: Sally MacFarlane <macfarla.github@gmail.com>

* Rename minGasPrice to ethGasPrice from the extraData and track its value (#103)

* Rename minGasPrice to ethGasPrice from the extraData.

Signed-off-by: Ade Lucas <ade.lucas@consensys.net>

* Expose metrics for profitability extra data field (#104)

Signed-off-by: Fabio Di Fabio <fabio.difabio@consensys.net>

* Fix: MetricSystem is only available at start phase (#106)

Signed-off-by: Fabio Di Fabio <fabio.difabio@consensys.net>

* Wait for the initial sync phase to complete before processing extra data (#105)

Signed-off-by: Fabio Di Fabio <fabio.difabio@consensys.net>

* syntax suggestions (#100)

Signed-off-by: Sally MacFarlane <macfarla.github@gmail.com>

* log plugin name at registration; remove override of getName() method (#99)

* log plugin name at registration; remove override of getName() method

Signed-off-by: Sally MacFarlane <macfarla.github@gmail.com>

* logging

Signed-off-by: Sally MacFarlane <macfarla.github@gmail.com>

---------

Signed-off-by: Sally MacFarlane <macfarla.github@gmail.com>

* Accept txs that revert in eth_sendRawTransaction when simulation check is enabled (#108)

Signed-off-by: Fabio Di Fabio <fabio.difabio@consensys.net>

* update linea-besu version (#110)

Signed-off-by: Sally MacFarlane <macfarla.github@gmail.com>

* feat: Rejected transaction reporting due to trace line limits (#111)

- Rejected transaction reporting due to trace line limits
- Remove other rejected transactions reporting
- test fixes

* Update Linea Besu and Tracer (#112)

Signed-off-by: Fabio Di Fabio <fabio.difabio@consensys.net>

* 3D pricing metrics (#107)

* Introduce profitablePriorityFeeCache

Signed-off-by: Fabio Di Fabio <fabio.difabio@consensys.net>

* Add block listener and transaction selector handler

- Introduce block listener in LineaTransactionSelectorPlugin to handle transaction profitability
- Integrate transaction selector handler for processing transactions from the latest block
- Extract profitability calculation into a separate method for clarity and maintainability

Signed-off-by: Ade Lucas <ade.lucas@consensys.net>

* Removed unused import

Signed-off-by: Ade Lucas <ade.lucas@consensys.net>

* Move profitability metrics during tx selection in a dedicated class

Signed-off-by: Fabio Di Fabio <fabio.difabio@consensys.net>

* Improve the log of the future metric

Signed-off-by: Fabio Di Fabio <fabio.difabio@consensys.net>

* Organize the profitability cache by block

Signed-off-by: Fabio Di Fabio <fabio.difabio@consensys.net>

* Refctor to respect the requirement

Signed-off-by: Fabio Di Fabio <fabio.difabio@consensys.net>

* Add block added listener and handler into LineaTransactionPoolValidatorPlugin

- Implement: Node's perception on Profitability levels of TxPool's contents (lo, hi, avg of TransactionProfitabilityCalculator.profitablePriorityFeePerGas(transaction) / transaction.priorityFeePerGas).

Signed-off-by: Ade Lucas <ade.lucas@consensys.net>

* Add block added listener and handler into LineaTransactionPoolValidatorPlugin

- Implement: Node's perception on Profitability levels of TxPool's contents (lo, hi, avg of TransactionProfitabilityCalculator.profitablePriorityFeePerGas(transaction) / transaction.priorityFeePerGas).

Signed-off-by: Ade Lucas <ade.lucas@consensys.net>

* Add missing import in ValidatorProfitabilityMetrics.java

Signed-off-by: Ade Lucas <ade.lucas@consensys.net>

* Use histogram and txpool get content api

Signed-off-by: Fabio Di Fabio <fabio.difabio@consensys.net>

* Add min and max metrics to selection profitability metrics

Signed-off-by: Fabio Di Fabio <fabio.difabio@consensys.net>

* Deleted ValidatorProfitabilityMetrics.java as part of 3D pricing metrics work

Signed-off-by: Ade Lucas <ade.lucas@consensys.net>

* Run './gradlew :sequencer:spotlessApply' to fix ProfitableTransactionSelectorTest.java

Signed-off-by: Ade Lucas <ade.lucas@consensys.net>

* Restore non-local dev settings for besuVersion in gradle.properties.

Signed-off-by: Ade Lucas <ade.lucas@consensys.net>

* Generalize histogram metrics in a single class and check for category enabled

Signed-off-by: Fabio Di Fabio <fabio.difabio@consensys.net>

* Make profitability histogram metric buckets configurable

Signed-off-by: Fabio Di Fabio <fabio.difabio@consensys.net>

* Update versions

Signed-off-by: Fabio Di Fabio <fabio.difabio@consensys.net>

* Fix tests

Signed-off-by: Fabio Di Fabio <fabio.difabio@consensys.net>

* Apply suggestions from code review

Signed-off-by: Fabio Di Fabio <fabio.difabio@consensys.net>

* Update DEFAULT_PROFITABILITY_METRICS_BUCKETS

Signed-off-by: Fabio Di Fabio <fabio.difabio@consensys.net>

* Update Linea Besu and Tracer

Signed-off-by: Fabio Di Fabio <fabio.difabio@consensys.net>

---------

Signed-off-by: Fabio Di Fabio <fabio.difabio@consensys.net>
Signed-off-by: Ade Lucas <ade.lucas@consensys.net>
Signed-off-by: Ade Lucas <37906710+cloudspores@users.noreply.github.com>
Co-authored-by: Fabio Di Fabio <fabio.difabio@consensys.net>

* Support state overrides in `linea_estimateGas` (#113)

Signed-off-by: Fabio Di Fabio <fabio.difabio@consensys.net>

* Make `linea_estimateGas` to simulate tx on pending block (#116)

Signed-off-by: Fabio Di Fabio <fabio.difabio@consensys.net>

* update to 24.12 besu (#117)

* update to 24.12 besu

Signed-off-by: Sally MacFarlane <macfarla.github@gmail.com>

---------

Signed-off-by: Sally MacFarlane <macfarla.github@gmail.com>

* add trivial change clause to contributing md (#119)

Signed-off-by: Sally MacFarlane <macfarla.github@gmail.com>

* Use Besu BOM (#121)


Signed-off-by: Fabio Di Fabio <fabio.difabio@consensys.net>

* Workaround for overwritten Tracer MANIFEST.MF (#122)

Signed-off-by: Fabio Di Fabio <fabio.difabio@consensys.net>

* Workaround for overwritten Tracer MANIFEST.MF (part 2) (#123)

Signed-off-by: Fabio Di Fabio <fabio.difabio@consensys.net>

* Support for chainId and EIP-1559 fee market in linea_estimateGas (#94)

Signed-off-by: Fabio Di Fabio <fabio.difabio@consensys.net>

* Update Linea Besu to delivery41 (#125)

Signed-off-by: Fabio Di Fabio <fabio.difabio@consensys.net>

* Fix linea_estimateGas not allowing exceeding balance during simulation (#126)

Signed-off-by: Fabio Di Fabio <fabio.difabio@consensys.net>

* log4j: replace status (deprecated) with level (#128)

Signed-off-by: Sally MacFarlane <macfarla.github@gmail.com>

* Fix the log of the profitability selector in the pre process phase (#129)

Signed-off-by: Fabio Di Fabio <fabio.difabio@consensys.net>

* Set besuVersion=25.1-develop-921c726 and arithmetizationVersion=beta-v1.2.0-rc3 (#130)

* Set besuVersion=25.1-develop-448d1a9 and arithmetizationVersion=beta-v1.2.0-rc2

Signed-off-by: Fabio Di Fabio <fabio.difabio@consensys.net>

* Get the nonce of the sender in `linea_estimateGas` if not provided

Signed-off-by: Fabio Di Fabio <fabio.difabio@consensys.net>

* Use simulatePendingBlockHeader

Signed-off-by: Fabio Di Fabio <fabio.difabio@consensys.net>

* Allow future nonce when simulating txs

Signed-off-by: Fabio Di Fabio <fabio.difabio@consensys.net>

* update Linea Besu

Signed-off-by: Fabio Di Fabio <fabio.difabio@consensys.net>

---------

Signed-off-by: Fabio Di Fabio <fabio.difabio@consensys.net>

* Remove uber jar (#124)


Signed-off-by: Fabio Di Fabio <fabio.difabio@consensys.net>

* Fix release workflow (#137)

Signed-off-by: Fabio Di Fabio <fabio.difabio@consensys.net>

* AT passing nonce to linea_estimateGas (#138)

Signed-off-by: Fabio Di Fabio <fabio.difabio@consensys.net>

* update limits for blockhash, blockdata and blake prc (#133)

Signed-off-by: F Bojarski <ceciestunepoubelle@protonmail.ch>
Co-authored-by: Fabio Di Fabio <fabio.difabio@consensys.net>

* Update Linea Besu to 25.2-delivery48 (#141)

Signed-off-by: Fabio Di Fabio <fabio.difabio@consensys.net>

* Support stateful block tx selectors (#140)

* Update Linea Besu to 25.2-delivery48

Signed-off-by: Fabio Di Fabio <fabio.difabio@consensys.net>

* Update tx selectors to use selector state

Signed-off-by: Fabio Di Fabio <fabio.difabio@consensys.net>

* Adapt code to new TransactionEvaluationContext

Signed-off-by: Fabio Di Fabio <fabio.difabio@consensys.net>

* Linea Besu to 25.2-delivery49

Signed-off-by: Fabio Di Fabio <fabio.difabio@consensys.net>

* Apply suggestions from code review

Co-authored-by: Sally MacFarlane <macfarla.github@gmail.com>
Signed-off-by: Fabio Di Fabio <fabio.difabio@consensys.net>

---------

Signed-off-by: Fabio Di Fabio <fabio.difabio@consensys.net>
Co-authored-by: Sally MacFarlane <macfarla.github@gmail.com>

* Linea send bundle (#142)

* initial commit for linea_sendBundle, bundle pool, and selector.
outstanding work on creating a shared singleton bundle pool before we can smoke test the endpoint.

Signed-off-by: garyschulte <garyschulte@gmail.com>

* refactor a bit to use BlockTransactionSelector to inject transactions

Signed-off-by: garyschulte <garyschulte@gmail.com>

* missing spdx headers

Signed-off-by: garyschulte <garyschulte@gmail.com>

* fix mock

Signed-off-by: garyschulte <garyschulte@gmail.com>

* use record types for bundle params, wire up checks and pool rpc test

Signed-off-by: garyschulte <garyschulte@gmail.com>

* add linea_cancelBundle, wire up replacement by uuid

Signed-off-by: garyschulte <garyschulte@gmail.com>

* spdx again

Signed-off-by: garyschulte <garyschulte@gmail.com>

* builds against 25.1-bundles ; will fail build against 25.1-delivery45

Signed-off-by: garyschulte <garyschulte@gmail.com>

* add blockAdded listener to cull bundle pool

Signed-off-by: garyschulte <garyschulte@gmail.com>

* add bundle block gas limits

Signed-off-by: garyschulte <garyschulte@gmail.com>

* spdx header again

Signed-off-by: garyschulte <garyschulte@gmail.com>

* resolve wiring issues, add bundle eval cache 'safety'

Signed-off-by: garyschulte <garyschulte@gmail.com>

* add bundle selector short circuit for non-bundle tx, fix minor serialization issues

Signed-off-by: garyschulte <garyschulte@gmail.com>

* Update tx selectors to use selector state

Signed-off-by: Fabio Di Fabio <fabio.difabio@consensys.net>

* Adapt code to new TransactionEvaluationContext

Signed-off-by: Fabio Di Fabio <fabio.difabio@consensys.net>

* First sendBundle ATs

Signed-off-by: Fabio Di Fabio <fabio.difabio@consensys.net>

* Move shared services in AbstractLineaSharedPrivateOptionsPlugin

also to simplify assume that the bundle pool is always available.
Signed-off-by: Fabio Di Fabio <fabio.difabio@consensys.net>

* Use PendingTransaction::memorySize

Signed-off-by: Fabio Di Fabio <fabio.difabio@consensys.net>

* ERC20 bundle AT

Signed-off-by: Fabio Di Fabio <fabio.difabio@consensys.net>

* Adapt code to support bundle aware ZkTracer

Signed-off-by: Fabio Di Fabio <fabio.difabio@consensys.net>

* Bundle failure ATs

Signed-off-by: Fabio Di Fabio <fabio.difabio@consensys.net>

* Adapt to latest ZkTracer code

Signed-off-by: Fabio Di Fabio <fabio.difabio@consensys.net>

* More bundle ATs

Signed-off-by: Fabio Di Fabio <fabio.difabio@consensys.net>

* some more logs

Signed-off-by: Fabio Di Fabio <fabio.difabio@consensys.net>

* Set arithmetizationVersion=beta-v1.3.0-rc1

Signed-off-by: Fabio Di Fabio <fabio.difabio@consensys.net>

* New tests and fixes

Signed-off-by: Fabio Di Fabio <fabio.difabio@consensys.net>

---------

Signed-off-by: garyschulte <garyschulte@gmail.com>
Signed-off-by: Fabio Di Fabio <fabio.difabio@consensys.net>
Co-authored-by: garyschulte <garyschulte@gmail.com>

* Log extra data parsing at debug (#143)

Signed-off-by: Fabio Di Fabio <fabio.difabio@consensys.net>

* Add check to detect and report invalid line counts (#144)

Signed-off-by: Fabio Di Fabio <fabio.difabio@consensys.net>

* Set arithmetizationVersion=beta-v1.3-rc2 (#145)

Signed-off-by: Fabio Di Fabio <fabio.difabio@consensys.net>

* besuVersion=25.2-delivery50 arithmetizationVersion=beta-v1.3-rc4 (#147)

Signed-off-by: Fabio Di Fabio <fabio.difabio@consensys.net>

* Re-apply MANIFEST.MF workaround until we get rid of the uber jar everywhere (#149)

Signed-off-by: Fabio Di Fabio <fabio.difabio@consensys.net>

* Fix ZkTracer commit and rollback of non bundle transactions (#150)

Signed-off-by: Fabio Di Fabio <fabio.difabio@consensys.net>

* Simplify and optimize bundle and pending tx relation plus improve bundle gas limit check (#148)

* Simplify and optimize bundle and pending tx relation plus improve bundle gas limit check

Signed-off-by: Fabio Di Fabio <fabio.difabio@consensys.net>

* Apply suggestions from code review

Co-authored-by: Sally MacFarlane <macfarla.github@gmail.com>
Signed-off-by: Fabio Di Fabio <fabio.difabio@consensys.net>

* update code after rebasing

Signed-off-by: Fabio Di Fabio <fabio.difabio@consensys.net>

* Apply suggestions from code review

Signed-off-by: Fabio Di Fabio <fabio.difabio@consensys.net>

---------

Signed-off-by: Fabio Di Fabio <fabio.difabio@consensys.net>
Co-authored-by: Sally MacFarlane <macfarla.github@gmail.com>

* Add acceptance test to verify bundle revert protection (#152)

Signed-off-by: Fabio Di Fabio <fabio.difabio@consensys.net>

* Extend ATs (#153)

* Test that txs targeting precompiles are not accepted

Signed-off-by: Fabio Di Fabio <fabio.difabio@consensys.net>

* Add acceptance tests for excluded precompiles

Signed-off-by: Fabio Di Fabio <fabio.difabio@consensys.net>

* ModExp ATs

Signed-off-by: Fabio Di Fabio <fabio.difabio@consensys.net>

---------

Signed-off-by: Fabio Di Fabio <fabio.difabio@consensys.net>

* Use vanilla Besu from linea-besu-upstream (#155)

* Use vanilla Besu from linea-besu-upstream

* core test-support

* Set arithmetizationVersion=beta-v2.1-rc2 (#156)

Signed-off-by: Fabio Di Fabio <fabio.difabio@consensys.net>

* update link to besu contribution guidelines (#154)

* update link to besu contribution guidelines

Signed-off-by: Sally MacFarlane <macfarla.github@gmail.com>

* updated link

Signed-off-by: Sally MacFarlane <macfarla.github@gmail.com>

---------

Signed-off-by: Sally MacFarlane <macfarla.github@gmail.com>

* besuVersion=25.2.1-linea1 and arithmetizationVersion=beta-v2.1-rc3 (#159)

Signed-off-by: Fabio Di Fabio <fabio.difabio@consensys.net>

* Fix release version (#161)

Signed-off-by: Fabio Di Fabio <fabio.difabio@consensys.net>

* adjust log message (#162)

Signed-off-by: Sally MacFarlane <macfarla.github@gmail.com>

* Save and restore bundle pool (#157)

Signed-off-by: Fabio Di Fabio <fabio.difabio@consensys.net>

* Set arithmetizationVersion=beta-v2.1-rc4 (#164)

Signed-off-by: Fabio Di Fabio <fabio.difabio@consensys.net>

* Use vanilla Besu for local development (#165)

Signed-off-by: Fabio Di Fabio <fabio.difabio@consensys.net>

* Extend parameters validation of bundles and reprocessing the same request (#168)

Signed-off-by: Fabio Di Fabio <fabio.difabio@consensys.net>

* Froze the bundle pool when saving to disk, to avoid accepting and losing bundles (#169)

* Froze the bundle pool when saving to disk, to avoid accepting and losing bundles

Signed-off-by: Fabio Di Fabio <fabio.difabio@consensys.net>

* Apply suggestions from code review

Signed-off-by: Fabio Di Fabio <fabio.difabio@consensys.net>

---------

Signed-off-by: Fabio Di Fabio <fabio.difabio@consensys.net>

* 166 ecpairing limits testing (#170)

* Use JSON to save and restore bundles (#172)

Signed-off-by: Fabio Di Fabio <fabio.difabio@consensys.net>

* Set besuVersion=25.3.0-linea2 and arithmetizationVersion=beta-v2.1-rc8 (#174)

Signed-off-by: Fabio Di Fabio <fabio.difabio@consensys.net>

* remove reference to the fork (#175)

Signed-off-by: Sally MacFarlane <macfarla.github@gmail.com>

* Move reusable bundle related classes in a dedicated package (#173)

Signed-off-by: Fabio Di Fabio <fabio.difabio@consensys.net>

* `ECADD`, `ECMUL`, `ECRECOVER` limits testing (#177)

* added contract and deploy methods for testing other ecdata precompiles

* added test for ecadd limit executing several calls per transaction

* Added tests for ecrecover and ecmul

* fixed parameters of the tests

---------

Co-authored-by: Fabio Di Fabio <fabio.difabio@consensys.net>

* besuVersion=25.3.0-linea3 and arithmetizationVersion=beta-v2.1-rc12 (#179)

Signed-off-by: Fabio Di Fabio <fabio.difabio@consensys.net>

* Bundle store forward plugin (#178)


Signed-off-by: Fabio Di Fabio <fabio.difabio@consensys.net>

* Fix registration of bundle CLI options (#180)

Signed-off-by: Fabio Di Fabio <fabio.difabio@consensys.net>

* Fix forward bundle bad request and restore pool from disk (#183)

* Fix forward bundle bad request
* Enable restoring bundle pool from disk

Signed-off-by: Fabio Di Fabio <fabio.difabio@consensys.net>

* added test for MODEXP limit and fixed some naming (#182)

* Add options to configure bundle forward retry delay and call timeout (#184)

* Fix forward bundle bad request

Signed-off-by: Fabio Di Fabio <fabio.difabio@consensys.net>

* Enable restoring bundle pool from disk

Signed-off-by: Fabio Di Fabio <fabio.difabio@consensys.net>

* Bump release version

Signed-off-by: Fabio Di Fabio <fabio.difabio@consensys.net>

* Save bundle pool only if plugin enabled

Signed-off-by: Fabio Di Fabio <fabio.difabio@consensys.net>

* Add forward bundles acceptance tests

Signed-off-by: Fabio Di Fabio <fabio.difabio@consensys.net>

* Add configuration options for retry delay and call timeout

Signed-off-by: Fabio Di Fabio <fabio.difabio@consensys.net>

* Fix test

Signed-off-by: Fabio Di Fabio <fabio.difabio@consensys.net>

---------

Signed-off-by: Fabio Di Fabio <fabio.difabio@consensys.net>

* Run acceptance tests in parallel (#185)

Signed-off-by: Fabio Di Fabio <fabio.difabio@consensys.net>

* Update Besu and bump release version (#188)

Signed-off-by: Fabio Di Fabio <fabio.difabio@consensys.net>

* Set arithmetizationVersion=beta-v2.1-rc14 (#190)

Signed-off-by: Fabio Di Fabio <fabio.difabio@consensys.net>

* Set besuVersion=25.4.1-linea1 and arithmetizationVersion=beta-v2.1-rc16 (#191)


Signed-off-by: Fabio Di Fabio <fabio.difabio@consensys.net>

* Set besuVersion=25.5.0-linea1 and arithmetizationVersion=beta-v2.1-rc16.1 (#192)

Signed-off-by: Fabio Di Fabio <fabio.difabio@consensys.net>

* use compressor for linea-monorepo (#193)

* use compressor for linea-monorepo

* remove unnecessary native libs build CI jobs

* remove unnecessary static native libs loading

* releaseVersion=v2.1-rc16.2.0 (#194)

* releaseVersion=v2.1-rc16.2.0

* Update gradle.properties

Co-authored-by: Fabio Di Fabio <fabio.difabio@consensys.net>
Signed-off-by: Fluent Crafter <205769460+fluentcrafter@users.noreply.github.com>

---------

Signed-off-by: Fluent Crafter <205769460+fluentcrafter@users.noreply.github.com>
Co-authored-by: Fabio Di Fabio <fabio.difabio@consensys.net>

* Set besuVersion=25.5.0-linea2 and arithmetizationVersion=beta-v2.1-rc16.2 (#196)

Signed-off-by: Fabio Di Fabio <fabio.difabio@consensys.net>

* compressor: debug loading failures (#197)

* compressor: debug loading failures

* compressor: releaseVersion=v2.1-rc16.2.2

* compressor: update compressor and releaseVersion=v2.1-rc16.2.3 (#199)

* compressor: update compressor and releaseVersion=v2.1-rc16.2.3

* compressor: update compressor and releaseVersion=v2.1-rc16.2.3

* compressor: update compressor (#200)

* compressor: update compressor

* releaseVersion=v2.1-rc16.2.4

* [Feat] Besu node running with Prague config for acceptance tests (#198)

* working flexible path for genesis json template

* added code from PragueAcceptanceTestHelper

* fix comment

* enabled engine api call to node in acceptance test

* successful example test

* strategy pattern; move engine API logic to EngineApiService class

* removed duplicate code in LineaPluginTestBasePrague via inheritance, passing acceptance tests

* successful refactor of createGetPayloadRequest

* refactor of createNewPayloadRequest

* refactor createForkChoiceRequest

* refactor createForkChoiceRequest

* refactor EngineApiService

* refactor EngineApiService

* write extra comments

* more comments for EngineAPIService

* wrote ExamplePragueTest

* minor cleanup

* some cleanup

* refactor EngineApiService

* minor cleanup

* use EngineForkchoiceUpdatedParameter and EnginePayloadAttributesParameter from Besu

* implement registerToHexStringSerializer

* cleanup

* make engineApiService private

* remove unneeded code in createNewPayloadRequest

* improve comment

* edits to prague clique genesis file for pr comments

* removed WaitUtils.sleep

* set starting timestamp for prague config to 0

* added long timestampIncrement param to buildNewBlocks

* remove besu types of engine api

* remove state from EngineApiService

* remove state from EngineApiService

* remove hardcoded sleep time for Thread.sleep

* migrated linea-sequencer yaml workflows, deleted gradlew binaries from linea-sequencer

* removed gradlew wrapper for linea-sequencer project, merged settings.gradle, updated linea-sequencer-plugin-release to workflow_dispatch

* centralized spotless config, replaced references to rootProject in linea-sequencer

* centralize dependency managaement for de.undercouch.download

* Revert "centralize dependency managaement for de.undercouch.download"

This reverts commit 6d374706d8c8fed72c2c99beb5a1eb84ed4030a8.

* removed common plugins

* removed buildSrc from linea-sequencer

* ./gradlew besu-plugins:linea-sequencer:build working

* remove gradle.properties from linea-sequencer

* removed duplicate test config

* acceptance test can start for linea sequencer

* disable parallel junit tests for linea-sequencer-plugin

* downgrade spotless version

* move spotless apply

* centralized most linea-sequencer versions

* version bumps

* improve naming for linea-sequencer-plugin-testing

* bump besu version to 25.5.0-linea2

* fix ci paths for linea-sequencer-plugin

* centralize besu version used

* cleanup

* Call Besu `eth_estimateGas` internally for `linea_estimateGas` (#201)

* Call Besu eth_estimateGas internally for linea_estimateGas

Signed-off-by: Fabio Di Fabio <fabio.difabio@consensys.net>

* Go is not needed anymore

Signed-off-by: Fabio Di Fabio <fabio.difabio@consensys.net>

---------

Signed-off-by: Fabio Di Fabio <fabio.difabio@consensys.net>

* edit for pr comments 1

---------

Signed-off-by: Fabio Di Fabio <fabio.difabio@consensys.net>
Signed-off-by: franklin.delehelle@consensys.net
Signed-off-by: Daniel Lehrner <daniel.lehrner@consensys.net>
Signed-off-by: Gabriel-Trintinalia <gabriel.trintinalia@consensys.net>
Signed-off-by: Tsvetan Dimitrov <tsvetan.dimitrov@consensys.net>
Signed-off-by: stefan.pingel@consensys.net <stefan.pingel@consensys.net>
Signed-off-by: Ameziane H <ameziane.hamlat@consensys.net>
Signed-off-by: Sally MacFarlane <macfarla.github@gmail.com>
Signed-off-by: Simon Dudley <simon.dudley@consensys.net>
Signed-off-by: Ade Lucas <ade.lucas@consensys.net>
Signed-off-by: Ade Lucas <37906710+cloudspores@users.noreply.github.com>
Signed-off-by: F Bojarski <ceciestunepoubelle@protonmail.ch>
Signed-off-by: garyschulte <garyschulte@gmail.com>
Signed-off-by: Fluent Crafter <205769460+fluentcrafter@users.noreply.github.com>
Co-authored-by: letypequividelespoubelles <54240434+letypequividelespoubelles@users.noreply.github.com>
Co-authored-by: Fabio Di Fabio <fabio.difabio@consensys.net>
Co-authored-by: daniellehrner <daniel.lehrner@consensys.net>
Co-authored-by: delehef <franklin.delehelle@consensys.net>
Co-authored-by: Gabriel-Trintinalia <gabriel.trintinalia@consensys.net>
Co-authored-by: Franklin Delehelle <franklin.delehelle@odena.eu>
Co-authored-by: Julien Marchand <julien-marchand@users.noreply.github.com>
Co-authored-by: Roman Vaseev <4833306+Filter94@users.noreply.github.com>
Co-authored-by: Tsvetan Dimitrov <tsvetan.dimitrov@consensys.net>
Co-authored-by: FlorianHuc <florian.huc@gmail.com>
Co-authored-by: Pedro Novais <1478752+jpnovais@users.noreply.github.com>
Co-authored-by: Stefan Pingel <16143240+pinges@users.noreply.github.com>
Co-authored-by: Sally MacFarlane <macfarla.github@gmail.com>
Co-authored-by: ahamlat <ameziane.hamlat@consensys.net>
Co-authored-by: anonployed <164473726+anonployed@users.noreply.github.com>
Co-authored-by: Feng Liyuan <darktemplar.f@gmail.com>
Co-authored-by: m4sterbunny <harrie.bickle@consensys.net>
Co-authored-by: Usman Saleem <usman@usmans.info>
Co-authored-by: Simon Dudley <simon.dudley@consensys.net>
Co-authored-by: Olivier Bégassat <38285177+OlivierBBB@users.noreply.github.com>
Co-authored-by: Ade Lucas <37906710+cloudspores@users.noreply.github.com>
Co-authored-by: garyschulte <garyschulte@gmail.com>
Co-authored-by: Lorenzo Gentile <lorenzogentile404@gmail.com>
Co-authored-by: Fluent Crafter <205769460+fluentcrafter@users.noreply.github.com>
2025-05-28 12:53:56 +10:00
jonesho
7e306e2658 feat: remove l2-node in e2e test and make it to run in local stack op… (#1001)
* feat: remove l2-node in e2e test and make it to run in local stack optionally

* fix: l2 spec transaction data size limit e2e test

* feat: revise blockscout configs

* feat: revised comment in Makefile

* feat: update transaction-exclusion-api and postman image

* feat: remove expected-traces-api-version-v2 from coordinator local overrides toml

* feat: remove shomei-frontend from ci and add disabled option in Type2StateProofProviderConfig

* feat: add endpoint for type2-state-proof-provider

* feat: revise coordinator local-dev override configs

* feat: remove white space
2025-05-22 23:27:14 +08:00
Fluent Crafter
fd514a8a06 Gradle update dependencies (#967)
* gradle: update wiremock for tests

* gradle: update vertx and other dependencies
2025-05-08 23:01:53 +01:00
Pedro Novais
45a41b455d increase block gas limit as in sepolia (#720)
* increase block gas limit as in sepolia

* increase block gas limit as in sepolia

* staterecovery: update test data to match new genesis with 2B gas block

* staterecovery: update test data to match new genesis with 2B gas block

* staterecovery: reduce amount of blobs sent to L1

* staterecovery: increase l1 besu memory limit

* staterecovery: disable parallel tests in staterecovery

* staterecovery: donwgrade runner to large

* staterecovery: fix some integration tests

* staterecovery: fix integration tests
2025-02-24 14:26:15 +00:00
jonesho
c7f6e5943e feat: use already-built image in Dockerfile of l1-node-genesis-generator (#669)
* feat: use already-built image in Dockerfile of l1-node-genesis-generator

* feat: get genesis time automatically in generate-genesis.sh and make L1_GENESIS_TIME optional

* feat: make sed in-place command portable with both OS in generate-genesis.sh
2025-02-14 03:12:59 +08:00
Pedro Novais
a63965e32c docker: breakdown into smaller files and more efficient resources (#626)
* docker: breakdown into smaller files and more efficient resources
2025-01-30 15:09:47 +00:00
Pedro Novais
6995d99a1d Staterecovery - plugin rename and debug logging (#593)
* staterecovery: Fix renamings, logs and adds e2e test for restarts
2025-01-27 15:54:24 +00:00
Pedro Novais
d01ef99a5a staterecovery: fix cli options regression (#567)
* staterecovery: fix cli options regression & add CI jobs
2025-01-20 11:56:25 +00:00
Pedro Novais
fe967c703b State recover part 4 (#324)
* statereover: adds working StateRecoverApp, besu-plugin and Integration tests
---------

Signed-off-by: Pedro Novais <1478752+jpnovais@users.noreply.github.com>
Co-authored-by: jonesho <81145364+jonesho@users.noreply.github.com>
2025-01-16 10:16:39 +00:00
Roman Vaseev
4e93fa3a10 Fixing spotless plugin application performance issue when applied to gradle.build files (#405) 2024-12-06 17:20:03 +01:00
Roman Vaseev
c356dc4016 Introduced spotless checks to gradle scripts. Added publishing logic … (#401)
* Introduced spotless checks to gradle scripts. Added publishing logic to all the generic jvm libs. Removed redundant useJUnitPlatform()

* Removed more useJUnitPlatform()

* feat: update copyShadowJarToLocalBesu in finalized-tag-updater gradle build file

* fix: geth traces-node running in start-all local stack

---------

Co-authored-by: jonesho <jones.ho@consensys.net>
2024-12-06 10:44:00 +01:00
jonesho
8749f920cb feat: improve tx-exclusion-api performance and increase size of reaso… (#327)
* feat: improve tx-exclusion-api performance and increase size of reason message column

* feat: set waitForTcpPorts as true for localStackPostgresDbOnly and update prover-v3 image tag in compose

* feat: update prover-v3 image tag to a more recent one

* feat: update coordinator image tag to a more recent one
2024-11-25 23:29:40 +08:00
Pedro Novais
3d5d4e6ab0 staterecover: adds blobscan to local stack (#279)
* staterecover: adds blobscan to local stack

* staterecover: adds blobscan env file

* connect port 4001 for blobscan-api

* statereover: improve test utils for code reuse

---------

Co-authored-by: thedarkjester <grant.southey@consensys.net>
2024-11-21 10:08:07 +00:00
Pedro Novais
d978d0df4b java/kotlin build: allow warning locally with explicit optin (#243) 2024-10-25 10:37:13 +01:00
jonesho
fad0db4fc6 3822 rejected transaction api service (#101)
* feat: first commit for transaction exclusion api service

* feat: removed debug logs and improved params error handling

* fix: jacocoRootReport error

* feat: improved json request param parsings

* feat: added docker container and github workflow pipeline for transaction exclusion api

* feat: added rejection stage in response and use txHash and rejectReason as primary key of tables

* feat: separate database into read and write config and each with dedicated connection

* fix: e2e testing error

* feat: removed redundant commands in Makefile

* feat: updated transaction exclusion api default image tag in compose file

* feat: added metric and change param name from reasonMessage to reason

* feat: added integration and unit tests and use reasonMessage for both request and response

* fix: transaction-exclusion-api unit test

* feat: added e2e tests and remove reasonMessage from get response and redundant codes

* feat: updated README.md and removed abi file

* feat: updated image version of transaction exclusion api service in compose file

* feat: updated README and added more test cases

* feat: updated transaction exclusion api default image tag in compose file

* feat: decoupled transaction exclusion api from coordinator package

* feat: removed unnecessary dependencies to prover client

* feat: moved persistence:db package to jvm-libs

* feat: removed migration file dir location config from transaction exclusion api

* fix: db migration location for fee history integration test

* changed db column name timestamp to reject_timestamp and add dto for ModuleOverflow to remove all jackson dependencies in core module

* feat: rejected transaction dao and config refactoring

* feat: removed repository service and using persistence retryer

* feat: updated transaction exclusion api default image tag in compose file

* feat: updated log and increase retry backoff delay to avoid repetitive error logs

* feat: added support of list request on save method and added dto for RejectedTransaction

* feat: revised gradle.build dependencies

* feat: switch from shadow jar to zipped jar

* feat: updated transaction exclusion api default image tag in compose file

* feat: updated sql and tables and changes for PR comments

* feat: improved log message for duplicate key error

* feat: updated transaction exclusion api default image tag in compose file

* feat: avoid redundant logs on periodic db cleanup

* feat: revised request handlers plus better test assertions on insertion

* fix: test case

* feat: parse save method json request with jackson

* feat: extracted db migrations from the coordinator and transaction-exclusion app

* feat: decoupled coordinator modules from jvm-libs persistence db test module

* feat: updated dockerfile of transaction-exclusion-api

* feat: removed the find check before metric increment on save rejected transaction

* feat: updated docker base image for tx-exclusion-api image buid and queryable window config

* feat: skip migration scripts on read db instance

* feat: updated more percise jvm-libs change filtering on transaction-exclusion-api

* feat: updated coordinator config for geth node l2 gas pricing recipients

* feat: update runners with specific version and removed the use of retry for transaction exclusion api testing

* feat: add integration test for transaction exclusion app

* feat: update local stack docker compose and workflow for transaction exclusion

* feat: add e2e test for transaction exclusion

* feat: skip the sequencer test in transaction exclusion e2e test

* feat: revert sequencer config poa-block-txs-selection-max-time

* feat: remove incorrect comment

* feat: added explicitly assertion if tx exclusion is not defined and simplify the localStackPostgresDbOnly in build.gradle

* feat: remove beforeAll in test suite with it.concurrent

* feat: set coordinator config blob-compressor-version as V1_0_1 explicitly for traces-v2

* feat: update coordinator config test

* feat: change default prefix not to be coordinator specific

* feat: place persistence:db under jvm-libs:generic and fixed conflicts from latest main

* fix: remove dependency to resolve circular dependency issue

* test: switch from localStackPostgresDbOnlyComposeUp to localStackComposeUp

* feat: replace GITHUB_SHA with github.event.pull_request.head.sha in computing commit tag

* feat: update filter change file lists for transaction exclusion api
2024-10-22 15:50:44 +08:00
Roman Vaseev
0458dcfc89 Hopefully fixed concurrent compilation issue (#82)
* Hopefully fixed concurrent compilation issue

* Removed contracts helper dependency

* Turned runRootMakefileCommand into a function rather than an extension
2024-09-23 16:07:47 +02:00
Julien Marchand
a001342170 chore: Initial commit
Co-authored-by: Franklin Delehelle <franklin.delehelle@odena.eu>
Co-authored-by: Alexandre Belling <alexandrebelling8@gmail.com>
Co-authored-by: Pedro Novais <jpvnovais@gmail.com>
Co-authored-by: Roman Vaseev <4833306+Filter94@users.noreply.github.com>
Co-authored-by: Bradley Bown <bradbown@googlemail.com>
Co-authored-by: Victorien Gauch <85494462+VGau@users.noreply.github.com>
Co-authored-by: Nikolai Golub <nikolai.golub@consensys.net>
Co-authored-by: The Dark Jester <thedarkjester@users.noreply.github.com>
Co-authored-by: jonesho <81145364+jonesho@users.noreply.github.com>
Co-authored-by: Gaurav Ahuja <gauravahuja9@gmail.com>
Co-authored-by: Azam Soleimanian <49027816+Soleimani193@users.noreply.github.com>
Co-authored-by: Andrei A <andrei.alexandru@consensys.net>
Co-authored-by: Arijit Dutta <37040536+arijitdutta67@users.noreply.github.com>
Co-authored-by: Gautam Botrel <gautam.botrel@gmail.com>
Co-authored-by: Ivo Kubjas <ivo.kubjas@consensys.net>
Co-authored-by: gusiri <dreamerty@postech.ac.kr>
Co-authored-by: FlorianHuc <florian.huc@gmail.com>
Co-authored-by: Arya Tabaie <arya.pourtabatabaie@gmail.com>
Co-authored-by: Julink <julien.fontanel@consensys.net>
Co-authored-by: Bogdan Ursu <bogdanursuoffice@gmail.com>
Co-authored-by: Jakub Trąd <jakubtrad@gmail.com>
Co-authored-by: Alessandro Sforzin <alessandro.sforzin@consensys.net>
Co-authored-by: Olivier Bégassat <olivier.begassat.cours@gmail.com>
Co-authored-by: Steve Huang <97596526+stevehuangc7s@users.noreply.github.com>
Co-authored-by: bkolad <blazejkolad@gmail.com>
Co-authored-by: fadyabuhatoum1 <139905934+fadyabuhatoum1@users.noreply.github.com>
Co-authored-by: Blas Rodriguez Irizar <rodrigblas@gmail.com>
Co-authored-by: Eduardo Andrade <eduardofandrade@gmail.com>
Co-authored-by: Ivo Kubjas <tsimmm@gmail.com>
Co-authored-by: Ludcour <ludovic.courcelas@consensys.net>
Co-authored-by: m4sterbunny <harrie.bickle@consensys.net>
Co-authored-by: Alex Panayi <145478258+alexandrospanayi@users.noreply.github.com>
Co-authored-by: Diana Borbe - ConsenSys <diana.borbe@consensys.net>
Co-authored-by: ThomasPiellard <thomas.piellard@gmail.com>
2024-07-31 18:17:20 +02:00