@aztec/stdlib 0.0.1-commit.2ed92850 → 0.0.1-commit.3469e52
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/block/block_hash.d.ts +2 -3
- package/dest/block/block_hash.d.ts.map +1 -1
- package/dest/block/block_hash.js +0 -3
- package/dest/block/checkpointed_l2_block.d.ts +6 -6
- package/dest/block/checkpointed_l2_block.d.ts.map +1 -1
- package/dest/block/checkpointed_l2_block.js +3 -3
- package/dest/block/in_block.d.ts +3 -3
- package/dest/block/in_block.d.ts.map +1 -1
- package/dest/block/index.d.ts +2 -2
- package/dest/block/index.d.ts.map +1 -1
- package/dest/block/index.js +1 -1
- package/dest/block/{l2_block.d.ts → l2_block_new.d.ts} +6 -6
- package/dest/block/l2_block_new.d.ts.map +1 -0
- package/dest/block/{l2_block.js → l2_block_new.js} +11 -8
- package/dest/block/l2_block_source.d.ts +29 -37
- package/dest/block/l2_block_source.d.ts.map +1 -1
- package/dest/block/l2_block_stream/interfaces.d.ts +3 -3
- package/dest/block/l2_block_stream/interfaces.d.ts.map +1 -1
- package/dest/block/l2_block_stream/l2_block_stream.d.ts +3 -2
- package/dest/block/l2_block_stream/l2_block_stream.d.ts.map +1 -1
- package/dest/block/l2_block_stream/l2_block_stream.js +4 -4
- package/dest/block/l2_block_stream/l2_tips_store_base.d.ts +3 -3
- package/dest/block/l2_block_stream/l2_tips_store_base.d.ts.map +1 -1
- package/dest/block/test/l2_tips_store_test_suite.js +2 -2
- package/dest/checkpoint/checkpoint.d.ts +8 -8
- package/dest/checkpoint/checkpoint.d.ts.map +1 -1
- package/dest/checkpoint/checkpoint.js +4 -4
- package/dest/checkpoint/published_checkpoint.d.ts +2 -2
- package/dest/config/node-rpc-config.js +1 -1
- package/dest/contract/private_function.d.ts +1 -1
- package/dest/contract/private_function.d.ts.map +1 -1
- package/dest/contract/private_function.js +2 -1
- package/dest/delayed_public_mutable/delayed_public_mutable_values.d.ts +2 -2
- package/dest/delayed_public_mutable/delayed_public_mutable_values.d.ts.map +1 -1
- package/dest/delayed_public_mutable/delayed_public_mutable_values.js +10 -7
- package/dest/epoch-helpers/index.js +1 -1
- package/dest/interfaces/archiver.d.ts +1 -1
- package/dest/interfaces/archiver.d.ts.map +1 -1
- package/dest/interfaces/archiver.js +15 -15
- package/dest/interfaces/aztec-node-admin.d.ts +1 -4
- package/dest/interfaces/aztec-node-admin.d.ts.map +1 -1
- package/dest/interfaces/aztec-node.d.ts +9 -23
- package/dest/interfaces/aztec-node.d.ts.map +1 -1
- package/dest/interfaces/aztec-node.js +11 -11
- package/dest/interfaces/block-builder.d.ts +4 -4
- package/dest/interfaces/block-builder.d.ts.map +1 -1
- package/dest/interfaces/configs.d.ts +2 -2
- package/dest/interfaces/configs.d.ts.map +1 -1
- package/dest/interfaces/prover-client.d.ts +1 -10
- package/dest/interfaces/prover-client.d.ts.map +1 -1
- package/dest/interfaces/prover-client.js +1 -7
- package/dest/interfaces/tx_provider.d.ts +3 -3
- package/dest/interfaces/tx_provider.d.ts.map +1 -1
- package/dest/interfaces/validator.d.ts +2 -2
- package/dest/interfaces/validator.d.ts.map +1 -1
- package/dest/kernel/hints/build_nullifier_read_request_hints.d.ts +3 -3
- package/dest/kernel/hints/build_nullifier_read_request_hints.d.ts.map +1 -1
- package/dest/kernel/hints/build_nullifier_read_request_hints.js +6 -4
- package/dest/p2p/block_proposal.d.ts +4 -4
- package/dest/p2p/block_proposal.d.ts.map +1 -1
- package/dest/p2p/block_proposal.js +1 -1
- package/dest/p2p/message_validator.d.ts +3 -18
- package/dest/p2p/message_validator.d.ts.map +1 -1
- package/dest/p2p/message_validator.js +1 -2
- package/dest/tests/factories.js +1 -1
- package/dest/tests/jest.d.ts +4 -4
- package/dest/tests/jest.js +9 -9
- package/dest/tests/mocks.d.ts +9 -10
- package/dest/tests/mocks.d.ts.map +1 -1
- package/dest/tests/mocks.js +10 -15
- package/dest/tx/block_header.d.ts +2 -3
- package/dest/tx/block_header.d.ts.map +1 -1
- package/dest/tx/block_header.js +2 -3
- package/dest/tx/tx_receipt.d.ts +11 -39
- package/dest/tx/tx_receipt.d.ts.map +1 -1
- package/dest/tx/tx_receipt.js +13 -44
- package/package.json +9 -9
- package/src/block/block_hash.ts +1 -5
- package/src/block/checkpointed_l2_block.ts +4 -4
- package/src/block/in_block.ts +2 -2
- package/src/block/index.ts +1 -1
- package/src/block/{l2_block.ts → l2_block_new.ts} +13 -9
- package/src/block/l2_block_source.ts +30 -38
- package/src/block/l2_block_stream/interfaces.ts +2 -2
- package/src/block/l2_block_stream/l2_block_stream.ts +6 -5
- package/src/block/l2_block_stream/l2_tips_store_base.ts +2 -2
- package/src/block/test/l2_tips_store_test_suite.ts +4 -4
- package/src/checkpoint/checkpoint.ts +7 -7
- package/src/config/node-rpc-config.ts +1 -1
- package/src/contract/private_function.ts +2 -1
- package/src/delayed_public_mutable/delayed_public_mutable_values.ts +10 -9
- package/src/epoch-helpers/index.ts +1 -1
- package/src/interfaces/archiver.ts +24 -15
- package/src/interfaces/aztec-node.ts +31 -38
- package/src/interfaces/block-builder.ts +3 -3
- package/src/interfaces/configs.ts +3 -1
- package/src/interfaces/prover-client.ts +0 -15
- package/src/interfaces/tx_provider.ts +2 -2
- package/src/interfaces/validator.ts +2 -1
- package/src/kernel/hints/build_nullifier_read_request_hints.ts +10 -1
- package/src/p2p/block_proposal.ts +3 -3
- package/src/p2p/message_validator.ts +2 -14
- package/src/tests/factories.ts +1 -1
- package/src/tests/jest.ts +9 -9
- package/src/tests/mocks.ts +13 -20
- package/src/tx/block_header.ts +4 -7
- package/src/tx/tx_receipt.ts +15 -72
- package/dest/block/l2_block.d.ts.map +0 -1
package/src/tx/block_header.ts
CHANGED
|
@@ -11,14 +11,13 @@ import type { FieldsOf } from '@aztec/foundation/types';
|
|
|
11
11
|
import { inspect } from 'util';
|
|
12
12
|
import { z } from 'zod';
|
|
13
13
|
|
|
14
|
-
import { L2BlockHash } from '../block/block_hash.js';
|
|
15
14
|
import { AppendOnlyTreeSnapshot } from '../trees/append_only_tree_snapshot.js';
|
|
16
15
|
import { GlobalVariables } from './global_variables.js';
|
|
17
16
|
import { StateReference } from './state_reference.js';
|
|
18
17
|
|
|
19
18
|
/** A header of an L2 block. */
|
|
20
19
|
export class BlockHeader {
|
|
21
|
-
private _cachedHash?: Promise<
|
|
20
|
+
private _cachedHash?: Promise<Fr>;
|
|
22
21
|
|
|
23
22
|
constructor(
|
|
24
23
|
/** Snapshot of archive before the block is applied. */
|
|
@@ -162,18 +161,16 @@ export class BlockHeader {
|
|
|
162
161
|
return BlockHeader.fromBuffer(hexToBuffer(str));
|
|
163
162
|
}
|
|
164
163
|
|
|
165
|
-
hash(): Promise<
|
|
164
|
+
hash(): Promise<Fr> {
|
|
166
165
|
if (!this._cachedHash) {
|
|
167
|
-
this._cachedHash = poseidon2HashWithSeparator(this.toFields(), GeneratorIndex.BLOCK_HASH)
|
|
168
|
-
L2BlockHash.fromField(fr),
|
|
169
|
-
);
|
|
166
|
+
this._cachedHash = poseidon2HashWithSeparator(this.toFields(), GeneratorIndex.BLOCK_HASH);
|
|
170
167
|
}
|
|
171
168
|
return this._cachedHash;
|
|
172
169
|
}
|
|
173
170
|
|
|
174
171
|
/** Manually set the hash for this block header if already computed */
|
|
175
172
|
setHash(hashed: Fr) {
|
|
176
|
-
this._cachedHash = Promise.resolve(
|
|
173
|
+
this._cachedHash = Promise.resolve(hashed);
|
|
177
174
|
}
|
|
178
175
|
|
|
179
176
|
static random(overrides: Partial<FieldsOf<BlockHeader>> & Partial<FieldsOf<GlobalVariables>> = {}): BlockHeader {
|
package/src/tx/tx_receipt.ts
CHANGED
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { BlockNumber, BlockNumberSchema } from '@aztec/foundation/branded-types';
|
|
2
|
+
import type { FieldsOf } from '@aztec/foundation/types';
|
|
2
3
|
|
|
3
4
|
import { z } from 'zod';
|
|
4
5
|
|
|
@@ -7,28 +8,12 @@ import { L2BlockHash } from '../block/block_hash.js';
|
|
|
7
8
|
import { type ZodFor, schemas } from '../schemas/schemas.js';
|
|
8
9
|
import { TxHash } from './tx_hash.js';
|
|
9
10
|
|
|
10
|
-
/**
|
|
11
|
+
/**
|
|
12
|
+
* Possible status of a transaction.
|
|
13
|
+
*/
|
|
11
14
|
export enum TxStatus {
|
|
12
15
|
DROPPED = 'dropped',
|
|
13
16
|
PENDING = 'pending',
|
|
14
|
-
PROPOSED = 'proposed',
|
|
15
|
-
CHECKPOINTED = 'checkpointed',
|
|
16
|
-
PROVEN = 'proven',
|
|
17
|
-
FINALIZED = 'finalized', // TODO(#13569): Implement finalized status properly
|
|
18
|
-
}
|
|
19
|
-
|
|
20
|
-
/** Tx status sorted by finalization progress. */
|
|
21
|
-
export const SortedTxStatuses: TxStatus[] = [
|
|
22
|
-
TxStatus.DROPPED,
|
|
23
|
-
TxStatus.PENDING,
|
|
24
|
-
TxStatus.PROPOSED,
|
|
25
|
-
TxStatus.CHECKPOINTED,
|
|
26
|
-
TxStatus.PROVEN,
|
|
27
|
-
TxStatus.FINALIZED,
|
|
28
|
-
];
|
|
29
|
-
|
|
30
|
-
/** Execution result - only set when tx is in a block. */
|
|
31
|
-
export enum TxExecutionResult {
|
|
32
17
|
SUCCESS = 'success',
|
|
33
18
|
APP_LOGIC_REVERTED = 'app_logic_reverted',
|
|
34
19
|
TEARDOWN_REVERTED = 'teardown_reverted',
|
|
@@ -45,12 +30,10 @@ export class TxReceipt {
|
|
|
45
30
|
constructor(
|
|
46
31
|
/** A unique identifier for a transaction. */
|
|
47
32
|
public txHash: TxHash,
|
|
48
|
-
/** The transaction's
|
|
33
|
+
/** The transaction's status. */
|
|
49
34
|
public status: TxStatus,
|
|
50
|
-
/** The execution result of the transaction, only set when tx is in a block. */
|
|
51
|
-
public executionResult: TxExecutionResult | undefined,
|
|
52
35
|
/** Description of transaction error, if any. */
|
|
53
|
-
public error: string
|
|
36
|
+
public error: string,
|
|
54
37
|
/** The transaction fee paid for the transaction. */
|
|
55
38
|
public transactionFee?: bigint,
|
|
56
39
|
/** The hash of the block containing the transaction. */
|
|
@@ -59,38 +42,8 @@ export class TxReceipt {
|
|
|
59
42
|
public blockNumber?: BlockNumber,
|
|
60
43
|
) {}
|
|
61
44
|
|
|
62
|
-
/** Returns true if the transaction was executed successfully. */
|
|
63
|
-
hasExecutionSucceeded(): boolean {
|
|
64
|
-
return this.executionResult === TxExecutionResult.SUCCESS;
|
|
65
|
-
}
|
|
66
|
-
|
|
67
|
-
/** Returns true if the transaction execution reverted. */
|
|
68
|
-
hasExecutionReverted(): boolean {
|
|
69
|
-
return this.executionResult !== undefined && this.executionResult !== TxExecutionResult.SUCCESS;
|
|
70
|
-
}
|
|
71
|
-
|
|
72
|
-
/** Returns true if the transaction has been included in a block (proposed, checkpointed, proven, or finalized). */
|
|
73
|
-
isMined(): boolean {
|
|
74
|
-
return (
|
|
75
|
-
this.status === TxStatus.PROPOSED ||
|
|
76
|
-
this.status === TxStatus.CHECKPOINTED ||
|
|
77
|
-
this.status === TxStatus.PROVEN ||
|
|
78
|
-
this.status === TxStatus.FINALIZED
|
|
79
|
-
);
|
|
80
|
-
}
|
|
81
|
-
|
|
82
|
-
/** Returns true if the transaction is pending. */
|
|
83
|
-
isPending(): boolean {
|
|
84
|
-
return this.status === TxStatus.PENDING;
|
|
85
|
-
}
|
|
86
|
-
|
|
87
|
-
/** Returns true if the transaction was dropped. */
|
|
88
|
-
isDropped(): boolean {
|
|
89
|
-
return this.status === TxStatus.DROPPED;
|
|
90
|
-
}
|
|
91
|
-
|
|
92
45
|
static empty() {
|
|
93
|
-
return new TxReceipt(TxHash.zero(), TxStatus.DROPPED,
|
|
46
|
+
return new TxReceipt(TxHash.zero(), TxStatus.DROPPED, '');
|
|
94
47
|
}
|
|
95
48
|
|
|
96
49
|
static get schema(): ZodFor<TxReceipt> {
|
|
@@ -98,28 +51,18 @@ export class TxReceipt {
|
|
|
98
51
|
.object({
|
|
99
52
|
txHash: TxHash.schema,
|
|
100
53
|
status: z.nativeEnum(TxStatus),
|
|
101
|
-
|
|
102
|
-
error: z.string().optional(),
|
|
54
|
+
error: z.string(),
|
|
103
55
|
blockHash: L2BlockHash.schema.optional(),
|
|
104
56
|
blockNumber: BlockNumberSchema.optional(),
|
|
105
57
|
transactionFee: schemas.BigInt.optional(),
|
|
106
58
|
})
|
|
107
|
-
.transform(
|
|
59
|
+
.transform(TxReceipt.from);
|
|
108
60
|
}
|
|
109
61
|
|
|
110
|
-
static from(fields: {
|
|
111
|
-
txHash: TxHash;
|
|
112
|
-
status: TxStatus;
|
|
113
|
-
executionResult?: TxExecutionResult;
|
|
114
|
-
error?: string;
|
|
115
|
-
transactionFee?: bigint;
|
|
116
|
-
blockHash?: L2BlockHash;
|
|
117
|
-
blockNumber?: BlockNumber;
|
|
118
|
-
}) {
|
|
62
|
+
static from(fields: FieldsOf<TxReceipt>) {
|
|
119
63
|
return new TxReceipt(
|
|
120
64
|
fields.txHash,
|
|
121
65
|
fields.status,
|
|
122
|
-
fields.executionResult,
|
|
123
66
|
fields.error,
|
|
124
67
|
fields.transactionFee,
|
|
125
68
|
fields.blockHash,
|
|
@@ -127,15 +70,15 @@ export class TxReceipt {
|
|
|
127
70
|
);
|
|
128
71
|
}
|
|
129
72
|
|
|
130
|
-
public static
|
|
73
|
+
public static statusFromRevertCode(revertCode: RevertCode) {
|
|
131
74
|
if (revertCode.equals(RevertCode.OK)) {
|
|
132
|
-
return
|
|
75
|
+
return TxStatus.SUCCESS;
|
|
133
76
|
} else if (revertCode.equals(RevertCode.APP_LOGIC_REVERTED)) {
|
|
134
|
-
return
|
|
77
|
+
return TxStatus.APP_LOGIC_REVERTED;
|
|
135
78
|
} else if (revertCode.equals(RevertCode.TEARDOWN_REVERTED)) {
|
|
136
|
-
return
|
|
79
|
+
return TxStatus.TEARDOWN_REVERTED;
|
|
137
80
|
} else if (revertCode.equals(RevertCode.BOTH_REVERTED)) {
|
|
138
|
-
return
|
|
81
|
+
return TxStatus.BOTH_REVERTED;
|
|
139
82
|
} else {
|
|
140
83
|
throw new Error(`Unknown revert code: ${revertCode.getCode()}`);
|
|
141
84
|
}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"l2_block.d.ts","sourceRoot":"","sources":["../../src/block/l2_block.ts"],"names":[],"mappings":"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"}
|