@aztec/stdlib 0.0.1-commit.43597cc1 → 0.0.1-commit.4ad48494d
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/dest/contract/interfaces/node-info.d.ts +3 -1
- package/dest/contract/interfaces/node-info.d.ts.map +1 -1
- package/dest/contract/interfaces/node-info.js +2 -1
- package/dest/hash/hash.d.ts +2 -1
- package/dest/hash/hash.d.ts.map +1 -1
- package/dest/hash/hash.js +6 -0
- package/dest/interfaces/aztec-node-admin.d.ts +7 -1
- package/dest/interfaces/aztec-node-admin.d.ts.map +1 -1
- package/dest/interfaces/slasher.d.ts +5 -1
- package/dest/interfaces/slasher.d.ts.map +1 -1
- package/dest/interfaces/slasher.js +1 -0
- package/dest/interfaces/validator.d.ts +13 -2
- package/dest/interfaces/validator.d.ts.map +1 -1
- package/dest/interfaces/validator.js +3 -1
- package/dest/logs/siloed_tag.d.ts +1 -1
- package/dest/logs/siloed_tag.d.ts.map +1 -1
- package/dest/logs/siloed_tag.js +2 -6
- package/dest/note/notes_filter.d.ts +5 -2
- package/dest/note/notes_filter.d.ts.map +1 -1
- package/dest/p2p/constants.d.ts +3 -1
- package/dest/p2p/constants.d.ts.map +1 -1
- package/dest/p2p/constants.js +1 -0
- package/dest/slashing/empire.d.ts +1 -1
- package/dest/slashing/empire.d.ts.map +1 -1
- package/dest/slashing/empire.js +1 -0
- package/dest/slashing/helpers.d.ts +2 -2
- package/dest/slashing/helpers.d.ts.map +1 -1
- package/dest/slashing/helpers.js +3 -0
- package/dest/slashing/types.d.ts +5 -3
- package/dest/slashing/types.d.ts.map +1 -1
- package/dest/slashing/types.js +7 -1
- package/dest/trees/public_data_leaf.d.ts +2 -1
- package/dest/trees/public_data_leaf.d.ts.map +1 -1
- package/dest/trees/public_data_leaf.js +7 -6
- package/dest/tx/validator/empty_validator.d.ts +2 -2
- package/dest/tx/validator/empty_validator.d.ts.map +1 -1
- package/dest/tx/validator/tx_validator.d.ts +2 -2
- package/dest/tx/validator/tx_validator.d.ts.map +1 -1
- package/dest/validators/schemas.d.ts +30 -30
- package/dest/validators/schemas.d.ts.map +1 -1
- package/dest/validators/schemas.js +4 -3
- package/dest/validators/types.d.ts +3 -3
- package/dest/validators/types.d.ts.map +1 -1
- package/package.json +9 -9
- package/src/contract/interfaces/node-info.ts +3 -0
- package/src/hash/hash.ts +4 -0
- package/src/interfaces/slasher.ts +2 -0
- package/src/interfaces/validator.ts +9 -1
- package/src/logs/siloed_tag.ts +2 -3
- package/src/note/notes_filter.ts +4 -1
- package/src/p2p/constants.ts +3 -0
- package/src/slashing/empire.ts +2 -1
- package/src/slashing/helpers.ts +4 -0
- package/src/slashing/types.ts +7 -0
- package/src/trees/public_data_leaf.ts +11 -5
- package/src/tx/validator/empty_validator.ts +1 -1
- package/src/tx/validator/tx_validator.ts +1 -1
- package/src/validators/schemas.ts +8 -1
- package/src/validators/types.ts +5 -4
package/dest/slashing/types.js
CHANGED
|
@@ -10,6 +10,7 @@ export var OffenseType = /*#__PURE__*/ function(OffenseType) {
|
|
|
10
10
|
/** A proposer pushed to L1 a block with incorrect committee attestations (ie signature from a non-committee member) */ OffenseType[OffenseType["PROPOSED_INCORRECT_ATTESTATIONS"] = 6] = "PROPOSED_INCORRECT_ATTESTATIONS";
|
|
11
11
|
/** A committee member attested to a block that was built as a descendent of an invalid block (as in a block with invalid attestations) */ OffenseType[OffenseType["ATTESTED_DESCENDANT_OF_INVALID"] = 7] = "ATTESTED_DESCENDANT_OF_INVALID";
|
|
12
12
|
/** A proposer sent duplicate proposals for the same position (slot, indexWithinCheckpoint for blocks or slot for checkpoints) */ OffenseType[OffenseType["DUPLICATE_PROPOSAL"] = 8] = "DUPLICATE_PROPOSAL";
|
|
13
|
+
/** A validator signed attestations for different proposals at the same slot (equivocation) */ OffenseType[OffenseType["DUPLICATE_ATTESTATION"] = 9] = "DUPLICATE_ATTESTATION";
|
|
13
14
|
return OffenseType;
|
|
14
15
|
}({});
|
|
15
16
|
export function getOffenseTypeName(offense) {
|
|
@@ -32,6 +33,8 @@ export function getOffenseTypeName(offense) {
|
|
|
32
33
|
return 'attested_descendant_of_invalid';
|
|
33
34
|
case 8:
|
|
34
35
|
return 'duplicate_proposal';
|
|
36
|
+
case 9:
|
|
37
|
+
return 'duplicate_attestation';
|
|
35
38
|
default:
|
|
36
39
|
throw new Error(`Unknown offense type: ${offense}`);
|
|
37
40
|
}
|
|
@@ -46,7 +49,8 @@ export const OffenseToBigInt = {
|
|
|
46
49
|
[5]: 5n,
|
|
47
50
|
[6]: 6n,
|
|
48
51
|
[7]: 7n,
|
|
49
|
-
[8]: 8n
|
|
52
|
+
[8]: 8n,
|
|
53
|
+
[9]: 9n
|
|
50
54
|
};
|
|
51
55
|
export function bigIntToOffense(offense) {
|
|
52
56
|
switch(offense){
|
|
@@ -68,6 +72,8 @@ export function bigIntToOffense(offense) {
|
|
|
68
72
|
return 7;
|
|
69
73
|
case 8n:
|
|
70
74
|
return 8;
|
|
75
|
+
case 9n:
|
|
76
|
+
return 9;
|
|
71
77
|
default:
|
|
72
78
|
throw new Error(`Unknown offense: ${offense}`);
|
|
73
79
|
}
|
|
@@ -94,6 +94,7 @@ export declare class PublicDataTreeLeafPreimage implements IndexedTreeLeafPreima
|
|
|
94
94
|
asLeaf(): PublicDataTreeLeaf;
|
|
95
95
|
toBuffer(): Buffer;
|
|
96
96
|
toHashInputs(): Buffer[];
|
|
97
|
+
hash(): Promise<Fr>;
|
|
97
98
|
clone(): PublicDataTreeLeafPreimage;
|
|
98
99
|
static random(): PublicDataTreeLeafPreimage;
|
|
99
100
|
static empty(): PublicDataTreeLeafPreimage;
|
|
@@ -155,4 +156,4 @@ export declare class PublicDataTreeLeaf implements IndexedTreeLeaf {
|
|
|
155
156
|
*/
|
|
156
157
|
static fromPlainObject(obj: any): PublicDataTreeLeaf;
|
|
157
158
|
}
|
|
158
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
159
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljX2RhdGFfbGVhZi5kLnRzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL3RyZWVzL3B1YmxpY19kYXRhX2xlYWYudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBRUEsT0FBTyxFQUFFLEVBQUUsRUFBRSxNQUFNLGdDQUFnQyxDQUFDO0FBRXBELE9BQU8sRUFBRSxZQUFZLEVBQXFCLE1BQU0sNkJBQTZCLENBQUM7QUFDOUUsT0FBTyxLQUFLLEVBQUUsZUFBZSxFQUFFLHVCQUF1QixFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFFeEYsT0FBTyxFQUFFLENBQUMsRUFBRSxNQUFNLEtBQUssQ0FBQztBQUV4Qjs7O0dBR0c7QUFDSCxxQkFBYSwwQkFBMkIsWUFBVyx1QkFBdUI7SUFFdEU7O09BRUc7SUFDSSxJQUFJLEVBQUUsa0JBQWtCO0lBQy9COztPQUVHO0lBQ0ksT0FBTyxFQUFFLEVBQUU7SUFDbEI7O09BRUc7SUFDSSxTQUFTLEVBQUUsTUFBTTtJQVoxQjtJQUNFOztPQUVHO0lBQ0ksSUFBSSxFQUFFLGtCQUFrQjtJQUMvQjs7T0FFRztJQUNJLE9BQU8sRUFBRSxFQUFFO0lBQ2xCOztPQUVHO0lBQ0ksU0FBUyxFQUFFLE1BQU0sRUFDdEI7SUFFSixNQUFNLEtBQUssTUFBTTs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztPQVFoQjtJQUVEOzs7Ozs7T0FNRztJQUNILE1BQU0sQ0FBQyxlQUFlLENBQUMsR0FBRyxFQUFFLEdBQUcsR0FBRywwQkFBMEIsQ0FTM0Q7SUFFRCxNQUFNLEtBQUssVUFBVTs7Ozs7Ozs7Ozs7O09BRXBCO0lBRUQsTUFBTSxJQUFJLE1BQU0sQ0FFZjtJQUVELFVBQVUsSUFBSSxNQUFNLENBRW5CO0lBRUQsWUFBWSxJQUFJLE1BQU0sQ0FFckI7SUFFRCxNQUFNLElBQUksa0JBQWtCLENBRTNCO0lBRUQsUUFBUSxJQUFJLE1BQU0sQ0FFakI7SUFFRCxZQUFZLElBQUksTUFBTSxFQUFFLENBTXZCO0lBRUQsSUFBSSxJQUFJLE9BQU8sQ0FBQyxFQUFFLENBQUMsQ0FFbEI7SUFFRCxLQUFLLElBQUksMEJBQTBCLENBRWxDO0lBRUQsTUFBTSxDQUFDLE1BQU0sK0JBTVo7SUFFRCxNQUFNLENBQUMsS0FBSyxJQUFJLDBCQUEwQixDQUV6QztJQUVELE1BQU0sQ0FBQyxVQUFVLENBQUMsTUFBTSxFQUFFLE1BQU0sR0FBRyxZQUFZLEdBQUcsMEJBQTBCLENBTzNFO0lBRUQsTUFBTSxDQUFDLFFBQVEsQ0FBQyxJQUFJLEVBQUUsa0JBQWtCLEVBQUUsT0FBTyxFQUFFLE1BQU0sRUFBRSxTQUFTLEVBQUUsTUFBTSxHQUFHLDBCQUEwQixDQUV4RztJQUVELE1BQU0sQ0FBQyxLQUFLLENBQUMsUUFBUSxFQUFFLDBCQUEwQixHQUFHLDBCQUEwQixDQUU3RTtDQUNGO0FBRUQ7O0dBRUc7QUFDSCxxQkFBYSxrQkFBbUIsWUFBVyxlQUFlO0lBRXREOztPQUVHO0lBQ0ksSUFBSSxFQUFFLEVBQUU7SUFDZjs7T0FFRztJQUNJLEtBQUssRUFBRSxFQUFFO0lBUmxCO0lBQ0U7O09BRUc7SUFDSSxJQUFJLEVBQUUsRUFBRTtJQUNmOztPQUVHO0lBQ0ksS0FBSyxFQUFFLEVBQUUsRUFDZDtJQUVKLE1BQU0sSUFBSSxNQUFNLENBRWY7SUFFRCxRQUFRLDRCQUVQO0lBRUQsS0FBSyxJQUFJLGtCQUFrQixDQUUxQjtJQUVELFlBQVksSUFBSSxNQUFNLEVBQUUsQ0FFdkI7SUFFRCxNQUFNLENBQUMsVUFBVSxDQUFDLE1BQU0sRUFBRSxNQUFNLEdBQUcsWUFBWSxzQkFHOUM7SUFFRCxNQUFNLENBQUMsT0FBTyxFQUFFLGtCQUFrQixHQUFHLE9BQU8sQ0FFM0M7SUFFRCxRQUFRLElBQUksTUFBTSxDQUVqQjtJQUVELE9BQU8sSUFBSSxPQUFPLENBRWpCO0lBRUQsUUFBUSxDQUFDLE9BQU8sRUFBRSxrQkFBa0IsR0FBRyxrQkFBa0IsQ0FLeEQ7SUFFRCxNQUFNLENBQUMsVUFBVSxDQUFDLEdBQUcsRUFBRSxNQUFNLEdBQUcsa0JBQWtCLENBRWpEO0lBRUQsTUFBTSxDQUFDLEtBQUssSUFBSSxrQkFBa0IsQ0FFakM7SUFFRCxNQUFNLEtBQUssTUFBTTs7Ozs7Ozs7Ozs7O09BT2hCO0lBRUQ7Ozs7OztPQU1HO0lBQ0gsTUFBTSxDQUFDLGVBQWUsQ0FBQyxHQUFHLEVBQUUsR0FBRyxHQUFHLGtCQUFrQixDQUtuRDtDQUNGIn0=
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"public_data_leaf.d.ts","sourceRoot":"","sources":["../../src/trees/public_data_leaf.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"public_data_leaf.d.ts","sourceRoot":"","sources":["../../src/trees/public_data_leaf.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,EAAE,EAAE,MAAM,gCAAgC,CAAC;AAEpD,OAAO,EAAE,YAAY,EAAqB,MAAM,6BAA6B,CAAC;AAC9E,OAAO,KAAK,EAAE,eAAe,EAAE,uBAAuB,EAAE,MAAM,yBAAyB,CAAC;AAExF,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB;;;GAGG;AACH,qBAAa,0BAA2B,YAAW,uBAAuB;IAEtE;;OAEG;IACI,IAAI,EAAE,kBAAkB;IAC/B;;OAEG;IACI,OAAO,EAAE,EAAE;IAClB;;OAEG;IACI,SAAS,EAAE,MAAM;IAZ1B;IACE;;OAEG;IACI,IAAI,EAAE,kBAAkB;IAC/B;;OAEG;IACI,OAAO,EAAE,EAAE;IAClB;;OAEG;IACI,SAAS,EAAE,MAAM,EACtB;IAEJ,MAAM,KAAK,MAAM;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAQhB;IAED;;;;;;OAMG;IACH,MAAM,CAAC,eAAe,CAAC,GAAG,EAAE,GAAG,GAAG,0BAA0B,CAS3D;IAED,MAAM,KAAK,UAAU;;;;;;;;;;;;OAEpB;IAED,MAAM,IAAI,MAAM,CAEf;IAED,UAAU,IAAI,MAAM,CAEnB;IAED,YAAY,IAAI,MAAM,CAErB;IAED,MAAM,IAAI,kBAAkB,CAE3B;IAED,QAAQ,IAAI,MAAM,CAEjB;IAED,YAAY,IAAI,MAAM,EAAE,CAMvB;IAED,IAAI,IAAI,OAAO,CAAC,EAAE,CAAC,CAElB;IAED,KAAK,IAAI,0BAA0B,CAElC;IAED,MAAM,CAAC,MAAM,+BAMZ;IAED,MAAM,CAAC,KAAK,IAAI,0BAA0B,CAEzC;IAED,MAAM,CAAC,UAAU,CAAC,MAAM,EAAE,MAAM,GAAG,YAAY,GAAG,0BAA0B,CAO3E;IAED,MAAM,CAAC,QAAQ,CAAC,IAAI,EAAE,kBAAkB,EAAE,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,0BAA0B,CAExG;IAED,MAAM,CAAC,KAAK,CAAC,QAAQ,EAAE,0BAA0B,GAAG,0BAA0B,CAE7E;CACF;AAED;;GAEG;AACH,qBAAa,kBAAmB,YAAW,eAAe;IAEtD;;OAEG;IACI,IAAI,EAAE,EAAE;IACf;;OAEG;IACI,KAAK,EAAE,EAAE;IARlB;IACE;;OAEG;IACI,IAAI,EAAE,EAAE;IACf;;OAEG;IACI,KAAK,EAAE,EAAE,EACd;IAEJ,MAAM,IAAI,MAAM,CAEf;IAED,QAAQ,4BAEP;IAED,KAAK,IAAI,kBAAkB,CAE1B;IAED,YAAY,IAAI,MAAM,EAAE,CAEvB;IAED,MAAM,CAAC,UAAU,CAAC,MAAM,EAAE,MAAM,GAAG,YAAY,sBAG9C;IAED,MAAM,CAAC,OAAO,EAAE,kBAAkB,GAAG,OAAO,CAE3C;IAED,QAAQ,IAAI,MAAM,CAEjB;IAED,OAAO,IAAI,OAAO,CAEjB;IAED,QAAQ,CAAC,OAAO,EAAE,kBAAkB,GAAG,kBAAkB,CAKxD;IAED,MAAM,CAAC,UAAU,CAAC,GAAG,EAAE,MAAM,GAAG,kBAAkB,CAEjD;IAED,MAAM,CAAC,KAAK,IAAI,kBAAkB,CAEjC;IAED,MAAM,KAAK,MAAM;;;;;;;;;;;;OAOhB;IAED;;;;;;OAMG;IACH,MAAM,CAAC,eAAe,CAAC,GAAG,EAAE,GAAG,GAAG,kBAAkB,CAKnD;CACF"}
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { toBigIntBE, toBufferBE } from '@aztec/foundation/bigint-buffer';
|
|
2
|
+
import { poseidon2Hash } from '@aztec/foundation/crypto/poseidon';
|
|
2
3
|
import { Fr } from '@aztec/foundation/curves/bn254';
|
|
3
4
|
import { schemas } from '@aztec/foundation/schemas';
|
|
4
5
|
import { BufferReader, serializeToBuffer } from '@aztec/foundation/serialize';
|
|
@@ -61,10 +62,13 @@ import { z } from 'zod';
|
|
|
61
62
|
toHashInputs() {
|
|
62
63
|
return [
|
|
63
64
|
...this.leaf.toHashInputs(),
|
|
64
|
-
Buffer.from(
|
|
65
|
-
Buffer.from(this.
|
|
65
|
+
Buffer.from(this.nextKey.toBuffer()),
|
|
66
|
+
Buffer.from(toBufferBE(this.nextIndex, 32))
|
|
66
67
|
];
|
|
67
68
|
}
|
|
69
|
+
hash() {
|
|
70
|
+
return poseidon2Hash(this.toHashInputs());
|
|
71
|
+
}
|
|
68
72
|
clone() {
|
|
69
73
|
return new PublicDataTreeLeafPreimage(this.leaf.clone(), this.nextKey, this.nextIndex);
|
|
70
74
|
}
|
|
@@ -76,10 +80,7 @@ import { z } from 'zod';
|
|
|
76
80
|
}
|
|
77
81
|
static fromBuffer(buffer) {
|
|
78
82
|
const reader = BufferReader.asReader(buffer);
|
|
79
|
-
|
|
80
|
-
const nextIndex = toBigIntBE(reader.readBytes(32));
|
|
81
|
-
const nextSlot = Fr.fromBuffer(reader);
|
|
82
|
-
return new PublicDataTreeLeafPreimage(value, nextSlot, nextIndex);
|
|
83
|
+
return new PublicDataTreeLeafPreimage(PublicDataTreeLeaf.fromBuffer(reader), Fr.fromBuffer(reader), toBigIntBE(reader.readBytes(32)));
|
|
83
84
|
}
|
|
84
85
|
static fromLeaf(leaf, nextKey, nextIndex) {
|
|
85
86
|
return new PublicDataTreeLeafPreimage(leaf, new Fr(nextKey), nextIndex);
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import type { AnyTx, TxValidationResult, TxValidator } from './tx_validator.js';
|
|
2
|
-
export declare class EmptyTxValidator<T
|
|
2
|
+
export declare class EmptyTxValidator<T = AnyTx> implements TxValidator<T> {
|
|
3
3
|
validateTx(_tx: T): Promise<TxValidationResult>;
|
|
4
4
|
}
|
|
5
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
5
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZW1wdHlfdmFsaWRhdG9yLmQudHMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvdHgvdmFsaWRhdG9yL2VtcHR5X3ZhbGlkYXRvci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEtBQUssRUFBRSxLQUFLLEVBQUUsa0JBQWtCLEVBQUUsV0FBVyxFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFFaEYscUJBQWEsZ0JBQWdCLENBQUMsQ0FBQyxHQUFHLEtBQUssQ0FBRSxZQUFXLFdBQVcsQ0FBQyxDQUFDLENBQUM7SUFDekQsVUFBVSxDQUFDLEdBQUcsRUFBRSxDQUFDLEdBQUcsT0FBTyxDQUFDLGtCQUFrQixDQUFDLENBRXJEO0NBQ0YifQ==
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"empty_validator.d.ts","sourceRoot":"","sources":["../../../src/tx/validator/empty_validator.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAE,kBAAkB,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAEhF,qBAAa,gBAAgB,CAAC,CAAC,
|
|
1
|
+
{"version":3,"file":"empty_validator.d.ts","sourceRoot":"","sources":["../../../src/tx/validator/empty_validator.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAE,kBAAkB,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAEhF,qBAAa,gBAAgB,CAAC,CAAC,GAAG,KAAK,CAAE,YAAW,WAAW,CAAC,CAAC,CAAC;IACzD,UAAU,CAAC,GAAG,EAAE,CAAC,GAAG,OAAO,CAAC,kBAAkB,CAAC,CAErD;CACF"}
|
|
@@ -14,7 +14,7 @@ export type TxValidationResult = {
|
|
|
14
14
|
result: 'skipped';
|
|
15
15
|
reason: string[];
|
|
16
16
|
};
|
|
17
|
-
export interface TxValidator<T
|
|
17
|
+
export interface TxValidator<T = AnyTx> {
|
|
18
18
|
validateTx(tx: T): Promise<TxValidationResult>;
|
|
19
19
|
}
|
|
20
20
|
export declare const TxValidationResultSchema: z.ZodDiscriminatedUnion<"result", [z.ZodObject<{
|
|
@@ -42,4 +42,4 @@ export declare const TxValidationResultSchema: z.ZodDiscriminatedUnion<"result",
|
|
|
42
42
|
result: "skipped";
|
|
43
43
|
reason: string[];
|
|
44
44
|
}>]>;
|
|
45
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
45
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHhfdmFsaWRhdG9yLmQudHMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvdHgvdmFsaWRhdG9yL3R4X3ZhbGlkYXRvci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsQ0FBQyxFQUFFLE1BQU0sS0FBSyxDQUFDO0FBR3hCLE9BQU8sS0FBSyxFQUFFLFdBQVcsRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBQ3RELE9BQU8sS0FBSyxFQUFFLEVBQUUsRUFBRSxNQUFNLFVBQVUsQ0FBQztBQUNuQyxPQUFPLEtBQUssRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFNUMsTUFBTSxNQUFNLEtBQUssR0FBRyxFQUFFLEdBQUcsV0FBVyxDQUFDO0FBRXJDLHdCQUFnQixTQUFTLENBQUMsRUFBRSxFQUFFLEtBQUssR0FBRyxNQUFNLENBRTNDO0FBRUQsd0JBQWdCLGNBQWMsQ0FBQyxFQUFFLEVBQUUsS0FBSyxHQUFHLE9BQU8sQ0FFakQ7QUFFRCxNQUFNLE1BQU0sa0JBQWtCLEdBQzFCO0lBQUUsTUFBTSxFQUFFLE9BQU8sQ0FBQTtDQUFFLEdBQ25CO0lBQUUsTUFBTSxFQUFFLFNBQVMsQ0FBQztJQUFDLE1BQU0sRUFBRSxNQUFNLEVBQUUsQ0FBQTtDQUFFLEdBQ3ZDO0lBQUUsTUFBTSxFQUFFLFNBQVMsQ0FBQztJQUFDLE1BQU0sRUFBRSxNQUFNLEVBQUUsQ0FBQTtDQUFFLENBQUM7QUFFNUMsTUFBTSxXQUFXLFdBQVcsQ0FBQyxDQUFDLEdBQUcsS0FBSztJQUNwQyxVQUFVLENBQUMsRUFBRSxFQUFFLENBQUMsR0FBRyxPQUFPLENBQUMsa0JBQWtCLENBQUMsQ0FBQztDQUNoRDtBQUVELGVBQU8sTUFBTSx3QkFBd0I7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztJQU1wQyxDQUFDIn0=
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tx_validator.d.ts","sourceRoot":"","sources":["../../../src/tx/validator/tx_validator.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAGxB,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AACtD,OAAO,KAAK,EAAE,EAAE,EAAE,MAAM,UAAU,CAAC;AACnC,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,eAAe,CAAC;AAE5C,MAAM,MAAM,KAAK,GAAG,EAAE,GAAG,WAAW,CAAC;AAErC,wBAAgB,SAAS,CAAC,EAAE,EAAE,KAAK,GAAG,MAAM,CAE3C;AAED,wBAAgB,cAAc,CAAC,EAAE,EAAE,KAAK,GAAG,OAAO,CAEjD;AAED,MAAM,MAAM,kBAAkB,GAC1B;IAAE,MAAM,EAAE,OAAO,CAAA;CAAE,GACnB;IAAE,MAAM,EAAE,SAAS,CAAC;IAAC,MAAM,EAAE,MAAM,EAAE,CAAA;CAAE,GACvC;IAAE,MAAM,EAAE,SAAS,CAAC;IAAC,MAAM,EAAE,MAAM,EAAE,CAAA;CAAE,CAAC;AAE5C,MAAM,WAAW,WAAW,CAAC,CAAC,
|
|
1
|
+
{"version":3,"file":"tx_validator.d.ts","sourceRoot":"","sources":["../../../src/tx/validator/tx_validator.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAGxB,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AACtD,OAAO,KAAK,EAAE,EAAE,EAAE,MAAM,UAAU,CAAC;AACnC,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,eAAe,CAAC;AAE5C,MAAM,MAAM,KAAK,GAAG,EAAE,GAAG,WAAW,CAAC;AAErC,wBAAgB,SAAS,CAAC,EAAE,EAAE,KAAK,GAAG,MAAM,CAE3C;AAED,wBAAgB,cAAc,CAAC,EAAE,EAAE,KAAK,GAAG,OAAO,CAEjD;AAED,MAAM,MAAM,kBAAkB,GAC1B;IAAE,MAAM,EAAE,OAAO,CAAA;CAAE,GACnB;IAAE,MAAM,EAAE,SAAS,CAAC;IAAC,MAAM,EAAE,MAAM,EAAE,CAAA;CAAE,GACvC;IAAE,MAAM,EAAE,SAAS,CAAC;IAAC,MAAM,EAAE,MAAM,EAAE,CAAA;CAAE,CAAC;AAE5C,MAAM,WAAW,WAAW,CAAC,CAAC,GAAG,KAAK;IACpC,UAAU,CAAC,EAAE,EAAE,CAAC,GAAG,OAAO,CAAC,kBAAkB,CAAC,CAAC;CAChD;AAED,eAAO,MAAM,wBAAwB;;;;;;;;;;;;;;;;;;;;;;;;IAMpC,CAAC"}
|
|
@@ -1,40 +1,40 @@
|
|
|
1
1
|
import { z } from 'zod';
|
|
2
|
-
export declare const ValidatorStatusInSlotSchema: z.ZodEnum<["
|
|
2
|
+
export declare const ValidatorStatusInSlotSchema: z.ZodEnum<["checkpoint-mined", "checkpoint-proposed", "checkpoint-missed", "blocks-missed", "attestation-sent", "attestation-missed"]>;
|
|
3
3
|
export declare const ValidatorStatusHistorySchema: z.ZodArray<z.ZodObject<{
|
|
4
4
|
slot: z.ZodEffects<z.ZodPipeline<z.ZodUnion<[z.ZodNumber, z.ZodBigInt, z.ZodString]>, z.ZodNumber>, import("@aztec/foundation/schemas").SlotNumber, string | number | bigint>;
|
|
5
|
-
status: z.ZodEnum<["
|
|
5
|
+
status: z.ZodEnum<["checkpoint-mined", "checkpoint-proposed", "checkpoint-missed", "blocks-missed", "attestation-sent", "attestation-missed"]>;
|
|
6
6
|
}, "strip", z.ZodTypeAny, {
|
|
7
7
|
slot: number & {
|
|
8
8
|
_branding: "SlotNumber";
|
|
9
9
|
};
|
|
10
|
-
status: "attestation-missed" | "attestation-sent" | "
|
|
10
|
+
status: "attestation-missed" | "attestation-sent" | "blocks-missed" | "checkpoint-mined" | "checkpoint-missed" | "checkpoint-proposed";
|
|
11
11
|
}, {
|
|
12
12
|
slot: string | number | bigint;
|
|
13
|
-
status: "attestation-missed" | "attestation-sent" | "
|
|
13
|
+
status: "attestation-missed" | "attestation-sent" | "blocks-missed" | "checkpoint-mined" | "checkpoint-missed" | "checkpoint-proposed";
|
|
14
14
|
}>, "many">;
|
|
15
15
|
export declare const ValidatorStatusHistorySchemaArray: z.ZodArray<z.ZodArray<z.ZodObject<{
|
|
16
16
|
slot: z.ZodEffects<z.ZodPipeline<z.ZodUnion<[z.ZodNumber, z.ZodBigInt, z.ZodString]>, z.ZodNumber>, import("@aztec/foundation/schemas").SlotNumber, string | number | bigint>;
|
|
17
|
-
status: z.ZodEnum<["
|
|
17
|
+
status: z.ZodEnum<["checkpoint-mined", "checkpoint-proposed", "checkpoint-missed", "blocks-missed", "attestation-sent", "attestation-missed"]>;
|
|
18
18
|
}, "strip", z.ZodTypeAny, {
|
|
19
19
|
slot: number & {
|
|
20
20
|
_branding: "SlotNumber";
|
|
21
21
|
};
|
|
22
|
-
status: "attestation-missed" | "attestation-sent" | "
|
|
22
|
+
status: "attestation-missed" | "attestation-sent" | "blocks-missed" | "checkpoint-mined" | "checkpoint-missed" | "checkpoint-proposed";
|
|
23
23
|
}, {
|
|
24
24
|
slot: string | number | bigint;
|
|
25
|
-
status: "attestation-missed" | "attestation-sent" | "
|
|
25
|
+
status: "attestation-missed" | "attestation-sent" | "blocks-missed" | "checkpoint-mined" | "checkpoint-missed" | "checkpoint-proposed";
|
|
26
26
|
}>, "many">, "many">;
|
|
27
27
|
export declare const ValidatorStatusHistorySchemaMap: z.ZodRecord<z.ZodString, z.ZodArray<z.ZodArray<z.ZodObject<{
|
|
28
28
|
slot: z.ZodEffects<z.ZodPipeline<z.ZodUnion<[z.ZodNumber, z.ZodBigInt, z.ZodString]>, z.ZodNumber>, import("@aztec/foundation/schemas").SlotNumber, string | number | bigint>;
|
|
29
|
-
status: z.ZodEnum<["
|
|
29
|
+
status: z.ZodEnum<["checkpoint-mined", "checkpoint-proposed", "checkpoint-missed", "blocks-missed", "attestation-sent", "attestation-missed"]>;
|
|
30
30
|
}, "strip", z.ZodTypeAny, {
|
|
31
31
|
slot: number & {
|
|
32
32
|
_branding: "SlotNumber";
|
|
33
33
|
};
|
|
34
|
-
status: "attestation-missed" | "attestation-sent" | "
|
|
34
|
+
status: "attestation-missed" | "attestation-sent" | "blocks-missed" | "checkpoint-mined" | "checkpoint-missed" | "checkpoint-proposed";
|
|
35
35
|
}, {
|
|
36
36
|
slot: string | number | bigint;
|
|
37
|
-
status: "attestation-missed" | "attestation-sent" | "
|
|
37
|
+
status: "attestation-missed" | "attestation-sent" | "blocks-missed" | "checkpoint-mined" | "checkpoint-missed" | "checkpoint-proposed";
|
|
38
38
|
}>, "many">, "many">>;
|
|
39
39
|
export declare const ValidatorStatsSchema: z.ZodObject<{
|
|
40
40
|
address: z.ZodType<import("@aztec/foundation/eth-address").EthAddress, any, string>;
|
|
@@ -103,15 +103,15 @@ export declare const ValidatorStatsSchema: z.ZodObject<{
|
|
|
103
103
|
}>;
|
|
104
104
|
history: z.ZodArray<z.ZodObject<{
|
|
105
105
|
slot: z.ZodEffects<z.ZodPipeline<z.ZodUnion<[z.ZodNumber, z.ZodBigInt, z.ZodString]>, z.ZodNumber>, import("@aztec/foundation/schemas").SlotNumber, string | number | bigint>;
|
|
106
|
-
status: z.ZodEnum<["
|
|
106
|
+
status: z.ZodEnum<["checkpoint-mined", "checkpoint-proposed", "checkpoint-missed", "blocks-missed", "attestation-sent", "attestation-missed"]>;
|
|
107
107
|
}, "strip", z.ZodTypeAny, {
|
|
108
108
|
slot: number & {
|
|
109
109
|
_branding: "SlotNumber";
|
|
110
110
|
};
|
|
111
|
-
status: "attestation-missed" | "attestation-sent" | "
|
|
111
|
+
status: "attestation-missed" | "attestation-sent" | "blocks-missed" | "checkpoint-mined" | "checkpoint-missed" | "checkpoint-proposed";
|
|
112
112
|
}, {
|
|
113
113
|
slot: string | number | bigint;
|
|
114
|
-
status: "attestation-missed" | "attestation-sent" | "
|
|
114
|
+
status: "attestation-missed" | "attestation-sent" | "blocks-missed" | "checkpoint-mined" | "checkpoint-missed" | "checkpoint-proposed";
|
|
115
115
|
}>, "many">;
|
|
116
116
|
}, "strip", z.ZodTypeAny, {
|
|
117
117
|
address: import("@aztec/foundation/eth-address").EthAddress;
|
|
@@ -146,7 +146,7 @@ export declare const ValidatorStatsSchema: z.ZodObject<{
|
|
|
146
146
|
slot: number & {
|
|
147
147
|
_branding: "SlotNumber";
|
|
148
148
|
};
|
|
149
|
-
status: "attestation-missed" | "attestation-sent" | "
|
|
149
|
+
status: "attestation-missed" | "attestation-sent" | "blocks-missed" | "checkpoint-mined" | "checkpoint-missed" | "checkpoint-proposed";
|
|
150
150
|
}[];
|
|
151
151
|
}, {
|
|
152
152
|
address: string;
|
|
@@ -175,7 +175,7 @@ export declare const ValidatorStatsSchema: z.ZodObject<{
|
|
|
175
175
|
};
|
|
176
176
|
history: {
|
|
177
177
|
slot: string | number | bigint;
|
|
178
|
-
status: "attestation-missed" | "attestation-sent" | "
|
|
178
|
+
status: "attestation-missed" | "attestation-sent" | "blocks-missed" | "checkpoint-mined" | "checkpoint-missed" | "checkpoint-proposed";
|
|
179
179
|
}[];
|
|
180
180
|
}>;
|
|
181
181
|
export declare const ValidatorsStatsSchema: z.ZodObject<{
|
|
@@ -246,15 +246,15 @@ export declare const ValidatorsStatsSchema: z.ZodObject<{
|
|
|
246
246
|
}>;
|
|
247
247
|
history: z.ZodArray<z.ZodObject<{
|
|
248
248
|
slot: z.ZodEffects<z.ZodPipeline<z.ZodUnion<[z.ZodNumber, z.ZodBigInt, z.ZodString]>, z.ZodNumber>, import("@aztec/foundation/schemas").SlotNumber, string | number | bigint>;
|
|
249
|
-
status: z.ZodEnum<["
|
|
249
|
+
status: z.ZodEnum<["checkpoint-mined", "checkpoint-proposed", "checkpoint-missed", "blocks-missed", "attestation-sent", "attestation-missed"]>;
|
|
250
250
|
}, "strip", z.ZodTypeAny, {
|
|
251
251
|
slot: number & {
|
|
252
252
|
_branding: "SlotNumber";
|
|
253
253
|
};
|
|
254
|
-
status: "attestation-missed" | "attestation-sent" | "
|
|
254
|
+
status: "attestation-missed" | "attestation-sent" | "blocks-missed" | "checkpoint-mined" | "checkpoint-missed" | "checkpoint-proposed";
|
|
255
255
|
}, {
|
|
256
256
|
slot: string | number | bigint;
|
|
257
|
-
status: "attestation-missed" | "attestation-sent" | "
|
|
257
|
+
status: "attestation-missed" | "attestation-sent" | "blocks-missed" | "checkpoint-mined" | "checkpoint-missed" | "checkpoint-proposed";
|
|
258
258
|
}>, "many">;
|
|
259
259
|
}, "strip", z.ZodTypeAny, {
|
|
260
260
|
address: import("@aztec/foundation/eth-address").EthAddress;
|
|
@@ -289,7 +289,7 @@ export declare const ValidatorsStatsSchema: z.ZodObject<{
|
|
|
289
289
|
slot: number & {
|
|
290
290
|
_branding: "SlotNumber";
|
|
291
291
|
};
|
|
292
|
-
status: "attestation-missed" | "attestation-sent" | "
|
|
292
|
+
status: "attestation-missed" | "attestation-sent" | "blocks-missed" | "checkpoint-mined" | "checkpoint-missed" | "checkpoint-proposed";
|
|
293
293
|
}[];
|
|
294
294
|
}, {
|
|
295
295
|
address: string;
|
|
@@ -318,7 +318,7 @@ export declare const ValidatorsStatsSchema: z.ZodObject<{
|
|
|
318
318
|
};
|
|
319
319
|
history: {
|
|
320
320
|
slot: string | number | bigint;
|
|
321
|
-
status: "attestation-missed" | "attestation-sent" | "
|
|
321
|
+
status: "attestation-missed" | "attestation-sent" | "blocks-missed" | "checkpoint-mined" | "checkpoint-missed" | "checkpoint-proposed";
|
|
322
322
|
}[];
|
|
323
323
|
}>>;
|
|
324
324
|
lastProcessedSlot: z.ZodOptional<z.ZodEffects<z.ZodPipeline<z.ZodUnion<[z.ZodNumber, z.ZodBigInt, z.ZodString]>, z.ZodNumber>, import("@aztec/foundation/schemas").SlotNumber, string | number | bigint>>;
|
|
@@ -358,7 +358,7 @@ export declare const ValidatorsStatsSchema: z.ZodObject<{
|
|
|
358
358
|
slot: number & {
|
|
359
359
|
_branding: "SlotNumber";
|
|
360
360
|
};
|
|
361
|
-
status: "attestation-missed" | "attestation-sent" | "
|
|
361
|
+
status: "attestation-missed" | "attestation-sent" | "blocks-missed" | "checkpoint-mined" | "checkpoint-missed" | "checkpoint-proposed";
|
|
362
362
|
}[];
|
|
363
363
|
}>;
|
|
364
364
|
lastProcessedSlot?: import("@aztec/foundation/schemas").SlotNumber | undefined;
|
|
@@ -392,7 +392,7 @@ export declare const ValidatorsStatsSchema: z.ZodObject<{
|
|
|
392
392
|
};
|
|
393
393
|
history: {
|
|
394
394
|
slot: string | number | bigint;
|
|
395
|
-
status: "attestation-missed" | "attestation-sent" | "
|
|
395
|
+
status: "attestation-missed" | "attestation-sent" | "blocks-missed" | "checkpoint-mined" | "checkpoint-missed" | "checkpoint-proposed";
|
|
396
396
|
}[];
|
|
397
397
|
}>;
|
|
398
398
|
lastProcessedSlot?: string | number | bigint | undefined;
|
|
@@ -467,15 +467,15 @@ export declare const SingleValidatorStatsSchema: z.ZodObject<{
|
|
|
467
467
|
}>;
|
|
468
468
|
history: z.ZodArray<z.ZodObject<{
|
|
469
469
|
slot: z.ZodEffects<z.ZodPipeline<z.ZodUnion<[z.ZodNumber, z.ZodBigInt, z.ZodString]>, z.ZodNumber>, import("@aztec/foundation/schemas").SlotNumber, string | number | bigint>;
|
|
470
|
-
status: z.ZodEnum<["
|
|
470
|
+
status: z.ZodEnum<["checkpoint-mined", "checkpoint-proposed", "checkpoint-missed", "blocks-missed", "attestation-sent", "attestation-missed"]>;
|
|
471
471
|
}, "strip", z.ZodTypeAny, {
|
|
472
472
|
slot: number & {
|
|
473
473
|
_branding: "SlotNumber";
|
|
474
474
|
};
|
|
475
|
-
status: "attestation-missed" | "attestation-sent" | "
|
|
475
|
+
status: "attestation-missed" | "attestation-sent" | "blocks-missed" | "checkpoint-mined" | "checkpoint-missed" | "checkpoint-proposed";
|
|
476
476
|
}, {
|
|
477
477
|
slot: string | number | bigint;
|
|
478
|
-
status: "attestation-missed" | "attestation-sent" | "
|
|
478
|
+
status: "attestation-missed" | "attestation-sent" | "blocks-missed" | "checkpoint-mined" | "checkpoint-missed" | "checkpoint-proposed";
|
|
479
479
|
}>, "many">;
|
|
480
480
|
}, "strip", z.ZodTypeAny, {
|
|
481
481
|
address: import("@aztec/foundation/eth-address").EthAddress;
|
|
@@ -510,7 +510,7 @@ export declare const SingleValidatorStatsSchema: z.ZodObject<{
|
|
|
510
510
|
slot: number & {
|
|
511
511
|
_branding: "SlotNumber";
|
|
512
512
|
};
|
|
513
|
-
status: "attestation-missed" | "attestation-sent" | "
|
|
513
|
+
status: "attestation-missed" | "attestation-sent" | "blocks-missed" | "checkpoint-mined" | "checkpoint-missed" | "checkpoint-proposed";
|
|
514
514
|
}[];
|
|
515
515
|
}, {
|
|
516
516
|
address: string;
|
|
@@ -539,7 +539,7 @@ export declare const SingleValidatorStatsSchema: z.ZodObject<{
|
|
|
539
539
|
};
|
|
540
540
|
history: {
|
|
541
541
|
slot: string | number | bigint;
|
|
542
|
-
status: "attestation-missed" | "attestation-sent" | "
|
|
542
|
+
status: "attestation-missed" | "attestation-sent" | "blocks-missed" | "checkpoint-mined" | "checkpoint-missed" | "checkpoint-proposed";
|
|
543
543
|
}[];
|
|
544
544
|
}>;
|
|
545
545
|
allTimeProvenPerformance: z.ZodArray<z.ZodObject<{
|
|
@@ -594,7 +594,7 @@ export declare const SingleValidatorStatsSchema: z.ZodObject<{
|
|
|
594
594
|
slot: number & {
|
|
595
595
|
_branding: "SlotNumber";
|
|
596
596
|
};
|
|
597
|
-
status: "attestation-missed" | "attestation-sent" | "
|
|
597
|
+
status: "attestation-missed" | "attestation-sent" | "blocks-missed" | "checkpoint-mined" | "checkpoint-missed" | "checkpoint-proposed";
|
|
598
598
|
}[];
|
|
599
599
|
};
|
|
600
600
|
allTimeProvenPerformance: {
|
|
@@ -635,7 +635,7 @@ export declare const SingleValidatorStatsSchema: z.ZodObject<{
|
|
|
635
635
|
};
|
|
636
636
|
history: {
|
|
637
637
|
slot: string | number | bigint;
|
|
638
|
-
status: "attestation-missed" | "attestation-sent" | "
|
|
638
|
+
status: "attestation-missed" | "attestation-sent" | "blocks-missed" | "checkpoint-mined" | "checkpoint-missed" | "checkpoint-proposed";
|
|
639
639
|
}[];
|
|
640
640
|
};
|
|
641
641
|
allTimeProvenPerformance: {
|
|
@@ -647,4 +647,4 @@ export declare const SingleValidatorStatsSchema: z.ZodObject<{
|
|
|
647
647
|
initialSlot?: string | number | bigint | undefined;
|
|
648
648
|
slotWindow: string | number | bigint;
|
|
649
649
|
}>;
|
|
650
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
650
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2NoZW1hcy5kLnRzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL3ZhbGlkYXRvcnMvc2NoZW1hcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFFQSxPQUFPLEVBQUUsQ0FBQyxFQUFFLE1BQU0sS0FBSyxDQUFDO0FBV3hCLGVBQU8sTUFBTSwyQkFBMkIsd0lBU3ZDLENBQUM7QUFFRixlQUFPLE1BQU0sNEJBQTRCOzs7Ozs7Ozs7OztXQU94QyxDQUFDO0FBRUYsZUFBTyxNQUFNLGlDQUFpQzs7Ozs7Ozs7Ozs7b0JBQXdDLENBQUM7QUFFdkYsZUFBTyxNQUFNLCtCQUErQjs7Ozs7Ozs7Ozs7cUJBQThDLENBQUM7QUFpQjNGLGVBQU8sTUFBTSxvQkFBb0I7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztFQVVoQyxDQUFDO0FBRUYsZUFBTyxNQUFNLHFCQUFxQjs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztFQU9qQyxDQUFDO0FBRUYsZUFBTyxNQUFNLDBCQUEwQjs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztFQWN0QyxDQUFDIn0=
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"schemas.d.ts","sourceRoot":"","sources":["../../src/validators/schemas.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAWxB,eAAO,MAAM,2BAA2B,
|
|
1
|
+
{"version":3,"file":"schemas.d.ts","sourceRoot":"","sources":["../../src/validators/schemas.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAWxB,eAAO,MAAM,2BAA2B,wIASvC,CAAC;AAEF,eAAO,MAAM,4BAA4B;;;;;;;;;;;WAOxC,CAAC;AAEF,eAAO,MAAM,iCAAiC;;;;;;;;;;;oBAAwC,CAAC;AAEvF,eAAO,MAAM,+BAA+B;;;;;;;;;;;qBAA8C,CAAC;AAiB3F,eAAO,MAAM,oBAAoB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAUhC,CAAC;AAEF,eAAO,MAAM,qBAAqB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAOjC,CAAC;AAEF,eAAO,MAAM,0BAA0B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EActC,CAAC"}
|
|
@@ -1,9 +1,10 @@
|
|
|
1
1
|
import { schemas, zodFor } from '@aztec/foundation/schemas';
|
|
2
2
|
import { z } from 'zod';
|
|
3
3
|
export const ValidatorStatusInSlotSchema = zodFor()(z.enum([
|
|
4
|
-
'
|
|
5
|
-
'
|
|
6
|
-
'
|
|
4
|
+
'checkpoint-mined',
|
|
5
|
+
'checkpoint-proposed',
|
|
6
|
+
'checkpoint-missed',
|
|
7
|
+
'blocks-missed',
|
|
7
8
|
'attestation-sent',
|
|
8
9
|
'attestation-missed'
|
|
9
10
|
]));
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import type { EpochNumber, SlotNumber } from '@aztec/foundation/branded-types';
|
|
2
2
|
import type { EthAddress } from '@aztec/foundation/eth-address';
|
|
3
|
-
export type ValidatorStatusType = '
|
|
4
|
-
export type ValidatorStatusInSlot = '
|
|
3
|
+
export type ValidatorStatusType = 'proposer' | 'attestation';
|
|
4
|
+
export type ValidatorStatusInSlot = 'checkpoint-mined' | 'checkpoint-proposed' | 'checkpoint-missed' | 'blocks-missed' | 'attestation-sent' | 'attestation-missed';
|
|
5
5
|
export type ValidatorStatusHistory = {
|
|
6
6
|
slot: SlotNumber;
|
|
7
7
|
status: ValidatorStatusInSlot;
|
|
@@ -50,4 +50,4 @@ export type SingleValidatorStats = {
|
|
|
50
50
|
initialSlot?: SlotNumber;
|
|
51
51
|
slotWindow: number;
|
|
52
52
|
};
|
|
53
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
53
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHlwZXMuZC50cyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy92YWxpZGF0b3JzL3R5cGVzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sS0FBSyxFQUFFLFdBQVcsRUFBRSxVQUFVLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQztBQUMvRSxPQUFPLEtBQUssRUFBRSxVQUFVLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQztBQUVoRSxNQUFNLE1BQU0sbUJBQW1CLEdBQUcsVUFBVSxHQUFHLGFBQWEsQ0FBQztBQUU3RCxNQUFNLE1BQU0scUJBQXFCLEdBQzdCLGtCQUFrQixHQUNsQixxQkFBcUIsR0FDckIsbUJBQW1CLEdBQ25CLGVBQWUsR0FDZixrQkFBa0IsR0FDbEIsb0JBQW9CLENBQUM7QUFFekIsTUFBTSxNQUFNLHNCQUFzQixHQUFHO0lBQUUsSUFBSSxFQUFFLFVBQVUsQ0FBQztJQUFDLE1BQU0sRUFBRSxxQkFBcUIsQ0FBQTtDQUFFLEVBQUUsQ0FBQztBQUUzRixNQUFNLE1BQU0sb0JBQW9CLEdBQUc7SUFDakMsYUFBYSxFQUFFLE1BQU0sQ0FBQztJQUN0QixJQUFJLENBQUMsRUFBRSxNQUFNLENBQUM7SUFDZCxLQUFLLEVBQUUsTUFBTSxDQUFDO0lBQ2QsS0FBSyxFQUFFLE1BQU0sQ0FBQztDQUNmLENBQUM7QUFFRixNQUFNLE1BQU0sY0FBYyxHQUFHO0lBQzNCLE9BQU8sRUFBRSxVQUFVLENBQUM7SUFDcEIsWUFBWSxDQUFDLEVBQUU7UUFBRSxTQUFTLEVBQUUsTUFBTSxDQUFDO1FBQUMsSUFBSSxFQUFFLFVBQVUsQ0FBQztRQUFDLElBQUksRUFBRSxNQUFNLENBQUE7S0FBRSxDQUFDO0lBQ3JFLGVBQWUsQ0FBQyxFQUFFO1FBQUUsU0FBUyxFQUFFLE1BQU0sQ0FBQztRQUFDLElBQUksRUFBRSxVQUFVLENBQUM7UUFBQyxJQUFJLEVBQUUsTUFBTSxDQUFBO0tBQUUsQ0FBQztJQUN4RSxVQUFVLEVBQUUsTUFBTSxDQUFDO0lBQ25CLGVBQWUsRUFBRSxvQkFBb0IsQ0FBQztJQUN0QyxrQkFBa0IsRUFBRSxvQkFBb0IsQ0FBQztJQUN6QyxPQUFPLEVBQUUsc0JBQXNCLENBQUM7Q0FDakMsQ0FBQztBQUVGLE1BQU0sTUFBTSxlQUFlLEdBQUc7SUFDNUIsS0FBSyxFQUFFLE1BQU0sQ0FBQyxNQUFNLEVBQUUsY0FBYyxDQUFDLENBQUM7SUFDdEMsaUJBQWlCLENBQUMsRUFBRSxVQUFVLENBQUM7SUFDL0IsV0FBVyxDQUFDLEVBQUUsVUFBVSxDQUFDO0lBQ3pCLFVBQVUsRUFBRSxNQUFNLENBQUM7Q0FDcEIsQ0FBQztBQUVGLE1BQU0sTUFBTSwwQkFBMEIsR0FBRyxNQUFNLENBQUMsS0FBSyxNQUFNLEVBQUUsRUFBRTtJQUFFLE1BQU0sRUFBRSxNQUFNLENBQUM7SUFBQyxLQUFLLEVBQUUsTUFBTSxDQUFBO0NBQUUsQ0FBQyxDQUFDO0FBRWxHLE1BQU0sTUFBTSxvQkFBb0IsR0FBRztJQUNqQyxTQUFTLEVBQUUsY0FBYyxDQUFDO0lBQzFCLHdCQUF3QixFQUFFO1FBQUUsTUFBTSxFQUFFLE1BQU0sQ0FBQztRQUFDLEtBQUssRUFBRSxNQUFNLENBQUM7UUFBQyxLQUFLLEVBQUUsV0FBVyxDQUFBO0tBQUUsRUFBRSxDQUFDO0lBQ2xGLGlCQUFpQixDQUFDLEVBQUUsVUFBVSxDQUFDO0lBQy9CLFdBQVcsQ0FBQyxFQUFFLFVBQVUsQ0FBQztJQUN6QixVQUFVLEVBQUUsTUFBTSxDQUFDO0NBQ3BCLENBQUMifQ==
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/validators/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,iCAAiC,CAAC;AAC/E,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,+BAA+B,CAAC;AAEhE,MAAM,MAAM,mBAAmB,GAAG,
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/validators/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,iCAAiC,CAAC;AAC/E,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,+BAA+B,CAAC;AAEhE,MAAM,MAAM,mBAAmB,GAAG,UAAU,GAAG,aAAa,CAAC;AAE7D,MAAM,MAAM,qBAAqB,GAC7B,kBAAkB,GAClB,qBAAqB,GACrB,mBAAmB,GACnB,eAAe,GACf,kBAAkB,GAClB,oBAAoB,CAAC;AAEzB,MAAM,MAAM,sBAAsB,GAAG;IAAE,IAAI,EAAE,UAAU,CAAC;IAAC,MAAM,EAAE,qBAAqB,CAAA;CAAE,EAAE,CAAC;AAE3F,MAAM,MAAM,oBAAoB,GAAG;IACjC,aAAa,EAAE,MAAM,CAAC;IACtB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;CACf,CAAC;AAEF,MAAM,MAAM,cAAc,GAAG;IAC3B,OAAO,EAAE,UAAU,CAAC;IACpB,YAAY,CAAC,EAAE;QAAE,SAAS,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,UAAU,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC;IACrE,eAAe,CAAC,EAAE;QAAE,SAAS,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,UAAU,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC;IACxE,UAAU,EAAE,MAAM,CAAC;IACnB,eAAe,EAAE,oBAAoB,CAAC;IACtC,kBAAkB,EAAE,oBAAoB,CAAC;IACzC,OAAO,EAAE,sBAAsB,CAAC;CACjC,CAAC;AAEF,MAAM,MAAM,eAAe,GAAG;IAC5B,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,cAAc,CAAC,CAAC;IACtC,iBAAiB,CAAC,EAAE,UAAU,CAAC;IAC/B,WAAW,CAAC,EAAE,UAAU,CAAC;IACzB,UAAU,EAAE,MAAM,CAAC;CACpB,CAAC;AAEF,MAAM,MAAM,0BAA0B,GAAG,MAAM,CAAC,KAAK,MAAM,EAAE,EAAE;IAAE,MAAM,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,CAAC,CAAC;AAElG,MAAM,MAAM,oBAAoB,GAAG;IACjC,SAAS,EAAE,cAAc,CAAC;IAC1B,wBAAwB,EAAE;QAAE,MAAM,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,WAAW,CAAA;KAAE,EAAE,CAAC;IAClF,iBAAiB,CAAC,EAAE,UAAU,CAAC;IAC/B,WAAW,CAAC,EAAE,UAAU,CAAC;IACzB,UAAU,EAAE,MAAM,CAAC;CACpB,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@aztec/stdlib",
|
|
3
|
-
"version": "0.0.1-commit.
|
|
3
|
+
"version": "0.0.1-commit.4ad48494d",
|
|
4
4
|
"type": "module",
|
|
5
5
|
"inherits": [
|
|
6
6
|
"../package.common.json",
|
|
@@ -90,14 +90,14 @@
|
|
|
90
90
|
},
|
|
91
91
|
"dependencies": {
|
|
92
92
|
"@aws-sdk/client-s3": "^3.892.0",
|
|
93
|
-
"@aztec/bb.js": "0.0.1-commit.
|
|
94
|
-
"@aztec/blob-lib": "0.0.1-commit.
|
|
95
|
-
"@aztec/constants": "0.0.1-commit.
|
|
96
|
-
"@aztec/ethereum": "0.0.1-commit.
|
|
97
|
-
"@aztec/foundation": "0.0.1-commit.
|
|
98
|
-
"@aztec/l1-artifacts": "0.0.1-commit.
|
|
99
|
-
"@aztec/noir-noirc_abi": "0.0.1-commit.
|
|
100
|
-
"@aztec/validator-ha-signer": "0.0.1-commit.
|
|
93
|
+
"@aztec/bb.js": "0.0.1-commit.4ad48494d",
|
|
94
|
+
"@aztec/blob-lib": "0.0.1-commit.4ad48494d",
|
|
95
|
+
"@aztec/constants": "0.0.1-commit.4ad48494d",
|
|
96
|
+
"@aztec/ethereum": "0.0.1-commit.4ad48494d",
|
|
97
|
+
"@aztec/foundation": "0.0.1-commit.4ad48494d",
|
|
98
|
+
"@aztec/l1-artifacts": "0.0.1-commit.4ad48494d",
|
|
99
|
+
"@aztec/noir-noirc_abi": "0.0.1-commit.4ad48494d",
|
|
100
|
+
"@aztec/validator-ha-signer": "0.0.1-commit.4ad48494d",
|
|
101
101
|
"@google-cloud/storage": "^7.15.0",
|
|
102
102
|
"axios": "^1.12.0",
|
|
103
103
|
"json-stringify-deterministic": "1.0.12",
|
|
@@ -19,6 +19,8 @@ export interface NodeInfo {
|
|
|
19
19
|
l1ContractAddresses: L1ContractAddresses;
|
|
20
20
|
/** Protocol contract addresses */
|
|
21
21
|
protocolContractAddresses: ProtocolContractAddresses;
|
|
22
|
+
/** Whether the node requires real proofs for transaction submission. */
|
|
23
|
+
realProofs: boolean;
|
|
22
24
|
}
|
|
23
25
|
|
|
24
26
|
export const NodeInfoSchema: ZodFor<NodeInfo> = z
|
|
@@ -29,5 +31,6 @@ export const NodeInfoSchema: ZodFor<NodeInfo> = z
|
|
|
29
31
|
enr: z.string().optional(),
|
|
30
32
|
l1ContractAddresses: L1ContractAddressesSchema,
|
|
31
33
|
protocolContractAddresses: ProtocolContractAddressesSchema,
|
|
34
|
+
realProofs: z.boolean(),
|
|
32
35
|
})
|
|
33
36
|
.transform(obj => ({ enr: undefined, ...obj }));
|
package/src/hash/hash.ts
CHANGED
|
@@ -69,6 +69,10 @@ export function computeProtocolNullifier(txRequestHash: Fr): Promise<Fr> {
|
|
|
69
69
|
return siloNullifier(AztecAddress.fromBigInt(NULL_MSG_SENDER_CONTRACT_ADDRESS), txRequestHash);
|
|
70
70
|
}
|
|
71
71
|
|
|
72
|
+
export function computeSiloedPrivateLogFirstField(contract: AztecAddress, field: Fr): Promise<Fr> {
|
|
73
|
+
return poseidon2HashWithSeparator([contract, field], GeneratorIndex.PRIVATE_LOG_FIRST_FIELD);
|
|
74
|
+
}
|
|
75
|
+
|
|
72
76
|
/**
|
|
73
77
|
* Computes a public data tree value ready for insertion.
|
|
74
78
|
* @param value - Raw public data tree value to hash into a tree-insertion-ready value.
|
|
@@ -19,6 +19,7 @@ export interface SlasherConfig {
|
|
|
19
19
|
slashInactivityPenalty: bigint;
|
|
20
20
|
slashBroadcastedInvalidBlockPenalty: bigint;
|
|
21
21
|
slashDuplicateProposalPenalty: bigint;
|
|
22
|
+
slashDuplicateAttestationPenalty: bigint;
|
|
22
23
|
slashProposeInvalidAttestationsPenalty: bigint;
|
|
23
24
|
slashAttestDescendantOfInvalidPenalty: bigint;
|
|
24
25
|
slashUnknownPenalty: bigint;
|
|
@@ -42,6 +43,7 @@ export const SlasherConfigSchema = zodFor<SlasherConfig>()(
|
|
|
42
43
|
slashInactivityPenalty: schemas.BigInt,
|
|
43
44
|
slashProposeInvalidAttestationsPenalty: schemas.BigInt,
|
|
44
45
|
slashDuplicateProposalPenalty: schemas.BigInt,
|
|
46
|
+
slashDuplicateAttestationPenalty: schemas.BigInt,
|
|
45
47
|
slashAttestDescendantOfInvalidPenalty: schemas.BigInt,
|
|
46
48
|
slashUnknownPenalty: schemas.BigInt,
|
|
47
49
|
slashOffenseExpirationRounds: z.number(),
|
|
@@ -56,11 +56,17 @@ export type ValidatorClientConfig = ValidatorHASignerConfig & {
|
|
|
56
56
|
|
|
57
57
|
/** Skip pushing re-executed blocks to archiver (default: false) */
|
|
58
58
|
skipPushProposedBlocksToArchiver?: boolean;
|
|
59
|
+
|
|
60
|
+
/** Agree to attest to equivocated checkpoint proposals (for testing purposes only) */
|
|
61
|
+
attestToEquivocatedProposals?: boolean;
|
|
59
62
|
};
|
|
60
63
|
|
|
61
64
|
export type ValidatorClientFullConfig = ValidatorClientConfig &
|
|
62
65
|
Pick<SequencerConfig, 'txPublicSetupAllowList' | 'broadcastInvalidBlockProposal'> &
|
|
63
|
-
Pick<
|
|
66
|
+
Pick<
|
|
67
|
+
SlasherConfig,
|
|
68
|
+
'slashBroadcastedInvalidBlockPenalty' | 'slashDuplicateProposalPenalty' | 'slashDuplicateAttestationPenalty'
|
|
69
|
+
> & {
|
|
64
70
|
/**
|
|
65
71
|
* Whether transactions are disabled for this node
|
|
66
72
|
* @remarks This should match the property in P2PConfig. It's not picked from there to avoid circular dependencies.
|
|
@@ -79,6 +85,7 @@ export const ValidatorClientConfigSchema = zodFor<Omit<ValidatorClientConfig, 'v
|
|
|
79
85
|
fishermanMode: z.boolean().optional(),
|
|
80
86
|
skipCheckpointProposalValidation: z.boolean().optional(),
|
|
81
87
|
skipPushProposedBlocksToArchiver: z.boolean().optional(),
|
|
88
|
+
attestToEquivocatedProposals: z.boolean().optional(),
|
|
82
89
|
}),
|
|
83
90
|
);
|
|
84
91
|
|
|
@@ -88,6 +95,7 @@ export const ValidatorClientFullConfigSchema = zodFor<Omit<ValidatorClientFullCo
|
|
|
88
95
|
broadcastInvalidBlockProposal: z.boolean().optional(),
|
|
89
96
|
slashBroadcastedInvalidBlockPenalty: schemas.BigInt,
|
|
90
97
|
slashDuplicateProposalPenalty: schemas.BigInt,
|
|
98
|
+
slashDuplicateAttestationPenalty: schemas.BigInt,
|
|
91
99
|
disableTransactions: z.boolean().optional(),
|
|
92
100
|
}),
|
|
93
101
|
);
|
package/src/logs/siloed_tag.ts
CHANGED
|
@@ -1,9 +1,8 @@
|
|
|
1
|
-
import { GeneratorIndex } from '@aztec/constants';
|
|
2
|
-
import { poseidon2HashWithSeparator } from '@aztec/foundation/crypto/poseidon';
|
|
3
1
|
import type { Fr } from '@aztec/foundation/curves/bn254';
|
|
4
2
|
import type { ZodFor } from '@aztec/foundation/schemas';
|
|
5
3
|
|
|
6
4
|
import type { AztecAddress } from '../aztec-address/index.js';
|
|
5
|
+
import { computeSiloedPrivateLogFirstField } from '../hash/hash.js';
|
|
7
6
|
import { schemas } from '../schemas/schemas.js';
|
|
8
7
|
import type { Tag } from './tag.js';
|
|
9
8
|
|
|
@@ -23,7 +22,7 @@ export class SiloedTag {
|
|
|
23
22
|
constructor(public readonly value: Fr) {}
|
|
24
23
|
|
|
25
24
|
static async compute(tag: Tag, app: AztecAddress): Promise<SiloedTag> {
|
|
26
|
-
const siloedTag = await
|
|
25
|
+
const siloedTag = await computeSiloedPrivateLogFirstField(app, tag.value);
|
|
27
26
|
return new SiloedTag(siloedTag);
|
|
28
27
|
}
|
|
29
28
|
|
package/src/note/notes_filter.ts
CHANGED
|
@@ -24,7 +24,10 @@ export type NotesFilter = {
|
|
|
24
24
|
status?: NoteStatus;
|
|
25
25
|
/** The siloed nullifier for the note. */
|
|
26
26
|
siloedNullifier?: Fr;
|
|
27
|
-
/**
|
|
27
|
+
/**
|
|
28
|
+
* The scopes in which to get notes from
|
|
29
|
+
* Undefined scopes means all scopes, while empty list of scopes means no scope at all
|
|
30
|
+
*/
|
|
28
31
|
scopes?: AztecAddress[];
|
|
29
32
|
};
|
|
30
33
|
|
package/src/p2p/constants.ts
CHANGED
package/src/slashing/empire.ts
CHANGED
|
@@ -84,7 +84,8 @@ export function getFirstEligibleRoundForOffense(
|
|
|
84
84
|
case OffenseType.PROPOSED_INCORRECT_ATTESTATIONS:
|
|
85
85
|
case OffenseType.ATTESTED_DESCENDANT_OF_INVALID:
|
|
86
86
|
case OffenseType.BROADCASTED_INVALID_BLOCK_PROPOSAL:
|
|
87
|
-
case OffenseType.DUPLICATE_PROPOSAL:
|
|
87
|
+
case OffenseType.DUPLICATE_PROPOSAL:
|
|
88
|
+
case OffenseType.DUPLICATE_ATTESTATION: {
|
|
88
89
|
const slot = offense.epochOrSlot;
|
|
89
90
|
const detectedSlot = SlotNumber.fromBigInt(slot + 1n);
|
|
90
91
|
return getRoundForSlot(detectedSlot, constants).round + 1n;
|
package/src/slashing/helpers.ts
CHANGED
|
@@ -51,6 +51,7 @@ export function getPenaltyForOffense(
|
|
|
51
51
|
| 'slashAttestDescendantOfInvalidPenalty'
|
|
52
52
|
| 'slashBroadcastedInvalidBlockPenalty'
|
|
53
53
|
| 'slashDuplicateProposalPenalty'
|
|
54
|
+
| 'slashDuplicateAttestationPenalty'
|
|
54
55
|
| 'slashPrunePenalty'
|
|
55
56
|
| 'slashDataWithholdingPenalty'
|
|
56
57
|
| 'slashUnknownPenalty'
|
|
@@ -74,6 +75,8 @@ export function getPenaltyForOffense(
|
|
|
74
75
|
return config.slashBroadcastedInvalidBlockPenalty;
|
|
75
76
|
case OffenseType.DUPLICATE_PROPOSAL:
|
|
76
77
|
return config.slashDuplicateProposalPenalty;
|
|
78
|
+
case OffenseType.DUPLICATE_ATTESTATION:
|
|
79
|
+
return config.slashDuplicateAttestationPenalty;
|
|
77
80
|
case OffenseType.UNKNOWN:
|
|
78
81
|
return config.slashUnknownPenalty;
|
|
79
82
|
default: {
|
|
@@ -89,6 +92,7 @@ export function getTimeUnitForOffense(offense: OffenseType): 'epoch' | 'slot' {
|
|
|
89
92
|
case OffenseType.ATTESTED_DESCENDANT_OF_INVALID:
|
|
90
93
|
case OffenseType.BROADCASTED_INVALID_BLOCK_PROPOSAL:
|
|
91
94
|
case OffenseType.DUPLICATE_PROPOSAL:
|
|
95
|
+
case OffenseType.DUPLICATE_ATTESTATION:
|
|
92
96
|
case OffenseType.PROPOSED_INCORRECT_ATTESTATIONS:
|
|
93
97
|
case OffenseType.PROPOSED_INSUFFICIENT_ATTESTATIONS:
|
|
94
98
|
return 'slot';
|