568 Commits

Author SHA1 Message Date
Alex Stokes
163f287d6e
Fix prior tests with new EIP-7251 logic 2024-04-08 13:19:05 -06:00
Alex Stokes
112924cc13
fix EIP-7251 tests 2024-04-08 12:50:03 -06:00
Alex Stokes
f8cbd8d2e3
Merge pull request #3649 from ethereum/eip7549-aggregate
EIP-7549: Add EIP7549 aggregation logic in testing tool
2024-04-05 10:18:30 -06:00
Alex Stokes
a56bd85674
Update tests/core/pyspec/eth2spec/test/helpers/attestations.py 2024-04-05 09:43:48 -06:00
Alex Stokes
3d3ec8fbba
Update tests/core/pyspec/eth2spec/test/helpers/attestations.py 2024-04-05 09:38:32 -06:00
Hsiao-Wei Wang
8728561da3
Merge branch 'dev' into peer-das 2024-04-04 22:23:02 +09:00
Hsiao-Wei Wang
265788be58
refactor 2024-04-04 18:01:08 +09:00
Hsiao-Wei Wang
a12e16b739
Add EIP-7549 aggregation logic to testing tools 2024-04-04 17:01:08 +09:00
Hsiao-Wei Wang
cf3c4eca8c
Fix conflicts with #3631 2024-04-01 10:37:49 +09:00
Hsiao-Wei Wang
eec5503d4f
Fix tests and specs 2024-03-31 16:35:24 +09:00
dapplion
e6aaa9d44d Fix lint 2024-03-27 01:35:36 +09:00
fradamt
8d7d7a8851 add tests
add function to context.py

test helpers

add tests
2024-03-25 12:16:58 +01:00
Mikhail Kalinin
d48b5e0665 Update whistleblower reward for eip7251 2024-03-20 16:10:30 +06:00
Mikhail Kalinin
a127bbf0c6
Merge branch 'dev' into eip-7251 2024-03-20 14:46:43 +06:00
dapplion
668e447c55 Add EIP-7251 spec
Co-authored-by: fradamt <104826920+fradamt@users.noreply.github.com>
2024-03-08 12:37:35 +08:00
Hsiao-Wei Wang
dc37dcdbf2
fix broken tests 2024-03-06 23:03:55 +08:00
dapplion
accee2b8be Merge remote-tracking branch 'upstream/dev' into attestation-index 2024-03-05 17:19:49 +08:00
Hsiao-Wei Wang
e3d91d8e2a
Rename MAX_UINT_64 -> UINT64_MAX 2024-02-15 15:00:56 +08:00
Hsiao-Wei Wang
696d443f0a
Merge branch 'dev' into peer-das 2024-01-19 17:56:10 +08:00
Hsiao-Wei Wang
9b04d10a6f
Merge pull request #3570 from etan-status/ts-attprevepoch
Add guard when `fill_prev_epoch` is `True` in epoch `0`
2024-01-15 22:46:46 +08:00
Etan Kissling
07710e6b4e
Merge branch 'dev' into lc-transitionacrossforks 2024-01-15 13:34:04 +01:00
Hsiao-Wei Wang
868a600a57
Merge pull request #3537 from etan-status/lc-gindexname
Rename `_INDEX` generalized index constants to `_GINDEX`
2024-01-15 18:57:48 +08:00
Hsiao-Wei Wang
93dddd15f2
wip
wip

Add `TARGET_NUMBER_OF_PEERS`

Add networking spec draft

fix

simplification

Rename `DoYouHave` to `GetCustodyStatus`

Add DataLineSidecar design

Apply suggestions from code review

Co-authored-by: dankrad <mail@dankradfeist.de>
Co-authored-by: danny <dannyjryan@gmail.com>

Revamp after reviews and discussion

Remove `CustodyStatus`

minor fix

Change`DataColumn` to `List[DataCell, MAX_BLOBS_PER_BLOCK]`

Move folder

Replace `DataColumnByRootAndIndex` with `DataColumnSidecarByRoot` message. Add extended data description

Remove `DataRow`

Apply suggestions from @jacobkaufmann code review

Co-authored-by: Jacob Kaufmann <jacobkaufmann18@gmail.com>

Represent matrix in `BLSFieldElement` form

Add `assert time >= store.time` to `on_tick`

Revert the spec. Only handle it in tests

Remove extra tick

cleanup leftover

Add randomized block cases

Specify RPC byRoot blocks-sidecars elegibility

fix typo

Update specs/phase0/p2p-interface.md

Co-authored-by: Mikhail Kalinin <noblesse.knight@gmail.com>

Update specs/deneb/p2p-interface.md

Co-authored-by: Mikhail Kalinin <noblesse.knight@gmail.com>

add failed on_block condition

rephrase

Update specs/phase0/p2p-interface.md

Co-authored-by: Mikhail Kalinin <noblesse.knight@gmail.com>

apply suggestion

Update specs/deneb/p2p-interface.md

Co-authored-by: danny <dannyjryan@gmail.com>

Update specs/deneb/p2p-interface.md

Co-authored-by: danny <dannyjryan@gmail.com>

remove the last consider

from on_block to state_transition

simplify and add a new rule

Update specs/phase0/p2p-interface.md

Co-authored-by: Mikhail Kalinin <noblesse.knight@gmail.com>

Update specs/deneb/p2p-interface.md

Co-authored-by: Mikhail Kalinin <noblesse.knight@gmail.com>

Update specs/deneb/p2p-interface.md

Co-authored-by: danny <dannyjryan@gmail.com>

remove gossip failure rules

Apply suggestions from code review

bump version to v1.4.0-beta.5

Move `blob_sidecar_{subnet_id}` to `Blob subnets` section

Misc minor fix

Add linter support

Add column subnet validation. Split `verify_column_sidecar` into two functions

Fix `get_data_column_sidecars` by using `compute_samples_and_proofs`

Apply suggestions from code review

Co-authored-by: danny <dannyjryan@gmail.com>

Do not assign row custody

Apply suggestions from code review

Co-authored-by: danny <dannyjryan@gmail.com>

Revamp reconstruction section

Use depth as the primary preset for inclusion proof. Fix `get_data_column_sidecars` and add tests for merkle proof

Change `SAMPLES_PER_SLOT` to 8 and add tests (requirement TBD)

Apply PR feedback from @ppopth and @jtraglia

Fix `get_data_column_sidecars`

Co-authored-by: Pop Chunhapanya <haxx.pop@gmail.com>

Apply suggestions from code review

Co-authored-by: Pop Chunhapanya <haxx.pop@gmail.com>

Apply suggestions from code review

Co-authored-by: fradamt <104826920+fradamt@users.noreply.github.com>
Co-authored-by: Jacob Kaufmann <jacobkaufmann18@gmail.com>

Fix `get_data_column_sidecars` and `get_custody_lines`

Apply suggestions from code review

Co-authored-by: Jacob Kaufmann <jacobkaufmann18@gmail.com>

Enhance tests

fix typo

Co-authored-by: fradamt <104826920+fradamt@users.noreply.github.com>

Remove `epoch` from `get_custody_lines`

fix

fix
2024-01-15 17:12:43 +08:00
Hsiao-Wei Wang
1509b22c7a
Merge pull request #3557 from ethereum/polynomial-commitments-sampling
EIP-7594: Add cryptography specs for sampling
2024-01-15 16:16:49 +08:00
Hsiao-Wei Wang
b7d9ea9a75
Rename peerdas to eip7594 2024-01-14 00:13:08 +08:00
Hsiao-Wei Wang
e42974ef03
Merge pull request #3571 from etan-status/lc-periodhelpers
Extract sync committee period <-> slot helpers to common LC test module
2024-01-11 00:16:20 +08:00
Etan Kissling
240a127f9f
Consider fork transitions when using get_sync_aggregate helper func
When calling `get_sync_aggregate` with a `signature_slot - 1` in a
future fork, i.e., the first slot of the new fork is missed, it uses
a wrong fork version for the signature. Fix that by correctly applying
fork transitions to the `signature_state`, if a fork schedule is given.
2024-01-09 16:10:28 +01:00
Etan Kissling
6c6ed3eab9
Extract sync committee period <-> slot helpers to common LC test module
The two functions `compute_start_slot_at_sync_committee_period` and
`compute_start_slot_at_next_sync_committee_period` are currently only
available during LC `test_sync`. Move them to the common LC test module
so that they can be used from future tests as well.
2024-01-09 15:49:45 +01:00
Etan Kissling
0e155327fd
Add guard when fill_prev_epoch is True in epoch 0
`state_transition_with_full_block` takes two flags, `fill_cur_epoch`
and `fill_prev_epoch`, to control what attestations to include into
the new testing block.

While `fill_cur_epoch` uses `MIN_ATTESTATION_INCLUSION_DELAY` as the
minimum slot before taking effect, `fill_prev_epoch` results in an
annoying assert, requiring caller to work around the case of calling
the function as usual at the start.

This adds a similar minimum slot `SLOTS_PER_EPOCH` for `fill_prev_epoch`
before which the flag is ignored, same as for `fill_cur_epoch`.
2024-01-09 15:41:35 +01:00
Etan Kissling
69d043b437
Extract LC migration test helpers to light_client.py module
The helpers needed to migrate LC data across forks are generic enough to
allow extraction from a specific test into the common `light_client.py`
helper module. This way, it is possible to use them from future tests.

Also complete the missing functions for `LightClientFinalityUpdate`,
`LightClientOptimisticUpdate` and `LightClientHeader` in same style.
2024-01-09 15:33:43 +01:00
Hsiao-Wei Wang
7f8858b2ac
Add PeerDAS feature 2024-01-05 18:43:37 +08:00
Hsiao-Wei Wang
9fbf75139d
Add assertion to ensure eval usage is fine 2023-12-21 22:55:46 +08:00
Hsiao-Wei Wang
eb16a77702
Refactor do_fork with terrifying eval() and PREVIOUS_FORK_OF 2023-12-15 03:24:42 +08:00
Hsiao-Wei Wang
1d7c3d4164
Use md_doc_paths.py is_post_fork in pyspec itself; clean up create_genesis_state helper 2023-12-15 03:23:28 +08:00
Hsiao-Wei Wang
b89434f831
Extract the hardcoded spec names into a specs.py file 2023-12-15 00:55:20 +08:00
Hsiao-Wei Wang
bf09b9a7c4
Merge pull request #3442 from dapplion/whisk-tests
Add WHISK fork only tests
2023-12-08 18:56:03 +09:00
dapplion
42d91d5482 fix tests for mainnet preset 2023-12-07 22:22:49 +01:00
dapplion
e8e00f332a move attestation index outside signed message 2023-12-05 14:16:07 +02:00
Hsiao-Wei Wang
581a64be2b
cleanup leftover 2023-11-30 18:56:51 +08:00
Hsiao-Wei Wang
6fb9b0a9a4
Revert the spec. Only handle it in tests 2023-11-30 03:58:27 +08:00
Hsiao-Wei Wang
3d853b0ec9
Add assert time >= store.time to on_tick 2023-11-16 17:25:54 +03:00
Etan Kissling
d9e53cbaf5
Merge branch 'dev' into lc-gindexname 2023-11-06 12:32:53 +01:00
danny
c6f7adf319
Merge pull request #3531 from dapplion/blob-p2p-proof
Add blob sidecar inclusion proof
2023-11-02 09:56:08 -06:00
Hsiao-Wei Wang
38d354fb01
Merge pull request #3034 from michaelsproul/proposer-boost-reorg
Allow honest validators to reorg late blocks
2023-11-02 23:54:43 +09:00
Etan Kissling
89c986ee6a
Rename _INDEX generalized index constants to _GINDEX
To assist with readability, use `_GINDEX` suffix when referring to
generalized index constants.

Does neither affect consensus, beacon-API nor builder API.
2023-11-01 13:30:55 +01:00
Lion - dapplion
7f63f003c0
Merge branch 'dev' into blob-p2p-proof 2023-10-31 11:45:54 +02:00
Hsiao-Wei Wang
0e4737eba2
Add a general compute_merkle_proof helper to replace container-specific helpers 2023-10-30 14:44:32 +08:00
Alex Stokes
35e22702f3
remove BLOB_TX_TYPE from spec (and move to tests) 2023-10-28 11:11:27 -06:00
Hsiao-Wei Wang
d8440f8bb4
Merge branch 'dev' into pr3034 2023-10-26 23:51:35 +08:00
Hsiao-Wei Wang
24b4d46903
Add get_proposer_head and should_override_forkchoice_update tests 2023-10-25 01:30:45 +08:00