@lodestar/state-transition 1.48.0-dev.fd70e5fc15 → 1.48.0-rc.0
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/block/index.d.ts.map +1 -1
- package/lib/block/index.js +41 -11
- package/lib/block/index.js.map +1 -1
- package/lib/block/processOperations.d.ts.map +1 -1
- package/lib/block/processOperations.js +61 -16
- package/lib/block/processOperations.js.map +1 -1
- package/lib/block/processPayloadAttestation.d.ts +1 -1
- package/lib/block/processPayloadAttestation.d.ts.map +1 -1
- package/lib/block/processPayloadAttestation.js +2 -2
- package/lib/block/processPayloadAttestation.js.map +1 -1
- package/lib/block/types.d.ts +30 -0
- package/lib/block/types.d.ts.map +1 -1
- package/lib/block/types.js +32 -0
- package/lib/block/types.js.map +1 -1
- package/lib/epoch/processPtcWindow.d.ts.map +1 -1
- package/lib/epoch/processPtcWindow.js +12 -9
- package/lib/epoch/processPtcWindow.js.map +1 -1
- package/lib/index.d.ts +1 -1
- package/lib/index.d.ts.map +1 -1
- package/lib/index.js +1 -1
- package/lib/index.js.map +1 -1
- package/lib/metrics.d.ts +7 -1
- package/lib/metrics.d.ts.map +1 -1
- package/lib/metrics.js +12 -1
- package/lib/metrics.js.map +1 -1
- package/lib/signatureSets/index.d.ts.map +1 -1
- package/lib/signatureSets/index.js +8 -0
- package/lib/signatureSets/index.js.map +1 -1
- package/lib/stateView/beaconStateView.d.ts +4 -0
- package/lib/stateView/beaconStateView.d.ts.map +1 -1
- package/lib/stateView/beaconStateView.js +9 -0
- package/lib/stateView/beaconStateView.js.map +1 -1
- package/lib/stateView/interface.d.ts +1 -0
- package/lib/stateView/interface.d.ts.map +1 -1
- package/lib/stateView/interface.js.map +1 -1
- package/lib/stateView/nativeBeaconStateView.d.ts +1 -0
- package/lib/stateView/nativeBeaconStateView.d.ts.map +1 -1
- package/lib/stateView/nativeBeaconStateView.js +3 -0
- package/lib/stateView/nativeBeaconStateView.js.map +1 -1
- package/lib/util/gloas.d.ts.map +1 -1
- package/lib/util/gloas.js +1 -1
- package/lib/util/gloas.js.map +1 -1
- package/lib/util/seed.d.ts +1 -1
- package/lib/util/seed.d.ts.map +1 -1
- package/lib/util/seed.js +14 -11
- package/lib/util/seed.js.map +1 -1
- package/package.json +7 -7
- package/src/block/index.ts +48 -15
- package/src/block/processOperations.ts +62 -17
- package/src/block/processPayloadAttestation.ts +3 -2
- package/src/block/types.ts +32 -0
- package/src/epoch/processPtcWindow.ts +15 -8
- package/src/index.ts +1 -1
- package/src/metrics.ts +13 -2
- package/src/signatureSets/index.ts +17 -3
- package/src/stateView/beaconStateView.ts +12 -0
- package/src/stateView/interface.ts +1 -0
- package/src/stateView/nativeBeaconStateView.ts +4 -0
- package/src/util/gloas.ts +1 -0
- package/src/util/seed.ts +25 -13
package/lib/block/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/block/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAgB,OAAO,EAAC,MAAM,kBAAkB,CAAC;AACxD,OAAO,EAAC,WAAW,EAAE,kBAAkB,EAAwB,MAAM,iBAAiB,CAAC;AACvF,OAAO,EAAC,4BAA4B,EAAC,MAAM,eAAe,CAAC;AAC3D,OAAO,EACL,yBAAyB,EAI1B,MAAM,aAAa,CAAC;AAErB,OAAO,EAAC,iBAAiB,EAAyB,MAAM,mBAAmB,CAAC;AAE5E,OAAO,EAAC,kBAAkB,EAAC,MAAM,yBAAyB,CAAC;AAC3D,OAAO,EAAC,eAAe,EAAC,MAAM,sBAAsB,CAAC;AACrD,OAAO,EAAC,uBAAuB,EAAC,MAAM,8BAA8B,CAAC;AACrE,OAAO,EAAC,0BAA0B,EAAC,MAAM,iCAAiC,CAAC;AAE3E,OAAO,EAAC,6BAA6B,EAAC,MAAM,oCAAoC,CAAC;AACjF,OAAO,EAAC,yBAAyB,EAAC,MAAM,gCAAgC,CAAC;AACzE,OAAO,EAAC,aAAa,EAAC,MAAM,oBAAoB,CAAC;AACjD,OAAO,EAAC,oBAAoB,EAAC,MAAM,2BAA2B,CAAC;AAC/D,OAAO,EAAC,kBAAkB,EAAC,MAAM,yBAAyB,CAAC;AAC3D,OAAO,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/block/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAgB,OAAO,EAAC,MAAM,kBAAkB,CAAC;AACxD,OAAO,EAAC,WAAW,EAAE,kBAAkB,EAAwB,MAAM,iBAAiB,CAAC;AACvF,OAAO,EAAC,4BAA4B,EAAC,MAAM,eAAe,CAAC;AAC3D,OAAO,EACL,yBAAyB,EAI1B,MAAM,aAAa,CAAC;AAErB,OAAO,EAAC,iBAAiB,EAAyB,MAAM,mBAAmB,CAAC;AAE5E,OAAO,EAAC,kBAAkB,EAAC,MAAM,yBAAyB,CAAC;AAC3D,OAAO,EAAC,eAAe,EAAC,MAAM,sBAAsB,CAAC;AACrD,OAAO,EAAC,uBAAuB,EAAC,MAAM,8BAA8B,CAAC;AACrE,OAAO,EAAC,0BAA0B,EAAC,MAAM,iCAAiC,CAAC;AAE3E,OAAO,EAAC,6BAA6B,EAAC,MAAM,oCAAoC,CAAC;AACjF,OAAO,EAAC,yBAAyB,EAAC,MAAM,gCAAgC,CAAC;AACzE,OAAO,EAAC,aAAa,EAAC,MAAM,oBAAoB,CAAC;AACjD,OAAO,EAAC,oBAAoB,EAAC,MAAM,2BAA2B,CAAC;AAC/D,OAAO,EAAC,kBAAkB,EAAC,MAAM,yBAAyB,CAAC;AAC3D,OAAO,EAAmB,gBAAgB,EAAqB,MAAM,YAAY,CAAC;AAGlF,OAAO,EACL,kBAAkB,EAClB,uBAAuB,EACvB,aAAa,EACb,eAAe,EACf,oBAAoB,EACpB,kBAAkB,EAClB,0BAA0B,EAC1B,yBAAyB,EACzB,6BAA6B,GAC9B,CAAC;AAEF,cAAc,mBAAmB,CAAC;AAClC,cAAc,4BAA4B,CAAC;AAC3C,cAAc,gCAAgC,CAAC;AAC/C,cAAc,mCAAmC,CAAC;AAClD,cAAc,gCAAgC,CAAC;AAC/C,cAAc,4BAA4B,CAAC;AAC3C,cAAc,wBAAwB,CAAC;AAEvC,wBAAgB,YAAY,CAC1B,IAAI,EAAE,OAAO,EACb,KAAK,EAAE,yBAAyB,EAChC,KAAK,EAAE,WAAW,GAAG,kBAAkB,EACvC,YAAY,EAAE,iBAAiB,GAAG,gBAAgB,EAClD,IAAI,CAAC,EAAE,gBAAgB,EACvB,OAAO,CAAC,EAAE,4BAA4B,GAAG,IAAI,GAC5C,IAAI,CAoGN"}
|
package/lib/block/index.js
CHANGED
|
@@ -12,7 +12,7 @@ import { processPayloadAttestation } from "./processPayloadAttestation.js";
|
|
|
12
12
|
import { processRandao } from "./processRandao.js";
|
|
13
13
|
import { processSyncAggregate } from "./processSyncCommittee.js";
|
|
14
14
|
import { processWithdrawals } from "./processWithdrawals.js";
|
|
15
|
-
import { ProposerRewardType } from "./types.js";
|
|
15
|
+
import { BlockProcessStep, ProposerRewardType } from "./types.js";
|
|
16
16
|
// Spec tests
|
|
17
17
|
export { processBlockHeader, processExecutionPayload, processRandao, processEth1Data, processSyncAggregate, processWithdrawals, processExecutionPayloadBid, processPayloadAttestation, processParentExecutionPayload, };
|
|
18
18
|
export * from "./externalData.js";
|
|
@@ -29,16 +29,26 @@ export function processBlock(fork, state, block, externalData, opts, metrics) {
|
|
|
29
29
|
// Apply the parent's deferred payload effects before everything else. Must run before
|
|
30
30
|
// processBlockHeader and processExecutionPayloadBid so subsequent steps see the updated state.
|
|
31
31
|
if (fork >= ForkSeq.gloas) {
|
|
32
|
+
const timer = metrics?.processBlockStepTime.startTimer({ step: BlockProcessStep.processParentExecutionPayload });
|
|
32
33
|
processParentExecutionPayload(state, block);
|
|
34
|
+
timer?.();
|
|
33
35
|
}
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
36
|
+
{
|
|
37
|
+
const timer = metrics?.processBlockStepTime.startTimer({ step: BlockProcessStep.processBlockHeader });
|
|
38
|
+
processBlockHeader(state, block);
|
|
39
|
+
timer?.();
|
|
38
40
|
}
|
|
39
|
-
|
|
40
|
-
const
|
|
41
|
-
|
|
41
|
+
if (fork >= ForkSeq.capella) {
|
|
42
|
+
const timer = metrics?.processBlockStepTime.startTimer({ step: BlockProcessStep.processWithdrawals });
|
|
43
|
+
if (fork >= ForkSeq.gloas) {
|
|
44
|
+
// Parent payload's execution requests were already applied by processParentExecutionPayload above
|
|
45
|
+
processWithdrawals(fork, state);
|
|
46
|
+
}
|
|
47
|
+
else {
|
|
48
|
+
const fullOrBlindedPayload = getFullOrBlindedPayload(block);
|
|
49
|
+
processWithdrawals(fork, state, fullOrBlindedPayload);
|
|
50
|
+
}
|
|
51
|
+
timer?.();
|
|
42
52
|
}
|
|
43
53
|
// The call to the process_execution_payload must happen before the call to the process_randao as the former depends
|
|
44
54
|
// on the randao_mix computed with the reveal of the previous block.
|
|
@@ -48,19 +58,39 @@ export function processBlock(fork, state, block, externalData, opts, metrics) {
|
|
|
48
58
|
if (fork < ForkSeq.gloas &&
|
|
49
59
|
fork >= ForkSeq.bellatrix &&
|
|
50
60
|
isExecutionEnabled(state, block)) {
|
|
61
|
+
const timer = metrics?.processBlockStepTime.startTimer({ step: BlockProcessStep.processExecutionPayload });
|
|
51
62
|
processExecutionPayload(fork, state, block.body, externalData);
|
|
63
|
+
timer?.();
|
|
52
64
|
}
|
|
53
65
|
if (fork >= ForkSeq.gloas) {
|
|
66
|
+
const timer = metrics?.processBlockStepTime.startTimer({ step: BlockProcessStep.processExecutionPayloadBid });
|
|
54
67
|
processExecutionPayloadBid(state, block.body.signedExecutionPayloadBid);
|
|
68
|
+
timer?.();
|
|
69
|
+
}
|
|
70
|
+
{
|
|
71
|
+
const timer = metrics?.processBlockStepTime.startTimer({ step: BlockProcessStep.processRandao });
|
|
72
|
+
processRandao(state, block, verifySignatures);
|
|
73
|
+
timer?.();
|
|
74
|
+
}
|
|
75
|
+
{
|
|
76
|
+
const timer = metrics?.processBlockStepTime.startTimer({ step: BlockProcessStep.processEth1Data });
|
|
77
|
+
processEth1Data(state, block.body.eth1Data);
|
|
78
|
+
timer?.();
|
|
79
|
+
}
|
|
80
|
+
{
|
|
81
|
+
const timer = metrics?.processBlockStepTime.startTimer({ step: BlockProcessStep.processOperations });
|
|
82
|
+
processOperations(fork, state, block.body, parentSlot, opts, metrics);
|
|
83
|
+
timer?.();
|
|
55
84
|
}
|
|
56
|
-
processRandao(state, block, verifySignatures);
|
|
57
|
-
processEth1Data(state, block.body.eth1Data);
|
|
58
|
-
processOperations(fork, state, block.body, parentSlot, opts, metrics);
|
|
59
85
|
if (fork >= ForkSeq.altair) {
|
|
86
|
+
const timer = metrics?.processBlockStepTime.startTimer({ step: BlockProcessStep.processSyncAggregate });
|
|
60
87
|
processSyncAggregate(state, block, verifySignatures);
|
|
88
|
+
timer?.();
|
|
61
89
|
}
|
|
62
90
|
if (fork >= ForkSeq.deneb) {
|
|
91
|
+
const timer = metrics?.processBlockStepTime.startTimer({ step: BlockProcessStep.processBlobKzgCommitments });
|
|
63
92
|
processBlobKzgCommitments(externalData);
|
|
93
|
+
timer?.();
|
|
64
94
|
// Only throw PreData so beacon can also sync/process blocks optimistically
|
|
65
95
|
// and let forkChoice handle it
|
|
66
96
|
if (externalData.dataAvailabilityStatus === DataAvailabilityStatus.PreData) {
|
package/lib/block/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/block/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAgB,OAAO,EAAC,MAAM,kBAAkB,CAAC;AASxD,OAAO,EAAC,uBAAuB,EAAE,kBAAkB,EAAC,MAAM,sBAAsB,CAAC;AACjF,OAAO,EAAoB,sBAAsB,EAAC,MAAM,mBAAmB,CAAC;AAC5E,OAAO,EAAC,yBAAyB,EAAC,MAAM,gCAAgC,CAAC;AACzE,OAAO,EAAC,kBAAkB,EAAC,MAAM,yBAAyB,CAAC;AAC3D,OAAO,EAAC,eAAe,EAAC,MAAM,sBAAsB,CAAC;AACrD,OAAO,EAAC,uBAAuB,EAAC,MAAM,8BAA8B,CAAC;AACrE,OAAO,EAAC,0BAA0B,EAAC,MAAM,iCAAiC,CAAC;AAC3E,OAAO,EAAC,iBAAiB,EAAC,MAAM,wBAAwB,CAAC;AACzD,OAAO,EAAC,6BAA6B,EAAC,MAAM,oCAAoC,CAAC;AACjF,OAAO,EAAC,yBAAyB,EAAC,MAAM,gCAAgC,CAAC;AACzE,OAAO,EAAC,aAAa,EAAC,MAAM,oBAAoB,CAAC;AACjD,OAAO,EAAC,oBAAoB,EAAC,MAAM,2BAA2B,CAAC;AAC/D,OAAO,EAAC,kBAAkB,EAAC,MAAM,yBAAyB,CAAC;AAC3D,OAAO,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/block/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"processOperations.d.ts","sourceRoot":"","sources":["../../src/block/processOperations.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,OAAO,EAAC,MAAM,kBAAkB,CAAC;AACzC,OAAO,EAAC,eAAe,EAAE,IAAI,EAA0B,MAAM,iBAAiB,CAAC;AAC/E,OAAO,EAAC,4BAA4B,EAAC,MAAM,eAAe,CAAC;AAC3D,OAAO,EACL,yBAAyB,EAI1B,MAAM,aAAa,CAAC;AAErB,OAAO,EAAC,mBAAmB,EAAC,MAAM,0BAA0B,CAAC;AAC7D,OAAO,EAAC,uBAAuB,EAAC,MAAM,8BAA8B,CAAC;AACrE,OAAO,EAAC,2BAA2B,EAAC,MAAM,kCAAkC,CAAC;AAC7E,OAAO,EAAC,2BAA2B,EAAC,MAAM,kCAAkC,CAAC;AAC7E,OAAO,EAAC,cAAc,EAAC,MAAM,qBAAqB,CAAC;AACnD,OAAO,EAAC,qBAAqB,EAAC,MAAM,4BAA4B,CAAC;AAEjE,OAAO,EAAC,uBAAuB,EAAC,MAAM,8BAA8B,CAAC;AACrE,OAAO,EAAC,oBAAoB,EAAC,MAAM,2BAA2B,CAAC;AAC/D,OAAO,EAAC,wBAAwB,EAAC,MAAM,+BAA+B,CAAC;AACvE,OAAO,EAAC,gBAAgB,
|
|
1
|
+
{"version":3,"file":"processOperations.d.ts","sourceRoot":"","sources":["../../src/block/processOperations.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,OAAO,EAAC,MAAM,kBAAkB,CAAC;AACzC,OAAO,EAAC,eAAe,EAAE,IAAI,EAA0B,MAAM,iBAAiB,CAAC;AAC/E,OAAO,EAAC,4BAA4B,EAAC,MAAM,eAAe,CAAC;AAC3D,OAAO,EACL,yBAAyB,EAI1B,MAAM,aAAa,CAAC;AAErB,OAAO,EAAC,mBAAmB,EAAC,MAAM,0BAA0B,CAAC;AAC7D,OAAO,EAAC,uBAAuB,EAAC,MAAM,8BAA8B,CAAC;AACrE,OAAO,EAAC,2BAA2B,EAAC,MAAM,kCAAkC,CAAC;AAC7E,OAAO,EAAC,2BAA2B,EAAC,MAAM,kCAAkC,CAAC;AAC7E,OAAO,EAAC,cAAc,EAAC,MAAM,qBAAqB,CAAC;AACnD,OAAO,EAAC,qBAAqB,EAAC,MAAM,4BAA4B,CAAC;AAEjE,OAAO,EAAC,uBAAuB,EAAC,MAAM,8BAA8B,CAAC;AACrE,OAAO,EAAC,oBAAoB,EAAC,MAAM,2BAA2B,CAAC;AAC/D,OAAO,EAAC,wBAAwB,EAAC,MAAM,+BAA+B,CAAC;AACvE,OAAO,EAAC,gBAAgB,EAAwB,MAAM,YAAY,CAAC;AAEnE,OAAO,EACL,uBAAuB,EACvB,uBAAuB,EACvB,mBAAmB,EACnB,cAAc,EACd,oBAAoB,EACpB,wBAAwB,EACxB,2BAA2B,EAC3B,qBAAqB,EACrB,2BAA2B,GAC5B,CAAC;AAEF,wBAAgB,iBAAiB,CAC/B,IAAI,EAAE,OAAO,EACb,KAAK,EAAE,yBAAyB,EAChC,IAAI,EAAE,eAAe,EACrB,UAAU,EAAE,IAAI,GAAG,IAAI,EACvB,IAAI,GAAE,gBAA2C,EACjD,OAAO,CAAC,EAAE,4BAA4B,GAAG,IAAI,GAC5C,IAAI,CAoGN"}
|
|
@@ -10,6 +10,7 @@ import { processPayloadAttestation } from "./processPayloadAttestation.js";
|
|
|
10
10
|
import { processProposerSlashing } from "./processProposerSlashing.js";
|
|
11
11
|
import { processVoluntaryExit } from "./processVoluntaryExit.js";
|
|
12
12
|
import { processWithdrawalRequest } from "./processWithdrawalRequest.js";
|
|
13
|
+
import { ProcessOperationsStep } from "./types.js";
|
|
13
14
|
export { processProposerSlashing, processAttesterSlashing, processAttestations, processDeposit, processVoluntaryExit, processWithdrawalRequest, processBlsToExecutionChange, processDepositRequest, processConsolidationRequest, };
|
|
14
15
|
export function processOperations(fork, state, body, parentSlot, opts = { verifySignatures: true }, metrics) {
|
|
15
16
|
// verify that outstanding deposits are processed up to the maximum number of deposits.
|
|
@@ -18,41 +19,85 @@ export function processOperations(fork, state, body, parentSlot, opts = { verify
|
|
|
18
19
|
if (body.deposits.length !== maxDeposits) {
|
|
19
20
|
throw new Error(`Block contains incorrect number of deposits: depositCount=${body.deposits.length} expected=${maxDeposits}`);
|
|
20
21
|
}
|
|
21
|
-
|
|
22
|
-
|
|
22
|
+
{
|
|
23
|
+
const timer = metrics?.processOperationsStepTime.startTimer({ step: ProcessOperationsStep.processProposerSlashing });
|
|
24
|
+
for (const proposerSlashing of body.proposerSlashings) {
|
|
25
|
+
processProposerSlashing(fork, state, proposerSlashing, opts.verifySignatures);
|
|
26
|
+
}
|
|
27
|
+
timer?.();
|
|
23
28
|
}
|
|
24
|
-
|
|
25
|
-
|
|
29
|
+
{
|
|
30
|
+
const timer = metrics?.processOperationsStepTime.startTimer({ step: ProcessOperationsStep.processAttesterSlashing });
|
|
31
|
+
for (const attesterSlashing of body.attesterSlashings) {
|
|
32
|
+
processAttesterSlashing(fork, state, attesterSlashing, opts.verifySignatures);
|
|
33
|
+
}
|
|
34
|
+
timer?.();
|
|
26
35
|
}
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
36
|
+
{
|
|
37
|
+
const timer = metrics?.processOperationsStepTime.startTimer({ step: ProcessOperationsStep.processAttestations });
|
|
38
|
+
processAttestations(fork, state, body.attestations, parentSlot, opts.verifySignatures, metrics);
|
|
39
|
+
timer?.();
|
|
30
40
|
}
|
|
31
|
-
|
|
32
|
-
|
|
41
|
+
{
|
|
42
|
+
const timer = metrics?.processOperationsStepTime.startTimer({ step: ProcessOperationsStep.processDeposit });
|
|
43
|
+
for (const deposit of body.deposits) {
|
|
44
|
+
processDeposit(fork, state, deposit);
|
|
45
|
+
}
|
|
46
|
+
timer?.();
|
|
47
|
+
}
|
|
48
|
+
{
|
|
49
|
+
const timer = metrics?.processOperationsStepTime.startTimer({ step: ProcessOperationsStep.processVoluntaryExit });
|
|
50
|
+
for (const voluntaryExit of body.voluntaryExits) {
|
|
51
|
+
processVoluntaryExit(fork, state, voluntaryExit, opts.verifySignatures);
|
|
52
|
+
}
|
|
53
|
+
timer?.();
|
|
33
54
|
}
|
|
34
55
|
if (fork >= ForkSeq.capella) {
|
|
56
|
+
const timer = metrics?.processOperationsStepTime.startTimer({
|
|
57
|
+
step: ProcessOperationsStep.processBlsToExecutionChange,
|
|
58
|
+
});
|
|
35
59
|
for (const blsToExecutionChange of body.blsToExecutionChanges) {
|
|
36
60
|
processBlsToExecutionChange(state, blsToExecutionChange);
|
|
37
61
|
}
|
|
62
|
+
timer?.();
|
|
38
63
|
}
|
|
39
64
|
if (fork >= ForkSeq.electra && fork < ForkSeq.gloas) {
|
|
40
65
|
const stateElectra = state;
|
|
41
66
|
const bodyElectra = body;
|
|
42
|
-
|
|
43
|
-
|
|
67
|
+
{
|
|
68
|
+
const timer = metrics?.processOperationsStepTime.startTimer({ step: ProcessOperationsStep.processDepositRequest });
|
|
69
|
+
for (const depositRequest of bodyElectra.executionRequests.deposits) {
|
|
70
|
+
processDepositRequest(fork, stateElectra, depositRequest);
|
|
71
|
+
}
|
|
72
|
+
timer?.();
|
|
44
73
|
}
|
|
45
|
-
|
|
46
|
-
|
|
74
|
+
{
|
|
75
|
+
const timer = metrics?.processOperationsStepTime.startTimer({
|
|
76
|
+
step: ProcessOperationsStep.processWithdrawalRequest,
|
|
77
|
+
});
|
|
78
|
+
for (const elWithdrawalRequest of bodyElectra.executionRequests.withdrawals) {
|
|
79
|
+
processWithdrawalRequest(fork, stateElectra, elWithdrawalRequest);
|
|
80
|
+
}
|
|
81
|
+
timer?.();
|
|
47
82
|
}
|
|
48
|
-
|
|
49
|
-
|
|
83
|
+
{
|
|
84
|
+
const timer = metrics?.processOperationsStepTime.startTimer({
|
|
85
|
+
step: ProcessOperationsStep.processConsolidationRequest,
|
|
86
|
+
});
|
|
87
|
+
for (const elConsolidationRequest of bodyElectra.executionRequests.consolidations) {
|
|
88
|
+
processConsolidationRequest(stateElectra, elConsolidationRequest);
|
|
89
|
+
}
|
|
90
|
+
timer?.();
|
|
50
91
|
}
|
|
51
92
|
}
|
|
52
93
|
if (fork >= ForkSeq.gloas) {
|
|
94
|
+
const timer = metrics?.processOperationsStepTime.startTimer({
|
|
95
|
+
step: ProcessOperationsStep.processPayloadAttestation,
|
|
96
|
+
});
|
|
53
97
|
for (const payloadAttestation of body.payloadAttestations) {
|
|
54
|
-
processPayloadAttestation(state, payloadAttestation);
|
|
98
|
+
processPayloadAttestation(state, payloadAttestation, opts.verifySignatures);
|
|
55
99
|
}
|
|
100
|
+
timer?.();
|
|
56
101
|
}
|
|
57
102
|
}
|
|
58
103
|
//# sourceMappingURL=processOperations.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"processOperations.js","sourceRoot":"","sources":["../../src/block/processOperations.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,OAAO,EAAC,MAAM,kBAAkB,CAAC;AASzC,OAAO,EAAC,mBAAmB,EAAC,MAAM,oBAAoB,CAAC;AACvD,OAAO,EAAC,mBAAmB,EAAC,MAAM,0BAA0B,CAAC;AAC7D,OAAO,EAAC,uBAAuB,EAAC,MAAM,8BAA8B,CAAC;AACrE,OAAO,EAAC,2BAA2B,EAAC,MAAM,kCAAkC,CAAC;AAC7E,OAAO,EAAC,2BAA2B,EAAC,MAAM,kCAAkC,CAAC;AAC7E,OAAO,EAAC,cAAc,EAAC,MAAM,qBAAqB,CAAC;AACnD,OAAO,EAAC,qBAAqB,EAAC,MAAM,4BAA4B,CAAC;AACjE,OAAO,EAAC,yBAAyB,EAAC,MAAM,gCAAgC,CAAC;AACzE,OAAO,EAAC,uBAAuB,EAAC,MAAM,8BAA8B,CAAC;AACrE,OAAO,EAAC,oBAAoB,EAAC,MAAM,2BAA2B,CAAC;AAC/D,OAAO,EAAC,wBAAwB,EAAC,MAAM,+BAA+B,CAAC;
|
|
1
|
+
{"version":3,"file":"processOperations.js","sourceRoot":"","sources":["../../src/block/processOperations.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
import { gloas } from "@lodestar/types";
|
|
2
2
|
import { CachedBeaconStateGloas } from "../types.js";
|
|
3
|
-
export declare function processPayloadAttestation(state: CachedBeaconStateGloas, payloadAttestation: gloas.PayloadAttestation): void;
|
|
3
|
+
export declare function processPayloadAttestation(state: CachedBeaconStateGloas, payloadAttestation: gloas.PayloadAttestation, verifySignature?: boolean): void;
|
|
4
4
|
//# sourceMappingURL=processPayloadAttestation.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"processPayloadAttestation.d.ts","sourceRoot":"","sources":["../../src/block/processPayloadAttestation.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,KAAK,EAAC,MAAM,iBAAiB,CAAC;AAEtC,OAAO,EAAC,sBAAsB,EAAC,MAAM,aAAa,CAAC;AAGnD,wBAAgB,yBAAyB,CACvC,KAAK,EAAE,sBAAsB,EAC7B,kBAAkB,EAAE,KAAK,CAAC,kBAAkB,
|
|
1
|
+
{"version":3,"file":"processPayloadAttestation.d.ts","sourceRoot":"","sources":["../../src/block/processPayloadAttestation.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,KAAK,EAAC,MAAM,iBAAiB,CAAC;AAEtC,OAAO,EAAC,sBAAsB,EAAC,MAAM,aAAa,CAAC;AAGnD,wBAAgB,yBAAyB,CACvC,KAAK,EAAE,sBAAsB,EAC7B,kBAAkB,EAAE,KAAK,CAAC,kBAAkB,EAC5C,eAAe,UAAO,GACrB,IAAI,CAgBN"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { byteArrayEquals } from "@lodestar/utils";
|
|
2
2
|
import { isValidIndexedPayloadAttestation } from "./isValidIndexedPayloadAttestation.js";
|
|
3
|
-
export function processPayloadAttestation(state, payloadAttestation) {
|
|
3
|
+
export function processPayloadAttestation(state, payloadAttestation, verifySignature = true) {
|
|
4
4
|
const data = payloadAttestation.data;
|
|
5
5
|
if (!byteArrayEquals(data.beaconBlockRoot, state.latestBlockHeader.parentRoot)) {
|
|
6
6
|
throw Error("Payload attestation is referring to the wrong block");
|
|
@@ -9,7 +9,7 @@ export function processPayloadAttestation(state, payloadAttestation) {
|
|
|
9
9
|
throw Error("Payload attestation is not from previous slot");
|
|
10
10
|
}
|
|
11
11
|
const indexedPayloadAttestation = state.epochCtx.getIndexedPayloadAttestation(data.slot, payloadAttestation);
|
|
12
|
-
if (!isValidIndexedPayloadAttestation(state, indexedPayloadAttestation,
|
|
12
|
+
if (!isValidIndexedPayloadAttestation(state, indexedPayloadAttestation, verifySignature)) {
|
|
13
13
|
throw Error("Invalid payload attestation");
|
|
14
14
|
}
|
|
15
15
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"processPayloadAttestation.js","sourceRoot":"","sources":["../../src/block/processPayloadAttestation.ts"],"names":[],"mappings":"AACA,OAAO,EAAC,eAAe,EAAC,MAAM,iBAAiB,CAAC;AAEhD,OAAO,EAAC,gCAAgC,EAAC,MAAM,uCAAuC,CAAC;AAEvF,MAAM,UAAU,yBAAyB,CACvC,KAA6B,EAC7B,kBAA4C;
|
|
1
|
+
{"version":3,"file":"processPayloadAttestation.js","sourceRoot":"","sources":["../../src/block/processPayloadAttestation.ts"],"names":[],"mappings":"AACA,OAAO,EAAC,eAAe,EAAC,MAAM,iBAAiB,CAAC;AAEhD,OAAO,EAAC,gCAAgC,EAAC,MAAM,uCAAuC,CAAC;AAEvF,MAAM,UAAU,yBAAyB,CACvC,KAA6B,EAC7B,kBAA4C,EAC5C,eAAe,GAAG,IAAI;IAEtB,MAAM,IAAI,GAAG,kBAAkB,CAAC,IAAI,CAAC;IAErC,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,eAAe,EAAE,KAAK,CAAC,iBAAiB,CAAC,UAAU,CAAC,EAAE,CAAC;QAC/E,MAAM,KAAK,CAAC,qDAAqD,CAAC,CAAC;IACrE,CAAC;IAED,IAAI,IAAI,CAAC,IAAI,GAAG,CAAC,KAAK,KAAK,CAAC,IAAI,EAAE,CAAC;QACjC,MAAM,KAAK,CAAC,+CAA+C,CAAC,CAAC;IAC/D,CAAC;IAED,MAAM,yBAAyB,GAAG,KAAK,CAAC,QAAQ,CAAC,4BAA4B,CAAC,IAAI,CAAC,IAAI,EAAE,kBAAkB,CAAC,CAAC;IAE7G,IAAI,CAAC,gCAAgC,CAAC,KAAK,EAAE,yBAAyB,EAAE,eAAe,CAAC,EAAE,CAAC;QACzF,MAAM,KAAK,CAAC,6BAA6B,CAAC,CAAC;IAC7C,CAAC;AACH,CAAC"}
|
package/lib/block/types.d.ts
CHANGED
|
@@ -6,4 +6,34 @@ export declare enum ProposerRewardType {
|
|
|
6
6
|
syncAggregate = "sync_aggregate",
|
|
7
7
|
slashing = "slashing"
|
|
8
8
|
}
|
|
9
|
+
/**
|
|
10
|
+
* Steps of `processBlock()` tracked in metrics
|
|
11
|
+
*/
|
|
12
|
+
export declare enum BlockProcessStep {
|
|
13
|
+
processParentExecutionPayload = "processParentExecutionPayload",
|
|
14
|
+
processBlockHeader = "processBlockHeader",
|
|
15
|
+
processWithdrawals = "processWithdrawals",
|
|
16
|
+
processExecutionPayload = "processExecutionPayload",
|
|
17
|
+
processExecutionPayloadBid = "processExecutionPayloadBid",
|
|
18
|
+
processRandao = "processRandao",
|
|
19
|
+
processEth1Data = "processEth1Data",
|
|
20
|
+
processOperations = "processOperations",
|
|
21
|
+
processSyncAggregate = "processSyncAggregate",
|
|
22
|
+
processBlobKzgCommitments = "processBlobKzgCommitments"
|
|
23
|
+
}
|
|
24
|
+
/**
|
|
25
|
+
* Steps of `processOperations()` tracked in metrics
|
|
26
|
+
*/
|
|
27
|
+
export declare enum ProcessOperationsStep {
|
|
28
|
+
processProposerSlashing = "processProposerSlashing",
|
|
29
|
+
processAttesterSlashing = "processAttesterSlashing",
|
|
30
|
+
processAttestations = "processAttestations",
|
|
31
|
+
processDeposit = "processDeposit",
|
|
32
|
+
processVoluntaryExit = "processVoluntaryExit",
|
|
33
|
+
processBlsToExecutionChange = "processBlsToExecutionChange",
|
|
34
|
+
processDepositRequest = "processDepositRequest",
|
|
35
|
+
processWithdrawalRequest = "processWithdrawalRequest",
|
|
36
|
+
processConsolidationRequest = "processConsolidationRequest",
|
|
37
|
+
processPayloadAttestation = "processPayloadAttestation"
|
|
38
|
+
}
|
|
9
39
|
//# sourceMappingURL=types.d.ts.map
|
package/lib/block/types.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/block/types.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,gBAAgB;IAC/B,gBAAgB,CAAC,EAAE,OAAO,CAAC;CAC5B;AAED,oBAAY,kBAAkB;IAC5B,WAAW,gBAAgB;IAC3B,aAAa,mBAAmB;IAChC,QAAQ,aAAa;CACtB"}
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/block/types.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,gBAAgB;IAC/B,gBAAgB,CAAC,EAAE,OAAO,CAAC;CAC5B;AAED,oBAAY,kBAAkB;IAC5B,WAAW,gBAAgB;IAC3B,aAAa,mBAAmB;IAChC,QAAQ,aAAa;CACtB;AAED;;GAEG;AACH,oBAAY,gBAAgB;IAC1B,6BAA6B,kCAAkC;IAC/D,kBAAkB,uBAAuB;IACzC,kBAAkB,uBAAuB;IACzC,uBAAuB,4BAA4B;IACnD,0BAA0B,+BAA+B;IACzD,aAAa,kBAAkB;IAC/B,eAAe,oBAAoB;IACnC,iBAAiB,sBAAsB;IACvC,oBAAoB,yBAAyB;IAC7C,yBAAyB,8BAA8B;CACxD;AAED;;GAEG;AACH,oBAAY,qBAAqB;IAC/B,uBAAuB,4BAA4B;IACnD,uBAAuB,4BAA4B;IACnD,mBAAmB,wBAAwB;IAC3C,cAAc,mBAAmB;IACjC,oBAAoB,yBAAyB;IAC7C,2BAA2B,gCAAgC;IAC3D,qBAAqB,0BAA0B;IAC/C,wBAAwB,6BAA6B;IACrD,2BAA2B,gCAAgC;IAC3D,yBAAyB,8BAA8B;CACxD"}
|
package/lib/block/types.js
CHANGED
|
@@ -4,4 +4,36 @@ export var ProposerRewardType;
|
|
|
4
4
|
ProposerRewardType["syncAggregate"] = "sync_aggregate";
|
|
5
5
|
ProposerRewardType["slashing"] = "slashing";
|
|
6
6
|
})(ProposerRewardType || (ProposerRewardType = {}));
|
|
7
|
+
/**
|
|
8
|
+
* Steps of `processBlock()` tracked in metrics
|
|
9
|
+
*/
|
|
10
|
+
export var BlockProcessStep;
|
|
11
|
+
(function (BlockProcessStep) {
|
|
12
|
+
BlockProcessStep["processParentExecutionPayload"] = "processParentExecutionPayload";
|
|
13
|
+
BlockProcessStep["processBlockHeader"] = "processBlockHeader";
|
|
14
|
+
BlockProcessStep["processWithdrawals"] = "processWithdrawals";
|
|
15
|
+
BlockProcessStep["processExecutionPayload"] = "processExecutionPayload";
|
|
16
|
+
BlockProcessStep["processExecutionPayloadBid"] = "processExecutionPayloadBid";
|
|
17
|
+
BlockProcessStep["processRandao"] = "processRandao";
|
|
18
|
+
BlockProcessStep["processEth1Data"] = "processEth1Data";
|
|
19
|
+
BlockProcessStep["processOperations"] = "processOperations";
|
|
20
|
+
BlockProcessStep["processSyncAggregate"] = "processSyncAggregate";
|
|
21
|
+
BlockProcessStep["processBlobKzgCommitments"] = "processBlobKzgCommitments";
|
|
22
|
+
})(BlockProcessStep || (BlockProcessStep = {}));
|
|
23
|
+
/**
|
|
24
|
+
* Steps of `processOperations()` tracked in metrics
|
|
25
|
+
*/
|
|
26
|
+
export var ProcessOperationsStep;
|
|
27
|
+
(function (ProcessOperationsStep) {
|
|
28
|
+
ProcessOperationsStep["processProposerSlashing"] = "processProposerSlashing";
|
|
29
|
+
ProcessOperationsStep["processAttesterSlashing"] = "processAttesterSlashing";
|
|
30
|
+
ProcessOperationsStep["processAttestations"] = "processAttestations";
|
|
31
|
+
ProcessOperationsStep["processDeposit"] = "processDeposit";
|
|
32
|
+
ProcessOperationsStep["processVoluntaryExit"] = "processVoluntaryExit";
|
|
33
|
+
ProcessOperationsStep["processBlsToExecutionChange"] = "processBlsToExecutionChange";
|
|
34
|
+
ProcessOperationsStep["processDepositRequest"] = "processDepositRequest";
|
|
35
|
+
ProcessOperationsStep["processWithdrawalRequest"] = "processWithdrawalRequest";
|
|
36
|
+
ProcessOperationsStep["processConsolidationRequest"] = "processConsolidationRequest";
|
|
37
|
+
ProcessOperationsStep["processPayloadAttestation"] = "processPayloadAttestation";
|
|
38
|
+
})(ProcessOperationsStep || (ProcessOperationsStep = {}));
|
|
7
39
|
//# sourceMappingURL=types.js.map
|
package/lib/block/types.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/block/types.ts"],"names":[],"mappings":"AAIA,MAAM,CAAN,IAAY,kBAIX;AAJD,WAAY,kBAAkB;IAC5B,iDAA2B,CAAA;IAC3B,sDAAgC,CAAA;IAChC,2CAAqB,CAAA;AACvB,CAAC,EAJW,kBAAkB,KAAlB,kBAAkB,QAI7B"}
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/block/types.ts"],"names":[],"mappings":"AAIA,MAAM,CAAN,IAAY,kBAIX;AAJD,WAAY,kBAAkB;IAC5B,iDAA2B,CAAA;IAC3B,sDAAgC,CAAA;IAChC,2CAAqB,CAAA;AACvB,CAAC,EAJW,kBAAkB,KAAlB,kBAAkB,QAI7B;AAED;;GAEG;AACH,MAAM,CAAN,IAAY,gBAWX;AAXD,WAAY,gBAAgB;IAC1B,mFAA+D,CAAA;IAC/D,6DAAyC,CAAA;IACzC,6DAAyC,CAAA;IACzC,uEAAmD,CAAA;IACnD,6EAAyD,CAAA;IACzD,mDAA+B,CAAA;IAC/B,uDAAmC,CAAA;IACnC,2DAAuC,CAAA;IACvC,iEAA6C,CAAA;IAC7C,2EAAuD,CAAA;AACzD,CAAC,EAXW,gBAAgB,KAAhB,gBAAgB,QAW3B;AAED;;GAEG;AACH,MAAM,CAAN,IAAY,qBAWX;AAXD,WAAY,qBAAqB;IAC/B,4EAAmD,CAAA;IACnD,4EAAmD,CAAA;IACnD,oEAA2C,CAAA;IAC3C,0DAAiC,CAAA;IACjC,sEAA6C,CAAA;IAC7C,oFAA2D,CAAA;IAC3D,wEAA+C,CAAA;IAC/C,8EAAqD,CAAA;IACrD,oFAA2D,CAAA;IAC3D,gFAAuD,CAAA;AACzD,CAAC,EAXW,qBAAqB,KAArB,qBAAqB,QAWhC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"processPtcWindow.d.ts","sourceRoot":"","sources":["../../src/epoch/processPtcWindow.ts"],"names":[],"mappings":"AAEA,OAAO,EAAC,sBAAsB,EAAE,oBAAoB,EAAC,MAAM,aAAa,CAAC;AAIzE;;;;;;;GAOG;AACH,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,sBAAsB,EAAE,KAAK,EAAE,oBAAoB,GAAG,IAAI,
|
|
1
|
+
{"version":3,"file":"processPtcWindow.d.ts","sourceRoot":"","sources":["../../src/epoch/processPtcWindow.ts"],"names":[],"mappings":"AAEA,OAAO,EAAC,sBAAsB,EAAE,oBAAoB,EAAC,MAAM,aAAa,CAAC;AAIzE;;;;;;;GAOG;AACH,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,sBAAsB,EAAE,KAAK,EAAE,oBAAoB,GAAG,IAAI,CA8BjG"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { MIN_SEED_LOOKAHEAD } from "@lodestar/params";
|
|
1
|
+
import { MIN_SEED_LOOKAHEAD, SLOTS_PER_EPOCH } from "@lodestar/params";
|
|
2
2
|
import { ssz } from "@lodestar/types";
|
|
3
3
|
import { computeEpochShuffling } from "../util/epochShuffling.js";
|
|
4
4
|
import { computePayloadTimelinessCommitteesForEpoch } from "../util/seed.js";
|
|
@@ -14,15 +14,18 @@ export function processPtcWindow(state, cache) {
|
|
|
14
14
|
const nextEpoch = state.epochCtx.epoch + MIN_SEED_LOOKAHEAD + 1;
|
|
15
15
|
const nextEpochShuffling = cache.nextShuffling ?? computeEpochShuffling(state, cache.nextShufflingActiveIndices, nextEpoch);
|
|
16
16
|
cache.nextShuffling = nextEpochShuffling;
|
|
17
|
-
const newNextPayloadTimelinessCommittees = computePayloadTimelinessCommitteesForEpoch(state, nextEpoch, nextEpochShuffling.committees, state.epochCtx.effectiveBalanceIncrements);
|
|
17
|
+
const newNextPayloadTimelinessCommittees = computePayloadTimelinessCommitteesForEpoch(state, nextEpoch, nextEpochShuffling.committees, nextEpochShuffling.shuffling, state.epochCtx.effectiveBalanceIncrements);
|
|
18
18
|
// Stash for finalProcessEpoch to shift into epoch cache
|
|
19
19
|
cache.nextEpochPayloadTimelinessCommittees = newNextPayloadTimelinessCommittees;
|
|
20
|
-
//
|
|
21
|
-
//
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
20
|
+
// Shift the current and next epochs forward by reusing their SSZ subtrees and cached hashes.
|
|
21
|
+
// Only the newly computed epoch needs new subtrees.
|
|
22
|
+
const ptcWindow = state.ptcWindow;
|
|
23
|
+
const retainedLength = ptcWindow.length - SLOTS_PER_EPOCH;
|
|
24
|
+
for (let i = 0; i < retainedLength; i++) {
|
|
25
|
+
ptcWindow.set(i, ptcWindow.getReadonly(i + SLOTS_PER_EPOCH));
|
|
26
|
+
}
|
|
27
|
+
for (let i = 0; i < SLOTS_PER_EPOCH; i++) {
|
|
28
|
+
ptcWindow.set(retainedLength + i, ssz.gloas.PayloadTimelinessCommittee.toViewDU(newNextPayloadTimelinessCommittees[i]));
|
|
29
|
+
}
|
|
27
30
|
}
|
|
28
31
|
//# sourceMappingURL=processPtcWindow.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"processPtcWindow.js","sourceRoot":"","sources":["../../src/epoch/processPtcWindow.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,kBAAkB,EAAC,MAAM,kBAAkB,CAAC;
|
|
1
|
+
{"version":3,"file":"processPtcWindow.js","sourceRoot":"","sources":["../../src/epoch/processPtcWindow.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,kBAAkB,EAAE,eAAe,EAAC,MAAM,kBAAkB,CAAC;AACrE,OAAO,EAAC,GAAG,EAAC,MAAM,iBAAiB,CAAC;AAEpC,OAAO,EAAC,qBAAqB,EAAC,MAAM,2BAA2B,CAAC;AAChE,OAAO,EAAC,0CAA0C,EAAC,MAAM,iBAAiB,CAAC;AAE3E;;;;;;;GAOG;AACH,MAAM,UAAU,gBAAgB,CAAC,KAA6B,EAAE,KAA2B;IACzF,MAAM,SAAS,GAAG,KAAK,CAAC,QAAQ,CAAC,KAAK,GAAG,kBAAkB,GAAG,CAAC,CAAC;IAChE,MAAM,kBAAkB,GACtB,KAAK,CAAC,aAAa,IAAI,qBAAqB,CAAC,KAAK,EAAE,KAAK,CAAC,0BAA0B,EAAE,SAAS,CAAC,CAAC;IACnG,KAAK,CAAC,aAAa,GAAG,kBAAkB,CAAC;IAEzC,MAAM,kCAAkC,GAAG,0CAA0C,CACnF,KAAK,EACL,SAAS,EACT,kBAAkB,CAAC,UAAU,EAC7B,kBAAkB,CAAC,SAAS,EAC5B,KAAK,CAAC,QAAQ,CAAC,0BAA0B,CAC1C,CAAC;IAEF,wDAAwD;IACxD,KAAK,CAAC,oCAAoC,GAAG,kCAAkC,CAAC;IAEhF,6FAA6F;IAC7F,oDAAoD;IACpD,MAAM,SAAS,GAAG,KAAK,CAAC,SAAS,CAAC;IAClC,MAAM,cAAc,GAAG,SAAS,CAAC,MAAM,GAAG,eAAe,CAAC;IAC1D,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,cAAc,EAAE,CAAC,EAAE,EAAE,CAAC;QACxC,SAAS,CAAC,GAAG,CAAC,CAAC,EAAE,SAAS,CAAC,WAAW,CAAC,CAAC,GAAG,eAAe,CAAC,CAAC,CAAC;IAC/D,CAAC;IACD,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,eAAe,EAAE,CAAC,EAAE,EAAE,CAAC;QACzC,SAAS,CAAC,GAAG,CACX,cAAc,GAAG,CAAC,EAClB,GAAG,CAAC,KAAK,CAAC,0BAA0B,CAAC,QAAQ,CAAC,kCAAkC,CAAC,CAAC,CAAC,CAAC,CACrF,CAAC;IACJ,CAAC;AACH,CAAC"}
|
package/lib/index.d.ts
CHANGED
|
@@ -6,7 +6,7 @@ export { becomesNewEth1Data } from "./block/processEth1Data.js";
|
|
|
6
6
|
export { assertValidProposerSlashing } from "./block/processProposerSlashing.js";
|
|
7
7
|
export { VoluntaryExitValidity, getVoluntaryExitValidity, isValidVoluntaryExit, } from "./block/processVoluntaryExit.js";
|
|
8
8
|
export { getExpectedWithdrawals } from "./block/processWithdrawals.js";
|
|
9
|
-
export { ProposerRewardType } from "./block/types.js";
|
|
9
|
+
export { BlockProcessStep, ProcessOperationsStep, ProposerRewardType } from "./block/types.js";
|
|
10
10
|
export { type EffectiveBalanceIncrements, getEffectiveBalanceIncrementsWithLen, getEffectiveBalanceIncrementsZeroed, } from "./cache/effectiveBalanceIncrements.js";
|
|
11
11
|
export { EpochCache, type EpochCacheImmutableData, createEmptyEpochCacheImmutableData, } from "./cache/epochCache.js";
|
|
12
12
|
export { type EpochTransitionCache, beforeProcessEpoch } from "./cache/epochTransitionCache.js";
|
package/lib/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,KAAK,iBAAiB,EAAE,sBAAsB,EAAE,sBAAsB,EAAC,MAAM,yBAAyB,CAAC;AAC/G,OAAO,EAAC,iCAAiC,EAAE,yBAAyB,EAAC,MAAM,sCAAsC,CAAC;AAClH,OAAO,EAAC,2BAA2B,EAAC,MAAM,oCAAoC,CAAC;AAC/E,OAAO,EAAC,2BAA2B,EAAC,MAAM,wCAAwC,CAAC;AAEnF,OAAO,EAAC,kBAAkB,EAAC,MAAM,4BAA4B,CAAC;AAC9D,OAAO,EAAC,2BAA2B,EAAC,MAAM,oCAAoC,CAAC;AAE/E,OAAO,EACL,qBAAqB,EACrB,wBAAwB,EACxB,oBAAoB,GACrB,MAAM,iCAAiC,CAAC;AAEzC,OAAO,EAAC,sBAAsB,EAAC,MAAM,+BAA+B,CAAC;AACrE,OAAO,EAAC,kBAAkB,EAAC,MAAM,kBAAkB,CAAC;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,KAAK,iBAAiB,EAAE,sBAAsB,EAAE,sBAAsB,EAAC,MAAM,yBAAyB,CAAC;AAC/G,OAAO,EAAC,iCAAiC,EAAE,yBAAyB,EAAC,MAAM,sCAAsC,CAAC;AAClH,OAAO,EAAC,2BAA2B,EAAC,MAAM,oCAAoC,CAAC;AAC/E,OAAO,EAAC,2BAA2B,EAAC,MAAM,wCAAwC,CAAC;AAEnF,OAAO,EAAC,kBAAkB,EAAC,MAAM,4BAA4B,CAAC;AAC9D,OAAO,EAAC,2BAA2B,EAAC,MAAM,oCAAoC,CAAC;AAE/E,OAAO,EACL,qBAAqB,EACrB,wBAAwB,EACxB,oBAAoB,GACrB,MAAM,iCAAiC,CAAC;AAEzC,OAAO,EAAC,sBAAsB,EAAC,MAAM,+BAA+B,CAAC;AACrE,OAAO,EAAC,gBAAgB,EAAE,qBAAqB,EAAE,kBAAkB,EAAC,MAAM,kBAAkB,CAAC;AAC7F,OAAO,EACL,KAAK,0BAA0B,EAC/B,oCAAoC,EACpC,mCAAmC,GACpC,MAAM,uCAAuC,CAAC;AAC/C,OAAO,EACL,UAAU,EACV,KAAK,uBAAuB,EAC5B,kCAAkC,GACnC,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EAAC,KAAK,oBAAoB,EAAE,kBAAkB,EAAC,MAAM,iCAAiC,CAAC;AAE9F,OAAO,EACL,KAAK,gBAAgB,EACrB,uBAAuB,EACvB,mBAAmB,EACnB,6BAA6B,EAC7B,+BAA+B,EAC/B,qBAAqB,GACtB,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EAAC,KAAK,kBAAkB,EAAE,uBAAuB,EAAC,MAAM,+BAA+B,CAAC;AAC/F,cAAc,sBAAsB,CAAC;AACrC,YAAY,EAAC,mBAAmB,EAAC,MAAM,kBAAkB,CAAC;AAC1D,OAAO,EAAC,KAAK,4BAA4B,EAAE,UAAU,EAAC,MAAM,cAAc,CAAC;AAC3E,cAAc,oBAAoB,CAAC;AACnC,cAAc,0BAA0B,CAAC;AACzC,cAAc,sBAAsB,CAAC;AACrC,OAAO,EAAC,eAAe,EAAC,MAAM,gCAAgC,CAAC;AAC/D,OAAO,EACL,KAAK,wBAAwB,EAC7B,KAAK,yBAAyB,EAC9B,KAAK,gBAAgB,EACrB,KAAK,sBAAsB,EAC3B,KAAK,yBAAyB,EAC9B,KAAK,uBAAuB,EAC5B,KAAK,qBAAqB,EAC1B,KAAK,uBAAuB,EAC5B,KAAK,oBAAoB,EACzB,KAAK,qBAAqB,EAC1B,KAAK,oBAAoB,EACzB,iBAAiB,EACjB,oBAAoB,EACpB,kBAAkB,EAClB,gBAAgB,EAChB,kBAAkB,EAClB,eAAe,EACf,gBAAgB,EAChB,eAAe,GAChB,MAAM,0BAA0B,CAAC;AAClC,OAAO,EAAC,qBAAqB,EAAE,uCAAuC,EAAC,MAAM,iCAAiC,CAAC;AAC/G,YAAY,EACV,mBAAmB,EACnB,iBAAiB,EACjB,oBAAoB,EACpB,kBAAkB,EAClB,gBAAgB,EAChB,kBAAkB,EAClB,qBAAqB,EACrB,eAAe,EACf,gBAAgB,EAChB,eAAe,EAEf,iBAAiB,EACjB,yBAAyB,EACzB,uBAAuB,EACvB,0BAA0B,EAC1B,wBAAwB,EACxB,sBAAsB,EACtB,wBAAwB,EACxB,2BAA2B,EAC3B,qBAAqB,EACrB,sBAAsB,EACtB,qBAAqB,EACrB,uBAAuB,GACxB,MAAM,YAAY,CAAC;AACpB,cAAc,iBAAiB,CAAC"}
|
package/lib/index.js
CHANGED
|
@@ -9,7 +9,7 @@ export { assertValidProposerSlashing } from "./block/processProposerSlashing.js"
|
|
|
9
9
|
export { VoluntaryExitValidity, getVoluntaryExitValidity, isValidVoluntaryExit, } from "./block/processVoluntaryExit.js";
|
|
10
10
|
// Withdrawals for new blocks
|
|
11
11
|
export { getExpectedWithdrawals } from "./block/processWithdrawals.js";
|
|
12
|
-
export { ProposerRewardType } from "./block/types.js";
|
|
12
|
+
export { BlockProcessStep, ProcessOperationsStep, ProposerRewardType } from "./block/types.js";
|
|
13
13
|
export { getEffectiveBalanceIncrementsWithLen, getEffectiveBalanceIncrementsZeroed, } from "./cache/effectiveBalanceIncrements.js";
|
|
14
14
|
export { EpochCache, createEmptyEpochCacheImmutableData, } from "./cache/epochCache.js";
|
|
15
15
|
export { beforeProcessEpoch } from "./cache/epochTransitionCache.js";
|
package/lib/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAyB,sBAAsB,EAAE,sBAAsB,EAAC,MAAM,yBAAyB,CAAC;AAC/G,OAAO,EAAC,iCAAiC,EAAE,yBAAyB,EAAC,MAAM,sCAAsC,CAAC;AAClH,OAAO,EAAC,2BAA2B,EAAC,MAAM,oCAAoC,CAAC;AAC/E,OAAO,EAAC,2BAA2B,EAAC,MAAM,wCAAwC,CAAC;AACnF,qCAAqC;AACrC,OAAO,EAAC,kBAAkB,EAAC,MAAM,4BAA4B,CAAC;AAC9D,OAAO,EAAC,2BAA2B,EAAC,MAAM,oCAAoC,CAAC;AAC/E,yBAAyB;AACzB,OAAO,EACL,qBAAqB,EACrB,wBAAwB,EACxB,oBAAoB,GACrB,MAAM,iCAAiC,CAAC;AACzC,6BAA6B;AAC7B,OAAO,EAAC,sBAAsB,EAAC,MAAM,+BAA+B,CAAC;AACrE,OAAO,EAAC,kBAAkB,EAAC,MAAM,kBAAkB,CAAC;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAyB,sBAAsB,EAAE,sBAAsB,EAAC,MAAM,yBAAyB,CAAC;AAC/G,OAAO,EAAC,iCAAiC,EAAE,yBAAyB,EAAC,MAAM,sCAAsC,CAAC;AAClH,OAAO,EAAC,2BAA2B,EAAC,MAAM,oCAAoC,CAAC;AAC/E,OAAO,EAAC,2BAA2B,EAAC,MAAM,wCAAwC,CAAC;AACnF,qCAAqC;AACrC,OAAO,EAAC,kBAAkB,EAAC,MAAM,4BAA4B,CAAC;AAC9D,OAAO,EAAC,2BAA2B,EAAC,MAAM,oCAAoC,CAAC;AAC/E,yBAAyB;AACzB,OAAO,EACL,qBAAqB,EACrB,wBAAwB,EACxB,oBAAoB,GACrB,MAAM,iCAAiC,CAAC;AACzC,6BAA6B;AAC7B,OAAO,EAAC,sBAAsB,EAAC,MAAM,+BAA+B,CAAC;AACrE,OAAO,EAAC,gBAAgB,EAAE,qBAAqB,EAAE,kBAAkB,EAAC,MAAM,kBAAkB,CAAC;AAC7F,OAAO,EAEL,oCAAoC,EACpC,mCAAmC,GACpC,MAAM,uCAAuC,CAAC;AAC/C,OAAO,EACL,UAAU,EAEV,kCAAkC,GACnC,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EAA4B,kBAAkB,EAAC,MAAM,iCAAiC,CAAC;AAC9F,oBAAoB;AACpB,OAAO,EAEL,uBAAuB,EACvB,mBAAmB,EACnB,6BAA6B,EAC7B,+BAA+B,EAC/B,qBAAqB,GACtB,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EAA0B,uBAAuB,EAAC,MAAM,+BAA+B,CAAC;AAC/F,cAAc,sBAAsB,CAAC;AAErC,OAAO,EAAoC,UAAU,EAAC,MAAM,cAAc,CAAC;AAC3E,cAAc,oBAAoB,CAAC;AACnC,cAAc,0BAA0B,CAAC;AACzC,cAAc,sBAAsB,CAAC;AACrC,OAAO,EAAC,eAAe,EAAC,MAAM,gCAAgC,CAAC;AAC/D,OAAO,EAYL,iBAAiB,EACjB,oBAAoB,EACpB,kBAAkB,EAClB,gBAAgB,EAChB,kBAAkB,EAClB,eAAe,EACf,gBAAgB,EAChB,eAAe,GAChB,MAAM,0BAA0B,CAAC;AAClC,OAAO,EAAC,qBAAqB,EAAE,uCAAuC,EAAC,MAAM,iCAAiC,CAAC;AA0B/G,cAAc,iBAAiB,CAAC"}
|
package/lib/metrics.d.ts
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { ForkName } from "@lodestar/params";
|
|
2
2
|
import { MetricsRegister } from "@lodestar/utils";
|
|
3
|
-
import { ProposerRewardType } from "./block/types.js";
|
|
3
|
+
import { BlockProcessStep, ProcessOperationsStep, ProposerRewardType } from "./block/types.js";
|
|
4
4
|
import { EpochTransitionStep } from "./epoch/index.js";
|
|
5
5
|
import { StateCloneSource, StateHashTreeRootSource } from "./stateTransition.js";
|
|
6
6
|
import { CachedBeaconStateAllForks } from "./types.js";
|
|
@@ -25,6 +25,12 @@ export declare function getMetrics(register: MetricsRegister): {
|
|
|
25
25
|
source: "cache" | "verified";
|
|
26
26
|
}>;
|
|
27
27
|
processBlockTime: import("@lodestar/utils").Histogram<import("@lodestar/utils").NoLabels>;
|
|
28
|
+
processBlockStepTime: import("@lodestar/utils").Histogram<{
|
|
29
|
+
step: BlockProcessStep;
|
|
30
|
+
}>;
|
|
31
|
+
processOperationsStepTime: import("@lodestar/utils").Histogram<{
|
|
32
|
+
step: ProcessOperationsStep;
|
|
33
|
+
}>;
|
|
28
34
|
processBlockCommitTime: import("@lodestar/utils").Histogram<import("@lodestar/utils").NoLabels>;
|
|
29
35
|
stateHashTreeRootTime: import("@lodestar/utils").Histogram<{
|
|
30
36
|
source: StateHashTreeRootSource;
|
package/lib/metrics.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"metrics.d.ts","sourceRoot":"","sources":["../src/metrics.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,QAAQ,EAAC,MAAM,kBAAkB,CAAC;AAC1C,OAAO,EAAC,eAAe,EAAC,MAAM,iBAAiB,CAAC;AAChD,OAAO,EAAC,kBAAkB,EAAC,MAAM,kBAAkB,CAAC;
|
|
1
|
+
{"version":3,"file":"metrics.d.ts","sourceRoot":"","sources":["../src/metrics.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,QAAQ,EAAC,MAAM,kBAAkB,CAAC;AAC1C,OAAO,EAAC,eAAe,EAAC,MAAM,iBAAiB,CAAC;AAChD,OAAO,EAAC,gBAAgB,EAAE,qBAAqB,EAAE,kBAAkB,EAAC,MAAM,kBAAkB,CAAC;AAC7F,OAAO,EAAC,mBAAmB,EAAC,MAAM,kBAAkB,CAAC;AACrD,OAAO,EAAC,gBAAgB,EAAE,uBAAuB,EAAC,MAAM,sBAAsB,CAAC;AAC/E,OAAO,EAAC,yBAAyB,EAAC,MAAM,YAAY,CAAC;AAGrD,MAAM,MAAM,4BAA4B,GAAG,UAAU,CAAC,OAAO,UAAU,CAAC,CAAC;AAEzE;;GAEG;AACH,wBAAgB,UAAU,CAAC,QAAQ,EAAE,eAAe;IAIhD,mBAAmB;IAMnB,yBAAyB;IAKzB,uBAAuB;cAA4B,mBAAmB;;IAMtE,eAAe;cAA4B,QAAQ;;IAOnD,mBAAmB;IAKnB,uBAAuB;iBAA2B,WAAW,GAAG,OAAO,GAAG,MAAM,GAAG,SAAS;;IAK5F,8BAA8B;gBAA0B,OAAO,GAAG,UAAU;;IAK5E,gBAAgB;IAMhB,oBAAoB;cAA4B,gBAAgB;;IAMhE,yBAAyB;cAA4B,qBAAqB;;IAM1E,sBAAsB;IAKtB,qBAAqB;gBAA8B,uBAAuB;;IAM1E,0BAA0B;IAI1B,2BAA2B;IAI3B,qBAAqB;IAIrB,kCAAkC;gBAA0B,gBAAgB;;IAK5E,iCAAiC;gBAA0B,gBAAgB;;IAK3E,oCAAoC;gBAA0B,gBAAgB;;IAK9E,mCAAmC;gBAA0B,gBAAgB;;IAK7E,mBAAmB;IAKnB,kCAAkC;IAIlC,mCAAmC;IAInC,oCAAoC;IAIpC,qCAAqC;IAIrC,wBAAwB;IAIxB,wCAAwC;IAIxC,oBAAoB;IAIpB,eAAe;cAAwB,kBAAkB;;EAM5D;AAED,wBAAgB,mBAAmB,CACjC,KAAK,EAAE,yBAAyB,EAChC,OAAO,EAAE,4BAA4B,EACrC,MAAM,EAAE,gBAAgB,GACvB,IAAI,CAcN;AAED,wBAAgB,kBAAkB,CAAC,SAAS,EAAE,yBAAyB,EAAE,OAAO,EAAE,4BAA4B,GAAG,IAAI,CAYpH"}
|
package/lib/metrics.js
CHANGED
|
@@ -47,10 +47,21 @@ export function getMetrics(register) {
|
|
|
47
47
|
processBlockTime: register.histogram({
|
|
48
48
|
name: "lodestar_stfn_process_block_seconds",
|
|
49
49
|
help: "Time to process a single block in seconds",
|
|
50
|
-
// TODO: Add metrics for each step
|
|
51
50
|
// Block processing can take 5-40ms, 100ms max
|
|
52
51
|
buckets: [0.005, 0.01, 0.02, 0.05, 0.1, 1],
|
|
53
52
|
}),
|
|
53
|
+
processBlockStepTime: register.histogram({
|
|
54
|
+
name: "lodestar_stfn_process_block_step_seconds",
|
|
55
|
+
help: "Time to call each step of process block in seconds",
|
|
56
|
+
labelNames: ["step"],
|
|
57
|
+
buckets: [0.001, 0.005, 0.01, 0.025, 0.05, 0.1],
|
|
58
|
+
}),
|
|
59
|
+
processOperationsStepTime: register.histogram({
|
|
60
|
+
name: "lodestar_stfn_process_operations_step_seconds",
|
|
61
|
+
help: "Time to call each step of process operations in seconds",
|
|
62
|
+
labelNames: ["step"],
|
|
63
|
+
buckets: [0.001, 0.005, 0.01, 0.025, 0.05, 0.1],
|
|
64
|
+
}),
|
|
54
65
|
processBlockCommitTime: register.histogram({
|
|
55
66
|
name: "lodestar_stfn_process_block_commit_seconds",
|
|
56
67
|
help: "Time to call commit after process a single block in seconds",
|
package/lib/metrics.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"metrics.js","sourceRoot":"","sources":["../src/metrics.ts"],"names":[],"mappings":"AAMA,OAAO,EAAC,sBAAsB,EAAC,MAAM,eAAe,CAAC;AAIrD;;GAEG;AACH,MAAM,UAAU,UAAU,CAAC,QAAyB;IAClD,qGAAqG;IAErG,OAAO;QACL,mBAAmB,EAAE,QAAQ,CAAC,SAAS,CAAC;YACtC,IAAI,EAAE,wCAAwC;YAC9C,IAAI,EAAE,sDAAsD;YAC5D,kHAAkH;YAClH,OAAO,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,IAAI,EAAE,CAAC,EAAE,IAAI,EAAE,GAAG,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE,EAAE,CAAC;SACvD,CAAC;QACF,yBAAyB,EAAE,QAAQ,CAAC,SAAS,CAAC;YAC5C,IAAI,EAAE,+CAA+C;YACrD,IAAI,EAAE,wEAAwE;YAC9E,OAAO,EAAE,CAAC,IAAI,EAAE,IAAI,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,IAAI,EAAE,CAAC,CAAC;SAC9C,CAAC;QACF,uBAAuB,EAAE,QAAQ,CAAC,SAAS,CAA8B;YACvE,IAAI,EAAE,6CAA6C;YACnD,IAAI,EAAE,uDAAuD;YAC7D,UAAU,EAAE,CAAC,MAAM,CAAC;YACpB,OAAO,EAAE,CAAC,IAAI,EAAE,IAAI,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,IAAI,EAAE,CAAC,CAAC;SAC9C,CAAC;QACF,eAAe,EAAE,QAAQ,CAAC,SAAS,CAAmB;YACpD,IAAI,EAAE,oCAAoC;YAC1C,IAAI,EAAE,yDAAyD;YAC/D,UAAU,EAAE,CAAC,MAAM,CAAC;YACpB,gFAAgF;YAChF,OAAO,EAAE,CAAC,IAAI,EAAE,GAAG,EAAE,IAAI,EAAE,GAAG,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,CAAC;SACjD,CAAC;QACF,mBAAmB,EAAE,QAAQ,CAAC,SAAS,CAAC;YACtC,IAAI,EAAE,8CAA8C;YACpD,IAAI,EAAE,+EAA+E;YACrF,OAAO,EAAE,CAAC,IAAI,EAAE,GAAG,EAAE,IAAI,EAAE,GAAG,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,CAAC;SACjD,CAAC;QACF,uBAAuB,EAAE,QAAQ,CAAC,KAAK,CAAwD;YAC7F,IAAI,EAAE,+CAA+C;YACrD,IAAI,EAAE,mEAAmE;YACzE,UAAU,EAAE,CAAC,SAAS,CAAC;SACxB,CAAC;QACF,8BAA8B,EAAE,QAAQ,CAAC,KAAK,CAAiC;YAC7E,IAAI,EAAE,uDAAuD;YAC7D,IAAI,EAAE,wKAAwK;YAC9K,UAAU,EAAE,CAAC,QAAQ,CAAC;SACvB,CAAC;QACF,gBAAgB,EAAE,QAAQ,CAAC,SAAS,CAAC;YACnC,IAAI,EAAE,qCAAqC;YAC3C,IAAI,EAAE,2CAA2C;YACjD,
|
|
1
|
+
{"version":3,"file":"metrics.js","sourceRoot":"","sources":["../src/metrics.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/signatureSets/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,YAAY,EAAC,MAAM,kBAAkB,CAAC;AAE9C,OAAO,EAAC,kBAAkB,EAAE,iBAAiB,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/signatureSets/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,YAAY,EAAC,MAAM,kBAAkB,CAAC;AAE9C,OAAO,EAAC,kBAAkB,EAAE,iBAAiB,EAAyB,MAAM,iBAAiB,CAAC;AAE9F,OAAO,EAAC,kBAAkB,EAAC,MAAM,gCAAgC,CAAC;AAClE,OAAO,EAAC,gBAAgB,EAAwB,MAAM,2BAA2B,CAAC;AAClF,OAAO,EAAC,aAAa,EAA4C,MAAM,kBAAkB,CAAC;AAU1F,cAAc,wBAAwB,CAAC;AACvC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,0BAA0B,CAAC;AACzC,cAAc,+BAA+B,CAAC;AAC9C,cAAc,yBAAyB,CAAC;AACxC,cAAc,gCAAgC,CAAC;AAC/C,cAAc,eAAe,CAAC;AAC9B,cAAc,0BAA0B,CAAC;AACzC,cAAc,wBAAwB,CAAC;AACvC,cAAc,aAAa,CAAC;AAC5B,cAAc,qBAAqB,CAAC;AAEpC;;;GAGG;AACH,wBAAgB,qBAAqB,CACnC,MAAM,EAAE,YAAY,EACpB,2BAA2B,EAAE,kBAAkB,EAC/C,KAAK,EAAE,gBAAgB,EACvB,WAAW,EAAE,iBAAiB,EAC9B,mBAAmB,EAAE,kBAAkB,EAAE,EACzC,IAAI,CAAC,EAAE;IACL,wFAAwF;IACxF,qBAAqB,CAAC,EAAE,OAAO,CAAC;CACjC,GACA,aAAa,EAAE,CAsDjB"}
|
|
@@ -1,8 +1,10 @@
|
|
|
1
1
|
import { ForkSeq } from "@lodestar/params";
|
|
2
2
|
import { getSyncCommitteeSignatureSet } from "../block/processSyncCommittee.js";
|
|
3
|
+
import { createAggregateSignatureSetFromComponents } from "../util/index.js";
|
|
3
4
|
import { getAttesterSlashingsSignatureSets } from "./attesterSlashings.js";
|
|
4
5
|
import { getBlsToExecutionChangeSignatureSets } from "./blsToExecutionChange.js";
|
|
5
6
|
import { getAttestationsSignatureSets } from "./indexedAttestation.js";
|
|
7
|
+
import { getPayloadAttestationDataSigningRoot } from "./indexedPayloadAttestation.js";
|
|
6
8
|
import { getBlockProposerSignatureSet } from "./proposer.js";
|
|
7
9
|
import { getProposerSlashingsSignatureSets } from "./proposerSlashings.js";
|
|
8
10
|
import { getRandaoRevealSignatureSet } from "./randao.js";
|
|
@@ -50,6 +52,12 @@ export function getBlockSignatureSets(config, currentSyncCommitteeIndexed, state
|
|
|
50
52
|
signatureSets.push(...blsToExecutionChangeSignatureSets);
|
|
51
53
|
}
|
|
52
54
|
}
|
|
55
|
+
if (fork >= ForkSeq.gloas) {
|
|
56
|
+
for (const payloadAttestation of signedBlock.message.body.payloadAttestations) {
|
|
57
|
+
const ptc = state.getPayloadTimelinessCommittee(payloadAttestation.data.slot);
|
|
58
|
+
signatureSets.push(createAggregateSignatureSetFromComponents(payloadAttestation.aggregationBits.intersectValues(ptc), getPayloadAttestationDataSigningRoot(config, payloadAttestation.data), payloadAttestation.signature));
|
|
59
|
+
}
|
|
60
|
+
}
|
|
53
61
|
return signatureSets;
|
|
54
62
|
}
|
|
55
63
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/signatureSets/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAC,OAAO,EAAC,MAAM,kBAAkB,CAAC;AAEzC,OAAO,EAAC,4BAA4B,EAAC,MAAM,kCAAkC,CAAC;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/signatureSets/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAC,OAAO,EAAC,MAAM,kBAAkB,CAAC;AAEzC,OAAO,EAAC,4BAA4B,EAAC,MAAM,kCAAkC,CAAC;AAG9E,OAAO,EAAgB,yCAAyC,EAAC,MAAM,kBAAkB,CAAC;AAC1F,OAAO,EAAC,iCAAiC,EAAC,MAAM,wBAAwB,CAAC;AACzE,OAAO,EAAC,oCAAoC,EAAC,MAAM,2BAA2B,CAAC;AAC/E,OAAO,EAAC,4BAA4B,EAAC,MAAM,yBAAyB,CAAC;AACrE,OAAO,EAAC,oCAAoC,EAAC,MAAM,gCAAgC,CAAC;AACpF,OAAO,EAAC,4BAA4B,EAAC,MAAM,eAAe,CAAC;AAC3D,OAAO,EAAC,iCAAiC,EAAC,MAAM,wBAAwB,CAAC;AACzE,OAAO,EAAC,2BAA2B,EAAC,MAAM,aAAa,CAAC;AACxD,OAAO,EAAC,8BAA8B,EAAC,MAAM,qBAAqB,CAAC;AAEnE,cAAc,wBAAwB,CAAC;AACvC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,0BAA0B,CAAC;AACzC,cAAc,+BAA+B,CAAC;AAC9C,cAAc,yBAAyB,CAAC;AACxC,cAAc,gCAAgC,CAAC;AAC/C,cAAc,eAAe,CAAC;AAC9B,cAAc,0BAA0B,CAAC;AACzC,cAAc,wBAAwB,CAAC;AACvC,cAAc,aAAa,CAAC;AAC5B,cAAc,qBAAqB,CAAC;AAEpC;;;GAGG;AACH,MAAM,UAAU,qBAAqB,CACnC,MAAoB,EACpB,2BAA+C,EAC/C,KAAuB,EACvB,WAA8B,EAC9B,mBAAyC,EACzC,IAGC;IAED,yBAAyB;IACzB,MAAM,IAAI,GAAG,MAAM,CAAC,UAAU,CAAC,WAAW,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;IAEzD,MAAM,aAAa,GAAG;QACpB,2BAA2B,CAAC,MAAM,EAAE,WAAW,CAAC,OAAO,CAAC;QACxD,GAAG,iCAAiC,CAAC,MAAM,EAAE,WAAW,CAAC;QACzD,GAAG,iCAAiC,CAAC,MAAM,EAAE,WAAW,CAAC;QACzD,GAAG,4BAA4B,CAAC,MAAM,EAAE,WAAW,EAAE,mBAAmB,CAAC;QACzE,GAAG,8BAA8B,CAAC,MAAM,EAAE,KAAK,EAAE,WAAW,CAAC;KAC9D,CAAC;IAEF,IAAI,CAAC,IAAI,EAAE,qBAAqB,EAAE,CAAC;QACjC,aAAa,CAAC,IAAI,CAAC,4BAA4B,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC,CAAC;IACxE,CAAC;IAED,2DAA2D;IAC3D,IAAI,IAAI,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;QAC3B,MAAM,yBAAyB,GAAG,4BAA4B,CAC5D,MAAM,EACN,2BAA2B,EAC1B,WAAwC,CAAC,OAAO,CAClD,CAAC;QACF,2FAA2F;QAC3F,IAAI,yBAAyB,EAAE,CAAC;YAC9B,aAAa,CAAC,IAAI,CAAC,yBAAyB,CAAC,CAAC;QAChD,CAAC;IACH,CAAC;IAED,0BAA0B;IAC1B,IAAI,IAAI,IAAI,OAAO,CAAC,OAAO,EAAE,CAAC;QAC5B,MAAM,iCAAiC,GAAG,oCAAoC,CAC5E,MAAM,EACN,WAAwC,CACzC,CAAC;QACF,IAAI,iCAAiC,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACjD,aAAa,CAAC,IAAI,CAAC,GAAG,iCAAiC,CAAC,CAAC;QAC3D,CAAC;IACH,CAAC;IAED,IAAI,IAAI,IAAI,OAAO,CAAC,KAAK,EAAE,CAAC;QAC1B,KAAK,MAAM,kBAAkB,IAAK,WAAuC,CAAC,OAAO,CAAC,IAAI,CAAC,mBAAmB,EAAE,CAAC;YAC3G,MAAM,GAAG,GAAI,KAA+B,CAAC,6BAA6B,CAAC,kBAAkB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YACzG,aAAa,CAAC,IAAI,CAChB,yCAAyC,CACvC,kBAAkB,CAAC,eAAe,CAAC,eAAe,CAAC,GAAG,CAAC,EACvD,oCAAoC,CAAC,MAAM,EAAE,kBAAkB,CAAC,IAAI,CAAC,EACrE,kBAAkB,CAAC,SAAS,CAC7B,CACF,CAAC;QACJ,CAAC;IACH,CAAC;IAED,OAAO,aAAa,CAAC;AACvB,CAAC"}
|