@lodestar/beacon-node 1.32.0-dev.ea8c82564a → 1.32.0-peerDAS.23530b6726
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/api/impl/beacon/blocks/index.js +40 -14
- package/lib/api/impl/beacon/blocks/index.js.map +1 -1
- package/lib/api/impl/beacon/state/index.js +1 -13
- package/lib/api/impl/beacon/state/index.js.map +1 -1
- package/lib/api/impl/debug/index.d.ts +1 -1
- package/lib/api/impl/debug/index.js +24 -1
- package/lib/api/impl/debug/index.js.map +1 -1
- package/lib/api/impl/validator/index.js +29 -43
- package/lib/api/impl/validator/index.js.map +1 -1
- package/lib/chain/archiveStore/archiveStore.d.ts +1 -1
- package/lib/chain/archiveStore/archiveStore.js +2 -2
- package/lib/chain/archiveStore/interface.d.ts +1 -1
- package/lib/chain/archiveStore/utils/archiveBlocks.d.ts +1 -1
- package/lib/chain/archiveStore/utils/archiveBlocks.js +88 -23
- package/lib/chain/archiveStore/utils/archiveBlocks.js.map +1 -1
- package/lib/chain/beaconProposerCache.d.ts +1 -0
- package/lib/chain/beaconProposerCache.js +3 -0
- package/lib/chain/beaconProposerCache.js.map +1 -1
- package/lib/chain/blocks/importBlock.js +25 -15
- package/lib/chain/blocks/importBlock.js.map +1 -1
- package/lib/chain/blocks/types.d.ts +65 -24
- package/lib/chain/blocks/types.js +39 -6
- package/lib/chain/blocks/types.js.map +1 -1
- package/lib/chain/blocks/verifyBlocksDataAvailability.js +21 -10
- package/lib/chain/blocks/verifyBlocksDataAvailability.js.map +1 -1
- package/lib/chain/blocks/writeBlockInputToDb.js +89 -15
- package/lib/chain/blocks/writeBlockInputToDb.js.map +1 -1
- package/lib/chain/chain.d.ts +16 -8
- package/lib/chain/chain.js +27 -4
- package/lib/chain/chain.js.map +1 -1
- package/lib/chain/emitter.d.ts +18 -2
- package/lib/chain/emitter.js +13 -0
- package/lib/chain/emitter.js.map +1 -1
- package/lib/chain/errors/dataColumnSidecarError.d.ts +69 -0
- package/lib/chain/errors/dataColumnSidecarError.js +21 -0
- package/lib/chain/errors/dataColumnSidecarError.js.map +1 -0
- package/lib/chain/errors/index.d.ts +1 -0
- package/lib/chain/errors/index.js +1 -0
- package/lib/chain/errors/index.js.map +1 -1
- package/lib/chain/interface.d.ts +11 -5
- package/lib/chain/interface.js.map +1 -1
- package/lib/chain/options.d.ts +4 -1
- package/lib/chain/options.js +4 -0
- package/lib/chain/options.js.map +1 -1
- package/lib/chain/produceBlock/produceBlockBody.d.ts +5 -3
- package/lib/chain/produceBlock/produceBlockBody.js +117 -141
- package/lib/chain/produceBlock/produceBlockBody.js.map +1 -1
- package/lib/chain/produceBlock/validateBlobsAndKzgCommitments.d.ts +3 -2
- package/lib/chain/produceBlock/validateBlobsAndKzgCommitments.js +25 -2
- package/lib/chain/produceBlock/validateBlobsAndKzgCommitments.js.map +1 -1
- package/lib/chain/seenCache/seenGossipBlockInput.d.ts +61 -18
- package/lib/chain/seenCache/seenGossipBlockInput.js +254 -53
- package/lib/chain/seenCache/seenGossipBlockInput.js.map +1 -1
- package/lib/chain/validation/blobSidecar.d.ts +1 -1
- package/lib/chain/validation/blobSidecar.js +6 -6
- package/lib/chain/validation/blobSidecar.js.map +1 -1
- package/lib/chain/validation/dataColumnSidecar.d.ts +28 -0
- package/lib/chain/validation/dataColumnSidecar.js +245 -0
- package/lib/chain/validation/dataColumnSidecar.js.map +1 -0
- package/lib/db/beacon.d.ts +3 -1
- package/lib/db/beacon.js +3 -1
- package/lib/db/beacon.js.map +1 -1
- package/lib/db/buckets.d.ts +3 -1
- package/lib/db/buckets.js +2 -0
- package/lib/db/buckets.js.map +1 -1
- package/lib/db/interface.d.ts +3 -1
- package/lib/db/repositories/dataColumnSidecars.d.ts +47 -0
- package/lib/db/repositories/dataColumnSidecars.js +40 -0
- package/lib/db/repositories/dataColumnSidecars.js.map +1 -0
- package/lib/db/repositories/dataColumnSidecarsArchive.d.ts +15 -0
- package/lib/db/repositories/dataColumnSidecarsArchive.js +23 -0
- package/lib/db/repositories/dataColumnSidecarsArchive.js.map +1 -0
- package/lib/db/repositories/index.d.ts +2 -0
- package/lib/db/repositories/index.js +2 -0
- package/lib/db/repositories/index.js.map +1 -1
- package/lib/execution/engine/http.d.ts +5 -3
- package/lib/execution/engine/http.js +70 -31
- package/lib/execution/engine/http.js.map +1 -1
- package/lib/execution/engine/interface.d.ts +4 -2
- package/lib/execution/engine/interface.js +1 -1
- package/lib/execution/engine/interface.js.map +1 -1
- package/lib/execution/engine/mock.d.ts +1 -0
- package/lib/execution/engine/mock.js +8 -3
- package/lib/execution/engine/mock.js.map +1 -1
- package/lib/execution/engine/types.d.ts +10 -0
- package/lib/execution/engine/types.js +6 -0
- package/lib/execution/engine/types.js.map +1 -1
- package/lib/metrics/metrics/beacon.d.ts +12 -0
- package/lib/metrics/metrics/beacon.js +44 -1
- package/lib/metrics/metrics/beacon.js.map +1 -1
- package/lib/network/core/metrics.d.ts +10 -3
- package/lib/network/core/metrics.js +22 -4
- package/lib/network/core/metrics.js.map +1 -1
- package/lib/network/core/networkCore.d.ts +10 -4
- package/lib/network/core/networkCore.js +63 -53
- package/lib/network/core/networkCore.js.map +1 -1
- package/lib/network/core/networkCoreWorker.js +2 -0
- package/lib/network/core/networkCoreWorker.js.map +1 -1
- package/lib/network/core/networkCoreWorkerHandler.d.ts +2 -0
- package/lib/network/core/networkCoreWorkerHandler.js +7 -0
- package/lib/network/core/networkCoreWorkerHandler.js.map +1 -1
- package/lib/network/core/types.d.ts +4 -4
- package/lib/network/discv5/index.d.ts +0 -1
- package/lib/network/discv5/index.js +0 -1
- package/lib/network/discv5/index.js.map +1 -1
- package/lib/network/discv5/types.d.ts +0 -1
- package/lib/network/discv5/utils.d.ts +1 -3
- package/lib/network/discv5/utils.js +2 -12
- package/lib/network/discv5/utils.js.map +1 -1
- package/lib/network/discv5/worker.js +1 -5
- package/lib/network/discv5/worker.js.map +1 -1
- package/lib/network/events.d.ts +3 -1
- package/lib/network/events.js.map +1 -1
- package/lib/network/forks.d.ts +0 -2
- package/lib/network/forks.js +0 -4
- package/lib/network/forks.js.map +1 -1
- package/lib/network/gossip/interface.d.ts +8 -1
- package/lib/network/gossip/interface.js +1 -0
- package/lib/network/gossip/interface.js.map +1 -1
- package/lib/network/gossip/scoringParameters.js +3 -4
- package/lib/network/gossip/scoringParameters.js.map +1 -1
- package/lib/network/gossip/topic.d.ts +1047 -1031
- package/lib/network/gossip/topic.js +20 -1
- package/lib/network/gossip/topic.js.map +1 -1
- package/lib/network/interface.d.ts +13 -1
- package/lib/network/metadata.d.ts +10 -6
- package/lib/network/metadata.js +23 -4
- package/lib/network/metadata.js.map +1 -1
- package/lib/network/network.d.ts +12 -1
- package/lib/network/network.js +61 -9
- package/lib/network/network.js.map +1 -1
- package/lib/network/networkConfig.d.ts +23 -0
- package/lib/network/networkConfig.js +32 -0
- package/lib/network/networkConfig.js.map +1 -0
- package/lib/network/options.js +2 -0
- package/lib/network/options.js.map +1 -1
- package/lib/network/peers/discover.d.ts +14 -3
- package/lib/network/peers/discover.js +139 -14
- package/lib/network/peers/discover.js.map +1 -1
- package/lib/network/peers/peerManager.d.ts +10 -2
- package/lib/network/peers/peerManager.js +96 -10
- package/lib/network/peers/peerManager.js.map +1 -1
- package/lib/network/peers/peersData.d.ts +8 -2
- package/lib/network/peers/peersData.js.map +1 -1
- package/lib/network/peers/score/interface.d.ts +1 -1
- package/lib/network/peers/score/score.d.ts +2 -2
- package/lib/network/peers/score/score.js +4 -1
- package/lib/network/peers/score/score.js.map +1 -1
- package/lib/network/peers/score/store.d.ts +3 -1
- package/lib/network/peers/score/store.js +6 -2
- package/lib/network/peers/score/store.js.map +1 -1
- package/lib/network/peers/utils/prioritizePeers.d.ts +15 -4
- package/lib/network/peers/utils/prioritizePeers.js +30 -5
- package/lib/network/peers/utils/prioritizePeers.js.map +1 -1
- package/lib/network/processor/extractSlotRootFns.js +8 -1
- package/lib/network/processor/extractSlotRootFns.js.map +1 -1
- package/lib/network/processor/gossipHandlers.js +154 -8
- package/lib/network/processor/gossipHandlers.js.map +1 -1
- package/lib/network/processor/gossipQueues/index.js +5 -0
- package/lib/network/processor/gossipQueues/index.js.map +1 -1
- package/lib/network/processor/index.js +1 -0
- package/lib/network/processor/index.js.map +1 -1
- package/lib/network/reqresp/ReqRespBeaconNode.d.ts +3 -3
- package/lib/network/reqresp/ReqRespBeaconNode.js +29 -12
- package/lib/network/reqresp/ReqRespBeaconNode.js.map +1 -1
- package/lib/network/reqresp/beaconBlocksMaybeBlobsByRange.d.ts +14 -5
- package/lib/network/reqresp/beaconBlocksMaybeBlobsByRange.js +199 -14
- package/lib/network/reqresp/beaconBlocksMaybeBlobsByRange.js.map +1 -1
- package/lib/network/reqresp/beaconBlocksMaybeBlobsByRoot.d.ts +32 -5
- package/lib/network/reqresp/beaconBlocksMaybeBlobsByRoot.js +280 -26
- package/lib/network/reqresp/beaconBlocksMaybeBlobsByRoot.js.map +1 -1
- package/lib/network/reqresp/handlers/beaconBlocksByRange.d.ts +1 -1
- package/lib/network/reqresp/handlers/beaconBlocksByRange.js +2 -2
- package/lib/network/reqresp/handlers/beaconBlocksByRange.js.map +1 -1
- package/lib/network/reqresp/handlers/beaconBlocksByRoot.js +1 -1
- package/lib/network/reqresp/handlers/beaconBlocksByRoot.js.map +1 -1
- package/lib/network/reqresp/handlers/blobSidecarsByRange.js +1 -1
- package/lib/network/reqresp/handlers/blobSidecarsByRange.js.map +1 -1
- package/lib/network/reqresp/handlers/blobSidecarsByRoot.js +1 -1
- package/lib/network/reqresp/handlers/blobSidecarsByRoot.js.map +1 -1
- package/lib/network/reqresp/handlers/dataColumnSidecarsByRange.d.ts +8 -0
- package/lib/network/reqresp/handlers/dataColumnSidecarsByRange.js +106 -0
- package/lib/network/reqresp/handlers/dataColumnSidecarsByRange.js.map +1 -0
- package/lib/network/reqresp/handlers/dataColumnSidecarsByRoot.d.ts +6 -0
- package/lib/network/reqresp/handlers/dataColumnSidecarsByRoot.js +57 -0
- package/lib/network/reqresp/handlers/dataColumnSidecarsByRoot.js.map +1 -0
- package/lib/network/reqresp/handlers/index.js +10 -0
- package/lib/network/reqresp/handlers/index.js.map +1 -1
- package/lib/network/reqresp/handlers/lightClientBootstrap.js +1 -1
- package/lib/network/reqresp/handlers/lightClientBootstrap.js.map +1 -1
- package/lib/network/reqresp/handlers/lightClientFinalityUpdate.js +1 -1
- package/lib/network/reqresp/handlers/lightClientFinalityUpdate.js.map +1 -1
- package/lib/network/reqresp/handlers/lightClientOptimisticUpdate.js +1 -1
- package/lib/network/reqresp/handlers/lightClientOptimisticUpdate.js.map +1 -1
- package/lib/network/reqresp/handlers/lightClientUpdatesByRange.js +1 -1
- package/lib/network/reqresp/handlers/lightClientUpdatesByRange.js.map +1 -1
- package/lib/network/reqresp/handlers/status.js +1 -1
- package/lib/network/reqresp/handlers/status.js.map +1 -1
- package/lib/network/reqresp/protocols.d.ts +3 -0
- package/lib/network/reqresp/protocols.js +15 -0
- package/lib/network/reqresp/protocols.js.map +1 -1
- package/lib/network/reqresp/rateLimit.js +11 -1
- package/lib/network/reqresp/rateLimit.js.map +1 -1
- package/lib/network/reqresp/types.d.ts +13 -6
- package/lib/network/reqresp/types.js +9 -2
- package/lib/network/reqresp/types.js.map +1 -1
- package/lib/network/subnets/attnetsService.d.ts +3 -3
- package/lib/network/subnets/attnetsService.js +15 -15
- package/lib/network/subnets/attnetsService.js.map +1 -1
- package/lib/network/subnets/interface.d.ts +6 -3
- package/lib/network/subnets/interface.js +14 -1
- package/lib/network/subnets/interface.js.map +1 -1
- package/lib/network/subnets/syncnetsService.d.ts +3 -3
- package/lib/network/subnets/syncnetsService.js +13 -14
- package/lib/network/subnets/syncnetsService.js.map +1 -1
- package/lib/node/nodejs.js +1 -6
- package/lib/node/nodejs.js.map +1 -1
- package/lib/sync/interface.d.ts +2 -2
- package/lib/sync/interface.js +1 -1
- package/lib/sync/interface.js.map +1 -1
- package/lib/sync/range/batch.d.ts +8 -2
- package/lib/sync/range/batch.js +19 -7
- package/lib/sync/range/batch.js.map +1 -1
- package/lib/sync/range/chain.d.ts +7 -2
- package/lib/sync/range/chain.js +45 -21
- package/lib/sync/range/chain.js.map +1 -1
- package/lib/sync/range/range.js +3 -3
- package/lib/sync/range/range.js.map +1 -1
- package/lib/sync/range/utils/peerBalancer.d.ts +4 -1
- package/lib/sync/range/utils/peerBalancer.js +20 -2
- package/lib/sync/range/utils/peerBalancer.js.map +1 -1
- package/lib/sync/unknownBlock.d.ts +8 -1
- package/lib/sync/unknownBlock.js +222 -62
- package/lib/sync/unknownBlock.js.map +1 -1
- package/lib/util/blobs.d.ts +13 -1
- package/lib/util/blobs.js +44 -1
- package/lib/util/blobs.js.map +1 -1
- package/lib/util/dataColumns.d.ts +125 -0
- package/lib/util/dataColumns.js +284 -0
- package/lib/util/dataColumns.js.map +1 -0
- package/lib/util/kzg.d.ts +2 -34
- package/lib/util/kzg.js +2 -123
- package/lib/util/kzg.js.map +1 -1
- package/lib/util/metadata.d.ts +4 -0
- package/lib/util/metadata.js +7 -0
- package/lib/util/metadata.js.map +1 -1
- package/lib/util/sszBytes.d.ts +1 -0
- package/lib/util/sszBytes.js +17 -0
- package/lib/util/sszBytes.js.map +1 -1
- package/package.json +15 -15
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"networkCoreWorkerHandler.js","sourceRoot":"","sources":["../../../src/network/core/networkCoreWorkerHandler.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"networkCoreWorkerHandler.js","sourceRoot":"","sources":["../../../src/network/core/networkCoreWorkerHandler.ts"],"names":[],"mappings":"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"}
|
|
@@ -3,7 +3,6 @@ import { PublishOpts } from "@chainsafe/libp2p-gossipsub/types";
|
|
|
3
3
|
import { routes } from "@lodestar/api";
|
|
4
4
|
import { SpecJson } from "@lodestar/config";
|
|
5
5
|
import { LoggerNodeOpts } from "@lodestar/logger/node";
|
|
6
|
-
import { ForkName } from "@lodestar/params";
|
|
7
6
|
import { ResponseIncoming } from "@lodestar/reqresp";
|
|
8
7
|
import { phase0 } from "@lodestar/types";
|
|
9
8
|
import { PeerIdStr } from "../../util/peerId.js";
|
|
@@ -12,9 +11,6 @@ import { PeerAction, PeerScoreStats } from "../peers/index.js";
|
|
|
12
11
|
import { OutgoingRequestArgs } from "../reqresp/types.js";
|
|
13
12
|
import { CommitteeSubscription } from "../subnets/interface.js";
|
|
14
13
|
export type MultiaddrStr = string;
|
|
15
|
-
export type SubscribeBoundary = {
|
|
16
|
-
fork: ForkName;
|
|
17
|
-
};
|
|
18
14
|
export interface INetworkCorePublic {
|
|
19
15
|
prepareBeaconCommitteeSubnets(subscriptions: CommitteeSubscription[]): Promise<void>;
|
|
20
16
|
prepareSyncCommitteeSubnets(subscriptions: CommitteeSubscription[]): Promise<void>;
|
|
@@ -42,6 +38,8 @@ export interface INetworkCore extends INetworkCorePublic {
|
|
|
42
38
|
getConnectedPeerCount(): Promise<number>;
|
|
43
39
|
/** Chain must push status updates to the network core */
|
|
44
40
|
updateStatus(status: phase0.Status): Promise<void>;
|
|
41
|
+
setTargetGroupCount(count: number): Promise<void>;
|
|
42
|
+
setAdvertisedGroupCount(count: number): Promise<void>;
|
|
45
43
|
/** Opens stream to handle ReqResp outgoing request */
|
|
46
44
|
sendReqRespRequest(data: OutgoingRequestArgs): AsyncIterable<ResponseIncoming>;
|
|
47
45
|
/** Publish gossip message to peers */
|
|
@@ -79,6 +77,8 @@ export type NetworkWorkerApi = INetworkCorePublic & {
|
|
|
79
77
|
getConnectedPeers(): Promise<PeerIdStr[]>;
|
|
80
78
|
getConnectedPeerCount(): Promise<number>;
|
|
81
79
|
updateStatus(status: phase0.Status): Promise<void>;
|
|
80
|
+
setTargetGroupCount(count: number): Promise<void>;
|
|
81
|
+
setAdvertisedGroupCount(count: number): Promise<void>;
|
|
82
82
|
publishGossip(topic: string, data: Uint8Array, opts?: PublishOpts): Promise<number>;
|
|
83
83
|
close(): Promise<void>;
|
|
84
84
|
scrapeMetrics(): Promise<string>;
|
|
@@ -25,7 +25,6 @@ export class Discv5Worker extends EventEmitter {
|
|
|
25
25
|
chainConfig: chainConfigFromJson(chainConfigToJson(opts.config)),
|
|
26
26
|
genesisValidatorsRoot: opts.config.genesisValidatorsRoot,
|
|
27
27
|
loggerOpts: opts.logger.toOpts(),
|
|
28
|
-
genesisTime: opts.genesisTime,
|
|
29
28
|
};
|
|
30
29
|
const worker = new Worker("./worker.js", { workerData });
|
|
31
30
|
const workerApi = await spawn(worker, {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/network/discv5/index.ts"],"names":[],"mappings":"AAAA,OAAO,YAAY,MAAM,aAAa,CAAC;AACvC,OAAO,EAAC,GAAG,EAAW,WAAW,EAAC,MAAM,gBAAgB,CAAC;AACzD,OAAO,EAAC,MAAM,EAAE,MAAM,EAAE,KAAK,EAAC,MAAM,oBAAoB,CAAC;AACzD,OAAO,EAAC,oBAAoB,EAAC,MAAM,qBAAqB,CAAC;AAEzD,OAAO,EAAe,mBAAmB,EAAE,iBAAiB,EAAC,MAAM,kBAAkB,CAAC;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/network/discv5/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,12 +1,10 @@
|
|
|
1
1
|
import { ENR } from "@chainsafe/enr";
|
|
2
2
|
import { BeaconConfig } from "@lodestar/config";
|
|
3
|
-
import { IClock } from "../../util/clock.js";
|
|
4
3
|
export declare enum ENRRelevance {
|
|
5
4
|
no_tcp = "no_tcp",
|
|
6
5
|
no_eth2 = "no_eth2",
|
|
7
6
|
unknown_forkDigest = "unknown_forkDigest",
|
|
8
|
-
current_fork_mismatch = "current_fork_mismatch",
|
|
9
7
|
relevant = "relevant"
|
|
10
8
|
}
|
|
11
|
-
export declare function enrRelevance(enr: ENR, config: BeaconConfig
|
|
9
|
+
export declare function enrRelevance(enr: ENR, config: BeaconConfig): ENRRelevance;
|
|
12
10
|
//# sourceMappingURL=utils.d.ts.map
|
|
@@ -1,4 +1,3 @@
|
|
|
1
|
-
import { MAXIMUM_GOSSIP_CLOCK_DISPARITY } from "../../constants/constants.js";
|
|
2
1
|
import { ENRKey } from "../metadata.js";
|
|
3
2
|
export var ENRRelevance;
|
|
4
3
|
(function (ENRRelevance) {
|
|
@@ -6,10 +5,9 @@ export var ENRRelevance;
|
|
|
6
5
|
ENRRelevance["no_eth2"] = "no_eth2";
|
|
7
6
|
// biome-ignore lint/style/useNamingConvention: Need to use the this name for network convention
|
|
8
7
|
ENRRelevance["unknown_forkDigest"] = "unknown_forkDigest";
|
|
9
|
-
ENRRelevance["current_fork_mismatch"] = "current_fork_mismatch";
|
|
10
8
|
ENRRelevance["relevant"] = "relevant";
|
|
11
9
|
})(ENRRelevance || (ENRRelevance = {}));
|
|
12
|
-
export function enrRelevance(enr, config
|
|
10
|
+
export function enrRelevance(enr, config) {
|
|
13
11
|
// We are not interested in peers that don't advertise their tcp addr
|
|
14
12
|
const multiaddrTCP = enr.getLocationMultiaddr(ENRKey.tcp);
|
|
15
13
|
if (!multiaddrTCP) {
|
|
@@ -27,15 +25,7 @@ export function enrRelevance(enr, config, clock) {
|
|
|
27
25
|
if (forkName == null) {
|
|
28
26
|
return ENRRelevance.unknown_forkDigest;
|
|
29
27
|
}
|
|
30
|
-
//
|
|
31
|
-
const currentSlot = clock.slotWithFutureTolerance(MAXIMUM_GOSSIP_CLOCK_DISPARITY);
|
|
32
|
-
const localForkInfo = config.getForkInfo(currentSlot);
|
|
33
|
-
// We only connect if the ENR's fork matches our current fork.
|
|
34
|
-
// We also allow it to be the previous fork due to delay and infrequent update of DHT.
|
|
35
|
-
if (forkName !== localForkInfo.name && forkName !== localForkInfo.prevForkName) {
|
|
36
|
-
return ENRRelevance.current_fork_mismatch;
|
|
37
|
-
}
|
|
38
|
-
// TODO: If we have next fork scheduled, check if next fork info matches ours
|
|
28
|
+
// TODO: Then check if the next fork info matches ours
|
|
39
29
|
// const enrForkId = ssz.phase0.ENRForkID.deserialize(eth2);
|
|
40
30
|
return ENRRelevance.relevant;
|
|
41
31
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../../../src/network/discv5/utils.ts"],"names":[],"mappings":"AAEA,OAAO,EAAC,
|
|
1
|
+
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../../../src/network/discv5/utils.ts"],"names":[],"mappings":"AAEA,OAAO,EAAC,MAAM,EAAC,MAAM,gBAAgB,CAAC;AAEtC,MAAM,CAAN,IAAY,YAMX;AAND,WAAY,YAAY;IACtB,iCAAiB,CAAA;IACjB,mCAAmB,CAAA;IACnB,gGAAgG;IAChG,yDAAyC,CAAA;IACzC,qCAAqB,CAAA;AACvB,CAAC,EANW,YAAY,KAAZ,YAAY,QAMvB;AAED,MAAM,UAAU,YAAY,CAAC,GAAQ,EAAE,MAAoB;IACzD,qEAAqE;IACrE,MAAM,YAAY,GAAG,GAAG,CAAC,oBAAoB,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;IAC1D,IAAI,CAAC,YAAY,EAAE,CAAC;QAClB,OAAO,YAAY,CAAC,MAAM,CAAC;IAC7B,CAAC;IAED,yDAAyD;IACzD,MAAM,IAAI,GAAG,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;IACtC,IAAI,CAAC,IAAI,EAAE,CAAC;QACV,OAAO,YAAY,CAAC,OAAO,CAAC;IAC9B,CAAC;IAED,oCAAoC;IACpC,MAAM,UAAU,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;IACpC,sDAAsD;IACtD,MAAM,QAAQ,GAAG,MAAM,CAAC,yBAAyB,CAAC,UAAU,CAAC,CAAC;IAC9D,IAAI,QAAQ,IAAI,IAAI,EAAE,CAAC;QACrB,OAAO,YAAY,CAAC,kBAAkB,CAAC;IACzC,CAAC;IAED,sDAAsD;IACtD,4DAA4D;IAE5D,OAAO,YAAY,CAAC,QAAQ,CAAC;AAC/B,CAAC"}
|
|
@@ -12,7 +12,6 @@ import { getNodeLogger } from "@lodestar/logger/node";
|
|
|
12
12
|
import { multiaddr } from "@multiformats/multiaddr";
|
|
13
13
|
import { RegistryMetricCreator } from "../../metrics/index.js";
|
|
14
14
|
import { collectNodeJSMetrics } from "../../metrics/nodeJsMetrics.js";
|
|
15
|
-
import { Clock } from "../../util/clock.js";
|
|
16
15
|
import { profileNodeJS, writeHeapSnapshot } from "../../util/profile.js";
|
|
17
16
|
import { ENRRelevance, enrRelevance } from "./utils.js";
|
|
18
17
|
// This discv5 worker will start discv5 on initialization (there is no `start` function to call)
|
|
@@ -57,11 +56,8 @@ for (const bootEnr of workerData.bootEnrs) {
|
|
|
57
56
|
}
|
|
58
57
|
/** Used to push discovered ENRs */
|
|
59
58
|
const subject = new Subject();
|
|
60
|
-
/** Define a new clock */
|
|
61
|
-
const abortController = new AbortController();
|
|
62
|
-
const clock = new Clock({ config, genesisTime: workerData.genesisTime, signal: abortController.signal });
|
|
63
59
|
const onDiscovered = (enr) => {
|
|
64
|
-
const status = enrRelevance(enr, config
|
|
60
|
+
const status = enrRelevance(enr, config);
|
|
65
61
|
enrRelevanceMetric?.inc({ status });
|
|
66
62
|
if (status === ENRRelevance.relevant) {
|
|
67
63
|
subject.next(enr.toObject());
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"worker.js","sourceRoot":"","sources":["../../../src/network/discv5/worker.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,SAAS,CAAC;AACzB,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,MAAM,MAAM,qBAAqB,CAAC;AACzC,OAAO,EAAC,MAAM,EAAC,MAAM,mBAAmB,CAAC;AACzC,OAAO,EAAe,WAAW,EAAkB,MAAM,gBAAgB,CAAC;AAC1E,OAAO,EAAC,UAAU,EAAE,OAAO,EAAC,MAAM,+BAA+B,CAAC;AAClE,OAAO,EAAC,MAAM,EAAC,MAAM,2BAA2B,CAAC;AACjD,OAAO,EAAC,sBAAsB,EAAC,MAAM,qBAAqB,CAAC;AAC3D,OAAO,EAAC,oBAAoB,EAAC,MAAM,iBAAiB,CAAC;AACrD,OAAO,EAAC,kBAAkB,EAAC,MAAM,kBAAkB,CAAC;AACpD,OAAO,EAAC,aAAa,EAAC,MAAM,uBAAuB,CAAC;AAEpD,OAAO,EAAY,SAAS,EAAC,MAAM,yBAAyB,CAAC;AAC7D,OAAO,EAAC,qBAAqB,EAAC,MAAM,wBAAwB,CAAC;AAC7D,OAAO,EAAC,oBAAoB,EAAC,MAAM,gCAAgC,CAAC;AACpE,OAAO,EAAC,
|
|
1
|
+
{"version":3,"file":"worker.js","sourceRoot":"","sources":["../../../src/network/discv5/worker.ts"],"names":[],"mappings":"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"}
|
package/lib/network/events.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { PeerId, TopicValidatorResult } from "@libp2p/interface";
|
|
2
|
-
import { RootHex, phase0 } from "@lodestar/types";
|
|
2
|
+
import { ColumnIndex, RootHex, phase0 } from "@lodestar/types";
|
|
3
3
|
import { BlockInput, NullBlockInput } from "../chain/blocks/types.js";
|
|
4
4
|
import { PeerIdStr } from "../util/peerId.js";
|
|
5
5
|
import { StrictEventEmitterSingleArg } from "../util/strictEvents.js";
|
|
@@ -24,6 +24,8 @@ export type NetworkEventData = {
|
|
|
24
24
|
[NetworkEvent.peerConnected]: {
|
|
25
25
|
peer: PeerIdStr;
|
|
26
26
|
status: phase0.Status;
|
|
27
|
+
dataColumns: ColumnIndex[];
|
|
28
|
+
clientAgent: string;
|
|
27
29
|
};
|
|
28
30
|
[NetworkEvent.peerDisconnected]: {
|
|
29
31
|
peer: PeerIdStr;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"events.js","sourceRoot":"","sources":["../../src/network/events.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,YAAY,EAAC,MAAM,aAAa,CAAC;AAMzC,OAAO,EAAC,cAAc,EAAC,MAAM,yBAAyB,CAAC;AAIvD,MAAM,CAAN,IAAY,YAgBX;AAhBD,WAAY,YAAY;IACtB,4DAA4D;IAC5D,6DAA6C,CAAA;IAC7C,mCAAmC;IACnC,mEAAmD,CAAA;IACnD,mDAAmC,CAAA;IACnC,6FAA6F;IAC7F,yDAAyC,CAAA;IACzC,6CAA6B,CAAA;IAC7B,uDAAuC,CAAA;IAEvC,2BAA2B;IAC3B,gEAAgE;IAChE,0EAA0D,CAAA;IAC1D,2DAA2D;IAC3D,gFAAgE,CAAA;AAClE,CAAC,EAhBW,YAAY,KAAZ,YAAY,QAgBvB;
|
|
1
|
+
{"version":3,"file":"events.js","sourceRoot":"","sources":["../../src/network/events.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,YAAY,EAAC,MAAM,aAAa,CAAC;AAMzC,OAAO,EAAC,cAAc,EAAC,MAAM,yBAAyB,CAAC;AAIvD,MAAM,CAAN,IAAY,YAgBX;AAhBD,WAAY,YAAY;IACtB,4DAA4D;IAC5D,6DAA6C,CAAA;IAC7C,mCAAmC;IACnC,mEAAmD,CAAA;IACnD,mDAAmC,CAAA;IACnC,6FAA6F;IAC7F,yDAAyC,CAAA;IACzC,6CAA6B,CAAA;IAC7B,uDAAuC,CAAA;IAEvC,2BAA2B;IAC3B,gEAAgE;IAChE,0EAA0D,CAAA;IAC1D,2DAA2D;IAC3D,gFAAgE,CAAA;AAClE,CAAC,EAhBW,YAAY,KAAZ,YAAY,QAgBvB;AAsBD,MAAM,CAAC,MAAM,qBAAqB,GAAyC;IACzE,CAAC,YAAY,CAAC,aAAa,CAAC,EAAE,cAAc,CAAC,YAAY;IACzD,CAAC,YAAY,CAAC,gBAAgB,CAAC,EAAE,cAAc,CAAC,YAAY;IAC5D,CAAC,YAAY,CAAC,cAAc,CAAC,EAAE,cAAc,CAAC,IAAI,EAAE,sCAAsC;IAC1F,CAAC,YAAY,CAAC,kBAAkB,CAAC,EAAE,cAAc,CAAC,YAAY;IAC9D,CAAC,YAAY,CAAC,YAAY,CAAC,EAAE,cAAc,CAAC,YAAY;IACxD,CAAC,YAAY,CAAC,iBAAiB,CAAC,EAAE,cAAc,CAAC,YAAY;IAC7D,CAAC,YAAY,CAAC,uBAAuB,CAAC,EAAE,cAAc,CAAC,YAAY;IACnE,CAAC,YAAY,CAAC,6BAA6B,CAAC,EAAE,cAAc,CAAC,YAAY;CAC1E,CAAC;AAIF,MAAM,OAAO,eAAgB,SAAS,YAA2C;CAAG"}
|
package/lib/network/forks.d.ts
CHANGED
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
import { ChainForkConfig, ForkInfo } from "@lodestar/config";
|
|
2
2
|
import { ForkName } from "@lodestar/params";
|
|
3
3
|
import { Epoch } from "@lodestar/types";
|
|
4
|
-
import { SubscribeBoundary } from "./core/types.js";
|
|
5
4
|
/**
|
|
6
5
|
* Subscribe topics to the new fork N epochs before the fork. Remove all subscriptions N epochs after the fork
|
|
7
6
|
*
|
|
@@ -33,7 +32,6 @@ export declare const FORK_EPOCH_LOOKAHEAD = 2;
|
|
|
33
32
|
* @see FORK_EPOCH_LOOKAHEAD for details on when forks are considered 'active'
|
|
34
33
|
*/
|
|
35
34
|
export declare function getActiveForks(config: ChainForkConfig, epoch: Epoch): ForkName[];
|
|
36
|
-
export declare function getActiveSubscribeBoundaries(config: ChainForkConfig, epoch: Epoch): SubscribeBoundary[];
|
|
37
35
|
/**
|
|
38
36
|
* Return the currentFork and nextFork given a fork schedule and `epoch`
|
|
39
37
|
*/
|
package/lib/network/forks.js
CHANGED
|
@@ -44,10 +44,6 @@ export function getActiveForks(config, epoch) {
|
|
|
44
44
|
}
|
|
45
45
|
return activeForks;
|
|
46
46
|
}
|
|
47
|
-
export function getActiveSubscribeBoundaries(config, epoch) {
|
|
48
|
-
const activeForks = getActiveForks(config, epoch);
|
|
49
|
-
return activeForks.map((fork) => ({ fork }));
|
|
50
|
-
}
|
|
51
47
|
/**
|
|
52
48
|
* Return the currentFork and nextFork given a fork schedule and `epoch`
|
|
53
49
|
*/
|
package/lib/network/forks.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"forks.js","sourceRoot":"","sources":["../../src/network/forks.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"forks.js","sourceRoot":"","sources":["../../src/network/forks.ts"],"names":[],"mappings":"AAIA;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AACH,MAAM,CAAC,MAAM,oBAAoB,GAAG,CAAC,CAAC;AAEtC;;;GAGG;AACH,MAAM,UAAU,cAAc,CAAC,MAAuB,EAAE,KAAY;IAClE,MAAM,WAAW,GAAe,EAAE,CAAC;IACnC,MAAM,KAAK,GAAG,MAAM,CAAC,wBAAwB,CAAC;IAE9C,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QACtC,MAAM,aAAa,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC;QACrC,MAAM,aAAa,GAAG,CAAC,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC;QAE5E,qFAAqF;QACrF,IAAI,aAAa,KAAK,aAAa,EAAE,CAAC;YACpC,SAAS;QACX,CAAC;QAED,IAAI,KAAK,IAAI,aAAa,GAAG,oBAAoB,IAAI,KAAK,IAAI,aAAa,GAAG,oBAAoB,EAAE,CAAC;YACnG,WAAW,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;QAClC,CAAC;IACH,CAAC;IAED,OAAO,WAAW,CAAC;AACrB,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,qBAAqB,CACnC,MAAuB,EACvB,KAAY;IAEZ,IAAI,KAAK,GAAG,CAAC,EAAE,CAAC;QACd,KAAK,GAAG,CAAC,CAAC;IACZ,CAAC;IAED,0DAA0D;IAC1D,MAAM,KAAK,GAAG,MAAM,CAAC,wBAAwB,CAAC;IAC9C,IAAI,cAAc,GAAG,CAAC,CAAC,CAAC;IACxB,gBAAgB;IAChB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QACtC,IAAI,KAAK,IAAI,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK;YAAE,cAAc,GAAG,CAAC,CAAC;IAClD,CAAC;IAED,IAAI,WAAW,GAAG,cAAc,GAAG,CAAC,CAAC;IACrC,MAAM,WAAW,GAAG,KAAK,CAAC,WAAW,CAAC,KAAK,SAAS,IAAI,KAAK,CAAC,WAAW,CAAC,CAAC,KAAK,KAAK,QAAQ,CAAC;IAC9F,2FAA2F;IAC3F,mFAAmF;IACnF,IAAI,WAAW,EAAE,CAAC;QAChB,KAAK,IAAI,CAAC,GAAG,WAAW,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;YACpD,+EAA+E;YAC/E,iCAAiC;YACjC,IAAI,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,KAAK,KAAK,CAAC,WAAW,CAAC,CAAC,KAAK;gBAAE,WAAW,GAAG,CAAC,CAAC;QACnE,CAAC;IACH,CAAC;IAED,OAAO;QACL,WAAW,EAAE,KAAK,CAAC,cAAc,CAAC,IAAI,KAAK,CAAC,CAAC,CAAC;QAC9C,QAAQ,EAAE,WAAW,CAAC,CAAC,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,SAAS;KACvD,CAAC;AACJ,CAAC"}
|
|
@@ -2,7 +2,7 @@ import { PeerIdStr } from "@chainsafe/libp2p-gossipsub/types";
|
|
|
2
2
|
import { Message, TopicValidatorResult } from "@libp2p/interface";
|
|
3
3
|
import { BeaconConfig } from "@lodestar/config";
|
|
4
4
|
import { ForkName } from "@lodestar/params";
|
|
5
|
-
import { AttesterSlashing, LightClientFinalityUpdate, LightClientOptimisticUpdate, SignedAggregateAndProof, SignedBeaconBlock, SingleAttestation, Slot, SubnetID, altair, capella, deneb, phase0 } from "@lodestar/types";
|
|
5
|
+
import { AttesterSlashing, LightClientFinalityUpdate, LightClientOptimisticUpdate, SignedAggregateAndProof, SignedBeaconBlock, SingleAttestation, Slot, SubnetID, altair, capella, deneb, fulu, phase0 } from "@lodestar/types";
|
|
6
6
|
import { Logger } from "@lodestar/utils";
|
|
7
7
|
import { Libp2p } from "libp2p";
|
|
8
8
|
import { AttestationError, AttestationErrorType } from "../../chain/errors/attestationError.js";
|
|
@@ -12,6 +12,7 @@ import { JobItemQueue } from "../../util/queue/index.js";
|
|
|
12
12
|
export declare enum GossipType {
|
|
13
13
|
beacon_block = "beacon_block",
|
|
14
14
|
blob_sidecar = "blob_sidecar",
|
|
15
|
+
data_column_sidecar = "data_column_sidecar",
|
|
15
16
|
beacon_aggregate_and_proof = "beacon_aggregate_and_proof",
|
|
16
17
|
beacon_attestation = "beacon_attestation",
|
|
17
18
|
voluntary_exit = "voluntary_exit",
|
|
@@ -44,6 +45,10 @@ export type GossipTopicTypeMap = {
|
|
|
44
45
|
type: GossipType.blob_sidecar;
|
|
45
46
|
subnet: SubnetID;
|
|
46
47
|
};
|
|
48
|
+
[GossipType.data_column_sidecar]: {
|
|
49
|
+
type: GossipType.data_column_sidecar;
|
|
50
|
+
subnet: SubnetID;
|
|
51
|
+
};
|
|
47
52
|
[GossipType.beacon_aggregate_and_proof]: {
|
|
48
53
|
type: GossipType.beacon_aggregate_and_proof;
|
|
49
54
|
};
|
|
@@ -92,6 +97,7 @@ export type GossipTypeMap = {
|
|
|
92
97
|
[GossipType.blob_sidecar]: deneb.BlobSidecar;
|
|
93
98
|
[GossipType.beacon_aggregate_and_proof]: SignedAggregateAndProof;
|
|
94
99
|
[GossipType.beacon_attestation]: SingleAttestation;
|
|
100
|
+
[GossipType.data_column_sidecar]: fulu.DataColumnSidecar;
|
|
95
101
|
[GossipType.voluntary_exit]: phase0.SignedVoluntaryExit;
|
|
96
102
|
[GossipType.proposer_slashing]: phase0.ProposerSlashing;
|
|
97
103
|
[GossipType.attester_slashing]: AttesterSlashing;
|
|
@@ -106,6 +112,7 @@ export type GossipFnByType = {
|
|
|
106
112
|
[GossipType.blob_sidecar]: (blobSidecar: deneb.BlobSidecar) => Promise<void> | void;
|
|
107
113
|
[GossipType.beacon_aggregate_and_proof]: (aggregateAndProof: SignedAggregateAndProof) => Promise<void> | void;
|
|
108
114
|
[GossipType.beacon_attestation]: (attestation: SingleAttestation) => Promise<void> | void;
|
|
115
|
+
[GossipType.data_column_sidecar]: (blobSidecar: fulu.DataColumnSidecar) => Promise<void> | void;
|
|
109
116
|
[GossipType.voluntary_exit]: (voluntaryExit: phase0.SignedVoluntaryExit) => Promise<void> | void;
|
|
110
117
|
[GossipType.proposer_slashing]: (proposerSlashing: phase0.ProposerSlashing) => Promise<void> | void;
|
|
111
118
|
[GossipType.attester_slashing]: (attesterSlashing: AttesterSlashing) => Promise<void> | void;
|
|
@@ -2,6 +2,7 @@ export var GossipType;
|
|
|
2
2
|
(function (GossipType) {
|
|
3
3
|
GossipType["beacon_block"] = "beacon_block";
|
|
4
4
|
GossipType["blob_sidecar"] = "blob_sidecar";
|
|
5
|
+
GossipType["data_column_sidecar"] = "data_column_sidecar";
|
|
5
6
|
GossipType["beacon_aggregate_and_proof"] = "beacon_aggregate_and_proof";
|
|
6
7
|
GossipType["beacon_attestation"] = "beacon_attestation";
|
|
7
8
|
GossipType["voluntary_exit"] = "voluntary_exit";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"interface.js","sourceRoot":"","sources":["../../../src/network/gossip/interface.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"interface.js","sourceRoot":"","sources":["../../../src/network/gossip/interface.ts"],"names":[],"mappings":"AA0BA,MAAM,CAAN,IAAY,UAcX;AAdD,WAAY,UAAU;IACpB,2CAA6B,CAAA;IAC7B,2CAA6B,CAAA;IAC7B,yDAA2C,CAAA;IAC3C,uEAAyD,CAAA;IACzD,uDAAyC,CAAA;IACzC,+CAAiC,CAAA;IACjC,qDAAuC,CAAA;IACvC,qDAAuC,CAAA;IACvC,6FAA+E,CAAA;IAC/E,+CAAiC,CAAA;IACjC,2EAA6D,CAAA;IAC7D,+EAAiE,CAAA;IACjE,iEAAmD,CAAA;AACrD,CAAC,EAdW,UAAU,KAAV,UAAU,QAcrB;AAKD,MAAM,CAAN,IAAY,cAEX;AAFD,WAAY,cAAc;IACxB,2CAAyB,CAAA;AAC3B,CAAC,EAFW,cAAc,KAAd,cAAc,QAEzB"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { defaultTopicScoreParams, } from "@chainsafe/libp2p-gossipsub/score";
|
|
2
2
|
import { ATTESTATION_SUBNET_COUNT, SLOTS_PER_EPOCH, TARGET_AGGREGATORS_PER_COMMITTEE } from "@lodestar/params";
|
|
3
3
|
import { computeCommitteeCount } from "@lodestar/state-transition";
|
|
4
|
-
import {
|
|
4
|
+
import { getActiveForks } from "../forks.js";
|
|
5
5
|
import { GossipType } from "./interface.js";
|
|
6
6
|
import { stringifyGossipTopic } from "./topic.js";
|
|
7
7
|
export const GOSSIP_D = 8;
|
|
@@ -80,10 +80,9 @@ function getAllTopicsScoreParams(config, eth2Context, precomputedParams) {
|
|
|
80
80
|
const { epochDurationMs, slotDurationMs } = precomputedParams;
|
|
81
81
|
const epoch = eth2Context.currentEpoch;
|
|
82
82
|
const topicsParams = {};
|
|
83
|
-
const
|
|
83
|
+
const forks = getActiveForks(config, epoch);
|
|
84
84
|
const beaconAttestationSubnetWeight = 1 / ATTESTATION_SUBNET_COUNT;
|
|
85
|
-
for (const
|
|
86
|
-
const fork = boundary.fork;
|
|
85
|
+
for (const fork of forks) {
|
|
87
86
|
//first all fixed topics
|
|
88
87
|
topicsParams[stringifyGossipTopic(config, {
|
|
89
88
|
type: GossipType.voluntary_exit,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"scoringParameters.js","sourceRoot":"","sources":["../../../src/network/gossip/scoringParameters.ts"],"names":[],"mappings":"AAAA,OAAO,EAIL,uBAAuB,GACxB,MAAM,mCAAmC,CAAC;AAE3C,OAAO,EAAC,wBAAwB,EAAE,eAAe,EAAE,gCAAgC,EAAC,MAAM,kBAAkB,CAAC;AAC7G,OAAO,EAAC,qBAAqB,EAAC,MAAM,4BAA4B,CAAC;AACjE,OAAO,EAAC,
|
|
1
|
+
{"version":3,"file":"scoringParameters.js","sourceRoot":"","sources":["../../../src/network/gossip/scoringParameters.ts"],"names":[],"mappings":"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"}
|