Skip to content

test confutils eval#6

Draft
nitely wants to merge 25 commits into
masterfrom
test_confutils_eval
Draft

test confutils eval#6
nitely wants to merge 25 commits into
masterfrom
test_confutils_eval

Conversation

@nitely

@nitely nitely commented Feb 28, 2026

Copy link
Copy Markdown
Owner

No description provided.

@nitely nitely force-pushed the test_confutils_eval branch from 61b4e13 to 589aca2 Compare March 1, 2026 07:42
nitely and others added 24 commits March 2, 2026 00:48
* update Dockerfile to build nimbus single binary

* update copyright year
* Remove `accountRequeue()`

why
  Similar functionality will be provided with a function `mkTrie()`

* Stop downloading evicted states

why
  Otherwise, data will be downloaded until the peers stop serving.

* Code cosmetics, remove cruft, small fixes/updates

details
+ Update comments
+ Remove `Raw` from assembly DB object names
+ add helper functions (e.g. `state_identifier.to()`)

* Generalise accounts tree validation to work on storage slots, as well

* Provide mpt storage with assembly DB
…us-im#4030)

captureGasCost was the only tracer method missing the
`if vmState.tracingEnabled` guard, causing a nil pointer dereference
(SIGSEGV) when tracing is disabled and vmState.tracer is nil.

All other tracer methods (captureOpStart, captureOpEnd, captureFault,
capturePrepare, etc.) already have this guard.

Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com>
* Improve call performance

When fetching call parameters, we currently make several copies of the
parameters structure - because it's big, this results in a ~5% perf
penalty of this instruction, measurable in particular in the ~2.3M block
range.

Also, remove fork check branch inside delegate - the fork is constant
throughout the computation.

* cleanups
* remove selection logic, add temp selector

* add capabilities

* penalty scoring

* format and fixes

* rewarding mechanism

* syntactic sugar

* fixes

* recovery

* untagged

* format

* fix copyright year

* better scoring
* fix rpc issue

* add short circuits for gas estimation

* update the comment

* Code clean up + more tests

* Lint

* update gas Estimate in Verified Proxy

---------

Co-authored-by: Nilav <nilav@Nilav-MacBook-Air.local>
* demo impl of status-im#3778

* don't store receipts in BlockRef

* fix: lint

* freeup seq[byte]

* from default to reset

Co-authored-by: Jacek Sieka <jacek@status.im>

* Optimize sync memory (status-im#4038)

* reset block if import succeed

* remove async copies and make 1 shared blk

* Revert "remove async copies and make 1 shared blk"

This reverts commit d3b2ee2.

* fix: lint

* fix: copyright year

* fix: suggested changes

---------

Co-authored-by: Jacek Sieka <jacek@status.im>
## Summary

- remove `erigon` sync tests as per Adviata's request.
- tag the built docker image in CI with `statusim/nimbus-eth1:master`
- remove `--docker.pull` flag from hive calls so that hive relies on
locally built image rather than pulling from docker hub. This change is
required so that `nimbus-eth1` changes from the PR are built and used
rather than `master`.

note: This is kind of misleading because we tag with `master`, and
`hive` config references `master` for nimbus.
* skip snap sync tests & add geth to the sync tests

* handle $ sign

* remove nethermind as it is buggy on self sync tests
* Rename `finish()` to `close()` for database destructor consistency
* Replace `eradicate` parameter with `wipe` across Aristo, KVT, and CoreDb backends
* Consolidate `base_desc.nim`, `base_helpers.nim`, and `base_iterators.nim` into `base.nim`
* Use existing `EMPTY_ACCOUNT` constant instead of creating a new one
* Clean up some unused / redundant functions
* match ledger/core/aristo names more closely, where relevant
* streamline in-memory database imports
* Implement sync state FSA machine

* Add error type for assembly trie

* Remove account score registry

why
  Not used, was for debugging, only.

* Fix sub-range fetcher (was completely bonkers)

* Code cosmetics, comments, remove cruft, small fixes/updates etc.

* Rename internal field `topData` to `pivot`

why
  This reflects its usage

* Add dead-state flag for evicted states

why
  So they can be treated more efficiently if in use by a peer
  while being evicted.

* Re-factor account range fetcher by state

* Rename state metrics variables

* Provide trie assembly from cached pivot
…tatus-im#4050)

When storage is being cleared in anticipation of an account being
overwritten, we're currently writing the txframe change before
persisting other change - in particular, one can imagine the transaction
reverting while the txframe changes are still there!

Therefore:

* move the storage clearing to `persist`
* don't read from the on-disk database for new accounts and avoid
  polliting the slots cache - if there is data on disk for such
  accounts, it remains invisible to the contract
* remove explict storage clearing in `kill` - this is already part of
  removing the account in general which happens due to the removal of
  the `Alive` flag

This PR merely fixes the internals of how storage clearing happens - it
does not address the wider question of spec clarity on this subject -
tests pass both with and without the clearing.
The ledger is adapted for executing transactions a accordingly deals with nesting, staging changes etc, all of which are unnecessary abstractions in the context of serving proofs.

* Split genesis writing into separate alloc and header functions
* Remove LedgerRef proof methods, use CoreDbTxRef directly
* Update RPC methods to work with CoreDbTxRef
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.