Skip to content

Prover/feat/Adding field extension support to Smartvectors #499

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Closed
wants to merge 73 commits into from

Conversation

bogdanbear
Copy link
Contributor

@bogdanbear bogdanbear commented Jan 7, 2025

This PR completes the work concerning smartvectors and associated packages Issue 474, concerning the prover transition to a mixture of base fields and field extensions.

Checklist

  • Updated the field extension mock.
  • Completed the smartvector functionality for the field extension case.
  • Unit testing.

@bogdanbear bogdanbear self-assigned this Jan 7, 2025
Copy link

cla-assistant bot commented Jan 7, 2025

CLA assistant check
All committers have signed the CLA.

Copy link

cla-assistant bot commented Jan 7, 2025

CLA assistant check
Thank you for your submission! We really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.
You have signed the CLA already but the status is still pending? Let us recheck it.

@codecov-commenter
Copy link

codecov-commenter commented Jan 7, 2025

Codecov Report

Attention: Patch coverage is 68.40491% with 103 lines in your changes missing coverage. Please review.

Project coverage is 68.75%. Comparing base (27cc9eb) to head (4fa3996).
Report is 10 commits behind head on main.

Files with missing lines Patch % Lines
...s/linea/testing/submission/SubmissionTestHelper.kt 0.00% 19 Missing ⚠️
...s/src/main/kotlin/linea/web3j/Web3JLogsSearcher.kt 81.55% 15 Missing and 4 partials ⚠️
...in/kotlin/linea/coordinator/config/ConfigLoader.kt 69.09% 9 Missing and 8 partials ⚠️
...src/main/kotlin/linea/logging/TimeMeasureLogger.kt 0.00% 16 Missing ⚠️
...nsensys/zkevm/coordinator/app/CoordinatorAppCli.kt 0.00% 8 Missing ⚠️
.../consensys/zkevm/coordinator/app/L1DependentApp.kt 0.00% 6 Missing ⚠️
...models/src/main/kotlin/linea/domain/RetryConfig.kt 80.00% 2 Missing and 2 partials ⚠️
...nsensys/linea/contract/Web3JContractAsyncHelper.kt 0.00% 0 Missing and 3 partials ⚠️
...essor/src/main/kotlin/linea/blob/BlobCompressor.kt 0.00% 3 Missing ⚠️
...nsions/src/main/kotlin/linea/web3j/SearchCursor.kt 92.10% 1 Missing and 2 partials ⚠️
... and 4 more
Additional details and impacted files
@@             Coverage Diff              @@
##               main     #499      +/-   ##
============================================
+ Coverage     68.18%   68.75%   +0.57%     
- Complexity     1129     1166      +37     
============================================
  Files           320      326       +6     
  Lines         12858    13039     +181     
  Branches       1292     1312      +20     
============================================
+ Hits           8767     8965     +198     
+ Misses         3560     3526      -34     
- Partials        531      548      +17     
Flag Coverage Δ
hardhat 98.74% <0.00%> (ø)
kotlin 66.37% <68.61%> (+0.65%) ⬆️
Files with missing lines Coverage Δ
...kevm/coordinator/app/LastFinalizedBlockProvider.kt 96.42% <100.00%> (-0.72%) ⬇️
...clients/prover/FileBasedExecutionProverClientV2.kt 59.01% <100.00%> (ø)
.../linea/contract/Web3JL2MessageServiceLogsClient.kt 26.31% <ø> (ø)
...ys/zkevm/ethereum/submission/SwitchProviderImpl.kt 82.75% <ø> (ø)
...reum/gaspricing/staticcap/FeeHistoryFetcherImpl.kt 84.61% <ø> (-5.96%) ⬇️
...lin/net/consensys/zkevm/ethereum/AccountManager.kt 73.84% <100.00%> (-1.54%) ⬇️
...src/main/kotlin/net/consensys/TypingsExtensions.kt 80.95% <100.00%> (+2.57%) ⬆️
...nsys/linea/logging/JsonRpcRequestResponseLogger.kt 97.22% <100.00%> (+0.25%) ⬆️
...uild/linea/s11n/jackson/InstantAsHexNumberSerDe.kt 100.00% <100.00%> (ø)
...in/build/linea/s11n/jackson/InstantISO8601SerDe.kt 100.00% <ø> (ø)
... and 15 more

... and 8 files with indirect coverage changes

* initial implementaiton of the wrapper

* started updating the gnark interpolation
@bogdanbear bogdanbear requested a review from a team as a code owner January 17, 2025 11:44
@bogdanbear bogdanbear temporarily deployed to docker-build-and-e2e January 17, 2025 11:48 — with GitHub Actions Inactive
@bogdanbear bogdanbear temporarily deployed to docker-build-and-e2e January 17, 2025 13:20 — with GitHub Actions Inactive
@bogdanbear bogdanbear marked this pull request as draft January 17, 2025 14:40
Copy link

PR has had no activity for 30 days. What is blocking it? Is there anything you can do to help move it forward? Without action it will be closed in 7 days.

@github-actions github-actions bot added the Stale label Feb 17, 2025
Copy link

Closing stale PR as no activity for 7 days

@github-actions github-actions bot closed this Feb 24, 2025
@github-actions github-actions bot deleted the prover/feat/small-field-exploratory-2 branch February 24, 2025 02:05
kyzooghost added a commit to kyzooghost/linea-monorepo that referenced this pull request May 22, 2025
* perf: trace `Bytes` instead of `BigInteger` (#454)

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

* chore: Release Workflow (#452)

* chore(release): Add release workflow, changelog and version

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

* chore(release): skip tests when creating the release

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

* chore(release): fix github token name

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

* chore(release): add release process to the readme

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

* chore(release): fix rootProject version

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

* removed duplicated lines

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

---------

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

* perf: for loop are faster than streams (#457)

We noticed from CPU profiling during block production, i.e transaction evaluation in order to include them in a block that State.lineCount consumes a significant amount of CPU, related to the usage of a stream.

<img width="1721" alt="image" src="https://github.com/Consensys/besu-sequencer-plugins/assets/5099602/b7344c55-522a-4e1f-9622-b147a9045270">

JMH Microbenchmarking confirmed that a simple loop is much better in this use case on a collection with 100k elements

```
Benchmark                            Mode  Cnt      Score     Error  Units
TestStreamsVsLoops.testMethodLoop    avgt   50   9976.233 ± 138.659  ns/op
TestStreamsVsLoops.testMethodStream  avgt   50  64048.445 ± 386.111  ns/op
```

* feat: implement RPC for line counting (#451)

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

* perf: avoid repetition in the WCP (#460)

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

* Use a simple for loop instead of a stream to improve performance (#465)

* fix: line count discrepancy (#468)

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

* fix: incorrect address comparison (#470)

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

* Upgrade Linea Besu to 23.10.4-SNAPSHOT (#469)

* Upgrade Linea Besu to 23.10.4-SNAPSHOT

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

* Update release version

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

---------

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

* feat: implement `BIN` counting (#471)

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

* changed default file name to toml (#476)

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

* prep release 8, v0.1.2 (#478)

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

* next version (#479)

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

* fix: ensure trace files are always deleted (#462)

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

* feat: partially implement EC_DATA (#475)

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

* feat: implement L1 block & Keccak limits (#445)

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

* perf: improve `StackedSet` performances  (#466)

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

* release version 0.1.3 (#481)

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

* bump version to 0.1.4-SNAPSHOT (#482)

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

* perf: delay computations at trace time (#483)

Delay as much of the computations as possible to trace-time to improve performances at count-time, thus improving sequencer performances.

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

* fix: `Bytes.toUnsignedInteger` (#484)

Classes (e.g. UInt256) can override Bytes.toBigInteger and alter the signedness of the generated BigInteger. This patch ensures that the produced BigIntegers are signed when required.

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

* applyMavenExclusions=false (#477)

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

* bin reimplementation (#473)

* feat: update constraints

* feat: wip

* feat: wip

* fix: unsignedInt

* refactor: ras

* test: add generic random test

* fix: fix test

* style: ras

* test: refinement generic test

* refactor: move stuff to binOp class

* fix: debug

* fix: spec issue + debug + new binRT

* feat: constraints

* perf: delete useless alreday covered case

* feat: correct a TODO

* refactor: delete useless fct

* refactor: move stuff to Utils

* style: make it private

* perf: better type

* 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

---------

Signed-off-by: franklin.delehelle@consensys.net
Signed-off-by: Gabriel-Trintinalia <gabriel.trintinalia@consensys.net>
Signed-off-by: Sally MacFarlane <macfarla.github@gmail.com>
Signed-off-by: Fabio Di Fabio <fabio.difabio@consensys.net>
Signed-off-by: garyschulte <garyschulte@gmail.com>
Signed-off-by: Daniel Lehrner <daniel.lehrner@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: 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: Fluent Crafter <205769460+fluentcrafter@users.noreply.github.com>
Co-authored-by: delehef <franklin.delehelle@consensys.net>
Co-authored-by: Gabriel-Trintinalia <gabriel.trintinalia@consensys.net>
Co-authored-by: Sally MacFarlane <macfarla.github@gmail.com>
Co-authored-by: ahamlat <ameziane.hamlat@consensys.net>
Co-authored-by: letypequividelespoubelles <54240434+letypequividelespoubelles@users.noreply.github.com>
Co-authored-by: Fabio Di Fabio <fabio.difabio@consensys.net>
Co-authored-by: Daniel Lehrner <daniel.lehrner@consensys.net>
Co-authored-by: garyschulte <garyschulte@gmail.com>
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: 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: Lorenzo Gentile <lorenzogentile404@gmail.com>
Co-authored-by: Fluent Crafter <205769460+fluentcrafter@users.noreply.github.com>
kyzooghost added a commit that referenced this pull request May 28, 2025
* 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>
thedarkjester pushed a commit that referenced this pull request Jun 4, 2025
* 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>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

Successfully merging this pull request may close these issues.

7 participants