@aztec/stdlib 0.0.1-commit.5de5ca79e → 0.0.1-commit.6201a7b05
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/authorization_selector.d.ts +3 -6
- package/dest/abi/authorization_selector.d.ts.map +1 -1
- package/dest/abi/buffer.d.ts +14 -4
- package/dest/abi/buffer.d.ts.map +1 -1
- package/dest/abi/buffer.js +25 -4
- package/dest/abi/decoder.d.ts +5 -44
- package/dest/abi/decoder.d.ts.map +1 -1
- package/dest/abi/decoder.js +12 -67
- package/dest/abi/encoder.d.ts +1 -1
- package/dest/abi/encoder.d.ts.map +1 -1
- package/dest/abi/encoder.js +32 -6
- package/dest/abi/event_selector.d.ts +3 -6
- package/dest/abi/event_selector.d.ts.map +1 -1
- package/dest/abi/function_selector.d.ts +3 -6
- package/dest/abi/function_selector.d.ts.map +1 -1
- package/dest/abi/function_selector.js +2 -4
- package/dest/abi/function_signature_decoder.d.ts +43 -0
- package/dest/abi/function_signature_decoder.d.ts.map +1 -0
- package/dest/abi/function_signature_decoder.js +66 -0
- package/dest/abi/index.d.ts +2 -1
- package/dest/abi/index.d.ts.map +1 -1
- package/dest/abi/index.js +1 -0
- package/dest/abi/note_selector.d.ts +3 -6
- package/dest/abi/note_selector.d.ts.map +1 -1
- package/dest/abi/note_selector.js +1 -3
- package/dest/abi/selector.d.ts +2 -2
- package/dest/abi/selector.d.ts.map +1 -1
- package/dest/abi/selector.js +1 -1
- package/dest/avm/avm.d.ts +300 -300
- package/dest/avm/revert_code.d.ts +8 -18
- package/dest/avm/revert_code.d.ts.map +1 -1
- package/dest/avm/revert_code.js +15 -30
- package/dest/aztec-address/index.d.ts +3 -6
- package/dest/aztec-address/index.d.ts.map +1 -1
- package/dest/aztec-address/index.js +2 -4
- package/dest/block/attestation_info.d.ts +3 -2
- package/dest/block/attestation_info.d.ts.map +1 -1
- package/dest/block/attestation_info.js +7 -5
- package/dest/block/block_data.d.ts +297 -8
- package/dest/block/block_data.d.ts.map +1 -1
- package/dest/block/block_data.js +16 -2
- package/dest/block/block_hash.d.ts +11 -10
- package/dest/block/block_hash.d.ts.map +1 -1
- package/dest/block/block_hash.js +10 -9
- package/dest/block/block_parameter.d.ts +30 -3
- package/dest/block/block_parameter.d.ts.map +1 -1
- package/dest/block/block_parameter.js +36 -2
- package/dest/block/l2_block_info.d.ts +6 -5
- package/dest/block/l2_block_info.d.ts.map +1 -1
- package/dest/block/l2_block_info.js +6 -5
- package/dest/block/l2_block_source.d.ts +120 -6
- package/dest/block/l2_block_source.d.ts.map +1 -1
- package/dest/block/l2_block_source.js +1 -0
- package/dest/block/l2_block_stream/interfaces.d.ts +6 -3
- package/dest/block/l2_block_stream/interfaces.d.ts.map +1 -1
- package/dest/block/l2_block_stream/l2_tips_store_base.d.ts +1 -1
- package/dest/block/l2_block_stream/l2_tips_store_base.d.ts.map +1 -1
- package/dest/block/l2_block_stream/l2_tips_store_base.js +18 -5
- package/dest/block/proposal/attestations_and_signers.d.ts +13 -6
- package/dest/block/proposal/attestations_and_signers.d.ts.map +1 -1
- package/dest/block/proposal/attestations_and_signers.js +26 -18
- package/dest/block/test/l2_tips_store_test_suite.d.ts +1 -1
- package/dest/block/test/l2_tips_store_test_suite.d.ts.map +1 -1
- package/dest/block/test/l2_tips_store_test_suite.js +4 -3
- package/dest/checkpoint/checkpoint.d.ts +7 -1
- package/dest/checkpoint/checkpoint.d.ts.map +1 -1
- package/dest/checkpoint/checkpoint.js +9 -1
- package/dest/checkpoint/checkpoint_data.d.ts +77 -5
- package/dest/checkpoint/checkpoint_data.d.ts.map +1 -1
- package/dest/checkpoint/checkpoint_data.js +12 -0
- package/dest/config/chain-config.d.ts +2 -2
- package/dest/config/chain-config.d.ts.map +1 -1
- package/dest/config/chain-config.js +9 -3
- package/dest/config/sequencer-config.d.ts +3 -3
- package/dest/config/sequencer-config.d.ts.map +1 -1
- package/dest/config/sequencer-config.js +11 -4
- package/dest/contract/contract_address.d.ts +1 -1
- package/dest/contract/contract_address.js +2 -2
- package/dest/contract/index.d.ts +1 -3
- package/dest/contract/index.d.ts.map +1 -1
- package/dest/contract/index.js +0 -2
- package/dest/contract/interfaces/contract_class.d.ts +3 -156
- package/dest/contract/interfaces/contract_class.d.ts.map +1 -1
- package/dest/contract/interfaces/contract_class.js +1 -28
- package/dest/contract/private_function.d.ts +1 -1
- package/dest/contract/private_function.d.ts.map +1 -1
- package/dest/contract/private_function.js +2 -4
- package/dest/epoch-helpers/index.d.ts +7 -1
- package/dest/epoch-helpers/index.d.ts.map +1 -1
- package/dest/epoch-helpers/index.js +12 -0
- package/dest/file-store/factory.d.ts +4 -3
- package/dest/file-store/factory.d.ts.map +1 -1
- package/dest/file-store/factory.js +2 -2
- package/dest/file-store/http.d.ts +9 -2
- package/dest/file-store/http.d.ts.map +1 -1
- package/dest/file-store/http.js +20 -9
- package/dest/file-store/index.d.ts +2 -1
- package/dest/file-store/index.d.ts.map +1 -1
- package/dest/gas/fee_math.d.ts +49 -0
- package/dest/gas/fee_math.d.ts.map +1 -0
- package/dest/gas/fee_math.js +80 -0
- package/dest/gas/gas_fees.d.ts +5 -1
- package/dest/gas/gas_fees.d.ts.map +1 -1
- package/dest/gas/gas_fees.js +10 -1
- package/dest/gas/gas_settings.d.ts +40 -3
- package/dest/gas/gas_settings.d.ts.map +1 -1
- package/dest/gas/gas_settings.js +50 -6
- package/dest/gas/index.d.ts +2 -1
- package/dest/gas/index.d.ts.map +1 -1
- package/dest/gas/index.js +1 -0
- package/dest/ha-signing/config.d.ts +6 -6
- package/dest/ha-signing/config.d.ts.map +1 -1
- package/dest/ha-signing/config.js +4 -3
- package/dest/ha-signing/index.d.ts +2 -2
- package/dest/ha-signing/index.d.ts.map +1 -1
- package/dest/ha-signing/index.js +1 -1
- package/dest/ha-signing/local_config.d.ts +1 -1
- package/dest/ha-signing/local_config.d.ts.map +1 -1
- package/dest/ha-signing/local_config.js +2 -2
- package/dest/ha-signing/types.d.ts +37 -32
- package/dest/ha-signing/types.d.ts.map +1 -1
- package/dest/ha-signing/types.js +13 -6
- package/dest/hash/hash.d.ts +19 -1
- package/dest/hash/hash.d.ts.map +1 -1
- package/dest/hash/hash.js +37 -0
- package/dest/interfaces/archiver.d.ts +11 -1
- package/dest/interfaces/archiver.d.ts.map +1 -1
- package/dest/interfaces/archiver.js +11 -3
- package/dest/interfaces/aztec-node-admin.d.ts +19 -17
- package/dest/interfaces/aztec-node-admin.d.ts.map +1 -1
- package/dest/interfaces/aztec-node-admin.js +5 -4
- package/dest/interfaces/aztec-node-debug.d.ts +21 -0
- package/dest/interfaces/aztec-node-debug.d.ts.map +1 -0
- package/dest/interfaces/aztec-node-debug.js +18 -0
- package/dest/interfaces/aztec-node.d.ts +54 -55
- package/dest/interfaces/aztec-node.d.ts.map +1 -1
- package/dest/interfaces/aztec-node.js +20 -16
- package/dest/interfaces/block_response.d.ts +156 -0
- package/dest/interfaces/block_response.d.ts.map +1 -0
- package/dest/interfaces/block_response.js +24 -0
- package/dest/interfaces/chain_tips.d.ts +304 -0
- package/dest/interfaces/chain_tips.d.ts.map +1 -0
- package/dest/interfaces/chain_tips.js +11 -0
- package/dest/interfaces/checkpoint_parameter.d.ts +27 -0
- package/dest/interfaces/checkpoint_parameter.d.ts.map +1 -0
- package/dest/interfaces/checkpoint_parameter.js +20 -0
- package/dest/interfaces/checkpoint_response.d.ts +312 -0
- package/dest/interfaces/checkpoint_response.d.ts.map +1 -0
- package/dest/interfaces/checkpoint_response.js +26 -0
- package/dest/interfaces/client.d.ts +7 -1
- package/dest/interfaces/client.d.ts.map +1 -1
- package/dest/interfaces/client.js +6 -0
- package/dest/interfaces/configs.d.ts +7 -2
- package/dest/interfaces/configs.d.ts.map +1 -1
- package/dest/interfaces/configs.js +2 -1
- package/dest/interfaces/l1_publish_info.d.ts +43 -0
- package/dest/interfaces/l1_publish_info.d.ts.map +1 -0
- package/dest/interfaces/l1_publish_info.js +26 -0
- package/dest/interfaces/merkle_tree_operations.d.ts +4 -3
- package/dest/interfaces/merkle_tree_operations.d.ts.map +1 -1
- package/dest/interfaces/prover-client.d.ts +1 -1
- package/dest/interfaces/prover-client.d.ts.map +1 -1
- package/dest/interfaces/prover-client.js +0 -3
- package/dest/interfaces/proving-job.d.ts +200 -200
- package/dest/interfaces/server.d.ts +6 -1
- package/dest/interfaces/server.d.ts.map +1 -1
- package/dest/interfaces/server.js +5 -0
- package/dest/interfaces/slasher.d.ts +1 -10
- package/dest/interfaces/slasher.d.ts.map +1 -1
- package/dest/interfaces/slasher.js +0 -2
- package/dest/interfaces/validator.d.ts +24 -26
- package/dest/interfaces/validator.d.ts.map +1 -1
- package/dest/interfaces/validator.js +1 -1
- package/dest/l1-contracts/index.d.ts +2 -2
- package/dest/l1-contracts/index.d.ts.map +1 -1
- package/dest/l1-contracts/index.js +1 -1
- package/dest/logs/extended_directional_app_tagging_secret.d.ts +4 -4
- package/dest/logs/extended_directional_app_tagging_secret.d.ts.map +1 -1
- package/dest/logs/extended_directional_app_tagging_secret.js +12 -5
- package/dest/logs/log_id.d.ts +1 -1
- package/dest/logs/log_id.d.ts.map +1 -1
- package/dest/logs/log_id.js +1 -2
- package/dest/logs/message_context.d.ts +4 -7
- package/dest/logs/message_context.d.ts.map +1 -1
- package/dest/logs/message_context.js +23 -9
- package/dest/logs/pending_tagged_log.d.ts +2 -3
- package/dest/logs/pending_tagged_log.d.ts.map +1 -1
- package/dest/logs/pending_tagged_log.js +2 -2
- package/dest/logs/shared_secret_derivation.d.ts +11 -10
- package/dest/logs/shared_secret_derivation.d.ts.map +1 -1
- package/dest/logs/shared_secret_derivation.js +15 -9
- package/dest/logs/siloed_tag.d.ts +8 -7
- package/dest/logs/siloed_tag.d.ts.map +1 -1
- package/dest/logs/siloed_tag.js +11 -3
- package/dest/logs/tag.d.ts +5 -6
- package/dest/logs/tag.d.ts.map +1 -1
- package/dest/logs/tag.js +4 -0
- package/dest/messaging/l1_to_l2_message.d.ts +3 -2
- package/dest/messaging/l1_to_l2_message.d.ts.map +1 -1
- package/dest/messaging/l1_to_l2_message.js +11 -13
- package/dest/note/note_dao.d.ts +1 -1
- package/dest/note/note_dao.d.ts.map +1 -1
- package/dest/note/note_dao.js +1 -4
- package/dest/p2p/block_proposal.d.ts +22 -14
- package/dest/p2p/block_proposal.d.ts.map +1 -1
- package/dest/p2p/block_proposal.js +45 -40
- package/dest/p2p/checkpoint_attestation.d.ts +10 -8
- package/dest/p2p/checkpoint_attestation.d.ts.map +1 -1
- package/dest/p2p/checkpoint_attestation.js +17 -24
- package/dest/p2p/checkpoint_proposal.d.ts +20 -14
- package/dest/p2p/checkpoint_proposal.d.ts.map +1 -1
- package/dest/p2p/checkpoint_proposal.js +34 -51
- package/dest/p2p/consensus_payload.d.ts +18 -7
- package/dest/p2p/consensus_payload.d.ts.map +1 -1
- package/dest/p2p/consensus_payload.js +31 -19
- package/dest/p2p/gossipable.d.ts +4 -4
- package/dest/p2p/gossipable.d.ts.map +1 -1
- package/dest/p2p/signature_utils.d.ts +28 -19
- package/dest/p2p/signature_utils.d.ts.map +1 -1
- package/dest/p2p/signature_utils.js +118 -21
- package/dest/p2p/signed_txs.d.ts +15 -13
- package/dest/p2p/signed_txs.d.ts.map +1 -1
- package/dest/p2p/signed_txs.js +26 -24
- package/dest/parity/parity_base_private_inputs.d.ts +7 -3
- package/dest/parity/parity_base_private_inputs.d.ts.map +1 -1
- package/dest/parity/parity_base_private_inputs.js +7 -5
- package/dest/parity/parity_public_inputs.d.ts +7 -3
- package/dest/parity/parity_public_inputs.d.ts.map +1 -1
- package/dest/parity/parity_public_inputs.js +6 -3
- package/dest/proofs/chonk_proof.d.ts +46 -2
- package/dest/proofs/chonk_proof.d.ts.map +1 -1
- package/dest/proofs/chonk_proof.js +85 -10
- package/dest/rollup/block_headers_hash.d.ts +1 -1
- package/dest/rollup/block_headers_hash.d.ts.map +1 -1
- package/dest/rollup/block_headers_hash.js +8 -2
- package/dest/slashing/index.d.ts +2 -3
- package/dest/slashing/index.d.ts.map +1 -1
- package/dest/slashing/index.js +1 -2
- package/dest/slashing/serialization.d.ts +2 -6
- package/dest/slashing/serialization.d.ts.map +1 -1
- package/dest/slashing/serialization.js +0 -60
- package/dest/slashing/types.d.ts +4 -90
- package/dest/slashing/types.d.ts.map +1 -1
- package/dest/slashing/types.js +0 -14
- package/dest/slashing/{tally.d.ts → votes.d.ts} +1 -1
- package/dest/slashing/{tally.d.ts.map → votes.d.ts.map} +1 -1
- package/dest/slashing/{tally.js → votes.js} +1 -1
- package/dest/tests/factories.d.ts +3 -10
- package/dest/tests/factories.d.ts.map +1 -1
- package/dest/tests/factories.js +19 -46
- package/dest/tests/mocks.d.ts +7 -1
- package/dest/tests/mocks.d.ts.map +1 -1
- package/dest/tests/mocks.js +39 -30
- package/dest/timetable/index.d.ts +51 -1
- package/dest/timetable/index.d.ts.map +1 -1
- package/dest/timetable/index.js +218 -14
- package/dest/trees/nullifier_leaf.d.ts +2 -1
- package/dest/trees/nullifier_leaf.d.ts.map +1 -1
- package/dest/trees/nullifier_leaf.js +3 -0
- package/dest/tx/block_header.d.ts +2 -2
- package/dest/tx/block_header.d.ts.map +1 -1
- package/dest/tx/block_header.js +1 -1
- package/dest/tx/capsule.d.ts +6 -2
- package/dest/tx/capsule.d.ts.map +1 -1
- package/dest/tx/capsule.js +9 -3
- package/dest/tx/fee_provider.d.ts +10 -0
- package/dest/tx/fee_provider.d.ts.map +1 -0
- package/dest/tx/fee_provider.js +1 -0
- package/dest/tx/global_variable_builder.d.ts +3 -4
- package/dest/tx/global_variable_builder.d.ts.map +1 -1
- package/dest/tx/index.d.ts +2 -1
- package/dest/tx/index.d.ts.map +1 -1
- package/dest/tx/index.js +1 -0
- package/dest/tx/indexed_tx_effect.d.ts +1 -1
- package/dest/tx/indexed_tx_effect.d.ts.map +1 -1
- package/dest/tx/indexed_tx_effect.js +1 -2
- package/dest/tx/profiling.js +4 -4
- package/dest/tx/simulated_tx.d.ts +4 -4
- package/dest/tx/simulated_tx.d.ts.map +1 -1
- package/dest/tx/simulated_tx.js +3 -3
- package/dest/tx/tx.d.ts +3 -3
- package/dest/tx/tx.d.ts.map +1 -1
- package/dest/tx/tx_receipt.d.ts +8 -4
- package/dest/tx/tx_receipt.d.ts.map +1 -1
- package/dest/tx/tx_receipt.js +8 -15
- package/dest/tx/validator/error_texts.d.ts +5 -1
- package/dest/tx/validator/error_texts.d.ts.map +1 -1
- package/dest/tx/validator/error_texts.js +6 -0
- package/dest/types/shared.d.ts +1 -10
- package/dest/types/shared.d.ts.map +1 -1
- package/dest/types/shared.js +0 -9
- package/dest/vks/verification_key.d.ts +2 -137
- package/dest/vks/verification_key.d.ts.map +1 -1
- package/dest/vks/verification_key.js +5 -126
- package/dest/world-state/genesis_data.d.ts +11 -0
- package/dest/world-state/genesis_data.d.ts.map +1 -0
- package/dest/world-state/genesis_data.js +4 -0
- package/dest/world-state/index.d.ts +2 -1
- package/dest/world-state/index.d.ts.map +1 -1
- package/dest/world-state/index.js +1 -0
- package/dest/world-state/world_state_revision.d.ts +8 -1
- package/dest/world-state/world_state_revision.d.ts.map +1 -1
- package/dest/world-state/world_state_revision.js +7 -1
- package/package.json +8 -8
- package/src/abi/authorization_selector.ts +2 -8
- package/src/abi/buffer.ts +25 -4
- package/src/abi/decoder.ts +23 -78
- package/src/abi/encoder.ts +42 -6
- package/src/abi/event_selector.ts +2 -8
- package/src/abi/function_selector.ts +4 -13
- package/src/abi/function_signature_decoder.ts +77 -0
- package/src/abi/index.ts +1 -0
- package/src/abi/note_selector.ts +3 -12
- package/src/abi/selector.ts +1 -1
- package/src/avm/revert_code.ts +25 -39
- package/src/aztec-address/index.ts +4 -10
- package/src/block/attestation_info.ts +11 -11
- package/src/block/block_data.ts +20 -4
- package/src/block/block_hash.ts +21 -14
- package/src/block/block_parameter.ts +35 -2
- package/src/block/l2_block_info.ts +8 -6
- package/src/block/l2_block_source.ts +55 -5
- package/src/block/l2_block_stream/interfaces.ts +6 -2
- package/src/block/l2_block_stream/l2_tips_store_base.ts +25 -13
- package/src/block/proposal/attestations_and_signers.ts +32 -17
- package/src/block/test/l2_tips_store_test_suite.ts +9 -2
- package/src/checkpoint/checkpoint.ts +11 -1
- package/src/checkpoint/checkpoint_data.ts +44 -4
- package/src/config/chain-config.ts +9 -4
- package/src/config/sequencer-config.ts +20 -6
- package/src/contract/contract_address.ts +2 -2
- package/src/contract/index.ts +0 -2
- package/src/contract/interfaces/contract_class.ts +2 -82
- package/src/contract/private_function.ts +3 -1
- package/src/epoch-helpers/index.ts +24 -0
- package/src/file-store/factory.ts +13 -4
- package/src/file-store/http.ts +29 -10
- package/src/file-store/index.ts +1 -0
- package/src/gas/README.md +31 -0
- package/src/gas/fee_math.ts +120 -0
- package/src/gas/gas_fees.ts +17 -4
- package/src/gas/gas_settings.ts +65 -12
- package/src/gas/index.ts +1 -0
- package/src/ha-signing/config.ts +5 -2
- package/src/ha-signing/index.ts +3 -1
- package/src/ha-signing/local_config.ts +2 -2
- package/src/ha-signing/types.ts +48 -34
- package/src/hash/hash.ts +32 -0
- package/src/interfaces/archiver.ts +22 -2
- package/src/interfaces/aztec-node-admin.ts +8 -8
- package/src/interfaces/aztec-node-debug.ts +40 -0
- package/src/interfaces/aztec-node.ts +120 -95
- package/src/interfaces/block_response.ts +79 -0
- package/src/interfaces/chain_tips.ts +24 -0
- package/src/interfaces/checkpoint_parameter.ts +22 -0
- package/src/interfaces/checkpoint_response.ts +84 -0
- package/src/interfaces/client.ts +6 -0
- package/src/interfaces/configs.ts +5 -1
- package/src/interfaces/l1_publish_info.ts +40 -0
- package/src/interfaces/merkle_tree_operations.ts +3 -2
- package/src/interfaces/prover-client.ts +2 -5
- package/src/interfaces/server.ts +5 -0
- package/src/interfaces/slasher.ts +0 -6
- package/src/interfaces/validator.ts +21 -13
- package/src/l1-contracts/index.ts +1 -1
- package/src/logs/extended_directional_app_tagging_secret.ts +19 -8
- package/src/logs/log_id.ts +1 -2
- package/src/logs/message_context.ts +17 -7
- package/src/logs/pending_tagged_log.ts +1 -3
- package/src/logs/shared_secret_derivation.ts +21 -10
- package/src/logs/siloed_tag.ts +15 -11
- package/src/logs/tag.ts +8 -8
- package/src/messaging/l1_to_l2_message.ts +12 -9
- package/src/note/note_dao.ts +1 -4
- package/src/p2p/block_proposal.ts +96 -36
- package/src/p2p/checkpoint_attestation.ts +20 -29
- package/src/p2p/checkpoint_proposal.ts +88 -71
- package/src/p2p/consensus_payload.ts +50 -28
- package/src/p2p/gossipable.ts +4 -4
- package/src/p2p/signature_utils.ts +110 -25
- package/src/p2p/signed_txs.ts +46 -28
- package/src/parity/parity_base_private_inputs.ts +10 -4
- package/src/parity/parity_public_inputs.ts +9 -2
- package/src/proofs/chonk_proof.ts +91 -5
- package/src/rollup/block_headers_hash.ts +11 -2
- package/src/slashing/index.ts +1 -2
- package/src/slashing/serialization.ts +1 -81
- package/src/slashing/types.ts +3 -35
- package/src/slashing/{tally.ts → votes.ts} +1 -1
- package/src/tests/factories.ts +19 -54
- package/src/tests/mocks.ts +63 -39
- package/src/timetable/index.ts +308 -13
- package/src/trees/nullifier_leaf.ts +4 -0
- package/src/tx/block_header.ts +2 -2
- package/src/tx/capsule.ts +10 -2
- package/src/tx/fee_provider.ts +10 -0
- package/src/tx/global_variable_builder.ts +2 -3
- package/src/tx/index.ts +1 -0
- package/src/tx/indexed_tx_effect.ts +1 -2
- package/src/tx/profiling.ts +4 -4
- package/src/tx/simulated_tx.ts +6 -2
- package/src/tx/tx.ts +2 -2
- package/src/tx/tx_receipt.ts +11 -14
- package/src/tx/validator/error_texts.ts +8 -0
- package/src/types/shared.ts +0 -10
- package/src/vks/verification_key.ts +5 -184
- package/src/world-state/genesis_data.ts +15 -0
- package/src/world-state/index.ts +1 -0
- package/src/world-state/world_state_revision.ts +9 -1
- package/dest/abi/mocked_keys.d.ts +0 -2
- package/dest/abi/mocked_keys.d.ts.map +0 -1
- package/dest/abi/mocked_keys.js +0 -1
- package/dest/contract/private_function_membership_proof.d.ts +0 -32
- package/dest/contract/private_function_membership_proof.d.ts.map +0 -1
- package/dest/contract/private_function_membership_proof.js +0 -124
- package/dest/contract/utility_function_membership_proof.d.ts +0 -27
- package/dest/contract/utility_function_membership_proof.d.ts.map +0 -1
- package/dest/contract/utility_function_membership_proof.js +0 -87
- package/dest/l1-contracts/slash_factory.d.ts +0 -45
- package/dest/l1-contracts/slash_factory.d.ts.map +0 -1
- package/dest/l1-contracts/slash_factory.js +0 -158
- package/dest/slashing/empire.d.ts +0 -31
- package/dest/slashing/empire.d.ts.map +0 -1
- package/dest/slashing/empire.js +0 -87
- package/src/abi/mocked_keys.ts +0 -2
- package/src/contract/private_function_membership_proof.ts +0 -167
- package/src/contract/utility_function_membership_proof.ts +0 -118
- package/src/l1-contracts/slash_factory.ts +0 -180
- package/src/slashing/empire.ts +0 -104
package/src/tests/factories.ts
CHANGED
|
@@ -9,7 +9,6 @@ import {
|
|
|
9
9
|
AVM_V2_PROOF_LENGTH_IN_FIELDS_PADDED,
|
|
10
10
|
CHONK_PROOF_LENGTH,
|
|
11
11
|
CONTRACT_CLASS_LOG_SIZE_IN_FIELDS,
|
|
12
|
-
DomainSeparator,
|
|
13
12
|
L1_TO_L2_MSG_SUBTREE_ROOT_SIBLING_PATH_LENGTH,
|
|
14
13
|
MAX_CHECKPOINTS_PER_EPOCH,
|
|
15
14
|
MAX_CONTRACT_CLASS_LOGS_PER_TX,
|
|
@@ -46,7 +45,6 @@ import { type FieldsOf, makeTuple } from '@aztec/foundation/array';
|
|
|
46
45
|
import { BlockNumber, CheckpointNumber, SlotNumber } from '@aztec/foundation/branded-types';
|
|
47
46
|
import { compact } from '@aztec/foundation/collection';
|
|
48
47
|
import { Grumpkin } from '@aztec/foundation/crypto/grumpkin';
|
|
49
|
-
import { poseidon2HashWithSeparator } from '@aztec/foundation/crypto/poseidon';
|
|
50
48
|
import { SchnorrSignature } from '@aztec/foundation/crypto/schnorr';
|
|
51
49
|
import { sha256 } from '@aztec/foundation/crypto/sha256';
|
|
52
50
|
import { Fq, Fr } from '@aztec/foundation/curves/bn254';
|
|
@@ -92,11 +90,10 @@ import {
|
|
|
92
90
|
type ContractClassPublic,
|
|
93
91
|
ContractDeploymentData,
|
|
94
92
|
type ContractInstanceWithAddress,
|
|
95
|
-
type ExecutablePrivateFunctionWithMembershipProof,
|
|
96
93
|
type PrivateFunction,
|
|
97
94
|
SerializableContractInstance,
|
|
98
|
-
type UtilityFunctionWithMembershipProof,
|
|
99
95
|
computeContractClassId,
|
|
96
|
+
computePartialAddress,
|
|
100
97
|
computePublicBytecodeCommitment,
|
|
101
98
|
} from '../contract/index.js';
|
|
102
99
|
import { Gas, GasFees, GasSettings } from '../gas/index.js';
|
|
@@ -178,7 +175,7 @@ import { TxHash } from '../tx/tx_hash.js';
|
|
|
178
175
|
import { TxRequest } from '../tx/tx_request.js';
|
|
179
176
|
import { Vector } from '../types/index.js';
|
|
180
177
|
import { VkData } from '../vks/index.js';
|
|
181
|
-
import {
|
|
178
|
+
import { VerificationKeyAsFields, VerificationKeyData } from '../vks/verification_key.js';
|
|
182
179
|
|
|
183
180
|
/**
|
|
184
181
|
* Creates an arbitrary side effect object with the given seed.
|
|
@@ -234,7 +231,7 @@ export function makeTxContext(seed: number = 1): TxContext {
|
|
|
234
231
|
* Creates a default instance of gas settings. No seed value is used to ensure we allocate a sensible amount of gas for testing.
|
|
235
232
|
*/
|
|
236
233
|
export function makeGasSettings() {
|
|
237
|
-
return GasSettings.
|
|
234
|
+
return GasSettings.fallback({ maxFeesPerGas: new GasFees(10, 10) });
|
|
238
235
|
}
|
|
239
236
|
|
|
240
237
|
/**
|
|
@@ -575,14 +572,6 @@ export function makeVerificationKeyAsFields(size: number): VerificationKeyAsFiel
|
|
|
575
572
|
return VerificationKeyAsFields.makeFake(size);
|
|
576
573
|
}
|
|
577
574
|
|
|
578
|
-
/**
|
|
579
|
-
* Creates arbitrary/mocked verification key.
|
|
580
|
-
* @returns A verification key object
|
|
581
|
-
*/
|
|
582
|
-
export function makeVerificationKey(): VerificationKey {
|
|
583
|
-
return VerificationKey.makeFake();
|
|
584
|
-
}
|
|
585
|
-
|
|
586
575
|
/**
|
|
587
576
|
* Creates an arbitrary point in a curve.
|
|
588
577
|
* @param seed - Seed to generate the point values.
|
|
@@ -865,11 +854,16 @@ export function makeParityPublicInputs(seed = 0): ParityPublicInputs {
|
|
|
865
854
|
new Fr(BigInt(seed + 0x200)),
|
|
866
855
|
new Fr(BigInt(seed + 0x300)),
|
|
867
856
|
new Fr(BigInt(seed + 0x400)),
|
|
857
|
+
new Fr(BigInt(seed + 0x500)),
|
|
868
858
|
);
|
|
869
859
|
}
|
|
870
860
|
|
|
871
861
|
export function makeParityBasePrivateInputs(seed = 0): ParityBasePrivateInputs {
|
|
872
|
-
return new ParityBasePrivateInputs(
|
|
862
|
+
return new ParityBasePrivateInputs(
|
|
863
|
+
makeTuple(NUM_MSGS_PER_BASE_PARITY, fr, seed + 0x3000),
|
|
864
|
+
new Fr(seed + 0x4000),
|
|
865
|
+
new Fr(seed + 0x5000),
|
|
866
|
+
);
|
|
873
867
|
}
|
|
874
868
|
|
|
875
869
|
export function makeParityRootPrivateInputs(seed = 0) {
|
|
@@ -1183,35 +1177,6 @@ export function makePublicTxBaseRollupPrivateInputs(seed = 0) {
|
|
|
1183
1177
|
});
|
|
1184
1178
|
}
|
|
1185
1179
|
|
|
1186
|
-
export function makeExecutablePrivateFunctionWithMembershipProof(
|
|
1187
|
-
seed = 0,
|
|
1188
|
-
): ExecutablePrivateFunctionWithMembershipProof {
|
|
1189
|
-
return {
|
|
1190
|
-
selector: makeSelector(seed),
|
|
1191
|
-
bytecode: makeBytes(100, seed + 1),
|
|
1192
|
-
artifactTreeSiblingPath: makeTuple(3, fr, seed + 2),
|
|
1193
|
-
artifactTreeLeafIndex: seed + 2,
|
|
1194
|
-
privateFunctionTreeSiblingPath: makeTuple(3, fr, seed + 3),
|
|
1195
|
-
privateFunctionTreeLeafIndex: seed + 3,
|
|
1196
|
-
artifactMetadataHash: fr(seed + 4),
|
|
1197
|
-
functionMetadataHash: fr(seed + 5),
|
|
1198
|
-
utilityFunctionsTreeRoot: fr(seed + 6),
|
|
1199
|
-
vkHash: fr(seed + 7),
|
|
1200
|
-
};
|
|
1201
|
-
}
|
|
1202
|
-
|
|
1203
|
-
export function makeUtilityFunctionWithMembershipProof(seed = 0): UtilityFunctionWithMembershipProof {
|
|
1204
|
-
return {
|
|
1205
|
-
selector: makeSelector(seed),
|
|
1206
|
-
bytecode: makeBytes(100, seed + 1),
|
|
1207
|
-
artifactTreeSiblingPath: makeTuple(3, fr, seed + 2),
|
|
1208
|
-
artifactTreeLeafIndex: seed + 2,
|
|
1209
|
-
artifactMetadataHash: fr(seed + 4),
|
|
1210
|
-
functionMetadataHash: fr(seed + 5),
|
|
1211
|
-
privateFunctionsArtifactTreeRoot: fr(seed + 6),
|
|
1212
|
-
};
|
|
1213
|
-
}
|
|
1214
|
-
|
|
1215
1180
|
export async function makeContractClassPublic(seed = 0, publicBytecode?: Buffer): Promise<ContractClassPublic> {
|
|
1216
1181
|
const artifactHash = fr(seed + 1);
|
|
1217
1182
|
const privateFunctionsRoot = fr(seed + 3);
|
|
@@ -1223,8 +1188,6 @@ export async function makeContractClassPublic(seed = 0, publicBytecode?: Buffer)
|
|
|
1223
1188
|
artifactHash,
|
|
1224
1189
|
packedBytecode,
|
|
1225
1190
|
privateFunctionsRoot,
|
|
1226
|
-
privateFunctions: [],
|
|
1227
|
-
utilityFunctions: [],
|
|
1228
1191
|
version: 1,
|
|
1229
1192
|
};
|
|
1230
1193
|
}
|
|
@@ -1286,14 +1249,12 @@ export async function makeContractInstanceFromClassId(
|
|
|
1286
1249
|
const deployer = overrides?.deployer ?? new AztecAddress(new Fr(seed + 2));
|
|
1287
1250
|
const publicKeys = overrides?.publicKeys ?? (await makePublicKeys(seed + 3));
|
|
1288
1251
|
|
|
1289
|
-
const
|
|
1290
|
-
|
|
1291
|
-
|
|
1292
|
-
|
|
1293
|
-
|
|
1294
|
-
|
|
1295
|
-
DomainSeparator.PARTIAL_ADDRESS,
|
|
1296
|
-
);
|
|
1252
|
+
const partialAddress = await computePartialAddress({
|
|
1253
|
+
originalContractClassId: classId,
|
|
1254
|
+
salt,
|
|
1255
|
+
initializationHash,
|
|
1256
|
+
deployer,
|
|
1257
|
+
});
|
|
1297
1258
|
const address = await computeAddress(publicKeys, partialAddress);
|
|
1298
1259
|
return new SerializableContractInstance({
|
|
1299
1260
|
version: 1,
|
|
@@ -1748,6 +1709,10 @@ export function makeL2Tips(
|
|
|
1748
1709
|
block: { number: bn, hash },
|
|
1749
1710
|
checkpoint: { number: cpn, hash: cph },
|
|
1750
1711
|
},
|
|
1712
|
+
proposedCheckpoint: {
|
|
1713
|
+
block: { number: bn, hash },
|
|
1714
|
+
checkpoint: { number: cpn, hash: cph },
|
|
1715
|
+
},
|
|
1751
1716
|
proven: {
|
|
1752
1717
|
block: { number: bn, hash },
|
|
1753
1718
|
checkpoint: { number: cpn, hash: cph },
|
package/src/tests/mocks.ts
CHANGED
|
@@ -14,8 +14,11 @@ import { padArrayEnd, times } from '@aztec/foundation/collection';
|
|
|
14
14
|
import { randomBytes } from '@aztec/foundation/crypto/random';
|
|
15
15
|
import { Secp256k1Signer } from '@aztec/foundation/crypto/secp256k1-signer';
|
|
16
16
|
import { Fr } from '@aztec/foundation/curves/bn254';
|
|
17
|
+
import { EthAddress } from '@aztec/foundation/eth-address';
|
|
17
18
|
import { Signature } from '@aztec/foundation/eth-signature';
|
|
18
19
|
|
|
20
|
+
import { type TypedDataDefinition, hashTypedData } from 'viem';
|
|
21
|
+
|
|
19
22
|
import type { ContractArtifact } from '../abi/abi.js';
|
|
20
23
|
import { PublicTxEffect } from '../avm/avm.js';
|
|
21
24
|
import type { AvmAccumulatedData } from '../avm/avm_accumulated_data.js';
|
|
@@ -51,7 +54,7 @@ import { BlockProposal } from '../p2p/block_proposal.js';
|
|
|
51
54
|
import { CheckpointAttestation } from '../p2p/checkpoint_attestation.js';
|
|
52
55
|
import { CheckpointProposal } from '../p2p/checkpoint_proposal.js';
|
|
53
56
|
import { ConsensusPayload } from '../p2p/consensus_payload.js';
|
|
54
|
-
import {
|
|
57
|
+
import { type CoordinationSignatureContext, getHashedSignaturePayloadTypedData } from '../p2p/signature_utils.js';
|
|
55
58
|
import { ChonkProof } from '../proofs/chonk_proof.js';
|
|
56
59
|
import { ProvingRequestType } from '../proofs/proving_request_type.js';
|
|
57
60
|
import { CheckpointHeader } from '../rollup/checkpoint_header.js';
|
|
@@ -86,6 +89,15 @@ import {
|
|
|
86
89
|
makePublicDataWrite,
|
|
87
90
|
} from './factories.js';
|
|
88
91
|
|
|
92
|
+
export const TEST_COORDINATION_SIGNATURE_CONTEXT: CoordinationSignatureContext = {
|
|
93
|
+
chainId: 31337,
|
|
94
|
+
rollupAddress: EthAddress.fromNumber(1),
|
|
95
|
+
};
|
|
96
|
+
|
|
97
|
+
function signTypedData(signer: Secp256k1Signer, typedData: TypedDataDefinition): Signature {
|
|
98
|
+
return signer.sign(Buffer32.fromString(hashTypedData(typedData)));
|
|
99
|
+
}
|
|
100
|
+
|
|
89
101
|
export const randomTxHash = (): TxHash => TxHash.random();
|
|
90
102
|
|
|
91
103
|
export const mockTx = async (
|
|
@@ -134,7 +146,7 @@ export const mockTx = async (
|
|
|
134
146
|
const data = PrivateKernelTailCircuitPublicInputs.empty();
|
|
135
147
|
const firstNullifier = new Nullifier(new Fr(seed + 1), Fr.ZERO, 0);
|
|
136
148
|
data.constants.anchorBlockHeader = anchorBlockHeader;
|
|
137
|
-
data.constants.txContext.gasSettings = GasSettings.
|
|
149
|
+
data.constants.txContext.gasSettings = GasSettings.fallback({ gasLimits, maxFeesPerGas, maxPriorityFeesPerGas });
|
|
138
150
|
data.feePayer = feePayer ?? (await AztecAddress.random());
|
|
139
151
|
data.gasUsed = gasUsed;
|
|
140
152
|
data.constants.txContext.chainId = chainId;
|
|
@@ -200,7 +212,7 @@ export async function mockProcessedTx({
|
|
|
200
212
|
db,
|
|
201
213
|
chainId = Fr.ZERO,
|
|
202
214
|
version = Fr.ZERO,
|
|
203
|
-
gasSettings = GasSettings.
|
|
215
|
+
gasSettings = GasSettings.fallback({ maxFeesPerGas: new GasFees(10, 10) }),
|
|
204
216
|
vkTreeRoot = Fr.ZERO,
|
|
205
217
|
protocolContracts = makeProtocolContracts(seed + 0x100),
|
|
206
218
|
globalVariables = GlobalVariables.empty(),
|
|
@@ -519,6 +531,7 @@ export interface MakeConsensusPayloadOptions {
|
|
|
519
531
|
txHashes?: TxHash[];
|
|
520
532
|
txs?: Tx[];
|
|
521
533
|
feeAssetPriceModifier?: bigint;
|
|
534
|
+
signatureContext?: CoordinationSignatureContext;
|
|
522
535
|
}
|
|
523
536
|
|
|
524
537
|
export interface MakeBlockProposalOptions {
|
|
@@ -529,6 +542,7 @@ export interface MakeBlockProposalOptions {
|
|
|
529
542
|
archiveRoot?: Fr;
|
|
530
543
|
txHashes?: TxHash[];
|
|
531
544
|
txs?: Tx[];
|
|
545
|
+
signatureContext?: CoordinationSignatureContext;
|
|
532
546
|
}
|
|
533
547
|
|
|
534
548
|
export interface MakeCheckpointProposalOptions {
|
|
@@ -536,6 +550,7 @@ export interface MakeCheckpointProposalOptions {
|
|
|
536
550
|
checkpointHeader?: CheckpointHeader;
|
|
537
551
|
archiveRoot?: Fr;
|
|
538
552
|
feeAssetPriceModifier?: bigint;
|
|
553
|
+
signatureContext?: CoordinationSignatureContext;
|
|
539
554
|
/** Options for the lastBlock - if undefined, no lastBlock is included */
|
|
540
555
|
lastBlock?: {
|
|
541
556
|
blockHeader?: BlockHeader;
|
|
@@ -546,10 +561,7 @@ export interface MakeCheckpointProposalOptions {
|
|
|
546
561
|
}
|
|
547
562
|
|
|
548
563
|
// eslint-disable-next-line @typescript-eslint/no-unused-vars
|
|
549
|
-
const makeAndSignConsensusPayload = (
|
|
550
|
-
domainSeparator: SignatureDomainSeparator,
|
|
551
|
-
options?: MakeConsensusPayloadOptions,
|
|
552
|
-
) => {
|
|
564
|
+
const makeAndSignConsensusPayload = (options?: MakeConsensusPayloadOptions) => {
|
|
553
565
|
const header = options?.header ?? makeCheckpointHeader(1);
|
|
554
566
|
const { signer = Secp256k1Signer.random(), archive = Fr.random(), feeAssetPriceModifier = 0n } = options ?? {};
|
|
555
567
|
|
|
@@ -557,9 +569,10 @@ const makeAndSignConsensusPayload = (
|
|
|
557
569
|
header,
|
|
558
570
|
archive,
|
|
559
571
|
feeAssetPriceModifier,
|
|
572
|
+
signatureContext: TEST_COORDINATION_SIGNATURE_CONTEXT,
|
|
560
573
|
});
|
|
561
574
|
|
|
562
|
-
const hash =
|
|
575
|
+
const hash = getHashedSignaturePayloadTypedData(payload);
|
|
563
576
|
const signature = signer.sign(hash);
|
|
564
577
|
|
|
565
578
|
return { blockNumber: header.slotNumber, payload, signature };
|
|
@@ -569,10 +582,7 @@ export const makeAndSignCommitteeAttestationsAndSigners = (
|
|
|
569
582
|
attestationsAndSigners: CommitteeAttestationsAndSigners,
|
|
570
583
|
signer: Secp256k1Signer = Secp256k1Signer.random(),
|
|
571
584
|
) => {
|
|
572
|
-
const hash =
|
|
573
|
-
attestationsAndSigners,
|
|
574
|
-
SignatureDomainSeparator.attestationsAndSigners,
|
|
575
|
-
);
|
|
585
|
+
const hash = getHashedSignaturePayloadTypedData(attestationsAndSigners);
|
|
576
586
|
return signer.sign(hash);
|
|
577
587
|
};
|
|
578
588
|
|
|
@@ -584,41 +594,51 @@ export const makeBlockProposal = (options?: MakeBlockProposalOptions): Promise<B
|
|
|
584
594
|
const txHashes = options?.txHashes ?? [0, 1, 2, 3, 4, 5].map(() => TxHash.random());
|
|
585
595
|
const txs = options?.txs;
|
|
586
596
|
const signer = options?.signer ?? Secp256k1Signer.random();
|
|
597
|
+
const signatureContext = options?.signatureContext ?? TEST_COORDINATION_SIGNATURE_CONTEXT;
|
|
587
598
|
|
|
588
599
|
return BlockProposal.createProposalFromSigner(
|
|
589
600
|
blockHeader,
|
|
601
|
+
CheckpointNumber(1),
|
|
590
602
|
indexWithinCheckpoint,
|
|
591
603
|
inHash,
|
|
592
604
|
archiveRoot,
|
|
593
605
|
txHashes,
|
|
594
606
|
txs,
|
|
595
|
-
|
|
607
|
+
signatureContext,
|
|
608
|
+
(typedData, _context) => Promise.resolve(signTypedData(signer, typedData)),
|
|
609
|
+
(typedData, _context) => Promise.resolve(signTypedData(signer, typedData)),
|
|
596
610
|
);
|
|
597
611
|
};
|
|
598
612
|
|
|
599
|
-
export const makeCheckpointProposal = (options?: MakeCheckpointProposalOptions): Promise<CheckpointProposal> => {
|
|
600
|
-
const blockHeader = options?.lastBlock?.blockHeader ?? makeBlockHeader(1);
|
|
613
|
+
export const makeCheckpointProposal = async (options?: MakeCheckpointProposalOptions): Promise<CheckpointProposal> => {
|
|
601
614
|
const checkpointHeader = options?.checkpointHeader ?? makeCheckpointHeader(1);
|
|
602
615
|
const archiveRoot = options?.archiveRoot ?? Fr.random();
|
|
603
616
|
const feeAssetPriceModifier = options?.feeAssetPriceModifier ?? 0n;
|
|
604
617
|
const signer = options?.signer ?? Secp256k1Signer.random();
|
|
605
|
-
|
|
606
|
-
|
|
607
|
-
|
|
608
|
-
|
|
609
|
-
|
|
610
|
-
|
|
611
|
-
|
|
618
|
+
const signatureContext = options?.signatureContext ?? TEST_COORDINATION_SIGNATURE_CONTEXT;
|
|
619
|
+
|
|
620
|
+
// Build a signed block proposal if lastBlock options are provided
|
|
621
|
+
const lastBlockProposal = options?.lastBlock
|
|
622
|
+
? await makeBlockProposal({
|
|
623
|
+
blockHeader: options.lastBlock.blockHeader,
|
|
624
|
+
indexWithinCheckpoint: options.lastBlock.indexWithinCheckpoint ?? IndexWithinCheckpoint(4),
|
|
625
|
+
inHash: checkpointHeader.inHash,
|
|
626
|
+
archiveRoot,
|
|
627
|
+
txHashes: options.lastBlock.txHashes,
|
|
612
628
|
txs: options.lastBlock.txs,
|
|
613
|
-
|
|
629
|
+
signer,
|
|
630
|
+
signatureContext,
|
|
631
|
+
})
|
|
614
632
|
: undefined;
|
|
615
633
|
|
|
616
634
|
return CheckpointProposal.createProposalFromSigner(
|
|
617
635
|
checkpointHeader,
|
|
618
636
|
archiveRoot,
|
|
637
|
+
CheckpointNumber(1),
|
|
619
638
|
feeAssetPriceModifier,
|
|
620
|
-
|
|
621
|
-
|
|
639
|
+
lastBlockProposal,
|
|
640
|
+
signatureContext,
|
|
641
|
+
typedData => Promise.resolve(signTypedData(signer, typedData)),
|
|
622
642
|
);
|
|
623
643
|
};
|
|
624
644
|
|
|
@@ -632,6 +652,7 @@ export type MakeCheckpointAttestationOptions = {
|
|
|
632
652
|
attesterSigner?: Secp256k1Signer;
|
|
633
653
|
proposerSigner?: Secp256k1Signer;
|
|
634
654
|
signer?: Secp256k1Signer;
|
|
655
|
+
signatureContext?: CoordinationSignatureContext;
|
|
635
656
|
};
|
|
636
657
|
|
|
637
658
|
/**
|
|
@@ -641,26 +662,27 @@ export const makeCheckpointAttestation = (options: MakeCheckpointAttestationOpti
|
|
|
641
662
|
const header = options.header ?? makeCheckpointHeader(1);
|
|
642
663
|
const archive = options.archive ?? Fr.random();
|
|
643
664
|
const feeAssetPriceModifier = options.feeAssetPriceModifier ?? 0n;
|
|
665
|
+
const signatureContext = options.signatureContext ?? TEST_COORDINATION_SIGNATURE_CONTEXT;
|
|
644
666
|
const { signer, attesterSigner = signer, proposerSigner = signer } = options;
|
|
645
667
|
|
|
646
|
-
const payload = new ConsensusPayload(header, archive, feeAssetPriceModifier);
|
|
668
|
+
const payload = new ConsensusPayload(header, archive, feeAssetPriceModifier, signatureContext);
|
|
647
669
|
|
|
648
670
|
// Sign as attester
|
|
649
|
-
const attestationHash =
|
|
650
|
-
payload,
|
|
651
|
-
SignatureDomainSeparator.checkpointAttestation,
|
|
652
|
-
);
|
|
671
|
+
const attestationHash = getHashedSignaturePayloadTypedData(payload);
|
|
653
672
|
const attestationSigner = attesterSigner ?? Secp256k1Signer.random();
|
|
654
673
|
const attestationSignature = attestationSigner.sign(attestationHash);
|
|
655
674
|
|
|
656
675
|
// Sign as proposer - use CheckpointProposal's payload format (serializeToBuffer)
|
|
657
676
|
// This is different from ConsensusPayload's format (ABI encoding)
|
|
658
677
|
const proposalSignerToUse = proposerSigner ?? Secp256k1Signer.random();
|
|
659
|
-
const tempProposal = new CheckpointProposal(
|
|
660
|
-
|
|
661
|
-
|
|
662
|
-
|
|
678
|
+
const tempProposal = new CheckpointProposal(
|
|
679
|
+
header,
|
|
680
|
+
archive,
|
|
681
|
+
feeAssetPriceModifier,
|
|
682
|
+
Signature.empty(),
|
|
683
|
+
signatureContext,
|
|
663
684
|
);
|
|
685
|
+
const proposalHash = getHashedSignaturePayloadTypedData(tempProposal);
|
|
664
686
|
const proposerSignature = proposalSignerToUse.sign(proposalHash);
|
|
665
687
|
|
|
666
688
|
return new CheckpointAttestation(payload, attestationSignature, proposerSignature);
|
|
@@ -673,13 +695,15 @@ export const makeCheckpointAttestationFromProposal = (
|
|
|
673
695
|
proposal: CheckpointProposal,
|
|
674
696
|
attesterSigner?: Secp256k1Signer,
|
|
675
697
|
): CheckpointAttestation => {
|
|
676
|
-
const payload = new ConsensusPayload(
|
|
698
|
+
const payload = new ConsensusPayload(
|
|
699
|
+
proposal.checkpointHeader,
|
|
700
|
+
proposal.archive,
|
|
701
|
+
proposal.feeAssetPriceModifier,
|
|
702
|
+
proposal.signatureContext,
|
|
703
|
+
);
|
|
677
704
|
|
|
678
705
|
// Sign as attester
|
|
679
|
-
const attestationHash =
|
|
680
|
-
payload,
|
|
681
|
-
SignatureDomainSeparator.checkpointAttestation,
|
|
682
|
-
);
|
|
706
|
+
const attestationHash = getHashedSignaturePayloadTypedData(payload);
|
|
683
707
|
const attestationSigner = attesterSigner ?? Secp256k1Signer.random();
|
|
684
708
|
const attestationSignature = attestationSigner.sign(attestationHash);
|
|
685
709
|
|