@aztec/stdlib 3.0.0-canary.a9708bd → 3.0.0-manual.20251030
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 +8 -8
- package/dest/abi/abi.js +1 -1
- package/dest/abi/contract_artifact.js +3 -0
- package/dest/abi/event_metadata_definition.d.ts +8 -0
- package/dest/abi/event_metadata_definition.d.ts.map +1 -0
- package/dest/abi/event_metadata_definition.js +1 -0
- package/dest/abi/function_call.d.ts +7 -2
- package/dest/abi/function_call.d.ts.map +1 -1
- package/dest/abi/function_call.js +6 -2
- package/dest/abi/index.d.ts +1 -0
- package/dest/abi/index.d.ts.map +1 -1
- package/dest/abi/index.js +1 -0
- package/dest/avm/avm.d.ts +132 -73
- package/dest/avm/avm.d.ts.map +1 -1
- package/dest/avm/avm.js +10 -6
- package/dest/avm/avm_accumulated_data.d.ts +10 -21
- package/dest/avm/avm_accumulated_data.d.ts.map +1 -1
- package/dest/avm/avm_accumulated_data.js +19 -22
- package/dest/avm/avm_circuit_public_inputs.d.ts +30 -13
- package/dest/avm/avm_circuit_public_inputs.d.ts.map +1 -1
- package/dest/avm/avm_circuit_public_inputs.js +17 -6
- package/dest/avm/avm_proving_request.d.ts +96 -48
- package/dest/avm/avm_proving_request.d.ts.map +1 -1
- package/dest/avm/index.d.ts +1 -1
- package/dest/avm/index.d.ts.map +1 -1
- package/dest/avm/index.js +1 -1
- package/dest/avm/message_pack.d.ts +1 -0
- package/dest/avm/message_pack.d.ts.map +1 -1
- package/dest/avm/message_pack.js +28 -5
- package/dest/block/attestation_info.d.ts +30 -0
- package/dest/block/attestation_info.d.ts.map +1 -0
- package/dest/block/attestation_info.js +39 -0
- package/dest/block/body.d.ts +4 -1
- package/dest/block/body.d.ts.map +1 -1
- package/dest/block/body.js +17 -15
- package/dest/block/in_block.d.ts +5 -5
- package/dest/block/in_block.d.ts.map +1 -1
- package/dest/block/index.d.ts +4 -0
- package/dest/block/index.d.ts.map +1 -1
- package/dest/block/index.js +4 -0
- package/dest/block/l2_block.d.ts +21 -13
- package/dest/block/l2_block.d.ts.map +1 -1
- package/dest/block/l2_block.js +33 -10
- package/dest/block/l2_block_code_to_purge.d.ts +3 -14
- package/dest/block/l2_block_code_to_purge.d.ts.map +1 -1
- package/dest/block/l2_block_code_to_purge.js +23 -13
- package/dest/block/l2_block_header.d.ts +100 -0
- package/dest/block/l2_block_header.d.ts.map +1 -0
- package/dest/block/l2_block_header.js +146 -0
- package/dest/block/l2_block_info.d.ts +41 -0
- package/dest/block/l2_block_info.d.ts.map +1 -0
- package/dest/block/l2_block_info.js +40 -0
- package/dest/block/l2_block_source.d.ts +35 -433
- package/dest/block/l2_block_source.d.ts.map +1 -1
- package/dest/block/l2_block_source.js +0 -28
- package/dest/block/l2_block_stream/l2_tips_memory_store.js +1 -1
- package/dest/block/proposal/attestations_and_signers.d.ts +48 -0
- package/dest/block/proposal/attestations_and_signers.d.ts.map +1 -0
- package/dest/block/proposal/attestations_and_signers.js +99 -0
- package/dest/block/proposal/index.d.ts +1 -0
- package/dest/block/proposal/index.d.ts.map +1 -1
- package/dest/block/proposal/index.js +1 -0
- package/dest/block/published_l2_block.d.ts +27 -5
- package/dest/block/published_l2_block.d.ts.map +1 -1
- package/dest/block/published_l2_block.js +20 -7
- package/dest/block/test/l2_tips_store_test_suite.d.ts.map +1 -1
- package/dest/block/test/l2_tips_store_test_suite.js +3 -4
- package/dest/block/validate_block_result.d.ts +222 -0
- package/dest/block/validate_block_result.d.ts.map +1 -0
- package/dest/block/validate_block_result.js +83 -0
- package/dest/checkpoint/checkpoint_body.d.ts +4 -0
- package/dest/checkpoint/checkpoint_body.d.ts.map +1 -0
- package/dest/checkpoint/checkpoint_body.js +9 -0
- package/dest/checkpoint/index.d.ts +2 -0
- package/dest/checkpoint/index.d.ts.map +1 -0
- package/dest/checkpoint/index.js +1 -0
- package/dest/config/node-rpc-config.d.ts +2 -0
- package/dest/config/node-rpc-config.d.ts.map +1 -1
- package/dest/config/node-rpc-config.js +6 -0
- package/dest/contract/contract_address.d.ts +1 -1
- package/dest/contract/contract_address.js +1 -1
- package/dest/contract/contract_class_metadata.d.ts +8 -0
- package/dest/contract/contract_class_metadata.d.ts.map +1 -0
- package/dest/contract/contract_class_metadata.js +1 -0
- package/dest/contract/contract_instance.d.ts +9 -8
- package/dest/contract/contract_instance.d.ts.map +1 -1
- package/dest/contract/contract_instance.js +1 -2
- package/dest/contract/contract_metadata.d.ts +7 -0
- package/dest/contract/contract_metadata.d.ts.map +1 -0
- package/dest/contract/contract_metadata.js +1 -0
- package/dest/contract/index.d.ts +2 -0
- package/dest/contract/index.d.ts.map +1 -1
- package/dest/contract/index.js +2 -0
- package/dest/contract/interfaces/contract_class.d.ts +4 -4
- package/dest/contract/interfaces/contract_instance.d.ts +2 -2
- package/dest/epoch-helpers/index.d.ts +8 -2
- package/dest/epoch-helpers/index.d.ts.map +1 -1
- package/dest/epoch-helpers/index.js +9 -0
- package/dest/fees/transaction_fee.d.ts.map +1 -1
- package/dest/fees/transaction_fee.js +3 -0
- package/dest/file-store/factory.d.ts.map +1 -1
- package/dest/file-store/factory.js +18 -0
- package/dest/file-store/interface.d.ts +8 -2
- package/dest/file-store/interface.d.ts.map +1 -1
- package/dest/file-store/s3.d.ts +26 -0
- package/dest/file-store/s3.d.ts.map +1 -0
- package/dest/file-store/s3.js +252 -0
- package/dest/hash/hash.d.ts.map +1 -1
- package/dest/hash/hash.js +0 -3
- package/dest/interfaces/archiver.d.ts +43 -0
- package/dest/interfaces/archiver.d.ts.map +1 -1
- package/dest/interfaces/archiver.js +20 -4
- package/dest/interfaces/aztec-node-admin.d.ts +87 -40
- package/dest/interfaces/aztec-node-admin.d.ts.map +1 -1
- package/dest/interfaces/aztec-node-admin.js +7 -1
- package/dest/interfaces/aztec-node.d.ts +35 -2
- package/dest/interfaces/aztec-node.d.ts.map +1 -1
- package/dest/interfaces/aztec-node.js +8 -1
- package/dest/interfaces/block-builder.d.ts +7 -8
- package/dest/interfaces/block-builder.d.ts.map +1 -1
- package/dest/interfaces/client.d.ts +0 -1
- package/dest/interfaces/client.d.ts.map +1 -1
- package/dest/interfaces/client.js +0 -1
- package/dest/interfaces/configs.d.ts +10 -0
- package/dest/interfaces/configs.d.ts.map +1 -1
- package/dest/interfaces/configs.js +3 -1
- package/dest/interfaces/epoch-prover.d.ts +29 -12
- package/dest/interfaces/epoch-prover.d.ts.map +1 -1
- package/dest/interfaces/merkle_tree_operations.d.ts +5 -0
- package/dest/interfaces/merkle_tree_operations.d.ts.map +1 -1
- package/dest/interfaces/p2p.d.ts +2 -0
- package/dest/interfaces/p2p.d.ts.map +1 -1
- package/dest/interfaces/p2p.js +2 -1
- package/dest/interfaces/private_kernel_prover.d.ts +2 -2
- package/dest/interfaces/private_kernel_prover.d.ts.map +1 -1
- package/dest/interfaces/proving-job.d.ts +349 -200
- package/dest/interfaces/proving-job.d.ts.map +1 -1
- package/dest/interfaces/proving-job.js +131 -113
- package/dest/interfaces/server.d.ts +1 -0
- package/dest/interfaces/server.d.ts.map +1 -1
- package/dest/interfaces/server.js +1 -0
- package/dest/interfaces/server_circuit_prover.d.ts +34 -34
- package/dest/interfaces/server_circuit_prover.d.ts.map +1 -1
- package/dest/interfaces/slasher.d.ts +4 -0
- package/dest/interfaces/slasher.d.ts.map +1 -1
- package/dest/interfaces/slasher.js +1 -0
- package/dest/interfaces/tx_provider.d.ts +1 -1
- package/dest/interfaces/tx_provider.d.ts.map +1 -1
- package/dest/interfaces/validator.d.ts +163 -0
- package/dest/interfaces/validator.d.ts.map +1 -0
- package/dest/interfaces/validator.js +18 -0
- package/dest/kernel/hints/build_nullifier_read_request_hints.d.ts +3 -2
- package/dest/kernel/hints/build_nullifier_read_request_hints.d.ts.map +1 -1
- package/dest/kernel/hints/nullifier_read_request_hints.d.ts +4 -3
- package/dest/kernel/hints/nullifier_read_request_hints.d.ts.map +1 -1
- package/dest/kernel/nullifier.d.ts +2 -2
- package/dest/kernel/nullifier.d.ts.map +1 -1
- package/dest/kernel/nullifier.js +11 -11
- package/dest/kernel/private_call_data.d.ts +4 -24
- package/dest/kernel/private_call_data.d.ts.map +1 -1
- package/dest/kernel/private_call_data.js +4 -16
- package/dest/kernel/private_circuit_public_inputs.d.ts +5 -5
- package/dest/kernel/private_circuit_public_inputs.d.ts.map +1 -1
- package/dest/kernel/private_circuit_public_inputs.js +7 -7
- package/dest/kernel/private_context_inputs.d.ts +2 -2
- package/dest/kernel/private_context_inputs.d.ts.map +1 -1
- package/dest/kernel/private_context_inputs.js +4 -4
- package/dest/kernel/private_kernel_circuit_public_inputs.d.ts +3 -3
- package/dest/kernel/private_kernel_circuit_public_inputs.d.ts.map +1 -1
- package/dest/kernel/private_kernel_circuit_public_inputs.js +3 -3
- package/dest/kernel/private_kernel_data.js +2 -2
- package/dest/kernel/private_kernel_init_circuit_private_inputs.d.ts +5 -4
- package/dest/kernel/private_kernel_init_circuit_private_inputs.d.ts.map +1 -1
- package/dest/kernel/private_kernel_init_circuit_private_inputs.js +7 -6
- package/dest/kernel/private_kernel_prover_output.d.ts +4 -4
- package/dest/kernel/private_kernel_prover_output.d.ts.map +1 -1
- package/dest/kernel/private_kernel_tail_circuit_public_inputs.d.ts +1 -0
- package/dest/kernel/private_kernel_tail_circuit_public_inputs.d.ts.map +1 -1
- package/dest/kernel/private_kernel_tail_circuit_public_inputs.js +4 -1
- package/dest/kernel/private_to_public_accumulated_data.d.ts +1 -1
- package/dest/kernel/private_to_public_kernel_circuit_public_inputs.d.ts +2 -0
- 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 -0
- package/dest/kernel/private_to_rollup_accumulated_data.d.ts +1 -1
- package/dest/keys/derivation.d.ts +0 -2
- package/dest/keys/derivation.d.ts.map +1 -1
- package/dest/keys/derivation.js +3 -24
- package/dest/logs/contract_class_log.d.ts +1 -1
- package/dest/logs/contract_class_log.d.ts.map +1 -1
- package/dest/logs/contract_class_log.js +1 -3
- package/dest/logs/debug_log.d.ts +13 -0
- package/dest/logs/debug_log.d.ts.map +1 -0
- package/dest/logs/debug_log.js +26 -0
- package/dest/logs/directional_app_tagging_secret.d.ts +40 -0
- package/dest/logs/directional_app_tagging_secret.d.ts.map +1 -0
- package/dest/logs/directional_app_tagging_secret.js +63 -0
- package/dest/logs/index.d.ts +3 -1
- package/dest/logs/index.d.ts.map +1 -1
- package/dest/logs/index.js +3 -1
- package/dest/logs/log_with_tx_data.d.ts +9 -12
- package/dest/logs/log_with_tx_data.d.ts.map +1 -1
- package/dest/logs/log_with_tx_data.js +18 -23
- package/dest/logs/pre_tag.d.ts +34 -0
- package/dest/logs/pre_tag.d.ts.map +1 -0
- package/dest/logs/pre_tag.js +7 -0
- package/dest/logs/public_log.d.ts +23 -10
- package/dest/logs/public_log.d.ts.map +1 -1
- package/dest/logs/public_log.js +117 -42
- package/dest/logs/shared_secret_derivation.d.ts.map +1 -1
- package/dest/logs/shared_secret_derivation.js +2 -4
- package/dest/messaging/inbox_leaf.d.ts +2 -0
- package/dest/messaging/inbox_leaf.d.ts.map +1 -1
- package/dest/messaging/inbox_leaf.js +3 -0
- package/dest/messaging/l2_to_l1_membership.d.ts +1 -1
- package/dest/messaging/l2_to_l1_membership.d.ts.map +1 -1
- package/dest/messaging/l2_to_l1_membership.js +16 -18
- package/dest/noir/index.d.ts +11 -0
- package/dest/noir/index.d.ts.map +1 -1
- package/dest/note/index.d.ts +1 -1
- package/dest/note/index.d.ts.map +1 -1
- package/dest/note/index.js +1 -1
- package/dest/note/notes_filter.d.ts +0 -5
- package/dest/note/notes_filter.d.ts.map +1 -1
- package/dest/note/notes_filter.js +0 -3
- package/dest/note/unique_note.d.ts +43 -0
- package/dest/note/unique_note.d.ts.map +1 -0
- package/dest/note/{extended_note.js → unique_note.js} +9 -48
- package/dest/p2p/block_attestation.d.ts +45 -9
- package/dest/p2p/block_attestation.d.ts.map +1 -1
- package/dest/p2p/block_attestation.js +37 -15
- package/dest/p2p/block_proposal.d.ts +7 -9
- package/dest/p2p/block_proposal.d.ts.map +1 -1
- package/dest/p2p/block_proposal.js +13 -14
- package/dest/p2p/consensus_payload.d.ts +35 -6
- package/dest/p2p/consensus_payload.d.ts.map +1 -1
- package/dest/p2p/consensus_payload.js +21 -8
- package/dest/p2p/gossipable.d.ts +6 -16
- package/dest/p2p/gossipable.d.ts.map +1 -1
- package/dest/p2p/gossipable.js +9 -21
- package/dest/p2p/signature_utils.d.ts +2 -1
- package/dest/p2p/signature_utils.d.ts.map +1 -1
- package/dest/p2p/signature_utils.js +1 -0
- package/dest/p2p/topic_type.d.ts +4 -8
- package/dest/p2p/topic_type.d.ts.map +1 -1
- package/dest/p2p/topic_type.js +14 -8
- package/dest/parity/index.d.ts +2 -3
- package/dest/parity/index.d.ts.map +1 -1
- package/dest/parity/index.js +2 -3
- package/dest/parity/{base_parity_inputs.d.ts → parity_base_private_inputs.d.ts} +7 -7
- package/dest/parity/parity_base_private_inputs.d.ts.map +1 -0
- package/dest/parity/{base_parity_inputs.js → parity_base_private_inputs.js} +10 -6
- package/dest/parity/parity_root_private_inputs.d.ts +39 -0
- package/dest/parity/parity_root_private_inputs.d.ts.map +1 -0
- package/dest/parity/{root_parity_inputs.js → parity_root_private_inputs.js} +12 -13
- package/dest/proofs/chonk_proof.d.ts +28 -0
- package/dest/proofs/chonk_proof.d.ts.map +1 -0
- package/dest/proofs/chonk_proof.js +101 -0
- package/dest/proofs/index.d.ts +2 -1
- package/dest/proofs/index.d.ts.map +1 -1
- package/dest/proofs/index.js +2 -1
- package/dest/proofs/proof_data.d.ts +21 -0
- package/dest/proofs/proof_data.d.ts.map +1 -0
- package/dest/proofs/proof_data.js +22 -0
- package/dest/proofs/proving_request_type.d.ts +17 -13
- package/dest/proofs/proving_request_type.d.ts.map +1 -1
- package/dest/proofs/proving_request_type.js +17 -12
- package/dest/rollup/avm_proof_data.d.ts +2 -12
- package/dest/rollup/avm_proof_data.d.ts.map +1 -1
- package/dest/rollup/avm_proof_data.js +0 -24
- package/dest/rollup/base_rollup_hints.d.ts +17 -17
- package/dest/rollup/base_rollup_hints.d.ts.map +1 -1
- package/dest/rollup/base_rollup_hints.js +26 -26
- package/dest/rollup/block_constant_data.d.ts +24 -10
- package/dest/rollup/block_constant_data.d.ts.map +1 -1
- package/dest/rollup/block_constant_data.js +18 -10
- package/dest/rollup/{block_merge_rollup.d.ts → block_merge_rollup_private_inputs.d.ts} +17 -10
- package/dest/rollup/block_merge_rollup_private_inputs.d.ts.map +1 -0
- package/dest/rollup/{block_merge_rollup.js → block_merge_rollup_private_inputs.js} +14 -13
- package/dest/rollup/block_rollup_public_inputs.d.ts +124 -0
- package/dest/rollup/block_rollup_public_inputs.d.ts.map +1 -0
- package/dest/rollup/block_rollup_public_inputs.js +85 -0
- package/dest/rollup/block_root_rollup_private_inputs.d.ts +236 -0
- package/dest/rollup/block_root_rollup_private_inputs.d.ts.map +1 -0
- package/dest/rollup/block_root_rollup_private_inputs.js +257 -0
- package/dest/rollup/checkpoint_constant_data.d.ts +54 -0
- package/dest/rollup/checkpoint_constant_data.d.ts.map +1 -0
- package/dest/rollup/checkpoint_constant_data.js +55 -0
- package/dest/{tx/proposed_block_header.d.ts → rollup/checkpoint_header.d.ts} +12 -11
- package/dest/rollup/checkpoint_header.d.ts.map +1 -0
- package/dest/{tx/proposed_block_header.js → rollup/checkpoint_header.js} +14 -8
- package/dest/rollup/checkpoint_merge_rollup_private_inputs.d.ts +30 -0
- package/dest/rollup/checkpoint_merge_rollup_private_inputs.d.ts.map +1 -0
- package/dest/rollup/checkpoint_merge_rollup_private_inputs.js +37 -0
- package/dest/rollup/checkpoint_rollup_public_inputs.d.ts +106 -0
- package/dest/rollup/checkpoint_rollup_public_inputs.d.ts.map +1 -0
- package/dest/rollup/checkpoint_rollup_public_inputs.js +108 -0
- package/dest/rollup/checkpoint_root_rollup_private_inputs.d.ts +123 -0
- package/dest/rollup/checkpoint_root_rollup_private_inputs.d.ts.map +1 -0
- package/dest/rollup/checkpoint_root_rollup_private_inputs.js +178 -0
- package/dest/rollup/epoch_constant_data.d.ts +23 -6
- package/dest/rollup/epoch_constant_data.d.ts.map +1 -1
- package/dest/rollup/epoch_constant_data.js +25 -12
- package/dest/rollup/index.d.ts +17 -16
- package/dest/rollup/index.d.ts.map +1 -1
- package/dest/rollup/index.js +17 -16
- package/dest/rollup/private_tx_base_rollup_private_inputs.d.ts +21 -0
- package/dest/rollup/private_tx_base_rollup_private_inputs.d.ts.map +1 -0
- package/dest/rollup/private_tx_base_rollup_private_inputs.js +42 -0
- package/dest/rollup/public_chonk_verifier_private_inputs.d.ts +21 -0
- package/dest/rollup/public_chonk_verifier_private_inputs.d.ts.map +1 -0
- package/dest/rollup/public_chonk_verifier_private_inputs.js +43 -0
- package/dest/rollup/public_chonk_verifier_public_inputs.d.ts +20 -0
- package/dest/rollup/public_chonk_verifier_public_inputs.d.ts.map +1 -0
- package/dest/rollup/public_chonk_verifier_public_inputs.js +42 -0
- package/dest/rollup/public_tx_base_rollup_private_inputs.d.ts +23 -0
- package/dest/rollup/public_tx_base_rollup_private_inputs.d.ts.map +1 -0
- package/dest/rollup/public_tx_base_rollup_private_inputs.js +46 -0
- package/dest/rollup/root_rollup_private_inputs.d.ts +67 -0
- package/dest/rollup/root_rollup_private_inputs.d.ts.map +1 -0
- package/dest/rollup/root_rollup_private_inputs.js +69 -0
- package/dest/rollup/root_rollup_public_inputs.d.ts +46 -0
- package/dest/rollup/root_rollup_public_inputs.d.ts.map +1 -0
- package/dest/rollup/root_rollup_public_inputs.js +71 -0
- package/dest/rollup/{state_diff_hints.d.ts → tree_snapshot_diff_hints.d.ts} +22 -38
- package/dest/rollup/tree_snapshot_diff_hints.d.ts.map +1 -0
- package/dest/rollup/tree_snapshot_diff_hints.js +75 -0
- package/dest/rollup/{merge_rollup.d.ts → tx_merge_rollup_private_inputs.d.ts} +11 -10
- package/dest/rollup/tx_merge_rollup_private_inputs.d.ts.map +1 -0
- package/dest/rollup/{merge_rollup.js → tx_merge_rollup_private_inputs.js} +14 -13
- package/dest/rollup/{base_or_merge_rollup_public_inputs.d.ts → tx_rollup_public_inputs.d.ts} +14 -14
- package/dest/rollup/tx_rollup_public_inputs.d.ts.map +1 -0
- package/dest/rollup/{base_or_merge_rollup_public_inputs.js → tx_rollup_public_inputs.js} +15 -15
- package/dest/slashing/types.d.ts +1 -0
- package/dest/slashing/types.d.ts.map +1 -1
- package/dest/slashing/types.js +22 -0
- package/dest/snapshots/download.d.ts.map +1 -1
- package/dest/snapshots/download.js +58 -2
- package/dest/snapshots/upload.d.ts.map +1 -1
- package/dest/snapshots/upload.js +1 -0
- package/dest/stats/stats.d.ts +3 -3
- package/dest/stats/stats.d.ts.map +1 -1
- package/dest/tests/factories.d.ts +43 -75
- package/dest/tests/factories.d.ts.map +1 -1
- package/dest/tests/factories.js +149 -171
- package/dest/tests/mocks.d.ts +16 -10
- package/dest/tests/mocks.d.ts.map +1 -1
- package/dest/tests/mocks.js +55 -33
- package/dest/trees/index.d.ts +0 -1
- package/dest/trees/index.d.ts.map +1 -1
- package/dest/trees/index.js +0 -1
- package/dest/trees/merkle_tree_id.d.ts +4 -4
- package/dest/trees/nullifier_membership_witness.d.ts +3 -3
- package/dest/tx/block_header.d.ts +12 -13
- package/dest/tx/block_header.d.ts.map +1 -1
- package/dest/tx/block_header.js +16 -21
- package/dest/tx/content_commitment.d.ts +1 -0
- package/dest/tx/content_commitment.d.ts.map +1 -1
- package/dest/tx/content_commitment.js +3 -0
- package/dest/tx/global_variables.d.ts.map +1 -1
- package/dest/tx/global_variables.js +0 -1
- package/dest/tx/index.d.ts +2 -1
- package/dest/tx/index.d.ts.map +1 -1
- package/dest/tx/index.js +2 -1
- package/dest/tx/indexed_tx_effect.d.ts +3 -3
- package/dest/tx/partial_state_reference.d.ts +1 -0
- package/dest/tx/partial_state_reference.d.ts.map +1 -1
- package/dest/tx/partial_state_reference.js +3 -0
- package/dest/tx/private_execution_result.d.ts +7 -2
- package/dest/tx/private_execution_result.d.ts.map +1 -1
- package/dest/tx/private_execution_result.js +10 -6
- package/dest/tx/private_tx_constant_data.d.ts +60 -0
- package/dest/tx/private_tx_constant_data.d.ts.map +1 -0
- package/dest/tx/private_tx_constant_data.js +69 -0
- package/dest/tx/processed_tx.d.ts +2 -3
- package/dest/tx/processed_tx.d.ts.map +1 -1
- package/dest/tx/processed_tx.js +3 -8
- package/dest/tx/profiling.d.ts.map +1 -1
- package/dest/tx/profiling.js +0 -2
- package/dest/tx/protocol_contracts.d.ts +29 -0
- package/dest/tx/protocol_contracts.d.ts.map +1 -0
- package/dest/tx/protocol_contracts.js +49 -0
- package/dest/tx/proven_tx.d.ts +7 -7
- package/dest/tx/proven_tx.d.ts.map +1 -1
- package/dest/tx/proven_tx.js +8 -8
- package/dest/tx/simulated_tx.d.ts +3 -3
- package/dest/tx/simulated_tx.js +2 -2
- package/dest/tx/state_reference.d.ts +1 -0
- package/dest/tx/state_reference.d.ts.map +1 -1
- package/dest/tx/state_reference.js +4 -1
- package/dest/tx/tx.d.ts +9 -12
- package/dest/tx/tx.d.ts.map +1 -1
- package/dest/tx/tx.js +21 -22
- package/dest/tx/tx_constant_data.d.ts +6 -38
- package/dest/tx/tx_constant_data.d.ts.map +1 -1
- package/dest/tx/tx_constant_data.js +11 -20
- package/dest/tx/tx_effect.d.ts +3 -36
- package/dest/tx/tx_effect.d.ts.map +1 -1
- package/dest/tx/tx_effect.js +63 -202
- package/dest/tx/validator/error_texts.d.ts +1 -1
- package/dest/tx/validator/error_texts.d.ts.map +1 -1
- package/dest/tx/validator/error_texts.js +1 -1
- package/dest/update-checker/update-checker.d.ts +1 -1
- package/dest/update-checker/update-checker.d.ts.map +1 -1
- package/dest/update-checker/update-checker.js +1 -1
- package/dest/validators/schemas.d.ts +42 -4
- package/dest/validators/schemas.d.ts.map +1 -1
- package/dest/validators/schemas.js +5 -4
- package/dest/validators/types.d.ts +8 -10
- package/dest/validators/types.d.ts.map +1 -1
- package/dest/versioning/versioning.d.ts +2 -2
- package/dest/versioning/versioning.d.ts.map +1 -1
- package/dest/versioning/versioning.js +18 -13
- package/dest/world-state/index.d.ts +2 -0
- package/dest/world-state/index.d.ts.map +1 -0
- package/dest/world-state/index.js +1 -0
- package/dest/world-state/world_state_revision.d.ts +22 -0
- package/dest/world-state/world_state_revision.d.ts.map +1 -0
- package/dest/world-state/world_state_revision.js +21 -0
- package/dest/zkpassport/index.d.ts +17 -11
- package/dest/zkpassport/index.d.ts.map +1 -1
- package/dest/zkpassport/index.js +21 -15
- package/package.json +15 -11
- package/src/abi/abi.ts +1 -1
- package/src/abi/contract_artifact.ts +3 -0
- package/src/abi/event_metadata_definition.ts +8 -0
- package/src/abi/function_call.ts +5 -1
- package/src/abi/index.ts +1 -0
- package/src/avm/avm.ts +15 -7
- package/src/avm/avm_accumulated_data.ts +25 -29
- package/src/avm/avm_circuit_public_inputs.ts +21 -0
- package/src/avm/index.ts +1 -1
- package/src/avm/message_pack.ts +25 -1
- package/src/block/attestation_info.ts +62 -0
- package/src/block/body.ts +25 -23
- package/src/block/index.ts +4 -0
- package/src/block/l2_block.ts +39 -19
- package/src/block/l2_block_code_to_purge.ts +30 -31
- package/src/block/l2_block_header.ts +232 -0
- package/src/block/l2_block_info.ts +63 -0
- package/src/block/l2_block_source.ts +38 -56
- package/src/block/l2_block_stream/l2_tips_memory_store.ts +1 -1
- package/src/block/proposal/attestations_and_signers.ts +121 -0
- package/src/block/proposal/index.ts +1 -0
- package/src/block/published_l2_block.ts +37 -15
- package/src/block/test/l2_tips_store_test_suite.ts +7 -7
- package/src/block/validate_block_result.ts +122 -0
- package/src/checkpoint/checkpoint_body.ts +10 -0
- package/src/checkpoint/index.ts +1 -0
- package/src/config/node-rpc-config.ts +9 -0
- package/src/contract/contract_address.ts +1 -1
- package/src/contract/contract_class_metadata.ts +8 -0
- package/src/contract/contract_instance.ts +11 -10
- package/src/contract/contract_metadata.ts +7 -0
- package/src/contract/index.ts +2 -0
- package/src/contract/interfaces/contract_class.ts +1 -1
- package/src/epoch-helpers/index.ts +24 -2
- package/src/fees/transaction_fee.ts +11 -0
- package/src/file-store/factory.ts +15 -0
- package/src/file-store/interface.ts +8 -2
- package/src/file-store/s3.ts +254 -0
- package/src/hash/hash.ts +0 -4
- package/src/interfaces/archiver.ts +49 -4
- package/src/interfaces/aztec-node-admin.ts +17 -1
- package/src/interfaces/aztec-node.ts +53 -2
- package/src/interfaces/block-builder.ts +11 -12
- package/src/interfaces/client.ts +0 -1
- package/src/interfaces/configs.ts +6 -0
- package/src/interfaces/epoch-prover.ts +38 -14
- package/src/interfaces/merkle_tree_operations.ts +6 -0
- package/src/interfaces/p2p.ts +4 -0
- package/src/interfaces/private_kernel_prover.ts +2 -2
- package/src/interfaces/proving-job.ts +218 -134
- package/src/interfaces/server.ts +1 -0
- package/src/interfaces/server_circuit_prover.ts +89 -61
- package/src/interfaces/slasher.ts +2 -0
- package/src/interfaces/tx_provider.ts +1 -0
- package/src/interfaces/validator.ts +95 -0
- package/src/kernel/hints/build_nullifier_read_request_hints.ts +3 -2
- package/src/kernel/hints/nullifier_read_request_hints.ts +3 -3
- package/src/kernel/nullifier.ts +8 -8
- package/src/kernel/private_call_data.ts +2 -21
- package/src/kernel/private_circuit_public_inputs.ts +5 -5
- package/src/kernel/private_context_inputs.ts +2 -2
- package/src/kernel/private_kernel_circuit_public_inputs.ts +4 -4
- package/src/kernel/private_kernel_data.ts +2 -2
- package/src/kernel/private_kernel_init_circuit_private_inputs.ts +5 -4
- package/src/kernel/private_kernel_prover_output.ts +4 -4
- package/src/kernel/private_kernel_tail_circuit_public_inputs.ts +8 -2
- package/src/kernel/private_to_public_kernel_circuit_public_inputs.ts +9 -0
- package/src/keys/derivation.ts +3 -29
- package/src/logs/contract_class_log.ts +2 -3
- package/src/logs/debug_log.ts +32 -0
- package/src/logs/directional_app_tagging_secret.ts +77 -0
- package/src/logs/index.ts +3 -1
- package/src/logs/log_with_tx_data.ts +14 -24
- package/src/logs/pre_tag.ts +25 -0
- package/src/logs/public_log.ts +120 -58
- package/src/logs/shared_secret_derivation.ts +2 -4
- package/src/messaging/inbox_leaf.ts +5 -0
- package/src/messaging/l2_to_l1_membership.ts +20 -26
- package/src/noir/index.ts +11 -0
- package/src/note/index.ts +1 -1
- package/src/note/notes_filter.ts +0 -7
- package/src/note/{extended_note.ts → unique_note.ts} +14 -75
- package/src/p2p/block_attestation.ts +46 -15
- package/src/p2p/block_proposal.ts +15 -18
- package/src/p2p/consensus_payload.ts +30 -10
- package/src/p2p/gossipable.ts +10 -28
- package/src/p2p/signature_utils.ts +1 -0
- package/src/p2p/topic_type.ts +15 -8
- package/src/parity/index.ts +2 -3
- package/src/parity/{base_parity_inputs.ts → parity_base_private_inputs.ts} +13 -11
- package/src/parity/{root_parity_inputs.ts → parity_root_private_inputs.ts} +16 -18
- package/src/proofs/chonk_proof.ts +118 -0
- package/src/proofs/index.ts +2 -1
- package/src/proofs/proof_data.ts +36 -0
- package/src/proofs/proving_request_type.ts +14 -10
- package/src/rollup/avm_proof_data.ts +2 -31
- package/src/rollup/base_rollup_hints.ts +22 -22
- package/src/rollup/block_constant_data.ts +16 -6
- package/src/rollup/{block_merge_rollup.ts → block_merge_rollup_private_inputs.ts} +15 -11
- package/src/rollup/block_rollup_public_inputs.ts +123 -0
- package/src/rollup/block_root_rollup_private_inputs.ts +312 -0
- package/src/rollup/checkpoint_constant_data.ts +84 -0
- package/src/{tx/proposed_block_header.ts → rollup/checkpoint_header.ts} +40 -15
- package/src/rollup/checkpoint_merge_rollup_private_inputs.ts +49 -0
- package/src/rollup/{block_root_or_block_merge_public_inputs.ts → checkpoint_rollup_public_inputs.ts} +30 -52
- package/src/rollup/checkpoint_root_rollup_private_inputs.ts +218 -0
- package/src/rollup/epoch_constant_data.ts +28 -10
- package/src/rollup/index.ts +17 -16
- package/src/rollup/private_tx_base_rollup_private_inputs.ts +53 -0
- package/src/rollup/public_chonk_verifier_private_inputs.ts +54 -0
- package/src/rollup/public_chonk_verifier_public_inputs.ts +53 -0
- package/src/rollup/public_tx_base_rollup_private_inputs.ts +57 -0
- package/src/rollup/root_rollup_private_inputs.ts +90 -0
- package/src/rollup/root_rollup_public_inputs.ts +99 -0
- package/src/rollup/{state_diff_hints.ts → tree_snapshot_diff_hints.ts} +26 -41
- package/src/rollup/{merge_rollup.ts → tx_merge_rollup_private_inputs.ts} +13 -9
- package/src/rollup/{base_or_merge_rollup_public_inputs.ts → tx_rollup_public_inputs.ts} +13 -13
- package/src/slashing/types.ts +23 -0
- package/src/snapshots/download.ts +66 -2
- package/src/snapshots/upload.ts +1 -0
- package/src/stats/stats.ts +21 -15
- package/src/tests/factories.ts +226 -283
- package/src/tests/mocks.ts +90 -60
- package/src/trees/index.ts +0 -1
- package/src/tx/block_header.ts +17 -32
- package/src/tx/content_commitment.ts +4 -0
- package/src/tx/global_variables.ts +0 -1
- package/src/tx/index.ts +2 -1
- package/src/tx/partial_state_reference.ts +8 -0
- package/src/tx/private_execution_result.ts +9 -3
- package/src/tx/private_tx_constant_data.ts +94 -0
- package/src/tx/processed_tx.ts +5 -11
- package/src/tx/profiling.ts +0 -2
- package/src/tx/protocol_contracts.ts +70 -0
- package/src/tx/proven_tx.ts +6 -6
- package/src/tx/simulated_tx.ts +2 -2
- package/src/tx/state_reference.ts +5 -1
- package/src/tx/tx.ts +21 -22
- package/src/tx/tx_constant_data.ts +8 -21
- package/src/tx/tx_effect.ts +64 -213
- package/src/tx/validator/error_texts.ts +1 -1
- package/src/update-checker/update-checker.ts +1 -1
- package/src/validators/schemas.ts +6 -4
- package/src/validators/types.ts +9 -10
- package/src/versioning/versioning.ts +20 -15
- package/src/world-state/index.ts +1 -0
- package/src/world-state/world_state_revision.ts +21 -0
- package/src/zkpassport/index.ts +42 -30
- package/dest/avm/public_data_hint.d.ts +0 -16
- package/dest/avm/public_data_hint.d.ts.map +0 -1
- package/dest/avm/public_data_hint.js +0 -27
- package/dest/interfaces/pxe.d.ts +0 -329
- package/dest/interfaces/pxe.d.ts.map +0 -1
- package/dest/interfaces/pxe.js +0 -100
- package/dest/logs/indexed_tagging_secret.d.ts +0 -28
- package/dest/logs/indexed_tagging_secret.d.ts.map +0 -1
- package/dest/logs/indexed_tagging_secret.js +0 -50
- package/dest/note/extended_note.d.ts +0 -111
- package/dest/note/extended_note.d.ts.map +0 -1
- package/dest/parity/base_parity_inputs.d.ts.map +0 -1
- package/dest/parity/root_parity_input.d.ts +0 -52
- package/dest/parity/root_parity_input.d.ts.map +0 -1
- package/dest/parity/root_parity_input.js +0 -50
- package/dest/parity/root_parity_inputs.d.ts +0 -37
- package/dest/parity/root_parity_inputs.d.ts.map +0 -1
- package/dest/proofs/client_ivc_proof.d.ts +0 -18
- package/dest/proofs/client_ivc_proof.d.ts.map +0 -1
- package/dest/proofs/client_ivc_proof.js +0 -41
- package/dest/rollup/base_or_merge_rollup_public_inputs.d.ts.map +0 -1
- package/dest/rollup/block_merge_rollup.d.ts.map +0 -1
- package/dest/rollup/block_root_or_block_merge_public_inputs.d.ts +0 -134
- package/dest/rollup/block_root_or_block_merge_public_inputs.d.ts.map +0 -1
- package/dest/rollup/block_root_or_block_merge_public_inputs.js +0 -125
- package/dest/rollup/block_root_rollup.d.ts +0 -283
- package/dest/rollup/block_root_rollup.d.ts.map +0 -1
- package/dest/rollup/block_root_rollup.js +0 -306
- package/dest/rollup/empty_block_root_rollup_inputs.d.ts +0 -51
- package/dest/rollup/empty_block_root_rollup_inputs.d.ts.map +0 -1
- package/dest/rollup/empty_block_root_rollup_inputs.js +0 -65
- package/dest/rollup/merge_rollup.d.ts.map +0 -1
- package/dest/rollup/padding_block_root_rollup_inputs.d.ts +0 -20
- package/dest/rollup/padding_block_root_rollup_inputs.d.ts.map +0 -1
- package/dest/rollup/padding_block_root_rollup_inputs.js +0 -39
- package/dest/rollup/previous_rollup_block_data.d.ts +0 -47
- package/dest/rollup/previous_rollup_block_data.d.ts.map +0 -1
- package/dest/rollup/previous_rollup_block_data.js +0 -37
- package/dest/rollup/previous_rollup_data.d.ts +0 -47
- package/dest/rollup/previous_rollup_data.d.ts.map +0 -1
- package/dest/rollup/previous_rollup_data.js +0 -37
- package/dest/rollup/private_base_rollup_inputs.d.ts +0 -21
- package/dest/rollup/private_base_rollup_inputs.d.ts.map +0 -1
- package/dest/rollup/private_base_rollup_inputs.js +0 -44
- package/dest/rollup/private_tube_data.d.ts +0 -15
- package/dest/rollup/private_tube_data.d.ts.map +0 -1
- package/dest/rollup/private_tube_data.js +0 -25
- package/dest/rollup/public_base_rollup_inputs.d.ts +0 -23
- package/dest/rollup/public_base_rollup_inputs.d.ts.map +0 -1
- package/dest/rollup/public_base_rollup_inputs.js +0 -48
- package/dest/rollup/public_tube_data.d.ts +0 -15
- package/dest/rollup/public_tube_data.d.ts.map +0 -1
- package/dest/rollup/public_tube_data.js +0 -25
- package/dest/rollup/root_rollup.d.ts +0 -106
- package/dest/rollup/root_rollup.d.ts.map +0 -1
- package/dest/rollup/root_rollup.js +0 -147
- package/dest/rollup/state_diff_hints.d.ts.map +0 -1
- package/dest/rollup/state_diff_hints.js +0 -85
- package/dest/rollup/tube_inputs.d.ts +0 -43
- package/dest/rollup/tube_inputs.d.ts.map +0 -1
- package/dest/rollup/tube_inputs.js +0 -63
- package/dest/trees/protocol_contract_leaf.d.ts +0 -84
- package/dest/trees/protocol_contract_leaf.d.ts.map +0 -1
- package/dest/trees/protocol_contract_leaf.js +0 -100
- package/dest/tx/proposed_block_header.d.ts.map +0 -1
- package/src/avm/public_data_hint.ts +0 -38
- package/src/interfaces/pxe.ts +0 -532
- package/src/logs/indexed_tagging_secret.ts +0 -48
- package/src/parity/root_parity_input.ts +0 -71
- package/src/proofs/client_ivc_proof.ts +0 -51
- package/src/rollup/block_root_rollup.ts +0 -380
- package/src/rollup/empty_block_root_rollup_inputs.ts +0 -80
- package/src/rollup/padding_block_root_rollup_inputs.ts +0 -47
- package/src/rollup/previous_rollup_block_data.ts +0 -48
- package/src/rollup/previous_rollup_data.ts +0 -48
- package/src/rollup/private_base_rollup_inputs.ts +0 -53
- package/src/rollup/private_tube_data.ts +0 -35
- package/src/rollup/public_base_rollup_inputs.ts +0 -59
- package/src/rollup/public_tube_data.ts +0 -35
- package/src/rollup/root_rollup.ts +0 -195
- package/src/rollup/tube_inputs.ts +0 -77
- package/src/trees/protocol_contract_leaf.ts +0 -128
|
@@ -49,11 +49,11 @@ export declare class SimulationOverrides {
|
|
|
49
49
|
}, "strip", z.ZodTypeAny, {
|
|
50
50
|
version: 1;
|
|
51
51
|
salt: import("@aztec/foundation/schemas").Fr;
|
|
52
|
-
publicKeys: import("../keys/public_keys.js").PublicKeys;
|
|
53
52
|
deployer: import("../aztec-address/index.js").AztecAddress;
|
|
54
53
|
currentContractClassId: import("@aztec/foundation/schemas").Fr;
|
|
55
54
|
originalContractClassId: import("@aztec/foundation/schemas").Fr;
|
|
56
55
|
initializationHash: import("@aztec/foundation/schemas").Fr;
|
|
56
|
+
publicKeys: import("../keys/public_keys.js").PublicKeys;
|
|
57
57
|
}, {
|
|
58
58
|
version: 1;
|
|
59
59
|
publicKeys: {
|
|
@@ -79,11 +79,11 @@ export declare class SimulationOverrides {
|
|
|
79
79
|
instance: {
|
|
80
80
|
version: 1;
|
|
81
81
|
salt: import("@aztec/foundation/schemas").Fr;
|
|
82
|
-
publicKeys: import("../keys/public_keys.js").PublicKeys;
|
|
83
82
|
deployer: import("../aztec-address/index.js").AztecAddress;
|
|
84
83
|
currentContractClassId: import("@aztec/foundation/schemas").Fr;
|
|
85
84
|
originalContractClassId: import("@aztec/foundation/schemas").Fr;
|
|
86
85
|
initializationHash: import("@aztec/foundation/schemas").Fr;
|
|
86
|
+
publicKeys: import("../keys/public_keys.js").PublicKeys;
|
|
87
87
|
} & {
|
|
88
88
|
address: import("../aztec-address/index.js").AztecAddress;
|
|
89
89
|
};
|
|
@@ -112,11 +112,11 @@ export declare class SimulationOverrides {
|
|
|
112
112
|
instance: {
|
|
113
113
|
version: 1;
|
|
114
114
|
salt: import("@aztec/foundation/schemas").Fr;
|
|
115
|
-
publicKeys: import("../keys/public_keys.js").PublicKeys;
|
|
116
115
|
deployer: import("../aztec-address/index.js").AztecAddress;
|
|
117
116
|
currentContractClassId: import("@aztec/foundation/schemas").Fr;
|
|
118
117
|
originalContractClassId: import("@aztec/foundation/schemas").Fr;
|
|
119
118
|
initializationHash: import("@aztec/foundation/schemas").Fr;
|
|
119
|
+
publicKeys: import("../keys/public_keys.js").PublicKeys;
|
|
120
120
|
} & {
|
|
121
121
|
address: import("../aztec-address/index.js").AztecAddress;
|
|
122
122
|
};
|
package/dest/tx/simulated_tx.js
CHANGED
|
@@ -4,7 +4,7 @@ import { ContractArtifactSchema } from '../abi/abi.js';
|
|
|
4
4
|
import { ContractInstanceWithAddressSchema } from '../contract/interfaces/contract_instance.js';
|
|
5
5
|
import { Gas } from '../gas/gas.js';
|
|
6
6
|
import { PrivateKernelTailCircuitPublicInputs } from '../kernel/private_kernel_tail_circuit_public_inputs.js';
|
|
7
|
-
import {
|
|
7
|
+
import { ChonkProof } from '../proofs/chonk_proof.js';
|
|
8
8
|
import { PrivateExecutionResult, collectSortedContractClassLogs } from './private_execution_result.js';
|
|
9
9
|
import { SimulationStatsSchema } from './profiling.js';
|
|
10
10
|
import { NestedProcessReturnValues, PublicSimulationOutput } from './public_simulation_output.js';
|
|
@@ -42,7 +42,7 @@ export class PrivateSimulationResult {
|
|
|
42
42
|
const contractClassLogs = collectSortedContractClassLogs(this.privateExecutionResult);
|
|
43
43
|
return await Tx.create({
|
|
44
44
|
data: this.publicInputs,
|
|
45
|
-
|
|
45
|
+
chonkProof: ChonkProof.empty(),
|
|
46
46
|
contractClassLogFields: contractClassLogs,
|
|
47
47
|
publicFunctionCalldata: this.privateExecutionResult.publicFunctionCalldata
|
|
48
48
|
});
|
|
@@ -152,6 +152,7 @@ export declare class StateReference {
|
|
|
152
152
|
static fromFields(fields: Fr[] | FieldReader): StateReference;
|
|
153
153
|
static fromViem(stateReference: ViemStateReference): StateReference;
|
|
154
154
|
static empty(): StateReference;
|
|
155
|
+
static random(): StateReference;
|
|
155
156
|
toViem(): ViemStateReference;
|
|
156
157
|
toAbi(): [ReturnType<AppendOnlyTreeSnapshot['toAbi']>, ReturnType<PartialStateReference['toAbi']>];
|
|
157
158
|
isEmpty(): boolean;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"state_reference.d.ts","sourceRoot":"","sources":["../../src/tx/state_reference.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,iBAAiB,CAAC;AAC1D,OAAO,KAAK,EAAE,EAAE,EAAE,MAAM,0BAA0B,CAAC;AACnD,OAAO,EAAE,YAAY,EAAE,WAAW,EAAqB,MAAM,6BAA6B,CAAC;AAE3F,OAAO,EAAE,OAAO,EAAE,MAAM,MAAM,CAAC;AAC/B,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,EAAE,sBAAsB,EAAE,MAAM,uCAAuC,CAAC;AAC/E,OAAO,EAAE,qBAAqB,EAAE,MAAM,8BAA8B,CAAC;AAErE;;GAEG;AACH,qBAAa,cAAc;IAEvB,6CAA6C;IACtC,iBAAiB,EAAE,sBAAsB;IAChD,0CAA0C;IACnC,OAAO,EAAE,qBAAqB;;IAHrC,6CAA6C;IACtC,iBAAiB,EAAE,sBAAsB;IAChD,0CAA0C;IACnC,OAAO,EAAE,qBAAqB;IAGvC,MAAM,KAAK,MAAM;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAOhB;IAED,OAAO;IAIP,QAAQ;IAKR,QAAQ,IAAI,EAAE,EAAE;IAUhB,MAAM,CAAC,UAAU,CAAC,MAAM,EAAE,MAAM,GAAG,YAAY,GAAG,cAAc;IAKhE,MAAM,CAAC,UAAU,CAAC,MAAM,EAAE,EAAE,EAAE,GAAG,WAAW,GAAG,cAAc;IAS7D,MAAM,CAAC,QAAQ,CAAC,cAAc,EAAE,kBAAkB;IAOlD,MAAM,CAAC,KAAK,IAAI,cAAc;IAI9B,MAAM,IAAI,kBAAkB;IAO5B,KAAK,IAAI,CAAC,UAAU,CAAC,sBAAsB,CAAC,OAAO,CAAC,CAAC,EAAE,UAAU,CAAC,qBAAqB,CAAC,OAAO,CAAC,CAAC,CAAC;IAIlG,OAAO,IAAI,OAAO;IAIlB,SAAS;;;;;;IAST;;OAEG;IACI,QAAQ;IAkBf,CAAC,OAAO,CAAC,MAAM,CAAC;IAST,MAAM,CAAC,KAAK,EAAE,IAAI,GAAG,OAAO;CAGpC"}
|
|
1
|
+
{"version":3,"file":"state_reference.d.ts","sourceRoot":"","sources":["../../src/tx/state_reference.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,iBAAiB,CAAC;AAC1D,OAAO,KAAK,EAAE,EAAE,EAAE,MAAM,0BAA0B,CAAC;AACnD,OAAO,EAAE,YAAY,EAAE,WAAW,EAAqB,MAAM,6BAA6B,CAAC;AAE3F,OAAO,EAAE,OAAO,EAAE,MAAM,MAAM,CAAC;AAC/B,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,EAAE,sBAAsB,EAAE,MAAM,uCAAuC,CAAC;AAC/E,OAAO,EAAE,qBAAqB,EAAE,MAAM,8BAA8B,CAAC;AAErE;;GAEG;AACH,qBAAa,cAAc;IAEvB,6CAA6C;IACtC,iBAAiB,EAAE,sBAAsB;IAChD,0CAA0C;IACnC,OAAO,EAAE,qBAAqB;;IAHrC,6CAA6C;IACtC,iBAAiB,EAAE,sBAAsB;IAChD,0CAA0C;IACnC,OAAO,EAAE,qBAAqB;IAGvC,MAAM,KAAK,MAAM;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAOhB;IAED,OAAO;IAIP,QAAQ;IAKR,QAAQ,IAAI,EAAE,EAAE;IAUhB,MAAM,CAAC,UAAU,CAAC,MAAM,EAAE,MAAM,GAAG,YAAY,GAAG,cAAc;IAKhE,MAAM,CAAC,UAAU,CAAC,MAAM,EAAE,EAAE,EAAE,GAAG,WAAW,GAAG,cAAc;IAS7D,MAAM,CAAC,QAAQ,CAAC,cAAc,EAAE,kBAAkB;IAOlD,MAAM,CAAC,KAAK,IAAI,cAAc;IAI9B,MAAM,CAAC,MAAM,IAAI,cAAc;IAI/B,MAAM,IAAI,kBAAkB;IAO5B,KAAK,IAAI,CAAC,UAAU,CAAC,sBAAsB,CAAC,OAAO,CAAC,CAAC,EAAE,UAAU,CAAC,qBAAqB,CAAC,OAAO,CAAC,CAAC,CAAC;IAIlG,OAAO,IAAI,OAAO;IAIlB,SAAS;;;;;;IAST;;OAEG;IACI,QAAQ;IAkBf,CAAC,OAAO,CAAC,MAAM,CAAC;IAST,MAAM,CAAC,KAAK,EAAE,IAAI,GAAG,OAAO;CAGpC"}
|
|
@@ -52,6 +52,9 @@ import { PartialStateReference } from './partial_state_reference.js';
|
|
|
52
52
|
static empty() {
|
|
53
53
|
return new StateReference(AppendOnlyTreeSnapshot.empty(), PartialStateReference.empty());
|
|
54
54
|
}
|
|
55
|
+
static random() {
|
|
56
|
+
return new StateReference(AppendOnlyTreeSnapshot.random(), PartialStateReference.random());
|
|
57
|
+
}
|
|
55
58
|
toViem() {
|
|
56
59
|
return {
|
|
57
60
|
l1ToL2MessageTree: this.l1ToL2MessageTree.toViem(),
|
|
@@ -99,6 +102,6 @@ import { PartialStateReference } from './partial_state_reference.js';
|
|
|
99
102
|
}`;
|
|
100
103
|
}
|
|
101
104
|
equals(other) {
|
|
102
|
-
return this.l1ToL2MessageTree.
|
|
105
|
+
return this.l1ToL2MessageTree.equals(other.l1ToL2MessageTree) && this.partial.equals(other.partial);
|
|
103
106
|
}
|
|
104
107
|
}
|
package/dest/tx/tx.d.ts
CHANGED
|
@@ -10,7 +10,7 @@ import { PrivateKernelTailCircuitPublicInputs } from '../kernel/private_kernel_t
|
|
|
10
10
|
import { ContractClassLog, ContractClassLogFields } from '../logs/contract_class_log.js';
|
|
11
11
|
import { Gossipable } from '../p2p/gossipable.js';
|
|
12
12
|
import { TopicType } from '../p2p/topic_type.js';
|
|
13
|
-
import {
|
|
13
|
+
import { ChonkProof } from '../proofs/chonk_proof.js';
|
|
14
14
|
import type { TxStats } from '../stats/stats.js';
|
|
15
15
|
import { HashedValues } from './hashed_values.js';
|
|
16
16
|
import { PublicCallRequestWithCalldata } from './public_call_request_with_calldata.js';
|
|
@@ -28,9 +28,8 @@ export declare class Tx extends Gossipable {
|
|
|
28
28
|
readonly data: PrivateKernelTailCircuitPublicInputs;
|
|
29
29
|
/**
|
|
30
30
|
* Proof from the private kernel circuit.
|
|
31
|
-
* TODO(#7368): This client IVC object currently contains various VKs that will eventually be more like static data.
|
|
32
31
|
*/
|
|
33
|
-
readonly
|
|
32
|
+
readonly chonkProof: ChonkProof;
|
|
34
33
|
/**
|
|
35
34
|
* Contract class log fields emitted from the tx.
|
|
36
35
|
* Their order should match the order of the log hashes returned from `this.data.getNonEmptyContractClassLogsHashes`.
|
|
@@ -52,9 +51,8 @@ export declare class Tx extends Gossipable {
|
|
|
52
51
|
data: PrivateKernelTailCircuitPublicInputs,
|
|
53
52
|
/**
|
|
54
53
|
* Proof from the private kernel circuit.
|
|
55
|
-
* TODO(#7368): This client IVC object currently contains various VKs that will eventually be more like static data.
|
|
56
54
|
*/
|
|
57
|
-
|
|
55
|
+
chonkProof: ChonkProof,
|
|
58
56
|
/**
|
|
59
57
|
* Contract class log fields emitted from the tx.
|
|
60
58
|
* Their order should match the order of the log hashes returned from `this.data.getNonEmptyContractClassLogsHashes`.
|
|
@@ -89,6 +87,12 @@ export declare class Tx extends Gossipable {
|
|
|
89
87
|
static computeTxHash(fields: Pick<FieldsOf<Tx>, 'data'>): Promise<TxHash>;
|
|
90
88
|
static create(fields: Omit<FieldsOf<Tx>, 'txHash'>): Promise<Tx>;
|
|
91
89
|
static from(fields: FieldsOf<Tx>): Tx;
|
|
90
|
+
/**
|
|
91
|
+
* Validates that the tx hash matches the computed hash from the tx data.
|
|
92
|
+
* This should be called when deserializing a tx from an untrusted source.
|
|
93
|
+
* @returns true if the hash is valid, false otherwise
|
|
94
|
+
*/
|
|
95
|
+
validateTxHash(): Promise<boolean>;
|
|
92
96
|
/**
|
|
93
97
|
* Gets public logs emitted by this tx.
|
|
94
98
|
* @param logsSource - An instance of `L2LogsSource` which can be used to obtain the logs.
|
|
@@ -107,13 +111,6 @@ export declare class Tx extends Gossipable {
|
|
|
107
111
|
* @returns The hash of the public inputs of the private kernel tail circuit.
|
|
108
112
|
*/
|
|
109
113
|
getTxHash(): TxHash;
|
|
110
|
-
/**
|
|
111
|
-
* Allows setting the hash of the Tx.
|
|
112
|
-
* Use this when you want to skip computing it from the original data.
|
|
113
|
-
* Don't set a Tx hash received from an untrusted source.
|
|
114
|
-
* @param hash - The hash to set.
|
|
115
|
-
*/
|
|
116
|
-
setTxHash(_hash: TxHash): this;
|
|
117
114
|
getCalldataMap(): Map<string, Fr[]>;
|
|
118
115
|
/** Returns stats about this tx. */
|
|
119
116
|
getStats(): TxStats;
|
package/dest/tx/tx.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tx.d.ts","sourceRoot":"","sources":["../../src/tx/tx.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,0BAA0B,CAAC;AAEpD,OAAO,EAAE,EAAE,EAAE,MAAM,0BAA0B,CAAC;AAC9C,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,2BAA2B,CAAC;AACxD,OAAO,EAAE,YAAY,EAAyD,MAAM,6BAA6B,CAAC;AAClH,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,yBAAyB,CAAC;AAIxD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAC;AAC1D,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,oCAAoC,CAAC;AAChF,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,iCAAiC,CAAC;AAEpE,OAAO,EAAE,oCAAoC,EAAE,MAAM,wDAAwD,CAAC;AAC9G,OAAO,EAAE,gBAAgB,EAAE,sBAAsB,EAAE,MAAM,+BAA+B,CAAC;AACzF,OAAO,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAClD,OAAO,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAC;AACjD,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"tx.d.ts","sourceRoot":"","sources":["../../src/tx/tx.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,0BAA0B,CAAC;AAEpD,OAAO,EAAE,EAAE,EAAE,MAAM,0BAA0B,CAAC;AAC9C,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,2BAA2B,CAAC;AACxD,OAAO,EAAE,YAAY,EAAyD,MAAM,6BAA6B,CAAC;AAClH,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,yBAAyB,CAAC;AAIxD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAC;AAC1D,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,oCAAoC,CAAC;AAChF,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,iCAAiC,CAAC;AAEpE,OAAO,EAAE,oCAAoC,EAAE,MAAM,wDAAwD,CAAC;AAC9G,OAAO,EAAE,gBAAgB,EAAE,sBAAsB,EAAE,MAAM,+BAA+B,CAAC;AACzF,OAAO,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAClD,OAAO,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAC;AACjD,OAAO,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAC;AACtD,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,mBAAmB,CAAC;AACjD,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAClD,OAAO,EAAE,6BAA6B,EAAE,MAAM,wCAAwC,CAAC;AACvF,OAAO,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;AAEtC;;GAEG;AACH,qBAAa,EAAG,SAAQ,UAAU;;IAM9B,2BAA2B;aACX,MAAM,EAAE,MAAM;IAC9B;;OAEG;aACa,IAAI,EAAE,oCAAoC;IAC1D;;OAEG;aACa,UAAU,EAAE,UAAU;IACtC;;;;OAIG;aACa,sBAAsB,EAAE,sBAAsB,EAAE;IAChE;;OAEG;aACa,sBAAsB,EAAE,YAAY,EAAE;IAxBxD,OAAgB,QAAQ,YAAgB;IAExC,OAAO,CAAC,WAAW,CAAgC;;IAGjD,2BAA2B;IACX,MAAM,EAAE,MAAM;IAC9B;;OAEG;IACa,IAAI,EAAE,oCAAoC;IAC1D;;OAEG;IACa,UAAU,EAAE,UAAU;IACtC;;;;OAIG;IACa,sBAAsB,EAAE,sBAAsB,EAAE;IAChE;;OAEG;IACa,sBAAsB,EAAE,YAAY,EAAE;IAM/C,4BAA4B,IAAI,OAAO,CAAC,QAAQ,CAAC;IAI1D,cAAc;IAId,mBAAmB;IAInB,8CAA8C,IAAI,6BAA6B,EAAE;IAIjF,2CAA2C,IAAI,6BAA6B,EAAE;IAI9E,wCAAwC,IAAI,6BAA6B,GAAG,SAAS;IAKrF,iCAAiC,IAAI,6BAA6B,EAAE;IAUpE,2BAA2B,IAAI,MAAM;IAIrC,cAAc,IAAI,WAAW;IAI7B;;;;OAIG;IACH,MAAM,CAAC,UAAU,CAAC,MAAM,EAAE,MAAM,GAAG,YAAY,GAAG,EAAE;IAWpD;;;OAGG;IACH,QAAQ;IAUR,MAAM,KAAK,MAAM,IAAI,MAAM,CAAC,EAAE,CAAC,CAS9B;WAEY,aAAa,CAAC,MAAM,EAAE,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC,EAAE,MAAM,CAAC;WAOhD,MAAM,CAAC,MAAM,EAAE,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC,EAAE,QAAQ,CAAC,GAAG,OAAO,CAAC,EAAE,CAAC;IAKtE,MAAM,CAAC,IAAI,CAAC,MAAM,EAAE,QAAQ,CAAC,EAAE,CAAC;IAUhC;;;;OAIG;IACG,cAAc,IAAI,OAAO,CAAC,OAAO,CAAC;IAKxC;;;;OAIG;IACI,aAAa,CAAC,UAAU,EAAE,YAAY,GAAG,OAAO,CAAC,qBAAqB,CAAC;IAI9E,oBAAoB,IAAI,gBAAgB,EAAE;IAW1C;;;;OAIG;IACH,yBAAyB,CAAC,UAAU,EAAE,OAAO,GAAG,gBAAgB,EAAE;IAYlE;;;OAGG;IACH,SAAS,IAAI,MAAM;IAInB,cAAc,IAAI,GAAG,CAAC,MAAM,EAAE,EAAE,EAAE,CAAC;IAUnC,mCAAmC;IACnC,QAAQ,IAAI,OAAO;IAmBnB,OAAO;IASP;;;OAGG;IACH,gCAAgC;IAShC;;;;OAIG;IACH,MAAM,CAAC,KAAK,CAAC,EAAE,EAAE,EAAE,GAAG,EAAE;IAUxB;;;;OAIG;IACH,MAAM,CAAC,MAAM,CAAC,IAAI,GAAE;QAAE,WAAW,CAAC,EAAE,OAAO,CAAC;QAAC,MAAM,CAAC,EAAE,MAAM,GAAG,MAAM,CAAA;KAAO,GAAG,EAAE;IAUjF,oGAAoG;IACvF,aAAa;CAW3B;AAED;;GAEG;AACH,qBAAa,OAAQ,SAAQ,KAAK,CAAC,EAAE,CAAC;IACpC,MAAM,CAAC,UAAU,CAAC,MAAM,EAAE,MAAM,GAAG,YAAY,GAAG,OAAO;IAWlD,QAAQ,IAAI,MAAM;CAG1B"}
|
package/dest/tx/tx.js
CHANGED
|
@@ -7,7 +7,7 @@ import { PrivateKernelTailCircuitPublicInputs } from '../kernel/private_kernel_t
|
|
|
7
7
|
import { ContractClassLog, ContractClassLogFields } from '../logs/contract_class_log.js';
|
|
8
8
|
import { Gossipable } from '../p2p/gossipable.js';
|
|
9
9
|
import { TopicType } from '../p2p/topic_type.js';
|
|
10
|
-
import {
|
|
10
|
+
import { ChonkProof } from '../proofs/chonk_proof.js';
|
|
11
11
|
import { HashedValues } from './hashed_values.js';
|
|
12
12
|
import { PublicCallRequestWithCalldata } from './public_call_request_with_calldata.js';
|
|
13
13
|
import { TxHash } from './tx_hash.js';
|
|
@@ -16,7 +16,7 @@ import { TxHash } from './tx_hash.js';
|
|
|
16
16
|
*/ export class Tx extends Gossipable {
|
|
17
17
|
txHash;
|
|
18
18
|
data;
|
|
19
|
-
|
|
19
|
+
chonkProof;
|
|
20
20
|
contractClassLogFields;
|
|
21
21
|
publicFunctionCalldata;
|
|
22
22
|
static p2pTopic = TopicType.tx;
|
|
@@ -25,15 +25,14 @@ import { TxHash } from './tx_hash.js';
|
|
|
25
25
|
* Output of the private kernel circuit for this tx.
|
|
26
26
|
*/ data, /**
|
|
27
27
|
* Proof from the private kernel circuit.
|
|
28
|
-
|
|
29
|
-
*/ clientIvcProof, /**
|
|
28
|
+
*/ chonkProof, /**
|
|
30
29
|
* Contract class log fields emitted from the tx.
|
|
31
30
|
* Their order should match the order of the log hashes returned from `this.data.getNonEmptyContractClassLogsHashes`.
|
|
32
31
|
* It's checked in data_validator.ts
|
|
33
32
|
*/ contractClassLogFields, /**
|
|
34
33
|
* An array of calldata for the enqueued public function calls and the teardown function call.
|
|
35
34
|
*/ publicFunctionCalldata){
|
|
36
|
-
super(), this.txHash = txHash, this.data = data, this.
|
|
35
|
+
super(), this.txHash = txHash, this.data = data, this.chonkProof = chonkProof, this.contractClassLogFields = contractClassLogFields, this.publicFunctionCalldata = publicFunctionCalldata;
|
|
37
36
|
}
|
|
38
37
|
// Gossipable method
|
|
39
38
|
generateP2PMessageIdentifier() {
|
|
@@ -78,7 +77,7 @@ import { TxHash } from './tx_hash.js';
|
|
|
78
77
|
* @returns An instance of Tx.
|
|
79
78
|
*/ static fromBuffer(buffer) {
|
|
80
79
|
const reader = BufferReader.asReader(buffer);
|
|
81
|
-
return new Tx(reader.readObject(TxHash), reader.readObject(PrivateKernelTailCircuitPublicInputs), reader.readObject(
|
|
80
|
+
return new Tx(reader.readObject(TxHash), reader.readObject(PrivateKernelTailCircuitPublicInputs), reader.readObject(ChonkProof), reader.readVectorUint8Prefix(ContractClassLogFields), reader.readVectorUint8Prefix(HashedValues));
|
|
82
81
|
}
|
|
83
82
|
/**
|
|
84
83
|
* Serializes the Tx object into a Buffer.
|
|
@@ -87,7 +86,7 @@ import { TxHash } from './tx_hash.js';
|
|
|
87
86
|
return serializeToBuffer([
|
|
88
87
|
this.txHash,
|
|
89
88
|
this.data,
|
|
90
|
-
this.
|
|
89
|
+
this.chonkProof,
|
|
91
90
|
serializeArrayOfBufferableToVector(this.contractClassLogFields, 1),
|
|
92
91
|
serializeArrayOfBufferableToVector(this.publicFunctionCalldata, 1)
|
|
93
92
|
]);
|
|
@@ -95,7 +94,7 @@ import { TxHash } from './tx_hash.js';
|
|
|
95
94
|
static get schema() {
|
|
96
95
|
return z.object({
|
|
97
96
|
data: PrivateKernelTailCircuitPublicInputs.schema,
|
|
98
|
-
|
|
97
|
+
chonkProof: ChonkProof.schema,
|
|
99
98
|
contractClassLogFields: z.array(ContractClassLogFields.schema),
|
|
100
99
|
publicFunctionCalldata: z.array(HashedValues.schema)
|
|
101
100
|
}).transform(Tx.create);
|
|
@@ -112,7 +111,15 @@ import { TxHash } from './tx_hash.js';
|
|
|
112
111
|
});
|
|
113
112
|
}
|
|
114
113
|
static from(fields) {
|
|
115
|
-
return new Tx(fields.txHash, fields.data, fields.
|
|
114
|
+
return new Tx(fields.txHash, fields.data, fields.chonkProof, fields.contractClassLogFields, fields.publicFunctionCalldata);
|
|
115
|
+
}
|
|
116
|
+
/**
|
|
117
|
+
* Validates that the tx hash matches the computed hash from the tx data.
|
|
118
|
+
* This should be called when deserializing a tx from an untrusted source.
|
|
119
|
+
* @returns true if the hash is valid, false otherwise
|
|
120
|
+
*/ async validateTxHash() {
|
|
121
|
+
const expectedHash = await Tx.computeTxHash(this);
|
|
122
|
+
return this.txHash.equals(expectedHash);
|
|
116
123
|
}
|
|
117
124
|
/**
|
|
118
125
|
* Gets public logs emitted by this tx.
|
|
@@ -149,14 +156,6 @@ import { TxHash } from './tx_hash.js';
|
|
|
149
156
|
*/ getTxHash() {
|
|
150
157
|
return this.txHash;
|
|
151
158
|
}
|
|
152
|
-
/**
|
|
153
|
-
* Allows setting the hash of the Tx.
|
|
154
|
-
* Use this when you want to skip computing it from the original data.
|
|
155
|
-
* Don't set a Tx hash received from an untrusted source.
|
|
156
|
-
* @param hash - The hash to set.
|
|
157
|
-
*/ setTxHash(_hash) {
|
|
158
|
-
return this;
|
|
159
|
-
}
|
|
160
159
|
getCalldataMap() {
|
|
161
160
|
if (!this.calldataMap) {
|
|
162
161
|
const calldataMap = new Map();
|
|
@@ -173,14 +172,14 @@ import { TxHash } from './tx_hash.js';
|
|
|
173
172
|
privateLogCount: this.data.getNonEmptyPrivateLogs().length,
|
|
174
173
|
classPublishedCount: this.data.getNonEmptyContractClassLogsHashes().length,
|
|
175
174
|
contractClassLogSize: this.data.getEmittedContractClassLogsLength(),
|
|
176
|
-
proofSize: this.
|
|
175
|
+
proofSize: this.chonkProof.fields.length,
|
|
177
176
|
size: this.toBuffer().length,
|
|
178
177
|
feePaymentMethod: // needsSetup? then we pay through a fee payment contract
|
|
179
178
|
this.data.forPublic?.needsSetup ? 'fpc' : 'fee_juice'
|
|
180
179
|
};
|
|
181
180
|
}
|
|
182
181
|
getSize() {
|
|
183
|
-
return this.data.getSize() + this.
|
|
182
|
+
return this.data.getSize() + this.chonkProof.fields.length * Fr.SIZE_IN_BYTES + arraySerializedSizeOfNonEmpty(this.contractClassLogFields) + this.publicFunctionCalldata.reduce((accum, cd)=>accum + cd.getSize(), 0);
|
|
184
183
|
}
|
|
185
184
|
/**
|
|
186
185
|
* Estimates the tx size based on its private effects. Note that the actual size of the tx
|
|
@@ -194,10 +193,10 @@ import { TxHash } from './tx_hash.js';
|
|
|
194
193
|
* @returns The cloned transaction.
|
|
195
194
|
*/ static clone(tx) {
|
|
196
195
|
const publicInputs = PrivateKernelTailCircuitPublicInputs.fromBuffer(tx.data.toBuffer());
|
|
197
|
-
const
|
|
196
|
+
const chonkProof = ChonkProof.fromBuffer(tx.chonkProof.toBuffer());
|
|
198
197
|
const contractClassLogFields = tx.contractClassLogFields.map((p)=>p.clone());
|
|
199
198
|
const publicFunctionCalldata = tx.publicFunctionCalldata.map((cd)=>HashedValues.fromBuffer(cd.toBuffer()));
|
|
200
|
-
const clonedTx = new Tx(tx.txHash, publicInputs,
|
|
199
|
+
const clonedTx = new Tx(tx.txHash, publicInputs, chonkProof, contractClassLogFields, publicFunctionCalldata);
|
|
201
200
|
return clonedTx;
|
|
202
201
|
}
|
|
203
202
|
/**
|
|
@@ -208,7 +207,7 @@ import { TxHash } from './tx_hash.js';
|
|
|
208
207
|
return Tx.from({
|
|
209
208
|
txHash: (typeof args.txHash === 'string' ? TxHash.fromString(args.txHash) : args.txHash) ?? TxHash.random(),
|
|
210
209
|
data: PrivateKernelTailCircuitPublicInputs.emptyWithNullifier(),
|
|
211
|
-
|
|
210
|
+
chonkProof: args.randomProof ? ChonkProof.random() : ChonkProof.empty(),
|
|
212
211
|
contractClassLogFields: [
|
|
213
212
|
ContractClassLogFields.random()
|
|
214
213
|
],
|
|
@@ -4,48 +4,16 @@ import type { FieldsOf } from '@aztec/foundation/types';
|
|
|
4
4
|
import { BlockHeader } from './block_header.js';
|
|
5
5
|
import { TxContext } from './tx_context.js';
|
|
6
6
|
/**
|
|
7
|
-
*
|
|
7
|
+
* Version of `PrivateTxConstantData` exposed by the tail circuits
|
|
8
|
+
* It compresses the protocol contracts list to a hash to minimize the number of public inputs.
|
|
9
|
+
* Refer to `PrivateTxConstantData` for more details.
|
|
8
10
|
*/
|
|
9
11
|
export declare class TxConstantData {
|
|
10
|
-
|
|
11
|
-
historicalHeader: BlockHeader;
|
|
12
|
-
/**
|
|
13
|
-
* Context of the transaction.
|
|
14
|
-
*
|
|
15
|
-
* Note: `chainId` and `version` in txContext are not redundant to the values in
|
|
16
|
-
* self.historical_header.global_variables because they can be different in case of a protocol upgrade. In such
|
|
17
|
-
* a situation we could be using header from a block before the upgrade took place but be using the updated
|
|
18
|
-
* protocol to execute and prove the transaction.
|
|
19
|
-
*/
|
|
12
|
+
anchorBlockHeader: BlockHeader;
|
|
20
13
|
txContext: TxContext;
|
|
21
|
-
/**
|
|
22
|
-
* Root of the vk tree for the protocol circuits.
|
|
23
|
-
*/
|
|
24
14
|
vkTreeRoot: Fr;
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
*/
|
|
28
|
-
protocolContractTreeRoot: Fr;
|
|
29
|
-
constructor(
|
|
30
|
-
/** Header of a block whose state is used during execution (not the block the transaction is included in). */
|
|
31
|
-
historicalHeader: BlockHeader,
|
|
32
|
-
/**
|
|
33
|
-
* Context of the transaction.
|
|
34
|
-
*
|
|
35
|
-
* Note: `chainId` and `version` in txContext are not redundant to the values in
|
|
36
|
-
* self.historical_header.global_variables because they can be different in case of a protocol upgrade. In such
|
|
37
|
-
* a situation we could be using header from a block before the upgrade took place but be using the updated
|
|
38
|
-
* protocol to execute and prove the transaction.
|
|
39
|
-
*/
|
|
40
|
-
txContext: TxContext,
|
|
41
|
-
/**
|
|
42
|
-
* Root of the vk tree for the protocol circuits.
|
|
43
|
-
*/
|
|
44
|
-
vkTreeRoot: Fr,
|
|
45
|
-
/**
|
|
46
|
-
* Root of the tree for the protocol contracts.
|
|
47
|
-
*/
|
|
48
|
-
protocolContractTreeRoot: Fr);
|
|
15
|
+
protocolContractsHash: Fr;
|
|
16
|
+
constructor(anchorBlockHeader: BlockHeader, txContext: TxContext, vkTreeRoot: Fr, protocolContractsHash: Fr);
|
|
49
17
|
static from(fields: FieldsOf<TxConstantData>): TxConstantData;
|
|
50
18
|
static getFields(fields: FieldsOf<TxConstantData>): readonly [BlockHeader, TxContext, Fr, Fr];
|
|
51
19
|
static fromFields(fields: Fr[] | FieldReader): TxConstantData;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tx_constant_data.d.ts","sourceRoot":"","sources":["../../src/tx/tx_constant_data.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,EAAE,EAAE,MAAM,0BAA0B,CAAC;AAC9C,OAAO,EAAE,YAAY,EAAE,WAAW,EAAwC,MAAM,6BAA6B,CAAC;AAC9G,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,yBAAyB,CAAC;AAExD,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAChD,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAE5C
|
|
1
|
+
{"version":3,"file":"tx_constant_data.d.ts","sourceRoot":"","sources":["../../src/tx/tx_constant_data.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,EAAE,EAAE,MAAM,0BAA0B,CAAC;AAC9C,OAAO,EAAE,YAAY,EAAE,WAAW,EAAwC,MAAM,6BAA6B,CAAC;AAC9G,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,yBAAyB,CAAC;AAExD,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAChD,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAE5C;;;;GAIG;AACH,qBAAa,cAAc;IAEhB,iBAAiB,EAAE,WAAW;IAC9B,SAAS,EAAE,SAAS;IACpB,UAAU,EAAE,EAAE;IACd,qBAAqB,EAAE,EAAE;gBAHzB,iBAAiB,EAAE,WAAW,EAC9B,SAAS,EAAE,SAAS,EACpB,UAAU,EAAE,EAAE,EACd,qBAAqB,EAAE,EAAE;IAGlC,MAAM,CAAC,IAAI,CAAC,MAAM,EAAE,QAAQ,CAAC,cAAc,CAAC;IAI5C,MAAM,CAAC,SAAS,CAAC,MAAM,EAAE,QAAQ,CAAC,cAAc,CAAC;IAIjD,MAAM,CAAC,UAAU,CAAC,MAAM,EAAE,EAAE,EAAE,GAAG,WAAW,GAAG,cAAc;IAU7D,QAAQ,IAAI,EAAE,EAAE;IAUhB,MAAM,CAAC,UAAU,CAAC,MAAM,EAAE,MAAM,GAAG,YAAY,GAAG,cAAc;IAUhE,QAAQ;IAIR,MAAM,CAAC,KAAK;IAIZ,OAAO;IASP,KAAK,IAAI,cAAc;CAGxB"}
|
|
@@ -4,38 +4,29 @@ import { BufferReader, FieldReader, serializeToBuffer, serializeToFields } from
|
|
|
4
4
|
import { BlockHeader } from './block_header.js';
|
|
5
5
|
import { TxContext } from './tx_context.js';
|
|
6
6
|
/**
|
|
7
|
-
*
|
|
7
|
+
* Version of `PrivateTxConstantData` exposed by the tail circuits
|
|
8
|
+
* It compresses the protocol contracts list to a hash to minimize the number of public inputs.
|
|
9
|
+
* Refer to `PrivateTxConstantData` for more details.
|
|
8
10
|
*/ export class TxConstantData {
|
|
9
|
-
|
|
11
|
+
anchorBlockHeader;
|
|
10
12
|
txContext;
|
|
11
13
|
vkTreeRoot;
|
|
12
|
-
|
|
13
|
-
constructor(
|
|
14
|
-
|
|
15
|
-
*
|
|
16
|
-
* Note: `chainId` and `version` in txContext are not redundant to the values in
|
|
17
|
-
* self.historical_header.global_variables because they can be different in case of a protocol upgrade. In such
|
|
18
|
-
* a situation we could be using header from a block before the upgrade took place but be using the updated
|
|
19
|
-
* protocol to execute and prove the transaction.
|
|
20
|
-
*/ txContext, /**
|
|
21
|
-
* Root of the vk tree for the protocol circuits.
|
|
22
|
-
*/ vkTreeRoot, /**
|
|
23
|
-
* Root of the tree for the protocol contracts.
|
|
24
|
-
*/ protocolContractTreeRoot){
|
|
25
|
-
this.historicalHeader = historicalHeader;
|
|
14
|
+
protocolContractsHash;
|
|
15
|
+
constructor(anchorBlockHeader, txContext, vkTreeRoot, protocolContractsHash){
|
|
16
|
+
this.anchorBlockHeader = anchorBlockHeader;
|
|
26
17
|
this.txContext = txContext;
|
|
27
18
|
this.vkTreeRoot = vkTreeRoot;
|
|
28
|
-
this.
|
|
19
|
+
this.protocolContractsHash = protocolContractsHash;
|
|
29
20
|
}
|
|
30
21
|
static from(fields) {
|
|
31
22
|
return new TxConstantData(...TxConstantData.getFields(fields));
|
|
32
23
|
}
|
|
33
24
|
static getFields(fields) {
|
|
34
25
|
return [
|
|
35
|
-
fields.
|
|
26
|
+
fields.anchorBlockHeader,
|
|
36
27
|
fields.txContext,
|
|
37
28
|
fields.vkTreeRoot,
|
|
38
|
-
fields.
|
|
29
|
+
fields.protocolContractsHash
|
|
39
30
|
];
|
|
40
31
|
}
|
|
41
32
|
static fromFields(fields) {
|
|
@@ -60,7 +51,7 @@ import { TxContext } from './tx_context.js';
|
|
|
60
51
|
return new TxConstantData(BlockHeader.empty(), TxContext.empty(), Fr.ZERO, Fr.ZERO);
|
|
61
52
|
}
|
|
62
53
|
getSize() {
|
|
63
|
-
return this.
|
|
54
|
+
return this.anchorBlockHeader.getSize() + this.txContext.getSize() + this.vkTreeRoot.size + this.protocolContractsHash.size;
|
|
64
55
|
}
|
|
65
56
|
clone() {
|
|
66
57
|
return TxConstantData.fromBuffer(this.toBuffer());
|
package/dest/tx/tx_effect.d.ts
CHANGED
|
@@ -9,9 +9,6 @@ import { ContractClassLog } from '../logs/contract_class_log.js';
|
|
|
9
9
|
import { PrivateLog } from '../logs/private_log.js';
|
|
10
10
|
import { PublicLog } from '../logs/public_log.js';
|
|
11
11
|
import { TxHash } from './tx_hash.js';
|
|
12
|
-
export declare const TX_START_PREFIX = 8392562855083340404n;
|
|
13
|
-
export declare const TX_START_PREFIX_BYTES_LENGTH: number;
|
|
14
|
-
export declare const TX_EFFECT_PREFIX_BYTE_LENGTH: number;
|
|
15
12
|
export declare class TxEffect {
|
|
16
13
|
/**
|
|
17
14
|
* Whether the transaction reverted during public app logic.
|
|
@@ -113,45 +110,15 @@ export declare class TxEffect {
|
|
|
113
110
|
txOutHash(): Buffer;
|
|
114
111
|
static random(numPublicCallsPerTx?: number, numPublicLogsPerCall?: number, maxEffects?: number | undefined): Promise<TxEffect>;
|
|
115
112
|
static empty(): TxEffect;
|
|
116
|
-
isEmpty(): boolean;
|
|
117
113
|
/** Returns a hex representation of the TxEffect object. */
|
|
118
114
|
toString(): `0x${string}`;
|
|
119
115
|
/**
|
|
120
|
-
* Returns
|
|
121
|
-
*
|
|
122
|
-
*/
|
|
123
|
-
private toPrefix;
|
|
124
|
-
/**
|
|
125
|
-
* Decodes the prefix as used in a blob to tx effect type and length.
|
|
126
|
-
*/
|
|
127
|
-
static fromPrefix(prefix: Fr): {
|
|
128
|
-
type: number;
|
|
129
|
-
length: number;
|
|
130
|
-
};
|
|
131
|
-
/**
|
|
132
|
-
* Encodes the first field of a tx effect as used in a blob:
|
|
133
|
-
* TX_START_PREFIX | 0 | txlen[0] txlen[1] | 0 | REVERT_CODE_PREFIX | 0 | revert_code
|
|
134
|
-
*/
|
|
135
|
-
private encodeFirstField;
|
|
136
|
-
/**
|
|
137
|
-
* Decodes the first field of a tx effect as used in a blob:
|
|
138
|
-
* TX_START_PREFIX | 0 | txlen[0] txlen[1] | 0 | REVERT_CODE_PREFIX | 0 | revert_code
|
|
139
|
-
* Assumes that isFirstField has been called already.
|
|
140
|
-
*/
|
|
141
|
-
static decodeFirstField(field: Fr): {
|
|
142
|
-
length: number;
|
|
143
|
-
revertCode: number;
|
|
144
|
-
};
|
|
145
|
-
/**
|
|
146
|
-
* Determines whether a field is the first field of a tx effect
|
|
147
|
-
*/
|
|
148
|
-
static isFirstField(field: Fr): boolean;
|
|
149
|
-
/**
|
|
150
|
-
* Returns a flat packed array of prefixed fields of all tx effects, used for blobs.
|
|
116
|
+
* Returns a flat packed array of fields of all tx effects, to be appended to blobs.
|
|
117
|
+
* Must match the implementation in noir-protocol-circuits/crates/rollup-lib/src/tx_base/components/tx_blob_data.nr
|
|
151
118
|
*/
|
|
152
119
|
toBlobFields(): Fr[];
|
|
153
120
|
/**
|
|
154
|
-
* Decodes a flat packed array of
|
|
121
|
+
* Decodes a flat packed array of fields to TxEffect.
|
|
155
122
|
*/
|
|
156
123
|
static fromBlobFields(fields: Fr[] | FieldReader): TxEffect;
|
|
157
124
|
static from(fields: FieldsOf<TxEffect>): TxEffect;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tx_effect.d.ts","sourceRoot":"","sources":["../../src/tx/tx_effect.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"tx_effect.d.ts","sourceRoot":"","sources":["../../src/tx/tx_effect.ts"],"names":[],"mappings":"AASA,OAAO,EAAE,KAAK,QAAQ,EAA6B,MAAM,yBAAyB,CAAC;AACnF,OAAO,EAAE,EAAE,EAAE,MAAM,0BAA0B,CAAC;AAC9C,OAAO,EAAE,KAAK,MAAM,EAAW,MAAM,2BAA2B,CAAC;AACjE,OAAO,EACL,YAAY,EACZ,WAAW,EAGZ,MAAM,6BAA6B,CAAC;AAIrC,OAAO,EAAE,OAAO,EAAE,MAAM,MAAM,CAAC;AAG/B,OAAO,EAAE,eAAe,EAAE,MAAM,6BAA6B,CAAC;AAC9D,OAAO,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAC;AACnD,OAAO,EAAE,gBAAgB,EAAE,MAAM,+BAA+B,CAAC;AACjE,OAAO,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AACpD,OAAO,EAAkB,SAAS,EAAE,MAAM,uBAAuB,CAAC;AAClE,OAAO,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;AAEtC,qBAAa,QAAQ;IAEjB;;OAEG;IACI,UAAU,EAAE,UAAU;IAC7B;;OAEG;IACI,MAAM,EAAE,MAAM;IACrB;;OAEG;IACI,cAAc,EAAE,EAAE;IACzB;;OAEG;IACI,UAAU,EAAE,EAAE,EAAE;IACvB;;OAEG;IACI,UAAU,EAAE,EAAE,EAAE;IACvB;;;OAGG;IACI,UAAU,EAAE,EAAE,EAAE;IACvB;;OAEG;IACI,gBAAgB,EAAE,eAAe,EAAE;IAC1C;;OAEG;IACI,WAAW,EAAE,UAAU,EAAE;IAChC;;OAEG;IACI,UAAU,EAAE,SAAS,EAAE;IAC9B;;OAEG;IACI,iBAAiB,EAAE,gBAAgB,EAAE;;IAxC5C;;OAEG;IACI,UAAU,EAAE,UAAU;IAC7B;;OAEG;IACI,MAAM,EAAE,MAAM;IACrB;;OAEG;IACI,cAAc,EAAE,EAAE;IACzB;;OAEG;IACI,UAAU,EAAE,EAAE,EAAE;IACvB;;OAEG;IACI,UAAU,EAAE,EAAE,EAAE;IACvB;;;OAGG;IACI,UAAU,EAAE,EAAE,EAAE;IACvB;;OAEG;IACI,gBAAgB,EAAE,eAAe,EAAE;IAC1C;;OAEG;IACI,WAAW,EAAE,UAAU,EAAE;IAChC;;OAEG;IACI,UAAU,EAAE,SAAS,EAAE;IAC9B;;OAEG;IACI,iBAAiB,EAAE,gBAAgB,EAAE;IAoD9C,QAAQ,IAAI,MAAM;IAelB,MAAM,CAAC,KAAK,EAAE,QAAQ,GAAG,OAAO;IAsBhC,yEAAyE;IACzE,SAAS;IAIT;;;;OAIG;IACH,MAAM,CAAC,UAAU,CAAC,MAAM,EAAE,MAAM,GAAG,YAAY,GAAG,QAAQ;IAiB1D;;;OAGG;IACH,SAAS,IAAI,MAAM;WASN,MAAM,CACjB,mBAAmB,SAAI,EACvB,oBAAoB,SAAI,EACxB,UAAU,GAAE,MAAM,GAAG,SAAqB,GACzC,OAAO,CAAC,QAAQ,CAAC;IA6BpB,MAAM,CAAC,KAAK,IAAI,QAAQ;IAIxB,2DAA2D;IAC3D,QAAQ;IAIR;;;OAGG;IACH,YAAY,IAAI,EAAE,EAAE;IAgCpB;;OAEG;IACH,MAAM,CAAC,cAAc,CAAC,MAAM,EAAE,EAAE,EAAE,GAAG,WAAW;IA0ChD,MAAM,CAAC,IAAI,CAAC,MAAM,EAAE,QAAQ,CAAC,QAAQ,CAAC;IAetC,MAAM,KAAK,MAAM,IAAI,MAAM,CAAC,QAAQ,CAAC,CAepC;IAED,CAAC,OAAO,CAAC,MAAM,CAAC;IAsBhB;;;;OAIG;IACH,MAAM,CAAC,UAAU,CAAC,GAAG,EAAE,MAAM;CAG9B"}
|