@aztec/foundation 0.82.2 → 0.82.3-nightly.20250403
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/bigint/index.d.ts +3 -0
- package/dest/bigint/index.d.ts.map +1 -0
- package/dest/bigint/index.js +6 -0
- package/dest/collection/array.d.ts +2 -0
- package/dest/collection/array.d.ts.map +1 -1
- package/dest/collection/array.js +11 -0
- package/dest/collection/object.d.ts +8 -0
- package/dest/collection/object.d.ts.map +1 -1
- package/dest/collection/object.js +8 -0
- package/dest/config/env_var.d.ts +1 -1
- package/dest/config/env_var.d.ts.map +1 -1
- package/dest/crypto/ecdsa/index.d.ts +2 -0
- package/dest/crypto/ecdsa/index.d.ts.map +1 -1
- package/dest/crypto/ecdsa/index.js +8 -4
- package/dest/eth-address/index.d.ts +2 -0
- package/dest/eth-address/index.d.ts.map +1 -1
- package/dest/eth-address/index.js +5 -0
- package/dest/fs/index.d.ts +1 -0
- package/dest/fs/index.d.ts.map +1 -1
- package/dest/fs/index.js +1 -0
- package/dest/fs/try_rm_dir.d.ts +3 -0
- package/dest/fs/try_rm_dir.d.ts.map +1 -0
- package/dest/fs/try_rm_dir.js +16 -0
- package/dest/log/pino-logger.js +1 -1
- package/dest/promise/running-promise.d.ts +1 -1
- package/dest/promise/running-promise.js +1 -1
- package/package.json +3 -2
- package/src/bigint/index.ts +7 -0
- package/src/collection/array.ts +13 -0
- package/src/collection/object.ts +14 -0
- package/src/config/env_var.ts +10 -7
- package/src/crypto/ecdsa/index.ts +19 -4
- package/src/eth-address/index.ts +7 -0
- package/src/fs/index.ts +1 -0
- package/src/fs/try_rm_dir.ts +15 -0
- package/src/log/pino-logger.ts +1 -1
- package/src/promise/running-promise.ts +1 -1
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/bigint/index.ts"],"names":[],"mappings":"AAAA,sDAAsD;AACtD,wBAAgB,SAAS,CAAC,GAAG,MAAM,EAAE,MAAM,EAAE,GAAG,MAAM,CAKrD"}
|
|
@@ -98,4 +98,6 @@ export declare function mean(values: number[]): number | undefined;
|
|
|
98
98
|
export declare function variance(values: number[]): number | undefined;
|
|
99
99
|
/** Computes the standard deviation of a numeric array. Returns undefined if there are less than 2 points. */
|
|
100
100
|
export declare function stdDev(values: number[]): number | undefined;
|
|
101
|
+
/** Counts how many items from the beginning of the array match the given predicate. */
|
|
102
|
+
export declare function countWhile<T>(collection: T[], predicate: (x: T) => boolean): number;
|
|
101
103
|
//# sourceMappingURL=array.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"array.d.ts","sourceRoot":"","sources":["../../src/collection/array.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"array.d.ts","sourceRoot":"","sources":["../../src/collection/array.ts"],"names":[],"mappings":"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"}
|
package/dest/collection/array.js
CHANGED
|
@@ -162,3 +162,14 @@
|
|
|
162
162
|
}
|
|
163
163
|
return Math.sqrt(variance(values));
|
|
164
164
|
}
|
|
165
|
+
/** Counts how many items from the beginning of the array match the given predicate. */ export function countWhile(collection, predicate) {
|
|
166
|
+
let count = 0;
|
|
167
|
+
for (const item of collection){
|
|
168
|
+
if (predicate(item)) {
|
|
169
|
+
count++;
|
|
170
|
+
} else {
|
|
171
|
+
break;
|
|
172
|
+
}
|
|
173
|
+
}
|
|
174
|
+
return count;
|
|
175
|
+
}
|
|
@@ -11,4 +11,12 @@ export declare function pick<T extends object>(object: T, ...props: string[]): P
|
|
|
11
11
|
/** Returns a new object by omitting the given keys. */
|
|
12
12
|
export declare function omit<T extends object, K extends keyof T>(object: T, ...props: K[]): Omit<T, K>;
|
|
13
13
|
export declare function omit<T extends object>(object: T, ...props: string[]): Partial<T>;
|
|
14
|
+
/** Equivalent to Object.entries but preserves types. */
|
|
15
|
+
export declare function getEntries<T extends Record<PropertyKey, unknown>>(obj: T): {
|
|
16
|
+
[K in keyof T]: [K, T[K]];
|
|
17
|
+
}[keyof T][];
|
|
18
|
+
/** Equivalent to Object.fromEntries but preserves types. */
|
|
19
|
+
export declare function fromEntries<const T extends ReadonlyArray<readonly [PropertyKey, unknown]>>(entries: T): {
|
|
20
|
+
[K in T[number] as K[0]]: K[1];
|
|
21
|
+
};
|
|
14
22
|
//# sourceMappingURL=object.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"object.d.ts","sourceRoot":"","sources":["../../src/collection/object.ts"],"names":[],"mappings":"AAAA,iHAAiH;AACjH,wBAAgB,SAAS,CAAC,CAAC,SAAS,MAAM,GAAG,MAAM,GAAG,MAAM,EAAE,CAAC,EAAE,CAAC,EAChE,GAAG,EAAE,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,EACjB,EAAE,EAAE,CAAC,KAAK,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,KAAK,CAAC,GAC1B,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;AAChB,wBAAgB,SAAS,CAAC,CAAC,SAAS,MAAM,GAAG,MAAM,GAAG,MAAM,EAAE,CAAC,EAAE,CAAC,EAChE,GAAG,EAAE,OAAO,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAC1B,EAAE,EAAE,CAAC,KAAK,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,KAAK,CAAC,GAC1B,OAAO,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;AAYzB,mFAAmF;AACnF,wBAAgB,OAAO,CAAC,CAAC,SAAS,MAAM,EAAE,GAAG,EAAE,CAAC,GAAG;KAAG,CAAC,IAAI,MAAM,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,SAAS,CAAC;CAAE,CAQhG;AAED,sDAAsD;AACtD,wBAAgB,IAAI,CAAC,CAAC,SAAS,MAAM,EAAE,CAAC,SAAS,MAAM,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,GAAG,KAAK,EAAE,CAAC,EAAE,GAAG,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;AAChG,wBAAgB,IAAI,CAAC,CAAC,SAAS,MAAM,EAAE,MAAM,EAAE,CAAC,EAAE,GAAG,KAAK,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;AASlF,uDAAuD;AACvD,wBAAgB,IAAI,CAAC,CAAC,SAAS,MAAM,EAAE,CAAC,SAAS,MAAM,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,GAAG,KAAK,EAAE,CAAC,EAAE,GAAG,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;AAChG,wBAAgB,IAAI,CAAC,CAAC,SAAS,MAAM,EAAE,MAAM,EAAE,CAAC,EAAE,GAAG,KAAK,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC"}
|
|
1
|
+
{"version":3,"file":"object.d.ts","sourceRoot":"","sources":["../../src/collection/object.ts"],"names":[],"mappings":"AAAA,iHAAiH;AACjH,wBAAgB,SAAS,CAAC,CAAC,SAAS,MAAM,GAAG,MAAM,GAAG,MAAM,EAAE,CAAC,EAAE,CAAC,EAChE,GAAG,EAAE,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,EACjB,EAAE,EAAE,CAAC,KAAK,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,KAAK,CAAC,GAC1B,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;AAChB,wBAAgB,SAAS,CAAC,CAAC,SAAS,MAAM,GAAG,MAAM,GAAG,MAAM,EAAE,CAAC,EAAE,CAAC,EAChE,GAAG,EAAE,OAAO,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAC1B,EAAE,EAAE,CAAC,KAAK,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,KAAK,CAAC,GAC1B,OAAO,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;AAYzB,mFAAmF;AACnF,wBAAgB,OAAO,CAAC,CAAC,SAAS,MAAM,EAAE,GAAG,EAAE,CAAC,GAAG;KAAG,CAAC,IAAI,MAAM,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,SAAS,CAAC;CAAE,CAQhG;AAED,sDAAsD;AACtD,wBAAgB,IAAI,CAAC,CAAC,SAAS,MAAM,EAAE,CAAC,SAAS,MAAM,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,GAAG,KAAK,EAAE,CAAC,EAAE,GAAG,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;AAChG,wBAAgB,IAAI,CAAC,CAAC,SAAS,MAAM,EAAE,MAAM,EAAE,CAAC,EAAE,GAAG,KAAK,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;AASlF,uDAAuD;AACvD,wBAAgB,IAAI,CAAC,CAAC,SAAS,MAAM,EAAE,CAAC,SAAS,MAAM,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,GAAG,KAAK,EAAE,CAAC,EAAE,GAAG,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;AAChG,wBAAgB,IAAI,CAAC,CAAC,SAAS,MAAM,EAAE,MAAM,EAAE,CAAC,EAAE,GAAG,KAAK,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;AASlF,wDAAwD;AACxD,wBAAgB,UAAU,CAAC,CAAC,SAAS,MAAM,CAAC,WAAW,EAAE,OAAO,CAAC,EAAE,GAAG,EAAE,CAAC,GAAG;KAAG,CAAC,IAAI,MAAM,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;CAAE,CAAC,MAAM,CAAC,CAAC,EAAE,CAGnH;AAED,4DAA4D;AAC5D,wBAAgB,WAAW,CAAC,KAAK,CAAC,CAAC,SAAS,aAAa,CAAC,SAAS,CAAC,WAAW,EAAE,OAAO,CAAC,CAAC,EACxF,OAAO,EAAE,CAAC,GACT;KAAG,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;CAAE,CAGpC"}
|
|
@@ -30,3 +30,11 @@ export function omit(object, ...props) {
|
|
|
30
30
|
}
|
|
31
31
|
return obj;
|
|
32
32
|
}
|
|
33
|
+
/** Equivalent to Object.entries but preserves types. */ export function getEntries(obj) {
|
|
34
|
+
// See https://stackoverflow.com/a/76176570
|
|
35
|
+
return Object.entries(obj);
|
|
36
|
+
}
|
|
37
|
+
/** Equivalent to Object.fromEntries but preserves types. */ export function fromEntries(entries) {
|
|
38
|
+
// See https://stackoverflow.com/a/76176570
|
|
39
|
+
return Object.fromEntries(entries);
|
|
40
|
+
}
|
package/dest/config/env_var.d.ts
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
export type EnvVar = 'ACVM_BINARY_PATH' | 'ACVM_WORKING_DIRECTORY' | 'GOVERNANCE_CONTRACT_ADDRESS' | 'API_KEY' | 'API_PREFIX' | 'ARCHIVER_MAX_LOGS' | 'ARCHIVER_POLLING_INTERVAL_MS' | 'ARCHIVER_URL' | 'ARCHIVER_VIEM_POLLING_INTERVAL_MS' | 'ARCHIVER_BATCH_SIZE' | 'ASSUME_PROVEN_THROUGH_BLOCK_NUMBER' | 'AZTEC_ADMIN_PORT' | 'AZTEC_NODE_ADMIN_URL' | 'AZTEC_NODE_URL' | 'AZTEC_PORT' | 'BB_BINARY_PATH' | 'BB_SKIP_CLEANUP' | 'BB_WORKING_DIRECTORY' | 'BOOTSTRAP_NODES' | 'BLOB_SINK_ARCHIVE_API_URL' | 'BLOB_SINK_PORT' | 'BLOB_SINK_URL' | 'BOT_DA_GAS_LIMIT' | 'BOT_FEE_PAYMENT_METHOD' | 'BOT_FLUSH_SETUP_TRANSACTIONS' | 'BOT_FOLLOW_CHAIN' | 'BOT_L2_GAS_LIMIT' | 'BOT_MAX_PENDING_TXS' | 'BOT_NO_START' | 'BOT_NO_WAIT_FOR_TRANSFERS' | 'BOT_L1_MNEMONIC' | 'BOT_L1_PRIVATE_KEY' | 'BOT_PRIVATE_KEY' | 'BOT_ACCOUNT_SALT' | 'BOT_PRIVATE_TRANSFERS_PER_TX' | 'BOT_PUBLIC_TRANSFERS_PER_TX' | 'BOT_PXE_URL' | 'BOT_RECIPIENT_ENCRYPTION_SECRET' | 'BOT_SKIP_PUBLIC_SIMULATION' | 'BOT_TOKEN_CONTRACT' | 'BOT_TOKEN_SALT' | 'BOT_TX_INTERVAL_SECONDS' | 'BOT_TX_MINED_WAIT_SECONDS' | 'BOT_MAX_CONSECUTIVE_ERRORS' | 'BOT_STOP_WHEN_UNHEALTHY' | 'BOT_AMM_TXS' | 'COINBASE' | 'DATA_DIRECTORY' | 'DATA_STORE_MAP_SIZE_KB' | 'ARCHIVER_STORE_MAP_SIZE_KB' | 'P2P_STORE_MAP_SIZE_KB' | 'PROVER_BROKER_STORE_MAP_SIZE_KB' | 'WS_DB_MAP_SIZE_KB' | 'DEBUG' | 'DEBUG_P2P_DISABLE_COLOCATION_PENALTY' | 'DEPLOY_AZTEC_CONTRACTS_SALT' | 'DEPLOY_AZTEC_CONTRACTS' | 'ENFORCE_FEES' | 'ETHEREUM_HOSTS' | 'FEE_JUICE_CONTRACT_ADDRESS' | 'FEE_JUICE_PORTAL_CONTRACT_ADDRESS' | 'FEE_RECIPIENT' | 'FORCE_COLOR' | 'GOVERNANCE_PROPOSER_CONTRACT_ADDRESS' | 'GOVERNANCE_PROPOSER_PAYLOAD_ADDRESS' | 'INBOX_CONTRACT_ADDRESS' | 'L1_CHAIN_ID' | '
|
|
1
|
+
export type EnvVar = 'ACVM_BINARY_PATH' | 'ACVM_WORKING_DIRECTORY' | 'GOVERNANCE_CONTRACT_ADDRESS' | 'API_KEY' | 'API_PREFIX' | 'ARCHIVER_MAX_LOGS' | 'ARCHIVER_POLLING_INTERVAL_MS' | 'ARCHIVER_URL' | 'ARCHIVER_VIEM_POLLING_INTERVAL_MS' | 'ARCHIVER_BATCH_SIZE' | 'ASSUME_PROVEN_THROUGH_BLOCK_NUMBER' | 'AZTEC_ADMIN_PORT' | 'AZTEC_NODE_ADMIN_URL' | 'AZTEC_NODE_URL' | 'AZTEC_PORT' | 'BB_BINARY_PATH' | 'BB_SKIP_CLEANUP' | 'BB_WORKING_DIRECTORY' | 'BOOTSTRAP_NODES' | 'BLOB_SINK_ARCHIVE_API_URL' | 'BLOB_SINK_PORT' | 'BLOB_SINK_URL' | 'BOT_DA_GAS_LIMIT' | 'BOT_FEE_PAYMENT_METHOD' | 'BOT_FLUSH_SETUP_TRANSACTIONS' | 'BOT_FOLLOW_CHAIN' | 'BOT_L2_GAS_LIMIT' | 'BOT_MAX_PENDING_TXS' | 'BOT_NO_START' | 'BOT_NO_WAIT_FOR_TRANSFERS' | 'BOT_L1_MNEMONIC' | 'BOT_L1_PRIVATE_KEY' | 'BOT_PRIVATE_KEY' | 'BOT_ACCOUNT_SALT' | 'BOT_PRIVATE_TRANSFERS_PER_TX' | 'BOT_PUBLIC_TRANSFERS_PER_TX' | 'BOT_PXE_URL' | 'BOT_RECIPIENT_ENCRYPTION_SECRET' | 'BOT_SKIP_PUBLIC_SIMULATION' | 'BOT_TOKEN_CONTRACT' | 'BOT_TOKEN_SALT' | 'BOT_TX_INTERVAL_SECONDS' | 'BOT_TX_MINED_WAIT_SECONDS' | 'BOT_MAX_CONSECUTIVE_ERRORS' | 'BOT_STOP_WHEN_UNHEALTHY' | 'BOT_AMM_TXS' | 'COINBASE' | 'DATA_DIRECTORY' | 'DATA_STORE_MAP_SIZE_KB' | 'ARCHIVER_STORE_MAP_SIZE_KB' | 'P2P_STORE_MAP_SIZE_KB' | 'PROVER_BROKER_STORE_MAP_SIZE_KB' | 'WS_DB_MAP_SIZE_KB' | 'DEBUG' | 'DEBUG_P2P_DISABLE_COLOCATION_PENALTY' | 'DEPLOY_AZTEC_CONTRACTS_SALT' | 'DEPLOY_AZTEC_CONTRACTS' | 'ENFORCE_FEES' | 'ETHEREUM_HOSTS' | 'FEE_JUICE_CONTRACT_ADDRESS' | 'FEE_JUICE_PORTAL_CONTRACT_ADDRESS' | 'FEE_RECIPIENT' | 'FORCE_COLOR' | 'GOVERNANCE_PROPOSER_CONTRACT_ADDRESS' | 'GOVERNANCE_PROPOSER_PAYLOAD_ADDRESS' | 'INBOX_CONTRACT_ADDRESS' | 'L1_CHAIN_ID' | 'L1_CONSENSUS_HOST_URLS' | 'L1_CONSENSUS_HOST_API_KEYS' | 'L1_CONSENSUS_HOST_API_KEY_HEADERS' | 'L1_PRIVATE_KEY' | 'LOG_JSON' | 'LOG_MULTILINE' | 'LOG_LEVEL' | 'MNEMONIC' | 'NETWORK_NAME' | 'NETWORK' | 'NO_PXE' | 'COIN_ISSUER_CONTRACT_ADDRESS' | 'USE_GCLOUD_LOGGING' | 'OTEL_EXPORTER_OTLP_METRICS_ENDPOINT' | 'OTEL_EXPORTER_OTLP_TRACES_ENDPOINT' | 'OTEL_EXPORTER_OTLP_LOGS_ENDPOINT' | 'OTEL_COLLECT_INTERVAL_MS' | 'OTEL_EXCLUDE_METRICS' | 'OTEL_EXPORT_TIMEOUT_MS' | 'OUTBOX_CONTRACT_ADDRESS' | 'P2P_BLOCK_CHECK_INTERVAL_MS' | 'P2P_BLOCK_REQUEST_BATCH_SIZE' | 'P2P_BOOTSTRAP_NODE_ENR_VERSION_CHECK' | 'P2P_BOOTSTRAP_NODES_AS_FULL_PEERS' | 'P2P_ENABLED' | 'P2P_GOSSIPSUB_D' | 'P2P_GOSSIPSUB_DHI' | 'P2P_GOSSIPSUB_DLO' | 'P2P_GOSSIPSUB_DLAZY' | 'P2P_GOSSIPSUB_FLOOD_PUBLISH' | 'P2P_GOSSIPSUB_INTERVAL_MS' | 'P2P_GOSSIPSUB_MCACHE_GOSSIP' | 'P2P_GOSSIPSUB_MCACHE_LENGTH' | 'P2P_GOSSIPSUB_TX_INVALID_MESSAGE_DELIVERIES_DECAY' | 'P2P_GOSSIPSUB_TX_INVALID_MESSAGE_DELIVERIES_WEIGHT' | 'P2P_GOSSIPSUB_TX_TOPIC_WEIGHT' | 'P2P_L2_QUEUE_SIZE' | 'P2P_MAX_PEERS' | 'P2P_PEER_CHECK_INTERVAL_MS' | 'P2P_PEER_PENALTY_VALUES' | 'P2P_QUERY_FOR_IP' | 'P2P_REQRESP_INDIVIDUAL_REQUEST_TIMEOUT_MS' | 'P2P_REQRESP_OVERALL_REQUEST_TIMEOUT_MS' | 'P2P_DOUBLE_SPEND_SEVERE_PEER_PENALTY_WINDOW' | 'P2P_LISTEN_ADDR' | 'P2P_PORT' | 'P2P_IP' | 'P2P_TX_POOL_KEEP_PROVEN_FOR' | 'P2P_ATTESTATION_POOL_KEEP_FOR' | 'P2P_ARCHIVED_TX_LIMIT' | 'PEER_ID_PRIVATE_KEY' | 'PROVER_AGENT_COUNT' | 'PROVER_AGENT_PROOF_TYPES' | 'PROVER_AGENT_POLL_INTERVAL_MS' | 'PROVER_BROKER_HOST' | 'PROVER_BROKER_JOB_TIMEOUT_MS' | 'PROVER_BROKER_POLL_INTERVAL_MS' | 'PROVER_BROKER_JOB_MAX_RETRIES' | 'PROVER_BROKER_BATCH_INTERVAL_MS' | 'PROVER_BROKER_BATCH_SIZE' | 'PROVER_BROKER_MAX_EPOCHS_TO_KEEP_RESULTS_FOR' | 'PROVER_COORDINATION_NODE_URL' | 'PROVER_FAILED_PROOF_STORE' | 'PROVER_ID' | 'PROVER_NODE_POLLING_INTERVAL_MS' | 'PROVER_NODE_MAX_PENDING_JOBS' | 'PROVER_NODE_MAX_PARALLEL_BLOCKS_PER_EPOCH' | 'PROVER_NODE_TX_GATHERING_TIMEOUT_MS' | 'PROVER_NODE_TX_GATHERING_INTERVAL_MS' | 'PROVER_NODE_TX_GATHERING_MAX_PARALLEL_REQUESTS' | 'PROVER_PUBLISH_RETRY_INTERVAL_MS' | 'PROVER_PUBLISHER_PRIVATE_KEY' | 'PROVER_REAL_PROOFS' | 'PROVER_TEST_DELAY_FACTOR' | 'PROVER_TEST_DELAY_MS' | 'PROVER_TEST_DELAY_TYPE' | 'PXE_L2_STARTING_BLOCK' | 'PXE_PROVER_ENABLED' | 'REGISTRY_CONTRACT_ADDRESS' | 'ROLLUP_CONTRACT_ADDRESS' | 'SENTINEL_ENABLED' | 'SENTINEL_HISTORY_LENGTH_IN_EPOCHS' | 'SEQ_ALLOWED_SETUP_FN' | 'SEQ_MAX_BLOCK_SIZE_IN_BYTES' | 'SEQ_MAX_TX_PER_BLOCK' | 'SEQ_MIN_TX_PER_BLOCK' | 'SEQ_MAX_DA_BLOCK_GAS' | 'SEQ_MAX_L2_BLOCK_GAS' | 'SEQ_PUBLISH_RETRY_INTERVAL_MS' | 'SEQ_PUBLISHER_PRIVATE_KEY' | 'SEQ_TX_POLLING_INTERVAL_MS' | 'SEQ_ENFORCE_TIME_TABLE' | 'SEQ_MAX_L1_TX_INCLUSION_TIME_INTO_SLOT' | 'SLASH_FACTORY_CONTRACT_ADDRESS' | 'STAKING_ASSET_CONTRACT_ADDRESS' | 'STAKING_ASSET_HANDLER_CONTRACT_ADDRESS' | 'SYNC_MODE' | 'SYNC_SNAPSHOTS_URL' | 'REWARD_DISTRIBUTOR_CONTRACT_ADDRESS' | 'TELEMETRY' | 'TEST_ACCOUNTS' | 'SPONSORED_FPC' | 'TX_GOSSIP_VERSION' | 'TXE_PORT' | 'VALIDATOR_ATTESTATIONS_POLLING_INTERVAL_MS' | 'VALIDATOR_DISABLED' | 'VALIDATOR_PRIVATE_KEY' | 'VALIDATOR_REEXECUTE' | 'ROLLUP_VERSION' | 'WS_BLOCK_CHECK_INTERVAL_MS' | 'WS_PROVEN_BLOCKS_ONLY' | 'WS_BLOCK_REQUEST_BATCH_SIZE' | 'VERIFIER_VIEM_POLLING_INTERVAL_MS' | 'L1_READER_VIEM_POLLING_INTERVAL_MS' | 'PROVER_VIEM_POLLING_INTERVAL_MS' | 'SEQ_VIEM_POLLING_INTERVAL_MS' | 'WS_DATA_DIRECTORY' | 'WS_NUM_HISTORIC_BLOCKS' | 'ETHEREUM_SLOT_DURATION' | 'AZTEC_SLOT_DURATION' | 'AZTEC_EPOCH_DURATION' | 'AZTEC_TARGET_COMMITTEE_SIZE' | 'AZTEC_PROOF_SUBMISSION_WINDOW' | 'AZTEC_MINIMUM_STAKE' | 'AZTEC_MANA_TARGET' | 'AZTEC_PROVING_COST_PER_MANA' | 'AZTEC_SLASHING_QUORUM' | 'AZTEC_SLASHING_ROUND_SIZE' | 'AZTEC_GOVERNANCE_PROPOSER_QUORUM' | 'AZTEC_GOVERNANCE_PROPOSER_ROUND_SIZE' | 'L1_GAS_LIMIT_BUFFER_PERCENTAGE' | 'L1_GAS_PRICE_MIN' | 'L1_GAS_PRICE_MAX' | 'L1_BLOB_FEE_PER_GAS_MAX' | 'L1_PRIORITY_FEE_BUMP_PERCENTAGE' | 'L1_PRIORITY_FEE_RETRY_BUMP_PERCENTAGE' | 'L1_FIXED_PRIORITY_FEE_PER_GAS' | 'L1_TX_MONITOR_MAX_ATTEMPTS' | 'L1_TX_MONITOR_CHECK_INTERVAL_MS' | 'L1_TX_MONITOR_STALL_TIME_MS' | 'L1_TX_MONITOR_TX_TIMEOUT_MS' | 'L1_TX_PROPAGATION_MAX_QUERY_ATTEMPTS' | 'FAUCET_MNEMONIC_ACCOUNT_INDEX' | 'FAUCET_ETH_AMOUNT' | 'FAUCET_INTERVAL_MS' | 'FAUCET_L1_ASSETS' | 'K8S_POD_NAME' | 'K8S_POD_UID' | 'K8S_NAMESPACE_NAME' | 'CUSTOM_FORWARDER_CONTRACT_ADDRESS' | 'P2P_TRUSTED_PEERS' | 'FEE_ASSET_HANDLER_CONTRACT_ADDRESS';
|
|
2
2
|
//# sourceMappingURL=env_var.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"env_var.d.ts","sourceRoot":"","sources":["../../src/config/env_var.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,MAAM,GACd,kBAAkB,GAClB,wBAAwB,GACxB,6BAA6B,GAC7B,SAAS,GACT,YAAY,GACZ,mBAAmB,GACnB,8BAA8B,GAC9B,cAAc,GACd,mCAAmC,GACnC,qBAAqB,GACrB,oCAAoC,GACpC,kBAAkB,GAClB,sBAAsB,GACtB,gBAAgB,GAChB,YAAY,GACZ,gBAAgB,GAChB,iBAAiB,GACjB,sBAAsB,GACtB,iBAAiB,GACjB,2BAA2B,GAC3B,gBAAgB,GAChB,eAAe,GACf,kBAAkB,GAClB,wBAAwB,GACxB,8BAA8B,GAC9B,kBAAkB,GAClB,kBAAkB,GAClB,qBAAqB,GACrB,cAAc,GACd,2BAA2B,GAC3B,iBAAiB,GACjB,oBAAoB,GACpB,iBAAiB,GACjB,kBAAkB,GAClB,8BAA8B,GAC9B,6BAA6B,GAC7B,aAAa,GACb,iCAAiC,GACjC,4BAA4B,GAC5B,oBAAoB,GACpB,gBAAgB,GAChB,yBAAyB,GACzB,2BAA2B,GAC3B,4BAA4B,GAC5B,yBAAyB,GACzB,aAAa,GACb,UAAU,GACV,gBAAgB,GAChB,wBAAwB,GACxB,4BAA4B,GAC5B,uBAAuB,GACvB,iCAAiC,GACjC,mBAAmB,GACnB,OAAO,GACP,sCAAsC,GACtC,6BAA6B,GAC7B,wBAAwB,GACxB,cAAc,GACd,gBAAgB,GAChB,4BAA4B,GAC5B,mCAAmC,GACnC,eAAe,GACf,aAAa,GACb,sCAAsC,GACtC,qCAAqC,GACrC,wBAAwB,GACxB,aAAa,GACb,
|
|
1
|
+
{"version":3,"file":"env_var.d.ts","sourceRoot":"","sources":["../../src/config/env_var.ts"],"names":[],"mappings":"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"}
|
|
@@ -7,6 +7,8 @@ export * from './signature.js';
|
|
|
7
7
|
* TODO: Replace with codegen api on bb.js.
|
|
8
8
|
*/
|
|
9
9
|
export declare class Ecdsa {
|
|
10
|
+
private curve;
|
|
11
|
+
constructor(curve?: 'secp256k1' | 'secp256r1');
|
|
10
12
|
/**
|
|
11
13
|
* Computes a secp256k1 public key from a private key.
|
|
12
14
|
* @param privateKey - Secp256k1 private key.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/crypto/ecdsa/index.ts"],"names":[],"mappings":";;AAIA,OAAO,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAEhD,cAAc,gBAAgB,CAAC;AAE/B;;;GAGG;AACH,qBAAa,KAAK;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/crypto/ecdsa/index.ts"],"names":[],"mappings":";;AAIA,OAAO,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAEhD,cAAc,gBAAgB,CAAC;AAE/B;;;GAGG;AACH,qBAAa,KAAK;IACJ,OAAO,CAAC,KAAK;gBAAL,KAAK,GAAE,WAAW,GAAG,WAAyB;IAClE;;;;OAIG;IACU,gBAAgB,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAQlE;;;;;OAKG;IACU,kBAAkB,CAAC,GAAG,EAAE,UAAU,EAAE,UAAU,EAAE,MAAM;IAanE;;;;;OAKG;IACU,gBAAgB,CAAC,GAAG,EAAE,UAAU,EAAE,GAAG,EAAE,cAAc,GAAG,OAAO,CAAC,MAAM,CAAC;IAapF;;;;;;OAMG;IACU,eAAe,CAAC,GAAG,EAAE,UAAU,EAAE,MAAM,EAAE,MAAM,EAAE,GAAG,EAAE,cAAc;CAYlF"}
|
|
@@ -7,13 +7,17 @@ export * from './signature.js';
|
|
|
7
7
|
* ECDSA signature construction and helper operations.
|
|
8
8
|
* TODO: Replace with codegen api on bb.js.
|
|
9
9
|
*/ export class Ecdsa {
|
|
10
|
+
curve;
|
|
11
|
+
constructor(curve = 'secp256k1'){
|
|
12
|
+
this.curve = curve;
|
|
13
|
+
}
|
|
10
14
|
/**
|
|
11
15
|
* Computes a secp256k1 public key from a private key.
|
|
12
16
|
* @param privateKey - Secp256k1 private key.
|
|
13
17
|
* @returns A secp256k1 public key.
|
|
14
18
|
*/ async computePublicKey(privateKey) {
|
|
15
19
|
const api = await BarretenbergSync.initSingleton(process.env.BB_WASM_PATH);
|
|
16
|
-
const [result] = api.getWasm().callWasmExport('
|
|
20
|
+
const [result] = api.getWasm().callWasmExport(`ecdsa_${this.curve === 'secp256r1' ? 'r' : ''}_compute_public_key`, [
|
|
17
21
|
privateKey
|
|
18
22
|
], [
|
|
19
23
|
64
|
|
@@ -31,7 +35,7 @@ export * from './signature.js';
|
|
|
31
35
|
numToInt32BE(msg.length),
|
|
32
36
|
msg
|
|
33
37
|
]);
|
|
34
|
-
const [r, s, v] = api.getWasm().callWasmExport('
|
|
38
|
+
const [r, s, v] = api.getWasm().callWasmExport(`ecdsa_${this.curve === 'secp256r1' ? 'r' : ''}_construct_signature_`, [
|
|
35
39
|
messageArray,
|
|
36
40
|
privateKey
|
|
37
41
|
], [
|
|
@@ -52,7 +56,7 @@ export * from './signature.js';
|
|
|
52
56
|
numToInt32BE(msg.length),
|
|
53
57
|
msg
|
|
54
58
|
]);
|
|
55
|
-
const [result] = api.getWasm().callWasmExport('
|
|
59
|
+
const [result] = api.getWasm().callWasmExport(`ecdsa_${this.curve === 'secp256r1' ? 'r' : ''}_recover_public_key_from_signature_`, [
|
|
56
60
|
messageArray,
|
|
57
61
|
sig.r,
|
|
58
62
|
sig.s,
|
|
@@ -74,7 +78,7 @@ export * from './signature.js';
|
|
|
74
78
|
numToInt32BE(msg.length),
|
|
75
79
|
msg
|
|
76
80
|
]);
|
|
77
|
-
const [result] = api.getWasm().callWasmExport('
|
|
81
|
+
const [result] = api.getWasm().callWasmExport(`ecdsa_${this.curve === 'secp256r1' ? 'r' : ''}_verify_signature_`, [
|
|
78
82
|
messageArray,
|
|
79
83
|
pubKey,
|
|
80
84
|
sig.r,
|
|
@@ -128,6 +128,8 @@ export declare class EthAddress {
|
|
|
128
128
|
* @returns The EthAddress.
|
|
129
129
|
*/
|
|
130
130
|
static fromBuffer(buffer: Buffer | BufferReader): EthAddress;
|
|
131
|
+
/** Converts a number into an address. Useful for testing. */
|
|
132
|
+
static fromNumber(num: bigint | number): EthAddress;
|
|
131
133
|
toJSON(): `0x${string}`;
|
|
132
134
|
static get schema(): import("zod").ZodType<EthAddress, any, string>;
|
|
133
135
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/eth-address/index.ts"],"names":[],"mappings":";;;AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,MAAM,CAAC;AAI/B,OAAO,EAAE,EAAE,EAAE,MAAM,oBAAoB,CAAC;AAExC,OAAO,EAAE,YAAY,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAC;AAIlE;;;;;GAKG;AACH,qBAAa,UAAU;IAMT,OAAO,CAAC,MAAM;IAL1B,gDAAgD;IAChD,OAAc,aAAa,SAAM;IACjC,0EAA0E;IAC1E,OAAc,IAAI,aAA0D;gBAExD,MAAM,EAAE,MAAM;IAMlC;;;;;;;OAOG;WACW,UAAU,CAAC,OAAO,EAAE,MAAM;IAOxC;;;;;;OAMG;WACW,MAAM;IAIpB;;;;;;;;OAQG;WACW,SAAS,CAAC,OAAO,EAAE,MAAM;IAYvC;;;;;OAKG;IACI,MAAM;IAIb;;;;;;;OAOG;WACW,oBAAoB,CAAC,OAAO,EAAE,MAAM;IAgBlD;;;;;;;;;OASG;WACW,iBAAiB,CAAC,OAAO,EAAE,MAAM;IAoB/C;;;;;;OAMG;IACI,MAAM,CAAC,GAAG,EAAE,UAAU;IAI7B;;;;;;OAMG;IACI,QAAQ;IAIf,CAAC,OAAO,CAAC,MAAM,CAAC;IAIhB;;;;;;OAMG;IACI,gBAAgB;IAIvB;;;OAGG;IACI,QAAQ;IAIf;;;;;;OAMG;IACI,UAAU;IAMjB;;;;OAIG;IACI,OAAO;IAId;;;;OAIG;IACH,MAAM,CAAC,SAAS,CAAC,EAAE,EAAE,EAAE,GAAG,UAAU;IAIpC,MAAM,CAAC,UAAU,CAAC,MAAM,EAAE,EAAE,EAAE,GAAG,WAAW;IAK5C;;;;OAIG;IACH,MAAM,CAAC,UAAU,CAAC,MAAM,EAAE,MAAM,GAAG,YAAY,GAAG,UAAU;IAK5D,MAAM;IAIN,MAAM,KAAK,MAAM,mDAEhB;CACF"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/eth-address/index.ts"],"names":[],"mappings":";;;AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,MAAM,CAAC;AAI/B,OAAO,EAAE,EAAE,EAAE,MAAM,oBAAoB,CAAC;AAExC,OAAO,EAAE,YAAY,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAC;AAIlE;;;;;GAKG;AACH,qBAAa,UAAU;IAMT,OAAO,CAAC,MAAM;IAL1B,gDAAgD;IAChD,OAAc,aAAa,SAAM;IACjC,0EAA0E;IAC1E,OAAc,IAAI,aAA0D;gBAExD,MAAM,EAAE,MAAM;IAMlC;;;;;;;OAOG;WACW,UAAU,CAAC,OAAO,EAAE,MAAM;IAOxC;;;;;;OAMG;WACW,MAAM;IAIpB;;;;;;;;OAQG;WACW,SAAS,CAAC,OAAO,EAAE,MAAM;IAYvC;;;;;OAKG;IACI,MAAM;IAIb;;;;;;;OAOG;WACW,oBAAoB,CAAC,OAAO,EAAE,MAAM;IAgBlD;;;;;;;;;OASG;WACW,iBAAiB,CAAC,OAAO,EAAE,MAAM;IAoB/C;;;;;;OAMG;IACI,MAAM,CAAC,GAAG,EAAE,UAAU;IAI7B;;;;;;OAMG;IACI,QAAQ;IAIf,CAAC,OAAO,CAAC,MAAM,CAAC;IAIhB;;;;;;OAMG;IACI,gBAAgB;IAIvB;;;OAGG;IACI,QAAQ;IAIf;;;;;;OAMG;IACI,UAAU;IAMjB;;;;OAIG;IACI,OAAO;IAId;;;;OAIG;IACH,MAAM,CAAC,SAAS,CAAC,EAAE,EAAE,EAAE,GAAG,UAAU;IAIpC,MAAM,CAAC,UAAU,CAAC,MAAM,EAAE,EAAE,EAAE,GAAG,WAAW;IAK5C;;;;OAIG;IACH,MAAM,CAAC,UAAU,CAAC,MAAM,EAAE,MAAM,GAAG,YAAY,GAAG,UAAU;IAK5D,6DAA6D;IAC7D,MAAM,CAAC,UAAU,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,GAAG,UAAU;IAMnD,MAAM;IAIN,MAAM,KAAK,MAAM,mDAEhB;CACF"}
|
|
@@ -187,6 +187,11 @@ import { bufferToHex } from '../string/index.js';
|
|
|
187
187
|
const reader = BufferReader.asReader(buffer);
|
|
188
188
|
return new EthAddress(reader.readBytes(EthAddress.SIZE_IN_BYTES));
|
|
189
189
|
}
|
|
190
|
+
/** Converts a number into an address. Useful for testing. */ static fromNumber(num) {
|
|
191
|
+
const buffer = Buffer.alloc(EthAddress.SIZE_IN_BYTES);
|
|
192
|
+
buffer.writeBigUInt64BE(BigInt(num), 0);
|
|
193
|
+
return new EthAddress(buffer);
|
|
194
|
+
}
|
|
190
195
|
toJSON() {
|
|
191
196
|
return this.toString();
|
|
192
197
|
}
|
package/dest/fs/index.d.ts
CHANGED
package/dest/fs/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/fs/index.ts"],"names":[],"mappings":"AAAA,cAAc,iBAAiB,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/fs/index.ts"],"names":[],"mappings":"AAAA,cAAc,iBAAiB,CAAC;AAChC,cAAc,iBAAiB,CAAC"}
|
package/dest/fs/index.js
CHANGED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"try_rm_dir.d.ts","sourceRoot":"","sources":["../../src/fs/try_rm_dir.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,iBAAiB,CAAC;AAE9C,wBAAsB,QAAQ,CAAC,GAAG,EAAE,MAAM,GAAG,SAAS,EAAE,MAAM,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAUtF"}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import { rm } from 'fs/promises';
|
|
2
|
+
export async function tryRmDir(dir, logger) {
|
|
3
|
+
if (dir === undefined) {
|
|
4
|
+
return;
|
|
5
|
+
}
|
|
6
|
+
try {
|
|
7
|
+
logger?.debug(`Cleaning up directory at ${dir}`);
|
|
8
|
+
await rm(dir, {
|
|
9
|
+
recursive: true,
|
|
10
|
+
force: true,
|
|
11
|
+
maxRetries: 3
|
|
12
|
+
});
|
|
13
|
+
} catch (err) {
|
|
14
|
+
logger?.warn(`Failed to delete directory at ${dir}: ${err}`);
|
|
15
|
+
}
|
|
16
|
+
}
|
package/dest/log/pino-logger.js
CHANGED
|
@@ -21,7 +21,7 @@ export declare class RunningPromise {
|
|
|
21
21
|
/**
|
|
22
22
|
* Starts the running promise.
|
|
23
23
|
*/
|
|
24
|
-
start(): this
|
|
24
|
+
start(): this;
|
|
25
25
|
/**
|
|
26
26
|
* Stops the running promise, resolves any pending interruptible sleep,
|
|
27
27
|
* and waits for the currently executing function to complete.
|
|
@@ -38,7 +38,7 @@ export function makeLoggingErrorHandler(logger, ...ignoredErrors) {
|
|
|
38
38
|
*/ start() {
|
|
39
39
|
if (this.running) {
|
|
40
40
|
this.logger.warn(`Attempted to start running promise that was already started`);
|
|
41
|
-
return;
|
|
41
|
+
return this;
|
|
42
42
|
}
|
|
43
43
|
this.running = true;
|
|
44
44
|
const poll = async ()=>{
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@aztec/foundation",
|
|
3
|
-
"version": "0.82.
|
|
3
|
+
"version": "0.82.3-nightly.20250403",
|
|
4
4
|
"type": "module",
|
|
5
5
|
"main": "./dest/index.js",
|
|
6
6
|
"types": "./dest/index.d.ts",
|
|
@@ -11,6 +11,7 @@
|
|
|
11
11
|
"./abi": "./dest/abi/index.js",
|
|
12
12
|
"./async-map": "./dest/async-map/index.js",
|
|
13
13
|
"./async-pool": "./dest/async-pool/index.js",
|
|
14
|
+
"./bigint": "./dest/bigint/index.js",
|
|
14
15
|
"./collection": "./dest/collection/index.js",
|
|
15
16
|
"./config": "./dest/config/index.js",
|
|
16
17
|
"./crypto": "./dest/crypto/index.js",
|
|
@@ -103,7 +104,7 @@
|
|
|
103
104
|
]
|
|
104
105
|
},
|
|
105
106
|
"dependencies": {
|
|
106
|
-
"@aztec/bb.js": "0.82.
|
|
107
|
+
"@aztec/bb.js": "0.82.3-nightly.20250403",
|
|
107
108
|
"@koa/cors": "^5.0.0",
|
|
108
109
|
"@noble/curves": "^1.2.0",
|
|
109
110
|
"bn.js": "^5.2.1",
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
/** Returns minimum value across a list of bigints. */
|
|
2
|
+
export function minBigint(...values: bigint[]): bigint {
|
|
3
|
+
if (values.length === 0) {
|
|
4
|
+
throw new Error('Cannot get min of empty array');
|
|
5
|
+
}
|
|
6
|
+
return values.reduce((min, value) => (value < min ? value : min), values[0]);
|
|
7
|
+
}
|
package/src/collection/array.ts
CHANGED
|
@@ -201,3 +201,16 @@ export function stdDev(values: number[]) {
|
|
|
201
201
|
}
|
|
202
202
|
return Math.sqrt(variance(values)!);
|
|
203
203
|
}
|
|
204
|
+
|
|
205
|
+
/** Counts how many items from the beginning of the array match the given predicate. */
|
|
206
|
+
export function countWhile<T>(collection: T[], predicate: (x: T) => boolean): number {
|
|
207
|
+
let count = 0;
|
|
208
|
+
for (const item of collection) {
|
|
209
|
+
if (predicate(item)) {
|
|
210
|
+
count++;
|
|
211
|
+
} else {
|
|
212
|
+
break;
|
|
213
|
+
}
|
|
214
|
+
}
|
|
215
|
+
return count;
|
|
216
|
+
}
|
package/src/collection/object.ts
CHANGED
|
@@ -50,3 +50,17 @@ export function omit<T extends object>(object: T, ...props: string[]): Partial<T
|
|
|
50
50
|
}
|
|
51
51
|
return obj;
|
|
52
52
|
}
|
|
53
|
+
|
|
54
|
+
/** Equivalent to Object.entries but preserves types. */
|
|
55
|
+
export function getEntries<T extends Record<PropertyKey, unknown>>(obj: T): { [K in keyof T]: [K, T[K]] }[keyof T][] {
|
|
56
|
+
// See https://stackoverflow.com/a/76176570
|
|
57
|
+
return Object.entries(obj) as { [K in keyof T]: [K, T[K]] }[keyof T][];
|
|
58
|
+
}
|
|
59
|
+
|
|
60
|
+
/** Equivalent to Object.fromEntries but preserves types. */
|
|
61
|
+
export function fromEntries<const T extends ReadonlyArray<readonly [PropertyKey, unknown]>>(
|
|
62
|
+
entries: T,
|
|
63
|
+
): { [K in T[number] as K[0]]: K[1] } {
|
|
64
|
+
// See https://stackoverflow.com/a/76176570
|
|
65
|
+
return Object.fromEntries(entries) as { [K in T[number] as K[0]]: K[1] };
|
|
66
|
+
}
|
package/src/config/env_var.ts
CHANGED
|
@@ -66,9 +66,9 @@ export type EnvVar =
|
|
|
66
66
|
| 'GOVERNANCE_PROPOSER_PAYLOAD_ADDRESS'
|
|
67
67
|
| 'INBOX_CONTRACT_ADDRESS'
|
|
68
68
|
| 'L1_CHAIN_ID'
|
|
69
|
-
| '
|
|
70
|
-
| '
|
|
71
|
-
| '
|
|
69
|
+
| 'L1_CONSENSUS_HOST_URLS'
|
|
70
|
+
| 'L1_CONSENSUS_HOST_API_KEYS'
|
|
71
|
+
| 'L1_CONSENSUS_HOST_API_KEY_HEADERS'
|
|
72
72
|
| 'L1_PRIVATE_KEY'
|
|
73
73
|
| 'LOG_JSON'
|
|
74
74
|
| 'LOG_MULTILINE'
|
|
@@ -117,12 +117,10 @@ export type EnvVar =
|
|
|
117
117
|
| 'P2P_ATTESTATION_POOL_KEEP_FOR'
|
|
118
118
|
| 'P2P_ARCHIVED_TX_LIMIT'
|
|
119
119
|
| 'PEER_ID_PRIVATE_KEY'
|
|
120
|
-
| 'PROVER_AGENT_CONCURRENCY'
|
|
121
120
|
| 'PROVER_AGENT_COUNT'
|
|
122
121
|
| 'PROVER_AGENT_PROOF_TYPES'
|
|
123
122
|
| 'PROVER_AGENT_POLL_INTERVAL_MS'
|
|
124
123
|
| 'PROVER_BROKER_HOST'
|
|
125
|
-
| 'PROVER_BROKER_ENABLED'
|
|
126
124
|
| 'PROVER_BROKER_JOB_TIMEOUT_MS'
|
|
127
125
|
| 'PROVER_BROKER_POLL_INTERVAL_MS'
|
|
128
126
|
| 'PROVER_BROKER_JOB_MAX_RETRIES'
|
|
@@ -132,7 +130,6 @@ export type EnvVar =
|
|
|
132
130
|
| 'PROVER_COORDINATION_NODE_URL'
|
|
133
131
|
| 'PROVER_FAILED_PROOF_STORE'
|
|
134
132
|
| 'PROVER_ID'
|
|
135
|
-
| 'PROVER_JOB_TIMEOUT_MS'
|
|
136
133
|
| 'PROVER_NODE_POLLING_INTERVAL_MS'
|
|
137
134
|
| 'PROVER_NODE_MAX_PENDING_JOBS'
|
|
138
135
|
| 'PROVER_NODE_MAX_PARALLEL_BLOCKS_PER_EPOCH'
|
|
@@ -149,6 +146,8 @@ export type EnvVar =
|
|
|
149
146
|
| 'PXE_PROVER_ENABLED'
|
|
150
147
|
| 'REGISTRY_CONTRACT_ADDRESS'
|
|
151
148
|
| 'ROLLUP_CONTRACT_ADDRESS'
|
|
149
|
+
| 'SENTINEL_ENABLED'
|
|
150
|
+
| 'SENTINEL_HISTORY_LENGTH_IN_EPOCHS'
|
|
152
151
|
| 'SEQ_ALLOWED_SETUP_FN'
|
|
153
152
|
| 'SEQ_MAX_BLOCK_SIZE_IN_BYTES'
|
|
154
153
|
| 'SEQ_MAX_TX_PER_BLOCK'
|
|
@@ -162,16 +161,20 @@ export type EnvVar =
|
|
|
162
161
|
| 'SEQ_MAX_L1_TX_INCLUSION_TIME_INTO_SLOT'
|
|
163
162
|
| 'SLASH_FACTORY_CONTRACT_ADDRESS'
|
|
164
163
|
| 'STAKING_ASSET_CONTRACT_ADDRESS'
|
|
164
|
+
| 'STAKING_ASSET_HANDLER_CONTRACT_ADDRESS'
|
|
165
|
+
| 'SYNC_MODE'
|
|
166
|
+
| 'SYNC_SNAPSHOTS_URL'
|
|
165
167
|
| 'REWARD_DISTRIBUTOR_CONTRACT_ADDRESS'
|
|
166
168
|
| 'TELEMETRY'
|
|
167
169
|
| 'TEST_ACCOUNTS'
|
|
170
|
+
| 'SPONSORED_FPC'
|
|
168
171
|
| 'TX_GOSSIP_VERSION'
|
|
169
172
|
| 'TXE_PORT'
|
|
170
173
|
| 'VALIDATOR_ATTESTATIONS_POLLING_INTERVAL_MS'
|
|
171
174
|
| 'VALIDATOR_DISABLED'
|
|
172
175
|
| 'VALIDATOR_PRIVATE_KEY'
|
|
173
176
|
| 'VALIDATOR_REEXECUTE'
|
|
174
|
-
| '
|
|
177
|
+
| 'ROLLUP_VERSION'
|
|
175
178
|
| 'WS_BLOCK_CHECK_INTERVAL_MS'
|
|
176
179
|
| 'WS_PROVEN_BLOCKS_ONLY'
|
|
177
180
|
| 'WS_BLOCK_REQUEST_BATCH_SIZE'
|
|
@@ -11,6 +11,7 @@ export * from './signature.js';
|
|
|
11
11
|
* TODO: Replace with codegen api on bb.js.
|
|
12
12
|
*/
|
|
13
13
|
export class Ecdsa {
|
|
14
|
+
constructor(private curve: 'secp256k1' | 'secp256r1' = 'secp256k1') {}
|
|
14
15
|
/**
|
|
15
16
|
* Computes a secp256k1 public key from a private key.
|
|
16
17
|
* @param privateKey - Secp256k1 private key.
|
|
@@ -18,7 +19,9 @@ export class Ecdsa {
|
|
|
18
19
|
*/
|
|
19
20
|
public async computePublicKey(privateKey: Buffer): Promise<Buffer> {
|
|
20
21
|
const api = await BarretenbergSync.initSingleton(process.env.BB_WASM_PATH);
|
|
21
|
-
const [result] = api
|
|
22
|
+
const [result] = api
|
|
23
|
+
.getWasm()
|
|
24
|
+
.callWasmExport(`ecdsa_${this.curve === 'secp256r1' ? 'r' : ''}_compute_public_key`, [privateKey], [64]);
|
|
22
25
|
return Buffer.from(result);
|
|
23
26
|
}
|
|
24
27
|
|
|
@@ -33,7 +36,11 @@ export class Ecdsa {
|
|
|
33
36
|
const messageArray = concatenateUint8Arrays([numToInt32BE(msg.length), msg]);
|
|
34
37
|
const [r, s, v] = api
|
|
35
38
|
.getWasm()
|
|
36
|
-
.callWasmExport(
|
|
39
|
+
.callWasmExport(
|
|
40
|
+
`ecdsa_${this.curve === 'secp256r1' ? 'r' : ''}_construct_signature_`,
|
|
41
|
+
[messageArray, privateKey],
|
|
42
|
+
[32, 32, 1],
|
|
43
|
+
);
|
|
37
44
|
return new EcdsaSignature(Buffer.from(r), Buffer.from(s), Buffer.from(v));
|
|
38
45
|
}
|
|
39
46
|
|
|
@@ -48,7 +55,11 @@ export class Ecdsa {
|
|
|
48
55
|
const messageArray = concatenateUint8Arrays([numToInt32BE(msg.length), msg]);
|
|
49
56
|
const [result] = api
|
|
50
57
|
.getWasm()
|
|
51
|
-
.callWasmExport(
|
|
58
|
+
.callWasmExport(
|
|
59
|
+
`ecdsa_${this.curve === 'secp256r1' ? 'r' : ''}_recover_public_key_from_signature_`,
|
|
60
|
+
[messageArray, sig.r, sig.s, sig.v],
|
|
61
|
+
[64],
|
|
62
|
+
);
|
|
52
63
|
return Buffer.from(result);
|
|
53
64
|
}
|
|
54
65
|
|
|
@@ -64,7 +75,11 @@ export class Ecdsa {
|
|
|
64
75
|
const messageArray = concatenateUint8Arrays([numToInt32BE(msg.length), msg]);
|
|
65
76
|
const [result] = api
|
|
66
77
|
.getWasm()
|
|
67
|
-
.callWasmExport(
|
|
78
|
+
.callWasmExport(
|
|
79
|
+
`ecdsa_${this.curve === 'secp256r1' ? 'r' : ''}_verify_signature_`,
|
|
80
|
+
[messageArray, pubKey, sig.r, sig.s, sig.v],
|
|
81
|
+
[1],
|
|
82
|
+
);
|
|
68
83
|
return result[0] === 1;
|
|
69
84
|
}
|
|
70
85
|
}
|
package/src/eth-address/index.ts
CHANGED
|
@@ -228,6 +228,13 @@ export class EthAddress {
|
|
|
228
228
|
return new EthAddress(reader.readBytes(EthAddress.SIZE_IN_BYTES));
|
|
229
229
|
}
|
|
230
230
|
|
|
231
|
+
/** Converts a number into an address. Useful for testing. */
|
|
232
|
+
static fromNumber(num: bigint | number): EthAddress {
|
|
233
|
+
const buffer = Buffer.alloc(EthAddress.SIZE_IN_BYTES);
|
|
234
|
+
buffer.writeBigUInt64BE(BigInt(num), 0);
|
|
235
|
+
return new EthAddress(buffer);
|
|
236
|
+
}
|
|
237
|
+
|
|
231
238
|
toJSON() {
|
|
232
239
|
return this.toString();
|
|
233
240
|
}
|
package/src/fs/index.ts
CHANGED
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import { rm } from 'fs/promises';
|
|
2
|
+
|
|
3
|
+
import type { Logger } from '../log/index.js';
|
|
4
|
+
|
|
5
|
+
export async function tryRmDir(dir: string | undefined, logger?: Logger): Promise<void> {
|
|
6
|
+
if (dir === undefined) {
|
|
7
|
+
return;
|
|
8
|
+
}
|
|
9
|
+
try {
|
|
10
|
+
logger?.debug(`Cleaning up directory at ${dir}`);
|
|
11
|
+
await rm(dir, { recursive: true, force: true, maxRetries: 3 });
|
|
12
|
+
} catch (err) {
|
|
13
|
+
logger?.warn(`Failed to delete directory at ${dir}: ${err}`);
|
|
14
|
+
}
|
|
15
|
+
}
|
package/src/log/pino-logger.ts
CHANGED