@aztec/stdlib 3.0.0-canary.a9708bd → 3.0.0-devnet.3
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 +30 -428
- 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 +17 -1
- 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 +26 -9
- 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_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 +1 -1
- 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 +1 -21
- 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 +64 -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/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 +2 -4
- package/dest/p2p/gossipable.d.ts.map +1 -1
- package/dest/p2p/gossipable.js +5 -14
- 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/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/client_ivc_proof.d.ts +17 -7
- package/dest/proofs/client_ivc_proof.d.ts.map +1 -1
- package/dest/proofs/client_ivc_proof.js +78 -19
- package/dest/proofs/index.d.ts +1 -0
- package/dest/proofs/index.d.ts.map +1 -1
- package/dest/proofs/index.js +1 -0
- 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_tube_private_inputs.d.ts +21 -0
- package/dest/rollup/public_tube_private_inputs.d.ts.map +1 -0
- package/dest/rollup/public_tube_private_inputs.js +42 -0
- package/dest/rollup/public_tube_public_inputs.d.ts +20 -0
- package/dest/rollup/public_tube_public_inputs.d.ts.map +1 -0
- package/dest/rollup/public_tube_public_inputs.js +41 -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 +1 -1
- package/dest/stats/stats.d.ts.map +1 -1
- package/dest/tests/factories.d.ts +42 -74
- package/dest/tests/factories.d.ts.map +1 -1
- package/dest/tests/factories.js +144 -167
- package/dest/tests/mocks.d.ts +14 -8
- package/dest/tests/mocks.d.ts.map +1 -1
- package/dest/tests/mocks.js +53 -31
- 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 +0 -1
- package/dest/tx/processed_tx.d.ts.map +1 -1
- package/dest/tx/processed_tx.js +1 -6
- 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/simulated_tx.d.ts +3 -3
- 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 +6 -9
- package/dest/tx/tx.d.ts.map +1 -1
- package/dest/tx/tx.js +10 -11
- 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 +33 -51
- 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 +46 -1
- 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 +35 -11
- 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 +215 -134
- package/src/interfaces/server.ts +1 -0
- package/src/interfaces/server_circuit_prover.ts +87 -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_init_circuit_private_inputs.ts +5 -4
- package/src/kernel/private_kernel_prover_output.ts +1 -1
- 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 +1 -26
- 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 +78 -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/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 +6 -16
- package/src/p2p/signature_utils.ts +1 -0
- 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/client_ivc_proof.ts +86 -20
- package/src/proofs/index.ts +1 -0
- 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_tube_private_inputs.ts +53 -0
- package/src/rollup/public_tube_public_inputs.ts +52 -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 +19 -13
- package/src/tests/factories.ts +217 -275
- package/src/tests/mocks.ts +87 -57
- 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 +1 -7
- package/src/tx/profiling.ts +0 -2
- package/src/tx/protocol_contracts.ts +70 -0
- package/src/tx/state_reference.ts +5 -1
- package/src/tx/tx.ts +12 -13
- 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/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/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
package/src/rollup/{block_root_or_block_merge_public_inputs.ts → checkpoint_rollup_public_inputs.ts}
RENAMED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { BlobAccumulator, FinalBlobBatchingChallenges } from '@aztec/blob-lib/types';
|
|
2
2
|
import { AZTEC_MAX_EPOCH_DURATION } from '@aztec/constants';
|
|
3
3
|
import { EthAddress } from '@aztec/foundation/eth-address';
|
|
4
4
|
import { Fr } from '@aztec/foundation/fields';
|
|
@@ -8,106 +8,80 @@ import { bufferToHex, hexToBuffer } from '@aztec/foundation/string';
|
|
|
8
8
|
import type { FieldsOf } from '@aztec/foundation/types';
|
|
9
9
|
|
|
10
10
|
import { AppendOnlyTreeSnapshot } from '../trees/append_only_tree_snapshot.js';
|
|
11
|
-
import { GlobalVariables } from '../tx/global_variables.js';
|
|
12
11
|
import { EpochConstantData } from './epoch_constant_data.js';
|
|
13
12
|
|
|
14
13
|
/**
|
|
15
|
-
* Output of the
|
|
14
|
+
* Output of the checkpoint root and checkpoint merge rollup circuits.
|
|
16
15
|
*/
|
|
17
|
-
export class
|
|
16
|
+
export class CheckpointRollupPublicInputs {
|
|
18
17
|
constructor(
|
|
19
18
|
/**
|
|
20
19
|
* Constants for the entire epoch.
|
|
21
20
|
*/
|
|
22
21
|
public constants: EpochConstantData,
|
|
23
22
|
/**
|
|
24
|
-
* Archive tree immediately before this
|
|
23
|
+
* Archive tree immediately before this checkpoint range.
|
|
25
24
|
*/
|
|
26
25
|
public previousArchive: AppendOnlyTreeSnapshot,
|
|
27
26
|
/**
|
|
28
|
-
* Archive tree after adding this
|
|
27
|
+
* Archive tree after adding this checkpoint range.
|
|
29
28
|
*/
|
|
30
29
|
public newArchive: AppendOnlyTreeSnapshot,
|
|
31
30
|
/**
|
|
32
|
-
*
|
|
31
|
+
* The hashes of the headers of the constituent checkpoints.
|
|
33
32
|
*/
|
|
34
|
-
public
|
|
33
|
+
public checkpointHeaderHashes: Tuple<Fr, typeof AZTEC_MAX_EPOCH_DURATION>,
|
|
35
34
|
/**
|
|
36
|
-
*
|
|
35
|
+
* The summed transaction fees and recipients of the constituent checkpoints.
|
|
37
36
|
*/
|
|
38
|
-
public
|
|
39
|
-
/**
|
|
40
|
-
* SHA256 hash of L2 to L1 messages. Used to make public inputs constant-sized (to then be opened on-chain).
|
|
41
|
-
* Note: Truncated to 31 bytes to fit in Fr.
|
|
42
|
-
*/
|
|
43
|
-
public outHash: Fr,
|
|
37
|
+
public fees: Tuple<FeeRecipient, typeof AZTEC_MAX_EPOCH_DURATION>,
|
|
44
38
|
/**
|
|
45
|
-
*
|
|
39
|
+
* Accumulated opening proofs for all blobs before this checkpoint range.
|
|
46
40
|
*/
|
|
47
|
-
public
|
|
41
|
+
public startBlobAccumulator: BlobAccumulator,
|
|
48
42
|
/**
|
|
49
|
-
*
|
|
43
|
+
* Accumulated opening proofs for all blobs after applying this checkpoint range.
|
|
50
44
|
*/
|
|
51
|
-
public
|
|
45
|
+
public endBlobAccumulator: BlobAccumulator,
|
|
52
46
|
/**
|
|
53
|
-
*
|
|
47
|
+
* Final values z and gamma, shared across the epoch.
|
|
54
48
|
*/
|
|
55
|
-
public
|
|
49
|
+
public finalBlobChallenges: FinalBlobBatchingChallenges,
|
|
56
50
|
) {}
|
|
57
51
|
|
|
58
|
-
|
|
59
|
-
* Deserializes from a buffer or reader.
|
|
60
|
-
* @param buffer - Buffer or reader to read from.
|
|
61
|
-
* @returns The deserialized public inputs.
|
|
62
|
-
*/
|
|
63
|
-
static fromBuffer(buffer: Buffer | BufferReader): BlockRootOrBlockMergePublicInputs {
|
|
52
|
+
static fromBuffer(buffer: Buffer | BufferReader) {
|
|
64
53
|
const reader = BufferReader.asReader(buffer);
|
|
65
|
-
return new
|
|
54
|
+
return new CheckpointRollupPublicInputs(
|
|
66
55
|
reader.readObject(EpochConstantData),
|
|
67
56
|
reader.readObject(AppendOnlyTreeSnapshot),
|
|
68
57
|
reader.readObject(AppendOnlyTreeSnapshot),
|
|
69
|
-
reader.readObject(GlobalVariables),
|
|
70
|
-
reader.readObject(GlobalVariables),
|
|
71
|
-
Fr.fromBuffer(reader),
|
|
72
58
|
reader.readArray(AZTEC_MAX_EPOCH_DURATION, Fr),
|
|
73
59
|
reader.readArray(AZTEC_MAX_EPOCH_DURATION, FeeRecipient),
|
|
74
|
-
reader.readObject(
|
|
60
|
+
reader.readObject(BlobAccumulator),
|
|
61
|
+
reader.readObject(BlobAccumulator),
|
|
62
|
+
reader.readObject(FinalBlobBatchingChallenges),
|
|
75
63
|
);
|
|
76
64
|
}
|
|
77
65
|
|
|
78
|
-
/**
|
|
79
|
-
* Serialize this as a buffer.
|
|
80
|
-
* @returns The buffer.
|
|
81
|
-
*/
|
|
82
66
|
toBuffer() {
|
|
83
67
|
return serializeToBuffer(
|
|
84
68
|
this.constants,
|
|
85
69
|
this.previousArchive,
|
|
86
70
|
this.newArchive,
|
|
87
|
-
this.
|
|
88
|
-
this.endGlobalVariables,
|
|
89
|
-
this.outHash,
|
|
90
|
-
this.proposedBlockHeaderHashes,
|
|
71
|
+
this.checkpointHeaderHashes,
|
|
91
72
|
this.fees,
|
|
92
|
-
this.
|
|
73
|
+
this.startBlobAccumulator,
|
|
74
|
+
this.endBlobAccumulator,
|
|
75
|
+
this.finalBlobChallenges,
|
|
93
76
|
);
|
|
94
77
|
}
|
|
95
78
|
|
|
96
|
-
/**
|
|
97
|
-
* Serialize this as a hex string.
|
|
98
|
-
* @returns - The hex string.
|
|
99
|
-
*/
|
|
100
79
|
toString() {
|
|
101
80
|
return bufferToHex(this.toBuffer());
|
|
102
81
|
}
|
|
103
82
|
|
|
104
|
-
/**
|
|
105
|
-
* Deserializes from a hex string.
|
|
106
|
-
* @param str - A hex string to deserialize from.
|
|
107
|
-
* @returns A new BaseOrMergeRollupPublicInputs instance.
|
|
108
|
-
*/
|
|
109
83
|
static fromString(str: string) {
|
|
110
|
-
return
|
|
84
|
+
return CheckpointRollupPublicInputs.fromBuffer(hexToBuffer(str));
|
|
111
85
|
}
|
|
112
86
|
|
|
113
87
|
/** Returns a buffer representation for JSON serialization. */
|
|
@@ -117,7 +91,7 @@ export class BlockRootOrBlockMergePublicInputs {
|
|
|
117
91
|
|
|
118
92
|
/** Creates an instance from a hex string. */
|
|
119
93
|
static get schema() {
|
|
120
|
-
return bufferSchemaFor(
|
|
94
|
+
return bufferSchemaFor(CheckpointRollupPublicInputs);
|
|
121
95
|
}
|
|
122
96
|
}
|
|
123
97
|
|
|
@@ -144,6 +118,10 @@ export class FeeRecipient {
|
|
|
144
118
|
return serializeToFields(...FeeRecipient.getFields(this));
|
|
145
119
|
}
|
|
146
120
|
|
|
121
|
+
static empty() {
|
|
122
|
+
return new FeeRecipient(EthAddress.ZERO, Fr.ZERO);
|
|
123
|
+
}
|
|
124
|
+
|
|
147
125
|
isEmpty() {
|
|
148
126
|
return this.value.isZero() && this.recipient.isZero();
|
|
149
127
|
}
|
|
@@ -0,0 +1,218 @@
|
|
|
1
|
+
import { BlobAccumulator, FinalBlobBatchingChallenges } from '@aztec/blob-lib/types';
|
|
2
|
+
import { ARCHIVE_HEIGHT, BLOBS_PER_BLOCK, FIELDS_PER_BLOB } from '@aztec/constants';
|
|
3
|
+
import { BLS12Point, Fr } from '@aztec/foundation/fields';
|
|
4
|
+
import { bufferSchemaFor } from '@aztec/foundation/schemas';
|
|
5
|
+
import { BufferReader, type Tuple, serializeToBuffer } from '@aztec/foundation/serialize';
|
|
6
|
+
import { bufferToHex, hexToBuffer } from '@aztec/foundation/string';
|
|
7
|
+
import type { FieldsOf } from '@aztec/foundation/types';
|
|
8
|
+
|
|
9
|
+
import { ProofData, type RollupHonkProofData } from '../proofs/proof_data.js';
|
|
10
|
+
import { BlockHeader } from '../tx/block_header.js';
|
|
11
|
+
import { BlockRollupPublicInputs } from './block_rollup_public_inputs.js';
|
|
12
|
+
|
|
13
|
+
export class CheckpointRootRollupHints {
|
|
14
|
+
constructor(
|
|
15
|
+
/**
|
|
16
|
+
* The header of the previous block before this checkpoint.
|
|
17
|
+
*/
|
|
18
|
+
public previousBlockHeader: BlockHeader,
|
|
19
|
+
/**
|
|
20
|
+
* Hint for checking the hash of previous_block_header is the last leaf of the previous archive.
|
|
21
|
+
*/
|
|
22
|
+
public previousArchiveSiblingPath: Tuple<Fr, typeof ARCHIVE_HEIGHT>,
|
|
23
|
+
/**
|
|
24
|
+
* The current blob accumulation state across the epoch.
|
|
25
|
+
*/
|
|
26
|
+
public startBlobAccumulator: BlobAccumulator,
|
|
27
|
+
/**
|
|
28
|
+
* Finalized challenges z and gamma for performing blob batching. Shared value across the epoch.
|
|
29
|
+
*/
|
|
30
|
+
public finalBlobChallenges: FinalBlobBatchingChallenges,
|
|
31
|
+
/**
|
|
32
|
+
* Flat list of all tx effects which will be added to the blob.
|
|
33
|
+
* Below line gives error 'Type instantiation is excessively deep and possibly infinite. ts(2589)'
|
|
34
|
+
* Tuple<Fr, FIELDS_PER_BLOB * BLOBS_PER_BLOCK>
|
|
35
|
+
*/
|
|
36
|
+
public blobFields: Fr[],
|
|
37
|
+
/**
|
|
38
|
+
* KZG commitments representing the blob (precomputed in ts, injected to use inside circuit).
|
|
39
|
+
*/
|
|
40
|
+
public blobCommitments: Tuple<BLS12Point, typeof BLOBS_PER_BLOCK>,
|
|
41
|
+
/**
|
|
42
|
+
* The hash of eth blob hashes for this block
|
|
43
|
+
* See yarn-project/foundation/src/blob/index.ts or body.ts for calculation
|
|
44
|
+
*/
|
|
45
|
+
public blobsHash: Fr,
|
|
46
|
+
) {}
|
|
47
|
+
|
|
48
|
+
static from(fields: FieldsOf<CheckpointRootRollupHints>) {
|
|
49
|
+
return new CheckpointRootRollupHints(...CheckpointRootRollupHints.getFields(fields));
|
|
50
|
+
}
|
|
51
|
+
|
|
52
|
+
static getFields(fields: FieldsOf<CheckpointRootRollupHints>) {
|
|
53
|
+
return [
|
|
54
|
+
fields.previousBlockHeader,
|
|
55
|
+
fields.previousArchiveSiblingPath,
|
|
56
|
+
fields.startBlobAccumulator,
|
|
57
|
+
fields.finalBlobChallenges,
|
|
58
|
+
fields.blobFields,
|
|
59
|
+
fields.blobCommitments,
|
|
60
|
+
fields.blobsHash,
|
|
61
|
+
] as const;
|
|
62
|
+
}
|
|
63
|
+
|
|
64
|
+
toBuffer() {
|
|
65
|
+
return serializeToBuffer(...CheckpointRootRollupHints.getFields(this));
|
|
66
|
+
}
|
|
67
|
+
|
|
68
|
+
static fromBuffer(buffer: Buffer | BufferReader) {
|
|
69
|
+
const reader = BufferReader.asReader(buffer);
|
|
70
|
+
return new CheckpointRootRollupHints(
|
|
71
|
+
BlockHeader.fromBuffer(reader),
|
|
72
|
+
reader.readArray(ARCHIVE_HEIGHT, Fr),
|
|
73
|
+
reader.readObject(BlobAccumulator),
|
|
74
|
+
reader.readObject(FinalBlobBatchingChallenges),
|
|
75
|
+
// Below line gives error 'Type instantiation is excessively deep and possibly infinite. ts(2589)'
|
|
76
|
+
// reader.readArray(FIELDS_PER_BLOB, Fr),
|
|
77
|
+
Array.from({ length: FIELDS_PER_BLOB * BLOBS_PER_BLOCK }, () => Fr.fromBuffer(reader)),
|
|
78
|
+
reader.readArray(BLOBS_PER_BLOCK, BLS12Point),
|
|
79
|
+
Fr.fromBuffer(reader),
|
|
80
|
+
);
|
|
81
|
+
}
|
|
82
|
+
|
|
83
|
+
toString() {
|
|
84
|
+
return bufferToHex(this.toBuffer());
|
|
85
|
+
}
|
|
86
|
+
|
|
87
|
+
static fromString(str: string) {
|
|
88
|
+
return CheckpointRootRollupHints.fromBuffer(hexToBuffer(str));
|
|
89
|
+
}
|
|
90
|
+
|
|
91
|
+
toJSON() {
|
|
92
|
+
return this.toBuffer();
|
|
93
|
+
}
|
|
94
|
+
|
|
95
|
+
static get schema() {
|
|
96
|
+
return bufferSchemaFor(CheckpointRootRollupHints);
|
|
97
|
+
}
|
|
98
|
+
}
|
|
99
|
+
|
|
100
|
+
export class CheckpointRootRollupPrivateInputs {
|
|
101
|
+
constructor(
|
|
102
|
+
public previousRollups: [
|
|
103
|
+
RollupHonkProofData<BlockRollupPublicInputs>,
|
|
104
|
+
RollupHonkProofData<BlockRollupPublicInputs>,
|
|
105
|
+
],
|
|
106
|
+
public hints: CheckpointRootRollupHints,
|
|
107
|
+
) {}
|
|
108
|
+
|
|
109
|
+
static from(fields: FieldsOf<CheckpointRootRollupPrivateInputs>) {
|
|
110
|
+
return new CheckpointRootRollupPrivateInputs(...CheckpointRootRollupPrivateInputs.getFields(fields));
|
|
111
|
+
}
|
|
112
|
+
|
|
113
|
+
static getFields(fields: FieldsOf<CheckpointRootRollupPrivateInputs>) {
|
|
114
|
+
return [fields.previousRollups, fields.hints] as const;
|
|
115
|
+
}
|
|
116
|
+
|
|
117
|
+
toBuffer() {
|
|
118
|
+
return serializeToBuffer(...CheckpointRootRollupPrivateInputs.getFields(this));
|
|
119
|
+
}
|
|
120
|
+
|
|
121
|
+
static fromBuffer(buffer: Buffer | BufferReader) {
|
|
122
|
+
const reader = BufferReader.asReader(buffer);
|
|
123
|
+
return new CheckpointRootRollupPrivateInputs(
|
|
124
|
+
[ProofData.fromBuffer(reader, BlockRollupPublicInputs), ProofData.fromBuffer(reader, BlockRollupPublicInputs)],
|
|
125
|
+
CheckpointRootRollupHints.fromBuffer(reader),
|
|
126
|
+
);
|
|
127
|
+
}
|
|
128
|
+
|
|
129
|
+
toString() {
|
|
130
|
+
return bufferToHex(this.toBuffer());
|
|
131
|
+
}
|
|
132
|
+
|
|
133
|
+
static fromString(str: string) {
|
|
134
|
+
return CheckpointRootRollupPrivateInputs.fromBuffer(hexToBuffer(str));
|
|
135
|
+
}
|
|
136
|
+
|
|
137
|
+
toJSON() {
|
|
138
|
+
return this.toBuffer();
|
|
139
|
+
}
|
|
140
|
+
|
|
141
|
+
static get schema() {
|
|
142
|
+
return bufferSchemaFor(CheckpointRootRollupPrivateInputs);
|
|
143
|
+
}
|
|
144
|
+
}
|
|
145
|
+
|
|
146
|
+
export class CheckpointRootSingleBlockRollupPrivateInputs {
|
|
147
|
+
constructor(
|
|
148
|
+
public previousRollup: RollupHonkProofData<BlockRollupPublicInputs>,
|
|
149
|
+
public hints: CheckpointRootRollupHints,
|
|
150
|
+
) {}
|
|
151
|
+
|
|
152
|
+
static from(fields: FieldsOf<CheckpointRootSingleBlockRollupPrivateInputs>) {
|
|
153
|
+
return new CheckpointRootSingleBlockRollupPrivateInputs(
|
|
154
|
+
...CheckpointRootSingleBlockRollupPrivateInputs.getFields(fields),
|
|
155
|
+
);
|
|
156
|
+
}
|
|
157
|
+
|
|
158
|
+
static getFields(fields: FieldsOf<CheckpointRootSingleBlockRollupPrivateInputs>) {
|
|
159
|
+
return [fields.previousRollup, fields.hints] as const;
|
|
160
|
+
}
|
|
161
|
+
|
|
162
|
+
toBuffer() {
|
|
163
|
+
return serializeToBuffer(...CheckpointRootSingleBlockRollupPrivateInputs.getFields(this));
|
|
164
|
+
}
|
|
165
|
+
|
|
166
|
+
static fromBuffer(buffer: Buffer | BufferReader) {
|
|
167
|
+
const reader = BufferReader.asReader(buffer);
|
|
168
|
+
return new CheckpointRootSingleBlockRollupPrivateInputs(
|
|
169
|
+
ProofData.fromBuffer(reader, BlockRollupPublicInputs),
|
|
170
|
+
CheckpointRootRollupHints.fromBuffer(reader),
|
|
171
|
+
);
|
|
172
|
+
}
|
|
173
|
+
|
|
174
|
+
toString() {
|
|
175
|
+
return bufferToHex(this.toBuffer());
|
|
176
|
+
}
|
|
177
|
+
|
|
178
|
+
static fromString(str: string) {
|
|
179
|
+
return CheckpointRootSingleBlockRollupPrivateInputs.fromBuffer(hexToBuffer(str));
|
|
180
|
+
}
|
|
181
|
+
|
|
182
|
+
toJSON() {
|
|
183
|
+
return this.toBuffer();
|
|
184
|
+
}
|
|
185
|
+
|
|
186
|
+
static get schema() {
|
|
187
|
+
return bufferSchemaFor(CheckpointRootSingleBlockRollupPrivateInputs);
|
|
188
|
+
}
|
|
189
|
+
}
|
|
190
|
+
|
|
191
|
+
// Checkpoint padding circuit does not have any private inputs.
|
|
192
|
+
export class CheckpointPaddingRollupPrivateInputs {
|
|
193
|
+
constructor() {}
|
|
194
|
+
|
|
195
|
+
toBuffer() {
|
|
196
|
+
return Buffer.alloc(0);
|
|
197
|
+
}
|
|
198
|
+
|
|
199
|
+
static fromBuffer(_buffer: Buffer | BufferReader) {
|
|
200
|
+
return new CheckpointPaddingRollupPrivateInputs();
|
|
201
|
+
}
|
|
202
|
+
|
|
203
|
+
toString(): `0x${string}` {
|
|
204
|
+
return '0x';
|
|
205
|
+
}
|
|
206
|
+
|
|
207
|
+
static fromString(_str: string) {
|
|
208
|
+
return new CheckpointPaddingRollupPrivateInputs();
|
|
209
|
+
}
|
|
210
|
+
|
|
211
|
+
toJSON() {
|
|
212
|
+
return this.toBuffer();
|
|
213
|
+
}
|
|
214
|
+
|
|
215
|
+
static get schema() {
|
|
216
|
+
return bufferSchemaFor(CheckpointPaddingRollupPrivateInputs);
|
|
217
|
+
}
|
|
218
|
+
}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { Fr } from '@aztec/foundation/fields';
|
|
2
|
-
import { BufferReader, serializeToBuffer } from '@aztec/foundation/serialize';
|
|
2
|
+
import { BufferReader, serializeToBuffer, serializeToFields } from '@aztec/foundation/serialize';
|
|
3
3
|
import type { FieldsOf } from '@aztec/foundation/types';
|
|
4
4
|
|
|
5
5
|
/**
|
|
@@ -7,14 +7,22 @@ import type { FieldsOf } from '@aztec/foundation/types';
|
|
|
7
7
|
*/
|
|
8
8
|
export class EpochConstantData {
|
|
9
9
|
constructor(
|
|
10
|
+
/**
|
|
11
|
+
* ChainId of the rollup.
|
|
12
|
+
*/
|
|
13
|
+
public chainId: Fr,
|
|
14
|
+
/**
|
|
15
|
+
* Version of the rollup.
|
|
16
|
+
*/
|
|
17
|
+
public version: Fr,
|
|
10
18
|
/**
|
|
11
19
|
* Root of the verification key tree.
|
|
12
20
|
*/
|
|
13
21
|
public vkTreeRoot: Fr,
|
|
14
22
|
/**
|
|
15
|
-
*
|
|
23
|
+
* Hash of the protocol contracts list.
|
|
16
24
|
*/
|
|
17
|
-
public
|
|
25
|
+
public protocolContractsHash: Fr,
|
|
18
26
|
/**
|
|
19
27
|
* Identifier of the prover of the epoch.
|
|
20
28
|
*/
|
|
@@ -25,20 +33,30 @@ export class EpochConstantData {
|
|
|
25
33
|
return new EpochConstantData(...EpochConstantData.getFields(fields));
|
|
26
34
|
}
|
|
27
35
|
|
|
28
|
-
static
|
|
29
|
-
|
|
30
|
-
return new EpochConstantData(Fr.fromBuffer(reader), Fr.fromBuffer(reader), Fr.fromBuffer(reader));
|
|
36
|
+
static getFields(fields: FieldsOf<EpochConstantData>) {
|
|
37
|
+
return [fields.chainId, fields.version, fields.vkTreeRoot, fields.protocolContractsHash, fields.proverId] as const;
|
|
31
38
|
}
|
|
32
39
|
|
|
33
|
-
|
|
34
|
-
return
|
|
40
|
+
toFields(): Fr[] {
|
|
41
|
+
return serializeToFields(...EpochConstantData.getFields(this));
|
|
35
42
|
}
|
|
36
43
|
|
|
37
|
-
static
|
|
38
|
-
|
|
44
|
+
static fromBuffer(buffer: Buffer | BufferReader): EpochConstantData {
|
|
45
|
+
const reader = BufferReader.asReader(buffer);
|
|
46
|
+
return new EpochConstantData(
|
|
47
|
+
Fr.fromBuffer(reader),
|
|
48
|
+
Fr.fromBuffer(reader),
|
|
49
|
+
Fr.fromBuffer(reader),
|
|
50
|
+
Fr.fromBuffer(reader),
|
|
51
|
+
Fr.fromBuffer(reader),
|
|
52
|
+
);
|
|
39
53
|
}
|
|
40
54
|
|
|
41
55
|
toBuffer() {
|
|
42
56
|
return serializeToBuffer(...EpochConstantData.getFields(this));
|
|
43
57
|
}
|
|
58
|
+
|
|
59
|
+
static empty() {
|
|
60
|
+
return new EpochConstantData(Fr.ZERO, Fr.ZERO, Fr.ZERO, Fr.ZERO, Fr.ZERO);
|
|
61
|
+
}
|
|
44
62
|
}
|
package/src/rollup/index.ts
CHANGED
|
@@ -1,20 +1,21 @@
|
|
|
1
1
|
export * from './avm_proof_data.js';
|
|
2
|
-
export * from './base_or_merge_rollup_public_inputs.js';
|
|
3
2
|
export * from './base_rollup_hints.js';
|
|
4
3
|
export * from './block_constant_data.js';
|
|
5
|
-
export * from './
|
|
6
|
-
export * from './
|
|
7
|
-
export * from './
|
|
4
|
+
export * from './block_merge_rollup_private_inputs.js';
|
|
5
|
+
export * from './block_rollup_public_inputs.js';
|
|
6
|
+
export * from './block_root_rollup_private_inputs.js';
|
|
7
|
+
export * from './checkpoint_constant_data.js';
|
|
8
|
+
export * from './checkpoint_header.js';
|
|
9
|
+
export * from './checkpoint_merge_rollup_private_inputs.js';
|
|
10
|
+
export * from './checkpoint_rollup_public_inputs.js';
|
|
11
|
+
export * from './checkpoint_root_rollup_private_inputs.js';
|
|
8
12
|
export * from './epoch_constant_data.js';
|
|
9
|
-
export * from './
|
|
10
|
-
export * from './
|
|
11
|
-
export * from './
|
|
12
|
-
export * from './
|
|
13
|
-
export * from './
|
|
14
|
-
export * from './
|
|
15
|
-
export * from './
|
|
16
|
-
export * from './
|
|
17
|
-
export * from './
|
|
18
|
-
export * from './root_rollup.js';
|
|
19
|
-
export * from './state_diff_hints.js';
|
|
20
|
-
export * from './tube_inputs.js';
|
|
13
|
+
export * from './private_tx_base_rollup_private_inputs.js';
|
|
14
|
+
export * from './public_tx_base_rollup_private_inputs.js';
|
|
15
|
+
export * from './public_tube_private_inputs.js';
|
|
16
|
+
export * from './public_tube_public_inputs.js';
|
|
17
|
+
export * from './root_rollup_private_inputs.js';
|
|
18
|
+
export * from './root_rollup_public_inputs.js';
|
|
19
|
+
export * from './tree_snapshot_diff_hints.js';
|
|
20
|
+
export * from './tx_merge_rollup_private_inputs.js';
|
|
21
|
+
export * from './tx_rollup_public_inputs.js';
|
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
import { bufferSchemaFor } from '@aztec/foundation/schemas';
|
|
2
|
+
import { BufferReader, serializeToBuffer } from '@aztec/foundation/serialize';
|
|
3
|
+
import { bufferToHex, hexToBuffer } from '@aztec/foundation/string';
|
|
4
|
+
import type { FieldsOf } from '@aztec/foundation/types';
|
|
5
|
+
|
|
6
|
+
import { PrivateToRollupKernelCircuitPublicInputs } from '../kernel/private_to_rollup_kernel_circuit_public_inputs.js';
|
|
7
|
+
import { type CivcProofData, ProofData } from '../proofs/proof_data.js';
|
|
8
|
+
import { PrivateBaseRollupHints } from './base_rollup_hints.js';
|
|
9
|
+
|
|
10
|
+
export class PrivateTxBaseRollupPrivateInputs {
|
|
11
|
+
constructor(
|
|
12
|
+
public hidingKernelProofData: CivcProofData<PrivateToRollupKernelCircuitPublicInputs>,
|
|
13
|
+
public hints: PrivateBaseRollupHints,
|
|
14
|
+
) {}
|
|
15
|
+
|
|
16
|
+
static from(fields: FieldsOf<PrivateTxBaseRollupPrivateInputs>): PrivateTxBaseRollupPrivateInputs {
|
|
17
|
+
return new PrivateTxBaseRollupPrivateInputs(...PrivateTxBaseRollupPrivateInputs.getFields(fields));
|
|
18
|
+
}
|
|
19
|
+
|
|
20
|
+
static getFields(fields: FieldsOf<PrivateTxBaseRollupPrivateInputs>) {
|
|
21
|
+
return [fields.hidingKernelProofData, fields.hints] as const;
|
|
22
|
+
}
|
|
23
|
+
|
|
24
|
+
static fromBuffer(buffer: Buffer | BufferReader): PrivateTxBaseRollupPrivateInputs {
|
|
25
|
+
const reader = BufferReader.asReader(buffer);
|
|
26
|
+
return new PrivateTxBaseRollupPrivateInputs(
|
|
27
|
+
ProofData.fromBuffer(reader, PrivateToRollupKernelCircuitPublicInputs),
|
|
28
|
+
reader.readObject(PrivateBaseRollupHints),
|
|
29
|
+
);
|
|
30
|
+
}
|
|
31
|
+
|
|
32
|
+
toBuffer() {
|
|
33
|
+
return serializeToBuffer(...PrivateTxBaseRollupPrivateInputs.getFields(this));
|
|
34
|
+
}
|
|
35
|
+
|
|
36
|
+
static fromString(str: string) {
|
|
37
|
+
return PrivateTxBaseRollupPrivateInputs.fromBuffer(hexToBuffer(str));
|
|
38
|
+
}
|
|
39
|
+
|
|
40
|
+
toString() {
|
|
41
|
+
return bufferToHex(this.toBuffer());
|
|
42
|
+
}
|
|
43
|
+
|
|
44
|
+
/** Returns a buffer representation for JSON serialization. */
|
|
45
|
+
toJSON() {
|
|
46
|
+
return this.toBuffer();
|
|
47
|
+
}
|
|
48
|
+
|
|
49
|
+
/** Creates an instance from a hex string. */
|
|
50
|
+
static get schema() {
|
|
51
|
+
return bufferSchemaFor(PrivateTxBaseRollupPrivateInputs);
|
|
52
|
+
}
|
|
53
|
+
}
|
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
import { Fr } from '@aztec/foundation/fields';
|
|
2
|
+
import { bufferSchemaFor } from '@aztec/foundation/schemas';
|
|
3
|
+
import { BufferReader, serializeToBuffer } from '@aztec/foundation/serialize';
|
|
4
|
+
import { bufferToHex, hexToBuffer } from '@aztec/foundation/string';
|
|
5
|
+
import type { FieldsOf } from '@aztec/foundation/types';
|
|
6
|
+
|
|
7
|
+
import { PrivateToPublicKernelCircuitPublicInputs } from '../kernel/private_to_public_kernel_circuit_public_inputs.js';
|
|
8
|
+
import { type CivcProofData, ProofData } from '../proofs/proof_data.js';
|
|
9
|
+
|
|
10
|
+
export class PublicTubePrivateInputs {
|
|
11
|
+
constructor(
|
|
12
|
+
public hidingKernelProofData: CivcProofData<PrivateToPublicKernelCircuitPublicInputs>,
|
|
13
|
+
public proverId: Fr,
|
|
14
|
+
) {}
|
|
15
|
+
|
|
16
|
+
static from(fields: FieldsOf<PublicTubePrivateInputs>) {
|
|
17
|
+
return new PublicTubePrivateInputs(...PublicTubePrivateInputs.getFields(fields));
|
|
18
|
+
}
|
|
19
|
+
|
|
20
|
+
static getFields(fields: FieldsOf<PublicTubePrivateInputs>) {
|
|
21
|
+
return [fields.hidingKernelProofData, fields.proverId] as const;
|
|
22
|
+
}
|
|
23
|
+
|
|
24
|
+
static fromBuffer(buffer: Buffer | BufferReader) {
|
|
25
|
+
const reader = BufferReader.asReader(buffer);
|
|
26
|
+
return new PublicTubePrivateInputs(
|
|
27
|
+
ProofData.fromBuffer(reader, PrivateToPublicKernelCircuitPublicInputs),
|
|
28
|
+
Fr.fromBuffer(reader),
|
|
29
|
+
);
|
|
30
|
+
}
|
|
31
|
+
|
|
32
|
+
toBuffer() {
|
|
33
|
+
return serializeToBuffer(...PublicTubePrivateInputs.getFields(this));
|
|
34
|
+
}
|
|
35
|
+
|
|
36
|
+
static fromString(str: string) {
|
|
37
|
+
return PublicTubePrivateInputs.fromBuffer(hexToBuffer(str));
|
|
38
|
+
}
|
|
39
|
+
|
|
40
|
+
toString() {
|
|
41
|
+
return bufferToHex(this.toBuffer());
|
|
42
|
+
}
|
|
43
|
+
|
|
44
|
+
/** Returns a representation for JSON serialization. */
|
|
45
|
+
toJSON() {
|
|
46
|
+
return this.toBuffer();
|
|
47
|
+
}
|
|
48
|
+
|
|
49
|
+
/** Creates an instance from a string. */
|
|
50
|
+
static get schema() {
|
|
51
|
+
return bufferSchemaFor(PublicTubePrivateInputs);
|
|
52
|
+
}
|
|
53
|
+
}
|
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
import { Fr } from '@aztec/foundation/fields';
|
|
2
|
+
import { bufferSchemaFor } from '@aztec/foundation/schemas';
|
|
3
|
+
import { BufferReader, serializeToBuffer } from '@aztec/foundation/serialize';
|
|
4
|
+
import { bufferToHex, hexToBuffer } from '@aztec/foundation/string';
|
|
5
|
+
import type { FieldsOf } from '@aztec/foundation/types';
|
|
6
|
+
|
|
7
|
+
import { PrivateToPublicKernelCircuitPublicInputs } from '../kernel/private_to_public_kernel_circuit_public_inputs.js';
|
|
8
|
+
|
|
9
|
+
export class PublicTubePublicInputs {
|
|
10
|
+
constructor(
|
|
11
|
+
public privateTail: PrivateToPublicKernelCircuitPublicInputs,
|
|
12
|
+
public proverId: Fr,
|
|
13
|
+
) {}
|
|
14
|
+
|
|
15
|
+
static from(fields: FieldsOf<PublicTubePublicInputs>) {
|
|
16
|
+
return new PublicTubePublicInputs(...PublicTubePublicInputs.getFields(fields));
|
|
17
|
+
}
|
|
18
|
+
|
|
19
|
+
static getFields(fields: FieldsOf<PublicTubePublicInputs>) {
|
|
20
|
+
return [fields.privateTail, fields.proverId] as const;
|
|
21
|
+
}
|
|
22
|
+
|
|
23
|
+
static fromBuffer(buffer: Buffer | BufferReader) {
|
|
24
|
+
const reader = BufferReader.asReader(buffer);
|
|
25
|
+
return new PublicTubePublicInputs(
|
|
26
|
+
reader.readObject(PrivateToPublicKernelCircuitPublicInputs),
|
|
27
|
+
reader.readObject(Fr),
|
|
28
|
+
);
|
|
29
|
+
}
|
|
30
|
+
|
|
31
|
+
toBuffer() {
|
|
32
|
+
return serializeToBuffer(...PublicTubePublicInputs.getFields(this));
|
|
33
|
+
}
|
|
34
|
+
|
|
35
|
+
static fromString(str: string) {
|
|
36
|
+
return PublicTubePublicInputs.fromBuffer(hexToBuffer(str));
|
|
37
|
+
}
|
|
38
|
+
|
|
39
|
+
toString() {
|
|
40
|
+
return bufferToHex(this.toBuffer());
|
|
41
|
+
}
|
|
42
|
+
|
|
43
|
+
/** Returns a representation for JSON serialization. */
|
|
44
|
+
toJSON() {
|
|
45
|
+
return this.toBuffer();
|
|
46
|
+
}
|
|
47
|
+
|
|
48
|
+
/** Creates an instance from a string. */
|
|
49
|
+
static get schema() {
|
|
50
|
+
return bufferSchemaFor(PublicTubePublicInputs);
|
|
51
|
+
}
|
|
52
|
+
}
|