@lodestar/state-transition 1.39.0-dev.aceb5b7416 → 1.39.0-dev.ad23ef56aa
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 +4 -2
- package/lib/block/index.js.map +1 -1
- package/lib/block/isValidIndexedAttestation.d.ts +5 -5
- package/lib/block/isValidIndexedAttestation.d.ts.map +1 -1
- package/lib/block/isValidIndexedAttestation.js +9 -10
- package/lib/block/isValidIndexedAttestation.js.map +1 -1
- package/lib/block/processAttestationPhase0.d.ts.map +1 -1
- package/lib/block/processAttestationPhase0.js +1 -1
- package/lib/block/processAttestationPhase0.js.map +1 -1
- package/lib/block/processAttestationsAltair.d.ts.map +1 -1
- package/lib/block/processAttestationsAltair.js +1 -1
- package/lib/block/processAttestationsAltair.js.map +1 -1
- package/lib/block/processAttesterSlashing.d.ts +3 -2
- package/lib/block/processAttesterSlashing.d.ts.map +1 -1
- package/lib/block/processAttesterSlashing.js +3 -3
- package/lib/block/processAttesterSlashing.js.map +1 -1
- package/lib/block/processBlsToExecutionChange.d.ts +3 -1
- package/lib/block/processBlsToExecutionChange.d.ts.map +1 -1
- package/lib/block/processBlsToExecutionChange.js +7 -11
- package/lib/block/processBlsToExecutionChange.js.map +1 -1
- package/lib/block/processExecutionPayload.d.ts.map +1 -1
- package/lib/block/processExecutionPayload.js +6 -4
- package/lib/block/processExecutionPayload.js.map +1 -1
- package/lib/block/processProposerSlashing.d.ts +5 -2
- package/lib/block/processProposerSlashing.d.ts.map +1 -1
- package/lib/block/processProposerSlashing.js +7 -5
- package/lib/block/processProposerSlashing.js.map +1 -1
- package/lib/block/processRandao.js +2 -2
- package/lib/block/processRandao.js.map +1 -1
- package/lib/block/processSyncCommittee.d.ts +3 -1
- package/lib/block/processSyncCommittee.d.ts.map +1 -1
- package/lib/block/processSyncCommittee.js +6 -4
- package/lib/block/processSyncCommittee.js.map +1 -1
- package/lib/block/processVoluntaryExit.d.ts.map +1 -1
- package/lib/block/processVoluntaryExit.js +2 -1
- package/lib/block/processVoluntaryExit.js.map +1 -1
- package/lib/block/processWithdrawals.d.ts +3 -3
- package/lib/block/processWithdrawals.d.ts.map +1 -1
- package/lib/block/processWithdrawals.js +152 -105
- package/lib/block/processWithdrawals.js.map +1 -1
- package/lib/cache/stateCache.d.ts +1 -0
- package/lib/cache/stateCache.d.ts.map +1 -1
- package/lib/cache/stateCache.js.map +1 -1
- package/lib/index.d.ts +2 -1
- package/lib/index.d.ts.map +1 -1
- package/lib/index.js +2 -0
- package/lib/index.js.map +1 -1
- package/lib/rewards/attestationsRewards.d.ts +6 -0
- package/lib/rewards/attestationsRewards.d.ts.map +1 -0
- package/lib/rewards/attestationsRewards.js +113 -0
- package/lib/rewards/attestationsRewards.js.map +1 -0
- package/lib/rewards/blockRewards.d.ts +13 -0
- package/lib/rewards/blockRewards.d.ts.map +1 -0
- package/lib/rewards/blockRewards.js +95 -0
- package/lib/rewards/blockRewards.js.map +1 -0
- package/lib/rewards/index.d.ts +4 -0
- package/lib/rewards/index.d.ts.map +1 -0
- package/lib/rewards/index.js +4 -0
- package/lib/rewards/index.js.map +1 -0
- package/lib/rewards/syncCommitteeRewards.d.ts +6 -0
- package/lib/rewards/syncCommitteeRewards.d.ts.map +1 -0
- package/lib/rewards/syncCommitteeRewards.js +36 -0
- package/lib/rewards/syncCommitteeRewards.js.map +1 -0
- package/lib/signatureSets/attesterSlashings.d.ts +5 -5
- package/lib/signatureSets/attesterSlashings.d.ts.map +1 -1
- package/lib/signatureSets/attesterSlashings.js +10 -7
- package/lib/signatureSets/attesterSlashings.js.map +1 -1
- package/lib/signatureSets/blsToExecutionChange.d.ts +1 -2
- package/lib/signatureSets/blsToExecutionChange.d.ts.map +1 -1
- package/lib/signatureSets/blsToExecutionChange.js +2 -2
- package/lib/signatureSets/blsToExecutionChange.js.map +1 -1
- package/lib/signatureSets/index.d.ts +3 -2
- package/lib/signatureSets/index.d.ts.map +1 -1
- package/lib/signatureSets/index.js +10 -10
- package/lib/signatureSets/index.js.map +1 -1
- package/lib/signatureSets/indexedAttestation.d.ts +6 -6
- package/lib/signatureSets/indexedAttestation.d.ts.map +1 -1
- package/lib/signatureSets/indexedAttestation.js +12 -9
- package/lib/signatureSets/indexedAttestation.js.map +1 -1
- package/lib/signatureSets/proposer.d.ts +6 -6
- package/lib/signatureSets/proposer.d.ts.map +1 -1
- package/lib/signatureSets/proposer.js +12 -11
- package/lib/signatureSets/proposer.js.map +1 -1
- package/lib/signatureSets/proposerSlashings.d.ts +4 -4
- package/lib/signatureSets/proposerSlashings.d.ts.map +1 -1
- package/lib/signatureSets/proposerSlashings.js +7 -4
- package/lib/signatureSets/proposerSlashings.js.map +1 -1
- package/lib/signatureSets/randao.d.ts +3 -3
- package/lib/signatureSets/randao.d.ts.map +1 -1
- package/lib/signatureSets/randao.js +6 -4
- package/lib/signatureSets/randao.js.map +1 -1
- package/lib/signatureSets/voluntaryExits.d.ts +5 -5
- package/lib/signatureSets/voluntaryExits.d.ts.map +1 -1
- package/lib/signatureSets/voluntaryExits.js +10 -7
- package/lib/signatureSets/voluntaryExits.js.map +1 -1
- package/lib/stateTransition.js +1 -1
- package/lib/stateTransition.js.map +1 -1
- package/lib/util/execution.d.ts +11 -1
- package/lib/util/execution.d.ts.map +1 -1
- package/lib/util/execution.js +26 -1
- package/lib/util/execution.js.map +1 -1
- package/package.json +14 -11
- package/src/block/index.ts +6 -2
- package/src/block/isValidIndexedAttestation.ts +22 -12
- package/src/block/processAttestationPhase0.ts +3 -1
- package/src/block/processAttestationsAltair.ts +7 -1
- package/src/block/processAttesterSlashing.ts +16 -4
- package/src/block/processBlsToExecutionChange.ts +13 -14
- package/src/block/processExecutionPayload.ts +14 -8
- package/src/block/processProposerSlashing.ts +21 -6
- package/src/block/processRandao.ts +2 -2
- package/src/block/processSyncCommittee.ts +15 -4
- package/src/block/processVoluntaryExit.ts +4 -1
- package/src/block/processWithdrawals.ts +230 -135
- package/src/cache/stateCache.ts +1 -0
- package/src/index.ts +2 -2
- package/src/rewards/attestationsRewards.ts +200 -0
- package/src/rewards/blockRewards.ts +147 -0
- package/src/rewards/index.ts +3 -0
- package/src/rewards/syncCommitteeRewards.ts +59 -0
- package/src/signatureSets/attesterSlashings.ts +14 -9
- package/src/signatureSets/blsToExecutionChange.ts +2 -3
- package/src/signatureSets/index.ts +14 -11
- package/src/signatureSets/indexedAttestation.ts +18 -11
- package/src/signatureSets/proposer.ts +14 -12
- package/src/signatureSets/proposerSlashings.ts +10 -10
- package/src/signatureSets/randao.ts +7 -5
- package/src/signatureSets/voluntaryExits.ts +14 -9
- package/src/stateTransition.ts +1 -1
- package/src/util/execution.ts +39 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"processSyncCommittee.js","sourceRoot":"","sources":["../../src/block/processSyncCommittee.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,eAAe,EAAC,MAAM,gBAAgB,CAAC;
|
|
1
|
+
{"version":3,"file":"processSyncCommittee.js","sourceRoot":"","sources":["../../src/block/processSyncCommittee.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,eAAe,EAAC,MAAM,gBAAgB,CAAC;AAE/C,OAAO,EAAC,qBAAqB,EAAE,mBAAmB,EAAC,MAAM,kBAAkB,CAAC;AAC5E,OAAO,EAAS,GAAG,EAAC,MAAM,iBAAiB,CAAC;AAG5C,OAAO,EAAC,oBAAoB,EAAC,MAAM,uBAAuB,CAAC;AAE3D,OAAO,EAEL,gBAAgB,EAChB,kBAAkB,EAClB,eAAe,EACf,eAAe,EACf,kBAAkB,GACnB,MAAM,kBAAkB,CAAC;AAE1B,MAAM,UAAU,oBAAoB,CAClC,KAAgC,EAChC,KAAyB,EACzB,gBAAgB,GAAG,IAAI;IAEvB,MAAM,gBAAgB,GAAG,KAAK,CAAC,QAAQ,CAAC,2BAA2B,CAAC,gBAAgB,CAAC;IAErF,kIAAkI;IAClI,IAAI,gBAAgB,EAAE,CAAC;QACrB,wEAAwE;QACxE,MAAM,kBAAkB,GAAG,KAAK,CAAC,IAAI,CAAC,aAAa,CAAC,iBAAiB,CAAC,eAAe,CAAC,gBAAgB,CAAC,CAAC;QACxG,MAAM,YAAY,GAAG,4BAA4B,CAC/C,KAAK,CAAC,MAAM,EACZ,KAAK,CAAC,QAAQ,CAAC,YAAY,EAC3B,KAAK,CAAC,QAAQ,CAAC,2BAA2B,EAC1C,KAAK,EACL,kBAAkB,CACnB,CAAC;QACF,kFAAkF;QAClF,IAAI,YAAY,KAAK,IAAI,IAAI,CAAC,kBAAkB,CAAC,YAAY,CAAC,EAAE,CAAC;YAC/D,MAAM,KAAK,CAAC,kCAAkC,CAAC,CAAC;QAClD,CAAC;IACH,CAAC;IAED,MAAM,EAAC,qBAAqB,EAAE,kBAAkB,EAAC,GAAG,KAAK,CAAC,QAAQ,CAAC;IACnE,MAAM,EAAC,iBAAiB,EAAC,GAAG,KAAK,CAAC,IAAI,CAAC,aAAa,CAAC;IACrD,MAAM,aAAa,GAAG,KAAK,CAAC,QAAQ,CAAC,iBAAiB,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IACnE,IAAI,eAAe,GAAG,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC;IAExD,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,mBAAmB,EAAE,CAAC,EAAE,EAAE,CAAC;QAC7C,MAAM,KAAK,GAAG,gBAAgB,CAAC,CAAC,CAAC,CAAC;QAElC,IAAI,iBAAiB,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC;YAC7B,oCAAoC;YACpC,IAAI,KAAK,KAAK,aAAa,EAAE,CAAC;gBAC5B,eAAe,IAAI,qBAAqB,CAAC;YAC3C,CAAC;iBAAM,CAAC;gBACN,eAAe,CAAC,KAAK,EAAE,KAAK,EAAE,qBAAqB,CAAC,CAAC;YACvD,CAAC;YACD,kBAAkB;YAClB,eAAe,IAAI,kBAAkB,CAAC;YACtC,KAAK,CAAC,eAAe,CAAC,aAAa,IAAI,kBAAkB,CAAC;QAC5D,CAAC;aAAM,CAAC;YACN,wCAAwC;YACxC,IAAI,KAAK,KAAK,aAAa,EAAE,CAAC;gBAC5B,eAAe,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,eAAe,GAAG,qBAAqB,CAAC,CAAC;YACzE,CAAC;iBAAM,CAAC;gBACN,eAAe,CAAC,KAAK,EAAE,KAAK,EAAE,qBAAqB,CAAC,CAAC;YACvD,CAAC;QACH,CAAC;IACH,CAAC;IAED,yBAAyB;IACzB,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,aAAa,EAAE,eAAe,CAAC,CAAC;AACrD,CAAC;AAED,MAAM,UAAU,4BAA4B,CAC1C,MAAoB,EACpB,YAA+B,EAC/B,2BAA+C,EAC/C,KAAyB;AACzB,uDAAuD;AACvD,kBAA6B;IAE7B,MAAM,EAAC,aAAa,EAAC,GAAG,KAAK,CAAC,IAAI,CAAC;IACnC,MAAM,SAAS,GAAG,aAAa,CAAC,sBAAsB,CAAC;IAEvD,mDAAmD;IACnD,YAAY;IACZ,qDAAqD;IACrD,MAAM;IACN,mGAAmG;IACnG,oGAAoG;IACpG,MAAM,YAAY,GAAG,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC;IAEjD,0DAA0D;IAC1D,YAAY;IACZ,+CAA+C;IAC/C,MAAM;IACN,mGAAmG;IACnG,mEAAmE;IACnE,EAAE;IACF,6GAA6G;IAC7G,wGAAwG;IACxG,MAAM,UAAU,GAAG,KAAK,CAAC,UAAU,CAAC;IAEpC,IAAI,CAAC,kBAAkB,EAAE,CAAC;QACxB,MAAM,gBAAgB,GAAG,2BAA2B,CAAC,gBAAgB,CAAC;QACtE,kBAAkB,GAAG,aAAa,CAAC,iBAAiB,CAAC,eAAe,CAAC,gBAAgB,CAAC,CAAC;IACzF,CAAC;IAED,mFAAmF;IACnF,IAAI,kBAAkB,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACpC,+EAA+E;QAC/E,wIAAwI;QACxI,IAAI,eAAe,CAAC,SAAS,EAAE,oBAAoB,CAAC,EAAE,CAAC;YACrD,OAAO,IAAI,CAAC;QACd,CAAC;QACD,MAAM,KAAK,CAAC,gDAAgD,CAAC,CAAC;IAChE,CAAC;IAED,oHAAoH;IACpH,0GAA0G;IAC1G,MAAM,MAAM,GAAG,MAAM,CAAC,SAAS,CAAC,KAAK,CAAC,IAAI,EAAE,qBAAqB,EAAE,YAAY,CAAC,CAAC;IAEjF,OAAO;QACL,IAAI,EAAE,gBAAgB,CAAC,SAAS;QAChC,OAAO,EAAE,kBAAkB,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC;QACvD,WAAW,EAAE,kBAAkB,CAAC,GAAG,CAAC,IAAI,EAAE,UAAU,EAAE,MAAM,CAAC;QAC7D,SAAS;KACV,CAAC;AACJ,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"processVoluntaryExit.d.ts","sourceRoot":"","sources":["../../src/block/processVoluntaryExit.ts"],"names":[],"mappings":"AAAA,OAAO,EAAmB,OAAO,EAAC,MAAM,kBAAkB,CAAC;AAC3D,OAAO,EAAC,MAAM,EAAC,MAAM,iBAAiB,CAAC;AAEvC,OAAO,EAAC,yBAAyB,EAA2B,MAAM,aAAa,CAAC;AAIhF,oBAAY,qBAAqB;IAC/B,KAAK,UAAU;IACf,QAAQ,aAAa;IACrB,aAAa,mBAAmB;IAChC,UAAU,gBAAgB;IAC1B,eAAe,sBAAsB;IACrC,kBAAkB,wBAAwB;IAC1C,gBAAgB,sBAAsB;CACvC;AAED;;;;GAIG;AACH,wBAAgB,oBAAoB,CAClC,IAAI,EAAE,OAAO,EACb,KAAK,EAAE,yBAAyB,EAChC,mBAAmB,EAAE,MAAM,CAAC,mBAAmB,EAC/C,eAAe,UAAO,GACrB,IAAI,CAQN;AAED,wBAAgB,wBAAwB,CACtC,IAAI,EAAE,OAAO,EACb,KAAK,EAAE,yBAAyB,EAChC,mBAAmB,EAAE,MAAM,CAAC,mBAAmB,EAC/C,eAAe,UAAO,GACrB,qBAAqB,
|
|
1
|
+
{"version":3,"file":"processVoluntaryExit.d.ts","sourceRoot":"","sources":["../../src/block/processVoluntaryExit.ts"],"names":[],"mappings":"AAAA,OAAO,EAAmB,OAAO,EAAC,MAAM,kBAAkB,CAAC;AAC3D,OAAO,EAAC,MAAM,EAAC,MAAM,iBAAiB,CAAC;AAEvC,OAAO,EAAC,yBAAyB,EAA2B,MAAM,aAAa,CAAC;AAIhF,oBAAY,qBAAqB;IAC/B,KAAK,UAAU;IACf,QAAQ,aAAa;IACrB,aAAa,mBAAmB;IAChC,UAAU,gBAAgB;IAC1B,eAAe,sBAAsB;IACrC,kBAAkB,wBAAwB;IAC1C,gBAAgB,sBAAsB;CACvC;AAED;;;;GAIG;AACH,wBAAgB,oBAAoB,CAClC,IAAI,EAAE,OAAO,EACb,KAAK,EAAE,yBAAyB,EAChC,mBAAmB,EAAE,MAAM,CAAC,mBAAmB,EAC/C,eAAe,UAAO,GACrB,IAAI,CAQN;AAED,wBAAgB,wBAAwB,CACtC,IAAI,EAAE,OAAO,EACb,KAAK,EAAE,yBAAyB,EAChC,mBAAmB,EAAE,MAAM,CAAC,mBAAmB,EAC/C,eAAe,UAAO,GACrB,qBAAqB,CA0CvB;AAED,wBAAgB,oBAAoB,CAClC,IAAI,EAAE,OAAO,EACb,KAAK,EAAE,yBAAyB,EAChC,mBAAmB,EAAE,MAAM,CAAC,mBAAmB,EAC/C,eAAe,UAAO,GACrB,OAAO,CAET"}
|
|
@@ -51,7 +51,8 @@ export function getVoluntaryExitValidity(fork, state, signedVoluntaryExit, verif
|
|
|
51
51
|
getPendingBalanceToWithdraw(fork, state, voluntaryExit.validatorIndex) !== 0) {
|
|
52
52
|
return VoluntaryExitValidity.pendingWithdrawals;
|
|
53
53
|
}
|
|
54
|
-
if (verifySignature &&
|
|
54
|
+
if (verifySignature &&
|
|
55
|
+
!verifyVoluntaryExitSignature(state.config, epochCtx.index2pubkey, state.slot, signedVoluntaryExit)) {
|
|
55
56
|
return VoluntaryExitValidity.invalidSignature;
|
|
56
57
|
}
|
|
57
58
|
return VoluntaryExitValidity.valid;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"processVoluntaryExit.js","sourceRoot":"","sources":["../../src/block/processVoluntaryExit.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,gBAAgB,EAAE,OAAO,EAAC,MAAM,kBAAkB,CAAC;AAE3D,OAAO,EAAC,4BAA4B,EAAC,MAAM,2BAA2B,CAAC;AAEvE,OAAO,EAAC,2BAA2B,EAAE,iBAAiB,EAAC,MAAM,kBAAkB,CAAC;AAChF,OAAO,EAAC,qBAAqB,EAAC,MAAM,YAAY,CAAC;AAEjD,MAAM,CAAN,IAAY,qBAQX;AARD,WAAY,qBAAqB;IAC/B,wCAAe,CAAA;IACf,8CAAqB,CAAA;IACrB,yDAAgC,CAAA;IAChC,mDAA0B,CAAA;IAC1B,8DAAqC,CAAA;IACrC,mEAA0C,CAAA;IAC1C,+DAAsC,CAAA;AACxC,CAAC,EARW,qBAAqB,KAArB,qBAAqB,QAQhC;AAED;;;;GAIG;AACH,MAAM,UAAU,oBAAoB,CAClC,IAAa,EACb,KAAgC,EAChC,mBAA+C,EAC/C,eAAe,GAAG,IAAI;IAEtB,MAAM,QAAQ,GAAG,wBAAwB,CAAC,IAAI,EAAE,KAAK,EAAE,mBAAmB,EAAE,eAAe,CAAC,CAAC;IAC7F,IAAI,QAAQ,KAAK,qBAAqB,CAAC,KAAK,EAAE,CAAC;QAC7C,MAAM,KAAK,CAAC,qCAAqC,IAAI,WAAW,QAAQ,EAAE,CAAC,CAAC;IAC9E,CAAC;IAED,MAAM,SAAS,GAAG,KAAK,CAAC,UAAU,CAAC,GAAG,CAAC,mBAAmB,CAAC,OAAO,CAAC,cAAc,CAAC,CAAC;IACnF,qBAAqB,CAAC,IAAI,EAAE,KAAK,EAAE,SAAS,CAAC,CAAC;AAChD,CAAC;AAED,MAAM,UAAU,wBAAwB,CACtC,IAAa,EACb,KAAgC,EAChC,mBAA+C,EAC/C,eAAe,GAAG,IAAI;IAEtB,MAAM,EAAC,MAAM,EAAE,QAAQ,EAAC,GAAG,KAAK,CAAC;IACjC,MAAM,aAAa,GAAG,mBAAmB,CAAC,OAAO,CAAC;IAClD,MAAM,SAAS,GAAG,KAAK,CAAC,UAAU,CAAC,GAAG,CAAC,aAAa,CAAC,cAAc,CAAC,CAAC;IACrE,MAAM,YAAY,GAAG,QAAQ,CAAC,KAAK,CAAC;IAEpC,iCAAiC;IACjC,IAAI,CAAC,iBAAiB,CAAC,SAAS,EAAE,YAAY,CAAC,EAAE,CAAC;QAChD,OAAO,qBAAqB,CAAC,QAAQ,CAAC;IACxC,CAAC;IAED,qCAAqC;IACrC,IAAI,SAAS,CAAC,SAAS,KAAK,gBAAgB,EAAE,CAAC;QAC7C,OAAO,qBAAqB,CAAC,aAAa,CAAC;IAC7C,CAAC;IAED,qFAAqF;IACrF,IAAI,YAAY,GAAG,aAAa,CAAC,KAAK,EAAE,CAAC;QACvC,OAAO,qBAAqB,CAAC,UAAU,CAAC;IAC1C,CAAC;IAED,mDAAmD;IACnD,IAAI,YAAY,GAAG,SAAS,CAAC,eAAe,GAAG,MAAM,CAAC,sBAAsB,EAAE,CAAC;QAC7E,OAAO,qBAAqB,CAAC,eAAe,CAAC;IAC/C,CAAC;IAED,oEAAoE;IACpE,IACE,IAAI,IAAI,OAAO,CAAC,OAAO;QACvB,2BAA2B,CAAC,IAAI,EAAE,KAAiC,EAAE,aAAa,CAAC,cAAc,CAAC,KAAK,CAAC,EACxG,CAAC;QACD,OAAO,qBAAqB,CAAC,kBAAkB,CAAC;IAClD,CAAC;IAED,
|
|
1
|
+
{"version":3,"file":"processVoluntaryExit.js","sourceRoot":"","sources":["../../src/block/processVoluntaryExit.ts"],"names":[],"mappings":"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"}
|
|
@@ -3,9 +3,9 @@ import { capella } from "@lodestar/types";
|
|
|
3
3
|
import { CachedBeaconStateCapella, CachedBeaconStateElectra, CachedBeaconStateGloas } from "../types.js";
|
|
4
4
|
export declare function processWithdrawals(fork: ForkSeq, state: CachedBeaconStateCapella | CachedBeaconStateElectra | CachedBeaconStateGloas, payload?: capella.FullOrBlindedExecutionPayload): void;
|
|
5
5
|
export declare function getExpectedWithdrawals(fork: ForkSeq, state: CachedBeaconStateCapella | CachedBeaconStateElectra | CachedBeaconStateGloas): {
|
|
6
|
-
|
|
7
|
-
sampledValidators: number;
|
|
8
|
-
processedPartialWithdrawalsCount: number;
|
|
6
|
+
expectedWithdrawals: capella.Withdrawal[];
|
|
9
7
|
processedBuilderWithdrawalsCount: number;
|
|
8
|
+
processedPartialWithdrawalsCount: number;
|
|
9
|
+
processedValidatorSweepCount: number;
|
|
10
10
|
};
|
|
11
11
|
//# sourceMappingURL=processWithdrawals.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"processWithdrawals.d.ts","sourceRoot":"","sources":["../../src/block/processWithdrawals.ts"],"names":[],"mappings":"AACA,OAAO,EAEL,OAAO,EAMR,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EAAiB,OAAO,EAAM,MAAM,iBAAiB,CAAC;AAE7D,OAAO,EAAC,wBAAwB,EAAE,wBAAwB,EAAE,sBAAsB,EAAC,MAAM,aAAa,CAAC;AAUvG,wBAAgB,kBAAkB,CAChC,IAAI,EAAE,OAAO,EACb,KAAK,EAAE,wBAAwB,GAAG,wBAAwB,GAAG,sBAAsB,EACnF,OAAO,CAAC,EAAE,OAAO,CAAC,6BAA6B,GAC9C,IAAI,
|
|
1
|
+
{"version":3,"file":"processWithdrawals.d.ts","sourceRoot":"","sources":["../../src/block/processWithdrawals.ts"],"names":[],"mappings":"AACA,OAAO,EAEL,OAAO,EAMR,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EAAiB,OAAO,EAAM,MAAM,iBAAiB,CAAC;AAE7D,OAAO,EAAC,wBAAwB,EAAE,wBAAwB,EAAE,sBAAsB,EAAC,MAAM,aAAa,CAAC;AAUvG,wBAAgB,kBAAkB,CAChC,IAAI,EAAE,OAAO,EACb,KAAK,EAAE,wBAAwB,GAAG,wBAAwB,GAAG,sBAAsB,EACnF,OAAO,CAAC,EAAE,OAAO,CAAC,6BAA6B,GAC9C,IAAI,CAuFN;AAkND,wBAAgB,sBAAsB,CACpC,IAAI,EAAE,OAAO,EACb,KAAK,EAAE,wBAAwB,GAAG,wBAAwB,GAAG,sBAAsB,GAClF;IACD,mBAAmB,EAAE,OAAO,CAAC,UAAU,EAAE,CAAC;IAC1C,gCAAgC,EAAE,MAAM,CAAC;IACzC,gCAAgC,EAAE,MAAM,CAAC;IACzC,4BAA4B,EAAE,MAAM,CAAC;CACtC,CA6DA"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { byteArrayEquals } from "@chainsafe/ssz";
|
|
2
2
|
import { FAR_FUTURE_EPOCH, ForkSeq, MAX_EFFECTIVE_BALANCE, MAX_PENDING_PARTIALS_PER_WITHDRAWALS_SWEEP, MAX_VALIDATORS_PER_WITHDRAWALS_SWEEP, MAX_WITHDRAWALS_PER_PAYLOAD, MIN_ACTIVATION_BALANCE, } from "@lodestar/params";
|
|
3
3
|
import { ssz } from "@lodestar/types";
|
|
4
|
-
import {
|
|
4
|
+
import { toRootHex } from "@lodestar/utils";
|
|
5
5
|
import { isBuilderPaymentWithdrawable, isParentBlockFull } from "../util/gloas.js";
|
|
6
6
|
import { decreaseBalance, getMaxEffectiveBalance, hasEth1WithdrawalCredential, hasExecutionWithdrawalCredential, isCapellaPayloadHeader, } from "../util/index.js";
|
|
7
7
|
export function processWithdrawals(fork, state, payload) {
|
|
@@ -9,9 +9,10 @@ export function processWithdrawals(fork, state, payload) {
|
|
|
9
9
|
if (fork >= ForkSeq.gloas && !isParentBlockFull(state)) {
|
|
10
10
|
return;
|
|
11
11
|
}
|
|
12
|
-
// processedPartialWithdrawalsCount is withdrawals coming from EL since electra (EIP-7002)
|
|
13
12
|
// processedBuilderWithdrawalsCount is withdrawals coming from builder payment since gloas (EIP-7732)
|
|
14
|
-
|
|
13
|
+
// processedPartialWithdrawalsCount is withdrawals coming from EL since electra (EIP-7002)
|
|
14
|
+
// processedValidatorSweepCount is withdrawals coming from validator sweep
|
|
15
|
+
const { expectedWithdrawals, processedBuilderWithdrawalsCount, processedPartialWithdrawalsCount } = getExpectedWithdrawals(fork, state);
|
|
15
16
|
const numWithdrawals = expectedWithdrawals.length;
|
|
16
17
|
// After gloas, withdrawals are verified later in processExecutionPayloadEnvelope
|
|
17
18
|
if (fork < ForkSeq.gloas) {
|
|
@@ -37,11 +38,9 @@ export function processWithdrawals(fork, state, payload) {
|
|
|
37
38
|
}
|
|
38
39
|
}
|
|
39
40
|
}
|
|
40
|
-
|
|
41
|
-
const withdrawal = expectedWithdrawals[i];
|
|
42
|
-
decreaseBalance(state, withdrawal.validatorIndex, Number(withdrawal.amount));
|
|
43
|
-
}
|
|
41
|
+
applyWithdrawals(state, expectedWithdrawals);
|
|
44
42
|
if (fork >= ForkSeq.electra) {
|
|
43
|
+
// https://github.com/ethereum/consensus-specs/blob/v1.7.0-alpha.0/specs/electra/beacon-chain.md#new-update_pending_partial_withdrawals
|
|
45
44
|
const stateElectra = state;
|
|
46
45
|
stateElectra.pendingPartialWithdrawals = stateElectra.pendingPartialWithdrawals.sliceFrom(processedPartialWithdrawalsCount);
|
|
47
46
|
}
|
|
@@ -61,10 +60,12 @@ export function processWithdrawals(fork, state, payload) {
|
|
|
61
60
|
]);
|
|
62
61
|
}
|
|
63
62
|
// Update the nextWithdrawalIndex
|
|
63
|
+
// https://github.com/ethereum/consensus-specs/blob/v1.7.0-alpha.0/specs/capella/beacon-chain.md#new-update_next_withdrawal_index
|
|
64
64
|
const latestWithdrawal = expectedWithdrawals.at(-1);
|
|
65
65
|
if (latestWithdrawal) {
|
|
66
66
|
state.nextWithdrawalIndex = latestWithdrawal.index + 1;
|
|
67
67
|
}
|
|
68
|
+
// https://github.com/ethereum/consensus-specs/blob/v1.7.0-alpha.0/specs/capella/beacon-chain.md#new-update_next_withdrawal_validator_index
|
|
68
69
|
// Update the nextWithdrawalValidatorIndex
|
|
69
70
|
if (latestWithdrawal && expectedWithdrawals.length === MAX_WITHDRAWALS_PER_PAYLOAD) {
|
|
70
71
|
// All slots filled, nextWithdrawalValidatorIndex should be validatorIndex having next turn
|
|
@@ -77,110 +78,119 @@ export function processWithdrawals(fork, state, payload) {
|
|
|
77
78
|
(state.nextWithdrawalValidatorIndex + MAX_VALIDATORS_PER_WITHDRAWALS_SWEEP) % state.validators.length;
|
|
78
79
|
}
|
|
79
80
|
}
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
throw new Error(`getExpectedWithdrawals not supported at forkSeq=${fork} < ForkSeq.capella`);
|
|
83
|
-
}
|
|
81
|
+
function getBuilderWithdrawals(state, withdrawalIndex, balanceAfterWithdrawals) {
|
|
82
|
+
const builderWithdrawals = [];
|
|
84
83
|
const epoch = state.epochCtx.epoch;
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
: stateGloas.builderPendingWithdrawals.getReadonly(i);
|
|
104
|
-
if (withdrawal.withdrawableEpoch > epoch || withdrawals.length + 1 === MAX_WITHDRAWALS_PER_PAYLOAD) {
|
|
105
|
-
break;
|
|
84
|
+
const allBuilderPendingWithdrawals = state.builderPendingWithdrawals.length <= MAX_WITHDRAWALS_PER_PAYLOAD
|
|
85
|
+
? state.builderPendingWithdrawals.getAllReadonly()
|
|
86
|
+
: null;
|
|
87
|
+
let processedCount = 0;
|
|
88
|
+
for (let i = 0; i < state.builderPendingWithdrawals.length; i++) {
|
|
89
|
+
const withdrawal = allBuilderPendingWithdrawals
|
|
90
|
+
? allBuilderPendingWithdrawals[i]
|
|
91
|
+
: state.builderPendingWithdrawals.getReadonly(i);
|
|
92
|
+
if (withdrawal.withdrawableEpoch > epoch || builderWithdrawals.length === MAX_WITHDRAWALS_PER_PAYLOAD) {
|
|
93
|
+
break;
|
|
94
|
+
}
|
|
95
|
+
if (isBuilderPaymentWithdrawable(state, withdrawal)) {
|
|
96
|
+
const builderIndex = withdrawal.builderIndex;
|
|
97
|
+
const builder = state.validators.get(withdrawal.builderIndex);
|
|
98
|
+
let balance = balanceAfterWithdrawals.get(builderIndex);
|
|
99
|
+
if (balance === undefined) {
|
|
100
|
+
balance = state.balances.get(builderIndex);
|
|
101
|
+
balanceAfterWithdrawals.set(builderIndex, balance);
|
|
106
102
|
}
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
const builder = state.validators.get(withdrawal.builderIndex);
|
|
111
|
-
let withdrawableBalance = 0;
|
|
112
|
-
if (builder.slashed) {
|
|
113
|
-
withdrawableBalance = balance < withdrawal.amount ? balance : withdrawal.amount;
|
|
114
|
-
}
|
|
115
|
-
else if (balance > MIN_ACTIVATION_BALANCE) {
|
|
116
|
-
withdrawableBalance =
|
|
117
|
-
balance - MIN_ACTIVATION_BALANCE < withdrawal.amount ? balance - MIN_ACTIVATION_BALANCE : withdrawal.amount;
|
|
118
|
-
}
|
|
119
|
-
if (withdrawableBalance > 0) {
|
|
120
|
-
withdrawals.push({
|
|
121
|
-
index: withdrawalIndex,
|
|
122
|
-
validatorIndex: withdrawal.builderIndex,
|
|
123
|
-
address: withdrawal.feeRecipient,
|
|
124
|
-
amount: BigInt(withdrawableBalance),
|
|
125
|
-
});
|
|
126
|
-
withdrawalIndex++;
|
|
127
|
-
withdrawnBalances.set(withdrawal.builderIndex, totalWithdrawn + withdrawableBalance);
|
|
128
|
-
}
|
|
103
|
+
let withdrawableBalance = 0;
|
|
104
|
+
if (builder.slashed) {
|
|
105
|
+
withdrawableBalance = balance < withdrawal.amount ? balance : withdrawal.amount;
|
|
129
106
|
}
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
if (isPostElectra) {
|
|
134
|
-
// In pre-gloas, partialWithdrawalBound == MAX_PENDING_PARTIALS_PER_WITHDRAWALS_SWEEP
|
|
135
|
-
const partialWithdrawalBound = Math.min(withdrawals.length + MAX_PENDING_PARTIALS_PER_WITHDRAWALS_SWEEP, MAX_WITHDRAWALS_PER_PAYLOAD - 1);
|
|
136
|
-
const stateElectra = state;
|
|
137
|
-
// MAX_PENDING_PARTIALS_PER_WITHDRAWALS_SWEEP = 8, PENDING_PARTIAL_WITHDRAWALS_LIMIT: 134217728 so we should only call getAllReadonly() if it makes sense
|
|
138
|
-
// pendingPartialWithdrawals comes from EIP-7002 smart contract where it takes fee so it's more likely than not validator is in correct condition to withdraw
|
|
139
|
-
// also we may break early if withdrawableEpoch > epoch
|
|
140
|
-
const allPendingPartialWithdrawals = stateElectra.pendingPartialWithdrawals.length <= partialWithdrawalBound
|
|
141
|
-
? stateElectra.pendingPartialWithdrawals.getAllReadonly()
|
|
142
|
-
: null;
|
|
143
|
-
// EIP-7002: Execution layer triggerable withdrawals
|
|
144
|
-
for (let i = 0; i < stateElectra.pendingPartialWithdrawals.length; i++) {
|
|
145
|
-
const withdrawal = allPendingPartialWithdrawals
|
|
146
|
-
? allPendingPartialWithdrawals[i]
|
|
147
|
-
: stateElectra.pendingPartialWithdrawals.getReadonly(i);
|
|
148
|
-
if (withdrawal.withdrawableEpoch > epoch || withdrawals.length === partialWithdrawalBound) {
|
|
149
|
-
break;
|
|
107
|
+
else if (balance > MIN_ACTIVATION_BALANCE) {
|
|
108
|
+
withdrawableBalance =
|
|
109
|
+
balance - MIN_ACTIVATION_BALANCE < withdrawal.amount ? balance - MIN_ACTIVATION_BALANCE : withdrawal.amount;
|
|
150
110
|
}
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
const balance = state.balances.get(withdrawal.validatorIndex) - totalWithdrawn;
|
|
154
|
-
if (validator.exitEpoch === FAR_FUTURE_EPOCH &&
|
|
155
|
-
validator.effectiveBalance >= MIN_ACTIVATION_BALANCE &&
|
|
156
|
-
balance > MIN_ACTIVATION_BALANCE) {
|
|
157
|
-
const balanceOverMinActivationBalance = BigInt(balance - MIN_ACTIVATION_BALANCE);
|
|
158
|
-
const withdrawableBalance = balanceOverMinActivationBalance < withdrawal.amount ? balanceOverMinActivationBalance : withdrawal.amount;
|
|
159
|
-
withdrawals.push({
|
|
111
|
+
if (withdrawableBalance > 0) {
|
|
112
|
+
builderWithdrawals.push({
|
|
160
113
|
index: withdrawalIndex,
|
|
161
|
-
validatorIndex: withdrawal.
|
|
162
|
-
address:
|
|
163
|
-
amount: withdrawableBalance,
|
|
114
|
+
validatorIndex: withdrawal.builderIndex,
|
|
115
|
+
address: withdrawal.feeRecipient,
|
|
116
|
+
amount: BigInt(withdrawableBalance),
|
|
164
117
|
});
|
|
165
118
|
withdrawalIndex++;
|
|
166
|
-
|
|
119
|
+
balanceAfterWithdrawals.set(builderIndex, balance - withdrawableBalance);
|
|
167
120
|
}
|
|
168
|
-
processedPartialWithdrawalsCount++;
|
|
169
121
|
}
|
|
122
|
+
processedCount++;
|
|
170
123
|
}
|
|
171
|
-
|
|
172
|
-
|
|
124
|
+
return { builderWithdrawals, withdrawalIndex, processedCount };
|
|
125
|
+
}
|
|
126
|
+
function getPendingPartialWithdrawals(state, withdrawalIndex, numPriorWithdrawal, balanceAfterWithdrawals) {
|
|
127
|
+
const epoch = state.epochCtx.epoch;
|
|
128
|
+
const pendingPartialWithdrawals = [];
|
|
129
|
+
const validators = state.validators;
|
|
130
|
+
// In pre-gloas, partialWithdrawalBound == MAX_PENDING_PARTIALS_PER_WITHDRAWALS_SWEEP
|
|
131
|
+
const partialWithdrawalBound = Math.min(numPriorWithdrawal + MAX_PENDING_PARTIALS_PER_WITHDRAWALS_SWEEP, MAX_WITHDRAWALS_PER_PAYLOAD - 1);
|
|
132
|
+
// MAX_PENDING_PARTIALS_PER_WITHDRAWALS_SWEEP = 8, PENDING_PARTIAL_WITHDRAWALS_LIMIT: 134217728 so we should only call getAllReadonly() if it makes sense
|
|
133
|
+
// pendingPartialWithdrawals comes from EIP-7002 smart contract where it takes fee so it's more likely than not validator is in correct condition to withdraw
|
|
134
|
+
// also we may break early if withdrawableEpoch > epoch
|
|
135
|
+
const allPendingPartialWithdrawals = state.pendingPartialWithdrawals.length <= partialWithdrawalBound
|
|
136
|
+
? state.pendingPartialWithdrawals.getAllReadonly()
|
|
137
|
+
: null;
|
|
138
|
+
// EIP-7002: Execution layer triggerable withdrawals
|
|
139
|
+
let processedCount = 0;
|
|
140
|
+
for (let i = 0; i < state.pendingPartialWithdrawals.length; i++) {
|
|
141
|
+
const withdrawal = allPendingPartialWithdrawals
|
|
142
|
+
? allPendingPartialWithdrawals[i]
|
|
143
|
+
: state.pendingPartialWithdrawals.getReadonly(i);
|
|
144
|
+
if (withdrawal.withdrawableEpoch > epoch ||
|
|
145
|
+
pendingPartialWithdrawals.length + numPriorWithdrawal === partialWithdrawalBound) {
|
|
146
|
+
break;
|
|
147
|
+
}
|
|
148
|
+
const validatorIndex = withdrawal.validatorIndex;
|
|
149
|
+
const validator = validators.getReadonly(validatorIndex);
|
|
150
|
+
let balance = balanceAfterWithdrawals.get(validatorIndex);
|
|
151
|
+
if (balance === undefined) {
|
|
152
|
+
balance = state.balances.get(validatorIndex);
|
|
153
|
+
balanceAfterWithdrawals.set(validatorIndex, balance);
|
|
154
|
+
}
|
|
155
|
+
if (validator.exitEpoch === FAR_FUTURE_EPOCH &&
|
|
156
|
+
validator.effectiveBalance >= MIN_ACTIVATION_BALANCE &&
|
|
157
|
+
balance > MIN_ACTIVATION_BALANCE) {
|
|
158
|
+
const balanceOverMinActivationBalance = BigInt(balance - MIN_ACTIVATION_BALANCE);
|
|
159
|
+
const withdrawableBalance = balanceOverMinActivationBalance < withdrawal.amount ? balanceOverMinActivationBalance : withdrawal.amount;
|
|
160
|
+
pendingPartialWithdrawals.push({
|
|
161
|
+
index: withdrawalIndex,
|
|
162
|
+
validatorIndex,
|
|
163
|
+
address: validator.withdrawalCredentials.subarray(12),
|
|
164
|
+
amount: withdrawableBalance,
|
|
165
|
+
});
|
|
166
|
+
withdrawalIndex++;
|
|
167
|
+
balanceAfterWithdrawals.set(validatorIndex, balance - Number(withdrawableBalance));
|
|
168
|
+
}
|
|
169
|
+
processedCount++;
|
|
170
|
+
}
|
|
171
|
+
return { pendingPartialWithdrawals, withdrawalIndex, processedCount };
|
|
172
|
+
}
|
|
173
|
+
function getValidatorsSweepWithdrawals(fork, state, withdrawalIndex, numPriorWithdrawal, balanceAfterWithdrawals) {
|
|
174
|
+
const sweepWithdrawals = [];
|
|
175
|
+
const epoch = state.epochCtx.epoch;
|
|
176
|
+
const { validators, balances, nextWithdrawalValidatorIndex } = state;
|
|
177
|
+
const isPostElectra = fork >= ForkSeq.electra;
|
|
178
|
+
const validatorsLimit = Math.min(state.validators.length, MAX_VALIDATORS_PER_WITHDRAWALS_SWEEP);
|
|
179
|
+
let processedCount = 0;
|
|
173
180
|
// Just run a bounded loop max iterating over all withdrawals
|
|
174
181
|
// however breaks out once we have MAX_WITHDRAWALS_PER_PAYLOAD
|
|
175
|
-
for (n = 0; n <
|
|
182
|
+
for (let n = 0; n < validatorsLimit; n++) {
|
|
183
|
+
if (sweepWithdrawals.length + numPriorWithdrawal === MAX_WITHDRAWALS_PER_PAYLOAD) {
|
|
184
|
+
break;
|
|
185
|
+
}
|
|
176
186
|
// Get next validator in turn
|
|
177
187
|
const validatorIndex = (nextWithdrawalValidatorIndex + n) % validators.length;
|
|
178
188
|
const validator = validators.getReadonly(validatorIndex);
|
|
179
|
-
|
|
180
|
-
|
|
181
|
-
|
|
182
|
-
|
|
183
|
-
|
|
189
|
+
let balance = balanceAfterWithdrawals.get(validatorIndex);
|
|
190
|
+
if (balance === undefined) {
|
|
191
|
+
balance = balances.get(validatorIndex);
|
|
192
|
+
balanceAfterWithdrawals.set(validatorIndex, balance);
|
|
193
|
+
}
|
|
184
194
|
const { withdrawableEpoch, withdrawalCredentials, effectiveBalance } = validator;
|
|
185
195
|
const hasWithdrawableCredentials = isPostElectra
|
|
186
196
|
? hasExecutionWithdrawalCredential(withdrawalCredentials)
|
|
@@ -188,37 +198,74 @@ export function getExpectedWithdrawals(fork, state) {
|
|
|
188
198
|
// early skip for balance = 0 as its now more likely that validator has exited/slashed with
|
|
189
199
|
// balance zero than not have withdrawal credentials set
|
|
190
200
|
if (balance === 0 || !hasWithdrawableCredentials) {
|
|
201
|
+
processedCount++;
|
|
191
202
|
continue;
|
|
192
203
|
}
|
|
193
204
|
// capella full withdrawal
|
|
194
205
|
if (withdrawableEpoch <= epoch) {
|
|
195
|
-
|
|
206
|
+
sweepWithdrawals.push({
|
|
196
207
|
index: withdrawalIndex,
|
|
197
208
|
validatorIndex,
|
|
198
209
|
address: validator.withdrawalCredentials.subarray(12),
|
|
199
210
|
amount: BigInt(balance),
|
|
200
211
|
});
|
|
201
212
|
withdrawalIndex++;
|
|
202
|
-
|
|
213
|
+
balanceAfterWithdrawals.set(validatorIndex, 0);
|
|
203
214
|
}
|
|
204
215
|
else if (effectiveBalance === (isPostElectra ? getMaxEffectiveBalance(withdrawalCredentials) : MAX_EFFECTIVE_BALANCE) &&
|
|
205
216
|
balance > effectiveBalance) {
|
|
206
217
|
// capella partial withdrawal
|
|
207
218
|
const partialAmount = balance - effectiveBalance;
|
|
208
|
-
|
|
219
|
+
sweepWithdrawals.push({
|
|
209
220
|
index: withdrawalIndex,
|
|
210
221
|
validatorIndex,
|
|
211
222
|
address: validator.withdrawalCredentials.subarray(12),
|
|
212
223
|
amount: BigInt(partialAmount),
|
|
213
224
|
});
|
|
214
225
|
withdrawalIndex++;
|
|
215
|
-
|
|
216
|
-
}
|
|
217
|
-
// Break if we have enough to pack the block
|
|
218
|
-
if (withdrawals.length >= MAX_WITHDRAWALS_PER_PAYLOAD) {
|
|
219
|
-
break;
|
|
226
|
+
balanceAfterWithdrawals.set(validatorIndex, balance - partialAmount);
|
|
220
227
|
}
|
|
228
|
+
processedCount++;
|
|
229
|
+
}
|
|
230
|
+
return { sweepWithdrawals, processedCount };
|
|
231
|
+
}
|
|
232
|
+
function applyWithdrawals(state, withdrawals) {
|
|
233
|
+
for (const withdrawal of withdrawals) {
|
|
234
|
+
decreaseBalance(state, withdrawal.validatorIndex, Number(withdrawal.amount));
|
|
235
|
+
}
|
|
236
|
+
}
|
|
237
|
+
export function getExpectedWithdrawals(fork, state) {
|
|
238
|
+
if (fork < ForkSeq.capella) {
|
|
239
|
+
throw new Error(`getExpectedWithdrawals not supported at forkSeq=${fork} < ForkSeq.capella`);
|
|
240
|
+
}
|
|
241
|
+
let withdrawalIndex = state.nextWithdrawalIndex;
|
|
242
|
+
const expectedWithdrawals = [];
|
|
243
|
+
// Map to track balances after applying withdrawals
|
|
244
|
+
// https://github.com/ethereum/consensus-specs/blob/v1.7.0-alpha.0/specs/capella/beacon-chain.md#new-get_balance_after_withdrawals
|
|
245
|
+
const balanceAfterWithdrawals = new Map();
|
|
246
|
+
// partialWithdrawalsCount is withdrawals coming from EL since electra (EIP-7002)
|
|
247
|
+
let processedPartialWithdrawalsCount = 0;
|
|
248
|
+
// builderWithdrawalsCount is withdrawals coming from builder payments since Gloas (EIP-7732)
|
|
249
|
+
let processedBuilderWithdrawalsCount = 0;
|
|
250
|
+
if (fork >= ForkSeq.gloas) {
|
|
251
|
+
const { builderWithdrawals, withdrawalIndex: newWithdrawalIndex, processedCount, } = getBuilderWithdrawals(state, withdrawalIndex, balanceAfterWithdrawals);
|
|
252
|
+
expectedWithdrawals.push(...builderWithdrawals);
|
|
253
|
+
withdrawalIndex = newWithdrawalIndex;
|
|
254
|
+
processedBuilderWithdrawalsCount = processedCount;
|
|
255
|
+
}
|
|
256
|
+
if (fork >= ForkSeq.electra) {
|
|
257
|
+
const { pendingPartialWithdrawals, withdrawalIndex: newWithdrawalIndex, processedCount, } = getPendingPartialWithdrawals(state, withdrawalIndex, expectedWithdrawals.length, balanceAfterWithdrawals);
|
|
258
|
+
expectedWithdrawals.push(...pendingPartialWithdrawals);
|
|
259
|
+
withdrawalIndex = newWithdrawalIndex;
|
|
260
|
+
processedPartialWithdrawalsCount = processedCount;
|
|
221
261
|
}
|
|
222
|
-
|
|
262
|
+
const { sweepWithdrawals, processedCount: processedValidatorSweepCount } = getValidatorsSweepWithdrawals(fork, state, withdrawalIndex, expectedWithdrawals.length, balanceAfterWithdrawals);
|
|
263
|
+
expectedWithdrawals.push(...sweepWithdrawals);
|
|
264
|
+
return {
|
|
265
|
+
expectedWithdrawals,
|
|
266
|
+
processedBuilderWithdrawalsCount,
|
|
267
|
+
processedPartialWithdrawalsCount,
|
|
268
|
+
processedValidatorSweepCount,
|
|
269
|
+
};
|
|
223
270
|
}
|
|
224
271
|
//# sourceMappingURL=processWithdrawals.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"processWithdrawals.js","sourceRoot":"","sources":["../../src/block/processWithdrawals.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"processWithdrawals.js","sourceRoot":"","sources":["../../src/block/processWithdrawals.ts"],"names":[],"mappings":"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"}
|
|
@@ -3,6 +3,7 @@ import { EpochCache, EpochCacheImmutableData, EpochCacheOpts } from "./epochCach
|
|
|
3
3
|
import { RewardCache } from "./rewardCache.js";
|
|
4
4
|
import { BeaconStateAllForks, BeaconStateAltair, BeaconStateBellatrix, BeaconStateCapella, BeaconStateDeneb, BeaconStateElectra, BeaconStateExecutions, BeaconStateFulu, BeaconStateGloas, BeaconStatePhase0 } from "./types.js";
|
|
5
5
|
export type BeaconStateCache = {
|
|
6
|
+
/** @deprecated should not access config outside of state-transition package */
|
|
6
7
|
config: BeaconConfig;
|
|
7
8
|
epochCtx: EpochCache;
|
|
8
9
|
/** Count of clones created from this BeaconStateCache instance. readonly to prevent accidental usage downstream */
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"stateCache.d.ts","sourceRoot":"","sources":["../../src/cache/stateCache.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"stateCache.d.ts","sourceRoot":"","sources":["../../src/cache/stateCache.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"stateCache.js","sourceRoot":"","sources":["../../src/cache/stateCache.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,SAAS,EAAC,MAAM,iBAAiB,CAAC;AAE1C,OAAO,EAAC,SAAS,EAAC,MAAM,gCAAgC,CAAC;AACzD,OAAO,EAAC,UAAU,EAA0C,MAAM,iBAAiB,CAAC;AACpF,OAAO,EAAc,sBAAsB,EAAC,MAAM,kBAAkB,CAAC;
|
|
1
|
+
{"version":3,"file":"stateCache.js","sourceRoot":"","sources":["../../src/cache/stateCache.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,SAAS,EAAC,MAAM,iBAAiB,CAAC;AAE1C,OAAO,EAAC,SAAS,EAAC,MAAM,gCAAgC,CAAC;AACzD,OAAO,EAAC,UAAU,EAA0C,MAAM,iBAAiB,CAAC;AACpF,OAAO,EAAc,sBAAsB,EAAC,MAAM,kBAAkB,CAAC;AA0IrE;;;GAGG;AACH,MAAM,UAAU,uBAAuB,CACrC,KAAQ,EACR,aAAsC,EACtC,IAAqB;IAErB,MAAM,UAAU,GAAG,UAAU,CAAC,eAAe,CAAC,KAAK,EAAE,aAAa,EAAE,IAAI,CAAC,CAAC;IAC1E,MAAM,WAAW,GAAG,oBAAoB,CAAC,KAAK,EAAE;QAC9C,MAAM,EAAE,aAAa,CAAC,MAAM;QAC5B,QAAQ,EAAE,UAAU;QACpB,WAAW,EAAE,CAAC;QACd,4BAA4B,EAAE,CAAC;QAC/B,wBAAwB,EAAE,KAAK;QAC/B,eAAe,EAAE,sBAAsB,EAAE;KAC1C,CAAC,CAAC;IAEH,OAAO,WAAW,CAAC;AACrB,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,qBAAqB,CACnC,eAAkB,EAClB,UAAsB,EACtB,IAAqB,EACrB,mBAAgC;IAEhC,MAAM,EAAC,KAAK,EAAE,aAAa,EAAE,kBAAkB,EAAC,GAAG,SAAS,CAC1D,eAAe,CAAC,MAAM,EACtB,eAAe,EACf,UAAU,EACV,mBAAmB,CACpB,CAAC;IACF,MAAM,EAAC,YAAY,EAAE,YAAY,EAAE,cAAc,EAAC,GAAG,eAAe,CAAC,QAAQ,CAAC;IAC9E,oDAAoD;IACpD,MAAM,UAAU,GAAG,aAAa,CAAC,UAAU,CAAC;IAC5C,KAAK,MAAM,cAAc,IAAI,kBAAkB,EAAE,CAAC;QAChD,MAAM,SAAS,GAAG,UAAU,CAAC,WAAW,CAAC,cAAc,CAAC,CAAC;QACzD,MAAM,MAAM,GAAG,SAAS,CAAC,MAAM,CAAC;QAChC,YAAY,CAAC,GAAG,CAAC,MAAM,EAAE,cAAc,CAAC,CAAC;QACzC,YAAY,CAAC,cAAc,CAAC,GAAG,SAAS,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;IAC7D,CAAC;IAED,OAAO,uBAAuB,CAC5B,aAAa,EACb;QACE,MAAM,EAAE,eAAe,CAAC,MAAM;QAC9B,YAAY;QACZ,YAAY;QACZ,cAAc;KACf,EACD,EAAC,GAAG,CAAC,IAAI,IAAI,EAAE,CAAC,EAAE,GAAG,EAAC,eAAe,EAAE,IAAI,EAAC,EAAC,CACzC,CAAC;AACT,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,oBAAoB,CAClC,KAAQ,EACR,KAAuB;IAEvB,MAAM,WAAW,GAAG,KAA6B,CAAC;IAClD,WAAW,CAAC,MAAM,GAAG,KAAK,CAAC,MAAM,CAAC;IAClC,WAAW,CAAC,QAAQ,GAAG,KAAK,CAAC,QAAQ,CAAC;IACrC,WAAuC,CAAC,WAAW,GAAG,KAAK,CAAC,WAAW,CAAC;IACxE,WAAuC,CAAC,4BAA4B,GAAG,KAAK,CAAC,4BAA4B,CAAC;IAC1G,WAAuC,CAAC,wBAAwB,GAAG,KAAK,CAAC,wBAAwB,CAAC;IACnG,WAAW,CAAC,eAAe,GAAG,KAAK,CAAC,eAAe,CAAC;IAEpD,8CAA8C;IAC9C,gFAAgF;IAChF,MAAM,WAAW,GAAG,WAAW,CAAC,KAAK,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;IAExD,SAAS,KAAK,CAA6B,iBAA2B;QACpE,MAAM,YAAY,GAAG,WAAW,CAAC,iBAAiB,CAAC,CAAC;QAEpD,oFAAoF;QACnF,IAAgC,CAAC,WAAW,EAAE,CAAC;QAEhD,IAAI,CAAC,iBAAiB,EAAE,CAAC;YACtB,IAAgC,CAAC,4BAA4B,EAAE,CAAC;QACnE,CAAC;QAED,OAAO,oBAAoB,CAAC,YAAY,EAAE;YACxC,MAAM,EAAE,IAAI,CAAC,MAAM;YACnB,QAAQ,EAAE,IAAI,CAAC,QAAQ,CAAC,KAAK,EAAE;YAC/B,WAAW,EAAE,CAAC;YACd,4BAA4B,EAAE,CAAC;YAC/B,wBAAwB,EAAE,CAAC,iBAAiB;YAC5C,eAAe,EAAE,sBAAsB,EAAE,EAAE,qDAAqD;SACjG,CAAyB,CAAC;IAC7B,CAAC;IAED,WAAW,CAAC,KAAK,GAAG,KAA2B,CAAC;IAEhD,OAAO,WAAW,CAAC;AACrB,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,mBAAmB,CACjC,KAAiC;IAEjC,OAAQ,KAA8B,CAAC,QAAQ,KAAK,SAAS,CAAC;AAChE,CAAC;AAED,oFAAoF;AACpF,4FAA4F;AAC5F,wFAAwF;AACxF,MAAM,UAAU,+BAA+B,CAAC,KAAgC;IAC9E,yEAAyE;IACzE,OAAO,KAAK,CAAC,UAAU,CAAC,gBAAgB,CAAC,KAAK,IAAI,CAAC;AACrD,CAAC;AAED,MAAM,UAAU,6BAA6B,CAAC,KAAgC;IAC5E,yEAAyE;IACzE,OAAO,KAAK,CAAC,QAAQ,CAAC,gBAAgB,CAAC,KAAK,IAAI,CAAC;AACnD,CAAC"}
|
package/lib/index.d.ts
CHANGED
|
@@ -10,11 +10,12 @@ export { ProposerRewardType } from "./block/types.js";
|
|
|
10
10
|
export { type EffectiveBalanceIncrements, getEffectiveBalanceIncrementsWithLen, getEffectiveBalanceIncrementsZeroed, } from "./cache/effectiveBalanceIncrements.js";
|
|
11
11
|
export { EpochCache, EpochCacheError, EpochCacheErrorCode, type EpochCacheImmutableData, createEmptyEpochCacheImmutableData, } from "./cache/epochCache.js";
|
|
12
12
|
export { type EpochTransitionCache, beforeProcessEpoch } from "./cache/epochTransitionCache.js";
|
|
13
|
-
export { type Index2PubkeyCache } from "./cache/pubkeyCache.js";
|
|
13
|
+
export { type Index2PubkeyCache, syncPubkeys } from "./cache/pubkeyCache.js";
|
|
14
14
|
export { type BeaconStateCache, createCachedBeaconState, isCachedBeaconState, isStateBalancesNodesPopulated, isStateValidatorsNodesPopulated, loadCachedBeaconState, } from "./cache/stateCache.js";
|
|
15
15
|
export * from "./constants/index.js";
|
|
16
16
|
export type { EpochTransitionStep } from "./epoch/index.js";
|
|
17
17
|
export { type BeaconStateTransitionMetrics, getMetrics } from "./metrics.js";
|
|
18
|
+
export * from "./rewards/index.js";
|
|
18
19
|
export * from "./signatureSets/index.js";
|
|
19
20
|
export * from "./stateTransition.js";
|
|
20
21
|
export type { BeaconStateAllForks, BeaconStateAltair, BeaconStateBellatrix, BeaconStateCapella, BeaconStateDeneb, BeaconStateElectra, BeaconStateExecutions, BeaconStateFulu, BeaconStateGloas, BeaconStatePhase0, CachedBeaconStateAllForks, CachedBeaconStateAltair, CachedBeaconStateBellatrix, CachedBeaconStateCapella, CachedBeaconStateDeneb, CachedBeaconStateElectra, CachedBeaconStateExecutions, CachedBeaconStateFulu, CachedBeaconStateGloas, CachedBeaconStatePhase0, } from "./types.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,EACL,KAAK,iBAAiB,EACtB,sBAAsB,EACtB,sBAAsB,GACvB,MAAM,yBAAyB,CAAC;AACjC,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,EAAC,qBAAqB,EAAE,wBAAwB,EAAE,oBAAoB,EAAC,MAAM,iCAAiC,CAAC;AAEtH,OAAO,EAAC,sBAAsB,EAAC,MAAM,+BAA+B,CAAC;AACrE,OAAO,EAAC,kBAAkB,EAAC,MAAM,kBAAkB,CAAC;AACpD,OAAO,EACL,KAAK,0BAA0B,EAC/B,oCAAoC,EACpC,mCAAmC,GACpC,MAAM,uCAAuC,CAAC;AAC/C,OAAO,EACL,UAAU,EACV,eAAe,EACf,mBAAmB,EACnB,KAAK,uBAAuB,EAC5B,kCAAkC,GACnC,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EAAC,KAAK,oBAAoB,EAAE,kBAAkB,EAAC,MAAM,iCAAiC,CAAC;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,iBAAiB,EACtB,sBAAsB,EACtB,sBAAsB,GACvB,MAAM,yBAAyB,CAAC;AACjC,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,EAAC,qBAAqB,EAAE,wBAAwB,EAAE,oBAAoB,EAAC,MAAM,iCAAiC,CAAC;AAEtH,OAAO,EAAC,sBAAsB,EAAC,MAAM,+BAA+B,CAAC;AACrE,OAAO,EAAC,kBAAkB,EAAC,MAAM,kBAAkB,CAAC;AACpD,OAAO,EACL,KAAK,0BAA0B,EAC/B,oCAAoC,EACpC,mCAAmC,GACpC,MAAM,uCAAuC,CAAC;AAC/C,OAAO,EACL,UAAU,EACV,eAAe,EACf,mBAAmB,EACnB,KAAK,uBAAuB,EAC5B,kCAAkC,GACnC,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EAAC,KAAK,oBAAoB,EAAE,kBAAkB,EAAC,MAAM,iCAAiC,CAAC;AAC9F,OAAO,EAAC,KAAK,iBAAiB,EAAE,WAAW,EAAC,MAAM,wBAAwB,CAAC;AAE3E,OAAO,EACL,KAAK,gBAAgB,EACrB,uBAAuB,EACvB,mBAAmB,EACnB,6BAA6B,EAC7B,+BAA+B,EAC/B,qBAAqB,GACtB,MAAM,uBAAuB,CAAC;AAC/B,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,YAAY,EACV,mBAAmB,EACnB,iBAAiB,EACjB,oBAAoB,EACpB,kBAAkB,EAClB,gBAAgB,EAChB,kBAAkB,EAClB,qBAAqB,EACrB,eAAe,EACf,gBAAgB,EAEhB,iBAAiB,EACjB,yBAAyB,EACzB,uBAAuB,EACvB,0BAA0B,EAC1B,wBAAwB,EACxB,sBAAsB,EACtB,wBAAwB,EACxB,2BAA2B,EAC3B,qBAAqB,EACrB,sBAAsB,EACtB,uBAAuB,GACxB,MAAM,YAAY,CAAC;AACpB,cAAc,iBAAiB,CAAC"}
|
package/lib/index.js
CHANGED
|
@@ -13,10 +13,12 @@ export { ProposerRewardType } from "./block/types.js";
|
|
|
13
13
|
export { getEffectiveBalanceIncrementsWithLen, getEffectiveBalanceIncrementsZeroed, } from "./cache/effectiveBalanceIncrements.js";
|
|
14
14
|
export { EpochCache, EpochCacheError, EpochCacheErrorCode, createEmptyEpochCacheImmutableData, } from "./cache/epochCache.js";
|
|
15
15
|
export { beforeProcessEpoch } from "./cache/epochTransitionCache.js";
|
|
16
|
+
export { syncPubkeys } from "./cache/pubkeyCache.js";
|
|
16
17
|
// Main state caches
|
|
17
18
|
export { createCachedBeaconState, isCachedBeaconState, isStateBalancesNodesPopulated, isStateValidatorsNodesPopulated, loadCachedBeaconState, } from "./cache/stateCache.js";
|
|
18
19
|
export * from "./constants/index.js";
|
|
19
20
|
export { getMetrics } from "./metrics.js";
|
|
21
|
+
export * from "./rewards/index.js";
|
|
20
22
|
export * from "./signatureSets/index.js";
|
|
21
23
|
export * from "./stateTransition.js";
|
|
22
24
|
export * from "./util/index.js";
|
package/lib/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,sBAAsB,EACtB,sBAAsB,GACvB,MAAM,yBAAyB,CAAC;AACjC,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,EAAC,qBAAqB,EAAE,wBAAwB,EAAE,oBAAoB,EAAC,MAAM,iCAAiC,CAAC;AACtH,6BAA6B;AAC7B,OAAO,EAAC,sBAAsB,EAAC,MAAM,+BAA+B,CAAC;AACrE,OAAO,EAAC,kBAAkB,EAAC,MAAM,kBAAkB,CAAC;AACpD,OAAO,EAEL,oCAAoC,EACpC,mCAAmC,GACpC,MAAM,uCAAuC,CAAC;AAC/C,OAAO,EACL,UAAU,EACV,eAAe,EACf,mBAAmB,EAEnB,kCAAkC,GACnC,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EAA4B,kBAAkB,EAAC,MAAM,iCAAiC,CAAC;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,sBAAsB,EACtB,sBAAsB,GACvB,MAAM,yBAAyB,CAAC;AACjC,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,EAAC,qBAAqB,EAAE,wBAAwB,EAAE,oBAAoB,EAAC,MAAM,iCAAiC,CAAC;AACtH,6BAA6B;AAC7B,OAAO,EAAC,sBAAsB,EAAC,MAAM,+BAA+B,CAAC;AACrE,OAAO,EAAC,kBAAkB,EAAC,MAAM,kBAAkB,CAAC;AACpD,OAAO,EAEL,oCAAoC,EACpC,mCAAmC,GACpC,MAAM,uCAAuC,CAAC;AAC/C,OAAO,EACL,UAAU,EACV,eAAe,EACf,mBAAmB,EAEnB,kCAAkC,GACnC,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EAA4B,kBAAkB,EAAC,MAAM,iCAAiC,CAAC;AAC9F,OAAO,EAAyB,WAAW,EAAC,MAAM,wBAAwB,CAAC;AAC3E,oBAAoB;AACpB,OAAO,EAEL,uBAAuB,EACvB,mBAAmB,EACnB,6BAA6B,EAC7B,+BAA+B,EAC/B,qBAAqB,GACtB,MAAM,uBAAuB,CAAC;AAC/B,cAAc,sBAAsB,CAAC;AAErC,OAAO,EAAoC,UAAU,EAAC,MAAM,cAAc,CAAC;AAC3E,cAAc,oBAAoB,CAAC;AACnC,cAAc,0BAA0B,CAAC;AACzC,cAAc,sBAAsB,CAAC;AAwBrC,cAAc,iBAAiB,CAAC"}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import { PubkeyIndexMap } from "@chainsafe/pubkey-index-map";
|
|
2
|
+
import { BeaconConfig } from "@lodestar/config";
|
|
3
|
+
import { ValidatorIndex, rewards } from "@lodestar/types";
|
|
4
|
+
import { CachedBeaconStateAllForks } from "../types.js";
|
|
5
|
+
export declare function computeAttestationsRewards(config: BeaconConfig, pubkey2index: PubkeyIndexMap, state: CachedBeaconStateAllForks, validatorIds?: (ValidatorIndex | string)[]): Promise<rewards.AttestationsRewards>;
|
|
6
|
+
//# sourceMappingURL=attestationsRewards.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"attestationsRewards.d.ts","sourceRoot":"","sources":["../../src/rewards/attestationsRewards.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,cAAc,EAAC,MAAM,6BAA6B,CAAC;AAC3D,OAAO,EAAC,YAAY,EAAC,MAAM,kBAAkB,CAAC;AAc9C,OAAO,EAAC,cAAc,EAAE,OAAO,EAAC,MAAM,iBAAiB,CAAC;AAGxD,OAAO,EAAC,yBAAyB,EAA0B,MAAM,aAAa,CAAC;AAgB/E,wBAAsB,0BAA0B,CAC9C,MAAM,EAAE,YAAY,EACpB,YAAY,EAAE,cAAc,EAC5B,KAAK,EAAE,yBAAyB,EAChC,YAAY,CAAC,EAAE,CAAC,cAAc,GAAG,MAAM,CAAC,EAAE,GACzC,OAAO,CAAC,OAAO,CAAC,mBAAmB,CAAC,CAyBtC"}
|