@aztec/simulator 0.0.1-commit.b655e406 → 0.0.1-commit.bf2612ae
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/README.md +2 -0
- package/dest/client.d.ts +1 -1
- package/dest/common/errors.d.ts +2 -2
- package/dest/common/errors.d.ts.map +1 -1
- package/dest/common/index.d.ts +1 -1
- package/dest/common/stats/index.d.ts +1 -1
- package/dest/common/stats/stats.d.ts +1 -1
- package/dest/private/acvm/acvm.d.ts +1 -1
- package/dest/private/acvm/acvm_types.d.ts +1 -1
- package/dest/private/acvm/deserialize.d.ts +2 -2
- package/dest/private/acvm/deserialize.d.ts.map +1 -1
- package/dest/private/acvm/deserialize.js +1 -1
- package/dest/private/acvm/index.d.ts +1 -1
- package/dest/private/acvm/serialize.d.ts +2 -2
- package/dest/private/acvm/serialize.d.ts.map +1 -1
- package/dest/private/acvm/serialize.js +1 -1
- package/dest/private/acvm_native.d.ts +1 -1
- package/dest/private/acvm_native.d.ts.map +1 -1
- package/dest/private/acvm_wasm.d.ts +1 -1
- package/dest/private/acvm_wasm.d.ts.map +1 -1
- package/dest/private/acvm_wasm_with_blobs.d.ts +1 -1
- package/dest/private/acvm_wasm_with_blobs.d.ts.map +1 -1
- package/dest/private/circuit_recording/circuit_recorder.d.ts +1 -1
- package/dest/private/circuit_recording/circuit_recorder.d.ts.map +1 -1
- package/dest/private/circuit_recording/circuit_recorder.js +16 -15
- package/dest/private/circuit_recording/file_circuit_recorder.d.ts +1 -1
- package/dest/private/circuit_recording/file_circuit_recorder.d.ts.map +1 -1
- package/dest/private/circuit_recording/memory_circuit_recorder.d.ts +1 -1
- package/dest/private/circuit_recording/memory_circuit_recorder.d.ts.map +1 -1
- package/dest/private/circuit_recording/simulator_recorder_wrapper.d.ts +1 -1
- package/dest/private/circuit_recording/simulator_recorder_wrapper.d.ts.map +1 -1
- package/dest/private/circuit_simulator.d.ts +1 -1
- package/dest/private/factory.d.ts +1 -1
- package/dest/public/avm/avm_context.d.ts +3 -3
- package/dest/public/avm/avm_context.d.ts.map +1 -1
- package/dest/public/avm/avm_contract_call_result.d.ts +6 -6
- package/dest/public/avm/avm_contract_call_result.d.ts.map +1 -1
- package/dest/public/avm/avm_contract_call_result.js +3 -3
- package/dest/public/avm/avm_execution_environment.d.ts +9 -8
- package/dest/public/avm/avm_execution_environment.d.ts.map +1 -1
- package/dest/public/avm/avm_execution_environment.js +5 -8
- package/dest/public/avm/avm_gas.d.ts +2 -2
- package/dest/public/avm/avm_gas.d.ts.map +1 -1
- package/dest/public/avm/avm_machine_state.d.ts +7 -6
- package/dest/public/avm/avm_machine_state.d.ts.map +1 -1
- package/dest/public/avm/avm_machine_state.js +3 -2
- package/dest/public/avm/avm_memory_types.d.ts +14 -14
- package/dest/public/avm/avm_memory_types.d.ts.map +1 -1
- package/dest/public/avm/avm_memory_types.js +4 -1
- package/dest/public/avm/avm_simulator.d.ts +5 -3
- package/dest/public/avm/avm_simulator.d.ts.map +1 -1
- package/dest/public/avm/avm_simulator.js +13 -11
- package/dest/public/avm/avm_simulator_interface.d.ts +1 -1
- package/dest/public/avm/calldata.d.ts +51 -0
- package/dest/public/avm/calldata.d.ts.map +1 -0
- package/dest/public/avm/calldata.js +63 -0
- package/dest/public/avm/errors.d.ts +8 -2
- package/dest/public/avm/errors.d.ts.map +1 -1
- package/dest/public/avm/errors.js +14 -2
- package/dest/public/avm/fixtures/avm_simulation_tester.d.ts +1 -1
- package/dest/public/avm/fixtures/avm_simulation_tester.d.ts.map +1 -1
- package/dest/public/avm/fixtures/avm_simulation_tester.js +15 -5
- package/dest/public/avm/fixtures/base_avm_simulation_tester.d.ts +2 -2
- package/dest/public/avm/fixtures/base_avm_simulation_tester.d.ts.map +1 -1
- package/dest/public/avm/fixtures/base_avm_simulation_tester.js +1 -1
- package/dest/public/avm/fixtures/initializers.d.ts +2 -3
- package/dest/public/avm/fixtures/initializers.d.ts.map +1 -1
- package/dest/public/avm/fixtures/initializers.js +8 -5
- package/dest/public/avm/fixtures/utils.d.ts +4 -3
- package/dest/public/avm/fixtures/utils.d.ts.map +1 -1
- package/dest/public/avm/fixtures/utils.js +3 -2
- package/dest/public/avm/index.d.ts +1 -1
- package/dest/public/avm/opcodes/accrued_substate.d.ts +15 -15
- package/dest/public/avm/opcodes/accrued_substate.d.ts.map +1 -1
- package/dest/public/avm/opcodes/accrued_substate.js +33 -29
- package/dest/public/avm/opcodes/addressing_mode.d.ts +1 -1
- package/dest/public/avm/opcodes/addressing_mode.d.ts.map +1 -1
- package/dest/public/avm/opcodes/addressing_mode.js +2 -2
- package/dest/public/avm/opcodes/arithmetic.d.ts +3 -1
- package/dest/public/avm/opcodes/arithmetic.d.ts.map +1 -1
- package/dest/public/avm/opcodes/arithmetic.js +12 -2
- package/dest/public/avm/opcodes/bitwise.d.ts +3 -3
- package/dest/public/avm/opcodes/bitwise.d.ts.map +1 -1
- package/dest/public/avm/opcodes/bitwise.js +5 -5
- package/dest/public/avm/opcodes/comparators.d.ts +1 -1
- package/dest/public/avm/opcodes/comparators.d.ts.map +1 -1
- package/dest/public/avm/opcodes/comparators.js +1 -1
- package/dest/public/avm/opcodes/contract.d.ts +3 -3
- package/dest/public/avm/opcodes/contract.d.ts.map +1 -1
- package/dest/public/avm/opcodes/contract.js +8 -8
- package/dest/public/avm/opcodes/control_flow.d.ts +3 -3
- package/dest/public/avm/opcodes/control_flow.d.ts.map +1 -1
- package/dest/public/avm/opcodes/control_flow.js +4 -4
- package/dest/public/avm/opcodes/conversion.d.ts +3 -3
- package/dest/public/avm/opcodes/conversion.d.ts.map +1 -1
- package/dest/public/avm/opcodes/conversion.js +4 -4
- package/dest/public/avm/opcodes/ec_add.d.ts +3 -3
- package/dest/public/avm/opcodes/ec_add.d.ts.map +1 -1
- package/dest/public/avm/opcodes/ec_add.js +17 -8
- package/dest/public/avm/opcodes/environment_getters.d.ts +5 -5
- package/dest/public/avm/opcodes/environment_getters.d.ts.map +1 -1
- package/dest/public/avm/opcodes/environment_getters.js +6 -6
- package/dest/public/avm/opcodes/external_calls.d.ts +9 -9
- package/dest/public/avm/opcodes/external_calls.d.ts.map +1 -1
- package/dest/public/avm/opcodes/external_calls.js +23 -22
- package/dest/public/avm/opcodes/hashing.d.ts +7 -7
- package/dest/public/avm/opcodes/hashing.d.ts.map +1 -1
- package/dest/public/avm/opcodes/hashing.js +21 -16
- package/dest/public/avm/opcodes/index.d.ts +1 -1
- package/dest/public/avm/opcodes/instruction.d.ts +2 -2
- package/dest/public/avm/opcodes/instruction.d.ts.map +1 -1
- package/dest/public/avm/opcodes/instruction_impl.d.ts +4 -4
- package/dest/public/avm/opcodes/instruction_impl.d.ts.map +1 -1
- package/dest/public/avm/opcodes/instruction_impl.js +4 -4
- package/dest/public/avm/opcodes/memory.d.ts +13 -13
- package/dest/public/avm/opcodes/memory.d.ts.map +1 -1
- package/dest/public/avm/opcodes/memory.js +26 -26
- package/dest/public/avm/opcodes/misc.d.ts +3 -3
- package/dest/public/avm/opcodes/misc.d.ts.map +1 -1
- package/dest/public/avm/opcodes/misc.js +8 -8
- package/dest/public/avm/opcodes/storage.d.ts +14 -13
- package/dest/public/avm/opcodes/storage.d.ts.map +1 -1
- package/dest/public/avm/opcodes/storage.js +34 -24
- package/dest/public/avm/revert_reason.d.ts +2 -2
- package/dest/public/avm/revert_reason.d.ts.map +1 -1
- package/dest/public/avm/revert_reason.js +3 -2
- package/dest/public/avm/serialization/buffer_cursor.d.ts +1 -1
- package/dest/public/avm/serialization/buffer_cursor.d.ts.map +1 -1
- package/dest/public/avm/serialization/bytecode_serialization.d.ts +1 -1
- package/dest/public/avm/serialization/bytecode_serialization.d.ts.map +1 -1
- package/dest/public/avm/serialization/bytecode_serialization.js +9 -6
- package/dest/public/avm/serialization/instruction_serialization.d.ts +1 -1
- package/dest/public/avm/serialization/instruction_serialization.js +1 -1
- package/dest/public/avm/test_utils.d.ts +2 -2
- package/dest/public/avm/test_utils.d.ts.map +1 -1
- package/dest/public/avm/test_utils.js +1 -1
- package/dest/public/contracts_db_checkpoint.d.ts +16 -0
- package/dest/public/contracts_db_checkpoint.d.ts.map +1 -0
- package/dest/public/contracts_db_checkpoint.js +30 -0
- package/dest/public/db_interfaces.d.ts +14 -2
- package/dest/public/db_interfaces.d.ts.map +1 -1
- package/dest/public/debug_fn_name.d.ts +16 -3
- package/dest/public/debug_fn_name.d.ts.map +1 -1
- package/dest/public/debug_fn_name.js +31 -3
- package/dest/public/executor_metrics.d.ts +3 -2
- package/dest/public/executor_metrics.d.ts.map +1 -1
- package/dest/public/executor_metrics.js +9 -35
- package/dest/public/executor_metrics_interface.d.ts +3 -2
- package/dest/public/executor_metrics_interface.d.ts.map +1 -1
- package/dest/public/fixtures/amm_test.d.ts +1 -1
- package/dest/public/fixtures/amm_test.js +2 -2
- package/dest/public/fixtures/bulk_test.d.ts +3 -3
- package/dest/public/fixtures/bulk_test.d.ts.map +1 -1
- package/dest/public/fixtures/bulk_test.js +5 -69
- package/dest/public/fixtures/custom_bytecode_tester.d.ts +29 -7
- package/dest/public/fixtures/custom_bytecode_tester.d.ts.map +1 -1
- package/dest/public/fixtures/custom_bytecode_tester.js +36 -12
- package/dest/public/fixtures/custom_bytecode_tests.d.ts +11 -8
- package/dest/public/fixtures/custom_bytecode_tests.d.ts.map +1 -1
- package/dest/public/fixtures/custom_bytecode_tests.js +83 -18
- package/dest/public/fixtures/index.d.ts +4 -2
- package/dest/public/fixtures/index.d.ts.map +1 -1
- package/dest/public/fixtures/index.js +3 -1
- package/dest/public/fixtures/minimal_public_tx.d.ts +2 -8
- package/dest/public/fixtures/minimal_public_tx.d.ts.map +1 -1
- package/dest/public/fixtures/minimal_public_tx.js +6 -16
- package/dest/public/fixtures/opcode_spammer.d.ts +123 -0
- package/dest/public/fixtures/opcode_spammer.d.ts.map +1 -0
- package/dest/public/fixtures/opcode_spammer.js +1693 -0
- package/dest/public/fixtures/public_tx_simulation_tester.d.ts +24 -6
- package/dest/public/fixtures/public_tx_simulation_tester.d.ts.map +1 -1
- package/dest/public/fixtures/public_tx_simulation_tester.js +62 -21
- package/dest/public/fixtures/simple_contract_data_source.d.ts +5 -4
- package/dest/public/fixtures/simple_contract_data_source.d.ts.map +1 -1
- package/dest/public/fixtures/simple_contract_data_source.js +4 -4
- package/dest/public/fixtures/token_test.d.ts +6 -2
- package/dest/public/fixtures/token_test.d.ts.map +1 -1
- package/dest/public/fixtures/token_test.js +13 -12
- package/dest/public/fixtures/utils.d.ts +2 -2
- package/dest/public/fixtures/utils.d.ts.map +1 -1
- package/dest/public/fixtures/utils.js +4 -3
- package/dest/public/fuzzing/avm_fuzzer_simulator.d.ts +60 -0
- package/dest/public/fuzzing/avm_fuzzer_simulator.d.ts.map +1 -0
- package/dest/public/fuzzing/avm_fuzzer_simulator.js +171 -0
- package/dest/public/fuzzing/avm_simulator_bin.d.ts +2 -0
- package/dest/public/fuzzing/avm_simulator_bin.d.ts.map +1 -0
- package/dest/public/fuzzing/avm_simulator_bin.js +118 -0
- package/dest/public/hinting_db_sources.d.ts +14 -4
- package/dest/public/hinting_db_sources.d.ts.map +1 -1
- package/dest/public/hinting_db_sources.js +71 -13
- package/dest/public/index.d.ts +3 -2
- package/dest/public/index.d.ts.map +1 -1
- package/dest/public/index.js +1 -1
- package/dest/public/public_db_sources.d.ts +22 -63
- package/dest/public/public_db_sources.d.ts.map +1 -1
- package/dest/public/public_db_sources.js +74 -131
- package/dest/public/public_errors.d.ts +1 -1
- package/dest/public/public_errors.d.ts.map +1 -1
- package/dest/public/public_processor/guarded_merkle_tree.d.ts +6 -4
- package/dest/public/public_processor/guarded_merkle_tree.d.ts.map +1 -1
- package/dest/public/public_processor/guarded_merkle_tree.js +5 -0
- package/dest/public/public_processor/public_processor.d.ts +12 -19
- package/dest/public/public_processor/public_processor.d.ts.map +1 -1
- package/dest/public/public_processor/public_processor.js +456 -64
- package/dest/public/public_processor/public_processor_metrics.d.ts +1 -1
- package/dest/public/public_processor/public_processor_metrics.d.ts.map +1 -1
- package/dest/public/public_processor/public_processor_metrics.js +12 -45
- package/dest/public/public_tx_simulator/contract_provider_for_cpp.d.ts +18 -0
- package/dest/public/public_tx_simulator/contract_provider_for_cpp.d.ts.map +1 -0
- package/dest/public/public_tx_simulator/contract_provider_for_cpp.js +98 -0
- package/dest/public/public_tx_simulator/cpp_public_tx_simulator.d.ts +34 -22
- package/dest/public/public_tx_simulator/cpp_public_tx_simulator.d.ts.map +1 -1
- package/dest/public/public_tx_simulator/cpp_public_tx_simulator.js +93 -50
- package/dest/public/public_tx_simulator/cpp_public_tx_simulator_with_hinted_dbs.d.ts +42 -0
- package/dest/public/public_tx_simulator/cpp_public_tx_simulator_with_hinted_dbs.d.ts.map +1 -0
- package/dest/public/public_tx_simulator/cpp_public_tx_simulator_with_hinted_dbs.js +86 -0
- package/dest/public/public_tx_simulator/cpp_vs_ts_public_tx_simulator.d.ts +30 -0
- package/dest/public/public_tx_simulator/cpp_vs_ts_public_tx_simulator.d.ts.map +1 -0
- package/dest/public/public_tx_simulator/cpp_vs_ts_public_tx_simulator.js +171 -0
- package/dest/public/public_tx_simulator/dumping_cpp_public_tx_simulator.d.ts +22 -0
- package/dest/public/public_tx_simulator/dumping_cpp_public_tx_simulator.d.ts.map +1 -0
- package/dest/public/public_tx_simulator/dumping_cpp_public_tx_simulator.js +52 -0
- package/dest/public/public_tx_simulator/factories.d.ts +13 -0
- package/dest/public/public_tx_simulator/factories.d.ts.map +1 -0
- package/dest/public/public_tx_simulator/factories.js +28 -0
- package/dest/public/public_tx_simulator/index.d.ts +5 -1
- package/dest/public/public_tx_simulator/index.d.ts.map +1 -1
- package/dest/public/public_tx_simulator/index.js +3 -0
- package/dest/public/public_tx_simulator/measured_public_tx_simulator.d.ts +14 -7
- package/dest/public/public_tx_simulator/measured_public_tx_simulator.d.ts.map +1 -1
- package/dest/public/public_tx_simulator/measured_public_tx_simulator.js +5 -5
- package/dest/public/public_tx_simulator/public_tx_context.d.ts +6 -3
- package/dest/public/public_tx_simulator/public_tx_context.d.ts.map +1 -1
- package/dest/public/public_tx_simulator/public_tx_context.js +13 -5
- package/dest/public/public_tx_simulator/public_tx_simulator.d.ts +13 -32
- package/dest/public/public_tx_simulator/public_tx_simulator.d.ts.map +1 -1
- package/dest/public/public_tx_simulator/public_tx_simulator.js +115 -129
- package/dest/public/public_tx_simulator/public_tx_simulator_interface.d.ts +25 -2
- package/dest/public/public_tx_simulator/public_tx_simulator_interface.d.ts.map +1 -1
- package/dest/public/public_tx_simulator/telemetry_public_tx_simulator.d.ts +4 -4
- package/dest/public/public_tx_simulator/telemetry_public_tx_simulator.d.ts.map +1 -1
- package/dest/public/public_tx_simulator/telemetry_public_tx_simulator.js +395 -19
- package/dest/public/side_effect_errors.d.ts +1 -1
- package/dest/public/side_effect_errors.d.ts.map +1 -1
- package/dest/public/side_effect_trace.d.ts +2 -2
- package/dest/public/side_effect_trace.d.ts.map +1 -1
- package/dest/public/side_effect_trace.js +1 -1
- package/dest/public/side_effect_trace_interface.d.ts +3 -4
- package/dest/public/side_effect_trace_interface.d.ts.map +1 -1
- package/dest/public/state_manager/index.d.ts +1 -1
- package/dest/public/state_manager/nullifiers.d.ts +2 -2
- package/dest/public/state_manager/nullifiers.d.ts.map +1 -1
- package/dest/public/state_manager/public_storage.d.ts +2 -2
- package/dest/public/state_manager/public_storage.d.ts.map +1 -1
- package/dest/public/state_manager/public_storage.js +1 -1
- package/dest/public/state_manager/state_manager.d.ts +9 -11
- package/dest/public/state_manager/state_manager.d.ts.map +1 -1
- package/dest/public/state_manager/state_manager.js +12 -8
- package/dest/public/test_executor_metrics.d.ts +4 -3
- package/dest/public/test_executor_metrics.d.ts.map +1 -1
- package/dest/public/test_executor_metrics.js +5 -4
- package/dest/public/unique_class_ids.d.ts +1 -1
- package/dest/public/unique_class_ids.d.ts.map +1 -1
- package/dest/public/utils.d.ts +1 -1
- package/dest/server.d.ts +1 -1
- package/dest/testing.d.ts +1 -1
- package/package.json +21 -20
- package/src/common/errors.ts +1 -1
- package/src/private/acvm/deserialize.ts +1 -1
- package/src/private/acvm/serialize.ts +1 -1
- package/src/private/circuit_recording/circuit_recorder.ts +17 -16
- package/src/public/avm/avm_context.ts +2 -2
- package/src/public/avm/avm_contract_call_result.ts +8 -6
- package/src/public/avm/avm_execution_environment.ts +13 -10
- package/src/public/avm/avm_gas.ts +3 -3
- package/src/public/avm/avm_machine_state.ts +7 -6
- package/src/public/avm/avm_memory_types.ts +5 -1
- package/src/public/avm/avm_simulator.ts +19 -14
- package/src/public/avm/calldata.ts +100 -0
- package/src/public/avm/errors.ts +17 -3
- package/src/public/avm/fixtures/avm_simulation_tester.ts +18 -4
- package/src/public/avm/fixtures/base_avm_simulation_tester.ts +1 -1
- package/src/public/avm/fixtures/initializers.ts +10 -11
- package/src/public/avm/fixtures/utils.ts +3 -2
- package/src/public/avm/opcodes/accrued_substate.ts +21 -15
- package/src/public/avm/opcodes/addressing_mode.ts +2 -2
- package/src/public/avm/opcodes/arithmetic.ts +14 -2
- package/src/public/avm/opcodes/bitwise.ts +3 -3
- package/src/public/avm/opcodes/comparators.ts +1 -1
- package/src/public/avm/opcodes/contract.ts +4 -7
- package/src/public/avm/opcodes/control_flow.ts +2 -2
- package/src/public/avm/opcodes/conversion.ts +3 -3
- package/src/public/avm/opcodes/ec_add.ts +15 -6
- package/src/public/avm/opcodes/environment_getters.ts +7 -7
- package/src/public/avm/opcodes/external_calls.ts +17 -15
- package/src/public/avm/opcodes/hashing.ts +16 -10
- package/src/public/avm/opcodes/instruction_impl.ts +2 -2
- package/src/public/avm/opcodes/memory.ts +20 -20
- package/src/public/avm/opcodes/misc.ts +6 -6
- package/src/public/avm/opcodes/storage.ts +30 -22
- package/src/public/avm/revert_reason.ts +6 -3
- package/src/public/avm/serialization/bytecode_serialization.ts +17 -6
- package/src/public/avm/serialization/instruction_serialization.ts +1 -1
- package/src/public/avm/test_utils.ts +1 -1
- package/src/public/contracts_db_checkpoint.ts +41 -0
- package/src/public/db_interfaces.ts +16 -1
- package/src/public/debug_fn_name.ts +39 -5
- package/src/public/executor_metrics.ts +9 -35
- package/src/public/executor_metrics_interface.ts +2 -1
- package/src/public/fixtures/amm_test.ts +2 -2
- package/src/public/fixtures/bulk_test.ts +9 -9
- package/src/public/fixtures/custom_bytecode_tester.ts +54 -20
- package/src/public/fixtures/custom_bytecode_tests.ts +111 -18
- package/src/public/fixtures/index.ts +7 -1
- package/src/public/fixtures/minimal_public_tx.ts +7 -17
- package/src/public/fixtures/opcode_spammer.ts +1754 -0
- package/src/public/fixtures/public_tx_simulation_tester.ts +85 -21
- package/src/public/fixtures/simple_contract_data_source.ts +8 -9
- package/src/public/fixtures/token_test.ts +18 -10
- package/src/public/fixtures/utils.ts +2 -3
- package/src/public/fuzzing/avm_fuzzer_simulator.ts +288 -0
- package/src/public/fuzzing/avm_simulator_bin.ts +175 -0
- package/src/public/hinting_db_sources.ts +112 -10
- package/src/public/index.ts +6 -4
- package/src/public/public_db_sources.ts +93 -172
- package/src/public/public_processor/guarded_merkle_tree.ts +8 -3
- package/src/public/public_processor/public_processor.ts +86 -59
- package/src/public/public_processor/public_processor_metrics.ts +11 -45
- package/src/public/public_tx_simulator/contract_provider_for_cpp.ts +121 -0
- package/src/public/public_tx_simulator/cpp_public_tx_simulator.ts +137 -57
- package/src/public/public_tx_simulator/cpp_public_tx_simulator_with_hinted_dbs.ts +132 -0
- package/src/public/public_tx_simulator/cpp_vs_ts_public_tx_simulator.ts +237 -0
- package/src/public/public_tx_simulator/dumping_cpp_public_tx_simulator.ts +81 -0
- package/src/public/public_tx_simulator/factories.ts +41 -0
- package/src/public/public_tx_simulator/index.ts +4 -0
- package/src/public/public_tx_simulator/measured_public_tx_simulator.ts +10 -14
- package/src/public/public_tx_simulator/public_tx_context.ts +9 -3
- package/src/public/public_tx_simulator/public_tx_simulator.ts +171 -196
- package/src/public/public_tx_simulator/public_tx_simulator_interface.ts +24 -2
- package/src/public/public_tx_simulator/telemetry_public_tx_simulator.ts +3 -3
- package/src/public/side_effect_trace.ts +1 -1
- package/src/public/side_effect_trace_interface.ts +1 -1
- package/src/public/state_manager/nullifiers.ts +1 -1
- package/src/public/state_manager/public_storage.ts +1 -1
- package/src/public/state_manager/state_manager.ts +16 -30
- package/src/public/test_executor_metrics.ts +7 -5
- package/dest/public/tx_contract_cache.d.ts +0 -41
- package/dest/public/tx_contract_cache.d.ts.map +0 -1
- package/dest/public/tx_contract_cache.js +0 -49
- package/src/public/tx_contract_cache.ts +0 -69
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
import { Fr } from '@aztec/foundation/
|
|
1
|
+
import { Fr } from '@aztec/foundation/curves/bn254';
|
|
2
2
|
import type { FunctionSelector } from '@aztec/stdlib/abi';
|
|
3
3
|
import type { AztecAddress } from '@aztec/stdlib/aztec-address';
|
|
4
|
-
import { type ContractClassPublic, type ContractDataSource, type ContractInstanceWithAddress } from '@aztec/stdlib/contract';
|
|
4
|
+
import { type ContractClassPublic, type ContractDataSource, type ContractDeploymentData, type ContractInstanceWithAddress } from '@aztec/stdlib/contract';
|
|
5
5
|
import type { MerkleTreeWriteOperations } from '@aztec/stdlib/interfaces/server';
|
|
6
6
|
import { MerkleTreeId } from '@aztec/stdlib/trees';
|
|
7
7
|
import { TreeSnapshots, type Tx } from '@aztec/stdlib/tx';
|
|
@@ -9,84 +9,43 @@ import type { UInt64 } from '@aztec/stdlib/types';
|
|
|
9
9
|
import type { PublicContractsDBInterface, PublicStateDBInterface } from './db_interfaces.js';
|
|
10
10
|
/**
|
|
11
11
|
* Implements the PublicContractsDBInterface using a ContractDataSource.
|
|
12
|
-
*
|
|
13
|
-
* Separates block-level contract information (from processed/included txs) from the
|
|
14
|
-
* current tx's contract information (which may be cleared on tx revert/death).
|
|
12
|
+
* Uses a stack-based checkpoint model for managing contract state.
|
|
15
13
|
*/
|
|
16
14
|
export declare class PublicContractsDB implements PublicContractsDBInterface {
|
|
17
15
|
private dataSource;
|
|
18
|
-
private
|
|
19
|
-
private currentTxRevertibleCache;
|
|
20
|
-
private blockCache;
|
|
21
|
-
private bytecodeCommitmentCache;
|
|
16
|
+
private contractStateStack;
|
|
22
17
|
private log;
|
|
23
18
|
constructor(dataSource: ContractDataSource);
|
|
24
|
-
|
|
25
|
-
* Add new contracts from a transaction
|
|
26
|
-
* @param tx - The transaction to add contracts from.
|
|
27
|
-
*/
|
|
19
|
+
addContracts(contractDeploymentData: ContractDeploymentData): Promise<void>;
|
|
28
20
|
addNewContracts(tx: Tx): Promise<void>;
|
|
29
21
|
/**
|
|
30
|
-
*
|
|
31
|
-
*
|
|
32
|
-
*/
|
|
33
|
-
addNewNonRevertibleContracts(tx: Tx): Promise<void>;
|
|
34
|
-
/**
|
|
35
|
-
* Add revertible contracts from a transaction
|
|
36
|
-
* @param tx - The transaction to add revertible contracts from.
|
|
37
|
-
*/
|
|
38
|
-
addNewRevertibleContracts(tx: Tx): Promise<void>;
|
|
39
|
-
/**
|
|
40
|
-
* Add non-revertible contract classes from a transaction
|
|
41
|
-
* For private-only txs, this will be all contract classes (found in tx.data.forPublic)
|
|
42
|
-
* @param tx - The transaction to add non-revertible contract classes from.
|
|
43
|
-
*/
|
|
44
|
-
private addNonRevertibleContractClasses;
|
|
45
|
-
/**
|
|
46
|
-
* Add revertible contract classes from a transaction
|
|
47
|
-
* None for private-only txs.
|
|
48
|
-
* @param tx - The transaction to add revertible contract classes from.
|
|
49
|
-
*/
|
|
50
|
-
private addRevertibleContractClasses;
|
|
51
|
-
/**
|
|
52
|
-
* Add non-revertible contract instances from a transaction
|
|
53
|
-
* For private-only txs, this will be all contract instances (found in tx.data.forRollup)
|
|
54
|
-
* @param tx - The transaction to add non-revertible contract instances from.
|
|
55
|
-
*/
|
|
56
|
-
private addNonRevertibleContractInstances;
|
|
57
|
-
/**
|
|
58
|
-
* Add revertible contract instances from a transaction
|
|
59
|
-
* None for private-only txs.
|
|
60
|
-
* @param tx - The transaction to add revertible contract instances from.
|
|
61
|
-
*/
|
|
62
|
-
private addRevertibleContractInstances;
|
|
63
|
-
/**
|
|
64
|
-
* Given a tx's siloed contract class logs, add the contract classes to the cache
|
|
65
|
-
* @param siloedContractClassLogs - Contract class logs to process
|
|
66
|
-
* @param cache - The cache to store the contract classes in
|
|
67
|
-
* @param cacheType - Type of cache (for logging)
|
|
22
|
+
* Creates a new checkpoint, copying the current state for upcoming modifications,
|
|
23
|
+
* and enabling rollbacks to current state in case of a revert.
|
|
68
24
|
*/
|
|
69
|
-
|
|
25
|
+
createCheckpoint(): void;
|
|
70
26
|
/**
|
|
71
|
-
*
|
|
72
|
-
* @param contractInstanceLogs - Contract instance logs to process
|
|
73
|
-
* @param cache - The cache to store the contract instances in
|
|
74
|
-
* @param cacheType - Type of cache (for logging)
|
|
27
|
+
* Commits the current checkpoint, accepting its state latest.
|
|
75
28
|
*/
|
|
76
|
-
|
|
29
|
+
commitCheckpoint(): void;
|
|
77
30
|
/**
|
|
78
|
-
*
|
|
31
|
+
* Commits the current checkpoint, not erroring if there is no checkpoint
|
|
32
|
+
* to commit. This is useful to do a sanity commit at the end of tx execution,
|
|
33
|
+
* doing nothing if the checkpoint was already reverted, but truly committing
|
|
34
|
+
* otherwise.
|
|
79
35
|
*/
|
|
80
|
-
|
|
36
|
+
commitCheckpointOkIfNone(): void;
|
|
81
37
|
/**
|
|
82
|
-
*
|
|
83
|
-
*
|
|
38
|
+
* Reverts the current checkpoint, discarding its state and rolling back
|
|
39
|
+
* to the state as of the latest checkpoint.
|
|
84
40
|
*/
|
|
85
|
-
|
|
41
|
+
revertCheckpoint(): void;
|
|
42
|
+
private getCurrentState;
|
|
86
43
|
getContractInstance(address: AztecAddress, timestamp: UInt64): Promise<ContractInstanceWithAddress | undefined>;
|
|
87
44
|
getContractClass(contractClassId: Fr): Promise<ContractClassPublic | undefined>;
|
|
88
45
|
getBytecodeCommitment(contractClassId: Fr): Promise<Fr | undefined>;
|
|
89
46
|
getDebugFunctionName(address: AztecAddress, selector: FunctionSelector): Promise<string | undefined>;
|
|
47
|
+
private addContractClassesFromEvents;
|
|
48
|
+
private addContractInstancesFromEvents;
|
|
90
49
|
}
|
|
91
50
|
/**
|
|
92
51
|
* A high-level class that provides access to the merkle trees.
|
|
@@ -117,4 +76,4 @@ export declare class PublicTreesDB implements PublicStateDBInterface {
|
|
|
117
76
|
revertCheckpoint(): Promise<void>;
|
|
118
77
|
getTreeSnapshots(): Promise<TreeSnapshots>;
|
|
119
78
|
}
|
|
120
|
-
//# sourceMappingURL=
|
|
79
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljX2RiX3NvdXJjZXMuZC50cyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9wdWJsaWMvcHVibGljX2RiX3NvdXJjZXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBTUEsT0FBTyxFQUFFLEVBQUUsRUFBRSxNQUFNLGdDQUFnQyxDQUFDO0FBS3BELE9BQU8sS0FBSyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFFMUQsT0FBTyxLQUFLLEVBQUUsWUFBWSxFQUFFLE1BQU0sNkJBQTZCLENBQUM7QUFDaEUsT0FBTyxFQUVMLEtBQUssbUJBQW1CLEVBQ3hCLEtBQUssa0JBQWtCLEVBQ3ZCLEtBQUssc0JBQXNCLEVBQzNCLEtBQUssMkJBQTJCLEVBRWpDLE1BQU0sd0JBQXdCLENBQUM7QUFFaEMsT0FBTyxLQUFLLEVBQUUseUJBQXlCLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQztBQUVqRixPQUFPLEVBQ0wsWUFBWSxFQUtiLE1BQU0scUJBQXFCLENBQUM7QUFDN0IsT0FBTyxFQUFFLGFBQWEsRUFBRSxLQUFLLEVBQUUsRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBQzFELE9BQU8sS0FBSyxFQUFFLE1BQU0sRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBS2xELE9BQU8sS0FBSyxFQUFFLDBCQUEwQixFQUFFLHNCQUFzQixFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFHN0Y7OztHQUdHO0FBQ0gscUJBQWEsaUJBQWtCLFlBQVcsMEJBQTBCO0lBS3RELE9BQU8sQ0FBQyxVQUFVO0lBSjlCLE9BQU8sQ0FBQyxrQkFBa0IsQ0FBMEQ7SUFFcEYsT0FBTyxDQUFDLEdBQUcsQ0FBbUQ7SUFFOUQsWUFBb0IsVUFBVSxFQUFFLGtCQUFrQixFQUFJO0lBRXpDLFlBQVksQ0FBQyxzQkFBc0IsRUFBRSxzQkFBc0IsR0FBRyxPQUFPLENBQUMsSUFBSSxDQUFDLENBWXZGO0lBRVksZUFBZSxDQUFDLEVBQUUsRUFBRSxFQUFFLEdBQUcsT0FBTyxDQUFDLElBQUksQ0FBQyxDQUlsRDtJQUVEOzs7T0FHRztJQUNJLGdCQUFnQixJQUFJLElBQUksQ0FJOUI7SUFFRDs7T0FFRztJQUNJLGdCQUFnQixJQUFJLElBQUksQ0FNOUI7SUFFRDs7Ozs7T0FLRztJQUNJLHdCQUF3QixJQUFJLElBQUksQ0FNdEM7SUFFRDs7O09BR0c7SUFDSSxnQkFBZ0IsSUFBSSxJQUFJLENBSzlCO0lBRUQsT0FBTyxDQUFDLGVBQWU7SUFhVixtQkFBbUIsQ0FDOUIsT0FBTyxFQUFFLFlBQVksRUFDckIsU0FBUyxFQUFFLE1BQU0sR0FDaEIsT0FBTyxDQUFDLDJCQUEyQixHQUFHLFNBQVMsQ0FBQyxDQUdsRDtJQUVZLGdCQUFnQixDQUFDLGVBQWUsRUFBRSxFQUFFLEdBQUcsT0FBTyxDQUFDLG1CQUFtQixHQUFHLFNBQVMsQ0FBQyxDQUczRjtJQUVZLHFCQUFxQixDQUFDLGVBQWUsRUFBRSxFQUFFLEdBQUcsT0FBTyxDQUFDLEVBQUUsR0FBRyxTQUFTLENBQUMsQ0FxQi9FO0lBRVksb0JBQW9CLENBQUMsT0FBTyxFQUFFLFlBQVksRUFBRSxRQUFRLEVBQUUsZ0JBQWdCLEdBQUcsT0FBTyxDQUFDLE1BQU0sR0FBRyxTQUFTLENBQUMsQ0FFaEg7WUFFYSw0QkFBNEI7SUFhMUMsT0FBTyxDQUFDLDhCQUE4QjtDQVd2QztBQUVEOzs7Ozs7Ozs7OztHQVdHO0FBQ0gscUJBQWEsYUFBYyxZQUFXLHNCQUFzQjtJQUc5QyxPQUFPLENBQUMsUUFBUSxDQUFDLEVBQUU7SUFGL0IsT0FBTyxDQUFDLE1BQU0sQ0FBNkM7SUFFM0QsWUFBNkIsRUFBRSxFQUFFLHlCQUF5QixFQUFJO0lBRWpELFdBQVcsQ0FBQyxRQUFRLEVBQUUsWUFBWSxFQUFFLElBQUksRUFBRSxFQUFFLEdBQUcsT0FBTyxDQUFDLEVBQUUsQ0FBQyxDQXlCdEU7SUFFWSxZQUFZLENBQUMsUUFBUSxFQUFFLFlBQVksRUFBRSxJQUFJLEVBQUUsRUFBRSxFQUFFLFFBQVEsRUFBRSxFQUFFLEdBQUcsT0FBTyxDQUFDLElBQUksQ0FBQyxDQVd2RjtJQUVZLGtCQUFrQixDQUFDLFNBQVMsRUFBRSxNQUFNLEdBQUcsT0FBTyxDQUFDLEVBQUUsQ0FBQyxDQWdCOUQ7SUFFWSxXQUFXLENBQUMsU0FBUyxFQUFFLE1BQU0sR0FBRyxPQUFPLENBQUMsRUFBRSxDQUFDLENBZ0J2RDtJQUVZLGFBQWEsQ0FBQyxRQUFRLEVBQUUsRUFBRSxHQUFHLE9BQU8sQ0FBQyxJQUFJLENBQUMsQ0FTdEQ7SUFFWSxvQkFBb0IsQ0FBQyxTQUFTLEVBQUUsRUFBRSxHQUFHLE9BQU8sQ0FBQyxPQUFPLENBQUMsQ0FrQmpFO0lBRVksY0FBYyxDQUFDLGVBQWUsRUFBRSxFQUFFLEdBQUcsT0FBTyxDQUFDLElBQUksQ0FBQyxDQVM5RDtJQUVZLE9BQU8sQ0FBQyxNQUFNLEVBQUUsWUFBWSxFQUFFLGNBQWMsRUFBRSxNQUFNLEdBQUcsT0FBTyxDQUFDLElBQUksQ0FBQyxDQWlDaEY7SUFFWSxnQkFBZ0IsSUFBSSxPQUFPLENBQUMsSUFBSSxDQUFDLENBRTdDO0lBRVksZ0JBQWdCLElBQUksT0FBTyxDQUFDLElBQUksQ0FBQyxDQUU3QztJQUVZLGdCQUFnQixJQUFJLE9BQU8sQ0FBQyxJQUFJLENBQUMsQ0FFN0M7SUFFWSxnQkFBZ0IsSUFBSSxPQUFPLENBQUMsYUFBYSxDQUFDLENBUXREO0NBQ0YifQ==
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"public_db_sources.d.ts","sourceRoot":"","sources":["../../src/public/public_db_sources.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,EAAE,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"public_db_sources.d.ts","sourceRoot":"","sources":["../../src/public/public_db_sources.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,147 +1,81 @@
|
|
|
1
1
|
import { L1_TO_L2_MSG_TREE_LEAF_COUNT, NOTE_HASH_TREE_LEAF_COUNT, NULLIFIER_SUBTREE_HEIGHT, PUBLIC_DATA_SUBTREE_HEIGHT } from '@aztec/constants';
|
|
2
|
-
import { Fr } from '@aztec/foundation/
|
|
2
|
+
import { Fr } from '@aztec/foundation/curves/bn254';
|
|
3
3
|
import { createLogger } from '@aztec/foundation/log';
|
|
4
4
|
import { Timer } from '@aztec/foundation/timer';
|
|
5
5
|
import { ContractClassPublishedEvent } from '@aztec/protocol-contracts/class-registry';
|
|
6
6
|
import { ContractInstancePublishedEvent } from '@aztec/protocol-contracts/instance-registry';
|
|
7
7
|
import { PublicDataWrite } from '@aztec/stdlib/avm';
|
|
8
|
-
import { computePublicBytecodeCommitment } from '@aztec/stdlib/contract';
|
|
8
|
+
import { AllContractDeploymentData, computePublicBytecodeCommitment } from '@aztec/stdlib/contract';
|
|
9
9
|
import { computePublicDataTreeLeafSlot } from '@aztec/stdlib/hash';
|
|
10
10
|
import { MerkleTreeId, NullifierLeaf, PublicDataTreeLeaf, getTreeName } from '@aztec/stdlib/trees';
|
|
11
11
|
import { TreeSnapshots } from '@aztec/stdlib/tx';
|
|
12
12
|
import { strict as assert } from 'assert';
|
|
13
|
+
import { ContractsDbCheckpoint } from './contracts_db_checkpoint.js';
|
|
13
14
|
import { L1ToL2MessageIndexOutOfRangeError, NoteHashIndexOutOfRangeError } from './side_effect_errors.js';
|
|
14
|
-
import { TxContractCache } from './tx_contract_cache.js';
|
|
15
15
|
/**
|
|
16
16
|
* Implements the PublicContractsDBInterface using a ContractDataSource.
|
|
17
|
-
*
|
|
18
|
-
* Separates block-level contract information (from processed/included txs) from the
|
|
19
|
-
* current tx's contract information (which may be cleared on tx revert/death).
|
|
17
|
+
* Uses a stack-based checkpoint model for managing contract state.
|
|
20
18
|
*/ export class PublicContractsDB {
|
|
21
19
|
dataSource;
|
|
22
|
-
|
|
23
|
-
// Tx-level cache:
|
|
24
|
-
// - The current tx's new contract information is cached
|
|
25
|
-
// in currentTxNonRevertibleCache and currentTxRevertibleCache.
|
|
26
|
-
// Block-level cache:
|
|
27
|
-
// - Contract information from earlier in the block, usable by later txs.
|
|
28
|
-
// When a tx succeeds, that tx's caches are merged into the block cache and cleared.
|
|
29
|
-
currentTxNonRevertibleCache;
|
|
30
|
-
currentTxRevertibleCache;
|
|
31
|
-
blockCache;
|
|
32
|
-
// Separate flat cache for bytecode commitments.
|
|
33
|
-
bytecodeCommitmentCache;
|
|
20
|
+
contractStateStack;
|
|
34
21
|
log;
|
|
35
22
|
constructor(dataSource){
|
|
36
23
|
this.dataSource = dataSource;
|
|
37
|
-
this.
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
this.bytecodeCommitmentCache = new Map();
|
|
24
|
+
this.contractStateStack = [
|
|
25
|
+
new ContractsDbCheckpoint()
|
|
26
|
+
];
|
|
41
27
|
this.log = createLogger('simulator:contracts-data-source');
|
|
42
28
|
}
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
await this.addNonRevertibleContractClasses(tx);
|
|
48
|
-
await this.addRevertibleContractClasses(tx);
|
|
49
|
-
this.addNonRevertibleContractInstances(tx);
|
|
50
|
-
this.addRevertibleContractInstances(tx);
|
|
51
|
-
}
|
|
52
|
-
/**
|
|
53
|
-
* Add non revertible contracts from a transaction
|
|
54
|
-
* @param tx - The transaction to add non revertible contracts from.
|
|
55
|
-
*/ async addNewNonRevertibleContracts(tx) {
|
|
56
|
-
await this.addNonRevertibleContractClasses(tx);
|
|
57
|
-
this.addNonRevertibleContractInstances(tx);
|
|
58
|
-
}
|
|
59
|
-
/**
|
|
60
|
-
* Add revertible contracts from a transaction
|
|
61
|
-
* @param tx - The transaction to add revertible contracts from.
|
|
62
|
-
*/ async addNewRevertibleContracts(tx) {
|
|
63
|
-
await this.addRevertibleContractClasses(tx);
|
|
64
|
-
this.addRevertibleContractInstances(tx);
|
|
65
|
-
}
|
|
66
|
-
/**
|
|
67
|
-
* Add non-revertible contract classes from a transaction
|
|
68
|
-
* For private-only txs, this will be all contract classes (found in tx.data.forPublic)
|
|
69
|
-
* @param tx - The transaction to add non-revertible contract classes from.
|
|
70
|
-
*/ async addNonRevertibleContractClasses(tx) {
|
|
71
|
-
const siloedContractClassLogs = tx.data.forPublic ? tx.getSplitContractClassLogs(false) : tx.getContractClassLogs();
|
|
72
|
-
await this.addContractClassesFromLogs(siloedContractClassLogs, this.currentTxNonRevertibleCache, 'non-revertible');
|
|
29
|
+
async addContracts(contractDeploymentData) {
|
|
30
|
+
const currentState = this.getCurrentState();
|
|
31
|
+
await this.addContractClassesFromEvents(ContractClassPublishedEvent.extractContractClassEvents(contractDeploymentData.getContractClassLogs()), currentState);
|
|
32
|
+
this.addContractInstancesFromEvents(ContractInstancePublishedEvent.extractContractInstanceEvents(contractDeploymentData.getPrivateLogs()), currentState);
|
|
73
33
|
}
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
*/ async addRevertibleContractClasses(tx) {
|
|
79
|
-
const siloedContractClassLogs = tx.data.forPublic ? tx.getSplitContractClassLogs(true) : [];
|
|
80
|
-
await this.addContractClassesFromLogs(siloedContractClassLogs, this.currentTxRevertibleCache, 'revertible');
|
|
81
|
-
}
|
|
82
|
-
/**
|
|
83
|
-
* Add non-revertible contract instances from a transaction
|
|
84
|
-
* For private-only txs, this will be all contract instances (found in tx.data.forRollup)
|
|
85
|
-
* @param tx - The transaction to add non-revertible contract instances from.
|
|
86
|
-
*/ addNonRevertibleContractInstances(tx) {
|
|
87
|
-
const contractInstanceLogs = tx.data.forPublic ? tx.data.forPublic.nonRevertibleAccumulatedData.privateLogs.filter((l)=>!l.isEmpty()) : tx.data.forRollup.end.privateLogs.filter((l)=>!l.isEmpty());
|
|
88
|
-
this.addContractInstancesFromLogs(contractInstanceLogs, this.currentTxNonRevertibleCache, 'non-revertible');
|
|
34
|
+
async addNewContracts(tx) {
|
|
35
|
+
const contractDeploymentData = AllContractDeploymentData.fromTx(tx);
|
|
36
|
+
await this.addContracts(contractDeploymentData.getNonRevertibleContractDeploymentData());
|
|
37
|
+
await this.addContracts(contractDeploymentData.getRevertibleContractDeploymentData());
|
|
89
38
|
}
|
|
90
39
|
/**
|
|
91
|
-
*
|
|
92
|
-
*
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
const
|
|
96
|
-
this.
|
|
97
|
-
}
|
|
98
|
-
/**
|
|
99
|
-
* Given a tx's siloed contract class logs, add the contract classes to the cache
|
|
100
|
-
* @param siloedContractClassLogs - Contract class logs to process
|
|
101
|
-
* @param cache - The cache to store the contract classes in
|
|
102
|
-
* @param cacheType - Type of cache (for logging)
|
|
103
|
-
*/ async addContractClassesFromLogs(siloedContractClassLogs, cache, cacheType) {
|
|
104
|
-
const contractClassEvents = siloedContractClassLogs.filter((log)=>ContractClassPublishedEvent.isContractClassPublishedEvent(log)).map((log)=>ContractClassPublishedEvent.fromLog(log));
|
|
105
|
-
// Cache contract classes
|
|
106
|
-
await Promise.all(contractClassEvents.map(async (event)=>{
|
|
107
|
-
this.log.debug(`Adding class ${event.contractClassId.toString()} to contract's ${cacheType} tx cache`);
|
|
108
|
-
const contractClass = await event.toContractClassPublic();
|
|
109
|
-
cache.addClass(event.contractClassId, contractClass);
|
|
110
|
-
}));
|
|
40
|
+
* Creates a new checkpoint, copying the current state for upcoming modifications,
|
|
41
|
+
* and enabling rollbacks to current state in case of a revert.
|
|
42
|
+
*/ createCheckpoint() {
|
|
43
|
+
const currentState = this.getCurrentState();
|
|
44
|
+
const newState = currentState.deepCopy();
|
|
45
|
+
this.contractStateStack.push(newState);
|
|
111
46
|
}
|
|
112
47
|
/**
|
|
113
|
-
*
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
const
|
|
119
|
-
|
|
120
|
-
contractInstanceEvents.forEach((e)=>{
|
|
121
|
-
this.log.debug(`Adding instance ${e.address.toString()} with class ${e.contractClassId.toString()} to ${cacheType} tx contract cache`);
|
|
122
|
-
cache.addInstance(e.address, e.toContractInstance());
|
|
123
|
-
});
|
|
48
|
+
* Commits the current checkpoint, accepting its state latest.
|
|
49
|
+
*/ commitCheckpoint() {
|
|
50
|
+
if (this.contractStateStack.length <= 1) {
|
|
51
|
+
throw new Error('No checkpoint to commit');
|
|
52
|
+
}
|
|
53
|
+
const topState = this.contractStateStack.pop();
|
|
54
|
+
this.contractStateStack[this.contractStateStack.length - 1] = topState;
|
|
124
55
|
}
|
|
125
56
|
/**
|
|
126
|
-
*
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
57
|
+
* Commits the current checkpoint, not erroring if there is no checkpoint
|
|
58
|
+
* to commit. This is useful to do a sanity commit at the end of tx execution,
|
|
59
|
+
* doing nothing if the checkpoint was already reverted, but truly committing
|
|
60
|
+
* otherwise.
|
|
61
|
+
*/ commitCheckpointOkIfNone() {
|
|
62
|
+
if (this.contractStateStack.length <= 1) {
|
|
63
|
+
return;
|
|
64
|
+
}
|
|
65
|
+
const topState = this.contractStateStack.pop();
|
|
66
|
+
this.contractStateStack[this.contractStateStack.length - 1] = topState;
|
|
131
67
|
}
|
|
132
68
|
/**
|
|
133
|
-
*
|
|
134
|
-
*
|
|
135
|
-
*/
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
if (!onlyNonRevertibles) {
|
|
139
|
-
// Merge revertible tx cache into block cache
|
|
140
|
-
this.blockCache.mergeFrom(this.currentTxRevertibleCache);
|
|
69
|
+
* Reverts the current checkpoint, discarding its state and rolling back
|
|
70
|
+
* to the state as of the latest checkpoint.
|
|
71
|
+
*/ revertCheckpoint() {
|
|
72
|
+
if (this.contractStateStack.length <= 1) {
|
|
73
|
+
throw new Error('No checkpoint to revert');
|
|
141
74
|
}
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
75
|
+
this.contractStateStack.pop();
|
|
76
|
+
}
|
|
77
|
+
getCurrentState() {
|
|
78
|
+
return this.contractStateStack[this.contractStateStack.length - 1];
|
|
145
79
|
}
|
|
146
80
|
// TODO(fcarreiro/alvaro): This method currently needs a blockNumber. Since this class
|
|
147
81
|
// is only ever used for a given block, it should be possible to construct it with the
|
|
@@ -153,38 +87,47 @@ import { TxContractCache } from './tx_contract_cache.js';
|
|
|
153
87
|
// Note: Block number got changed to timestamp so this comment ^ is outdated. Keeping
|
|
154
88
|
// the comment as is as I am not part of the AVM cabal.
|
|
155
89
|
async getContractInstance(address, timestamp) {
|
|
156
|
-
|
|
157
|
-
return
|
|
90
|
+
const currentState = this.getCurrentState();
|
|
91
|
+
return currentState.getInstance(address) ?? await this.dataSource.getContract(address, timestamp);
|
|
158
92
|
}
|
|
159
93
|
async getContractClass(contractClassId) {
|
|
160
|
-
|
|
161
|
-
return
|
|
94
|
+
const currentState = this.getCurrentState();
|
|
95
|
+
return currentState.getClass(contractClassId) ?? await this.dataSource.getContractClass(contractClassId);
|
|
162
96
|
}
|
|
163
97
|
async getBytecodeCommitment(contractClassId) {
|
|
164
|
-
|
|
165
|
-
const
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
return result;
|
|
169
|
-
}
|
|
170
|
-
// Now try from the store
|
|
171
|
-
const fromStore = await this.dataSource.getBytecodeCommitment(contractClassId);
|
|
172
|
-
if (fromStore !== undefined) {
|
|
173
|
-
this.bytecodeCommitmentCache.set(key, fromStore);
|
|
174
|
-
return fromStore;
|
|
98
|
+
const currentState = this.getCurrentState();
|
|
99
|
+
const commitment = currentState.getBytecodeCommitment(contractClassId) ?? await this.dataSource.getBytecodeCommitment(contractClassId);
|
|
100
|
+
if (commitment !== undefined) {
|
|
101
|
+
return commitment;
|
|
175
102
|
}
|
|
176
|
-
// Not in
|
|
103
|
+
// Not in the current state or the store, compute it here
|
|
104
|
+
// Get the contract class
|
|
177
105
|
const contractClass = await this.getContractClass(contractClassId);
|
|
178
106
|
if (contractClass === undefined) {
|
|
107
|
+
// cannot compute bytecode commitment if contract class is not found
|
|
179
108
|
return undefined;
|
|
180
109
|
}
|
|
181
110
|
const value = await computePublicBytecodeCommitment(contractClass.packedBytecode);
|
|
182
|
-
|
|
111
|
+
// Add to cache (current checkpoint state) so we don't compute again
|
|
112
|
+
currentState.addBytecodeCommitment(contractClassId, value);
|
|
183
113
|
return value;
|
|
184
114
|
}
|
|
185
115
|
async getDebugFunctionName(address, selector) {
|
|
186
116
|
return await this.dataSource.getDebugFunctionName(address, selector);
|
|
187
117
|
}
|
|
118
|
+
async addContractClassesFromEvents(contractClassEvents, state) {
|
|
119
|
+
await Promise.all(contractClassEvents.map(async (event)=>{
|
|
120
|
+
this.log.debug(`Adding class ${event.contractClassId.toString()} to contract state`);
|
|
121
|
+
const contractClass = await event.toContractClassPublic();
|
|
122
|
+
state.addClass(event.contractClassId, contractClass);
|
|
123
|
+
}));
|
|
124
|
+
}
|
|
125
|
+
addContractInstancesFromEvents(contractInstanceEvents, state) {
|
|
126
|
+
contractInstanceEvents.forEach((e)=>{
|
|
127
|
+
this.log.debug(`Adding instance ${e.address.toString()} with class ${e.contractClassId.toString()} to contract state`);
|
|
128
|
+
state.addInstance(e.address, e.toContractInstance());
|
|
129
|
+
});
|
|
130
|
+
}
|
|
188
131
|
}
|
|
189
132
|
/**
|
|
190
133
|
* A high-level class that provides access to the merkle trees.
|
|
@@ -9,4 +9,4 @@
|
|
|
9
9
|
export declare abstract class CheckedPublicExecutionError extends Error {
|
|
10
10
|
constructor(message: string);
|
|
11
11
|
}
|
|
12
|
-
//# sourceMappingURL=
|
|
12
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljX2Vycm9ycy5kLnRzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL3B1YmxpYy9wdWJsaWNfZXJyb3JzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7O0dBT0c7QUFDSCw4QkFBc0IsMkJBQTRCLFNBQVEsS0FBSztJQUM3RCxZQUFZLE9BQU8sRUFBRSxNQUFNLEVBRzFCO0NBQ0YifQ==
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"public_errors.d.ts","sourceRoot":"","sources":["../../src/public/public_errors.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AACH,8BAAsB,2BAA4B,SAAQ,KAAK;
|
|
1
|
+
{"version":3,"file":"public_errors.d.ts","sourceRoot":"","sources":["../../src/public/public_errors.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AACH,8BAAsB,2BAA4B,SAAQ,KAAK;IAC7D,YAAY,OAAO,EAAE,MAAM,EAG1B;CACF"}
|
|
@@ -1,7 +1,8 @@
|
|
|
1
|
+
import type { BlockNumber } from '@aztec/foundation/branded-types';
|
|
1
2
|
import type { IndexedTreeLeafPreimage, SiblingPath } from '@aztec/foundation/trees';
|
|
2
3
|
import type { BatchInsertionResult, IndexedTreeId, MerkleTreeId, MerkleTreeLeafType, MerkleTreeWriteOperations, SequentialInsertionResult, TreeHeights, TreeInfo } from '@aztec/stdlib/trees';
|
|
3
4
|
import type { BlockHeader, StateReference } from '@aztec/stdlib/tx';
|
|
4
|
-
import type { WorldStateRevision } from '@aztec/stdlib/world-state';
|
|
5
|
+
import type { WorldStateRevision, WorldStateRevisionWithHandle } from '@aztec/stdlib/world-state';
|
|
5
6
|
/**
|
|
6
7
|
* Wraps an instance of `MerkleTreeWriteOperations` to allow the sequencer to gate access.
|
|
7
8
|
* If transactions execution goes past the deadline, the simulator will continue to execute and update the world state
|
|
@@ -22,10 +23,11 @@ export declare class GuardedMerkleTreeOperations implements MerkleTreeWriteOpera
|
|
|
22
23
|
batchInsert<TreeHeight extends number, SubtreeSiblingPathHeight extends number, ID extends IndexedTreeId>(treeId: ID, leaves: Buffer[], subtreeHeight: number): Promise<BatchInsertionResult<TreeHeight, SubtreeSiblingPathHeight>>;
|
|
23
24
|
sequentialInsert<TreeHeight extends number, ID extends IndexedTreeId>(treeId: ID, leaves: Buffer[]): Promise<SequentialInsertionResult<TreeHeight>>;
|
|
24
25
|
close(): Promise<void>;
|
|
26
|
+
[Symbol.dispose](): Promise<void>;
|
|
25
27
|
getTreeInfo(treeId: MerkleTreeId): Promise<TreeInfo>;
|
|
26
28
|
getStateReference(): Promise<StateReference>;
|
|
27
29
|
getInitialHeader(): BlockHeader;
|
|
28
|
-
getRevision(): WorldStateRevision;
|
|
30
|
+
getRevision(): WorldStateRevision | WorldStateRevisionWithHandle;
|
|
29
31
|
getSiblingPath<ID extends MerkleTreeId>(treeId: ID, index: bigint): Promise<SiblingPath<TreeHeights[ID]>>;
|
|
30
32
|
getPreviousValueIndex<ID extends IndexedTreeId>(treeId: ID, value: bigint): Promise<{
|
|
31
33
|
index: bigint;
|
|
@@ -35,7 +37,7 @@ export declare class GuardedMerkleTreeOperations implements MerkleTreeWriteOpera
|
|
|
35
37
|
findLeafIndices<ID extends MerkleTreeId>(treeId: ID, values: MerkleTreeLeafType<ID>[]): Promise<(bigint | undefined)[]>;
|
|
36
38
|
findLeafIndicesAfter<ID extends MerkleTreeId>(treeId: ID, values: MerkleTreeLeafType<ID>[], startIndex: bigint): Promise<(bigint | undefined)[]>;
|
|
37
39
|
getLeafValue<ID extends MerkleTreeId>(treeId: ID, index: bigint): Promise<MerkleTreeLeafType<typeof treeId> | undefined>;
|
|
38
|
-
getBlockNumbersForLeafIndices<ID extends MerkleTreeId>(treeId: ID, leafIndices: bigint[]): Promise<(
|
|
40
|
+
getBlockNumbersForLeafIndices<ID extends MerkleTreeId>(treeId: ID, leafIndices: bigint[]): Promise<(BlockNumber | undefined)[]>;
|
|
39
41
|
createCheckpoint(): Promise<void>;
|
|
40
42
|
commitCheckpoint(): Promise<void>;
|
|
41
43
|
revertCheckpoint(): Promise<void>;
|
|
@@ -46,4 +48,4 @@ export declare class GuardedMerkleTreeOperations implements MerkleTreeWriteOpera
|
|
|
46
48
|
index: bigint;
|
|
47
49
|
} | undefined)[]>;
|
|
48
50
|
}
|
|
49
|
-
//# sourceMappingURL=
|
|
51
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ3VhcmRlZF9tZXJrbGVfdHJlZS5kLnRzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL3B1YmxpYy9wdWJsaWNfcHJvY2Vzc29yL2d1YXJkZWRfbWVya2xlX3RyZWUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxLQUFLLEVBQUUsV0FBVyxFQUFFLE1BQU0saUNBQWlDLENBQUM7QUFFbkUsT0FBTyxLQUFLLEVBQUUsdUJBQXVCLEVBQUUsV0FBVyxFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFDcEYsT0FBTyxLQUFLLEVBQ1Ysb0JBQW9CLEVBQ3BCLGFBQWEsRUFDYixZQUFZLEVBQ1osa0JBQWtCLEVBQ2xCLHlCQUF5QixFQUN6Qix5QkFBeUIsRUFDekIsV0FBVyxFQUNYLFFBQVEsRUFDVCxNQUFNLHFCQUFxQixDQUFDO0FBQzdCLE9BQU8sS0FBSyxFQUFFLFdBQVcsRUFBRSxjQUFjLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQUNwRSxPQUFPLEtBQUssRUFBRSxrQkFBa0IsRUFBRSw0QkFBNEIsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBRWxHOzs7OztHQUtHO0FBRUgscUJBQWEsMkJBQTRCLFlBQVcseUJBQXlCO0lBSS9ELE9BQU8sQ0FBQyxNQUFNO0lBSDFCLE9BQU8sQ0FBQyxTQUFTLENBQVM7SUFDMUIsT0FBTyxDQUFDLFdBQVcsQ0FBcUI7SUFFeEMsWUFBb0IsTUFBTSxFQUFFLHlCQUF5QixFQUVwRDtJQUVELE9BQU8sQ0FBQyxLQUFLO0lBT2IsT0FBTyxDQUFDLFlBQVk7SUFRYixpQkFBaUIsSUFBSSx5QkFBeUIsQ0FFcEQ7SUFHSyxJQUFJLElBQUksT0FBTyxDQUFDLElBQUksQ0FBQyxDQU0xQjtJQUdELFlBQVksQ0FBQyxFQUFFLFNBQVMsWUFBWSxFQUFFLE1BQU0sRUFBRSxFQUFFLEVBQUUsTUFBTSxFQUFFLGtCQUFrQixDQUFDLEVBQUUsQ0FBQyxFQUFFLEdBQUcsT0FBTyxDQUFDLElBQUksQ0FBQyxD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
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"guarded_merkle_tree.d.ts","sourceRoot":"","sources":["../../../src/public/public_processor/guarded_merkle_tree.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"guarded_merkle_tree.d.ts","sourceRoot":"","sources":["../../../src/public/public_processor/guarded_merkle_tree.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,4 +1,6 @@
|
|
|
1
|
+
var _computedKey;
|
|
1
2
|
import { SerialQueue } from '@aztec/foundation/queue';
|
|
3
|
+
_computedKey = Symbol.dispose;
|
|
2
4
|
/**
|
|
3
5
|
* Wraps an instance of `MerkleTreeWriteOperations` to allow the sequencer to gate access.
|
|
4
6
|
* If transactions execution goes past the deadline, the simulator will continue to execute and update the world state
|
|
@@ -54,6 +56,9 @@ import { SerialQueue } from '@aztec/foundation/queue';
|
|
|
54
56
|
close() {
|
|
55
57
|
return this.guardAndPush(()=>this.target.close());
|
|
56
58
|
}
|
|
59
|
+
async [_computedKey]() {
|
|
60
|
+
await this.close();
|
|
61
|
+
}
|
|
57
62
|
getTreeInfo(treeId) {
|
|
58
63
|
return this.guardAndPush(()=>this.target.getTreeInfo(treeId));
|
|
59
64
|
}
|
|
@@ -1,11 +1,11 @@
|
|
|
1
|
-
import { Fr } from '@aztec/foundation/fields';
|
|
2
1
|
import { DateProvider } from '@aztec/foundation/timer';
|
|
2
|
+
import { PublicSimulatorConfig } from '@aztec/stdlib/avm';
|
|
3
3
|
import type { ContractDataSource } from '@aztec/stdlib/contract';
|
|
4
4
|
import type { MerkleTreeWriteOperations, PublicProcessorLimits, PublicProcessorValidator, SequencerConfig } from '@aztec/stdlib/interfaces/server';
|
|
5
5
|
import { type FailedTx, GlobalVariables, NestedProcessReturnValues, type ProcessedTx, Tx } from '@aztec/stdlib/tx';
|
|
6
6
|
import { type TelemetryClient, type Traceable, type Tracer } from '@aztec/telemetry-client';
|
|
7
7
|
import { PublicContractsDB } from '../public_db_sources.js';
|
|
8
|
-
import { type
|
|
8
|
+
import { type PublicTxSimulatorConfig, type PublicTxSimulatorInterface } from '../public_tx_simulator/index.js';
|
|
9
9
|
import { GuardedMerkleTreeOperations } from './guarded_merkle_tree.js';
|
|
10
10
|
/**
|
|
11
11
|
* Creates new instances of PublicProcessor given the provided merkle tree db and contract data source.
|
|
@@ -21,13 +21,8 @@ export declare class PublicProcessorFactory {
|
|
|
21
21
|
* @param skipFeeEnforcement - Allows disabling balance checks for fee estimations.
|
|
22
22
|
* @returns A new instance of a PublicProcessor.
|
|
23
23
|
*/
|
|
24
|
-
create(merkleTree: MerkleTreeWriteOperations, globalVariables: GlobalVariables, config:
|
|
25
|
-
|
|
26
|
-
clientInitiatedSimulation: boolean;
|
|
27
|
-
proverId?: Fr;
|
|
28
|
-
maxDebugLogMemoryReads?: number;
|
|
29
|
-
}): PublicProcessor;
|
|
30
|
-
protected createPublicTxSimulator(merkleTree: MerkleTreeWriteOperations, contractsDB: PublicContractsDB, globalVariables: GlobalVariables, config?: Partial<PublicTxSimulatorConfig>): PublicTxSimulator;
|
|
24
|
+
create(merkleTree: MerkleTreeWriteOperations, globalVariables: GlobalVariables, config: PublicSimulatorConfig): PublicProcessor;
|
|
25
|
+
protected createPublicTxSimulator(merkleTree: MerkleTreeWriteOperations, contractsDB: PublicContractsDB, globalVariables: GlobalVariables, config?: Partial<PublicTxSimulatorConfig>): PublicTxSimulatorInterface;
|
|
31
26
|
}
|
|
32
27
|
/**
|
|
33
28
|
* Converts Txs lifted from the P2P module into ProcessedTx objects by executing
|
|
@@ -37,12 +32,12 @@ export declare class PublicProcessor implements Traceable {
|
|
|
37
32
|
protected globalVariables: GlobalVariables;
|
|
38
33
|
private guardedMerkleTree;
|
|
39
34
|
protected contractsDB: PublicContractsDB;
|
|
40
|
-
protected publicTxSimulator:
|
|
35
|
+
protected publicTxSimulator: PublicTxSimulatorInterface;
|
|
41
36
|
private dateProvider;
|
|
42
37
|
private log;
|
|
43
38
|
private opts;
|
|
44
39
|
private metrics;
|
|
45
|
-
constructor(globalVariables: GlobalVariables, guardedMerkleTree: GuardedMerkleTreeOperations, contractsDB: PublicContractsDB, publicTxSimulator:
|
|
40
|
+
constructor(globalVariables: GlobalVariables, guardedMerkleTree: GuardedMerkleTreeOperations, contractsDB: PublicContractsDB, publicTxSimulator: PublicTxSimulatorInterface, dateProvider: DateProvider, telemetryClient?: TelemetryClient, log?: import("@aztec/foundation/log").Logger, opts?: Pick<SequencerConfig, 'fakeProcessingDelayPerTxMs' | 'fakeThrowAfterProcessingTxCount'>);
|
|
46
41
|
get tracer(): Tracer;
|
|
47
42
|
/**
|
|
48
43
|
* Run each tx through the public circuit and the public kernel circuit if needed.
|
|
@@ -51,19 +46,17 @@ export declare class PublicProcessor implements Traceable {
|
|
|
51
46
|
* @param validator - Pre-process validator and nullifier cache to use for processing the txs.
|
|
52
47
|
* @returns The list of processed txs with their circuit simulation outputs.
|
|
53
48
|
*/
|
|
54
|
-
process(txs: Iterable<Tx> | AsyncIterable<Tx>, limits?: PublicProcessorLimits, validator?: PublicProcessorValidator): Promise<[ProcessedTx[], FailedTx[], Tx[], NestedProcessReturnValues[]]>;
|
|
49
|
+
process(txs: Iterable<Tx> | AsyncIterable<Tx>, limits?: PublicProcessorLimits, validator?: PublicProcessorValidator): Promise<[ProcessedTx[], FailedTx[], Tx[], NestedProcessReturnValues[], number]>;
|
|
55
50
|
private checkWorldStateUnchanged;
|
|
56
51
|
private processTx;
|
|
57
52
|
private doTreeInsertionsForPrivateOnlyTx;
|
|
58
|
-
/** Processes the given tx within deadline. Returns timeout if deadline is hit. */
|
|
59
53
|
private processTxWithinDeadline;
|
|
60
|
-
/**
|
|
61
|
-
* Creates the public data write for paying the tx fee.
|
|
62
|
-
* This is used in private only txs, since for txs with public calls
|
|
63
|
-
* the avm handles the fee payment itself.
|
|
64
|
-
*/
|
|
65
54
|
private performFeePaymentPublicDataWrite;
|
|
66
55
|
private processPrivateOnlyTx;
|
|
67
56
|
private processTxWithPublicCalls;
|
|
57
|
+
/**
|
|
58
|
+
* Generate the proving request for the AVM circuit.
|
|
59
|
+
*/
|
|
60
|
+
private static generateProvingRequest;
|
|
68
61
|
}
|
|
69
|
-
//# sourceMappingURL=
|
|
62
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljX3Byb2Nlc3Nvci5kLnRzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL3B1YmxpYy9wdWJsaWNfcHJvY2Vzc29yL3B1YmxpY19wcm9jZXNzb3IudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBS0EsT0FBTyxFQUFFLFlBQVksRUFBa0MsTUFBTSx5QkFBeUIsQ0FBQztBQUl2RixPQUFPLEVBTUwscUJBQXFCLEVBQ3RCLE1BQU0sbUJBQW1CLENBQUM7QUFFM0IsT0FBTyxLQUFLLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUdqRSxPQUFPLEtBQUssRUFDVix5QkFBeUIsRUFDekIscUJBQXFCLEVBQ3JCLHdCQUF3QixFQUN4QixlQUFlLEVBQ2hCLE1BQU0saUNBQWlDLENBQUM7QUFHekMsT0FBTyxFQUNMLEtBQUssUUFBUSxFQUNiLGVBQWUsRUFDZix5QkFBeUIsRUFDekIsS0FBSyxXQUFXLEVBRWhCLEVBQUUsRUFHSCxNQUFNLGtCQUFrQixDQUFDO0FBQzFCLE9BQU8sRUFFTCxLQUFLLGVBQWUsRUFDcEIsS0FBSyxTQUFTLEVBQ2QsS0FBSyxNQUFNLEVBR1osTUFBTSx5QkFBeUIsQ0FBQztBQUtqQyxPQUFPLEVBQUUsaUJBQWlCLEVBQWlCLE1BQU0seUJBQXlCLENBQUM7QUFDM0UsT0FBTyxFQUNMLEtBQUssdUJBQXVCLEVBQzVCLEtBQUssMEJBQTBCLEVBRWhDLE1BQU0saUNBQWlDLENBQUM7QUFDekMsT0FBTyxFQUFFLDJCQUEyQixFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFHdkU7O0dBRUc7QUFDSCxxQkFBYSxzQkFBc0I7SUFFL0IsT0FBTyxDQUFDLGtCQUFrQjtJQUMxQixPQUFPLENBQUMsWUFBWTtJQUNwQixTQUFTLENBQUMsZUFBZSxFQUFFLGVBQWU7SUFINUMsWUFDVSxrQkFBa0IsRUFBRSxrQkFBa0IsRUFDdEMsWUFBWSxHQUFFLFlBQWlDLEVBQzdDLGVBQWUsR0FBRSxlQUFzQyxFQUMvRDtJQUVKOzs7OztPQUtHO0lBQ0ksTUFBTSxDQUNYLFVBQVUsRUFBRSx5QkFBeUIsRUFDckMsZUFBZSxFQUFFLGVBQWUsRUFDaEMsTUFBTSxFQUFFLHFCQUFxQixHQUM1QixlQUFlLENBY2pCO0lBRUQsU0FBUyxDQUFDLHVCQUF1QixDQUMvQixVQUFVLEVBQUUseUJBQXlCLEVBQ3JDLFdBQVcsRUFBRSxpQkFBaUIsRUFDOUIsZUFBZSxFQUFFLGVBQWUsRUFDaEMsTUFBTSxDQUFDLEVBQUUsT0FBTyxDQUFDLHVCQUF1QixDQUFDLEdBQ3hDLDBCQUEwQixDQUU1QjtDQUNGO0FBU0Q7OztHQUdHO0FBQ0gscUJBQWEsZUFBZ0IsWUFBVyxTQUFTO0lBSTdDLFNBQVMsQ0FBQyxlQUFlLEVBQUUsZUFBZTtJQUMxQyxPQUFPLENBQUMsaUJBQWlCO0lBQ3pCLFNBQVMsQ0FBQyxXQUFXLEVBQUUsaUJBQWlCO0lBQ3hDLFNBQVMsQ0FBQyxpQkFBaUIsRUFBRSwwQkFBMEI7SUFDdkQsT0FBTyxDQUFDLFlBQVk7SUFFcEIsT0FBTyxDQUFDLEdBQUc7SUFDWCxPQUFPLENBQUMsSUFBSTtJQVZkLE9BQU8sQ0FBQyxPQUFPLENBQXlCO0lBRXhDLFlBQ1ksZUFBZSxFQUFFLGVBQWUsRUFDbEMsaUJBQWlCLEVBQUUsMkJBQTJCLEVBQzVDLFdBQVcsRUFBRSxpQkFBaUIsRUFDOUIsaUJBQWlCLEVBQUUsMEJBQTBCLEVBQy9DLFlBQVksRUFBRSxZQUFZLEVBQ2xDLGVBQWUsR0FBRSxlQUFzQyxFQUMvQyxHQUFHLHlDQUE2QyxFQUNoRCxJQUFJLEdBQUUsSUFBSSxDQUFDLGVBQWUsRUFBRSw0QkFBNEIsR0FBRyxpQ0FBaUMsQ0FBTSxFQUczRztJQUVELElBQUksTUFBTSxJQUFJLE1BQU0sQ0FFbkI7SUFFRDs7Ozs7O09BTUc7SUFDVSxPQUFPLENBQ2xCLEdBQUcsRUFBRSxRQUFRLENBQUMsRUFBRSxDQUFDLEdBQUcsYUFBYSxDQUFDLEVBQUUsQ0FBQyxFQUNyQyxNQUFNLEdBQUUscUJBQTBCLEVBQ2xDLFNBQVMsR0FBRSx3QkFBNkIsR0FDdkMsT0FBTyxDQUFDLENBQUMsV0FBVyxFQUFFLEVBQUUsUUFBUSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUseUJBQXlCLEVBQUUsRUFBRSxNQUFNLENBQUMsQ0FBQyxDQTZNakY7WUFFYSx3QkFBd0I7WUFpQnhCLFNBQVM7WUEyQlQsZ0NBQWdDO1lBNEJoQyx1QkFBdUI7WUFnRHZCLGdDQUFnQztZQTBCaEMsb0JBQW9CO1lBK0JwQix3QkFBd0I7SUF5Q3RDOztPQUVHO0lBQ0gsT0FBTyxDQUFDLE1BQU0sQ0FBQyxzQkFBc0I7Q0FTdEMifQ==
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"public_processor.d.ts","sourceRoot":"","sources":["../../../src/public/public_processor/public_processor.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"public_processor.d.ts","sourceRoot":"","sources":["../../../src/public/public_processor/public_processor.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,YAAY,EAAkC,MAAM,yBAAyB,CAAC;AAIvF,OAAO,EAML,qBAAqB,EACtB,MAAM,mBAAmB,CAAC;AAE3B,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,wBAAwB,CAAC;AAGjE,OAAO,KAAK,EACV,yBAAyB,EACzB,qBAAqB,EACrB,wBAAwB,EACxB,eAAe,EAChB,MAAM,iCAAiC,CAAC;AAGzC,OAAO,EACL,KAAK,QAAQ,EACb,eAAe,EACf,yBAAyB,EACzB,KAAK,WAAW,EAEhB,EAAE,EAGH,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EAEL,KAAK,eAAe,EACpB,KAAK,SAAS,EACd,KAAK,MAAM,EAGZ,MAAM,yBAAyB,CAAC;AAKjC,OAAO,EAAE,iBAAiB,EAAiB,MAAM,yBAAyB,CAAC;AAC3E,OAAO,EACL,KAAK,uBAAuB,EAC5B,KAAK,0BAA0B,EAEhC,MAAM,iCAAiC,CAAC;AACzC,OAAO,EAAE,2BAA2B,EAAE,MAAM,0BAA0B,CAAC;AAGvE;;GAEG;AACH,qBAAa,sBAAsB;IAE/B,OAAO,CAAC,kBAAkB;IAC1B,OAAO,CAAC,YAAY;IACpB,SAAS,CAAC,eAAe,EAAE,eAAe;IAH5C,YACU,kBAAkB,EAAE,kBAAkB,EACtC,YAAY,GAAE,YAAiC,EAC7C,eAAe,GAAE,eAAsC,EAC/D;IAEJ;;;;;OAKG;IACI,MAAM,CACX,UAAU,EAAE,yBAAyB,EACrC,eAAe,EAAE,eAAe,EAChC,MAAM,EAAE,qBAAqB,GAC5B,eAAe,CAcjB;IAED,SAAS,CAAC,uBAAuB,CAC/B,UAAU,EAAE,yBAAyB,EACrC,WAAW,EAAE,iBAAiB,EAC9B,eAAe,EAAE,eAAe,EAChC,MAAM,CAAC,EAAE,OAAO,CAAC,uBAAuB,CAAC,GACxC,0BAA0B,CAE5B;CACF;AASD;;;GAGG;AACH,qBAAa,eAAgB,YAAW,SAAS;IAI7C,SAAS,CAAC,eAAe,EAAE,eAAe;IAC1C,OAAO,CAAC,iBAAiB;IACzB,SAAS,CAAC,WAAW,EAAE,iBAAiB;IACxC,SAAS,CAAC,iBAAiB,EAAE,0BAA0B;IACvD,OAAO,CAAC,YAAY;IAEpB,OAAO,CAAC,GAAG;IACX,OAAO,CAAC,IAAI;IAVd,OAAO,CAAC,OAAO,CAAyB;IAExC,YACY,eAAe,EAAE,eAAe,EAClC,iBAAiB,EAAE,2BAA2B,EAC5C,WAAW,EAAE,iBAAiB,EAC9B,iBAAiB,EAAE,0BAA0B,EAC/C,YAAY,EAAE,YAAY,EAClC,eAAe,GAAE,eAAsC,EAC/C,GAAG,yCAA6C,EAChD,IAAI,GAAE,IAAI,CAAC,eAAe,EAAE,4BAA4B,GAAG,iCAAiC,CAAM,EAG3G;IAED,IAAI,MAAM,IAAI,MAAM,CAEnB;IAED;;;;;;OAMG;IACU,OAAO,CAClB,GAAG,EAAE,QAAQ,CAAC,EAAE,CAAC,GAAG,aAAa,CAAC,EAAE,CAAC,EACrC,MAAM,GAAE,qBAA0B,EAClC,SAAS,GAAE,wBAA6B,GACvC,OAAO,CAAC,CAAC,WAAW,EAAE,EAAE,QAAQ,EAAE,EAAE,EAAE,EAAE,EAAE,yBAAyB,EAAE,EAAE,MAAM,CAAC,CAAC,CA6MjF;YAEa,wBAAwB;YAiBxB,SAAS;YA2BT,gCAAgC;YA4BhC,uBAAuB;YAgDvB,gCAAgC;YA0BhC,oBAAoB;YA+BpB,wBAAwB;IAyCtC;;OAEG;IACH,OAAO,CAAC,MAAM,CAAC,sBAAsB;CAStC"}
|