@lodestar/prover 1.10.0-rc.0 → 1.10.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/proof_provider/ordered_map.d.ts +4 -4
- package/lib/proof_provider/ordered_map.js +2 -7
- package/lib/proof_provider/ordered_map.js.map +1 -1
- package/lib/proof_provider/payload_store.d.ts +2 -2
- package/lib/proof_provider/payload_store.js +25 -8
- package/lib/proof_provider/payload_store.js.map +1 -1
- package/lib/utils/consensus.js +2 -0
- package/lib/utils/consensus.js.map +1 -1
- package/lib/utils/validation.js +3 -1
- package/lib/utils/validation.js.map +1 -1
- package/package.json +10 -10
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
export declare class OrderedMap<T> extends Map<number, T> {
|
|
2
|
-
private _min
|
|
3
|
-
private _max
|
|
4
|
-
get min(): number;
|
|
5
|
-
get max(): number;
|
|
2
|
+
private _min?;
|
|
3
|
+
private _max?;
|
|
4
|
+
get min(): number | undefined;
|
|
5
|
+
get max(): number | undefined;
|
|
6
6
|
set(key: number, value: T): this;
|
|
7
7
|
}
|
|
8
8
|
//# sourceMappingURL=ordered_map.d.ts.map
|
|
@@ -1,9 +1,4 @@
|
|
|
1
1
|
export class OrderedMap extends Map {
|
|
2
|
-
constructor() {
|
|
3
|
-
super(...arguments);
|
|
4
|
-
this._min = 0;
|
|
5
|
-
this._max = 0;
|
|
6
|
-
}
|
|
7
2
|
get min() {
|
|
8
3
|
return this._min;
|
|
9
4
|
}
|
|
@@ -11,10 +6,10 @@ export class OrderedMap extends Map {
|
|
|
11
6
|
return this._max;
|
|
12
7
|
}
|
|
13
8
|
set(key, value) {
|
|
14
|
-
if (key < this._min) {
|
|
9
|
+
if (this._min === undefined || key < this._min) {
|
|
15
10
|
this._min = key;
|
|
16
11
|
}
|
|
17
|
-
if (key > this._max) {
|
|
12
|
+
if (this._max === undefined || key > this._max) {
|
|
18
13
|
this._max = key;
|
|
19
14
|
}
|
|
20
15
|
super.set(key, value);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ordered_map.js","sourceRoot":"","sources":["../../src/proof_provider/ordered_map.ts"],"names":[],"mappings":"AAAA,MAAM,OAAO,UAAc,SAAQ,GAAc;
|
|
1
|
+
{"version":3,"file":"ordered_map.js","sourceRoot":"","sources":["../../src/proof_provider/ordered_map.ts"],"names":[],"mappings":"AAAA,MAAM,OAAO,UAAc,SAAQ,GAAc;IAI/C,IAAI,GAAG;QACL,OAAO,IAAI,CAAC,IAAI,CAAC;IACnB,CAAC;IAED,IAAI,GAAG;QACL,OAAO,IAAI,CAAC,IAAI,CAAC;IACnB,CAAC;IAED,GAAG,CAAC,GAAW,EAAE,KAAQ;QACvB,IAAI,IAAI,CAAC,IAAI,KAAK,SAAS,IAAI,GAAG,GAAG,IAAI,CAAC,IAAI,EAAE;YAC9C,IAAI,CAAC,IAAI,GAAG,GAAG,CAAC;SACjB;QAED,IAAI,IAAI,CAAC,IAAI,KAAK,SAAS,IAAI,GAAG,GAAG,IAAI,CAAC,IAAI,EAAE;YAC9C,IAAI,CAAC,IAAI,GAAG,GAAG,CAAC;SACjB;QAED,KAAK,CAAC,GAAG,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;QACtB,OAAO,IAAI,CAAC;IACd,CAAC;CACF"}
|
|
@@ -17,9 +17,9 @@ export declare class PayloadStore {
|
|
|
17
17
|
get finalized(): allForks.ExecutionPayload | undefined;
|
|
18
18
|
get latest(): allForks.ExecutionPayload | undefined;
|
|
19
19
|
get(blockId: number | string): Promise<allForks.ExecutionPayload | undefined>;
|
|
20
|
-
getOrFetchFinalizedPayload(blockNumber: number): Promise<allForks.ExecutionPayload | undefined>;
|
|
20
|
+
protected getOrFetchFinalizedPayload(blockNumber: number): Promise<allForks.ExecutionPayload | undefined>;
|
|
21
21
|
set(payload: allForks.ExecutionPayload, finalized: boolean): void;
|
|
22
22
|
processLCHeader(header: capella.LightClientHeader, finalized?: boolean): Promise<void>;
|
|
23
|
-
|
|
23
|
+
prune(): void;
|
|
24
24
|
}
|
|
25
25
|
//# sourceMappingURL=payload_store.d.ts.map
|
|
@@ -8,16 +8,24 @@ import { OrderedMap } from "./ordered_map.js";
|
|
|
8
8
|
export class PayloadStore {
|
|
9
9
|
constructor(opts) {
|
|
10
10
|
this.opts = opts;
|
|
11
|
-
// We store the block
|
|
11
|
+
// We store the block root from execution for finalized blocks
|
|
12
|
+
// As these blocks are finalized, so not to be worried about conflicting roots
|
|
12
13
|
this.finalizedRoots = new OrderedMap();
|
|
13
|
-
// Unfinalized blocks
|
|
14
|
+
// Unfinalized blocks may change over time and may have conflicting roots
|
|
15
|
+
// We can receive multiple light-client headers for the same block of execution
|
|
16
|
+
// So we why store unfinalized payloads by their CL root, which is only used
|
|
17
|
+
// in processing the light-client headers
|
|
14
18
|
this.unfinalizedRoots = new Map();
|
|
15
19
|
// Payloads store with BlockELRoot as key
|
|
16
20
|
this.payloads = new Map();
|
|
17
21
|
this.latestBlockRoot = null;
|
|
18
22
|
}
|
|
19
23
|
get finalized() {
|
|
20
|
-
const
|
|
24
|
+
const maxBlockNumberForFinalized = this.finalizedRoots.max;
|
|
25
|
+
if (maxBlockNumberForFinalized === undefined) {
|
|
26
|
+
return;
|
|
27
|
+
}
|
|
28
|
+
const finalizedMaxRoot = this.finalizedRoots.get(maxBlockNumberForFinalized);
|
|
21
29
|
if (finalizedMaxRoot) {
|
|
22
30
|
return this.payloads.get(finalizedMaxRoot);
|
|
23
31
|
}
|
|
@@ -49,13 +57,18 @@ export class PayloadStore {
|
|
|
49
57
|
return undefined;
|
|
50
58
|
}
|
|
51
59
|
async getOrFetchFinalizedPayload(blockNumber) {
|
|
52
|
-
|
|
60
|
+
const maxBlockNumberForFinalized = this.finalizedRoots.max;
|
|
61
|
+
const minBlockNumberForFinalized = this.finalizedRoots.min;
|
|
62
|
+
if (maxBlockNumberForFinalized === undefined || minBlockNumberForFinalized === undefined) {
|
|
63
|
+
return;
|
|
64
|
+
}
|
|
65
|
+
if (blockNumber > maxBlockNumberForFinalized) {
|
|
53
66
|
throw new Error(`Block number ${blockNumber} is higher than the latest finalized block number. We recommend to use block hash for unfinalized blocks.`);
|
|
54
67
|
}
|
|
55
68
|
let blockELRoot = this.finalizedRoots.get(blockNumber);
|
|
56
69
|
// check if we have payload cached locally else fetch from api
|
|
57
70
|
if (!blockELRoot) {
|
|
58
|
-
const payloads = await getExecutionPayloadForBlockNumber(this.opts.api,
|
|
71
|
+
const payloads = await getExecutionPayloadForBlockNumber(this.opts.api, minBlockNumberForFinalized, blockNumber);
|
|
59
72
|
for (const payload of Object.values(payloads)) {
|
|
60
73
|
this.set(payload, true);
|
|
61
74
|
}
|
|
@@ -99,7 +112,7 @@ export class PayloadStore {
|
|
|
99
112
|
}
|
|
100
113
|
// If the block is finalized and we do not have the payload
|
|
101
114
|
// We need to fetch and set the payload
|
|
102
|
-
else
|
|
115
|
+
else {
|
|
103
116
|
this.payloads.set(bufferToHex(header.execution.blockHash), (await getExecutionPayloads({
|
|
104
117
|
api: this.opts.api,
|
|
105
118
|
startSlot: blockSlot,
|
|
@@ -117,8 +130,9 @@ export class PayloadStore {
|
|
|
117
130
|
// Re-org happened, we need to update the payload
|
|
118
131
|
if (existingELRoot && existingELRoot !== blockELRoot) {
|
|
119
132
|
this.payloads.delete(existingELRoot);
|
|
120
|
-
this.unfinalizedRoots.set(blockCLRoot, blockELRoot);
|
|
121
133
|
}
|
|
134
|
+
// This is unfinalized header we need to store it's root related to cl root
|
|
135
|
+
this.unfinalizedRoots.set(blockCLRoot, blockELRoot);
|
|
122
136
|
// We do not have the payload for this block, we need to fetch it
|
|
123
137
|
const payload = (await getExecutionPayloads({
|
|
124
138
|
api: this.opts.api,
|
|
@@ -132,7 +146,10 @@ export class PayloadStore {
|
|
|
132
146
|
prune() {
|
|
133
147
|
if (this.finalizedRoots.size <= MAX_PAYLOAD_HISTORY)
|
|
134
148
|
return;
|
|
135
|
-
|
|
149
|
+
// Store doe not have any finalized blocks means it's recently initialized
|
|
150
|
+
if (this.finalizedRoots.max === undefined || this.finalizedRoots.min === undefined)
|
|
151
|
+
return;
|
|
152
|
+
for (let blockNumber = this.finalizedRoots.max - MAX_PAYLOAD_HISTORY; blockNumber >= this.finalizedRoots.min; blockNumber--) {
|
|
136
153
|
const blockELRoot = this.finalizedRoots.get(blockNumber);
|
|
137
154
|
if (blockELRoot) {
|
|
138
155
|
this.payloads.delete(blockELRoot);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"payload_store.js","sourceRoot":"","sources":["../../src/proof_provider/payload_store.ts"],"names":[],"mappings":"AAGA,OAAO,EAAC,mBAAmB,EAAC,MAAM,iBAAiB,CAAC;AACpD,OAAO,EAAC,iCAAiC,EAAE,oBAAoB,EAAC,MAAM,uBAAuB,CAAC;AAC9F,OAAO,EAAC,WAAW,EAAE,WAAW,EAAC,MAAM,wBAAwB,CAAC;AAChE,OAAO,EAAC,UAAU,EAAC,MAAM,kBAAkB,CAAC;AAK5C;;GAEG;AACH,MAAM,OAAO,YAAY;
|
|
1
|
+
{"version":3,"file":"payload_store.js","sourceRoot":"","sources":["../../src/proof_provider/payload_store.ts"],"names":[],"mappings":"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"}
|
package/lib/utils/consensus.js
CHANGED
|
@@ -31,6 +31,7 @@ export async function getExecutionPayloads({ api, startSlot, endSlot, logger, })
|
|
|
31
31
|
let slot = endSlot;
|
|
32
32
|
let block = await fetchNearestBlock(api, slot, "down");
|
|
33
33
|
payloads[block.message.slot] = block.message.body.executionPayload;
|
|
34
|
+
slot = block.message.slot - 1;
|
|
34
35
|
while (slot >= startSlot) {
|
|
35
36
|
const previousBlock = await fetchNearestBlock(api, block.message.slot - 1, "down");
|
|
36
37
|
if (block.message.body.executionPayload.parentHash === previousBlock.message.body.executionPayload.blockHash) {
|
|
@@ -48,6 +49,7 @@ export async function getExecutionPayloadForBlockNumber(api, startSlot, blockNum
|
|
|
48
49
|
while (payloads[block.message.slot].blockNumber !== blockNumber) {
|
|
49
50
|
const previousBlock = await fetchNearestBlock(api, block.message.slot - 1, "down");
|
|
50
51
|
block = previousBlock;
|
|
52
|
+
payloads[block.message.slot] = block.message.body.executionPayload;
|
|
51
53
|
}
|
|
52
54
|
return payloads;
|
|
53
55
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"consensus.js","sourceRoot":"","sources":["../../src/utils/consensus.ts"],"names":[],"mappings":"AAGA,OAAO,EAAC,QAAQ,EAAC,MAAM,eAAe,CAAC;AAEvC,OAAO,EAAC,mBAAmB,EAAC,MAAM,iBAAiB,CAAC;AACpD,OAAO,EAAC,WAAW,EAAC,MAAM,iBAAiB,CAAC;AAE5C,MAAM,CAAC,KAAK,UAAU,iBAAiB,CACrC,GAAQ,EACR,IAAY,EACZ,YAA2B,MAAM;IAEjC,MAAM,GAAG,GAAG,MAAM,GAAG,CAAC,MAAM,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;IAE9C,IAAI,GAAG,CAAC,EAAE;QAAE,OAAO,GAAG,CAAC,QAAQ,CAAC,IAAI,CAAC;IAErC,IAAI,CAAC,GAAG,CAAC,EAAE,IAAI,GAAG,CAAC,KAAK,CAAC,IAAI,KAAK,GAAG,EAAE;QACrC,OAAO,iBAAiB,CAAC,GAAG,EAAE,SAAS,KAAK,MAAM,CAAC,CAAC,CAAC,IAAI,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,GAAG,CAAC,CAAC,CAAC;KAC3E;IAED,MAAM,IAAI,KAAK,CAAC,wCAAwC,IAAI,EAAE,CAAC,CAAC;AAClE,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,8BAA8B,CAAC,WAAwB;IAC3E,MAAM,QAAQ,GAAG,WAAW,CAAC,OAAO,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC;IACnD,MAAM,YAAY,GAAG,WAAW,CAAC,YAAY,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC;IAC5D,MAAM,OAAO,GAAG,QAAQ,GAAG,mBAAmB,CAAC;IAE/C,OAAO;QACL,KAAK,EAAE,QAAQ;QACf,GAAG,EAAE,OAAO,GAAG,YAAY,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,OAAO;KACrD,CAAC;AACJ,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,oBAAoB,CAAC,EACzC,GAAG,EACH,SAAS,EACT,OAAO,EACP,MAAM,GAMP;IACC,CAAC,SAAS,EAAE,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,SAAS,EAAE,OAAO,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC,CAAC;IACpF,IAAI,SAAS,KAAK,OAAO,EAAE;QACzB,MAAM,CAAC,KAAK,CAAC,qBAAqB,EAAE,EAAC,IAAI,EAAE,SAAS,EAAC,CAAC,CAAC;KACxD;SAAM;QACL,MAAM,CAAC,KAAK,CAAC,sBAAsB,EAAE,EAAC,SAAS,EAAE,OAAO,EAAC,CAAC,CAAC;KAC5D;IAED,MAAM,QAAQ,GAA8C,EAAE,CAAC;IAE/D,IAAI,IAAI,GAAG,OAAO,CAAC;IACnB,IAAI,KAAK,GAAG,MAAM,iBAAiB,CAAC,GAAG,EAAE,IAAI,EAAE,MAAM,CAAC,CAAC;IACvD,QAAQ,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,gBAAgB,CAAC;
|
|
1
|
+
{"version":3,"file":"consensus.js","sourceRoot":"","sources":["../../src/utils/consensus.ts"],"names":[],"mappings":"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"}
|
package/lib/utils/validation.js
CHANGED
|
@@ -40,8 +40,10 @@ export async function isValidStorageKeys({ storageKeys, proof, logger, }) {
|
|
|
40
40
|
const key = keccak256(padLeft(hexToBuffer(storageKeys[i]), storageKeyLength));
|
|
41
41
|
try {
|
|
42
42
|
const expectedStorageRLP = await trie.verifyProof(hexToBuffer(proof.storageHash), Buffer.from(key), sp.proof.map(hexToBuffer));
|
|
43
|
+
// buffer.equals is not compatible with Uint8Array for browser
|
|
44
|
+
// so we need to convert the output of RLP.encode to Buffer first
|
|
43
45
|
const isStorageValid = (!expectedStorageRLP && sp.value === "0x0") ||
|
|
44
|
-
(!!expectedStorageRLP && expectedStorageRLP.equals(RLP.encode(sp.value)));
|
|
46
|
+
(!!expectedStorageRLP && expectedStorageRLP.equals(Buffer.from(RLP.encode(sp.value))));
|
|
45
47
|
if (!isStorageValid)
|
|
46
48
|
return false;
|
|
47
49
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"validation.js","sourceRoot":"","sources":["../../src/utils/validation.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"validation.js","sourceRoot":"","sources":["../../src/utils/validation.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -11,7 +11,7 @@
|
|
|
11
11
|
"bugs": {
|
|
12
12
|
"url": "https://github.com/ChainSafe/lodestar/issues"
|
|
13
13
|
},
|
|
14
|
-
"version": "1.10.0
|
|
14
|
+
"version": "1.10.0",
|
|
15
15
|
"type": "module",
|
|
16
16
|
"exports": {
|
|
17
17
|
".": {
|
|
@@ -69,13 +69,13 @@
|
|
|
69
69
|
"@ethereumjs/tx": "^4.1.2",
|
|
70
70
|
"@ethereumjs/util": "^8.0.6",
|
|
71
71
|
"@ethereumjs/vm": "^6.4.2",
|
|
72
|
-
"@lodestar/api": "1.10.0
|
|
73
|
-
"@lodestar/config": "1.10.0
|
|
74
|
-
"@lodestar/light-client": "1.10.0
|
|
75
|
-
"@lodestar/logger": "1.10.0
|
|
76
|
-
"@lodestar/params": "1.10.0
|
|
77
|
-
"@lodestar/types": "1.10.0
|
|
78
|
-
"@lodestar/utils": "1.10.0
|
|
72
|
+
"@lodestar/api": "^1.10.0",
|
|
73
|
+
"@lodestar/config": "^1.10.0",
|
|
74
|
+
"@lodestar/light-client": "^1.10.0",
|
|
75
|
+
"@lodestar/logger": "^1.10.0",
|
|
76
|
+
"@lodestar/params": "^1.10.0",
|
|
77
|
+
"@lodestar/types": "^1.10.0",
|
|
78
|
+
"@lodestar/utils": "^1.10.0",
|
|
79
79
|
"ethereum-cryptography": "^1.2.0",
|
|
80
80
|
"find-up": "^6.3.0",
|
|
81
81
|
"http-proxy": "^1.18.1",
|
|
@@ -84,7 +84,7 @@
|
|
|
84
84
|
"yargs": "^17.7.1"
|
|
85
85
|
},
|
|
86
86
|
"devDependencies": {
|
|
87
|
-
"@lodestar/test-utils": "1.10.0
|
|
87
|
+
"@lodestar/test-utils": "^1.10.0",
|
|
88
88
|
"@types/http-proxy": "^1.17.10",
|
|
89
89
|
"@types/yargs": "^17.0.24",
|
|
90
90
|
"axios": "^1.3.4",
|
|
@@ -99,5 +99,5 @@
|
|
|
99
99
|
"blockchain",
|
|
100
100
|
"prover"
|
|
101
101
|
],
|
|
102
|
-
"gitHead": "
|
|
102
|
+
"gitHead": "7546292ef150c37a9a912b349d51f8ea59f686fb"
|
|
103
103
|
}
|