@aztec/foundation 0.0.1-commit.3e3d0c9cd → 0.0.1-commit.3f296a7d2
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/branded-types/slot.d.ts +4 -1
- package/dest/branded-types/slot.d.ts.map +1 -1
- package/dest/branded-types/slot.js +3 -0
- package/dest/config/env_var.d.ts +2 -2
- package/dest/config/env_var.d.ts.map +1 -1
- package/dest/crypto/poseidon/index.d.ts +1 -1
- package/dest/crypto/poseidon/index.d.ts.map +1 -1
- package/dest/crypto/poseidon/index.js +40 -33
- package/dest/fifo/fifo_frame_reader.d.ts +41 -0
- package/dest/fifo/fifo_frame_reader.d.ts.map +1 -0
- package/dest/fifo/fifo_frame_reader.js +74 -0
- package/dest/fifo/index.d.ts +2 -0
- package/dest/fifo/index.d.ts.map +1 -0
- package/dest/fifo/index.js +1 -0
- package/package.json +3 -2
- package/src/branded-types/slot.ts +5 -0
- package/src/config/env_var.ts +6 -0
- package/src/crypto/poseidon/index.ts +42 -34
- package/src/fifo/fifo_frame_reader.ts +98 -0
- package/src/fifo/index.ts +1 -0
|
@@ -31,6 +31,9 @@ export declare namespace SlotNumber {
|
|
|
31
31
|
export declare namespace SlotNumber {
|
|
32
32
|
var isValid: (value: unknown) => value is SlotNumber;
|
|
33
33
|
}
|
|
34
|
+
export declare namespace SlotNumber {
|
|
35
|
+
var add: (sn: SlotNumber, increment: number) => SlotNumber;
|
|
36
|
+
}
|
|
34
37
|
export declare namespace SlotNumber {
|
|
35
38
|
var ZERO: SlotNumber;
|
|
36
39
|
}
|
|
@@ -39,4 +42,4 @@ export declare namespace SlotNumber {
|
|
|
39
42
|
* Accepts numbers, bigints, or strings and coerces them to SlotNumber.
|
|
40
43
|
*/
|
|
41
44
|
export declare const SlotNumberSchema: z.ZodEffects<z.ZodPipeline<z.ZodUnion<[z.ZodNumber, z.ZodBigInt, z.ZodString]>, z.ZodNumber>, SlotNumber, string | number | bigint>;
|
|
42
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
45
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2xvdC5kLnRzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2JyYW5kZWQtdHlwZXMvc2xvdC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsQ0FBQyxFQUFFLE1BQU0sS0FBSyxDQUFDO0FBRXhCLE9BQU8sS0FBSyxFQUFFLE9BQU8sRUFBRSxNQUFNLFlBQVksQ0FBQztBQUUxQzs7Ozs7Ozs7Ozs7OztHQWFHO0FBQ0gsTUFBTSxNQUFNLFVBQVUsR0FBRyxPQUFPLENBQUMsTUFBTSxFQUFFLFlBQVksQ0FBQyxDQUFDO0FBRXZEOzs7OztHQUtHO0FBQ0gsd0JBQWdCLFVBQVUsQ0FBQyxLQUFLLEVBQUUsTUFBTSxHQUFHLFVBQVUsQ0FRcEQ7Ozs7Ozs7Ozs7Ozs7Ozs7QUFtREQ7OztHQUdHO0FBQ0gsZUFBTyxNQUFNLGdCQUFnQixxSUFHVyxDQUFDIn0=
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"slot.d.ts","sourceRoot":"","sources":["../../src/branded-types/slot.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,YAAY,CAAC;AAE1C;;;;;;;;;;;;;GAaG;AACH,MAAM,MAAM,UAAU,GAAG,OAAO,CAAC,MAAM,EAAE,YAAY,CAAC,CAAC;AAEvD;;;;;GAKG;AACH,wBAAgB,UAAU,CAAC,KAAK,EAAE,MAAM,GAAG,UAAU,CAQpD
|
|
1
|
+
{"version":3,"file":"slot.d.ts","sourceRoot":"","sources":["../../src/branded-types/slot.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,YAAY,CAAC;AAE1C;;;;;;;;;;;;;GAaG;AACH,MAAM,MAAM,UAAU,GAAG,OAAO,CAAC,MAAM,EAAE,YAAY,CAAC,CAAC;AAEvD;;;;;GAKG;AACH,wBAAgB,UAAU,CAAC,KAAK,EAAE,MAAM,GAAG,UAAU,CAQpD;;;;;;;;;;;;;;;;AAmDD;;;GAGG;AACH,eAAO,MAAM,gBAAgB,qIAGW,CAAC"}
|
|
@@ -46,6 +46,9 @@ import { z } from 'zod';
|
|
|
46
46
|
*/ SlotNumber.isValid = function(value) {
|
|
47
47
|
return typeof value === 'number' && Number.isInteger(value) && value >= 0;
|
|
48
48
|
};
|
|
49
|
+
/** Increments a SlotNumber by a given value. */ SlotNumber.add = function(sn, increment) {
|
|
50
|
+
return SlotNumber(sn + increment);
|
|
51
|
+
};
|
|
49
52
|
/**
|
|
50
53
|
* The zero slot value.
|
|
51
54
|
*/ SlotNumber.ZERO = SlotNumber(0);
|
package/dest/config/env_var.d.ts
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
export type EnvVar = 'REGISTRY_CONTRACT_ADDRESS' | 'FEE_ASSET_HANDLER_CONTRACT_ADDRESS' | 'SLASH_FACTORY_CONTRACT_ADDRESS' | 'ACVM_BINARY_PATH' | 'ACVM_WORKING_DIRECTORY' | 'API_KEY' | 'API_PREFIX' | 'ARCHIVER_MAX_LOGS' | 'ARCHIVER_POLLING_INTERVAL_MS' | 'ARCHIVER_URL' | 'ARCHIVER_VIEM_POLLING_INTERVAL_MS' | 'ARCHIVER_BATCH_SIZE' | 'AZTEC_ADMIN_PORT' | 'AZTEC_ADMIN_API_KEY_HASH' | 'AZTEC_DISABLE_ADMIN_API_KEY' | 'AZTEC_RESET_ADMIN_API_KEY' | 'AZTEC_NODE_ADMIN_URL' | 'AZTEC_NODE_URL' | 'AZTEC_PORT' | 'BB_BINARY_PATH' | 'BB_SKIP_CLEANUP' | 'BB_WORKING_DIRECTORY' | 'BB_NUM_IVC_VERIFIERS' | 'BB_IVC_CONCURRENCY' | 'BOOTSTRAP_NODES' | 'BLOB_ARCHIVE_API_URL' | 'BLOB_FILE_STORE_URLS' | 'BLOB_FILE_STORE_UPLOAD_URL' | 'BLOB_HEALTHCHECK_UPLOAD_INTERVAL_MINUTES' | 'BOT_DA_GAS_LIMIT' | 'BOT_FEE_PAYMENT_METHOD' | 'BOT_MIN_FEE_PADDING' | 'BOT_FLUSH_SETUP_TRANSACTIONS' | 'BOT_FOLLOW_CHAIN' | 'BOT_L2_GAS_LIMIT' | 'BOT_MAX_PENDING_TXS' | 'BOT_NO_START' | 'BOT_L1_MNEMONIC' | 'BOT_L1_PRIVATE_KEY' | 'BOT_L1_TO_L2_TIMEOUT_SECONDS' | 'BOT_PRIVATE_KEY' | 'BOT_ACCOUNT_SALT' | 'BOT_PRIVATE_TRANSFERS_PER_TX' | 'BOT_PUBLIC_TRANSFERS_PER_TX' | 'BOT_RECIPIENT_ENCRYPTION_SECRET' | 'BOT_TOKEN_CONTRACT' | 'BOT_TOKEN_SALT' | 'BOT_TX_INTERVAL_SECONDS' | 'BOT_TX_MINED_WAIT_SECONDS' | 'BOT_MAX_CONSECUTIVE_ERRORS' | 'BOT_STOP_WHEN_UNHEALTHY' | 'BOT_MODE' | 'BOT_L2_TO_L1_MESSAGES_PER_TX' | 'BOT_L1_TO_L2_SEED_COUNT' | 'BOT_L1_TO_L2_SEED_INTERVAL' | 'COINBASE' | 'CRS_PATH' | 'DATA_DIRECTORY' | 'DATA_STORE_MAP_SIZE_KB' | 'ARCHIVER_STORE_MAP_SIZE_KB' | 'BLOB_SINK_MAP_SIZE_KB' | 'P2P_STORE_MAP_SIZE_KB' | 'PROVER_BROKER_STORE_MAP_SIZE_KB' | 'SIGNING_PROTECTION_MAP_SIZE_KB' | 'WS_DB_MAP_SIZE_KB' | 'ARCHIVE_TREE_MAP_SIZE_KB' | 'NULLIFIER_TREE_MAP_SIZE_KB' | 'NOTE_HASH_TREE_MAP_SIZE_KB' | 'MESSAGE_TREE_MAP_SIZE_KB' | 'PUBLIC_DATA_TREE_MAP_SIZE_KB' | 'DEBUG' | 'DEBUG_P2P_DISABLE_COLOCATION_PENALTY' | 'ENABLE_PROVER_NODE' | 'ETHEREUM_HOSTS' | 'ETHEREUM_DEBUG_HOSTS' | 'ETHEREUM_ALLOW_NO_DEBUG_HOSTS' | 'FEE_RECIPIENT' | 'FORCE_COLOR' | 'GOVERNANCE_PROPOSER_PAYLOAD_ADDRESS' | 'KEY_STORE_DIRECTORY' | 'L1_CHAIN_ID' | 'L1_CONSENSUS_HOST_URLS' | 'ETHEREUM_HTTP_TIMEOUT_MS' | 'L1_CONSENSUS_HOST_API_KEYS' | 'L1_CONSENSUS_HOST_API_KEY_HEADERS' | 'L1_TX_FAILED_STORE' | 'LOG_JSON' | 'LOG_MULTILINE' | 'LOG_NO_COLOR_PER_ACTOR' | 'LOG_LEVEL' | 'MNEMONIC' | 'NETWORK' | 'NETWORK_CONFIG_LOCATION' | 'NO_PXE' | '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_INCLUDE_METRICS' | 'OTEL_EXPORT_TIMEOUT_MS' | 'PUBLIC_OTEL_EXPORTER_OTLP_METRICS_ENDPOINT' | 'PUBLIC_OTEL_INCLUDE_METRICS' | 'PUBLIC_OTEL_COLLECT_FROM' | 'PUBLIC_OTEL_OPT_OUT' | 'P2P_BATCH_TX_REQUESTER_SMART_PARALLEL_WORKER_COUNT' | 'P2P_BATCH_TX_REQUESTER_DUMB_PARALLEL_WORKER_COUNT' | 'P2P_BATCH_TX_REQUESTER_TX_BATCH_SIZE' | 'P2P_BATCH_TX_REQUESTER_BAD_PEER_THRESHOLD' | 'P2P_BLOCK_CHECK_INTERVAL_MS' | 'P2P_SLOT_CHECK_INTERVAL_MS' | 'P2P_BLOCK_REQUEST_BATCH_SIZE' | 'P2P_BOOTSTRAP_NODE_ENR_VERSION_CHECK' | 'P2P_BOOTSTRAP_NODES_AS_FULL_PEERS' | 'P2P_ENABLED' | 'P2P_DISCOVERY_DISABLED' | '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_SEEN_TTL' | '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_DIAL_TIMEOUT_MS' | 'P2P_REQRESP_OVERALL_REQUEST_TIMEOUT_MS' | 'P2P_DISABLE_STATUS_HANDSHAKE' | 'P2P_ALLOW_ONLY_VALIDATORS' | 'P2P_MAX_AUTH_FAILED_ATTEMPTS_ALLOWED' | 'P2P_REQRESP_OPTIMISTIC_NEGOTIATION' | 'P2P_DOUBLE_SPEND_SEVERE_PEER_PENALTY_WINDOW' | 'P2P_LISTEN_ADDR' | 'P2P_PORT' | 'P2P_BROADCAST_PORT' | 'P2P_IP' | 'P2P_ARCHIVED_TX_LIMIT' | 'P2P_TRUSTED_PEERS' | 'P2P_PRIVATE_PEERS' | 'P2P_PREFERRED_PEERS' | 'P2P_MAX_PENDING_TX_COUNT' | 'P2P_SEEN_MSG_CACHE_SIZE' | 'P2P_DROP_TX_CHANCE' | 'P2P_TX_POOL_DELETE_TXS_AFTER_REORG' | 'P2P_MIN_TX_POOL_AGE_MS' | 'P2P_RPC_PRICE_BUMP_PERCENTAGE' | 'DEBUG_P2P_INSTRUMENT_MESSAGES' | 'PEER_ID_PRIVATE_KEY' | 'PEER_ID_PRIVATE_KEY_PATH' | '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_BROKER_DEBUG_REPLAY_ENABLED' | 'PROVER_CANCEL_JOBS_ON_STOP' | 'PROVER_ENQUEUE_CONCURRENCY' | 'PROVER_COORDINATION_NODE_URLS' | 'PROVER_PROOF_STORE' | 'PROVER_FAILED_PROOF_STORE' | 'PROVER_NODE_FAILED_EPOCH_STORE' | 'PROVER_NODE_DISABLE_PROOF_PUBLISH' | 'PROVER_ID' | 'PROVER_NODE_POLLING_INTERVAL_MS' | 'PROVER_NODE_MAX_PENDING_JOBS' | 'PROVER_NODE_MAX_PARALLEL_BLOCKS_PER_EPOCH' | 'PROVER_NODE_TX_GATHERING_INTERVAL_MS' | 'PROVER_NODE_TX_GATHERING_BATCH_SIZE' | 'PROVER_NODE_TX_GATHERING_MAX_PARALLEL_REQUESTS_PER_NODE' | 'PROVER_NODE_TX_GATHERING_TIMEOUT_MS' | 'PROVER_PUBLISHER_PRIVATE_KEY' | 'PROVER_PUBLISHER_PRIVATE_KEYS' | 'PROVER_PUBLISHER_ADDRESSES' | 'PROVER_PUBLISHER_ALLOW_INVALID_STATES' | 'PROVER_PUBLISHER_FORWARDER_ADDRESS' | 'PROVER_REAL_PROOFS' | 'PROVER_TEST_DELAY_FACTOR' | 'PROVER_TEST_DELAY_MS' | 'PROVER_TEST_DELAY_TYPE' | 'PROVER_TEST_VERIFICATION_DELAY_MS' | 'PXE_L2_BLOCK_BATCH_SIZE' | 'PXE_PROVER_ENABLED' | 'PXE_SYNC_CHAIN_TIP' | 'RPC_MAX_BATCH_SIZE' | 'RPC_MAX_BODY_SIZE' | 'RPC_SIMULATE_PUBLIC_MAX_GAS_LIMIT' | 'RPC_SIMULATE_PUBLIC_MAX_DEBUG_LOG_MEMORY_READS' | 'SENTINEL_ENABLED' | 'SENTINEL_HISTORY_LENGTH_IN_EPOCHS' | 'SENTINEL_HISTORIC_PROVEN_PERFORMANCE_LENGTH_IN_EPOCHS' | 'SEQ_MAX_TX_PER_BLOCK' | 'SEQ_MAX_TX_PER_CHECKPOINT' | 'SEQ_MIN_TX_PER_BLOCK' | 'SEQ_PUBLISH_TXS_WITH_PROPOSALS' | 'SEQ_MAX_DA_BLOCK_GAS' | 'SEQ_MAX_L2_BLOCK_GAS' | 'SEQ_PER_BLOCK_ALLOCATION_MULTIPLIER' | 'SEQ_REDISTRIBUTE_CHECKPOINT_BUDGET' | 'SEQ_PUBLISHER_PRIVATE_KEY' | 'SEQ_PUBLISHER_PRIVATE_KEYS' | 'SEQ_PUBLISHER_ADDRESSES' | 'SEQ_PUBLISHER_ALLOW_INVALID_STATES' | 'SEQ_PUBLISHER_FORWARDER_ADDRESS' | 'SEQ_POLLING_INTERVAL_MS' | 'SEQ_ENFORCE_TIME_TABLE' | 'SEQ_L1_PUBLISHING_TIME_ALLOWANCE_IN_SLOT' | 'SEQ_ATTESTATION_PROPAGATION_TIME' | 'SEQ_BLOCK_DURATION_MS' | 'SEQ_EXPECTED_BLOCK_PROPOSALS_PER_SLOT' | 'SEQ_BUILD_CHECKPOINT_IF_EMPTY' | 'SEQ_SECONDS_BEFORE_INVALIDATING_BLOCK_AS_COMMITTEE_MEMBER' | 'SEQ_SECONDS_BEFORE_INVALIDATING_BLOCK_AS_NON_COMMITTEE_MEMBER' | 'SEQ_SKIP_CHECKPOINT_PUBLISH_PERCENT' | 'SLASH_MIN_PENALTY_PERCENTAGE' | 'SLASH_MAX_PENALTY_PERCENTAGE' | 'SLASH_VALIDATORS_ALWAYS' | 'SLASH_VALIDATORS_NEVER' | 'SLASH_PRUNE_PENALTY' | 'SLASH_DATA_WITHHOLDING_PENALTY' | 'SLASH_INACTIVITY_PENALTY' | 'SLASH_INACTIVITY_TARGET_PERCENTAGE' | 'SLASH_INACTIVITY_CONSECUTIVE_EPOCH_THRESHOLD' | 'SLASH_INVALID_BLOCK_PENALTY' | 'SLASH_DUPLICATE_PROPOSAL_PENALTY' | 'SLASH_DUPLICATE_ATTESTATION_PENALTY' | 'SLASH_OVERRIDE_PAYLOAD' | 'SLASH_PROPOSE_INVALID_ATTESTATIONS_PENALTY' | 'SLASH_ATTEST_DESCENDANT_OF_INVALID_PENALTY' | 'SLASH_UNKNOWN_PENALTY' | 'SLASH_GRACE_PERIOD_L2_SLOTS' | 'SLASH_OFFENSE_EXPIRATION_ROUNDS' | 'SLASH_MAX_PAYLOAD_SIZE' | 'SLASH_EXECUTE_ROUNDS_LOOK_BACK' | 'SYNC_MODE' | 'SYNC_SNAPSHOTS_URLS' | 'SYNC_SNAPSHOTS_URL' | 'TELEMETRY' | 'TEST_ACCOUNTS' | 'SPONSORED_FPC' | 'PREFUND_ADDRESSES' | 'TX_COLLECTION_FAST_NODES_TIMEOUT_BEFORE_REQ_RESP_MS' | 'TX_COLLECTION_SLOW_NODES_INTERVAL_MS' | 'TX_COLLECTION_SLOW_REQ_RESP_INTERVAL_MS' | 'TX_COLLECTION_SLOW_REQ_RESP_TIMEOUT_MS' | 'TX_COLLECTION_RECONCILE_INTERVAL_MS' | 'TX_COLLECTION_DISABLE_SLOW_DURING_FAST_REQUESTS' | 'TX_COLLECTION_FAST_NODE_INTERVAL_MS' | 'TX_COLLECTION_FAST_MAX_PARALLEL_REQUESTS_PER_NODE' | 'TX_COLLECTION_NODE_RPC_MAX_BATCH_SIZE' | 'TX_COLLECTION_NODE_RPC_URLS' | 'TX_COLLECTION_MISSING_TXS_COLLECTOR_TYPE' | 'TX_COLLECTION_FILE_STORE_URLS' | 'TX_COLLECTION_FILE_STORE_SLOW_DELAY_MS' | 'TX_COLLECTION_FILE_STORE_FAST_DELAY_MS' | 'TX_COLLECTION_FILE_STORE_FAST_WORKER_COUNT' | 'TX_COLLECTION_FILE_STORE_SLOW_WORKER_COUNT' | 'TX_COLLECTION_FILE_STORE_FAST_BACKOFF_BASE_MS' | 'TX_COLLECTION_FILE_STORE_SLOW_BACKOFF_BASE_MS' | 'TX_COLLECTION_FILE_STORE_FAST_BACKOFF_MAX_MS' | 'TX_COLLECTION_FILE_STORE_SLOW_BACKOFF_MAX_MS' | 'TX_FILE_STORE_URL' | 'TX_FILE_STORE_UPLOAD_CONCURRENCY' | 'TX_FILE_STORE_MAX_QUEUE_SIZE' | 'TX_FILE_STORE_ENABLED' | 'TX_PUBLIC_SETUP_ALLOWLIST' | 'TXE_PORT' | 'TRANSACTIONS_DISABLED' | 'VALIDATOR_ATTESTATIONS_POLLING_INTERVAL_MS' | 'VALIDATOR_DISABLED' | 'VALIDATOR_MAX_DA_BLOCK_GAS' | 'VALIDATOR_MAX_L2_BLOCK_GAS' | 'VALIDATOR_MAX_TX_PER_BLOCK' | 'VALIDATOR_MAX_TX_PER_CHECKPOINT' | 'VALIDATOR_PRIVATE_KEYS' | 'VALIDATOR_PRIVATE_KEY' | 'VALIDATOR_REEXECUTE' | 'VALIDATOR_ADDRESSES' | 'ROLLUP_VERSION' | 'WS_BLOCK_CHECK_INTERVAL_MS' | 'WS_BLOCK_REQUEST_BATCH_SIZE' | 'L1_READER_VIEM_POLLING_INTERVAL_MS' | 'WS_DATA_DIRECTORY' | 'WS_NUM_HISTORIC_CHECKPOINTS' | 'WS_NUM_HISTORIC_BLOCKS' | 'ETHEREUM_SLOT_DURATION' | 'AZTEC_SLOT_DURATION' | 'AZTEC_EPOCH_DURATION' | 'AZTEC_TARGET_COMMITTEE_SIZE' | 'AZTEC_LAG_IN_EPOCHS_FOR_VALIDATOR_SET' | 'AZTEC_LAG_IN_EPOCHS_FOR_RANDAO' | 'AZTEC_INBOX_LAG' | 'AZTEC_PROOF_SUBMISSION_EPOCHS' | 'AZTEC_ACTIVATION_THRESHOLD' | 'AZTEC_EJECTION_THRESHOLD' | 'AZTEC_LOCAL_EJECTION_THRESHOLD' | 'AZTEC_MANA_TARGET' | 'AZTEC_PROVING_COST_PER_MANA' | 'AZTEC_INITIAL_ETH_PER_FEE_ASSET' | 'AZTEC_SLASHING_QUORUM' | 'AZTEC_SLASHING_ROUND_SIZE_IN_EPOCHS' | 'AZTEC_SLASHING_LIFETIME_IN_ROUNDS' | 'AZTEC_SLASHING_EXECUTION_DELAY_IN_ROUNDS' | 'AZTEC_SLASHING_VETOER' | 'AZTEC_SLASHING_OFFSET_IN_ROUNDS' | 'AZTEC_SLASHING_DISABLE_DURATION' | 'AZTEC_SLASH_AMOUNT_SMALL' | 'AZTEC_SLASH_AMOUNT_MEDIUM' | 'AZTEC_SLASH_AMOUNT_LARGE' | 'AZTEC_SLASHER_FLAVOR' | 'AZTEC_GOVERNANCE_PROPOSER_QUORUM' | 'AZTEC_GOVERNANCE_PROPOSER_ROUND_SIZE' | 'AZTEC_GOVERNANCE_VOTING_DURATION' | 'AZTEC_EXIT_DELAY_SECONDS' | 'L1_GAS_LIMIT_BUFFER_PERCENTAGE' | 'L1_GAS_PRICE_MAX' | 'L1_FEE_PER_GAS_GWEI_MAX' | 'L1_BLOB_FEE_PER_GAS_MAX' | 'L1_BLOB_FEE_PER_GAS_GWEI_MAX' | 'L1_PRIORITY_FEE_BUMP_PERCENTAGE' | 'L1_PRIORITY_FEE_RETRY_BUMP_PERCENTAGE' | 'L1_MINIMUM_PRIORITY_FEE_PER_GAS_GWEI' | 'L1_FIXED_PRIORITY_FEE_PER_GAS' | 'L1_FIXED_PRIORITY_FEE_PER_GAS_GWEI' | '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_MONITOR_CANCEL_TX_ON_TIMEOUT' | 'L1_TX_MONITOR_TX_CANCELLATION_TIMEOUT_MS' | 'L1_TX_MONITOR_TX_UNSEEN_CONSIDERED_DROPPED_MS' | 'FAUCET_MNEMONIC_ADDRESS_INDEX' | 'FAUCET_ETH_AMOUNT' | 'FAUCET_INTERVAL_MS' | 'FAUCET_L1_ASSETS' | 'K8S_POD_NAME' | 'K8S_POD_UID' | 'K8S_NAMESPACE_NAME' | 'ENABLE_VERSION_CHECK' | 'VALIDATOR_REEXECUTE_DEADLINE_MS' | 'WEB3_SIGNER_URL' | 'SKIP_ARCHIVER_INITIAL_SYNC' | 'BLOB_ALLOW_EMPTY_SOURCES' | 'FISHERMAN_MODE' | 'MAX_ALLOWED_ETH_CLIENT_DRIFT_SECONDS' | 'LEGACY_BLS_CLI' | 'DEBUG_FORCE_TX_PROOF_VERIFICATION' | 'VALIDATOR_HA_SIGNING_ENABLED' | 'VALIDATOR_HA_NODE_ID' | 'VALIDATOR_HA_POLLING_INTERVAL_MS' | 'VALIDATOR_HA_SIGNING_TIMEOUT_MS' | 'VALIDATOR_HA_MAX_STUCK_DUTIES_AGE_MS' | 'VALIDATOR_HA_OLD_DUTIES_MAX_AGE_H' | 'VALIDATOR_HA_DATABASE_URL' | 'VALIDATOR_HA_RUN_MIGRATIONS' | 'VALIDATOR_HA_POOL_MAX' | 'VALIDATOR_HA_POOL_MIN' | 'VALIDATOR_HA_POOL_IDLE_TIMEOUT_MS' | 'VALIDATOR_HA_POOL_CONNECTION_TIMEOUT_MS';
|
|
2
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
1
|
+
export type EnvVar = 'REGISTRY_CONTRACT_ADDRESS' | 'FEE_ASSET_HANDLER_CONTRACT_ADDRESS' | 'SLASH_FACTORY_CONTRACT_ADDRESS' | 'ACVM_BINARY_PATH' | 'ACVM_WORKING_DIRECTORY' | 'API_KEY' | 'API_PREFIX' | 'ARCHIVER_MAX_LOGS' | 'ARCHIVER_POLLING_INTERVAL_MS' | 'ARCHIVER_URL' | 'ARCHIVER_VIEM_POLLING_INTERVAL_MS' | 'ARCHIVER_BATCH_SIZE' | 'AZTEC_ADMIN_PORT' | 'AZTEC_ADMIN_API_KEY_HASH' | 'AZTEC_DISABLE_ADMIN_API_KEY' | 'AZTEC_RESET_ADMIN_API_KEY' | 'AZTEC_NODE_ADMIN_URL' | 'AZTEC_NODE_URL' | 'AZTEC_PORT' | 'BB_BINARY_PATH' | 'BB_SKIP_CLEANUP' | 'BB_WORKING_DIRECTORY' | 'BB_NUM_IVC_VERIFIERS' | 'BB_IVC_CONCURRENCY' | 'BB_CHONK_VERIFY_MAX_BATCH' | 'BB_CHONK_VERIFY_BATCH_CONCURRENCY' | 'BOOTSTRAP_NODES' | 'BLOB_ARCHIVE_API_URL' | 'BLOB_FILE_STORE_URLS' | 'BLOB_FILE_STORE_UPLOAD_URL' | 'BLOB_HEALTHCHECK_UPLOAD_INTERVAL_MINUTES' | 'BOT_DA_GAS_LIMIT' | 'BOT_FEE_PAYMENT_METHOD' | 'BOT_MIN_FEE_PADDING' | 'BOT_FLUSH_SETUP_TRANSACTIONS' | 'BOT_FOLLOW_CHAIN' | 'BOT_L2_GAS_LIMIT' | 'BOT_MAX_PENDING_TXS' | 'BOT_NO_START' | 'BOT_L1_MNEMONIC' | 'BOT_L1_PRIVATE_KEY' | 'BOT_L1_TO_L2_TIMEOUT_SECONDS' | 'BOT_PRIVATE_KEY' | 'BOT_ACCOUNT_SALT' | 'BOT_PRIVATE_TRANSFERS_PER_TX' | 'BOT_PUBLIC_TRANSFERS_PER_TX' | 'BOT_RECIPIENT_ENCRYPTION_SECRET' | 'BOT_TOKEN_CONTRACT' | 'BOT_TOKEN_SALT' | 'BOT_TX_INTERVAL_SECONDS' | 'BOT_TX_MINED_WAIT_SECONDS' | 'BOT_MAX_CONSECUTIVE_ERRORS' | 'BOT_STOP_WHEN_UNHEALTHY' | 'BOT_MODE' | 'BOT_L2_TO_L1_MESSAGES_PER_TX' | 'BOT_L1_TO_L2_SEED_COUNT' | 'BOT_L1_TO_L2_SEED_INTERVAL' | 'COINBASE' | 'CRS_PATH' | 'DATA_DIRECTORY' | 'DATA_STORE_MAP_SIZE_KB' | 'ARCHIVER_STORE_MAP_SIZE_KB' | 'BLOB_SINK_MAP_SIZE_KB' | 'P2P_STORE_MAP_SIZE_KB' | 'PROVER_BROKER_STORE_MAP_SIZE_KB' | 'SIGNING_PROTECTION_MAP_SIZE_KB' | 'WS_DB_MAP_SIZE_KB' | 'ARCHIVE_TREE_MAP_SIZE_KB' | 'NULLIFIER_TREE_MAP_SIZE_KB' | 'NOTE_HASH_TREE_MAP_SIZE_KB' | 'MESSAGE_TREE_MAP_SIZE_KB' | 'PUBLIC_DATA_TREE_MAP_SIZE_KB' | 'DEBUG' | 'DEBUG_P2P_DISABLE_COLOCATION_PENALTY' | 'ENABLE_PROVER_NODE' | 'ETHEREUM_HOSTS' | 'ETHEREUM_DEBUG_HOSTS' | 'ETHEREUM_ALLOW_NO_DEBUG_HOSTS' | 'FEE_RECIPIENT' | 'FORCE_COLOR' | 'GOVERNANCE_PROPOSER_PAYLOAD_ADDRESS' | 'KEY_STORE_DIRECTORY' | 'L1_CHAIN_ID' | 'L1_CONSENSUS_HOST_URLS' | 'ETHEREUM_HTTP_TIMEOUT_MS' | 'L1_CONSENSUS_HOST_API_KEYS' | 'L1_CONSENSUS_HOST_API_KEY_HEADERS' | 'L1_TX_FAILED_STORE' | 'LOG_JSON' | 'LOG_MULTILINE' | 'LOG_NO_COLOR_PER_ACTOR' | 'LOG_LEVEL' | 'MNEMONIC' | 'NETWORK' | 'NETWORK_CONFIG_LOCATION' | 'NO_PXE' | '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_INCLUDE_METRICS' | 'OTEL_EXPORT_TIMEOUT_MS' | 'PUBLIC_OTEL_EXPORTER_OTLP_METRICS_ENDPOINT' | 'PUBLIC_OTEL_INCLUDE_METRICS' | 'PUBLIC_OTEL_COLLECT_FROM' | 'PUBLIC_OTEL_OPT_OUT' | 'P2P_BATCH_TX_REQUESTER_SMART_PARALLEL_WORKER_COUNT' | 'P2P_BATCH_TX_REQUESTER_DUMB_PARALLEL_WORKER_COUNT' | 'P2P_BATCH_TX_REQUESTER_TX_BATCH_SIZE' | 'P2P_BATCH_TX_REQUESTER_BAD_PEER_THRESHOLD' | 'P2P_BLOCK_CHECK_INTERVAL_MS' | 'P2P_SLOT_CHECK_INTERVAL_MS' | 'P2P_BLOCK_REQUEST_BATCH_SIZE' | 'P2P_BOOTSTRAP_NODE_ENR_VERSION_CHECK' | 'P2P_BOOTSTRAP_NODES_AS_FULL_PEERS' | 'P2P_ENABLED' | 'P2P_DISCOVERY_DISABLED' | '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_SEEN_TTL' | '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_FAILED_BAN_TIME_MS' | 'P2P_PEER_PENALTY_VALUES' | 'P2P_QUERY_FOR_IP' | 'P2P_REQRESP_INDIVIDUAL_REQUEST_TIMEOUT_MS' | 'P2P_REQRESP_DIAL_TIMEOUT_MS' | 'P2P_REQRESP_OVERALL_REQUEST_TIMEOUT_MS' | 'P2P_DISABLE_STATUS_HANDSHAKE' | 'P2P_ALLOW_ONLY_VALIDATORS' | 'P2P_MAX_AUTH_FAILED_ATTEMPTS_ALLOWED' | 'P2P_REQRESP_OPTIMISTIC_NEGOTIATION' | 'P2P_DOUBLE_SPEND_SEVERE_PEER_PENALTY_WINDOW' | 'P2P_LISTEN_ADDR' | 'P2P_PORT' | 'P2P_BROADCAST_PORT' | 'P2P_IP' | 'P2P_ARCHIVED_TX_LIMIT' | 'P2P_TRUSTED_PEERS' | 'P2P_PRIVATE_PEERS' | 'P2P_PREFERRED_PEERS' | 'P2P_MAX_PENDING_TX_COUNT' | 'P2P_SEEN_MSG_CACHE_SIZE' | 'P2P_DROP_TX_CHANCE' | 'P2P_TX_POOL_DELETE_TXS_AFTER_REORG' | 'P2P_MIN_TX_POOL_AGE_MS' | 'P2P_RPC_PRICE_BUMP_PERCENTAGE' | 'DEBUG_P2P_INSTRUMENT_MESSAGES' | 'PEER_ID_PRIVATE_KEY' | 'PEER_ID_PRIVATE_KEY_PATH' | '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_BROKER_DEBUG_REPLAY_ENABLED' | 'PROVER_CANCEL_JOBS_ON_STOP' | 'PROVER_ENQUEUE_CONCURRENCY' | 'PROVER_COORDINATION_NODE_URLS' | 'PROVER_PROOF_STORE' | 'PROVER_FAILED_PROOF_STORE' | 'PROVER_NODE_FAILED_EPOCH_STORE' | 'PROVER_NODE_DISABLE_PROOF_PUBLISH' | 'PROVER_ID' | 'PROVER_NODE_POLLING_INTERVAL_MS' | 'PROVER_NODE_MAX_PENDING_JOBS' | 'PROVER_NODE_MAX_PARALLEL_BLOCKS_PER_EPOCH' | 'PROVER_NODE_TX_GATHERING_INTERVAL_MS' | 'PROVER_NODE_TX_GATHERING_BATCH_SIZE' | 'PROVER_NODE_TX_GATHERING_MAX_PARALLEL_REQUESTS_PER_NODE' | 'PROVER_NODE_TX_GATHERING_TIMEOUT_MS' | 'PROVER_PUBLISHER_PRIVATE_KEY' | 'PROVER_PUBLISHER_PRIVATE_KEYS' | 'PROVER_PUBLISHER_ADDRESSES' | 'PROVER_PUBLISHER_ALLOW_INVALID_STATES' | 'PROVER_PUBLISHER_FORWARDER_ADDRESS' | 'PROVER_REAL_PROOFS' | 'PROVER_TEST_DELAY_FACTOR' | 'PROVER_TEST_DELAY_MS' | 'PROVER_TEST_DELAY_TYPE' | 'PROVER_TEST_VERIFICATION_DELAY_MS' | 'PXE_L2_BLOCK_BATCH_SIZE' | 'PXE_PROVER_ENABLED' | 'PXE_SYNC_CHAIN_TIP' | 'RPC_MAX_BATCH_SIZE' | 'RPC_MAX_BODY_SIZE' | 'RPC_SIMULATE_PUBLIC_MAX_GAS_LIMIT' | 'RPC_SIMULATE_PUBLIC_MAX_DEBUG_LOG_MEMORY_READS' | 'SENTINEL_ENABLED' | 'SENTINEL_HISTORY_LENGTH_IN_EPOCHS' | 'SENTINEL_HISTORIC_PROVEN_PERFORMANCE_LENGTH_IN_EPOCHS' | 'SEQ_ENABLE_PROPOSER_PIPELINING' | 'SEQ_MAX_TX_PER_BLOCK' | 'SEQ_MAX_TX_PER_CHECKPOINT' | 'SEQ_MIN_TX_PER_BLOCK' | 'SEQ_PUBLISH_TXS_WITH_PROPOSALS' | 'SEQ_MAX_DA_BLOCK_GAS' | 'SEQ_MAX_L2_BLOCK_GAS' | 'SEQ_PER_BLOCK_ALLOCATION_MULTIPLIER' | 'SEQ_REDISTRIBUTE_CHECKPOINT_BUDGET' | 'SEQ_PUBLISHER_PRIVATE_KEY' | 'SEQ_PUBLISHER_PRIVATE_KEYS' | 'SEQ_PUBLISHER_ADDRESSES' | 'SEQ_PUBLISHER_ALLOW_INVALID_STATES' | 'SEQ_PUBLISHER_FORWARDER_ADDRESS' | 'PUBLISHER_FUNDING_THRESHOLD' | 'PUBLISHER_FUNDING_AMOUNT' | 'SEQ_POLLING_INTERVAL_MS' | 'SEQ_ENFORCE_TIME_TABLE' | 'SEQ_L1_PUBLISHING_TIME_ALLOWANCE_IN_SLOT' | 'SEQ_ATTESTATION_PROPAGATION_TIME' | 'SEQ_BLOCK_DURATION_MS' | 'SEQ_EXPECTED_BLOCK_PROPOSALS_PER_SLOT' | 'SEQ_BUILD_CHECKPOINT_IF_EMPTY' | 'SEQ_SECONDS_BEFORE_INVALIDATING_BLOCK_AS_COMMITTEE_MEMBER' | 'SEQ_SECONDS_BEFORE_INVALIDATING_BLOCK_AS_NON_COMMITTEE_MEMBER' | 'SEQ_SKIP_CHECKPOINT_PUBLISH_PERCENT' | 'SLASH_MIN_PENALTY_PERCENTAGE' | 'SLASH_MAX_PENALTY_PERCENTAGE' | 'SLASH_VALIDATORS_ALWAYS' | 'SLASH_VALIDATORS_NEVER' | 'SLASH_PRUNE_PENALTY' | 'SLASH_DATA_WITHHOLDING_PENALTY' | 'SLASH_INACTIVITY_PENALTY' | 'SLASH_INACTIVITY_TARGET_PERCENTAGE' | 'SLASH_INACTIVITY_CONSECUTIVE_EPOCH_THRESHOLD' | 'SLASH_INVALID_BLOCK_PENALTY' | 'SLASH_DUPLICATE_PROPOSAL_PENALTY' | 'SLASH_DUPLICATE_ATTESTATION_PENALTY' | 'SLASH_OVERRIDE_PAYLOAD' | 'SLASH_PROPOSE_INVALID_ATTESTATIONS_PENALTY' | 'SLASH_ATTEST_DESCENDANT_OF_INVALID_PENALTY' | 'SLASH_UNKNOWN_PENALTY' | 'SLASH_GRACE_PERIOD_L2_SLOTS' | 'SLASH_OFFENSE_EXPIRATION_ROUNDS' | 'SLASH_MAX_PAYLOAD_SIZE' | 'SLASH_EXECUTE_ROUNDS_LOOK_BACK' | 'SYNC_MODE' | 'SYNC_SNAPSHOTS_URLS' | 'SYNC_SNAPSHOTS_URL' | 'TELEMETRY' | 'TEST_ACCOUNTS' | 'SPONSORED_FPC' | 'PREFUND_ADDRESSES' | 'TX_COLLECTION_FAST_NODES_TIMEOUT_BEFORE_REQ_RESP_MS' | 'TX_COLLECTION_SLOW_NODES_INTERVAL_MS' | 'TX_COLLECTION_SLOW_REQ_RESP_INTERVAL_MS' | 'TX_COLLECTION_SLOW_REQ_RESP_TIMEOUT_MS' | 'TX_COLLECTION_RECONCILE_INTERVAL_MS' | 'TX_COLLECTION_DISABLE_SLOW_DURING_FAST_REQUESTS' | 'TX_COLLECTION_FAST_NODE_INTERVAL_MS' | 'TX_COLLECTION_FAST_MAX_PARALLEL_REQUESTS_PER_NODE' | 'TX_COLLECTION_NODE_RPC_MAX_BATCH_SIZE' | 'TX_COLLECTION_NODE_RPC_URLS' | 'TX_COLLECTION_MISSING_TXS_COLLECTOR_TYPE' | 'TX_COLLECTION_FILE_STORE_URLS' | 'TX_COLLECTION_FILE_STORE_SLOW_DELAY_MS' | 'TX_COLLECTION_FILE_STORE_FAST_DELAY_MS' | 'TX_COLLECTION_FILE_STORE_FAST_WORKER_COUNT' | 'TX_COLLECTION_FILE_STORE_SLOW_WORKER_COUNT' | 'TX_COLLECTION_FILE_STORE_FAST_BACKOFF_BASE_MS' | 'TX_COLLECTION_FILE_STORE_SLOW_BACKOFF_BASE_MS' | 'TX_COLLECTION_FILE_STORE_FAST_BACKOFF_MAX_MS' | 'TX_COLLECTION_FILE_STORE_SLOW_BACKOFF_MAX_MS' | 'TX_FILE_STORE_URL' | 'TX_FILE_STORE_UPLOAD_CONCURRENCY' | 'TX_FILE_STORE_MAX_QUEUE_SIZE' | 'TX_FILE_STORE_ENABLED' | 'TX_PUBLIC_SETUP_ALLOWLIST' | 'TXE_PORT' | 'TRANSACTIONS_DISABLED' | 'VALIDATOR_ATTESTATIONS_POLLING_INTERVAL_MS' | 'VALIDATOR_DISABLED' | 'VALIDATOR_MAX_DA_BLOCK_GAS' | 'VALIDATOR_MAX_L2_BLOCK_GAS' | 'VALIDATOR_MAX_TX_PER_BLOCK' | 'VALIDATOR_MAX_TX_PER_CHECKPOINT' | 'VALIDATOR_PRIVATE_KEYS' | 'VALIDATOR_PRIVATE_KEY' | 'VALIDATOR_REEXECUTE' | 'VALIDATOR_ADDRESSES' | 'ROLLUP_VERSION' | 'WS_BLOCK_CHECK_INTERVAL_MS' | 'WS_BLOCK_REQUEST_BATCH_SIZE' | 'L1_READER_VIEM_POLLING_INTERVAL_MS' | 'WS_DATA_DIRECTORY' | 'WS_NUM_HISTORIC_CHECKPOINTS' | 'WS_NUM_HISTORIC_BLOCKS' | 'ETHEREUM_SLOT_DURATION' | 'AZTEC_SLOT_DURATION' | 'AZTEC_EPOCH_DURATION' | 'AZTEC_TARGET_COMMITTEE_SIZE' | 'AZTEC_LAG_IN_EPOCHS_FOR_VALIDATOR_SET' | 'AZTEC_LAG_IN_EPOCHS_FOR_RANDAO' | 'AZTEC_INBOX_LAG' | 'AZTEC_PROOF_SUBMISSION_EPOCHS' | 'AZTEC_ACTIVATION_THRESHOLD' | 'AZTEC_EJECTION_THRESHOLD' | 'AZTEC_LOCAL_EJECTION_THRESHOLD' | 'AZTEC_MANA_TARGET' | 'AZTEC_PROVING_COST_PER_MANA' | 'AZTEC_INITIAL_ETH_PER_FEE_ASSET' | 'AZTEC_SLASHING_QUORUM' | 'AZTEC_SLASHING_ROUND_SIZE_IN_EPOCHS' | 'AZTEC_SLASHING_LIFETIME_IN_ROUNDS' | 'AZTEC_SLASHING_EXECUTION_DELAY_IN_ROUNDS' | 'AZTEC_SLASHING_VETOER' | 'AZTEC_SLASHING_OFFSET_IN_ROUNDS' | 'AZTEC_SLASHING_DISABLE_DURATION' | 'AZTEC_SLASH_AMOUNT_SMALL' | 'AZTEC_SLASH_AMOUNT_MEDIUM' | 'AZTEC_SLASH_AMOUNT_LARGE' | 'AZTEC_SLASHER_FLAVOR' | 'AZTEC_GOVERNANCE_PROPOSER_QUORUM' | 'AZTEC_GOVERNANCE_PROPOSER_ROUND_SIZE' | 'AZTEC_GOVERNANCE_VOTING_DURATION' | 'AZTEC_EXIT_DELAY_SECONDS' | 'L1_GAS_LIMIT_BUFFER_PERCENTAGE' | 'L1_GAS_PRICE_MAX' | 'L1_FEE_PER_GAS_GWEI_MAX' | 'L1_BLOB_FEE_PER_GAS_MAX' | 'L1_BLOB_FEE_PER_GAS_GWEI_MAX' | 'L1_PRIORITY_FEE_BUMP_PERCENTAGE' | 'L1_PRIORITY_FEE_RETRY_BUMP_PERCENTAGE' | 'L1_MINIMUM_PRIORITY_FEE_PER_GAS_GWEI' | 'L1_FIXED_PRIORITY_FEE_PER_GAS' | 'L1_FIXED_PRIORITY_FEE_PER_GAS_GWEI' | '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_MONITOR_CANCEL_TX_ON_TIMEOUT' | 'L1_TX_MONITOR_TX_CANCELLATION_TIMEOUT_MS' | 'L1_TX_MONITOR_TX_UNSEEN_CONSIDERED_DROPPED_MS' | 'FAUCET_MNEMONIC_ADDRESS_INDEX' | 'FAUCET_ETH_AMOUNT' | 'FAUCET_INTERVAL_MS' | 'FAUCET_L1_ASSETS' | 'K8S_POD_NAME' | 'K8S_POD_UID' | 'K8S_NAMESPACE_NAME' | 'ENABLE_VERSION_CHECK' | 'VALIDATOR_REEXECUTE_DEADLINE_MS' | 'WEB3_SIGNER_URL' | 'SKIP_ARCHIVER_INITIAL_SYNC' | 'BLOB_ALLOW_EMPTY_SOURCES' | 'FISHERMAN_MODE' | 'MAX_ALLOWED_ETH_CLIENT_DRIFT_SECONDS' | 'LEGACY_BLS_CLI' | 'DEBUG_FORCE_TX_PROOF_VERIFICATION' | 'VALIDATOR_HA_SIGNING_ENABLED' | 'VALIDATOR_HA_NODE_ID' | 'VALIDATOR_HA_POLLING_INTERVAL_MS' | 'VALIDATOR_HA_SIGNING_TIMEOUT_MS' | 'VALIDATOR_HA_MAX_STUCK_DUTIES_AGE_MS' | 'VALIDATOR_HA_OLD_DUTIES_MAX_AGE_H' | 'VALIDATOR_HA_DATABASE_URL' | 'VALIDATOR_HA_RUN_MIGRATIONS' | 'VALIDATOR_HA_POOL_MAX' | 'VALIDATOR_HA_POOL_MIN' | 'VALIDATOR_HA_POOL_IDLE_TIMEOUT_MS' | 'VALIDATOR_HA_POOL_CONNECTION_TIMEOUT_MS';
|
|
2
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZW52X3Zhci5kLnRzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2NvbmZpZy9lbnZfdmFyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE1BQU0sTUFBTSxNQUFNLEdBQ2QsMkJBQTJCLEdBQzNCLG9DQUFvQyxHQUNwQyxnQ0FBZ0MsR0FDaEMsa0JBQWtCLEdBQ2xCLHdCQUF3QixHQUN4QixTQUFTLEdBQ1QsWUFBWSxHQUNaLG1CQUFtQixHQUNuQiw4QkFBOEIsR0FDOUIsY0FBYyxHQUNkLG1DQUFtQyxHQUNuQyxxQkFBcUIsR0FDckIsa0JBQWtCLEdBQ2xCLDBCQUEwQixHQUMxQiw2QkFBNkIsR0FDN0IsMkJBQTJCLEdBQzNCLHNCQUFzQixHQUN0QixnQkFBZ0IsR0FDaEIsWUFBWSxHQUNaLGdCQUFnQixHQUNoQixpQkFBaUIsR0FDakIsc0JBQXNCLEdBQ3RCLHNCQUFzQixHQUN0QixvQkFBb0IsR0FDcEIsMkJBQTJCLEdBQzNCLG1DQUFtQyxHQUNuQyxpQkFBaUIsR0FDakIsc0JBQXNCLEdBQ3RCLHNCQUFzQixHQUN0Qiw0QkFBNEIsR0FDNUIsMENBQTBDLEdBQzFDLGtCQUFrQixHQUNsQix3QkFBd0IsR0FDeEIscUJBQXFCLEdBQ3JCLDhCQUE4QixHQUM5QixrQkFBa0IsR0FDbEIsa0JBQWtCLEdBQ2xCLHFCQUFxQixHQUNyQixjQUFjLEdBQ2QsaUJBQWlCLEdBQ2pCLG9CQUFvQixHQUNwQiw4QkFBOEIsR0FDOUIsaUJBQWlCLEdBQ2pCLGtCQUFrQixHQUNsQiw4QkFBOEIsR0FDOUIsNkJBQTZCLEdBQzdCLGlDQUFpQyxHQUNqQyxvQkFBb0IsR0FDcEIsZ0JBQWdCLEdBQ2hCLHlCQUF5QixHQUN6QiwyQkFBMkIsR0FDM0IsNEJBQTRCLEdBQzVCLHlCQUF5QixHQUN6QixVQUFVLEdBQ1YsOEJBQThCLEdBQzlCLHlCQUF5QixHQUN6Qiw0QkFBNEIsR0FDNUIsVUFBVSxHQUNWLFVBQVUsR0FDVixnQkFBZ0IsR0FDaEIsd0JB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
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"env_var.d.ts","sourceRoot":"","sources":["../../src/config/env_var.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"env_var.d.ts","sourceRoot":"","sources":["../../src/config/env_var.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,MAAM,GACd,2BAA2B,GAC3B,oCAAoC,GACpC,gCAAgC,GAChC,kBAAkB,GAClB,wBAAwB,GACxB,SAAS,GACT,YAAY,GACZ,mBAAmB,GACnB,8BAA8B,GAC9B,cAAc,GACd,mCAAmC,GACnC,qBAAqB,GACrB,kBAAkB,GAClB,0BAA0B,GAC1B,6BAA6B,GAC7B,2BAA2B,GAC3B,sBAAsB,GACtB,gBAAgB,GAChB,YAAY,GACZ,gBAAgB,GAChB,iBAAiB,GACjB,sBAAsB,GACtB,sBAAsB,GACtB,oBAAoB,GACpB,2BAA2B,GAC3B,mCAAmC,GACnC,iBAAiB,GACjB,sBAAsB,GACtB,sBAAsB,GACtB,4BAA4B,GAC5B,0CAA0C,GAC1C,kBAAkB,GAClB,wBAAwB,GACxB,qBAAqB,GACrB,8BAA8B,GAC9B,kBAAkB,GAClB,kBAAkB,GAClB,qBAAqB,GACrB,cAAc,GACd,iBAAiB,GACjB,oBAAoB,GACpB,8BAA8B,GAC9B,iBAAiB,GACjB,kBAAkB,GAClB,8BAA8B,GAC9B,6BAA6B,GAC7B,iCAAiC,GACjC,oBAAoB,GACpB,gBAAgB,GAChB,yBAAyB,GACzB,2BAA2B,GAC3B,4BAA4B,GAC5B,yBAAyB,GACzB,UAAU,GACV,8BAA8B,GAC9B,yBAAyB,GACzB,4BAA4B,GAC5B,UAAU,GACV,UAAU,GACV,gBAAgB,GAChB,wBAAwB,GACxB,4BAA4B,GAC5B,uBAAuB,GACvB,uBAAuB,GACvB,iCAAiC,GACjC,gCAAgC,GAChC,mBAAmB,GACnB,0BAA0B,GAC1B,4BAA4B,GAC5B,4BAA4B,GAC5B,0BAA0B,GAC1B,8BAA8B,GAC9B,OAAO,GACP,sCAAsC,GACtC,oBAAoB,GACpB,gBAAgB,GAChB,sBAAsB,GACtB,+BAA+B,GAC/B,eAAe,GACf,aAAa,GACb,qCAAqC,GACrC,qBAAqB,GACrB,aAAa,GACb,wBAAwB,GACxB,0BAA0B,GAC1B,4BAA4B,GAC5B,mCAAmC,GACnC,oBAAoB,GACpB,UAAU,GACV,eAAe,GACf,wBAAwB,GACxB,WAAW,GACX,UAAU,GACV,SAAS,GACT,yBAAyB,GACzB,QAAQ,GACR,oBAAoB,GACpB,qCAAqC,GACrC,oCAAoC,GACpC,kCAAkC,GAClC,0BAA0B,GAC1B,sBAAsB,GACtB,sBAAsB,GACtB,wBAAwB,GACxB,4CAA4C,GAC5C,6BAA6B,GAC7B,0BAA0B,GAC1B,qBAAqB,GACrB,oDAAoD,GACpD,mDAAmD,GACnD,sCAAsC,GACtC,2CAA2C,GAC3C,6BAA6B,GAC7B,4BAA4B,GAC5B,8BAA8B,GAC9B,sCAAsC,GACtC,mCAAmC,GACnC,aAAa,GACb,wBAAwB,GACxB,iBAAiB,GACjB,mBAAmB,GACnB,mBAAmB,GACnB,qBAAqB,GACrB,6BAA6B,GAC7B,2BAA2B,GAC3B,6BAA6B,GAC7B,6BAA6B,GAC7B,wBAAwB,GACxB,mDAAmD,GACnD,oDAAoD,GACpD,+BAA+B,GAC/B,mBAAmB,GACnB,eAAe,GACf,4BAA4B,GAC5B,6BAA6B,GAC7B,yBAAyB,GACzB,kBAAkB,GAClB,2CAA2C,GAC3C,6BAA6B,GAC7B,wCAAwC,GACxC,8BAA8B,GAC9B,2BAA2B,GAC3B,sCAAsC,GACtC,oCAAoC,GACpC,6CAA6C,GAC7C,iBAAiB,GACjB,UAAU,GACV,oBAAoB,GACpB,QAAQ,GACR,uBAAuB,GACvB,mBAAmB,GACnB,mBAAmB,GACnB,qBAAqB,GACrB,0BAA0B,GAC1B,yBAAyB,GACzB,oBAAoB,GACpB,oCAAoC,GACpC,wBAAwB,GACxB,+BAA+B,GAC/B,+BAA+B,GAC/B,qBAAqB,GACrB,0BAA0B,GAC1B,oBAAoB,GACpB,0BAA0B,GAC1B,+BAA+B,GAC/B,oBAAoB,GACpB,8BAA8B,GAC9B,gCAAgC,GAChC,+BAA+B,GAC/B,iCAAiC,GACjC,0BAA0B,GAC1B,8CAA8C,GAC9C,oCAAoC,GACpC,4BAA4B,GAC5B,4BAA4B,GAC5B,+BAA+B,GAC/B,oBAAoB,GACpB,2BAA2B,GAC3B,gCAAgC,GAChC,mCAAmC,GACnC,WAAW,GACX,iCAAiC,GACjC,8BAA8B,GAC9B,2CAA2C,GAC3C,sCAAsC,GACtC,qCAAqC,GACrC,yDAAyD,GACzD,qCAAqC,GACrC,8BAA8B,GAC9B,+BAA+B,GAC/B,4BAA4B,GAC5B,uCAAuC,GACvC,oCAAoC,GACpC,oBAAoB,GACpB,0BAA0B,GAC1B,sBAAsB,GACtB,wBAAwB,GACxB,mCAAmC,GACnC,yBAAyB,GACzB,oBAAoB,GACpB,oBAAoB,GACpB,oBAAoB,GACpB,mBAAmB,GACnB,mCAAmC,GACnC,gDAAgD,GAChD,kBAAkB,GAClB,mCAAmC,GACnC,uDAAuD,GACvD,gCAAgC,GAChC,sBAAsB,GACtB,2BAA2B,GAC3B,sBAAsB,GACtB,gCAAgC,GAChC,sBAAsB,GACtB,sBAAsB,GACtB,qCAAqC,GACrC,oCAAoC,GACpC,2BAA2B,GAC3B,4BAA4B,GAC5B,yBAAyB,GACzB,oCAAoC,GACpC,iCAAiC,GACjC,6BAA6B,GAC7B,0BAA0B,GAC1B,yBAAyB,GACzB,wBAAwB,GACxB,0CAA0C,GAC1C,kCAAkC,GAClC,uBAAuB,GACvB,uCAAuC,GACvC,+BAA+B,GAC/B,2DAA2D,GAC3D,+DAA+D,GAC/D,qCAAqC,GACrC,8BAA8B,GAC9B,8BAA8B,GAC9B,yBAAyB,GACzB,wBAAwB,GACxB,qBAAqB,GACrB,gCAAgC,GAChC,0BAA0B,GAC1B,oCAAoC,GACpC,8CAA8C,GAC9C,6BAA6B,GAC7B,kCAAkC,GAClC,qCAAqC,GACrC,wBAAwB,GACxB,4CAA4C,GAC5C,4CAA4C,GAC5C,uBAAuB,GACvB,6BAA6B,GAC7B,iCAAiC,GACjC,wBAAwB,GACxB,gCAAgC,GAChC,WAAW,GACX,qBAAqB,GACrB,oBAAoB,GACpB,WAAW,GACX,eAAe,GACf,eAAe,GACf,mBAAmB,GACnB,qDAAqD,GACrD,sCAAsC,GACtC,yCAAyC,GACzC,wCAAwC,GACxC,qCAAqC,GACrC,iDAAiD,GACjD,qCAAqC,GACrC,mDAAmD,GACnD,uCAAuC,GACvC,6BAA6B,GAC7B,0CAA0C,GAC1C,+BAA+B,GAC/B,wCAAwC,GACxC,wCAAwC,GACxC,4CAA4C,GAC5C,4CAA4C,GAC5C,+CAA+C,GAC/C,+CAA+C,GAC/C,8CAA8C,GAC9C,8CAA8C,GAC9C,mBAAmB,GACnB,kCAAkC,GAClC,8BAA8B,GAC9B,uBAAuB,GACvB,2BAA2B,GAC3B,UAAU,GACV,uBAAuB,GACvB,4CAA4C,GAC5C,oBAAoB,GACpB,4BAA4B,GAC5B,4BAA4B,GAC5B,4BAA4B,GAC5B,iCAAiC,GACjC,wBAAwB,GACxB,uBAAuB,GACvB,qBAAqB,GACrB,qBAAqB,GACrB,gBAAgB,GAChB,4BAA4B,GAC5B,6BAA6B,GAC7B,oCAAoC,GACpC,mBAAmB,GACnB,6BAA6B,GAC7B,wBAAwB,GACxB,wBAAwB,GACxB,qBAAqB,GACrB,sBAAsB,GACtB,6BAA6B,GAC7B,uCAAuC,GACvC,gCAAgC,GAChC,iBAAiB,GACjB,+BAA+B,GAC/B,4BAA4B,GAC5B,0BAA0B,GAC1B,gCAAgC,GAChC,mBAAmB,GACnB,6BAA6B,GAC7B,iCAAiC,GACjC,uBAAuB,GACvB,qCAAqC,GACrC,mCAAmC,GACnC,0CAA0C,GAC1C,uBAAuB,GACvB,iCAAiC,GACjC,iCAAiC,GACjC,0BAA0B,GAC1B,2BAA2B,GAC3B,0BAA0B,GAC1B,sBAAsB,GACtB,kCAAkC,GAClC,sCAAsC,GACtC,kCAAkC,GAClC,0BAA0B,GAC1B,gCAAgC,GAChC,kBAAkB,GAClB,yBAAyB,GACzB,yBAAyB,GACzB,8BAA8B,GAC9B,iCAAiC,GACjC,uCAAuC,GACvC,sCAAsC,GACtC,+BAA+B,GAC/B,oCAAoC,GACpC,4BAA4B,GAC5B,iCAAiC,GACjC,6BAA6B,GAC7B,6BAA6B,GAC7B,oCAAoC,GACpC,0CAA0C,GAC1C,+CAA+C,GAC/C,+BAA+B,GAC/B,mBAAmB,GACnB,oBAAoB,GACpB,kBAAkB,GAClB,cAAc,GACd,aAAa,GACb,oBAAoB,GACpB,sBAAsB,GACtB,iCAAiC,GACjC,iBAAiB,GACjB,4BAA4B,GAC5B,0BAA0B,GAC1B,gBAAgB,GAChB,sCAAsC,GACtC,gBAAgB,GAChB,mCAAmC,GACnC,8BAA8B,GAC9B,sBAAsB,GACtB,kCAAkC,GAClC,iCAAiC,GACjC,sCAAsC,GACtC,mCAAmC,GACnC,2BAA2B,GAC3B,6BAA6B,GAC7B,uBAAuB,GACvB,uBAAuB,GACvB,mCAAmC,GACnC,yCAAyC,CAAC"}
|
|
@@ -20,4 +20,4 @@ export declare function poseidon2HashWithSeparator(input: Fieldable[], separator
|
|
|
20
20
|
*/
|
|
21
21
|
export declare function poseidon2Permutation(input: Fieldable[]): Promise<Fr[]>;
|
|
22
22
|
export declare function poseidon2HashBytes(input: Buffer): Promise<Fr>;
|
|
23
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
23
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguZC50cyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9jcnlwdG8vcG9zZWlkb24vaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBRUEsT0FBTyxFQUFFLEVBQUUsRUFBRSxNQUFNLDZCQUE2QixDQUFDO0FBQ2pELE9BQU8sRUFBRSxLQUFLLFNBQVMsRUFBcUIsTUFBTSw4QkFBOEIsQ0FBQztBQXNCakY7Ozs7R0FJRztBQUNILHdCQUFnQixhQUFhLENBQUMsS0FBSyxFQUFFLFNBQVMsRUFBRSxHQUFHLE9BQU8sQ0FBQyxFQUFFLENBQUMsQ0FFN0Q7QUFFRDs7Ozs7R0FLRztBQUNILHdCQUFnQiwwQkFBMEIsQ0FBQyxLQUFLLEVBQUUsU0FBUyxFQUFFLEVBQUUsU0FBUyxFQUFFLE1BQU0sR0FBRyxPQUFPLENBQUMsRUFBRSxDQUFDLENBSTdGO0FBRUQ7Ozs7R0FJRztBQUNILHdCQUFzQixvQkFBb0IsQ0FBQyxLQUFLLEVBQUUsU0FBUyxFQUFFLEdBQUcsT0FBTyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBaUI1RTtBQUVELHdCQUFnQixrQkFBa0IsQ0FBQyxLQUFLLEVBQUUsTUFBTSxHQUFHLE9BQU8sQ0FBQyxFQUFFLENBQUMsQ0FZN0QifQ==
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/crypto/poseidon/index.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,EAAE,EAAE,MAAM,6BAA6B,CAAC;AACjD,OAAO,EAAE,KAAK,SAAS,EAAqB,MAAM,8BAA8B,CAAC;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/crypto/poseidon/index.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,EAAE,EAAE,MAAM,6BAA6B,CAAC;AACjD,OAAO,EAAE,KAAK,SAAS,EAAqB,MAAM,8BAA8B,CAAC;AAsBjF;;;;GAIG;AACH,wBAAgB,aAAa,CAAC,KAAK,EAAE,SAAS,EAAE,GAAG,OAAO,CAAC,EAAE,CAAC,CAE7D;AAED;;;;;GAKG;AACH,wBAAgB,0BAA0B,CAAC,KAAK,EAAE,SAAS,EAAE,EAAE,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,EAAE,CAAC,CAI7F;AAED;;;;GAIG;AACH,wBAAsB,oBAAoB,CAAC,KAAK,EAAE,SAAS,EAAE,GAAG,OAAO,CAAC,EAAE,EAAE,CAAC,CAiB5E;AAED,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,EAAE,CAAC,CAY7D"}
|
|
@@ -1,33 +1,40 @@
|
|
|
1
|
-
import { Barretenberg } from '@aztec/bb.js';
|
|
1
|
+
import { Barretenberg, BarretenbergSync } from '@aztec/bb.js';
|
|
2
2
|
import { Fr } from '../../curves/bn254/field.js';
|
|
3
3
|
import { serializeToFields } from '../../serialize/serialize.js';
|
|
4
|
+
const IS_BROWSER = typeof self !== 'undefined';
|
|
5
|
+
async function poseidon2HashFields(inputFields) {
|
|
6
|
+
if (IS_BROWSER) {
|
|
7
|
+
await BarretenbergSync.initSingleton();
|
|
8
|
+
const api = BarretenbergSync.getSingleton();
|
|
9
|
+
const response = api.poseidon2Hash({
|
|
10
|
+
inputs: inputFields.map((i)=>i.toBuffer())
|
|
11
|
+
});
|
|
12
|
+
return Fr.fromBuffer(Buffer.from(response.hash));
|
|
13
|
+
} else {
|
|
14
|
+
await Barretenberg.initSingleton();
|
|
15
|
+
const api = Barretenberg.getSingleton();
|
|
16
|
+
const response = await api.poseidon2Hash({
|
|
17
|
+
inputs: inputFields.map((i)=>i.toBuffer())
|
|
18
|
+
});
|
|
19
|
+
return Fr.fromBuffer(Buffer.from(response.hash));
|
|
20
|
+
}
|
|
21
|
+
}
|
|
4
22
|
/**
|
|
5
23
|
* Create a poseidon hash (field) from an array of input fields.
|
|
6
24
|
* @param input - The input fields to hash.
|
|
7
25
|
* @returns The poseidon hash.
|
|
8
|
-
*/ export
|
|
9
|
-
|
|
10
|
-
await Barretenberg.initSingleton();
|
|
11
|
-
const api = Barretenberg.getSingleton();
|
|
12
|
-
const response = await api.poseidon2Hash({
|
|
13
|
-
inputs: inputFields.map((i)=>i.toBuffer())
|
|
14
|
-
});
|
|
15
|
-
return Fr.fromBuffer(Buffer.from(response.hash));
|
|
26
|
+
*/ export function poseidon2Hash(input) {
|
|
27
|
+
return poseidon2HashFields(serializeToFields(input));
|
|
16
28
|
}
|
|
17
29
|
/**
|
|
18
30
|
* Create a poseidon hash (field) from an array of input fields and a domain separator.
|
|
19
31
|
* @param input - The input fields to hash.
|
|
20
32
|
* @param separator - The domain separator.
|
|
21
33
|
* @returns The poseidon hash.
|
|
22
|
-
*/ export
|
|
34
|
+
*/ export function poseidon2HashWithSeparator(input, separator) {
|
|
23
35
|
const inputFields = serializeToFields(input);
|
|
24
36
|
inputFields.unshift(new Fr(separator));
|
|
25
|
-
|
|
26
|
-
const api = Barretenberg.getSingleton();
|
|
27
|
-
const response = await api.poseidon2Hash({
|
|
28
|
-
inputs: inputFields.map((i)=>i.toBuffer())
|
|
29
|
-
});
|
|
30
|
-
return Fr.fromBuffer(Buffer.from(response.hash));
|
|
37
|
+
return poseidon2HashFields(inputFields);
|
|
31
38
|
}
|
|
32
39
|
/**
|
|
33
40
|
* Runs a Poseidon2 permutation.
|
|
@@ -35,18 +42,23 @@ import { serializeToFields } from '../../serialize/serialize.js';
|
|
|
35
42
|
* @returns the output state, size 4.
|
|
36
43
|
*/ export async function poseidon2Permutation(input) {
|
|
37
44
|
const inputFields = serializeToFields(input);
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
45
|
+
if (IS_BROWSER) {
|
|
46
|
+
await BarretenbergSync.initSingleton();
|
|
47
|
+
const api = BarretenbergSync.getSingleton();
|
|
48
|
+
const response = api.poseidon2Permutation({
|
|
49
|
+
inputs: inputFields.map((i)=>i.toBuffer())
|
|
50
|
+
});
|
|
51
|
+
return response.outputs.map((o)=>Fr.fromBuffer(Buffer.from(o)));
|
|
52
|
+
} else {
|
|
53
|
+
await Barretenberg.initSingleton();
|
|
54
|
+
const api = Barretenberg.getSingleton();
|
|
55
|
+
const response = await api.poseidon2Permutation({
|
|
56
|
+
inputs: inputFields.map((i)=>i.toBuffer())
|
|
57
|
+
});
|
|
58
|
+
return response.outputs.map((o)=>Fr.fromBuffer(Buffer.from(o)));
|
|
59
|
+
}
|
|
48
60
|
}
|
|
49
|
-
export
|
|
61
|
+
export function poseidon2HashBytes(input) {
|
|
50
62
|
const inputFields = [];
|
|
51
63
|
for(let i = 0; i < input.length; i += 31){
|
|
52
64
|
const fieldBytes = Buffer.alloc(32, 0);
|
|
@@ -55,10 +67,5 @@ export async function poseidon2HashBytes(input) {
|
|
|
55
67
|
fieldBytes.reverse();
|
|
56
68
|
inputFields.push(Fr.fromBuffer(fieldBytes));
|
|
57
69
|
}
|
|
58
|
-
|
|
59
|
-
const api = Barretenberg.getSingleton();
|
|
60
|
-
const response = await api.poseidon2Hash({
|
|
61
|
-
inputs: inputFields.map((i)=>i.toBuffer())
|
|
62
|
-
});
|
|
63
|
-
return Fr.fromBuffer(Buffer.from(response.hash));
|
|
70
|
+
return poseidon2HashFields(inputFields);
|
|
64
71
|
}
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
import EventEmitter from 'node:events';
|
|
2
|
+
import type { Readable } from 'node:stream';
|
|
3
|
+
/**
|
|
4
|
+
* Events emitted by FifoFrameReader.
|
|
5
|
+
*
|
|
6
|
+
* - `frame`: A complete frame payload (without the 4-byte length header).
|
|
7
|
+
* - `error`: An unrecoverable error (invalid frame length, stream error).
|
|
8
|
+
* - `end`: The underlying stream has ended.
|
|
9
|
+
*/
|
|
10
|
+
export interface FifoFrameReaderEvents {
|
|
11
|
+
frame: [payload: Buffer];
|
|
12
|
+
error: [error: Error];
|
|
13
|
+
end: [];
|
|
14
|
+
}
|
|
15
|
+
/**
|
|
16
|
+
* Reads length-delimited frames from a readable stream (typically a named FIFO pipe).
|
|
17
|
+
*
|
|
18
|
+
* Wire format: `[4-byte big-endian payload length][payload bytes]`
|
|
19
|
+
*
|
|
20
|
+
* Emits a `frame` event for each complete frame with the raw payload buffer.
|
|
21
|
+
* Callers are responsible for deserializing the payload (e.g., via msgpack).
|
|
22
|
+
*
|
|
23
|
+
* On encountering an invalid payload length (0 or >maxPayloadSize), emits `error`
|
|
24
|
+
* and destroys the stream.
|
|
25
|
+
*/
|
|
26
|
+
export declare class FifoFrameReader extends EventEmitter<FifoFrameReaderEvents> {
|
|
27
|
+
private readonly maxPayloadSize;
|
|
28
|
+
private stream;
|
|
29
|
+
private pendingBuf;
|
|
30
|
+
private running;
|
|
31
|
+
constructor(maxPayloadSize?: number);
|
|
32
|
+
/** Open a FIFO at the given path and start reading frames. */
|
|
33
|
+
start(fifoPath: string, highWaterMark?: number): void;
|
|
34
|
+
/** Start reading frames from an existing readable stream. */
|
|
35
|
+
startFromStream(stream: Readable): void;
|
|
36
|
+
/** Stop reading and destroy the underlying stream. */
|
|
37
|
+
stop(): void;
|
|
38
|
+
/** Parse complete frames out of the pending buffer. */
|
|
39
|
+
private drainFrames;
|
|
40
|
+
}
|
|
41
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmlmb19mcmFtZV9yZWFkZXIuZC50cyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9maWZvL2ZpZm9fZnJhbWVfcmVhZGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sWUFBWSxNQUFNLGFBQWEsQ0FBQztBQUV2QyxPQUFPLEtBQUssRUFBRSxRQUFRLEVBQUUsTUFBTSxhQUFhLENBQUM7QUFFNUM7Ozs7OztHQU1HO0FBQ0gsTUFBTSxXQUFXLHFCQUFxQjtJQUNwQyxLQUFLLEVBQUUsQ0FBQyxPQUFPLEVBQUUsTUFBTSxDQUFDLENBQUM7SUFDekIsS0FBSyxFQUFFLENBQUMsS0FBSyxFQUFFLEtBQUssQ0FBQyxDQUFDO0lBQ3RCLEdBQUcsRUFBRSxFQUFFLENBQUM7Q0FDVDtBQUVEOzs7Ozs7Ozs7O0dBVUc7QUFDSCxxQkFBYSxlQUFnQixTQUFRLFlBQVksQ0FBQyxxQkFBcUIsQ0FBQztJQUsxRCxPQUFPLENBQUMsUUFBUSxDQUFDLGNBQWM7SUFKM0MsT0FBTyxDQUFDLE1BQU0sQ0FBeUI7SUFDdkMsT0FBTyxDQUFDLFVBQVUsQ0FBMkI7SUFDN0MsT0FBTyxDQUFDLE9BQU8sQ0FBUztJQUV4QixZQUE2QixjQUFjLFNBQW1CLEVBRTdEO0lBRUQsOERBQThEO0lBQzlELEtBQUssQ0FBQyxRQUFRLEVBQUUsTUFBTSxFQUFFLGFBQWEsU0FBWSxHQUFHLElBQUksQ0FFdkQ7SUFFRCw2REFBNkQ7SUFDN0QsZUFBZSxDQUFDLE1BQU0sRUFBRSxRQUFRLEdBQUcsSUFBSSxDQXVCdEM7SUFFRCxzREFBc0Q7SUFDdEQsSUFBSSxJQUFJLElBQUksQ0FNWDtJQUVELHVEQUF1RDtJQUN2RCxPQUFPLENBQUMsV0FBVztDQW1CcEIifQ==
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"fifo_frame_reader.d.ts","sourceRoot":"","sources":["../../src/fifo/fifo_frame_reader.ts"],"names":[],"mappings":"AAAA,OAAO,YAAY,MAAM,aAAa,CAAC;AAEvC,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AAE5C;;;;;;GAMG;AACH,MAAM,WAAW,qBAAqB;IACpC,KAAK,EAAE,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;IACzB,KAAK,EAAE,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;IACtB,GAAG,EAAE,EAAE,CAAC;CACT;AAED;;;;;;;;;;GAUG;AACH,qBAAa,eAAgB,SAAQ,YAAY,CAAC,qBAAqB,CAAC;IAK1D,OAAO,CAAC,QAAQ,CAAC,cAAc;IAJ3C,OAAO,CAAC,MAAM,CAAyB;IACvC,OAAO,CAAC,UAAU,CAA2B;IAC7C,OAAO,CAAC,OAAO,CAAS;IAExB,YAA6B,cAAc,SAAmB,EAE7D;IAED,8DAA8D;IAC9D,KAAK,CAAC,QAAQ,EAAE,MAAM,EAAE,aAAa,SAAY,GAAG,IAAI,CAEvD;IAED,6DAA6D;IAC7D,eAAe,CAAC,MAAM,EAAE,QAAQ,GAAG,IAAI,CAuBtC;IAED,sDAAsD;IACtD,IAAI,IAAI,IAAI,CAMX;IAED,uDAAuD;IACvD,OAAO,CAAC,WAAW;CAmBpB"}
|
|
@@ -0,0 +1,74 @@
|
|
|
1
|
+
import EventEmitter from 'node:events';
|
|
2
|
+
import * as fs from 'node:fs';
|
|
3
|
+
/**
|
|
4
|
+
* Reads length-delimited frames from a readable stream (typically a named FIFO pipe).
|
|
5
|
+
*
|
|
6
|
+
* Wire format: `[4-byte big-endian payload length][payload bytes]`
|
|
7
|
+
*
|
|
8
|
+
* Emits a `frame` event for each complete frame with the raw payload buffer.
|
|
9
|
+
* Callers are responsible for deserializing the payload (e.g., via msgpack).
|
|
10
|
+
*
|
|
11
|
+
* On encountering an invalid payload length (0 or >maxPayloadSize), emits `error`
|
|
12
|
+
* and destroys the stream.
|
|
13
|
+
*/ export class FifoFrameReader extends EventEmitter {
|
|
14
|
+
maxPayloadSize;
|
|
15
|
+
stream;
|
|
16
|
+
pendingBuf;
|
|
17
|
+
running;
|
|
18
|
+
constructor(maxPayloadSize = 10 * 1024 * 1024){
|
|
19
|
+
super(), this.maxPayloadSize = maxPayloadSize, this.stream = null, this.pendingBuf = Buffer.alloc(0), this.running = false;
|
|
20
|
+
}
|
|
21
|
+
/** Open a FIFO at the given path and start reading frames. */ start(fifoPath, highWaterMark = 64 * 1024) {
|
|
22
|
+
this.startFromStream(fs.createReadStream(fifoPath, {
|
|
23
|
+
highWaterMark
|
|
24
|
+
}));
|
|
25
|
+
}
|
|
26
|
+
/** Start reading frames from an existing readable stream. */ startFromStream(stream) {
|
|
27
|
+
if (this.running) {
|
|
28
|
+
throw new Error('FifoFrameReader is already running');
|
|
29
|
+
}
|
|
30
|
+
this.running = true;
|
|
31
|
+
this.pendingBuf = Buffer.alloc(0);
|
|
32
|
+
this.stream = stream;
|
|
33
|
+
stream.on('data', (chunk)=>{
|
|
34
|
+
const buf = Buffer.isBuffer(chunk) ? chunk : Buffer.from(chunk);
|
|
35
|
+
this.pendingBuf = this.pendingBuf.length > 0 ? Buffer.concat([
|
|
36
|
+
this.pendingBuf,
|
|
37
|
+
buf
|
|
38
|
+
]) : buf;
|
|
39
|
+
this.drainFrames();
|
|
40
|
+
});
|
|
41
|
+
stream.on('error', (err)=>{
|
|
42
|
+
if (this.running) {
|
|
43
|
+
this.emit('error', err);
|
|
44
|
+
}
|
|
45
|
+
});
|
|
46
|
+
stream.on('end', ()=>{
|
|
47
|
+
this.emit('end');
|
|
48
|
+
});
|
|
49
|
+
}
|
|
50
|
+
/** Stop reading and destroy the underlying stream. */ stop() {
|
|
51
|
+
this.running = false;
|
|
52
|
+
if (this.stream) {
|
|
53
|
+
this.stream.destroy();
|
|
54
|
+
this.stream = null;
|
|
55
|
+
}
|
|
56
|
+
}
|
|
57
|
+
/** Parse complete frames out of the pending buffer. */ drainFrames() {
|
|
58
|
+
while(this.pendingBuf.length >= 4){
|
|
59
|
+
const payloadLen = this.pendingBuf.readUInt32BE(0);
|
|
60
|
+
if (payloadLen === 0 || payloadLen > this.maxPayloadSize) {
|
|
61
|
+
this.emit('error', new Error(`Invalid payload length: ${payloadLen}`));
|
|
62
|
+
this.stop();
|
|
63
|
+
return;
|
|
64
|
+
}
|
|
65
|
+
const frameLen = 4 + payloadLen;
|
|
66
|
+
if (this.pendingBuf.length < frameLen) {
|
|
67
|
+
break; // Wait for more data
|
|
68
|
+
}
|
|
69
|
+
const payload = this.pendingBuf.subarray(4, frameLen);
|
|
70
|
+
this.pendingBuf = this.pendingBuf.subarray(frameLen);
|
|
71
|
+
this.emit('frame', Buffer.from(payload));
|
|
72
|
+
}
|
|
73
|
+
}
|
|
74
|
+
}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
export { FifoFrameReader } from './fifo_frame_reader.js';
|
|
2
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguZC50cyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9maWZvL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQyJ9
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/fifo/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export { FifoFrameReader } from './fifo_frame_reader.js';
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@aztec/foundation",
|
|
3
|
-
"version": "0.0.1-commit.
|
|
3
|
+
"version": "0.0.1-commit.3f296a7d2",
|
|
4
4
|
"type": "module",
|
|
5
5
|
"main": "./dest/index.js",
|
|
6
6
|
"types": "./dest/index.d.ts",
|
|
@@ -61,6 +61,7 @@
|
|
|
61
61
|
"./eth-address": "./dest/eth-address/index.js",
|
|
62
62
|
"./eth-signature": "./dest/eth-signature/index.js",
|
|
63
63
|
"./queue": "./dest/queue/index.js",
|
|
64
|
+
"./fifo": "./dest/fifo/index.js",
|
|
64
65
|
"./fs": "./dest/fs/index.js",
|
|
65
66
|
"./buffer": "./dest/buffer/index.js",
|
|
66
67
|
"./json-rpc": "./dest/json-rpc/index.js",
|
|
@@ -144,7 +145,7 @@
|
|
|
144
145
|
"testEnvironment": "../../foundation/src/jest/env.mjs"
|
|
145
146
|
},
|
|
146
147
|
"dependencies": {
|
|
147
|
-
"@aztec/bb.js": "0.0.1-commit.
|
|
148
|
+
"@aztec/bb.js": "0.0.1-commit.3f296a7d2",
|
|
148
149
|
"@koa/cors": "^5.0.0",
|
|
149
150
|
"@noble/curves": "=1.7.0",
|
|
150
151
|
"@noble/hashes": "^1.6.1",
|
|
@@ -73,6 +73,11 @@ SlotNumber.isValid = function (value: unknown): value is SlotNumber {
|
|
|
73
73
|
return typeof value === 'number' && Number.isInteger(value) && value >= 0;
|
|
74
74
|
};
|
|
75
75
|
|
|
76
|
+
/** Increments a SlotNumber by a given value. */
|
|
77
|
+
SlotNumber.add = function (sn: SlotNumber, increment: number): SlotNumber {
|
|
78
|
+
return SlotNumber(sn + increment);
|
|
79
|
+
};
|
|
80
|
+
|
|
76
81
|
/**
|
|
77
82
|
* The zero slot value.
|
|
78
83
|
*/
|
package/src/config/env_var.ts
CHANGED
|
@@ -23,6 +23,8 @@ export type EnvVar =
|
|
|
23
23
|
| 'BB_WORKING_DIRECTORY'
|
|
24
24
|
| 'BB_NUM_IVC_VERIFIERS'
|
|
25
25
|
| 'BB_IVC_CONCURRENCY'
|
|
26
|
+
| 'BB_CHONK_VERIFY_MAX_BATCH'
|
|
27
|
+
| 'BB_CHONK_VERIFY_BATCH_CONCURRENCY'
|
|
26
28
|
| 'BOOTSTRAP_NODES'
|
|
27
29
|
| 'BLOB_ARCHIVE_API_URL'
|
|
28
30
|
| 'BLOB_FILE_STORE_URLS'
|
|
@@ -131,6 +133,7 @@ export type EnvVar =
|
|
|
131
133
|
| 'P2P_L2_QUEUE_SIZE'
|
|
132
134
|
| 'P2P_MAX_PEERS'
|
|
133
135
|
| 'P2P_PEER_CHECK_INTERVAL_MS'
|
|
136
|
+
| 'P2P_PEER_FAILED_BAN_TIME_MS'
|
|
134
137
|
| 'P2P_PEER_PENALTY_VALUES'
|
|
135
138
|
| 'P2P_QUERY_FOR_IP'
|
|
136
139
|
| 'P2P_REQRESP_INDIVIDUAL_REQUEST_TIMEOUT_MS'
|
|
@@ -204,6 +207,7 @@ export type EnvVar =
|
|
|
204
207
|
| 'SENTINEL_ENABLED'
|
|
205
208
|
| 'SENTINEL_HISTORY_LENGTH_IN_EPOCHS'
|
|
206
209
|
| 'SENTINEL_HISTORIC_PROVEN_PERFORMANCE_LENGTH_IN_EPOCHS'
|
|
210
|
+
| 'SEQ_ENABLE_PROPOSER_PIPELINING'
|
|
207
211
|
| 'SEQ_MAX_TX_PER_BLOCK'
|
|
208
212
|
| 'SEQ_MAX_TX_PER_CHECKPOINT'
|
|
209
213
|
| 'SEQ_MIN_TX_PER_BLOCK'
|
|
@@ -217,6 +221,8 @@ export type EnvVar =
|
|
|
217
221
|
| 'SEQ_PUBLISHER_ADDRESSES'
|
|
218
222
|
| 'SEQ_PUBLISHER_ALLOW_INVALID_STATES'
|
|
219
223
|
| 'SEQ_PUBLISHER_FORWARDER_ADDRESS'
|
|
224
|
+
| 'PUBLISHER_FUNDING_THRESHOLD'
|
|
225
|
+
| 'PUBLISHER_FUNDING_AMOUNT'
|
|
220
226
|
| 'SEQ_POLLING_INTERVAL_MS'
|
|
221
227
|
| 'SEQ_ENFORCE_TIME_TABLE'
|
|
222
228
|
| 'SEQ_L1_PUBLISHING_TIME_ALLOWANCE_IN_SLOT'
|
|
@@ -1,21 +1,35 @@
|
|
|
1
|
-
import { Barretenberg } from '@aztec/bb.js';
|
|
1
|
+
import { Barretenberg, BarretenbergSync } from '@aztec/bb.js';
|
|
2
2
|
|
|
3
3
|
import { Fr } from '../../curves/bn254/field.js';
|
|
4
4
|
import { type Fieldable, serializeToFields } from '../../serialize/serialize.js';
|
|
5
5
|
|
|
6
|
+
const IS_BROWSER = typeof self !== 'undefined';
|
|
7
|
+
|
|
8
|
+
async function poseidon2HashFields(inputFields: Fr[]): Promise<Fr> {
|
|
9
|
+
if (IS_BROWSER) {
|
|
10
|
+
await BarretenbergSync.initSingleton();
|
|
11
|
+
const api = BarretenbergSync.getSingleton();
|
|
12
|
+
const response = api.poseidon2Hash({
|
|
13
|
+
inputs: inputFields.map(i => i.toBuffer()),
|
|
14
|
+
});
|
|
15
|
+
return Fr.fromBuffer(Buffer.from(response.hash));
|
|
16
|
+
} else {
|
|
17
|
+
await Barretenberg.initSingleton();
|
|
18
|
+
const api = Barretenberg.getSingleton();
|
|
19
|
+
const response = await api.poseidon2Hash({
|
|
20
|
+
inputs: inputFields.map(i => i.toBuffer()),
|
|
21
|
+
});
|
|
22
|
+
return Fr.fromBuffer(Buffer.from(response.hash));
|
|
23
|
+
}
|
|
24
|
+
}
|
|
25
|
+
|
|
6
26
|
/**
|
|
7
27
|
* Create a poseidon hash (field) from an array of input fields.
|
|
8
28
|
* @param input - The input fields to hash.
|
|
9
29
|
* @returns The poseidon hash.
|
|
10
30
|
*/
|
|
11
|
-
export
|
|
12
|
-
|
|
13
|
-
await Barretenberg.initSingleton();
|
|
14
|
-
const api = Barretenberg.getSingleton();
|
|
15
|
-
const response = await api.poseidon2Hash({
|
|
16
|
-
inputs: inputFields.map(i => i.toBuffer()),
|
|
17
|
-
});
|
|
18
|
-
return Fr.fromBuffer(Buffer.from(response.hash));
|
|
31
|
+
export function poseidon2Hash(input: Fieldable[]): Promise<Fr> {
|
|
32
|
+
return poseidon2HashFields(serializeToFields(input));
|
|
19
33
|
}
|
|
20
34
|
|
|
21
35
|
/**
|
|
@@ -24,15 +38,10 @@ export async function poseidon2Hash(input: Fieldable[]): Promise<Fr> {
|
|
|
24
38
|
* @param separator - The domain separator.
|
|
25
39
|
* @returns The poseidon hash.
|
|
26
40
|
*/
|
|
27
|
-
export
|
|
41
|
+
export function poseidon2HashWithSeparator(input: Fieldable[], separator: number): Promise<Fr> {
|
|
28
42
|
const inputFields = serializeToFields(input);
|
|
29
43
|
inputFields.unshift(new Fr(separator));
|
|
30
|
-
|
|
31
|
-
const api = Barretenberg.getSingleton();
|
|
32
|
-
const response = await api.poseidon2Hash({
|
|
33
|
-
inputs: inputFields.map(i => i.toBuffer()),
|
|
34
|
-
});
|
|
35
|
-
return Fr.fromBuffer(Buffer.from(response.hash));
|
|
44
|
+
return poseidon2HashFields(inputFields);
|
|
36
45
|
}
|
|
37
46
|
|
|
38
47
|
/**
|
|
@@ -42,19 +51,24 @@ export async function poseidon2HashWithSeparator(input: Fieldable[], separator:
|
|
|
42
51
|
*/
|
|
43
52
|
export async function poseidon2Permutation(input: Fieldable[]): Promise<Fr[]> {
|
|
44
53
|
const inputFields = serializeToFields(input);
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
54
|
+
if (IS_BROWSER) {
|
|
55
|
+
await BarretenbergSync.initSingleton();
|
|
56
|
+
const api = BarretenbergSync.getSingleton();
|
|
57
|
+
const response = api.poseidon2Permutation({
|
|
58
|
+
inputs: inputFields.map(i => i.toBuffer()),
|
|
59
|
+
});
|
|
60
|
+
return response.outputs.map(o => Fr.fromBuffer(Buffer.from(o)));
|
|
61
|
+
} else {
|
|
62
|
+
await Barretenberg.initSingleton();
|
|
63
|
+
const api = Barretenberg.getSingleton();
|
|
64
|
+
const response = await api.poseidon2Permutation({
|
|
65
|
+
inputs: inputFields.map(i => i.toBuffer()),
|
|
66
|
+
});
|
|
67
|
+
return response.outputs.map(o => Fr.fromBuffer(Buffer.from(o)));
|
|
68
|
+
}
|
|
55
69
|
}
|
|
56
70
|
|
|
57
|
-
export
|
|
71
|
+
export function poseidon2HashBytes(input: Buffer): Promise<Fr> {
|
|
58
72
|
const inputFields = [];
|
|
59
73
|
for (let i = 0; i < input.length; i += 31) {
|
|
60
74
|
const fieldBytes = Buffer.alloc(32, 0);
|
|
@@ -65,11 +79,5 @@ export async function poseidon2HashBytes(input: Buffer): Promise<Fr> {
|
|
|
65
79
|
inputFields.push(Fr.fromBuffer(fieldBytes));
|
|
66
80
|
}
|
|
67
81
|
|
|
68
|
-
|
|
69
|
-
const api = Barretenberg.getSingleton();
|
|
70
|
-
const response = await api.poseidon2Hash({
|
|
71
|
-
inputs: inputFields.map(i => i.toBuffer()),
|
|
72
|
-
});
|
|
73
|
-
|
|
74
|
-
return Fr.fromBuffer(Buffer.from(response.hash));
|
|
82
|
+
return poseidon2HashFields(inputFields);
|
|
75
83
|
}
|
|
@@ -0,0 +1,98 @@
|
|
|
1
|
+
import EventEmitter from 'node:events';
|
|
2
|
+
import * as fs from 'node:fs';
|
|
3
|
+
import type { Readable } from 'node:stream';
|
|
4
|
+
|
|
5
|
+
/**
|
|
6
|
+
* Events emitted by FifoFrameReader.
|
|
7
|
+
*
|
|
8
|
+
* - `frame`: A complete frame payload (without the 4-byte length header).
|
|
9
|
+
* - `error`: An unrecoverable error (invalid frame length, stream error).
|
|
10
|
+
* - `end`: The underlying stream has ended.
|
|
11
|
+
*/
|
|
12
|
+
export interface FifoFrameReaderEvents {
|
|
13
|
+
frame: [payload: Buffer];
|
|
14
|
+
error: [error: Error];
|
|
15
|
+
end: [];
|
|
16
|
+
}
|
|
17
|
+
|
|
18
|
+
/**
|
|
19
|
+
* Reads length-delimited frames from a readable stream (typically a named FIFO pipe).
|
|
20
|
+
*
|
|
21
|
+
* Wire format: `[4-byte big-endian payload length][payload bytes]`
|
|
22
|
+
*
|
|
23
|
+
* Emits a `frame` event for each complete frame with the raw payload buffer.
|
|
24
|
+
* Callers are responsible for deserializing the payload (e.g., via msgpack).
|
|
25
|
+
*
|
|
26
|
+
* On encountering an invalid payload length (0 or >maxPayloadSize), emits `error`
|
|
27
|
+
* and destroys the stream.
|
|
28
|
+
*/
|
|
29
|
+
export class FifoFrameReader extends EventEmitter<FifoFrameReaderEvents> {
|
|
30
|
+
private stream: Readable | null = null;
|
|
31
|
+
private pendingBuf: Buffer = Buffer.alloc(0);
|
|
32
|
+
private running = false;
|
|
33
|
+
|
|
34
|
+
constructor(private readonly maxPayloadSize = 10 * 1024 * 1024) {
|
|
35
|
+
super();
|
|
36
|
+
}
|
|
37
|
+
|
|
38
|
+
/** Open a FIFO at the given path and start reading frames. */
|
|
39
|
+
start(fifoPath: string, highWaterMark = 64 * 1024): void {
|
|
40
|
+
this.startFromStream(fs.createReadStream(fifoPath, { highWaterMark }));
|
|
41
|
+
}
|
|
42
|
+
|
|
43
|
+
/** Start reading frames from an existing readable stream. */
|
|
44
|
+
startFromStream(stream: Readable): void {
|
|
45
|
+
if (this.running) {
|
|
46
|
+
throw new Error('FifoFrameReader is already running');
|
|
47
|
+
}
|
|
48
|
+
this.running = true;
|
|
49
|
+
this.pendingBuf = Buffer.alloc(0);
|
|
50
|
+
this.stream = stream;
|
|
51
|
+
|
|
52
|
+
stream.on('data', (chunk: Buffer | string) => {
|
|
53
|
+
const buf = Buffer.isBuffer(chunk) ? chunk : Buffer.from(chunk);
|
|
54
|
+
this.pendingBuf = this.pendingBuf.length > 0 ? Buffer.concat([this.pendingBuf, buf]) : buf;
|
|
55
|
+
this.drainFrames();
|
|
56
|
+
});
|
|
57
|
+
|
|
58
|
+
stream.on('error', (err: Error) => {
|
|
59
|
+
if (this.running) {
|
|
60
|
+
this.emit('error', err);
|
|
61
|
+
}
|
|
62
|
+
});
|
|
63
|
+
|
|
64
|
+
stream.on('end', () => {
|
|
65
|
+
this.emit('end');
|
|
66
|
+
});
|
|
67
|
+
}
|
|
68
|
+
|
|
69
|
+
/** Stop reading and destroy the underlying stream. */
|
|
70
|
+
stop(): void {
|
|
71
|
+
this.running = false;
|
|
72
|
+
if (this.stream) {
|
|
73
|
+
this.stream.destroy();
|
|
74
|
+
this.stream = null;
|
|
75
|
+
}
|
|
76
|
+
}
|
|
77
|
+
|
|
78
|
+
/** Parse complete frames out of the pending buffer. */
|
|
79
|
+
private drainFrames(): void {
|
|
80
|
+
while (this.pendingBuf.length >= 4) {
|
|
81
|
+
const payloadLen = this.pendingBuf.readUInt32BE(0);
|
|
82
|
+
if (payloadLen === 0 || payloadLen > this.maxPayloadSize) {
|
|
83
|
+
this.emit('error', new Error(`Invalid payload length: ${payloadLen}`));
|
|
84
|
+
this.stop();
|
|
85
|
+
return;
|
|
86
|
+
}
|
|
87
|
+
|
|
88
|
+
const frameLen = 4 + payloadLen;
|
|
89
|
+
if (this.pendingBuf.length < frameLen) {
|
|
90
|
+
break; // Wait for more data
|
|
91
|
+
}
|
|
92
|
+
|
|
93
|
+
const payload = this.pendingBuf.subarray(4, frameLen);
|
|
94
|
+
this.pendingBuf = this.pendingBuf.subarray(frameLen);
|
|
95
|
+
this.emit('frame', Buffer.from(payload));
|
|
96
|
+
}
|
|
97
|
+
}
|
|
98
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export { FifoFrameReader } from './fifo_frame_reader.js';
|