@aztec/simulator 0.0.1-commit.4d3c002 → 0.0.1-commit.4d9804df

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.
Files changed (359) hide show
  1. package/dest/client.d.ts +1 -3
  2. package/dest/client.d.ts.map +1 -1
  3. package/dest/client.js +0 -2
  4. package/dest/private/acvm_wasm.d.ts +1 -1
  5. package/dest/private/acvm_wasm.d.ts.map +1 -1
  6. package/dest/private/acvm_wasm.js +3 -1
  7. package/dest/private/circuit_recording/circuit_recorder.d.ts +36 -23
  8. package/dest/private/circuit_recording/circuit_recorder.d.ts.map +1 -1
  9. package/dest/private/circuit_recording/circuit_recorder.js +65 -69
  10. package/dest/private/circuit_recording/file_circuit_recorder.d.ts +7 -19
  11. package/dest/private/circuit_recording/file_circuit_recorder.d.ts.map +1 -1
  12. package/dest/private/circuit_recording/file_circuit_recorder.js +38 -42
  13. package/dest/private/circuit_recording/simulator_recorder_wrapper.d.ts +1 -1
  14. package/dest/private/circuit_recording/simulator_recorder_wrapper.d.ts.map +1 -1
  15. package/dest/private/circuit_recording/simulator_recorder_wrapper.js +11 -14
  16. package/dest/public/avm/testing/account_proof_fetcher.d.ts +2 -0
  17. package/dest/public/avm/testing/account_proof_fetcher.d.ts.map +1 -0
  18. package/dest/public/avm/{fixtures → testing}/base_avm_simulation_tester.d.ts +2 -1
  19. package/dest/public/avm/testing/base_avm_simulation_tester.d.ts.map +1 -0
  20. package/dest/public/avm/{fixtures → testing}/base_avm_simulation_tester.js +18 -3
  21. package/dest/public/avm/testing/utils.d.ts +32 -0
  22. package/dest/public/avm/testing/utils.d.ts.map +1 -0
  23. package/dest/public/avm/{fixtures → testing}/utils.js +4 -34
  24. package/dest/public/avm_simulator.d.ts +28 -0
  25. package/dest/public/avm_simulator.d.ts.map +1 -0
  26. package/dest/public/avm_simulator.js +4 -0
  27. package/dest/public/avm_simulator_pool.d.ts +45 -0
  28. package/dest/public/avm_simulator_pool.d.ts.map +1 -0
  29. package/dest/public/avm_simulator_pool.js +197 -0
  30. package/dest/public/cdb/generated/api_types.d.ts +171 -0
  31. package/dest/public/cdb/generated/api_types.d.ts.map +1 -0
  32. package/dest/public/cdb/generated/api_types.js +314 -0
  33. package/dest/public/cdb/generated/server.d.ts +26 -0
  34. package/dest/public/cdb/generated/server.d.ts.map +1 -0
  35. package/dest/public/cdb/generated/server.js +135 -0
  36. package/dest/public/cdb_ipc_server.d.ts +33 -0
  37. package/dest/public/cdb_ipc_server.d.ts.map +1 -0
  38. package/dest/public/cdb_ipc_server.js +153 -0
  39. package/dest/public/fixtures/amm_test.js +2 -2
  40. package/dest/public/fixtures/bulk_test.d.ts +1 -1
  41. package/dest/public/fixtures/bulk_test.d.ts.map +1 -1
  42. package/dest/public/fixtures/bulk_test.js +33 -6
  43. package/dest/public/fixtures/custom_bytecode_tester.d.ts +1 -1
  44. package/dest/public/fixtures/custom_bytecode_tester.d.ts.map +1 -1
  45. package/dest/public/fixtures/custom_bytecode_tester.js +2 -2
  46. package/dest/public/fixtures/index.d.ts +2 -4
  47. package/dest/public/fixtures/index.d.ts.map +1 -1
  48. package/dest/public/fixtures/index.js +1 -3
  49. package/dest/public/fixtures/public_processor_test_env.d.ts +30 -0
  50. package/dest/public/fixtures/public_processor_test_env.d.ts.map +1 -0
  51. package/dest/public/fixtures/public_processor_test_env.js +73 -0
  52. package/dest/public/fixtures/public_tx_simulation_tester.d.ts +11 -7
  53. package/dest/public/fixtures/public_tx_simulation_tester.d.ts.map +1 -1
  54. package/dest/public/fixtures/public_tx_simulation_tester.js +33 -43
  55. package/dest/public/fixtures/simple_contract_data_source.js +1 -1
  56. package/dest/public/fixtures/token_test.js +3 -3
  57. package/dest/public/fixtures/utils.d.ts +1 -1
  58. package/dest/public/fixtures/utils.d.ts.map +1 -1
  59. package/dest/public/fixtures/utils.js +16 -15
  60. package/dest/public/fuzzing/avm_fuzzer_simulator.d.ts +11 -4
  61. package/dest/public/fuzzing/avm_fuzzer_simulator.d.ts.map +1 -1
  62. package/dest/public/fuzzing/avm_fuzzer_simulator.js +24 -10
  63. package/dest/public/fuzzing/avm_simulator_bin.js +4 -4
  64. package/dest/public/index.d.ts +5 -2
  65. package/dest/public/index.d.ts.map +1 -1
  66. package/dest/public/index.js +2 -1
  67. package/dest/public/public_db_sources.d.ts +5 -2
  68. package/dest/public/public_db_sources.d.ts.map +1 -1
  69. package/dest/public/public_db_sources.js +9 -3
  70. package/dest/public/public_processor/guarded_merkle_tree.d.ts +4 -3
  71. package/dest/public/public_processor/guarded_merkle_tree.d.ts.map +1 -1
  72. package/dest/public/public_processor/guarded_merkle_tree.js +3 -0
  73. package/dest/public/public_processor/public_processor.d.ts +11 -6
  74. package/dest/public/public_processor/public_processor.d.ts.map +1 -1
  75. package/dest/public/public_processor/public_processor.js +67 -38
  76. package/dest/public/public_processor/public_processor_metrics.d.ts +4 -1
  77. package/dest/public/public_processor/public_processor_metrics.d.ts.map +1 -1
  78. package/dest/public/public_processor/public_processor_metrics.js +8 -0
  79. package/dest/public/public_tx_simulator/dumping_public_tx_simulator.d.ts +17 -0
  80. package/dest/public/public_tx_simulator/dumping_public_tx_simulator.d.ts.map +1 -0
  81. package/dest/public/public_tx_simulator/{dumping_cpp_public_tx_simulator.js → dumping_public_tx_simulator.js} +10 -23
  82. package/dest/public/public_tx_simulator/factories.d.ts +8 -8
  83. package/dest/public/public_tx_simulator/factories.d.ts.map +1 -1
  84. package/dest/public/public_tx_simulator/factories.js +8 -8
  85. package/dest/public/public_tx_simulator/index.d.ts +4 -6
  86. package/dest/public/public_tx_simulator/index.d.ts.map +1 -1
  87. package/dest/public/public_tx_simulator/index.js +2 -4
  88. package/dest/public/public_tx_simulator/public_tx_simulator.d.ts +42 -71
  89. package/dest/public/public_tx_simulator/public_tx_simulator.d.ts.map +1 -1
  90. package/dest/public/public_tx_simulator/public_tx_simulator.js +98 -318
  91. package/dest/public/public_tx_simulator/public_tx_simulator_base.d.ts +24 -0
  92. package/dest/public/public_tx_simulator/public_tx_simulator_base.d.ts.map +1 -0
  93. package/dest/public/public_tx_simulator/public_tx_simulator_base.js +31 -0
  94. package/dest/public/public_tx_simulator/public_tx_simulator_interface.d.ts +5 -5
  95. package/dest/public/test_executor_metrics.d.ts +1 -6
  96. package/dest/public/test_executor_metrics.d.ts.map +1 -1
  97. package/dest/public/test_executor_metrics.js +0 -22
  98. package/package.json +22 -18
  99. package/src/client.ts +0 -2
  100. package/src/private/acvm_wasm.ts +4 -1
  101. package/src/private/circuit_recording/circuit_recorder.ts +84 -78
  102. package/src/private/circuit_recording/file_circuit_recorder.ts +38 -48
  103. package/src/private/circuit_recording/simulator_recorder_wrapper.ts +9 -15
  104. package/src/public/avm/{fixtures → testing}/base_avm_simulation_tester.ts +23 -3
  105. package/src/public/avm/{fixtures → testing}/utils.ts +4 -40
  106. package/src/public/avm_simulator.ts +29 -0
  107. package/src/public/avm_simulator_pool.ts +226 -0
  108. package/src/public/cdb/generated/api_types.ts +457 -0
  109. package/src/public/cdb/generated/server.ts +109 -0
  110. package/src/public/cdb_ipc_server.ts +197 -0
  111. package/src/public/fixtures/amm_test.ts +2 -2
  112. package/src/public/fixtures/bulk_test.ts +31 -6
  113. package/src/public/fixtures/custom_bytecode_tester.ts +2 -2
  114. package/src/public/fixtures/index.ts +1 -3
  115. package/src/public/fixtures/public_processor_test_env.ts +88 -0
  116. package/src/public/fixtures/public_tx_simulation_tester.ts +41 -60
  117. package/src/public/fixtures/simple_contract_data_source.ts +1 -1
  118. package/src/public/fixtures/token_test.ts +3 -3
  119. package/src/public/fixtures/utils.ts +18 -20
  120. package/src/public/fuzzing/avm_fuzzer_simulator.ts +25 -10
  121. package/src/public/fuzzing/avm_simulator_bin.ts +3 -5
  122. package/src/public/index.ts +7 -3
  123. package/src/public/public_db_sources.ts +12 -3
  124. package/src/public/public_processor/guarded_merkle_tree.ts +5 -2
  125. package/src/public/public_processor/public_processor.ts +89 -46
  126. package/src/public/public_processor/public_processor_metrics.ts +12 -0
  127. package/src/public/public_tx_simulator/{dumping_cpp_public_tx_simulator.ts → dumping_public_tx_simulator.ts} +15 -31
  128. package/src/public/public_tx_simulator/factories.ts +27 -10
  129. package/src/public/public_tx_simulator/index.ts +6 -5
  130. package/src/public/public_tx_simulator/public_tx_simulator.ts +139 -476
  131. package/src/public/public_tx_simulator/public_tx_simulator_base.ts +37 -0
  132. package/src/public/public_tx_simulator/public_tx_simulator_interface.ts +5 -5
  133. package/src/public/test_executor_metrics.ts +0 -24
  134. package/dest/public/avm/avm_context.d.ts +0 -41
  135. package/dest/public/avm/avm_context.d.ts.map +0 -1
  136. package/dest/public/avm/avm_context.js +0 -44
  137. package/dest/public/avm/avm_contract_call_result.d.ts +0 -32
  138. package/dest/public/avm/avm_contract_call_result.d.ts.map +0 -1
  139. package/dest/public/avm/avm_contract_call_result.js +0 -54
  140. package/dest/public/avm/avm_execution_environment.d.ts +0 -24
  141. package/dest/public/avm/avm_execution_environment.d.ts.map +0 -1
  142. package/dest/public/avm/avm_execution_environment.js +0 -33
  143. package/dest/public/avm/avm_gas.d.ts +0 -44
  144. package/dest/public/avm/avm_gas.d.ts.map +0 -1
  145. package/dest/public/avm/avm_gas.js +0 -195
  146. package/dest/public/avm/avm_machine_state.d.ts +0 -98
  147. package/dest/public/avm/avm_machine_state.d.ts.map +0 -1
  148. package/dest/public/avm/avm_machine_state.js +0 -110
  149. package/dest/public/avm/avm_memory_types.d.ts +0 -275
  150. package/dest/public/avm/avm_memory_types.d.ts.map +0 -1
  151. package/dest/public/avm/avm_memory_types.js +0 -354
  152. package/dest/public/avm/avm_simulator.d.ts +0 -41
  153. package/dest/public/avm/avm_simulator.d.ts.map +0 -1
  154. package/dest/public/avm/avm_simulator.js +0 -192
  155. package/dest/public/avm/avm_simulator_interface.d.ts +0 -9
  156. package/dest/public/avm/avm_simulator_interface.d.ts.map +0 -1
  157. package/dest/public/avm/avm_simulator_interface.js +0 -3
  158. package/dest/public/avm/calldata.d.ts +0 -51
  159. package/dest/public/avm/calldata.d.ts.map +0 -1
  160. package/dest/public/avm/calldata.js +0 -64
  161. package/dest/public/avm/errors.d.ts +0 -104
  162. package/dest/public/avm/errors.d.ts.map +0 -1
  163. package/dest/public/avm/errors.js +0 -141
  164. package/dest/public/avm/fixtures/account_proof_fetcher.d.ts +0 -2
  165. package/dest/public/avm/fixtures/account_proof_fetcher.d.ts.map +0 -1
  166. package/dest/public/avm/fixtures/avm_simulation_tester.d.ts +0 -22
  167. package/dest/public/avm/fixtures/avm_simulation_tester.d.ts.map +0 -1
  168. package/dest/public/avm/fixtures/avm_simulation_tester.js +0 -84
  169. package/dest/public/avm/fixtures/base_avm_simulation_tester.d.ts.map +0 -1
  170. package/dest/public/avm/fixtures/initializers.d.ts +0 -42
  171. package/dest/public/avm/fixtures/initializers.d.ts.map +0 -1
  172. package/dest/public/avm/fixtures/initializers.js +0 -45
  173. package/dest/public/avm/fixtures/utils.d.ts +0 -39
  174. package/dest/public/avm/fixtures/utils.d.ts.map +0 -1
  175. package/dest/public/avm/index.d.ts +0 -2
  176. package/dest/public/avm/index.d.ts.map +0 -1
  177. package/dest/public/avm/index.js +0 -1
  178. package/dest/public/avm/opcodes/accrued_substate.d.ts +0 -74
  179. package/dest/public/avm/opcodes/accrued_substate.d.ts.map +0 -1
  180. package/dest/public/avm/opcodes/accrued_substate.js +0 -254
  181. package/dest/public/avm/opcodes/addressing_mode.d.ts +0 -31
  182. package/dest/public/avm/opcodes/addressing_mode.d.ts.map +0 -1
  183. package/dest/public/avm/opcodes/addressing_mode.js +0 -94
  184. package/dest/public/avm/opcodes/arithmetic.d.ts +0 -49
  185. package/dest/public/avm/opcodes/arithmetic.d.ts.map +0 -1
  186. package/dest/public/avm/opcodes/arithmetic.js +0 -97
  187. package/dest/public/avm/opcodes/bitwise.d.ts +0 -42
  188. package/dest/public/avm/opcodes/bitwise.d.ts.map +0 -1
  189. package/dest/public/avm/opcodes/bitwise.js +0 -99
  190. package/dest/public/avm/opcodes/comparators.d.ts +0 -25
  191. package/dest/public/avm/opcodes/comparators.d.ts.map +0 -1
  192. package/dest/public/avm/opcodes/comparators.js +0 -43
  193. package/dest/public/avm/opcodes/contract.d.ts +0 -20
  194. package/dest/public/avm/opcodes/contract.d.ts.map +0 -1
  195. package/dest/public/avm/opcodes/contract.js +0 -65
  196. package/dest/public/avm/opcodes/control_flow.d.ts +0 -41
  197. package/dest/public/avm/opcodes/control_flow.d.ts.map +0 -1
  198. package/dest/public/avm/opcodes/control_flow.js +0 -107
  199. package/dest/public/avm/opcodes/conversion.d.ts +0 -18
  200. package/dest/public/avm/opcodes/conversion.d.ts.map +0 -1
  201. package/dest/public/avm/opcodes/conversion.js +0 -333
  202. package/dest/public/avm/opcodes/ec_add.d.ts +0 -19
  203. package/dest/public/avm/opcodes/ec_add.d.ts.map +0 -1
  204. package/dest/public/avm/opcodes/ec_add.js +0 -93
  205. package/dest/public/avm/opcodes/environment_getters.d.ts +0 -28
  206. package/dest/public/avm/opcodes/environment_getters.d.ts.map +0 -1
  207. package/dest/public/avm/opcodes/environment_getters.js +0 -77
  208. package/dest/public/avm/opcodes/external_calls.d.ts +0 -59
  209. package/dest/public/avm/opcodes/external_calls.d.ts.map +0 -1
  210. package/dest/public/avm/opcodes/external_calls.js +0 -210
  211. package/dest/public/avm/opcodes/hashing.d.ts +0 -36
  212. package/dest/public/avm/opcodes/hashing.d.ts.map +0 -1
  213. package/dest/public/avm/opcodes/hashing.js +0 -119
  214. package/dest/public/avm/opcodes/index.d.ts +0 -16
  215. package/dest/public/avm/opcodes/index.d.ts.map +0 -1
  216. package/dest/public/avm/opcodes/index.js +0 -15
  217. package/dest/public/avm/opcodes/instruction.d.ts +0 -74
  218. package/dest/public/avm/opcodes/instruction.d.ts.map +0 -1
  219. package/dest/public/avm/opcodes/instruction.js +0 -95
  220. package/dest/public/avm/opcodes/instruction_impl.d.ts +0 -19
  221. package/dest/public/avm/opcodes/instruction_impl.d.ts.map +0 -1
  222. package/dest/public/avm/opcodes/instruction_impl.js +0 -30
  223. package/dest/public/avm/opcodes/memory.d.ts +0 -74
  224. package/dest/public/avm/opcodes/memory.d.ts.map +0 -1
  225. package/dest/public/avm/opcodes/memory.js +0 -257
  226. package/dest/public/avm/opcodes/misc.d.ts +0 -18
  227. package/dest/public/avm/opcodes/misc.d.ts.map +0 -1
  228. package/dest/public/avm/opcodes/misc.js +0 -73
  229. package/dest/public/avm/opcodes/storage.d.ts +0 -25
  230. package/dest/public/avm/opcodes/storage.d.ts.map +0 -1
  231. package/dest/public/avm/opcodes/storage.js +0 -78
  232. package/dest/public/avm/revert_reason.d.ts +0 -18
  233. package/dest/public/avm/revert_reason.d.ts.map +0 -1
  234. package/dest/public/avm/revert_reason.js +0 -39
  235. package/dest/public/avm/serialization/buffer_cursor.d.ts +0 -26
  236. package/dest/public/avm/serialization/buffer_cursor.d.ts.map +0 -1
  237. package/dest/public/avm/serialization/buffer_cursor.js +0 -99
  238. package/dest/public/avm/serialization/bytecode_serialization.d.ts +0 -17
  239. package/dest/public/avm/serialization/bytecode_serialization.d.ts.map +0 -1
  240. package/dest/public/avm/serialization/bytecode_serialization.js +0 -336
  241. package/dest/public/avm/serialization/instruction_serialization.d.ts +0 -114
  242. package/dest/public/avm/serialization/instruction_serialization.d.ts.map +0 -1
  243. package/dest/public/avm/serialization/instruction_serialization.js +0 -261
  244. package/dest/public/avm/test_utils.d.ts +0 -15
  245. package/dest/public/avm/test_utils.d.ts.map +0 -1
  246. package/dest/public/avm/test_utils.js +0 -44
  247. package/dest/public/debug_fn_name.d.ts +0 -18
  248. package/dest/public/debug_fn_name.d.ts.map +0 -1
  249. package/dest/public/debug_fn_name.js +0 -37
  250. package/dest/public/fixtures/custom_bytecode_tests.d.ts +0 -12
  251. package/dest/public/fixtures/custom_bytecode_tests.d.ts.map +0 -1
  252. package/dest/public/fixtures/custom_bytecode_tests.js +0 -174
  253. package/dest/public/fixtures/minimal_public_tx.d.ts +0 -4
  254. package/dest/public/fixtures/minimal_public_tx.d.ts.map +0 -1
  255. package/dest/public/fixtures/minimal_public_tx.js +0 -19
  256. package/dest/public/fixtures/opcode_spammer.d.ts +0 -122
  257. package/dest/public/fixtures/opcode_spammer.d.ts.map +0 -1
  258. package/dest/public/fixtures/opcode_spammer.js +0 -1653
  259. package/dest/public/hinting_db_sources.d.ts +0 -80
  260. package/dest/public/hinting_db_sources.d.ts.map +0 -1
  261. package/dest/public/hinting_db_sources.js +0 -356
  262. package/dest/public/public_tx_simulator/contract_provider_for_cpp.d.ts +0 -19
  263. package/dest/public/public_tx_simulator/contract_provider_for_cpp.d.ts.map +0 -1
  264. package/dest/public/public_tx_simulator/contract_provider_for_cpp.js +0 -99
  265. package/dest/public/public_tx_simulator/cpp_public_tx_simulator.d.ts +0 -53
  266. package/dest/public/public_tx_simulator/cpp_public_tx_simulator.d.ts.map +0 -1
  267. package/dest/public/public_tx_simulator/cpp_public_tx_simulator.js +0 -131
  268. package/dest/public/public_tx_simulator/cpp_public_tx_simulator_with_hinted_dbs.d.ts +0 -42
  269. package/dest/public/public_tx_simulator/cpp_public_tx_simulator_with_hinted_dbs.d.ts.map +0 -1
  270. package/dest/public/public_tx_simulator/cpp_public_tx_simulator_with_hinted_dbs.js +0 -86
  271. package/dest/public/public_tx_simulator/cpp_vs_ts_public_tx_simulator.d.ts +0 -30
  272. package/dest/public/public_tx_simulator/cpp_vs_ts_public_tx_simulator.d.ts.map +0 -1
  273. package/dest/public/public_tx_simulator/cpp_vs_ts_public_tx_simulator.js +0 -171
  274. package/dest/public/public_tx_simulator/dumping_cpp_public_tx_simulator.d.ts +0 -23
  275. package/dest/public/public_tx_simulator/dumping_cpp_public_tx_simulator.d.ts.map +0 -1
  276. package/dest/public/public_tx_simulator/measured_public_tx_simulator.d.ts +0 -31
  277. package/dest/public/public_tx_simulator/measured_public_tx_simulator.d.ts.map +0 -1
  278. package/dest/public/public_tx_simulator/measured_public_tx_simulator.js +0 -51
  279. package/dest/public/public_tx_simulator/public_tx_context.d.ts +0 -135
  280. package/dest/public/public_tx_simulator/public_tx_context.d.ts.map +0 -1
  281. package/dest/public/public_tx_simulator/public_tx_context.js +0 -298
  282. package/dest/public/public_tx_simulator/telemetry_public_tx_simulator.d.ts +0 -21
  283. package/dest/public/public_tx_simulator/telemetry_public_tx_simulator.d.ts.map +0 -1
  284. package/dest/public/public_tx_simulator/telemetry_public_tx_simulator.js +0 -415
  285. package/dest/public/side_effect_trace.d.ts +0 -87
  286. package/dest/public/side_effect_trace.d.ts.map +0 -1
  287. package/dest/public/side_effect_trace.js +0 -199
  288. package/dest/public/side_effect_trace_interface.d.ts +0 -22
  289. package/dest/public/side_effect_trace_interface.d.ts.map +0 -1
  290. package/dest/public/side_effect_trace_interface.js +0 -1
  291. package/dest/public/state_manager/index.d.ts +0 -2
  292. package/dest/public/state_manager/index.d.ts.map +0 -1
  293. package/dest/public/state_manager/index.js +0 -1
  294. package/dest/public/state_manager/nullifiers.d.ts +0 -61
  295. package/dest/public/state_manager/nullifiers.d.ts.map +0 -1
  296. package/dest/public/state_manager/nullifiers.js +0 -92
  297. package/dest/public/state_manager/public_storage.d.ts +0 -66
  298. package/dest/public/state_manager/public_storage.d.ts.map +0 -1
  299. package/dest/public/state_manager/public_storage.js +0 -145
  300. package/dest/public/state_manager/state_manager.d.ts +0 -170
  301. package/dest/public/state_manager/state_manager.d.ts.map +0 -1
  302. package/dest/public/state_manager/state_manager.js +0 -402
  303. package/src/public/avm/avm_context.ts +0 -61
  304. package/src/public/avm/avm_contract_call_result.ts +0 -69
  305. package/src/public/avm/avm_execution_environment.ts +0 -51
  306. package/src/public/avm/avm_gas.ts +0 -183
  307. package/src/public/avm/avm_machine_state.ts +0 -170
  308. package/src/public/avm/avm_memory_types.ts +0 -440
  309. package/src/public/avm/avm_simulator.ts +0 -279
  310. package/src/public/avm/avm_simulator_interface.ts +0 -8
  311. package/src/public/avm/calldata.ts +0 -101
  312. package/src/public/avm/errors.ts +0 -177
  313. package/src/public/avm/fixtures/avm_simulation_tester.ts +0 -122
  314. package/src/public/avm/fixtures/initializers.ts +0 -103
  315. package/src/public/avm/index.ts +0 -1
  316. package/src/public/avm/opcodes/accrued_substate.ts +0 -285
  317. package/src/public/avm/opcodes/addressing_mode.ts +0 -111
  318. package/src/public/avm/opcodes/arithmetic.ts +0 -129
  319. package/src/public/avm/opcodes/bitwise.ts +0 -113
  320. package/src/public/avm/opcodes/comparators.ts +0 -55
  321. package/src/public/avm/opcodes/contract.ts +0 -72
  322. package/src/public/avm/opcodes/control_flow.ts +0 -123
  323. package/src/public/avm/opcodes/conversion.ts +0 -104
  324. package/src/public/avm/opcodes/ec_add.ts +0 -105
  325. package/src/public/avm/opcodes/environment_getters.ts +0 -87
  326. package/src/public/avm/opcodes/external_calls.ts +0 -262
  327. package/src/public/avm/opcodes/hashing.ts +0 -151
  328. package/src/public/avm/opcodes/index.ts +0 -15
  329. package/src/public/avm/opcodes/instruction.ts +0 -136
  330. package/src/public/avm/opcodes/instruction_impl.ts +0 -36
  331. package/src/public/avm/opcodes/memory.ts +0 -293
  332. package/src/public/avm/opcodes/misc.ts +0 -102
  333. package/src/public/avm/opcodes/storage.ts +0 -95
  334. package/src/public/avm/revert_reason.ts +0 -58
  335. package/src/public/avm/serialization/buffer_cursor.ts +0 -118
  336. package/src/public/avm/serialization/bytecode_serialization.ts +0 -215
  337. package/src/public/avm/serialization/instruction_serialization.ts +0 -249
  338. package/src/public/avm/test_utils.ts +0 -64
  339. package/src/public/debug_fn_name.ts +0 -52
  340. package/src/public/fixtures/custom_bytecode_tests.ts +0 -228
  341. package/src/public/fixtures/minimal_public_tx.ts +0 -26
  342. package/src/public/fixtures/opcode_spammer.ts +0 -1717
  343. package/src/public/hinting_db_sources.ts +0 -609
  344. package/src/public/public_tx_simulator/contract_provider_for_cpp.ts +0 -125
  345. package/src/public/public_tx_simulator/cpp_public_tx_simulator.ts +0 -210
  346. package/src/public/public_tx_simulator/cpp_public_tx_simulator_with_hinted_dbs.ts +0 -134
  347. package/src/public/public_tx_simulator/cpp_vs_ts_public_tx_simulator.ts +0 -239
  348. package/src/public/public_tx_simulator/measured_public_tx_simulator.ts +0 -105
  349. package/src/public/public_tx_simulator/public_tx_context.ts +0 -482
  350. package/src/public/public_tx_simulator/telemetry_public_tx_simulator.ts +0 -63
  351. package/src/public/side_effect_trace.ts +0 -293
  352. package/src/public/side_effect_trace_interface.ts +0 -28
  353. package/src/public/state_manager/index.ts +0 -1
  354. package/src/public/state_manager/nullifiers.ts +0 -103
  355. package/src/public/state_manager/public_storage.ts +0 -174
  356. package/src/public/state_manager/state_manager.ts +0 -569
  357. /package/dest/public/avm/{fixtures → testing}/account_proof_fetcher.js +0 -0
  358. /package/src/public/avm/{fixtures → testing}/account_proof.json +0 -0
  359. /package/src/public/avm/{fixtures → testing}/account_proof_fetcher.ts +0 -0
@@ -0,0 +1,457 @@
1
+ // AUTOGENERATED FILE - DO NOT EDIT
2
+
3
+ /** Schema version hash for compatibility checking */
4
+ export const SCHEMA_HASH = 'ef6a34b441b65d90238d2b3616a763136f5f53f9239ecabe9163ebf9388c89bd';
5
+
6
+ // Runtime guards for wire types that JS cannot represent natively.
7
+ // TODO: migrate u64 fields to bigint end-to-end and drop these.
8
+ //
9
+ // Decode: msgpackr returns uint64/int64 wire values as bigint once they
10
+ // exceed 32 bits; values must fit in the JS safe integer range.
11
+ function assertU64(value: number | bigint, ctx: string): number {
12
+ if (typeof value === "bigint") {
13
+ if (value < 0n || value > BigInt(Number.MAX_SAFE_INTEGER)) {
14
+ throw new Error(`${ctx}: u64 value ${value} is outside JS safe integer range`);
15
+ }
16
+ return Number(value);
17
+ }
18
+ if (!Number.isSafeInteger(value) || value < 0) {
19
+ throw new Error(`${ctx}: u64 value ${value} is outside JS safe integer range`);
20
+ }
21
+ return value;
22
+ }
23
+
24
+ // Encode: msgpackr encodes JS numbers above 2^32 as float64, which strict
25
+ // u64 decoders reject; route them through bigint so the wire type stays uint.
26
+ function toWireU64(value: number | bigint, ctx: string): number | bigint {
27
+ const checked = assertU64(value, ctx);
28
+ return checked > 0xffffffff ? BigInt(checked) : checked;
29
+ }
30
+
31
+ function assertBin32(value: Uint8Array, ctx: string): Uint8Array {
32
+ if (value.length !== 32) {
33
+ throw new Error(`${ctx}: expected 32 bytes, got ${value.length}`);
34
+ }
35
+ return value;
36
+ }
37
+
38
+ // Type aliases for primitive types
39
+ export type AztecAddress = Uint8Array;
40
+ export type ContractClassId = Uint8Array;
41
+ export type ForkId = number;
42
+ export type Fr = Uint8Array;
43
+ export type FunctionSelector = Uint8Array;
44
+
45
+ // Public interfaces (exported)
46
+ export interface CdbGetContractInstance {
47
+ address: AztecAddress;
48
+ forkId: ForkId;
49
+ }
50
+
51
+ export interface CdbGetContractClass {
52
+ classId: ContractClassId;
53
+ forkId: ForkId;
54
+ }
55
+
56
+ export interface CdbGetBytecodeCommitment {
57
+ classId: ContractClassId;
58
+ forkId: ForkId;
59
+ }
60
+
61
+ export interface CdbGetDebugFunctionName {
62
+ address: AztecAddress;
63
+ selector: FunctionSelector;
64
+ forkId: ForkId;
65
+ }
66
+
67
+ export interface CdbAddContracts {
68
+ contractDeploymentData: Uint8Array;
69
+ forkId: ForkId;
70
+ }
71
+
72
+ export interface CdbCreateCheckpoint {
73
+ forkId: ForkId;
74
+ }
75
+
76
+ export interface CdbCommitCheckpoint {
77
+ forkId: ForkId;
78
+ }
79
+
80
+ export interface CdbRevertCheckpoint {
81
+ forkId: ForkId;
82
+ }
83
+
84
+ export interface CdbGetContractInstanceResponse {
85
+ instance: Uint8Array | null;
86
+ }
87
+
88
+ export interface CdbGetContractClassResponse {
89
+ contractClass: Uint8Array | null;
90
+ }
91
+
92
+ export interface CdbGetBytecodeCommitmentResponse {
93
+ commitment: Fr | null;
94
+ }
95
+
96
+ export interface CdbGetDebugFunctionNameResponse {
97
+ name: string | null;
98
+ }
99
+
100
+ export interface CdbAddContractsResponse {
101
+
102
+ }
103
+
104
+ export interface CdbCreateCheckpointResponse {
105
+
106
+ }
107
+
108
+ export interface CdbCommitCheckpointResponse {
109
+
110
+ }
111
+
112
+ export interface CdbRevertCheckpointResponse {
113
+
114
+ }
115
+
116
+ export interface CdbErrorResponse {
117
+ message: string;
118
+ }
119
+
120
+ // Private Msgpack interfaces (not exported)
121
+ interface MsgpackCdbGetContractInstance {
122
+ address: Uint8Array;
123
+ forkId: number | bigint;
124
+ }
125
+
126
+ interface MsgpackCdbGetContractClass {
127
+ classId: Uint8Array;
128
+ forkId: number | bigint;
129
+ }
130
+
131
+ interface MsgpackCdbGetBytecodeCommitment {
132
+ classId: Uint8Array;
133
+ forkId: number | bigint;
134
+ }
135
+
136
+ interface MsgpackCdbGetDebugFunctionName {
137
+ address: Uint8Array;
138
+ selector: Uint8Array;
139
+ forkId: number | bigint;
140
+ }
141
+
142
+ interface MsgpackCdbAddContracts {
143
+ contractDeploymentData: Uint8Array;
144
+ forkId: number | bigint;
145
+ }
146
+
147
+ interface MsgpackCdbCreateCheckpoint {
148
+ forkId: number | bigint;
149
+ }
150
+
151
+ interface MsgpackCdbCommitCheckpoint {
152
+ forkId: number | bigint;
153
+ }
154
+
155
+ interface MsgpackCdbRevertCheckpoint {
156
+ forkId: number | bigint;
157
+ }
158
+
159
+ interface MsgpackCdbGetContractInstanceResponse {
160
+ instance: Uint8Array | null;
161
+ }
162
+
163
+ interface MsgpackCdbGetContractClassResponse {
164
+ contractClass: Uint8Array | null;
165
+ }
166
+
167
+ interface MsgpackCdbGetBytecodeCommitmentResponse {
168
+ commitment: Uint8Array | null;
169
+ }
170
+
171
+ interface MsgpackCdbGetDebugFunctionNameResponse {
172
+ name: string | null;
173
+ }
174
+
175
+ interface MsgpackCdbAddContractsResponse {
176
+
177
+ }
178
+
179
+ interface MsgpackCdbCreateCheckpointResponse {
180
+
181
+ }
182
+
183
+ interface MsgpackCdbCommitCheckpointResponse {
184
+
185
+ }
186
+
187
+ interface MsgpackCdbRevertCheckpointResponse {
188
+
189
+ }
190
+
191
+ interface MsgpackCdbErrorResponse {
192
+ message: string;
193
+ }
194
+
195
+ // Conversion functions (exported)
196
+ export function toCdbGetContractInstance(o: MsgpackCdbGetContractInstance): CdbGetContractInstance {
197
+ if (o.address === undefined) { throw new Error("Expected address in CdbGetContractInstance deserialization"); }
198
+ if (o.forkId === undefined) { throw new Error("Expected forkId in CdbGetContractInstance deserialization"); };
199
+ return {
200
+ address: assertBin32(o.address, "o.address"),
201
+ forkId: assertU64(o.forkId, "o.forkId"),
202
+ };
203
+ }
204
+
205
+ export function toCdbGetContractClass(o: MsgpackCdbGetContractClass): CdbGetContractClass {
206
+ if (o.classId === undefined) { throw new Error("Expected classId in CdbGetContractClass deserialization"); }
207
+ if (o.forkId === undefined) { throw new Error("Expected forkId in CdbGetContractClass deserialization"); };
208
+ return {
209
+ classId: assertBin32(o.classId, "o.classId"),
210
+ forkId: assertU64(o.forkId, "o.forkId"),
211
+ };
212
+ }
213
+
214
+ export function toCdbGetBytecodeCommitment(o: MsgpackCdbGetBytecodeCommitment): CdbGetBytecodeCommitment {
215
+ if (o.classId === undefined) { throw new Error("Expected classId in CdbGetBytecodeCommitment deserialization"); }
216
+ if (o.forkId === undefined) { throw new Error("Expected forkId in CdbGetBytecodeCommitment deserialization"); };
217
+ return {
218
+ classId: assertBin32(o.classId, "o.classId"),
219
+ forkId: assertU64(o.forkId, "o.forkId"),
220
+ };
221
+ }
222
+
223
+ export function toCdbGetDebugFunctionName(o: MsgpackCdbGetDebugFunctionName): CdbGetDebugFunctionName {
224
+ if (o.address === undefined) { throw new Error("Expected address in CdbGetDebugFunctionName deserialization"); }
225
+ if (o.selector === undefined) { throw new Error("Expected selector in CdbGetDebugFunctionName deserialization"); }
226
+ if (o.forkId === undefined) { throw new Error("Expected forkId in CdbGetDebugFunctionName deserialization"); };
227
+ return {
228
+ address: assertBin32(o.address, "o.address"),
229
+ selector: assertBin32(o.selector, "o.selector"),
230
+ forkId: assertU64(o.forkId, "o.forkId"),
231
+ };
232
+ }
233
+
234
+ export function toCdbAddContracts(o: MsgpackCdbAddContracts): CdbAddContracts {
235
+ if (o.contractDeploymentData === undefined) { throw new Error("Expected contractDeploymentData in CdbAddContracts deserialization"); }
236
+ if (o.forkId === undefined) { throw new Error("Expected forkId in CdbAddContracts deserialization"); };
237
+ return {
238
+ contractDeploymentData: o.contractDeploymentData,
239
+ forkId: assertU64(o.forkId, "o.forkId"),
240
+ };
241
+ }
242
+
243
+ export function toCdbCreateCheckpoint(o: MsgpackCdbCreateCheckpoint): CdbCreateCheckpoint {
244
+ if (o.forkId === undefined) { throw new Error("Expected forkId in CdbCreateCheckpoint deserialization"); };
245
+ return {
246
+ forkId: assertU64(o.forkId, "o.forkId"),
247
+ };
248
+ }
249
+
250
+ export function toCdbCommitCheckpoint(o: MsgpackCdbCommitCheckpoint): CdbCommitCheckpoint {
251
+ if (o.forkId === undefined) { throw new Error("Expected forkId in CdbCommitCheckpoint deserialization"); };
252
+ return {
253
+ forkId: assertU64(o.forkId, "o.forkId"),
254
+ };
255
+ }
256
+
257
+ export function toCdbRevertCheckpoint(o: MsgpackCdbRevertCheckpoint): CdbRevertCheckpoint {
258
+ if (o.forkId === undefined) { throw new Error("Expected forkId in CdbRevertCheckpoint deserialization"); };
259
+ return {
260
+ forkId: assertU64(o.forkId, "o.forkId"),
261
+ };
262
+ }
263
+
264
+ export function toCdbGetContractInstanceResponse(o: MsgpackCdbGetContractInstanceResponse): CdbGetContractInstanceResponse {
265
+ ;
266
+ return {
267
+ instance: o.instance ?? null,
268
+ };
269
+ }
270
+
271
+ export function toCdbGetContractClassResponse(o: MsgpackCdbGetContractClassResponse): CdbGetContractClassResponse {
272
+ ;
273
+ return {
274
+ contractClass: o.contractClass ?? null,
275
+ };
276
+ }
277
+
278
+ export function toCdbGetBytecodeCommitmentResponse(o: MsgpackCdbGetBytecodeCommitmentResponse): CdbGetBytecodeCommitmentResponse {
279
+ ;
280
+ return {
281
+ commitment: o.commitment != null ? assertBin32(o.commitment, "o.commitment") : null,
282
+ };
283
+ }
284
+
285
+ export function toCdbGetDebugFunctionNameResponse(o: MsgpackCdbGetDebugFunctionNameResponse): CdbGetDebugFunctionNameResponse {
286
+ ;
287
+ return {
288
+ name: o.name ?? null,
289
+ };
290
+ }
291
+
292
+ export function toCdbAddContractsResponse(o: MsgpackCdbAddContractsResponse): CdbAddContractsResponse {
293
+ return {};
294
+ }
295
+
296
+ export function toCdbCreateCheckpointResponse(o: MsgpackCdbCreateCheckpointResponse): CdbCreateCheckpointResponse {
297
+ return {};
298
+ }
299
+
300
+ export function toCdbCommitCheckpointResponse(o: MsgpackCdbCommitCheckpointResponse): CdbCommitCheckpointResponse {
301
+ return {};
302
+ }
303
+
304
+ export function toCdbRevertCheckpointResponse(o: MsgpackCdbRevertCheckpointResponse): CdbRevertCheckpointResponse {
305
+ return {};
306
+ }
307
+
308
+ export function toCdbErrorResponse(o: MsgpackCdbErrorResponse): CdbErrorResponse {
309
+ if (o.message === undefined) { throw new Error("Expected message in CdbErrorResponse deserialization"); };
310
+ return {
311
+ message: o.message,
312
+ };
313
+ }
314
+
315
+ export function fromCdbGetContractInstance(o: CdbGetContractInstance): MsgpackCdbGetContractInstance {
316
+ if (o.address === undefined) { throw new Error("Expected address in CdbGetContractInstance serialization"); }
317
+ if (o.forkId === undefined) { throw new Error("Expected forkId in CdbGetContractInstance serialization"); };
318
+ return {
319
+ address: assertBin32(o.address, "o.address"),
320
+ forkId: toWireU64(o.forkId, "o.forkId"),
321
+ };
322
+ }
323
+
324
+ export function fromCdbGetContractClass(o: CdbGetContractClass): MsgpackCdbGetContractClass {
325
+ if (o.classId === undefined) { throw new Error("Expected classId in CdbGetContractClass serialization"); }
326
+ if (o.forkId === undefined) { throw new Error("Expected forkId in CdbGetContractClass serialization"); };
327
+ return {
328
+ classId: assertBin32(o.classId, "o.classId"),
329
+ forkId: toWireU64(o.forkId, "o.forkId"),
330
+ };
331
+ }
332
+
333
+ export function fromCdbGetBytecodeCommitment(o: CdbGetBytecodeCommitment): MsgpackCdbGetBytecodeCommitment {
334
+ if (o.classId === undefined) { throw new Error("Expected classId in CdbGetBytecodeCommitment serialization"); }
335
+ if (o.forkId === undefined) { throw new Error("Expected forkId in CdbGetBytecodeCommitment serialization"); };
336
+ return {
337
+ classId: assertBin32(o.classId, "o.classId"),
338
+ forkId: toWireU64(o.forkId, "o.forkId"),
339
+ };
340
+ }
341
+
342
+ export function fromCdbGetDebugFunctionName(o: CdbGetDebugFunctionName): MsgpackCdbGetDebugFunctionName {
343
+ if (o.address === undefined) { throw new Error("Expected address in CdbGetDebugFunctionName serialization"); }
344
+ if (o.selector === undefined) { throw new Error("Expected selector in CdbGetDebugFunctionName serialization"); }
345
+ if (o.forkId === undefined) { throw new Error("Expected forkId in CdbGetDebugFunctionName serialization"); };
346
+ return {
347
+ address: assertBin32(o.address, "o.address"),
348
+ selector: assertBin32(o.selector, "o.selector"),
349
+ forkId: toWireU64(o.forkId, "o.forkId"),
350
+ };
351
+ }
352
+
353
+ export function fromCdbAddContracts(o: CdbAddContracts): MsgpackCdbAddContracts {
354
+ if (o.contractDeploymentData === undefined) { throw new Error("Expected contractDeploymentData in CdbAddContracts serialization"); }
355
+ if (o.forkId === undefined) { throw new Error("Expected forkId in CdbAddContracts serialization"); };
356
+ return {
357
+ contractDeploymentData: o.contractDeploymentData,
358
+ forkId: toWireU64(o.forkId, "o.forkId"),
359
+ };
360
+ }
361
+
362
+ export function fromCdbCreateCheckpoint(o: CdbCreateCheckpoint): MsgpackCdbCreateCheckpoint {
363
+ if (o.forkId === undefined) { throw new Error("Expected forkId in CdbCreateCheckpoint serialization"); };
364
+ return {
365
+ forkId: toWireU64(o.forkId, "o.forkId"),
366
+ };
367
+ }
368
+
369
+ export function fromCdbCommitCheckpoint(o: CdbCommitCheckpoint): MsgpackCdbCommitCheckpoint {
370
+ if (o.forkId === undefined) { throw new Error("Expected forkId in CdbCommitCheckpoint serialization"); };
371
+ return {
372
+ forkId: toWireU64(o.forkId, "o.forkId"),
373
+ };
374
+ }
375
+
376
+ export function fromCdbRevertCheckpoint(o: CdbRevertCheckpoint): MsgpackCdbRevertCheckpoint {
377
+ if (o.forkId === undefined) { throw new Error("Expected forkId in CdbRevertCheckpoint serialization"); };
378
+ return {
379
+ forkId: toWireU64(o.forkId, "o.forkId"),
380
+ };
381
+ }
382
+
383
+ export function fromCdbGetContractInstanceResponse(o: CdbGetContractInstanceResponse): MsgpackCdbGetContractInstanceResponse {
384
+ ;
385
+ return {
386
+ instance: o.instance ?? null,
387
+ };
388
+ }
389
+
390
+ export function fromCdbGetContractClassResponse(o: CdbGetContractClassResponse): MsgpackCdbGetContractClassResponse {
391
+ ;
392
+ return {
393
+ contractClass: o.contractClass ?? null,
394
+ };
395
+ }
396
+
397
+ export function fromCdbGetBytecodeCommitmentResponse(o: CdbGetBytecodeCommitmentResponse): MsgpackCdbGetBytecodeCommitmentResponse {
398
+ ;
399
+ return {
400
+ commitment: o.commitment != null ? assertBin32(o.commitment, "o.commitment") : null,
401
+ };
402
+ }
403
+
404
+ export function fromCdbGetDebugFunctionNameResponse(o: CdbGetDebugFunctionNameResponse): MsgpackCdbGetDebugFunctionNameResponse {
405
+ ;
406
+ return {
407
+ name: o.name ?? null,
408
+ };
409
+ }
410
+
411
+ export function fromCdbAddContractsResponse(o: CdbAddContractsResponse): MsgpackCdbAddContractsResponse {
412
+ return {};
413
+ }
414
+
415
+ export function fromCdbCreateCheckpointResponse(o: CdbCreateCheckpointResponse): MsgpackCdbCreateCheckpointResponse {
416
+ return {};
417
+ }
418
+
419
+ export function fromCdbCommitCheckpointResponse(o: CdbCommitCheckpointResponse): MsgpackCdbCommitCheckpointResponse {
420
+ return {};
421
+ }
422
+
423
+ export function fromCdbRevertCheckpointResponse(o: CdbRevertCheckpointResponse): MsgpackCdbRevertCheckpointResponse {
424
+ return {};
425
+ }
426
+
427
+ export function fromCdbErrorResponse(o: CdbErrorResponse): MsgpackCdbErrorResponse {
428
+ if (o.message === undefined) { throw new Error("Expected message in CdbErrorResponse serialization"); };
429
+ return {
430
+ message: o.message,
431
+ };
432
+ }
433
+
434
+ // Base API interfaces
435
+ export interface AsyncApiBase {
436
+ getContractInstance(command: CdbGetContractInstance): Promise<CdbGetContractInstanceResponse>;
437
+ getContractClass(command: CdbGetContractClass): Promise<CdbGetContractClassResponse>;
438
+ getBytecodeCommitment(command: CdbGetBytecodeCommitment): Promise<CdbGetBytecodeCommitmentResponse>;
439
+ getDebugFunctionName(command: CdbGetDebugFunctionName): Promise<CdbGetDebugFunctionNameResponse>;
440
+ addContracts(command: CdbAddContracts): Promise<CdbAddContractsResponse>;
441
+ createCheckpoint(command: CdbCreateCheckpoint): Promise<CdbCreateCheckpointResponse>;
442
+ commitCheckpoint(command: CdbCommitCheckpoint): Promise<CdbCommitCheckpointResponse>;
443
+ revertCheckpoint(command: CdbRevertCheckpoint): Promise<CdbRevertCheckpointResponse>;
444
+ destroy(): Promise<void>;
445
+ }
446
+
447
+ export interface SyncApiBase {
448
+ getContractInstance(command: CdbGetContractInstance): CdbGetContractInstanceResponse;
449
+ getContractClass(command: CdbGetContractClass): CdbGetContractClassResponse;
450
+ getBytecodeCommitment(command: CdbGetBytecodeCommitment): CdbGetBytecodeCommitmentResponse;
451
+ getDebugFunctionName(command: CdbGetDebugFunctionName): CdbGetDebugFunctionNameResponse;
452
+ addContracts(command: CdbAddContracts): CdbAddContractsResponse;
453
+ createCheckpoint(command: CdbCreateCheckpoint): CdbCreateCheckpointResponse;
454
+ commitCheckpoint(command: CdbCommitCheckpoint): CdbCommitCheckpointResponse;
455
+ revertCheckpoint(command: CdbRevertCheckpoint): CdbRevertCheckpointResponse;
456
+ destroy(): void;
457
+ }
@@ -0,0 +1,109 @@
1
+ // AUTOGENERATED FILE - DO NOT EDIT
2
+ // Server-side dispatch for IPC protocol
3
+
4
+ import { Decoder, Encoder } from 'msgpackr';
5
+ import type { CdbAddContracts, CdbAddContractsResponse, CdbCommitCheckpoint, CdbCommitCheckpointResponse, CdbCreateCheckpoint, CdbCreateCheckpointResponse, CdbGetBytecodeCommitment, CdbGetBytecodeCommitmentResponse, CdbGetContractClass, CdbGetContractClassResponse, CdbGetContractInstance, CdbGetContractInstanceResponse, CdbGetDebugFunctionName, CdbGetDebugFunctionNameResponse, CdbRevertCheckpoint, CdbRevertCheckpointResponse } from './api_types.js';
6
+ import { fromCdbAddContractsResponse, fromCdbCommitCheckpointResponse, fromCdbCreateCheckpointResponse, fromCdbGetBytecodeCommitmentResponse, fromCdbGetContractClassResponse, fromCdbGetContractInstanceResponse, fromCdbGetDebugFunctionNameResponse, fromCdbRevertCheckpointResponse, toCdbAddContracts, toCdbCommitCheckpoint, toCdbCreateCheckpoint, toCdbGetBytecodeCommitment, toCdbGetContractClass, toCdbGetContractInstance, toCdbGetDebugFunctionName, toCdbRevertCheckpoint } from './api_types.js';
7
+
8
+ /** Handler interface — implement this to serve commands. */
9
+ export interface Handler {
10
+ getContractInstance(command: CdbGetContractInstance): Promise<CdbGetContractInstanceResponse>;
11
+ getContractClass(command: CdbGetContractClass): Promise<CdbGetContractClassResponse>;
12
+ getBytecodeCommitment(command: CdbGetBytecodeCommitment): Promise<CdbGetBytecodeCommitmentResponse>;
13
+ getDebugFunctionName(command: CdbGetDebugFunctionName): Promise<CdbGetDebugFunctionNameResponse>;
14
+ addContracts(command: CdbAddContracts): Promise<CdbAddContractsResponse>;
15
+ createCheckpoint(command: CdbCreateCheckpoint): Promise<CdbCreateCheckpointResponse>;
16
+ commitCheckpoint(command: CdbCommitCheckpoint): Promise<CdbCommitCheckpointResponse>;
17
+ revertCheckpoint(command: CdbRevertCheckpoint): Promise<CdbRevertCheckpointResponse>;
18
+ }
19
+
20
+ /**
21
+ * Dispatch a [commandName, payload] pair to the handler.
22
+ * Returns [responseName, responsePayload] for serialization.
23
+ * Handler failures are wrapped into the schema error variant.
24
+ */
25
+ export async function dispatch(
26
+ handler: Handler,
27
+ commandName: string,
28
+ payload: any,
29
+ ): Promise<[string, any]> {
30
+ try {
31
+ switch (commandName) {
32
+ case 'CdbGetContractInstance': {
33
+ const cmd = toCdbGetContractInstance(payload);
34
+ const result = await handler.getContractInstance(cmd);
35
+ return ['CdbGetContractInstanceResponse', fromCdbGetContractInstanceResponse(result)];
36
+ }
37
+ case 'CdbGetContractClass': {
38
+ const cmd = toCdbGetContractClass(payload);
39
+ const result = await handler.getContractClass(cmd);
40
+ return ['CdbGetContractClassResponse', fromCdbGetContractClassResponse(result)];
41
+ }
42
+ case 'CdbGetBytecodeCommitment': {
43
+ const cmd = toCdbGetBytecodeCommitment(payload);
44
+ const result = await handler.getBytecodeCommitment(cmd);
45
+ return ['CdbGetBytecodeCommitmentResponse', fromCdbGetBytecodeCommitmentResponse(result)];
46
+ }
47
+ case 'CdbGetDebugFunctionName': {
48
+ const cmd = toCdbGetDebugFunctionName(payload);
49
+ const result = await handler.getDebugFunctionName(cmd);
50
+ return ['CdbGetDebugFunctionNameResponse', fromCdbGetDebugFunctionNameResponse(result)];
51
+ }
52
+ case 'CdbAddContracts': {
53
+ const cmd = toCdbAddContracts(payload);
54
+ const result = await handler.addContracts(cmd);
55
+ return ['CdbAddContractsResponse', fromCdbAddContractsResponse(result)];
56
+ }
57
+ case 'CdbCreateCheckpoint': {
58
+ const cmd = toCdbCreateCheckpoint(payload);
59
+ const result = await handler.createCheckpoint(cmd);
60
+ return ['CdbCreateCheckpointResponse', fromCdbCreateCheckpointResponse(result)];
61
+ }
62
+ case 'CdbCommitCheckpoint': {
63
+ const cmd = toCdbCommitCheckpoint(payload);
64
+ const result = await handler.commitCheckpoint(cmd);
65
+ return ['CdbCommitCheckpointResponse', fromCdbCommitCheckpointResponse(result)];
66
+ }
67
+ case 'CdbRevertCheckpoint': {
68
+ const cmd = toCdbRevertCheckpoint(payload);
69
+ const result = await handler.revertCheckpoint(cmd);
70
+ return ['CdbRevertCheckpointResponse', fromCdbRevertCheckpointResponse(result)];
71
+ }
72
+ default:
73
+ return ['CdbErrorResponse', { message: `Unknown command: ${commandName}` }];
74
+ }
75
+ } catch (err: any) {
76
+ return ['CdbErrorResponse', { message: err?.message ?? String(err) }];
77
+ }
78
+ }
79
+
80
+ const requestDecoder = new Decoder({ useRecords: false });
81
+ const responseEncoder = new Encoder({ useRecords: false, variableMapSize: true });
82
+
83
+ /**
84
+ * Decode a framed request, dispatch it, and encode the framed response.
85
+ * All failures (malformed framing included) produce a decodable error
86
+ * variant rather than a throw, so transports can use this directly as
87
+ * their request handler.
88
+ */
89
+ export async function handleRequest(
90
+ handler: Handler,
91
+ requestBytes: Uint8Array,
92
+ ): Promise<Uint8Array> {
93
+ let commandName: string;
94
+ let payload: any;
95
+ try {
96
+ const request = requestDecoder.unpack(requestBytes) as [[string, any]];
97
+ [[commandName, payload]] = request;
98
+ if (typeof commandName !== 'string') {
99
+ throw new Error('expected [name, payload] request framing');
100
+ }
101
+ } catch (err: any) {
102
+ return responseEncoder.pack([
103
+ 'CdbErrorResponse',
104
+ { message: `Malformed request: ${err?.message ?? String(err)}` },
105
+ ]);
106
+ }
107
+ const [respName, respPayload] = await dispatch(handler, commandName, payload ?? {});
108
+ return responseEncoder.pack([respName, respPayload]);
109
+ }