Skip to content
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

poc provable web3: implement various EIPs for a more provable protocol #3849

Draft
wants to merge 4 commits into
base: master
Choose a base branch
from

Conversation

g11tech
Copy link
Contributor

@g11tech g11tech commented Jan 26, 2025

superseding #3756 for a more verifiable protocol

see https://purified-web3.box

image

work now rebased on pectra devnet5

debug and fix the legacy ssz encoding decoding

add a spec test for legacy ssz encoding decoding

add the ssztx boilerplate to other tx types

implement sszRaw value for 2930 tx

add 2930 spec test and debug/fix ssz encoding/decoding

add the ssz encoding decoding to 1559 tx

add eip 1559 testcase and get it working

add 4844 ssz encoding decoding

add eip 4844 testcase and get it working

define block transactions ssz type and test ssz transactionsRoot

handle ssz roots for transactions and withdrawals in block when 6493 activated

handle the roots gen in the build block

fix the transaction stable container

update the execution payload serialization deserialization for 6493

add 6493 hardfork for the testing/devnet

refactor the transaction factory ssz tx deserialization

add ssz profile<>stablecontaiber conversion spec test

add eip6493 support to common

debug and fix the block transaction withdrawal root comparision by removing null keccak hash hardcoding

enhance eip6493 tx test by testing transaction factory deserialization which uses stable container

add client eip6493 end to end spec and fix the payload generation

refactor tx serialization deserializion with respect to execution/beacon payload

add, debug and fix the transactionv1 or hex transactions validator and debug/fix the newpayloadeip6493 spec test

add 6493 to electra for kurtosis testing

console log error for debugging

console log error for debugging

txpool fix attempt

add more descriptive checks for nulloroptional

add more descriptive checks for nulloroptional

log full error

debug and fix handling of replay vs legacy tx w.r.t. v/ypartity and confirm via spec test

build fix

dev and add transaction inclusion proof to the getTransactionX apis

workaround to get the proof since stable container impl for proof seems buggy and breaking

refactor the proof format based on feedback

debug, discuss and fix the signature packing scheme

add hack to schedule 6493 on prague in cli for stablecontainer devnets

debug and fix newpayload eip6493 spec

debug rebase and spec fixes in tx utils

debug and fix block build

fix the vm build

debug and get 6493 end to end client spec working

rebase 4844 fixes

add ssz blockheader type and update the blockhash to use when ssz activated

debug and update client spec with ssz blockhash

update ssz field to receiptstrie

updates after discussion with etan

update test

update and proagate ssz signature scheme as well as authroization list

check and remove an invalid failing spec test

impl ssz receipts and dev modify the receipts rooting work

debug and fix the client 6493 end to end spec test

accumulate logs into an ivc contract for advance proofing capabilities

add ivc spec test in end to end client spec and debug and fix it

modify the ivc accumulator code for smartcontract comaptible compute and add log proofing capabilities by multiple filters

move the log accumulation to post executions

move the ivc log processing to pre 7685 to allow adding transfer logs for cl withdrawals

add and process systemslogs root to header for allowing system logs verification

debug and fix issues introduced by systemlogs field and fix the 6493 client spec

add log for the combined miner/priority reward and debug/fix/validate client eip6493 spec

simplify log based on discussion with etan and make changes

remove console trace

update ssz to stablecontainer released version

fix missing sz update

propagate, serve and save system logs and modify, debug and fix client end to end spec test

add systemlogs root

add transfer logs

generate and add receipt proof to jsonrpc api

added and verified receipt proof check in the test
@g11tech g11tech changed the title Provable web3 Provable/purified web3 Jan 26, 2025
Copy link

codecov bot commented Jan 26, 2025

Codecov Report

Attention: Patch coverage is 31.89964% with 190 lines in your changes missing coverage. Please review.

Project coverage is 77.89%. Comparing base (60ed998) to head (46b669f).

Additional details and impacted files

Impacted file tree graph

Flag Coverage Δ
block ?
blockchain 85.44% <ø> (ø)
client ?
common 90.78% <100.00%> (+0.04%) ⬆️
devp2p 75.66% <ø> (ø)
ethash 80.80% <ø> (ø)
evm 68.29% <31.70%> (-0.17%) ⬇️
genesis 99.84% <ø> (ø)
mpt 57.08% <ø> (+0.03%) ⬆️
rlp 69.70% <ø> (ø)
statemanager 69.60% <ø> (ø)
tx ?
util ?
vm 54.34% <28.94%> (-2.99%) ⬇️
wallet ?

Flags with carried forward coverage won't be shown. Click here to find out more.

@g11tech g11tech changed the title Provable/purified web3 poc provable web3: implement various EIPs for a more provable protocol Jan 27, 2025
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.

1 participant