4935 Commits

Author SHA1 Message Date
tersec
b7cd0fe4a1
Revert "bump secp256k1 (#4356)" (#4359)
This reverts commit 60e01dcf78e2b16ccd8085789397156de5f4f7e3.
2022-11-25 13:07:16 +00:00
Jacek Sieka
60e01dcf78
bump secp256k1 (#4356)
See
eb5868e069
for changes
2022-11-25 10:51:20 +00:00
Chen
50d53e77c7 Minor edits for practicing Github workflow 2022-11-25 10:49:42 +08:00
zah
025c1a8b7c
The sync committee duties loop now starts after fork info to be available (#4355)
This is needed because the service needs to call `forkAtEpoch()` as part
of its operation.
2022-11-24 22:19:58 +00:00
Jacek Sieka
04392c236b
bumps (#4352)
* build&style fixes
* use multithreading for LTO outside of make too
* blst 0.3.10 with no significant changes
2022-11-24 20:56:02 +00:00
tersec
61c5ac32d8
automated consensus spec ref URL update to v1.3.0-alpha.1 (#4354) 2022-11-24 19:07:02 +00:00
Zahary Karadjov
b7b460cf57
Log more data on the 'Unable to retrieve blinded block data' error 2022-11-24 18:35:38 +02:00
Jacek Sieka
41f21b2688
era: fix verification of era 1 (#4351)
it has block 0 which is special
2022-11-24 15:38:56 +00:00
tersec
1fceb33b2e
more capella (#4350) 2022-11-24 14:38:07 +00:00
Chen Yang
925843c35b 4347 fix the REST API navigation typo 2022-11-24 18:00:48 +08:00
Eugene Kabanov
8fa6064b9a
VC: blinded block publishing support (#4332)
* Add blind REST API declarations and implementations.

* shortLog is still not stable.

* Fix shortLog issues.

* Enable disabled logging statements.

* Address review comments.

* Avoid templates suffering from double evaluation of their params

* Address review comments.

* Fix compilation issue.

Co-authored-by: Zahary Karadjov <zahary@status.im>
2022-11-24 09:14:05 +00:00
tersec
c8083f2c32
implement more missing capella functionality (#4344) 2022-11-24 09:53:04 +02:00
tersec
e965d5e0e9
bump nim-web3 to get withdrawal support in Engine API call sigs/types (#4348) 2022-11-24 09:52:45 +02:00
Eugene Kabanov
fb4fea81b5
Fix doppelganger protection in validator duties. (#4345)
Fix missing activationEpoch setup.
2022-11-24 09:48:10 +02:00
zah
d07113767d
Bugfix: The VC was producing invalid sync committee contributions (#4343)
Since the sync committee duties are no longer updated on every slot
and previously the sync committee aggregators selection proofs were
generated during the duties update, this now resulted in the client
using stale selection proofs (they must be generated at each slot).

The fix consists of moving the selection proof generation logic in
a different function which is properly executed on each slot.

Other changes:

* The logtrace tool has been enhanced with a framework for adding
  new simpler log aggregation and analysis algorithms.
  The default CI testnet simulation will now ensure that the blocks
  in the network have reasonable sync committee participation.
2022-11-24 09:46:35 +02:00
Jacek Sieka
44cab3a4cc
Update quick-start.md 2022-11-23 15:41:39 +01:00
Etan Kissling
2823be7306
periodically log LC sync progress (#4339)
Adds a "Slot start" log to the LC that behaves similar to BN to inform
the user that the light client is doing something, and to indicate the
latest view of the network (finalized / optimistic).
2022-11-22 16:39:03 +01:00
tersec
ec443601eb
implement capellaImplementationMissing points; don't track not-active validator duties (#4340)
* implement several capellaImplementationMissing points

* don't register validator activity for not-active validators

* don't check validator indices already coming out of committees which exist; must be active validators, or else other deeper bugs
2022-11-22 13:56:05 +02:00
dependabot[bot]
166746907f
Bump pillow from 9.0.1 to 9.3.0 in /ncli (#4342)
Bumps [pillow](https://github.com/python-pillow/Pillow) from 9.0.1 to 9.3.0.
- [Release notes](https://github.com/python-pillow/Pillow/releases)
- [Changelog](https://github.com/python-pillow/Pillow/blob/main/CHANGES.rst)
- [Commits](https://github.com/python-pillow/Pillow/compare/9.0.1...9.3.0)

---
updated-dependencies:
- dependency-name: pillow
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-11-22 11:42:41 +00:00
tersec
1146470f7d
use v1.3.0-alpha.1 consensus spec test vectors (#4338) 2022-11-21 08:44:49 +01:00
Eugene Kabanov
eb661565ed
Per-validator doppelganger protection. (#4304)
* Initial commit.

* NextAttestationEntry type.

* Add doppelgangerCheck and actual check.

* Recover deleted check.

* Remove NextAttestainEntry changes.

* More cleanups for NextAttestationEntry.

* Address review comments.

* Remove GENESIS_EPOCH specific check branch.

* Decrease number of full epochs for doppelganger check in VC.

Co-authored-by: zah <zahary@status.im>
2022-11-20 15:55:43 +02:00
Jacek Sieka
cc1464a935
readd bearssl/cacert 2022-11-20 08:20:23 +01:00
Etan Kissling
774eede63b
add ^C handler to LC binary (#4337)
Avoid ugly error message on ^C by adding a minimal ^C hook.
2022-11-19 11:58:04 +01:00
Kim De Mey
84bacf7cc6
Nimbus guide: Fix link to consensus light client page (#4336) 2022-11-18 18:22:10 +01:00
Etan Kissling
0e32ed0cc0
cancel non-started finalization testnets on cancel (#4334)
When cancelling the `minimal` CI finalization testnet on Jenkins, the
internal Jenkins cancellation exception is being caught by `catchError`
and the `mainnet` CI finalization testnet will still run. Replacing the
logic with `try` / `finally` instead, and moving the `archiveArtifacts`
step to the post-build (to run that even on cancellation / failure).
2022-11-18 16:08:56 +00:00
Lion - dapplion
95e93a3215
Schedule gnosis merge (#4330)
Co-authored-by: zah <zahary@status.im>
2022-11-17 15:06:47 +02:00
Eugene Kabanov
a2fc515db0
Address #4290. (#4333) 2022-11-17 13:09:20 +02:00
Etan Kissling
ef2b434ec9
quicker Geth startup in local testnet (#4329)
Local testnet simulation currently waits 5 seconds when starting each
individual Geth instance. Waiting a shorter amount saves almost a minute
per minimum + mainnet CI finalization job.
Measured startup times per Geth: Linux ~100ms, macOS Intel ~300ms.
2022-11-17 11:40:27 +02:00
Jacek Sieka
0fbea67cb7
grafana: remove container 2022-11-16 12:50:03 +01:00
Jacek Sieka
4925776e66
export dashboards properly
using export function
2022-11-16 12:38:52 +01:00
Jacek Sieka
0bccef68bd
update dashboards 2022-11-16 11:54:53 +01:00
Etan Kissling
bee3c4d68e
properly stop EL instances from prior testnets (#4328)
Launching multiple local testnet simulation sequentially can lead to
existing EL processes from prior failed/aborted runs not being stopped
properly, subsequently leading to hard-to-debug CI test failures.
Fixing the cleanup logic addresses this problem.
2022-11-16 12:12:20 +02:00
Jacek Sieka
aac61165d5
ncli_db: better error message on missing history 2022-11-16 10:12:50 +01:00
Jacek Sieka
64322a3d45
prater: update CONFIG_NAME (#4322) 2022-11-15 17:35:48 +00:00
Jacek Sieka
1b90f65f7b
doc updates (#4314)
* optimise index / landing page real estate, add feature list
* fee recipient in quickstart
* recommend http over websockets  (fewer command line options needed)
* simplify PBS, fee recipient docs
* add VC role / sentry node docs (#4140)
* Update docs/the_nimbus_book/src/rest-api.md

Co-authored-by: tersec <tersec@users.noreply.github.com>
2022-11-13 07:59:55 +01:00
Jacek Sieka
367a13df34
stew: bump (#4323)
fix Opt constants, cleanups
2022-11-11 18:07:34 +00:00
tersec
b3f6be71d5
refactor makeBeaconBlock; some capella support for ncli_db and wss_sim (#4321) 2022-11-11 15:37:43 +01:00
Etan Kissling
93714756d7
update sync_queue docs w.r.t. joker's problem (#4317)
Explicitly mention in-line documentation within `sync_queue` relating to
older specification version to make rationale clearer.
2022-11-11 15:36:02 +01:00
Etan Kissling
94ff73af34
remove unused SyncQueue.getFullMap function (#4319)
The `getFullMap` function is unused and can be removed (verified with
`{.deprecated.}`).
2022-11-11 12:36:56 +00:00
Etan Kissling
2eb56f6e1b
rename PeerScoreXyzBlocks -> PeerScoreXyzValues (#4318)
The various `PeerScore` constants are used for both beacon blocks and
LC objects, and will likely also find use for EIP4844 blob sidecars.
Renaming them to use more generically applicable names not referring
to blocks explicitly aymore.
2022-11-11 11:34:28 +00:00
Etan Kissling
94b3df25f8
remove unused sync_queue types (#4316)
`SyncManagerError` and `sync_queue.BeaconBlocksRes` are unused and can
be removed for cleanup (verified with `{.deprecated.}`).
2022-11-11 10:41:30 +00:00
tersec
35b1104bea
block_sim runs capella by default (#4315) 2022-11-11 10:17:27 +00:00
tersec
04cbea754b
don't require attached validator for blinded block BN endpoint (#4313) 2022-11-10 20:18:08 +00:00
Etan Kissling
48994f67d3
rename BlockError -> VerifierError (#4310)
We currently use `BlockError` for both beacon blocks and LC objects.
In light of EIP4844, we will likely also use it for blob sidecars.
To avoid confusion, renaming it to a more generic `VerifierError`,
and update its documentation to be more generic.

To avoid long lines as a followup, also renaming the `block_processor`'s
`BlockProcessingCompleted.completed`->`ProcessingStatus.completed` and
`BlockProcessingCompleted.notCompleted`->`ProcessingStatus.notCompleted`
2022-11-10 17:40:27 +00:00
Kim De Mey
2256a22594
Bump nim-eth for prettier logs in discv5 (#4312) 2022-11-10 16:37:37 +01:00
Jacek Sieka
09ade6d33d
Make trusted node sync era-aware (#4283)
This PR removes a bunch of code to make TNS aware of era files, avoiding
a duplicated backfill when era files are available.

* reuse chaindag for loading backfill state, replacing the TNS homebrew
* fix era block iteration to skip empty slots
* add tests for `can_advance_slots`
2022-11-10 10:44:47 +00:00
tersec
a63ec842bc
add light client capella CI tests (#4311) 2022-11-10 10:23:46 +00:00
Jacek Sieka
1691d89695
3x key loading speedup via blst sha256 (refs #4277) (#4301)
* 3x key loading speedup via blst sha256 (refs #4277)

* readd sha2
2022-11-10 00:05:50 +02:00
tersec
90eb2ccb20
database and fork choice test runner support for capella (#4309) 2022-11-09 17:32:10 +00:00
tersec
0919b8689e
run capella fork transition tests in CI (#4307) 2022-11-09 12:28:34 +00:00