@aztec/stdlib 0.0.1-commit.b2a5d0dd1 → 0.0.1-commit.b3d3157a
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/abi/abi.d.ts +121 -1197
- package/dest/abi/abi.d.ts.map +1 -1
- package/dest/abi/abi.js +31 -16
- package/dest/abi/authorization_selector.d.ts +2 -2
- package/dest/abi/authorization_selector.d.ts.map +1 -1
- package/dest/abi/contract_artifact.d.ts +1 -1
- package/dest/abi/contract_artifact.d.ts.map +1 -1
- package/dest/abi/contract_artifact.js +14 -7
- package/dest/abi/event_selector.d.ts +2 -2
- package/dest/abi/event_selector.d.ts.map +1 -1
- package/dest/abi/function_call.d.ts +7 -25
- package/dest/abi/function_call.d.ts.map +1 -1
- package/dest/abi/note_selector.d.ts +2 -2
- package/dest/abi/note_selector.d.ts.map +1 -1
- package/dest/abi/utils.d.ts +1 -1
- package/dest/abi/utils.d.ts.map +1 -1
- package/dest/abi/utils.js +1 -1
- package/dest/auth_witness/auth_witness.d.ts +2 -2
- package/dest/auth_witness/auth_witness.d.ts.map +1 -1
- package/dest/avm/avm.d.ts +1756 -10463
- package/dest/avm/avm.d.ts.map +1 -1
- package/dest/avm/avm.js +6 -3
- package/dest/avm/avm_accumulated_data.d.ts +22 -86
- package/dest/avm/avm_accumulated_data.d.ts.map +1 -1
- package/dest/avm/avm_circuit_public_inputs.d.ts +180 -932
- package/dest/avm/avm_circuit_public_inputs.d.ts.map +1 -1
- package/dest/avm/avm_proving_request.d.ts +653 -5446
- package/dest/avm/avm_proving_request.d.ts.map +1 -1
- package/dest/avm/message_pack.js +12 -3
- package/dest/avm/public_data_write.d.ts +6 -12
- package/dest/avm/public_data_write.d.ts.map +1 -1
- package/dest/avm/revert_code.d.ts +1 -7
- package/dest/avm/revert_code.d.ts.map +1 -1
- package/dest/avm/revert_code.js +0 -3
- package/dest/aztec-address/index.d.ts +6 -3
- package/dest/aztec-address/index.d.ts.map +1 -1
- package/dest/aztec-address/index.js +7 -2
- package/dest/block/attestation_info.d.ts +3 -2
- package/dest/block/attestation_info.d.ts.map +1 -1
- package/dest/block/attestation_info.js +7 -5
- package/dest/block/block_data.d.ts +9 -34
- package/dest/block/block_data.d.ts.map +1 -1
- package/dest/block/block_parameter.d.ts +37 -4
- package/dest/block/block_parameter.d.ts.map +1 -1
- package/dest/block/block_parameter.js +53 -2
- package/dest/block/in_block.d.ts +5 -24
- package/dest/block/in_block.d.ts.map +1 -1
- package/dest/block/index.d.ts +1 -2
- package/dest/block/index.d.ts.map +1 -1
- package/dest/block/index.js +0 -1
- package/dest/block/l2_block.d.ts +13 -41
- package/dest/block/l2_block.d.ts.map +1 -1
- package/dest/block/l2_block_info.d.ts +7 -27
- package/dest/block/l2_block_info.d.ts.map +1 -1
- package/dest/block/l2_block_source.d.ts +199 -425
- package/dest/block/l2_block_source.d.ts.map +1 -1
- package/dest/block/l2_block_source.js +66 -1
- package/dest/block/l2_block_stream/l2_block_stream.d.ts +2 -2
- package/dest/block/l2_block_stream/l2_block_stream.d.ts.map +1 -1
- package/dest/block/l2_block_stream/l2_block_stream.js +44 -17
- package/dest/block/l2_block_stream/l2_tips_memory_store.d.ts +3 -1
- package/dest/block/l2_block_stream/l2_tips_memory_store.d.ts.map +1 -1
- package/dest/block/l2_block_stream/l2_tips_memory_store.js +3 -0
- package/dest/block/l2_block_stream/l2_tips_store_base.d.ts +4 -1
- package/dest/block/l2_block_stream/l2_tips_store_base.d.ts.map +1 -1
- package/dest/block/l2_block_stream/l2_tips_store_base.js +26 -7
- package/dest/block/proposal/attestations_and_signers.d.ts +19 -30
- package/dest/block/proposal/attestations_and_signers.d.ts.map +1 -1
- package/dest/block/proposal/attestations_and_signers.js +26 -18
- package/dest/block/proposal/committee_attestation.d.ts +6 -12
- package/dest/block/proposal/committee_attestation.d.ts.map +1 -1
- package/dest/block/test/l2_tips_store_test_suite.js +1 -1
- package/dest/checkpoint/checkpoint.d.ts +24 -96
- package/dest/checkpoint/checkpoint.d.ts.map +1 -1
- package/dest/checkpoint/checkpoint_data.d.ts +40 -129
- package/dest/checkpoint/checkpoint_data.d.ts.map +1 -1
- package/dest/checkpoint/checkpoint_data.js +2 -0
- package/dest/checkpoint/checkpoint_info.d.ts +7 -23
- package/dest/checkpoint/checkpoint_info.d.ts.map +1 -1
- package/dest/checkpoint/checkpoint_reexecution_tracker.d.ts +60 -0
- package/dest/checkpoint/checkpoint_reexecution_tracker.d.ts.map +1 -0
- package/dest/checkpoint/checkpoint_reexecution_tracker.js +108 -0
- package/dest/checkpoint/digest.d.ts +18 -0
- package/dest/checkpoint/digest.d.ts.map +1 -0
- package/dest/checkpoint/digest.js +12 -0
- package/dest/checkpoint/index.d.ts +4 -1
- package/dest/checkpoint/index.d.ts.map +1 -1
- package/dest/checkpoint/index.js +3 -0
- package/dest/checkpoint/previous_checkpoint_out_hashes.d.ts +33 -0
- package/dest/checkpoint/previous_checkpoint_out_hashes.d.ts.map +1 -0
- package/dest/checkpoint/previous_checkpoint_out_hashes.js +45 -0
- package/dest/checkpoint/published_checkpoint.d.ts +42 -194
- package/dest/checkpoint/published_checkpoint.d.ts.map +1 -1
- package/dest/config/chain-config.d.ts +4 -9
- package/dest/config/chain-config.d.ts.map +1 -1
- package/dest/config/chain-config.js +6 -11
- package/dest/config/index.d.ts +1 -2
- package/dest/config/index.d.ts.map +1 -1
- package/dest/config/index.js +0 -1
- package/dest/config/sequencer-config.d.ts +5 -3
- package/dest/config/sequencer-config.d.ts.map +1 -1
- package/dest/config/sequencer-config.js +13 -6
- package/dest/contract/complete_address.d.ts +3 -2
- package/dest/contract/complete_address.d.ts.map +1 -1
- package/dest/contract/complete_address.js +6 -2
- package/dest/contract/contract_address.d.ts +5 -5
- package/dest/contract/contract_address.d.ts.map +1 -1
- package/dest/contract/contract_address.js +5 -4
- package/dest/contract/contract_deployment_data.d.ts +15 -61
- package/dest/contract/contract_deployment_data.d.ts.map +1 -1
- package/dest/contract/contract_instance.d.ts +4 -2
- package/dest/contract/contract_instance.d.ts.map +1 -1
- package/dest/contract/contract_instance.js +10 -3
- package/dest/contract/interfaces/contract_class.d.ts +15 -86
- package/dest/contract/interfaces/contract_class.d.ts.map +1 -1
- package/dest/contract/interfaces/contract_instance.d.ts +41 -95
- package/dest/contract/interfaces/contract_instance.d.ts.map +1 -1
- package/dest/contract/interfaces/contract_instance.js +4 -2
- package/dest/contract/interfaces/contract_instance_update.d.ts +6 -26
- package/dest/contract/interfaces/contract_instance_update.d.ts.map +1 -1
- package/dest/contract/interfaces/protocol_contract_addresses.d.ts +2 -12
- package/dest/contract/interfaces/protocol_contract_addresses.d.ts.map +1 -1
- package/dest/database-version/database_version.d.ts +5 -11
- package/dest/database-version/database_version.d.ts.map +1 -1
- package/dest/database-version/version_manager.d.ts +6 -2
- package/dest/database-version/version_manager.d.ts.map +1 -1
- package/dest/database-version/version_manager.js +12 -1
- package/dest/epoch-helpers/index.d.ts +4 -22
- package/dest/epoch-helpers/index.d.ts.map +1 -1
- package/dest/gas/gas.d.ts +9 -14
- package/dest/gas/gas.d.ts.map +1 -1
- package/dest/gas/gas.js +6 -3
- package/dest/gas/gas_fees.d.ts +9 -14
- package/dest/gas/gas_fees.d.ts.map +1 -1
- package/dest/gas/gas_fees.js +7 -3
- package/dest/gas/gas_settings.d.ts +27 -84
- package/dest/gas/gas_settings.d.ts.map +1 -1
- package/dest/gas/gas_settings.js +6 -3
- package/dest/ha-signing/config.d.ts +9 -73
- package/dest/ha-signing/config.d.ts.map +1 -1
- package/dest/ha-signing/config.js +5 -15
- package/dest/ha-signing/local_config.d.ts +3 -34
- package/dest/ha-signing/local_config.d.ts.map +1 -1
- package/dest/ha-signing/local_config.js +2 -2
- package/dest/hash/hash.d.ts +1 -1
- package/dest/hash/hash.d.ts.map +1 -1
- package/dest/hash/hash.js +2 -2
- package/dest/interfaces/allowed_element.d.ts +4 -28
- package/dest/interfaces/allowed_element.d.ts.map +1 -1
- package/dest/interfaces/api_limit.d.ts +1 -1
- package/dest/interfaces/api_limit.js +1 -1
- package/dest/interfaces/archiver.d.ts +16 -36
- package/dest/interfaces/archiver.d.ts.map +1 -1
- package/dest/interfaces/archiver.js +211 -71
- package/dest/interfaces/aztec-node-admin.d.ts +62 -292
- package/dest/interfaces/aztec-node-admin.d.ts.map +1 -1
- package/dest/interfaces/aztec-node-admin.js +57 -14
- package/dest/interfaces/aztec-node-debug.js +4 -1
- package/dest/interfaces/aztec-node.d.ts +100 -106
- package/dest/interfaces/aztec-node.d.ts.map +1 -1
- package/dest/interfaces/aztec-node.js +308 -70
- package/dest/interfaces/block-builder.d.ts +3 -1
- package/dest/interfaces/block-builder.d.ts.map +1 -1
- package/dest/interfaces/block_response.d.ts +90 -0
- package/dest/interfaces/block_response.d.ts.map +1 -0
- package/dest/interfaces/block_response.js +30 -0
- package/dest/interfaces/chain_tips.d.ts +50 -0
- package/dest/interfaces/chain_tips.d.ts.map +1 -0
- package/dest/interfaces/chain_tips.js +11 -0
- package/dest/interfaces/checkpoint_parameter.d.ts +14 -0
- package/dest/interfaces/checkpoint_parameter.d.ts.map +1 -0
- package/dest/interfaces/checkpoint_parameter.js +18 -0
- package/dest/interfaces/checkpoint_response.d.ts +122 -0
- package/dest/interfaces/checkpoint_response.d.ts.map +1 -0
- package/dest/interfaces/checkpoint_response.js +26 -0
- package/dest/interfaces/client.d.ts +7 -2
- package/dest/interfaces/client.d.ts.map +1 -1
- package/dest/interfaces/client.js +6 -1
- package/dest/interfaces/configs.d.ts +41 -130
- package/dest/interfaces/configs.d.ts.map +1 -1
- package/dest/interfaces/configs.js +9 -1
- package/dest/interfaces/l1_publish_info.d.ts +29 -0
- package/dest/interfaces/l1_publish_info.d.ts.map +1 -0
- package/dest/interfaces/l1_publish_info.js +26 -0
- package/dest/interfaces/l2_logs_source.d.ts +14 -36
- package/dest/interfaces/l2_logs_source.d.ts.map +1 -1
- package/dest/interfaces/l2_logs_source.js +5 -0
- package/dest/interfaces/merkle_tree_operations.d.ts +9 -3
- package/dest/interfaces/merkle_tree_operations.d.ts.map +1 -1
- package/dest/interfaces/p2p-bootstrap.js +8 -2
- package/dest/interfaces/p2p.d.ts +15 -5
- package/dest/interfaces/p2p.d.ts.map +1 -1
- package/dest/interfaces/p2p.js +28 -5
- package/dest/interfaces/private_kernel_prover.d.ts +62 -2
- package/dest/interfaces/private_kernel_prover.d.ts.map +1 -1
- package/dest/interfaces/prover-agent.d.ts +5 -23
- package/dest/interfaces/prover-agent.d.ts.map +1 -1
- package/dest/interfaces/prover-agent.js +4 -1
- package/dest/interfaces/prover-client.d.ts +6 -27
- package/dest/interfaces/prover-client.d.ts.map +1 -1
- package/dest/interfaces/prover-node.js +22 -8
- package/dest/interfaces/proving-job-source.js +24 -4
- package/dest/interfaces/proving-job.d.ts +725 -5776
- package/dest/interfaces/proving-job.d.ts.map +1 -1
- package/dest/interfaces/proving-job.js +1 -1
- package/dest/interfaces/public_storage_override.d.ts +22 -0
- package/dest/interfaces/public_storage_override.d.ts.map +1 -0
- package/dest/interfaces/public_storage_override.js +7 -0
- package/dest/interfaces/server.d.ts +6 -1
- package/dest/interfaces/server.d.ts.map +1 -1
- package/dest/interfaces/server.js +5 -0
- package/dest/interfaces/slasher.d.ts +25 -56
- package/dest/interfaces/slasher.d.ts.map +1 -1
- package/dest/interfaces/slasher.js +8 -2
- package/dest/interfaces/tx_provider.d.ts +6 -1
- package/dest/interfaces/tx_provider.d.ts.map +1 -1
- package/dest/interfaces/validator.d.ts +40 -229
- package/dest/interfaces/validator.d.ts.map +1 -1
- package/dest/interfaces/validator.js +5 -0
- package/dest/interfaces/world_state.d.ts +2 -2
- package/dest/interfaces/world_state.d.ts.map +1 -1
- package/dest/kernel/hints/key_validation_request.d.ts +12 -8
- package/dest/kernel/hints/key_validation_request.d.ts.map +1 -1
- package/dest/kernel/hints/key_validation_request.js +20 -18
- package/dest/kernel/index.d.ts +5 -1
- package/dest/kernel/index.d.ts.map +1 -1
- package/dest/kernel/index.js +4 -0
- package/dest/kernel/log_hash.d.ts +6 -2
- package/dest/kernel/log_hash.d.ts.map +1 -1
- package/dest/kernel/log_hash.js +21 -9
- package/dest/kernel/private_circuit_public_inputs.d.ts +2 -2
- package/dest/kernel/private_circuit_public_inputs.d.ts.map +1 -1
- package/dest/kernel/private_kernel_circuit_public_inputs.d.ts +2 -2
- package/dest/kernel/private_kernel_circuit_public_inputs.d.ts.map +1 -1
- package/dest/kernel/private_kernel_init_2_circuit_private_inputs.d.ts +23 -0
- package/dest/kernel/private_kernel_init_2_circuit_private_inputs.d.ts.map +1 -0
- package/dest/kernel/private_kernel_init_2_circuit_private_inputs.js +35 -0
- package/dest/kernel/private_kernel_init_3_circuit_private_inputs.d.ts +24 -0
- package/dest/kernel/private_kernel_init_3_circuit_private_inputs.d.ts.map +1 -0
- package/dest/kernel/private_kernel_init_3_circuit_private_inputs.js +37 -0
- package/dest/kernel/private_kernel_inner_2_circuit_private_inputs.d.ts +16 -0
- package/dest/kernel/private_kernel_inner_2_circuit_private_inputs.d.ts.map +1 -0
- package/dest/kernel/private_kernel_inner_2_circuit_private_inputs.js +23 -0
- package/dest/kernel/private_kernel_inner_3_circuit_private_inputs.d.ts +17 -0
- package/dest/kernel/private_kernel_inner_3_circuit_private_inputs.d.ts.map +1 -0
- package/dest/kernel/private_kernel_inner_3_circuit_private_inputs.js +25 -0
- package/dest/kernel/private_kernel_prover_output.d.ts +3 -29
- package/dest/kernel/private_kernel_prover_output.d.ts.map +1 -1
- package/dest/kernel/private_kernel_tail_circuit_public_inputs.d.ts +9 -6
- package/dest/kernel/private_kernel_tail_circuit_public_inputs.d.ts.map +1 -1
- package/dest/kernel/private_kernel_tail_circuit_public_inputs.js +22 -7
- package/dest/kernel/private_to_avm_accumulated_data.d.ts +25 -69
- package/dest/kernel/private_to_avm_accumulated_data.d.ts.map +1 -1
- package/dest/kernel/private_to_avm_accumulated_data.js +11 -5
- package/dest/kernel/private_to_public_accumulated_data.d.ts +4 -3
- package/dest/kernel/private_to_public_accumulated_data.d.ts.map +1 -1
- package/dest/kernel/private_to_public_accumulated_data.js +6 -3
- package/dest/kernel/private_to_public_kernel_circuit_public_inputs.d.ts +5 -4
- package/dest/kernel/private_to_public_kernel_circuit_public_inputs.d.ts.map +1 -1
- package/dest/kernel/private_to_public_kernel_circuit_public_inputs.js +7 -3
- package/dest/kernel/private_to_rollup_accumulated_data.d.ts +5 -4
- package/dest/kernel/private_to_rollup_accumulated_data.d.ts.map +1 -1
- package/dest/kernel/private_to_rollup_accumulated_data.js +6 -3
- package/dest/kernel/private_to_rollup_kernel_circuit_public_inputs.d.ts +5 -4
- package/dest/kernel/private_to_rollup_kernel_circuit_public_inputs.d.ts.map +1 -1
- package/dest/kernel/private_to_rollup_kernel_circuit_public_inputs.js +7 -3
- package/dest/kernel/public_call_request.d.ts +15 -30
- package/dest/kernel/public_call_request.d.ts.map +1 -1
- package/dest/kernel/public_call_request.js +16 -7
- package/dest/keys/derivation.d.ts +6 -2
- package/dest/keys/derivation.d.ts.map +1 -1
- package/dest/keys/derivation.js +16 -6
- package/dest/keys/public_key.d.ts +22 -3
- package/dest/keys/public_key.d.ts.map +1 -1
- package/dest/keys/public_key.js +20 -1
- package/dest/keys/public_keys.d.ts +55 -82
- package/dest/keys/public_keys.d.ts.map +1 -1
- package/dest/keys/public_keys.js +102 -74
- package/dest/kv-store/config.d.ts +3 -6
- package/dest/kv-store/config.d.ts.map +1 -1
- package/dest/kv-store/config.js +2 -7
- package/dest/logs/app_tagging_secret.d.ts +46 -0
- package/dest/logs/app_tagging_secret.d.ts.map +1 -0
- package/dest/logs/{extended_directional_app_tagging_secret.js → app_tagging_secret.js} +51 -21
- package/dest/logs/app_tagging_secret_kind.d.ts +7 -0
- package/dest/logs/app_tagging_secret_kind.d.ts.map +1 -0
- package/dest/logs/app_tagging_secret_kind.js +17 -0
- package/dest/logs/contract_class_log.d.ts +16 -34
- package/dest/logs/contract_class_log.d.ts.map +1 -1
- package/dest/logs/contract_class_log.js +11 -9
- package/dest/logs/index.d.ts +7 -7
- package/dest/logs/index.d.ts.map +1 -1
- package/dest/logs/index.js +6 -6
- package/dest/logs/log_cursor.d.ts +51 -0
- package/dest/logs/log_cursor.d.ts.map +1 -0
- package/dest/logs/log_cursor.js +82 -0
- package/dest/logs/log_result.d.ts +54 -0
- package/dest/logs/log_result.d.ts.map +1 -0
- package/dest/logs/log_result.js +56 -0
- package/dest/logs/logs_query.d.ts +82 -0
- package/dest/logs/logs_query.d.ts.map +1 -0
- package/dest/logs/logs_query.js +50 -0
- package/dest/logs/message_context.d.ts +3 -2
- package/dest/logs/message_context.d.ts.map +1 -1
- package/dest/logs/message_context.js +4 -0
- package/dest/logs/pre_tag.d.ts +11 -24
- package/dest/logs/pre_tag.d.ts.map +1 -1
- package/dest/logs/pre_tag.js +2 -2
- package/dest/logs/private_log.d.ts +7 -12
- package/dest/logs/private_log.d.ts.map +1 -1
- package/dest/logs/private_log.js +6 -3
- package/dest/logs/query_all_logs_by_tags.d.ts +24 -0
- package/dest/logs/query_all_logs_by_tags.d.ts.map +1 -0
- package/dest/logs/query_all_logs_by_tags.js +64 -0
- package/dest/logs/siloed_tag.d.ts +1 -1
- package/dest/logs/siloed_tag.d.ts.map +1 -1
- package/dest/logs/siloed_tag.js +3 -1
- package/dest/logs/tagging_index_range.d.ts +13 -31
- package/dest/logs/tagging_index_range.d.ts.map +1 -1
- package/dest/logs/tagging_index_range.js +2 -2
- package/dest/messaging/append_l1_to_l2_messages.d.ts +9 -0
- package/dest/messaging/append_l1_to_l2_messages.d.ts.map +1 -0
- package/dest/messaging/append_l1_to_l2_messages.js +12 -0
- package/dest/messaging/index.d.ts +2 -1
- package/dest/messaging/index.d.ts.map +1 -1
- package/dest/messaging/index.js +1 -0
- package/dest/messaging/l2_to_l1_membership.d.ts +43 -6
- package/dest/messaging/l2_to_l1_membership.d.ts.map +1 -1
- package/dest/messaging/l2_to_l1_membership.js +72 -12
- package/dest/messaging/l2_to_l1_message.d.ts +38 -112
- package/dest/messaging/l2_to_l1_message.d.ts.map +1 -1
- package/dest/messaging/l2_to_l1_message.js +21 -12
- package/dest/noir/index.d.ts +3 -1
- package/dest/noir/index.d.ts.map +1 -1
- package/dest/note/note.d.ts +2 -2
- package/dest/note/note.d.ts.map +1 -1
- package/dest/p2p/block_proposal.d.ts +29 -10
- package/dest/p2p/block_proposal.d.ts.map +1 -1
- package/dest/p2p/block_proposal.js +56 -33
- package/dest/p2p/checkpoint_attestation.d.ts +14 -6
- package/dest/p2p/checkpoint_attestation.d.ts.map +1 -1
- package/dest/p2p/checkpoint_attestation.js +24 -20
- package/dest/p2p/checkpoint_proposal.d.ts +31 -10
- package/dest/p2p/checkpoint_proposal.d.ts.map +1 -1
- package/dest/p2p/checkpoint_proposal.js +58 -31
- package/dest/p2p/consensus_payload.d.ts +26 -20
- package/dest/p2p/consensus_payload.d.ts.map +1 -1
- package/dest/p2p/consensus_payload.js +38 -19
- package/dest/p2p/signature_utils.d.ts +28 -19
- package/dest/p2p/signature_utils.d.ts.map +1 -1
- package/dest/p2p/signature_utils.js +118 -21
- package/dest/p2p/signed_txs.d.ts +15 -13
- package/dest/p2p/signed_txs.d.ts.map +1 -1
- package/dest/p2p/signed_txs.js +26 -24
- package/dest/parity/parity_base_private_inputs.d.ts +8 -4
- package/dest/parity/parity_base_private_inputs.d.ts.map +1 -1
- package/dest/parity/parity_base_private_inputs.js +7 -5
- package/dest/parity/parity_public_inputs.d.ts +8 -4
- package/dest/parity/parity_public_inputs.d.ts.map +1 -1
- package/dest/parity/parity_public_inputs.js +6 -3
- package/dest/parity/parity_root_private_inputs.d.ts +2 -2
- package/dest/parity/parity_root_private_inputs.d.ts.map +1 -1
- package/dest/proofs/chonk_proof.d.ts +17 -11
- package/dest/proofs/chonk_proof.d.ts.map +1 -1
- package/dest/proofs/chonk_proof.js +44 -22
- package/dest/proofs/recursive_proof.d.ts +2 -2
- package/dest/proofs/recursive_proof.d.ts.map +1 -1
- package/dest/rollup/block_merge_rollup_private_inputs.d.ts +2 -2
- package/dest/rollup/block_merge_rollup_private_inputs.d.ts.map +1 -1
- package/dest/rollup/block_rollup_public_inputs.d.ts +12 -2
- package/dest/rollup/block_rollup_public_inputs.d.ts.map +1 -1
- package/dest/rollup/block_rollup_public_inputs.js +12 -0
- package/dest/rollup/block_root_rollup_private_inputs.d.ts +6 -6
- package/dest/rollup/block_root_rollup_private_inputs.d.ts.map +1 -1
- package/dest/rollup/checkpoint_merge_rollup_private_inputs.d.ts +2 -2
- package/dest/rollup/checkpoint_merge_rollup_private_inputs.d.ts.map +1 -1
- package/dest/rollup/checkpoint_rollup_public_inputs.d.ts +9 -2
- package/dest/rollup/checkpoint_rollup_public_inputs.d.ts.map +1 -1
- package/dest/rollup/checkpoint_rollup_public_inputs.js +9 -0
- package/dest/rollup/checkpoint_root_rollup_private_inputs.d.ts +5 -5
- package/dest/rollup/checkpoint_root_rollup_private_inputs.d.ts.map +1 -1
- package/dest/rollup/private_tx_base_rollup_private_inputs.d.ts +2 -2
- package/dest/rollup/private_tx_base_rollup_private_inputs.d.ts.map +1 -1
- package/dest/rollup/public_chonk_verifier_private_inputs.d.ts +2 -2
- package/dest/rollup/public_chonk_verifier_private_inputs.d.ts.map +1 -1
- package/dest/rollup/public_chonk_verifier_public_inputs.d.ts +2 -2
- package/dest/rollup/public_chonk_verifier_public_inputs.d.ts.map +1 -1
- package/dest/rollup/public_tx_base_rollup_private_inputs.d.ts +2 -2
- package/dest/rollup/public_tx_base_rollup_private_inputs.d.ts.map +1 -1
- package/dest/rollup/root_rollup_private_inputs.d.ts +2 -2
- package/dest/rollup/root_rollup_private_inputs.d.ts.map +1 -1
- package/dest/rollup/root_rollup_public_inputs.d.ts +2 -2
- package/dest/rollup/root_rollup_public_inputs.d.ts.map +1 -1
- package/dest/rollup/tx_merge_rollup_private_inputs.d.ts +2 -2
- package/dest/rollup/tx_merge_rollup_private_inputs.d.ts.map +1 -1
- package/dest/rollup/tx_rollup_public_inputs.d.ts +2 -2
- package/dest/rollup/tx_rollup_public_inputs.d.ts.map +1 -1
- package/dest/schemas/schemas.d.ts +32 -78
- package/dest/schemas/schemas.d.ts.map +1 -1
- package/dest/schemas/schemas.js +2 -2
- package/dest/slashing/helpers.d.ts +2 -2
- package/dest/slashing/helpers.d.ts.map +1 -1
- package/dest/slashing/helpers.js +10 -7
- package/dest/slashing/types.d.ts +15 -23
- package/dest/slashing/types.d.ts.map +1 -1
- package/dest/slashing/types.js +16 -10
- package/dest/snapshots/types.d.ts +15 -78
- package/dest/snapshots/types.d.ts.map +1 -1
- package/dest/stats/stats.d.ts +2 -2
- package/dest/stats/stats.d.ts.map +1 -1
- package/dest/tests/factories.d.ts +23 -23
- package/dest/tests/factories.d.ts.map +1 -1
- package/dest/tests/factories.js +70 -47
- package/dest/tests/mocks.d.ts +8 -5
- package/dest/tests/mocks.d.ts.map +1 -1
- package/dest/tests/mocks.js +31 -38
- package/dest/timetable/index.d.ts +7 -10
- package/dest/timetable/index.d.ts.map +1 -1
- package/dest/timetable/index.js +60 -80
- package/dest/trees/append_only_tree_snapshot.d.ts +9 -14
- package/dest/trees/append_only_tree_snapshot.d.ts.map +1 -1
- package/dest/trees/append_only_tree_snapshot.js +6 -3
- package/dest/trees/nullifier_leaf.d.ts +18 -42
- package/dest/trees/nullifier_leaf.d.ts.map +1 -1
- package/dest/trees/nullifier_membership_witness.d.ts +16 -59
- package/dest/trees/nullifier_membership_witness.d.ts.map +1 -1
- package/dest/trees/nullifier_membership_witness.js +2 -14
- package/dest/trees/public_data_leaf.d.ts +21 -53
- package/dest/trees/public_data_leaf.d.ts.map +1 -1
- package/dest/trees/public_data_witness.d.ts +16 -58
- package/dest/trees/public_data_witness.d.ts.map +1 -1
- package/dest/tx/block_header.d.ts +4 -3
- package/dest/tx/block_header.d.ts.map +1 -1
- package/dest/tx/block_header.js +6 -3
- package/dest/tx/call_context.d.ts +4 -14
- package/dest/tx/call_context.d.ts.map +1 -1
- package/dest/tx/capsule.d.ts +2 -2
- package/dest/tx/capsule.d.ts.map +1 -1
- package/dest/tx/function_data.d.ts +4 -10
- package/dest/tx/function_data.d.ts.map +1 -1
- package/dest/tx/global_variables.d.ts +16 -49
- package/dest/tx/global_variables.d.ts.map +1 -1
- package/dest/tx/global_variables.js +8 -12
- package/dest/tx/hashed_values.d.ts +4 -3
- package/dest/tx/hashed_values.d.ts.map +1 -1
- package/dest/tx/hashed_values.js +6 -3
- package/dest/tx/in_tx.d.ts +5 -17
- package/dest/tx/in_tx.d.ts.map +1 -1
- package/dest/tx/indexed_tx_effect.d.ts +8 -19
- package/dest/tx/indexed_tx_effect.d.ts.map +1 -1
- package/dest/tx/indexed_tx_effect.js +8 -4
- package/dest/tx/partial_state_reference.d.ts +22 -65
- package/dest/tx/partial_state_reference.d.ts.map +1 -1
- package/dest/tx/partial_state_reference.js +6 -3
- package/dest/tx/private_execution_result.d.ts +6 -16
- package/dest/tx/private_execution_result.d.ts.map +1 -1
- package/dest/tx/profiling.d.ts +54 -352
- package/dest/tx/profiling.d.ts.map +1 -1
- package/dest/tx/profiling.js +4 -4
- package/dest/tx/protocol_contracts.d.ts +5 -9
- package/dest/tx/protocol_contracts.d.ts.map +1 -1
- package/dest/tx/proven_tx.d.ts +30 -74
- package/dest/tx/proven_tx.d.ts.map +1 -1
- package/dest/tx/proven_tx.js +6 -0
- package/dest/tx/public_call_request_with_calldata.d.ts +4 -3
- package/dest/tx/public_call_request_with_calldata.d.ts.map +1 -1
- package/dest/tx/public_call_request_with_calldata.js +6 -3
- package/dest/tx/simulated_tx.d.ts +62 -1249
- package/dest/tx/simulated_tx.d.ts.map +1 -1
- package/dest/tx/simulated_tx.js +12 -10
- package/dest/tx/state_reference.d.ts +30 -117
- package/dest/tx/state_reference.d.ts.map +1 -1
- package/dest/tx/state_reference.js +6 -4
- package/dest/tx/tree_snapshots.d.ts +27 -84
- package/dest/tx/tree_snapshots.d.ts.map +1 -1
- package/dest/tx/tree_snapshots.js +6 -4
- package/dest/tx/tx.d.ts +12 -11
- package/dest/tx/tx.d.ts.map +1 -1
- package/dest/tx/tx.js +30 -23
- package/dest/tx/tx_constant_data.d.ts +4 -3
- package/dest/tx/tx_constant_data.d.ts.map +1 -1
- package/dest/tx/tx_constant_data.js +6 -3
- package/dest/tx/tx_context.d.ts +32 -131
- package/dest/tx/tx_context.d.ts.map +1 -1
- package/dest/tx/tx_context.js +6 -6
- package/dest/tx/tx_hash.d.ts +6 -4
- package/dest/tx/tx_hash.d.ts.map +1 -1
- package/dest/tx/tx_hash.js +13 -5
- package/dest/tx/tx_receipt.d.ts +144 -67
- package/dest/tx/tx_receipt.d.ts.map +1 -1
- package/dest/tx/tx_receipt.js +141 -51
- package/dest/tx/validator/tx_validator.d.ts +5 -27
- package/dest/tx/validator/tx_validator.d.ts.map +1 -1
- package/dest/tx/validator/tx_validator.js +0 -4
- package/dest/types/shared.d.ts +4 -3
- package/dest/types/shared.d.ts.map +1 -1
- package/dest/types/shared.js +6 -3
- package/dest/update-checker/dev_version.d.ts +3 -0
- package/dest/update-checker/dev_version.d.ts.map +1 -0
- package/dest/update-checker/dev_version.js +1 -0
- package/dest/update-checker/index.d.ts +2 -1
- package/dest/update-checker/index.d.ts.map +1 -1
- package/dest/update-checker/index.js +1 -0
- package/dest/update-checker/package_version.d.ts +6 -3
- package/dest/update-checker/package_version.d.ts.map +1 -1
- package/dest/update-checker/package_version.js +8 -19
- package/dest/validators/schemas.d.ts +147 -614
- package/dest/validators/schemas.d.ts.map +1 -1
- package/dest/validators/schemas.js +6 -4
- package/dest/validators/types.d.ts +20 -3
- package/dest/validators/types.d.ts.map +1 -1
- package/dest/versioning/versioning.js +1 -1
- package/dest/vks/verification_key.d.ts +3 -3
- package/dest/vks/verification_key.d.ts.map +1 -1
- package/dest/world-state/genesis_data.d.ts +3 -1
- package/dest/world-state/genesis_data.d.ts.map +1 -1
- package/dest/world-state/genesis_data.js +3 -0
- package/dest/world-state/world_state_revision.d.ts +4 -39
- package/dest/world-state/world_state_revision.d.ts.map +1 -1
- package/dest/world-state/world_state_revision.js +0 -20
- package/package.json +12 -11
- package/src/abi/abi.ts +53 -19
- package/src/abi/contract_artifact.ts +11 -6
- package/src/abi/utils.ts +6 -4
- package/src/avm/avm.ts +5 -0
- package/src/avm/message_pack.ts +12 -3
- package/src/avm/revert_code.ts +0 -6
- package/src/aztec-address/index.ts +12 -3
- package/src/block/attestation_info.ts +11 -11
- package/src/block/block_parameter.ts +72 -4
- package/src/block/index.ts +0 -1
- package/src/block/l2_block_source.ts +201 -149
- package/src/block/l2_block_stream/l2_block_stream.ts +39 -28
- package/src/block/l2_block_stream/l2_tips_memory_store.ts +5 -0
- package/src/block/l2_block_stream/l2_tips_store_base.ts +29 -7
- package/src/block/proposal/attestations_and_signers.ts +32 -17
- package/src/block/test/l2_tips_store_test_suite.ts +1 -1
- package/src/checkpoint/checkpoint_data.ts +4 -0
- package/src/checkpoint/checkpoint_reexecution_tracker.ts +167 -0
- package/src/checkpoint/digest.ts +28 -0
- package/src/checkpoint/index.ts +3 -0
- package/src/checkpoint/previous_checkpoint_out_hashes.ts +61 -0
- package/src/config/chain-config.ts +6 -15
- package/src/config/index.ts +0 -1
- package/src/config/sequencer-config.ts +25 -7
- package/src/contract/complete_address.ts +7 -3
- package/src/contract/contract_address.ts +6 -6
- package/src/contract/contract_instance.ts +11 -2
- package/src/contract/interfaces/contract_instance.ts +6 -2
- package/src/database-version/version_manager.ts +17 -0
- package/src/gas/gas.ts +8 -3
- package/src/gas/gas_fees.ts +9 -9
- package/src/gas/gas_settings.ts +8 -3
- package/src/ha-signing/config.ts +9 -16
- package/src/ha-signing/local_config.ts +2 -2
- package/src/hash/hash.ts +2 -2
- package/src/interfaces/api_limit.ts +1 -1
- package/src/interfaces/archiver.ts +80 -94
- package/src/interfaces/aztec-node-admin.ts +32 -15
- package/src/interfaces/aztec-node-debug.ts +1 -1
- package/src/interfaces/aztec-node.ts +296 -262
- package/src/interfaces/block-builder.ts +2 -0
- package/src/interfaces/block_response.ts +92 -0
- package/src/interfaces/chain_tips.ts +24 -0
- package/src/interfaces/checkpoint_parameter.ts +20 -0
- package/src/interfaces/checkpoint_response.ts +84 -0
- package/src/interfaces/client.ts +6 -1
- package/src/interfaces/configs.ts +40 -1
- package/src/interfaces/l1_publish_info.ts +40 -0
- package/src/interfaces/l2_logs_source.ts +13 -42
- package/src/interfaces/merkle_tree_operations.ts +9 -2
- package/src/interfaces/p2p-bootstrap.ts +2 -2
- package/src/interfaces/p2p.ts +35 -15
- package/src/interfaces/private_kernel_prover.ts +88 -0
- package/src/interfaces/prover-agent.ts +1 -1
- package/src/interfaces/prover-node.ts +7 -7
- package/src/interfaces/proving-job-source.ts +4 -4
- package/src/interfaces/proving-job.ts +3 -3
- package/src/interfaces/public_storage_override.ts +26 -0
- package/src/interfaces/server.ts +5 -0
- package/src/interfaces/slasher.ts +17 -4
- package/src/interfaces/tx_provider.ts +6 -0
- package/src/interfaces/validator.ts +18 -2
- package/src/interfaces/world_state.ts +1 -1
- package/src/kernel/hints/key_validation_request.ts +18 -16
- package/src/kernel/index.ts +4 -0
- package/src/kernel/log_hash.ts +29 -9
- package/src/kernel/private_kernel_init_2_circuit_private_inputs.ts +49 -0
- package/src/kernel/private_kernel_init_3_circuit_private_inputs.ts +52 -0
- package/src/kernel/private_kernel_inner_2_circuit_private_inputs.ts +29 -0
- package/src/kernel/private_kernel_inner_3_circuit_private_inputs.ts +31 -0
- package/src/kernel/private_kernel_tail_circuit_public_inputs.ts +29 -14
- package/src/kernel/private_to_avm_accumulated_data.ts +16 -5
- package/src/kernel/private_to_public_accumulated_data.ts +9 -3
- package/src/kernel/private_to_public_kernel_circuit_public_inputs.ts +10 -4
- package/src/kernel/private_to_rollup_accumulated_data.ts +8 -3
- package/src/kernel/private_to_rollup_kernel_circuit_public_inputs.ts +9 -9
- package/src/kernel/public_call_request.ts +22 -7
- package/src/keys/derivation.ts +21 -9
- package/src/keys/public_key.ts +26 -2
- package/src/keys/public_keys.ts +124 -110
- package/src/kv-store/config.ts +3 -10
- package/src/logs/{extended_directional_app_tagging_secret.ts → app_tagging_secret.ts} +62 -23
- package/src/logs/app_tagging_secret_kind.ts +21 -0
- package/src/logs/contract_class_log.ts +15 -5
- package/src/logs/index.ts +6 -6
- package/src/logs/log_cursor.ts +110 -0
- package/src/logs/log_result.ts +104 -0
- package/src/logs/logs_query.ts +138 -0
- package/src/logs/message_context.ts +5 -1
- package/src/logs/pre_tag.ts +3 -6
- package/src/logs/private_log.ts +9 -3
- package/src/logs/query_all_logs_by_tags.ts +98 -0
- package/src/logs/siloed_tag.ts +6 -1
- package/src/logs/tagging_index_range.ts +4 -10
- package/src/messaging/append_l1_to_l2_messages.ts +21 -0
- package/src/messaging/index.ts +1 -0
- package/src/messaging/l2_to_l1_membership.ts +108 -19
- package/src/messaging/l2_to_l1_message.ts +29 -9
- package/src/noir/index.ts +2 -0
- package/src/p2p/block_proposal.ts +99 -28
- package/src/p2p/checkpoint_attestation.ts +26 -26
- package/src/p2p/checkpoint_proposal.ts +109 -39
- package/src/p2p/consensus_payload.ts +59 -28
- package/src/p2p/signature_utils.ts +110 -25
- package/src/p2p/signed_txs.ts +46 -28
- package/src/parity/parity_base_private_inputs.ts +10 -4
- package/src/parity/parity_public_inputs.ts +9 -2
- package/src/proofs/chonk_proof.ts +49 -15
- package/src/rollup/block_rollup_public_inputs.ts +13 -0
- package/src/rollup/checkpoint_rollup_public_inputs.ts +10 -0
- package/src/schemas/schemas.ts +6 -1
- package/src/slashing/helpers.ts +13 -9
- package/src/slashing/types.ts +21 -14
- package/src/stats/stats.ts +4 -0
- package/src/tests/factories.ts +97 -68
- package/src/tests/mocks.ts +49 -57
- package/src/timetable/index.ts +63 -105
- package/src/trees/append_only_tree_snapshot.ts +8 -3
- package/src/trees/nullifier_membership_witness.ts +2 -12
- package/src/tx/block_header.ts +8 -3
- package/src/tx/global_variables.ts +10 -18
- package/src/tx/hashed_values.ts +8 -3
- package/src/tx/indexed_tx_effect.ts +17 -4
- package/src/tx/partial_state_reference.ts +8 -3
- package/src/tx/profiling.ts +4 -4
- package/src/tx/proven_tx.ts +6 -0
- package/src/tx/public_call_request_with_calldata.ts +8 -3
- package/src/tx/simulated_tx.ts +18 -21
- package/src/tx/state_reference.ts +9 -4
- package/src/tx/tree_snapshots.ts +9 -4
- package/src/tx/tx.ts +41 -22
- package/src/tx/tx_constant_data.ts +8 -3
- package/src/tx/tx_context.ts +8 -3
- package/src/tx/tx_hash.ts +20 -5
- package/src/tx/tx_receipt.ts +263 -80
- package/src/tx/validator/tx_validator.ts +1 -5
- package/src/types/shared.ts +8 -3
- package/src/update-checker/dev_version.ts +2 -0
- package/src/update-checker/index.ts +1 -0
- package/src/update-checker/package_version.ts +10 -23
- package/src/validators/schemas.ts +6 -4
- package/src/validators/types.ts +21 -2
- package/src/versioning/versioning.ts +1 -1
- package/src/world-state/genesis_data.ts +12 -0
- package/src/world-state/world_state_revision.ts +0 -33
- package/dest/block/checkpointed_l2_block.d.ts +0 -150
- package/dest/block/checkpointed_l2_block.d.ts.map +0 -1
- package/dest/block/checkpointed_l2_block.js +0 -46
- package/dest/config/pipelining-config.d.ts +0 -19
- package/dest/config/pipelining-config.d.ts.map +0 -1
- package/dest/config/pipelining-config.js +0 -18
- package/dest/interfaces/get_logs_response.d.ts +0 -97
- package/dest/interfaces/get_logs_response.d.ts.map +0 -1
- package/dest/interfaces/get_logs_response.js +0 -12
- package/dest/logs/extended_contract_class_log.d.ts +0 -51
- package/dest/logs/extended_contract_class_log.d.ts.map +0 -1
- package/dest/logs/extended_contract_class_log.js +0 -67
- package/dest/logs/extended_directional_app_tagging_secret.d.ts +0 -47
- package/dest/logs/extended_directional_app_tagging_secret.d.ts.map +0 -1
- package/dest/logs/extended_public_log.d.ts +0 -106
- package/dest/logs/extended_public_log.d.ts.map +0 -1
- package/dest/logs/extended_public_log.js +0 -73
- package/dest/logs/log_filter.d.ts +0 -25
- package/dest/logs/log_filter.d.ts.map +0 -1
- package/dest/logs/log_filter.js +0 -12
- package/dest/logs/log_id.d.ts +0 -85
- package/dest/logs/log_id.d.ts.map +0 -1
- package/dest/logs/log_id.js +0 -93
- package/dest/logs/tx_scoped_l2_log.d.ts +0 -51
- package/dest/logs/tx_scoped_l2_log.d.ts.map +0 -1
- package/dest/logs/tx_scoped_l2_log.js +0 -77
- package/src/block/checkpointed_l2_block.ts +0 -70
- package/src/config/pipelining-config.ts +0 -31
- package/src/interfaces/get_logs_response.ts +0 -35
- package/src/logs/extended_contract_class_log.ts +0 -87
- package/src/logs/extended_public_log.ts +0 -94
- package/src/logs/log_filter.ts +0 -36
- package/src/logs/log_id.ts +0 -124
- package/src/logs/tx_scoped_l2_log.ts +0 -114
package/src/tests/factories.ts
CHANGED
|
@@ -9,7 +9,6 @@ import {
|
|
|
9
9
|
AVM_V2_PROOF_LENGTH_IN_FIELDS_PADDED,
|
|
10
10
|
CHONK_PROOF_LENGTH,
|
|
11
11
|
CONTRACT_CLASS_LOG_SIZE_IN_FIELDS,
|
|
12
|
-
DomainSeparator,
|
|
13
12
|
L1_TO_L2_MSG_SUBTREE_ROOT_SIBLING_PATH_LENGTH,
|
|
14
13
|
MAX_CHECKPOINTS_PER_EPOCH,
|
|
15
14
|
MAX_CONTRACT_CLASS_LOGS_PER_TX,
|
|
@@ -46,8 +45,6 @@ import { type FieldsOf, makeTuple } from '@aztec/foundation/array';
|
|
|
46
45
|
import { BlockNumber, CheckpointNumber, SlotNumber } from '@aztec/foundation/branded-types';
|
|
47
46
|
import { compact } from '@aztec/foundation/collection';
|
|
48
47
|
import { Grumpkin } from '@aztec/foundation/crypto/grumpkin';
|
|
49
|
-
import { poseidon2HashWithSeparator } from '@aztec/foundation/crypto/poseidon';
|
|
50
|
-
import { SchnorrSignature } from '@aztec/foundation/crypto/schnorr';
|
|
51
48
|
import { sha256 } from '@aztec/foundation/crypto/sha256';
|
|
52
49
|
import { Fq, Fr } from '@aztec/foundation/curves/bn254';
|
|
53
50
|
import { GrumpkinScalar, Point } from '@aztec/foundation/curves/grumpkin';
|
|
@@ -87,6 +84,7 @@ import {
|
|
|
87
84
|
import { PublicDataRead } from '../avm/public_data_read.js';
|
|
88
85
|
import { PublicDataWrite } from '../avm/public_data_write.js';
|
|
89
86
|
import { AztecAddress } from '../aztec-address/index.js';
|
|
87
|
+
import { BlockHash } from '../block/block_hash.js';
|
|
90
88
|
import type { L2Tips } from '../block/l2_block_source.js';
|
|
91
89
|
import {
|
|
92
90
|
type ContractClassPublic,
|
|
@@ -95,6 +93,7 @@ import {
|
|
|
95
93
|
type PrivateFunction,
|
|
96
94
|
SerializableContractInstance,
|
|
97
95
|
computeContractClassId,
|
|
96
|
+
computePartialAddress,
|
|
98
97
|
computePublicBytecodeCommitment,
|
|
99
98
|
} from '../contract/index.js';
|
|
100
99
|
import { Gas, GasFees, GasSettings } from '../gas/index.js';
|
|
@@ -125,12 +124,13 @@ import {
|
|
|
125
124
|
PublicCallRequest,
|
|
126
125
|
PublicCallRequestArrayLengths,
|
|
127
126
|
} from '../kernel/public_call_request.js';
|
|
128
|
-
import { PublicKeys, computeAddress } from '../keys/index.js';
|
|
129
|
-
import {
|
|
127
|
+
import { PublicKey, PublicKeys, computeAddress, hashPublicKey } from '../keys/index.js';
|
|
128
|
+
import { AppTaggingSecret } from '../logs/app_tagging_secret.js';
|
|
129
|
+
import { AppTaggingSecretKind } from '../logs/app_tagging_secret_kind.js';
|
|
130
130
|
import { ContractClassLog, ContractClassLogFields } from '../logs/index.js';
|
|
131
|
+
import type { LogResult } from '../logs/log_result.js';
|
|
131
132
|
import { PrivateLog } from '../logs/private_log.js';
|
|
132
133
|
import { FlatPublicLogs, PublicLog } from '../logs/public_log.js';
|
|
133
|
-
import { TxScopedL2Log } from '../logs/tx_scoped_l2_log.js';
|
|
134
134
|
import { CountedL2ToL1Message, L2ToL1Message, ScopedL2ToL1Message } from '../messaging/l2_to_l1_message.js';
|
|
135
135
|
import { ParityBasePrivateInputs } from '../parity/parity_base_private_inputs.js';
|
|
136
136
|
import { ParityPublicInputs } from '../parity/parity_public_inputs.js';
|
|
@@ -254,7 +254,7 @@ function makeScopedReadRequest(n: number): ScopedReadRequest {
|
|
|
254
254
|
* @returns A KeyValidationRequest.
|
|
255
255
|
*/
|
|
256
256
|
function makeKeyValidationRequests(seed: number): KeyValidationRequest {
|
|
257
|
-
return new KeyValidationRequest(
|
|
257
|
+
return new KeyValidationRequest(fr(seed), fr(seed + 2));
|
|
258
258
|
}
|
|
259
259
|
|
|
260
260
|
/**
|
|
@@ -579,7 +579,7 @@ export function makeVerificationKeyAsFields(size: number): VerificationKeyAsFiel
|
|
|
579
579
|
* @returns A point.
|
|
580
580
|
*/
|
|
581
581
|
export function makePoint(seed = 1): Point {
|
|
582
|
-
return new Point(fr(seed), fr(seed + 1)
|
|
582
|
+
return new Point(fr(seed), fr(seed + 1));
|
|
583
583
|
}
|
|
584
584
|
|
|
585
585
|
/**
|
|
@@ -750,15 +750,6 @@ export function makeAztecAddress(seed = 1): AztecAddress {
|
|
|
750
750
|
return AztecAddress.fromField(fr(seed));
|
|
751
751
|
}
|
|
752
752
|
|
|
753
|
-
/**
|
|
754
|
-
* Makes arbitrary Schnorr signature.
|
|
755
|
-
* @param seed - The seed to use for generating the Schnorr signature.
|
|
756
|
-
* @returns A Schnorr signature.
|
|
757
|
-
*/
|
|
758
|
-
export function makeSchnorrSignature(seed = 1): SchnorrSignature {
|
|
759
|
-
return new SchnorrSignature(Buffer.alloc(SchnorrSignature.SIZE, seed));
|
|
760
|
-
}
|
|
761
|
-
|
|
762
753
|
function makeBlockConstantData(seed = 1, globalVariables?: GlobalVariables) {
|
|
763
754
|
return new BlockConstantData(
|
|
764
755
|
makeAppendOnlyTreeSnapshot(seed + 0x100),
|
|
@@ -855,11 +846,16 @@ export function makeParityPublicInputs(seed = 0): ParityPublicInputs {
|
|
|
855
846
|
new Fr(BigInt(seed + 0x200)),
|
|
856
847
|
new Fr(BigInt(seed + 0x300)),
|
|
857
848
|
new Fr(BigInt(seed + 0x400)),
|
|
849
|
+
new Fr(BigInt(seed + 0x500)),
|
|
858
850
|
);
|
|
859
851
|
}
|
|
860
852
|
|
|
861
853
|
export function makeParityBasePrivateInputs(seed = 0): ParityBasePrivateInputs {
|
|
862
|
-
return new ParityBasePrivateInputs(
|
|
854
|
+
return new ParityBasePrivateInputs(
|
|
855
|
+
makeTuple(NUM_MSGS_PER_BASE_PARITY, fr, seed + 0x3000),
|
|
856
|
+
new Fr(seed + 0x4000),
|
|
857
|
+
new Fr(seed + 0x5000),
|
|
858
|
+
);
|
|
863
859
|
}
|
|
864
860
|
|
|
865
861
|
export function makeParityRootPrivateInputs(seed = 0) {
|
|
@@ -1226,8 +1222,15 @@ export async function makeMapAsync<T>(size: number, fn: (i: number) => Promise<[
|
|
|
1226
1222
|
|
|
1227
1223
|
export async function makePublicKeys(seed = 0): Promise<PublicKeys> {
|
|
1228
1224
|
const f = (offset: number) => Grumpkin.mul(Grumpkin.generator, new Fq(seed + offset));
|
|
1229
|
-
|
|
1230
|
-
return new PublicKeys(
|
|
1225
|
+
const ivpkM = await f(1);
|
|
1226
|
+
return new PublicKeys(
|
|
1227
|
+
await hashPublicKey(await f(0)),
|
|
1228
|
+
ivpkM,
|
|
1229
|
+
await hashPublicKey(await f(2)),
|
|
1230
|
+
await hashPublicKey(await f(3)),
|
|
1231
|
+
await hashPublicKey(await f(4)),
|
|
1232
|
+
await hashPublicKey(await f(5)),
|
|
1233
|
+
);
|
|
1231
1234
|
}
|
|
1232
1235
|
|
|
1233
1236
|
export async function makeContractInstanceFromClassId(
|
|
@@ -1236,6 +1239,7 @@ export async function makeContractInstanceFromClassId(
|
|
|
1236
1239
|
overrides?: {
|
|
1237
1240
|
deployer?: AztecAddress;
|
|
1238
1241
|
initializationHash?: Fr;
|
|
1242
|
+
immutablesHash?: Fr;
|
|
1239
1243
|
publicKeys?: PublicKeys;
|
|
1240
1244
|
currentClassId?: Fr;
|
|
1241
1245
|
},
|
|
@@ -1244,23 +1248,24 @@ export async function makeContractInstanceFromClassId(
|
|
|
1244
1248
|
const initializationHash = overrides?.initializationHash ?? new Fr(seed + 1);
|
|
1245
1249
|
const deployer = overrides?.deployer ?? new AztecAddress(new Fr(seed + 2));
|
|
1246
1250
|
const publicKeys = overrides?.publicKeys ?? (await makePublicKeys(seed + 3));
|
|
1251
|
+
const immutablesHash = overrides?.immutablesHash ?? new Fr(seed + 4);
|
|
1247
1252
|
|
|
1248
|
-
const
|
|
1249
|
-
|
|
1250
|
-
|
|
1251
|
-
|
|
1252
|
-
|
|
1253
|
-
|
|
1254
|
-
|
|
1255
|
-
);
|
|
1253
|
+
const partialAddress = await computePartialAddress({
|
|
1254
|
+
originalContractClassId: classId,
|
|
1255
|
+
salt,
|
|
1256
|
+
initializationHash,
|
|
1257
|
+
immutablesHash,
|
|
1258
|
+
deployer,
|
|
1259
|
+
});
|
|
1256
1260
|
const address = await computeAddress(publicKeys, partialAddress);
|
|
1257
1261
|
return new SerializableContractInstance({
|
|
1258
|
-
version:
|
|
1262
|
+
version: 2,
|
|
1259
1263
|
salt,
|
|
1260
1264
|
deployer,
|
|
1261
1265
|
currentContractClassId: overrides?.currentClassId ?? classId,
|
|
1262
1266
|
originalContractClassId: classId,
|
|
1263
1267
|
initializationHash,
|
|
1268
|
+
immutablesHash,
|
|
1264
1269
|
publicKeys,
|
|
1265
1270
|
}).withAddress(address);
|
|
1266
1271
|
}
|
|
@@ -1438,11 +1443,14 @@ export function makeAvmContractInstanceHint(seed = 0): AvmContractInstanceHint {
|
|
|
1438
1443
|
new Fr(seed + 0x4),
|
|
1439
1444
|
new Fr(seed + 0x5),
|
|
1440
1445
|
new Fr(seed + 0x6),
|
|
1446
|
+
new Fr(seed + 0x7),
|
|
1441
1447
|
new PublicKeys(
|
|
1442
|
-
new
|
|
1443
|
-
new
|
|
1444
|
-
new
|
|
1445
|
-
new
|
|
1448
|
+
new Fr(seed + 0x7),
|
|
1449
|
+
new PublicKey(new Fr(seed + 0x9), new Fr(seed + 0x10)),
|
|
1450
|
+
new Fr(seed + 0x11),
|
|
1451
|
+
new Fr(seed + 0x13),
|
|
1452
|
+
new Fr(seed + 0x15),
|
|
1453
|
+
new Fr(seed + 0x17),
|
|
1446
1454
|
),
|
|
1447
1455
|
);
|
|
1448
1456
|
}
|
|
@@ -1635,47 +1643,71 @@ export function fr(n: number): Fr {
|
|
|
1635
1643
|
return new Fr(BigInt(n));
|
|
1636
1644
|
}
|
|
1637
1645
|
|
|
1638
|
-
/**
|
|
1639
|
-
|
|
1640
|
-
*/
|
|
1641
|
-
export function randomTxScopedPrivateL2Log(opts?: {
|
|
1646
|
+
/** Creates a random {@link LogResult} with private-log-shaped data. `includeEffects` populates `noteHashes` + `nullifiers`. */
|
|
1647
|
+
export function randomPrivateLogResult(opts?: {
|
|
1642
1648
|
tag?: Fr;
|
|
1643
1649
|
txHash?: TxHash;
|
|
1644
1650
|
blockNumber?: number;
|
|
1651
|
+
blockHash?: BlockHash;
|
|
1645
1652
|
blockTimestamp?: bigint;
|
|
1653
|
+
txIndexWithinBlock?: number;
|
|
1654
|
+
logIndexWithinTx?: number;
|
|
1646
1655
|
noteHashes?: Fr[];
|
|
1647
|
-
|
|
1648
|
-
|
|
1656
|
+
nullifiers?: Fr[];
|
|
1657
|
+
includeEffects?: boolean;
|
|
1658
|
+
}): LogResult {
|
|
1649
1659
|
const log = PrivateLog.random(opts?.tag);
|
|
1650
|
-
|
|
1651
|
-
|
|
1652
|
-
|
|
1653
|
-
opts?.
|
|
1654
|
-
|
|
1655
|
-
opts?.
|
|
1656
|
-
opts?.
|
|
1657
|
-
|
|
1658
|
-
|
|
1659
|
-
|
|
1660
|
-
|
|
1661
|
-
|
|
1662
|
-
|
|
1663
|
-
|
|
1660
|
+
const includeEffects = opts?.includeEffects ?? (opts?.noteHashes !== undefined || opts?.nullifiers !== undefined);
|
|
1661
|
+
const base: LogResult = {
|
|
1662
|
+
logData: log.getEmittedFields(),
|
|
1663
|
+
blockNumber: BlockNumber(opts?.blockNumber ?? 1),
|
|
1664
|
+
blockHash: opts?.blockHash ?? BlockHash.random(),
|
|
1665
|
+
blockTimestamp: opts?.blockTimestamp ?? 1n,
|
|
1666
|
+
txHash: opts?.txHash ?? TxHash.random(),
|
|
1667
|
+
txIndexWithinBlock: opts?.txIndexWithinBlock ?? 0,
|
|
1668
|
+
logIndexWithinTx: opts?.logIndexWithinTx ?? 0,
|
|
1669
|
+
};
|
|
1670
|
+
if (includeEffects) {
|
|
1671
|
+
return {
|
|
1672
|
+
...base,
|
|
1673
|
+
noteHashes: opts?.noteHashes ?? [Fr.random(), Fr.random()],
|
|
1674
|
+
nullifiers: opts?.nullifiers ?? [Fr.random()],
|
|
1675
|
+
};
|
|
1676
|
+
}
|
|
1677
|
+
return base;
|
|
1678
|
+
}
|
|
1679
|
+
|
|
1680
|
+
/** Creates a random {@link LogResult} with public-log-shaped data. `includeEffects` populates `noteHashes` + `nullifiers`. */
|
|
1681
|
+
export async function randomPublicLogResult(opts?: {
|
|
1664
1682
|
txHash?: TxHash;
|
|
1665
1683
|
blockNumber?: number;
|
|
1684
|
+
blockHash?: BlockHash;
|
|
1666
1685
|
blockTimestamp?: bigint;
|
|
1686
|
+
txIndexWithinBlock?: number;
|
|
1687
|
+
logIndexWithinTx?: number;
|
|
1667
1688
|
noteHashes?: Fr[];
|
|
1668
|
-
|
|
1669
|
-
|
|
1689
|
+
nullifiers?: Fr[];
|
|
1690
|
+
includeEffects?: boolean;
|
|
1691
|
+
}): Promise<LogResult> {
|
|
1670
1692
|
const log = await PublicLog.random();
|
|
1671
|
-
|
|
1672
|
-
|
|
1673
|
-
|
|
1674
|
-
opts?.
|
|
1675
|
-
|
|
1676
|
-
opts?.
|
|
1677
|
-
opts?.
|
|
1678
|
-
|
|
1693
|
+
const includeEffects = opts?.includeEffects ?? (opts?.noteHashes !== undefined || opts?.nullifiers !== undefined);
|
|
1694
|
+
const base: LogResult = {
|
|
1695
|
+
logData: log.getEmittedFields(),
|
|
1696
|
+
blockNumber: BlockNumber(opts?.blockNumber ?? 1),
|
|
1697
|
+
blockHash: opts?.blockHash ?? BlockHash.random(),
|
|
1698
|
+
blockTimestamp: opts?.blockTimestamp ?? 1n,
|
|
1699
|
+
txHash: opts?.txHash ?? TxHash.random(),
|
|
1700
|
+
txIndexWithinBlock: opts?.txIndexWithinBlock ?? 0,
|
|
1701
|
+
logIndexWithinTx: opts?.logIndexWithinTx ?? 0,
|
|
1702
|
+
};
|
|
1703
|
+
if (includeEffects) {
|
|
1704
|
+
return {
|
|
1705
|
+
...base,
|
|
1706
|
+
noteHashes: opts?.noteHashes ?? [Fr.random(), Fr.random()],
|
|
1707
|
+
nullifiers: opts?.nullifiers ?? [Fr.random()],
|
|
1708
|
+
};
|
|
1709
|
+
}
|
|
1710
|
+
return base;
|
|
1679
1711
|
}
|
|
1680
1712
|
|
|
1681
1713
|
/**
|
|
@@ -1722,10 +1754,7 @@ export function makeL2Tips(
|
|
|
1722
1754
|
};
|
|
1723
1755
|
}
|
|
1724
1756
|
|
|
1725
|
-
export async function
|
|
1757
|
+
export async function randomAppTaggingSecret(kind: AppTaggingSecretKind): Promise<AppTaggingSecret> {
|
|
1726
1758
|
const resolvedApp = await AztecAddress.random();
|
|
1727
|
-
|
|
1728
|
-
// expose the type's constructor just for tests since in prod the secret is always constructed via compute. Also this
|
|
1729
|
-
// method is tested in extended_directional_app_tagging_secret.test.ts hence all should be fine.
|
|
1730
|
-
return ExtendedDirectionalAppTaggingSecret.fromString(`${Fr.random().toString()}:${resolvedApp.toString()}`);
|
|
1759
|
+
return new AppTaggingSecret(Fr.random(), resolvedApp, kind);
|
|
1731
1760
|
}
|
package/src/tests/mocks.ts
CHANGED
|
@@ -14,8 +14,11 @@ import { padArrayEnd, times } from '@aztec/foundation/collection';
|
|
|
14
14
|
import { randomBytes } from '@aztec/foundation/crypto/random';
|
|
15
15
|
import { Secp256k1Signer } from '@aztec/foundation/crypto/secp256k1-signer';
|
|
16
16
|
import { Fr } from '@aztec/foundation/curves/bn254';
|
|
17
|
+
import { EthAddress } from '@aztec/foundation/eth-address';
|
|
17
18
|
import { Signature } from '@aztec/foundation/eth-signature';
|
|
18
19
|
|
|
20
|
+
import { type TypedDataDefinition, hashTypedData } from 'viem';
|
|
21
|
+
|
|
19
22
|
import type { ContractArtifact } from '../abi/abi.js';
|
|
20
23
|
import { PublicTxEffect } from '../avm/avm.js';
|
|
21
24
|
import type { AvmAccumulatedData } from '../avm/avm_accumulated_data.js';
|
|
@@ -23,10 +26,9 @@ import { AvmCircuitPublicInputs } from '../avm/avm_circuit_public_inputs.js';
|
|
|
23
26
|
import { PublicDataWrite } from '../avm/public_data_write.js';
|
|
24
27
|
import { RevertCode } from '../avm/revert_code.js';
|
|
25
28
|
import { AztecAddress } from '../aztec-address/index.js';
|
|
26
|
-
import {
|
|
29
|
+
import { L2Block } from '../block/index.js';
|
|
27
30
|
import type { CommitteeAttestationsAndSigners } from '../block/proposal/attestations_and_signers.js';
|
|
28
31
|
import { Checkpoint } from '../checkpoint/checkpoint.js';
|
|
29
|
-
import { L1PublishedData } from '../checkpoint/published_checkpoint.js';
|
|
30
32
|
import { computeContractAddressFromInstance } from '../contract/contract_address.js';
|
|
31
33
|
import { getContractClassFromArtifact } from '../contract/contract_class.js';
|
|
32
34
|
import { SerializableContractInstance } from '../contract/contract_instance.js';
|
|
@@ -51,7 +53,7 @@ import { BlockProposal } from '../p2p/block_proposal.js';
|
|
|
51
53
|
import { CheckpointAttestation } from '../p2p/checkpoint_attestation.js';
|
|
52
54
|
import { CheckpointProposal } from '../p2p/checkpoint_proposal.js';
|
|
53
55
|
import { ConsensusPayload } from '../p2p/consensus_payload.js';
|
|
54
|
-
import {
|
|
56
|
+
import { type CoordinationSignatureContext, getHashedSignaturePayloadTypedData } from '../p2p/signature_utils.js';
|
|
55
57
|
import { ChonkProof } from '../proofs/chonk_proof.js';
|
|
56
58
|
import { ProvingRequestType } from '../proofs/proving_request_type.js';
|
|
57
59
|
import { CheckpointHeader } from '../rollup/checkpoint_header.js';
|
|
@@ -72,6 +74,7 @@ import { NestedProcessReturnValues, PublicSimulationOutput } from '../tx/public_
|
|
|
72
74
|
import { TxSimulationResult } from '../tx/simulated_tx.js';
|
|
73
75
|
import { TxEffect } from '../tx/tx_effect.js';
|
|
74
76
|
import { TxHash } from '../tx/tx_hash.js';
|
|
77
|
+
import { DEV_VERSION } from '../update-checker/dev_version.js';
|
|
75
78
|
import {
|
|
76
79
|
makeAvmCircuitInputs,
|
|
77
80
|
makeAztecAddress,
|
|
@@ -86,6 +89,15 @@ import {
|
|
|
86
89
|
makePublicDataWrite,
|
|
87
90
|
} from './factories.js';
|
|
88
91
|
|
|
92
|
+
export const TEST_COORDINATION_SIGNATURE_CONTEXT: CoordinationSignatureContext = {
|
|
93
|
+
chainId: 31337,
|
|
94
|
+
rollupAddress: EthAddress.fromNumber(1),
|
|
95
|
+
};
|
|
96
|
+
|
|
97
|
+
function signTypedData(signer: Secp256k1Signer, typedData: TypedDataDefinition): Signature {
|
|
98
|
+
return signer.sign(Buffer32.fromString(hashTypedData(typedData)));
|
|
99
|
+
}
|
|
100
|
+
|
|
89
101
|
export const randomTxHash = (): TxHash => TxHash.random();
|
|
90
102
|
|
|
91
103
|
export const mockTx = async (
|
|
@@ -479,6 +491,7 @@ export async function mockCheckpointAndMessages(
|
|
|
479
491
|
|
|
480
492
|
export const randomContractArtifact = (): ContractArtifact => ({
|
|
481
493
|
name: randomBytes(4).toString('hex'),
|
|
494
|
+
aztecVersion: DEV_VERSION,
|
|
482
495
|
functions: [],
|
|
483
496
|
nonDispatchPublicFunctions: [],
|
|
484
497
|
outputs: {
|
|
@@ -519,6 +532,7 @@ export interface MakeConsensusPayloadOptions {
|
|
|
519
532
|
txHashes?: TxHash[];
|
|
520
533
|
txs?: Tx[];
|
|
521
534
|
feeAssetPriceModifier?: bigint;
|
|
535
|
+
signatureContext?: CoordinationSignatureContext;
|
|
522
536
|
}
|
|
523
537
|
|
|
524
538
|
export interface MakeBlockProposalOptions {
|
|
@@ -529,6 +543,7 @@ export interface MakeBlockProposalOptions {
|
|
|
529
543
|
archiveRoot?: Fr;
|
|
530
544
|
txHashes?: TxHash[];
|
|
531
545
|
txs?: Tx[];
|
|
546
|
+
signatureContext?: CoordinationSignatureContext;
|
|
532
547
|
}
|
|
533
548
|
|
|
534
549
|
export interface MakeCheckpointProposalOptions {
|
|
@@ -536,6 +551,7 @@ export interface MakeCheckpointProposalOptions {
|
|
|
536
551
|
checkpointHeader?: CheckpointHeader;
|
|
537
552
|
archiveRoot?: Fr;
|
|
538
553
|
feeAssetPriceModifier?: bigint;
|
|
554
|
+
signatureContext?: CoordinationSignatureContext;
|
|
539
555
|
/** Options for the lastBlock - if undefined, no lastBlock is included */
|
|
540
556
|
lastBlock?: {
|
|
541
557
|
blockHeader?: BlockHeader;
|
|
@@ -546,10 +562,7 @@ export interface MakeCheckpointProposalOptions {
|
|
|
546
562
|
}
|
|
547
563
|
|
|
548
564
|
// eslint-disable-next-line @typescript-eslint/no-unused-vars
|
|
549
|
-
const makeAndSignConsensusPayload = (
|
|
550
|
-
domainSeparator: SignatureDomainSeparator,
|
|
551
|
-
options?: MakeConsensusPayloadOptions,
|
|
552
|
-
) => {
|
|
565
|
+
const makeAndSignConsensusPayload = (options?: MakeConsensusPayloadOptions) => {
|
|
553
566
|
const header = options?.header ?? makeCheckpointHeader(1);
|
|
554
567
|
const { signer = Secp256k1Signer.random(), archive = Fr.random(), feeAssetPriceModifier = 0n } = options ?? {};
|
|
555
568
|
|
|
@@ -557,9 +570,10 @@ const makeAndSignConsensusPayload = (
|
|
|
557
570
|
header,
|
|
558
571
|
archive,
|
|
559
572
|
feeAssetPriceModifier,
|
|
573
|
+
signatureContext: TEST_COORDINATION_SIGNATURE_CONTEXT,
|
|
560
574
|
});
|
|
561
575
|
|
|
562
|
-
const hash =
|
|
576
|
+
const hash = getHashedSignaturePayloadTypedData(payload);
|
|
563
577
|
const signature = signer.sign(hash);
|
|
564
578
|
|
|
565
579
|
return { blockNumber: header.slotNumber, payload, signature };
|
|
@@ -569,10 +583,7 @@ export const makeAndSignCommitteeAttestationsAndSigners = (
|
|
|
569
583
|
attestationsAndSigners: CommitteeAttestationsAndSigners,
|
|
570
584
|
signer: Secp256k1Signer = Secp256k1Signer.random(),
|
|
571
585
|
) => {
|
|
572
|
-
const hash =
|
|
573
|
-
attestationsAndSigners,
|
|
574
|
-
SignatureDomainSeparator.attestationsAndSigners,
|
|
575
|
-
);
|
|
586
|
+
const hash = getHashedSignaturePayloadTypedData(attestationsAndSigners);
|
|
576
587
|
return signer.sign(hash);
|
|
577
588
|
};
|
|
578
589
|
|
|
@@ -584,6 +595,7 @@ export const makeBlockProposal = (options?: MakeBlockProposalOptions): Promise<B
|
|
|
584
595
|
const txHashes = options?.txHashes ?? [0, 1, 2, 3, 4, 5].map(() => TxHash.random());
|
|
585
596
|
const txs = options?.txs;
|
|
586
597
|
const signer = options?.signer ?? Secp256k1Signer.random();
|
|
598
|
+
const signatureContext = options?.signatureContext ?? TEST_COORDINATION_SIGNATURE_CONTEXT;
|
|
587
599
|
|
|
588
600
|
return BlockProposal.createProposalFromSigner(
|
|
589
601
|
blockHeader,
|
|
@@ -593,7 +605,9 @@ export const makeBlockProposal = (options?: MakeBlockProposalOptions): Promise<B
|
|
|
593
605
|
archiveRoot,
|
|
594
606
|
txHashes,
|
|
595
607
|
txs,
|
|
596
|
-
|
|
608
|
+
signatureContext,
|
|
609
|
+
(typedData, _context) => Promise.resolve(signTypedData(signer, typedData)),
|
|
610
|
+
(typedData, _context) => Promise.resolve(signTypedData(signer, typedData)),
|
|
597
611
|
);
|
|
598
612
|
};
|
|
599
613
|
|
|
@@ -602,6 +616,7 @@ export const makeCheckpointProposal = async (options?: MakeCheckpointProposalOpt
|
|
|
602
616
|
const archiveRoot = options?.archiveRoot ?? Fr.random();
|
|
603
617
|
const feeAssetPriceModifier = options?.feeAssetPriceModifier ?? 0n;
|
|
604
618
|
const signer = options?.signer ?? Secp256k1Signer.random();
|
|
619
|
+
const signatureContext = options?.signatureContext ?? TEST_COORDINATION_SIGNATURE_CONTEXT;
|
|
605
620
|
|
|
606
621
|
// Build a signed block proposal if lastBlock options are provided
|
|
607
622
|
const lastBlockProposal = options?.lastBlock
|
|
@@ -613,6 +628,7 @@ export const makeCheckpointProposal = async (options?: MakeCheckpointProposalOpt
|
|
|
613
628
|
txHashes: options.lastBlock.txHashes,
|
|
614
629
|
txs: options.lastBlock.txs,
|
|
615
630
|
signer,
|
|
631
|
+
signatureContext,
|
|
616
632
|
})
|
|
617
633
|
: undefined;
|
|
618
634
|
|
|
@@ -622,7 +638,8 @@ export const makeCheckpointProposal = async (options?: MakeCheckpointProposalOpt
|
|
|
622
638
|
CheckpointNumber(1),
|
|
623
639
|
feeAssetPriceModifier,
|
|
624
640
|
lastBlockProposal,
|
|
625
|
-
|
|
641
|
+
signatureContext,
|
|
642
|
+
typedData => Promise.resolve(signTypedData(signer, typedData)),
|
|
626
643
|
);
|
|
627
644
|
};
|
|
628
645
|
|
|
@@ -636,6 +653,7 @@ export type MakeCheckpointAttestationOptions = {
|
|
|
636
653
|
attesterSigner?: Secp256k1Signer;
|
|
637
654
|
proposerSigner?: Secp256k1Signer;
|
|
638
655
|
signer?: Secp256k1Signer;
|
|
656
|
+
signatureContext?: CoordinationSignatureContext;
|
|
639
657
|
};
|
|
640
658
|
|
|
641
659
|
/**
|
|
@@ -645,26 +663,27 @@ export const makeCheckpointAttestation = (options: MakeCheckpointAttestationOpti
|
|
|
645
663
|
const header = options.header ?? makeCheckpointHeader(1);
|
|
646
664
|
const archive = options.archive ?? Fr.random();
|
|
647
665
|
const feeAssetPriceModifier = options.feeAssetPriceModifier ?? 0n;
|
|
666
|
+
const signatureContext = options.signatureContext ?? TEST_COORDINATION_SIGNATURE_CONTEXT;
|
|
648
667
|
const { signer, attesterSigner = signer, proposerSigner = signer } = options;
|
|
649
668
|
|
|
650
|
-
const payload = new ConsensusPayload(header, archive, feeAssetPriceModifier);
|
|
669
|
+
const payload = new ConsensusPayload(header, archive, feeAssetPriceModifier, signatureContext);
|
|
651
670
|
|
|
652
671
|
// Sign as attester
|
|
653
|
-
const attestationHash =
|
|
654
|
-
payload,
|
|
655
|
-
SignatureDomainSeparator.checkpointAttestation,
|
|
656
|
-
);
|
|
672
|
+
const attestationHash = getHashedSignaturePayloadTypedData(payload);
|
|
657
673
|
const attestationSigner = attesterSigner ?? Secp256k1Signer.random();
|
|
658
674
|
const attestationSignature = attestationSigner.sign(attestationHash);
|
|
659
675
|
|
|
660
676
|
// Sign as proposer - use CheckpointProposal's payload format (serializeToBuffer)
|
|
661
677
|
// This is different from ConsensusPayload's format (ABI encoding)
|
|
662
678
|
const proposalSignerToUse = proposerSigner ?? Secp256k1Signer.random();
|
|
663
|
-
const tempProposal = new CheckpointProposal(
|
|
664
|
-
|
|
665
|
-
|
|
666
|
-
|
|
679
|
+
const tempProposal = new CheckpointProposal(
|
|
680
|
+
header,
|
|
681
|
+
archive,
|
|
682
|
+
feeAssetPriceModifier,
|
|
683
|
+
Signature.empty(),
|
|
684
|
+
signatureContext,
|
|
667
685
|
);
|
|
686
|
+
const proposalHash = getHashedSignaturePayloadTypedData(tempProposal);
|
|
668
687
|
const proposerSignature = proposalSignerToUse.sign(proposalHash);
|
|
669
688
|
|
|
670
689
|
return new CheckpointAttestation(payload, attestationSignature, proposerSignature);
|
|
@@ -677,13 +696,15 @@ export const makeCheckpointAttestationFromProposal = (
|
|
|
677
696
|
proposal: CheckpointProposal,
|
|
678
697
|
attesterSigner?: Secp256k1Signer,
|
|
679
698
|
): CheckpointAttestation => {
|
|
680
|
-
const payload = new ConsensusPayload(
|
|
699
|
+
const payload = new ConsensusPayload(
|
|
700
|
+
proposal.checkpointHeader,
|
|
701
|
+
proposal.archive,
|
|
702
|
+
proposal.feeAssetPriceModifier,
|
|
703
|
+
proposal.signatureContext,
|
|
704
|
+
);
|
|
681
705
|
|
|
682
706
|
// Sign as attester
|
|
683
|
-
const attestationHash =
|
|
684
|
-
payload,
|
|
685
|
-
SignatureDomainSeparator.checkpointAttestation,
|
|
686
|
-
);
|
|
707
|
+
const attestationHash = getHashedSignaturePayloadTypedData(payload);
|
|
687
708
|
const attestationSigner = attesterSigner ?? Secp256k1Signer.random();
|
|
688
709
|
const attestationSignature = attestationSigner.sign(attestationHash);
|
|
689
710
|
|
|
@@ -726,32 +747,3 @@ export const makeCheckpointAttestationFromBlock = (
|
|
|
726
747
|
|
|
727
748
|
return makeCheckpointAttestation({ header, archive, attesterSigner, proposerSigner });
|
|
728
749
|
};
|
|
729
|
-
|
|
730
|
-
export async function randomPublishedL2Block(
|
|
731
|
-
l2BlockNumber: number,
|
|
732
|
-
opts: { signers?: Secp256k1Signer[] } = {},
|
|
733
|
-
): Promise<CheckpointedL2Block> {
|
|
734
|
-
const block = await L2Block.random(BlockNumber(l2BlockNumber));
|
|
735
|
-
const l1 = L1PublishedData.fromFields({
|
|
736
|
-
blockNumber: BigInt(block.number),
|
|
737
|
-
timestamp: block.header.globalVariables.timestamp,
|
|
738
|
-
blockHash: Buffer32.random().toString(),
|
|
739
|
-
});
|
|
740
|
-
|
|
741
|
-
const signers = opts.signers ?? times(3, () => Secp256k1Signer.random());
|
|
742
|
-
const checkpoint = await Checkpoint.random(CheckpointNumber.fromBlockNumber(BlockNumber(l2BlockNumber)), {
|
|
743
|
-
numBlocks: 0,
|
|
744
|
-
});
|
|
745
|
-
checkpoint.blocks = [block];
|
|
746
|
-
const atts = signers.map(signer =>
|
|
747
|
-
makeCheckpointAttestation({
|
|
748
|
-
signer,
|
|
749
|
-
archive: block.archive.root,
|
|
750
|
-
header: checkpoint.header,
|
|
751
|
-
}),
|
|
752
|
-
);
|
|
753
|
-
const attestations = atts.map(
|
|
754
|
-
(attestation, i) => new CommitteeAttestation(signers[i].address, attestation.signature),
|
|
755
|
-
);
|
|
756
|
-
return new CheckpointedL2Block(CheckpointNumber.fromBlockNumber(BlockNumber(l2BlockNumber)), block, l1, attestations);
|
|
757
|
-
}
|