@aztec/archiver 0.0.0-test.1 → 0.0.1-commit.017a351

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 (252) hide show
  1. package/README.md +172 -9
  2. package/dest/archiver.d.ts +176 -0
  3. package/dest/archiver.d.ts.map +1 -0
  4. package/dest/archiver.js +905 -0
  5. package/dest/config.d.ts +33 -0
  6. package/dest/config.d.ts.map +1 -0
  7. package/dest/config.js +78 -0
  8. package/dest/errors.d.ts +87 -0
  9. package/dest/errors.d.ts.map +1 -0
  10. package/dest/errors.js +129 -0
  11. package/dest/factory.d.ts +19 -17
  12. package/dest/factory.d.ts.map +1 -1
  13. package/dest/factory.js +125 -61
  14. package/dest/index.d.ts +19 -4
  15. package/dest/index.d.ts.map +1 -1
  16. package/dest/index.js +17 -3
  17. package/dest/interfaces.d.ts +9 -0
  18. package/dest/interfaces.d.ts.map +1 -0
  19. package/dest/interfaces.js +3 -0
  20. package/dest/l1/bin/retrieve-calldata.d.ts +3 -0
  21. package/dest/l1/bin/retrieve-calldata.d.ts.map +1 -0
  22. package/dest/l1/bin/retrieve-calldata.js +152 -0
  23. package/dest/l1/calldata_retriever.d.ts +136 -0
  24. package/dest/l1/calldata_retriever.d.ts.map +1 -0
  25. package/dest/l1/calldata_retriever.js +412 -0
  26. package/dest/l1/data_retrieval.d.ts +97 -0
  27. package/dest/l1/data_retrieval.d.ts.map +1 -0
  28. package/dest/l1/data_retrieval.js +307 -0
  29. package/dest/l1/debug_tx.d.ts +19 -0
  30. package/dest/l1/debug_tx.d.ts.map +1 -0
  31. package/dest/l1/debug_tx.js +73 -0
  32. package/dest/l1/spire_proposer.d.ts +70 -0
  33. package/dest/l1/spire_proposer.d.ts.map +1 -0
  34. package/dest/l1/spire_proposer.js +149 -0
  35. package/dest/l1/trace_tx.d.ts +43 -0
  36. package/dest/l1/trace_tx.d.ts.map +1 -0
  37. package/dest/l1/trace_tx.js +91 -0
  38. package/dest/l1/types.d.ts +12 -0
  39. package/dest/l1/types.d.ts.map +1 -0
  40. package/dest/l1/types.js +3 -0
  41. package/dest/l1/validate_historical_logs.d.ts +23 -0
  42. package/dest/l1/validate_historical_logs.d.ts.map +1 -0
  43. package/dest/l1/validate_historical_logs.js +108 -0
  44. package/dest/l1/validate_trace.d.ts +32 -0
  45. package/dest/l1/validate_trace.d.ts.map +1 -0
  46. package/dest/l1/validate_trace.js +154 -0
  47. package/dest/modules/contract_data_source_adapter.d.ts +25 -0
  48. package/dest/modules/contract_data_source_adapter.d.ts.map +1 -0
  49. package/dest/modules/contract_data_source_adapter.js +40 -0
  50. package/dest/modules/data_source_base.d.ts +113 -0
  51. package/dest/modules/data_source_base.d.ts.map +1 -0
  52. package/dest/modules/data_source_base.js +348 -0
  53. package/dest/modules/data_store_updater.d.ts +105 -0
  54. package/dest/modules/data_store_updater.d.ts.map +1 -0
  55. package/dest/modules/data_store_updater.js +392 -0
  56. package/dest/modules/instrumentation.d.ts +55 -0
  57. package/dest/modules/instrumentation.d.ts.map +1 -0
  58. package/dest/modules/instrumentation.js +145 -0
  59. package/dest/modules/l1_synchronizer.d.ts +77 -0
  60. package/dest/modules/l1_synchronizer.d.ts.map +1 -0
  61. package/dest/modules/l1_synchronizer.js +1344 -0
  62. package/dest/modules/outbox_trees_resolver.d.ts +62 -0
  63. package/dest/modules/outbox_trees_resolver.d.ts.map +1 -0
  64. package/dest/modules/outbox_trees_resolver.js +162 -0
  65. package/dest/modules/validation.d.ts +18 -0
  66. package/dest/modules/validation.d.ts.map +1 -0
  67. package/dest/modules/validation.js +104 -0
  68. package/dest/store/block_store.d.ts +294 -0
  69. package/dest/store/block_store.d.ts.map +1 -0
  70. package/dest/store/block_store.js +1188 -0
  71. package/dest/store/contract_class_store.d.ts +31 -0
  72. package/dest/store/contract_class_store.d.ts.map +1 -0
  73. package/dest/store/contract_class_store.js +80 -0
  74. package/dest/store/contract_instance_store.d.ts +51 -0
  75. package/dest/store/contract_instance_store.d.ts.map +1 -0
  76. package/dest/store/contract_instance_store.js +112 -0
  77. package/dest/store/data_stores.d.ts +68 -0
  78. package/dest/store/data_stores.d.ts.map +1 -0
  79. package/dest/store/data_stores.js +54 -0
  80. package/dest/store/function_names_cache.d.ts +17 -0
  81. package/dest/store/function_names_cache.d.ts.map +1 -0
  82. package/dest/store/function_names_cache.js +30 -0
  83. package/dest/store/l2_tips_cache.d.ts +25 -0
  84. package/dest/store/l2_tips_cache.d.ts.map +1 -0
  85. package/dest/store/l2_tips_cache.js +26 -0
  86. package/dest/store/log_store.d.ts +59 -0
  87. package/dest/store/log_store.d.ts.map +1 -0
  88. package/dest/store/log_store.js +310 -0
  89. package/dest/store/log_store_codec.d.ts +70 -0
  90. package/dest/store/log_store_codec.d.ts.map +1 -0
  91. package/dest/store/log_store_codec.js +101 -0
  92. package/dest/store/message_store.d.ts +50 -0
  93. package/dest/store/message_store.d.ts.map +1 -0
  94. package/dest/store/message_store.js +230 -0
  95. package/dest/structs/data_retrieval.d.ts +27 -0
  96. package/dest/structs/data_retrieval.d.ts.map +1 -0
  97. package/dest/structs/inbox_message.d.ts +15 -0
  98. package/dest/structs/inbox_message.d.ts.map +1 -0
  99. package/dest/structs/inbox_message.js +39 -0
  100. package/dest/structs/published.d.ts +2 -0
  101. package/dest/structs/published.d.ts.map +1 -0
  102. package/dest/structs/published.js +1 -0
  103. package/dest/test/fake_l1_state.d.ts +214 -0
  104. package/dest/test/fake_l1_state.d.ts.map +1 -0
  105. package/dest/test/fake_l1_state.js +517 -0
  106. package/dest/test/index.d.ts +2 -1
  107. package/dest/test/index.d.ts.map +1 -1
  108. package/dest/test/index.js +4 -1
  109. package/dest/test/mock_archiver.d.ts +16 -8
  110. package/dest/test/mock_archiver.d.ts.map +1 -1
  111. package/dest/test/mock_archiver.js +19 -14
  112. package/dest/test/mock_l1_to_l2_message_source.d.ts +9 -6
  113. package/dest/test/mock_l1_to_l2_message_source.d.ts.map +1 -1
  114. package/dest/test/mock_l1_to_l2_message_source.js +31 -7
  115. package/dest/test/mock_l2_block_source.d.ts +98 -35
  116. package/dest/test/mock_l2_block_source.d.ts.map +1 -1
  117. package/dest/test/mock_l2_block_source.js +416 -76
  118. package/dest/test/mock_structs.d.ts +88 -0
  119. package/dest/test/mock_structs.d.ts.map +1 -0
  120. package/dest/test/mock_structs.js +183 -0
  121. package/dest/test/noop_l1_archiver.d.ts +30 -0
  122. package/dest/test/noop_l1_archiver.d.ts.map +1 -0
  123. package/dest/test/noop_l1_archiver.js +85 -0
  124. package/package.json +31 -33
  125. package/src/archiver.ts +719 -0
  126. package/src/config.ts +108 -0
  127. package/src/errors.ts +203 -0
  128. package/src/factory.ts +190 -76
  129. package/src/index.ts +27 -3
  130. package/src/interfaces.ts +9 -0
  131. package/src/l1/README.md +55 -0
  132. package/src/l1/bin/retrieve-calldata.ts +194 -0
  133. package/src/l1/calldata_retriever.ts +522 -0
  134. package/src/l1/data_retrieval.ts +484 -0
  135. package/src/l1/debug_tx.ts +99 -0
  136. package/src/l1/spire_proposer.ts +152 -0
  137. package/src/l1/trace_tx.ts +128 -0
  138. package/src/l1/types.ts +13 -0
  139. package/src/l1/validate_historical_logs.ts +140 -0
  140. package/src/l1/validate_trace.ts +229 -0
  141. package/src/modules/contract_data_source_adapter.ts +55 -0
  142. package/src/modules/data_source_base.ts +495 -0
  143. package/src/modules/data_store_updater.ts +518 -0
  144. package/src/modules/instrumentation.ts +204 -0
  145. package/src/modules/l1_synchronizer.ts +1257 -0
  146. package/src/modules/outbox_trees_resolver.ts +199 -0
  147. package/src/modules/validation.ts +130 -0
  148. package/src/store/block_store.ts +1540 -0
  149. package/src/store/contract_class_store.ts +108 -0
  150. package/src/store/contract_instance_store.ts +161 -0
  151. package/src/store/data_stores.ts +104 -0
  152. package/src/store/function_names_cache.ts +37 -0
  153. package/src/store/l2_tips_cache.ts +35 -0
  154. package/src/store/log_store.ts +379 -0
  155. package/src/store/log_store_codec.ts +132 -0
  156. package/src/store/message_store.ts +311 -0
  157. package/src/structs/inbox_message.ts +41 -0
  158. package/src/structs/published.ts +1 -0
  159. package/src/test/fake_l1_state.ts +770 -0
  160. package/src/test/fixtures/debug_traceTransaction-multicall3.json +88 -0
  161. package/src/test/fixtures/debug_traceTransaction-multiplePropose.json +153 -0
  162. package/src/test/fixtures/debug_traceTransaction-proxied.json +122 -0
  163. package/src/test/fixtures/trace_transaction-multicall3.json +65 -0
  164. package/src/test/fixtures/trace_transaction-multiplePropose.json +319 -0
  165. package/src/test/fixtures/trace_transaction-proxied.json +128 -0
  166. package/src/test/fixtures/trace_transaction-randomRevert.json +216 -0
  167. package/src/test/index.ts +4 -0
  168. package/src/test/mock_archiver.ts +23 -16
  169. package/src/test/mock_l1_to_l2_message_source.ts +27 -8
  170. package/src/test/mock_l2_block_source.ts +514 -84
  171. package/src/test/mock_structs.ts +325 -0
  172. package/src/test/noop_l1_archiver.ts +148 -0
  173. package/dest/archiver/archiver.d.ts +0 -197
  174. package/dest/archiver/archiver.d.ts.map +0 -1
  175. package/dest/archiver/archiver.js +0 -900
  176. package/dest/archiver/archiver_store.d.ts +0 -220
  177. package/dest/archiver/archiver_store.d.ts.map +0 -1
  178. package/dest/archiver/archiver_store.js +0 -4
  179. package/dest/archiver/archiver_store_test_suite.d.ts +0 -8
  180. package/dest/archiver/archiver_store_test_suite.d.ts.map +0 -1
  181. package/dest/archiver/archiver_store_test_suite.js +0 -794
  182. package/dest/archiver/config.d.ts +0 -37
  183. package/dest/archiver/config.d.ts.map +0 -1
  184. package/dest/archiver/config.js +0 -46
  185. package/dest/archiver/data_retrieval.d.ts +0 -74
  186. package/dest/archiver/data_retrieval.d.ts.map +0 -1
  187. package/dest/archiver/data_retrieval.js +0 -283
  188. package/dest/archiver/errors.d.ts +0 -4
  189. package/dest/archiver/errors.d.ts.map +0 -1
  190. package/dest/archiver/errors.js +0 -5
  191. package/dest/archiver/index.d.ts +0 -8
  192. package/dest/archiver/index.d.ts.map +0 -1
  193. package/dest/archiver/index.js +0 -5
  194. package/dest/archiver/instrumentation.d.ts +0 -29
  195. package/dest/archiver/instrumentation.d.ts.map +0 -1
  196. package/dest/archiver/instrumentation.js +0 -99
  197. package/dest/archiver/kv_archiver_store/block_store.d.ts +0 -87
  198. package/dest/archiver/kv_archiver_store/block_store.d.ts.map +0 -1
  199. package/dest/archiver/kv_archiver_store/block_store.js +0 -217
  200. package/dest/archiver/kv_archiver_store/contract_class_store.d.ts +0 -18
  201. package/dest/archiver/kv_archiver_store/contract_class_store.d.ts.map +0 -1
  202. package/dest/archiver/kv_archiver_store/contract_class_store.js +0 -126
  203. package/dest/archiver/kv_archiver_store/contract_instance_store.d.ts +0 -21
  204. package/dest/archiver/kv_archiver_store/contract_instance_store.d.ts.map +0 -1
  205. package/dest/archiver/kv_archiver_store/contract_instance_store.js +0 -63
  206. package/dest/archiver/kv_archiver_store/kv_archiver_store.d.ts +0 -153
  207. package/dest/archiver/kv_archiver_store/kv_archiver_store.d.ts.map +0 -1
  208. package/dest/archiver/kv_archiver_store/kv_archiver_store.js +0 -254
  209. package/dest/archiver/kv_archiver_store/log_store.d.ts +0 -49
  210. package/dest/archiver/kv_archiver_store/log_store.d.ts.map +0 -1
  211. package/dest/archiver/kv_archiver_store/log_store.js +0 -364
  212. package/dest/archiver/kv_archiver_store/message_store.d.ts +0 -33
  213. package/dest/archiver/kv_archiver_store/message_store.d.ts.map +0 -1
  214. package/dest/archiver/kv_archiver_store/message_store.js +0 -85
  215. package/dest/archiver/kv_archiver_store/nullifier_store.d.ts +0 -12
  216. package/dest/archiver/kv_archiver_store/nullifier_store.d.ts.map +0 -1
  217. package/dest/archiver/kv_archiver_store/nullifier_store.js +0 -73
  218. package/dest/archiver/memory_archiver_store/l1_to_l2_message_store.d.ts +0 -23
  219. package/dest/archiver/memory_archiver_store/l1_to_l2_message_store.d.ts.map +0 -1
  220. package/dest/archiver/memory_archiver_store/l1_to_l2_message_store.js +0 -49
  221. package/dest/archiver/memory_archiver_store/memory_archiver_store.d.ts +0 -175
  222. package/dest/archiver/memory_archiver_store/memory_archiver_store.d.ts.map +0 -1
  223. package/dest/archiver/memory_archiver_store/memory_archiver_store.js +0 -636
  224. package/dest/archiver/structs/data_retrieval.d.ts +0 -27
  225. package/dest/archiver/structs/data_retrieval.d.ts.map +0 -1
  226. package/dest/archiver/structs/published.d.ts +0 -11
  227. package/dest/archiver/structs/published.d.ts.map +0 -1
  228. package/dest/archiver/structs/published.js +0 -1
  229. package/dest/rpc/index.d.ts +0 -10
  230. package/dest/rpc/index.d.ts.map +0 -1
  231. package/dest/rpc/index.js +0 -18
  232. package/src/archiver/archiver.ts +0 -1181
  233. package/src/archiver/archiver_store.ts +0 -263
  234. package/src/archiver/archiver_store_test_suite.ts +0 -810
  235. package/src/archiver/config.ts +0 -92
  236. package/src/archiver/data_retrieval.ts +0 -422
  237. package/src/archiver/errors.ts +0 -5
  238. package/src/archiver/index.ts +0 -7
  239. package/src/archiver/instrumentation.ts +0 -132
  240. package/src/archiver/kv_archiver_store/block_store.ts +0 -283
  241. package/src/archiver/kv_archiver_store/contract_class_store.ts +0 -186
  242. package/src/archiver/kv_archiver_store/contract_instance_store.ts +0 -107
  243. package/src/archiver/kv_archiver_store/kv_archiver_store.ts +0 -358
  244. package/src/archiver/kv_archiver_store/log_store.ts +0 -444
  245. package/src/archiver/kv_archiver_store/message_store.ts +0 -102
  246. package/src/archiver/kv_archiver_store/nullifier_store.ts +0 -97
  247. package/src/archiver/memory_archiver_store/l1_to_l2_message_store.ts +0 -61
  248. package/src/archiver/memory_archiver_store/memory_archiver_store.ts +0 -801
  249. package/src/archiver/structs/published.ts +0 -11
  250. package/src/rpc/index.ts +0 -20
  251. /package/dest/{archiver/structs → structs}/data_retrieval.js +0 -0
  252. /package/src/{archiver/structs → structs}/data_retrieval.ts +0 -0
@@ -1,61 +0,0 @@
1
- import { L1_TO_L2_MSG_SUBTREE_HEIGHT } from '@aztec/constants';
2
- import type { Fr } from '@aztec/foundation/fields';
3
- import { InboxLeaf } from '@aztec/stdlib/messaging';
4
-
5
- /**
6
- * A simple in-memory implementation of an L1 to L2 message store.
7
- */
8
- export class L1ToL2MessageStore {
9
- /**
10
- * A map pointing from a key in a "messageIndex" format to the corresponding L1 to L2 message hash.
11
- */
12
- protected store: Map<string, Fr> = new Map();
13
-
14
- #l1ToL2MessagesSubtreeSize = 2 ** L1_TO_L2_MSG_SUBTREE_HEIGHT;
15
-
16
- constructor() {}
17
-
18
- getTotalL1ToL2MessageCount(): bigint {
19
- return BigInt(this.store.size);
20
- }
21
-
22
- addMessage(message: InboxLeaf) {
23
- this.store.set(`${message.index}`, message.leaf);
24
- }
25
-
26
- getMessages(blockNumber: bigint): Fr[] {
27
- const messages: Fr[] = [];
28
- let undefinedMessageFound = false;
29
- const startIndex = Number(InboxLeaf.smallestIndexFromL2Block(blockNumber));
30
-
31
- for (let i = startIndex; i < startIndex + this.#l1ToL2MessagesSubtreeSize; i++) {
32
- // This is inefficient but probably fine for now.
33
- const message = this.store.get(`${i}`);
34
- if (message) {
35
- if (undefinedMessageFound) {
36
- throw new Error(`L1 to L2 message gap found in block ${blockNumber}`);
37
- }
38
- messages.push(message);
39
- } else {
40
- undefinedMessageFound = true;
41
- // We continue iterating over messages here to verify that there are no more messages after the undefined one.
42
- // --> If this was the case this would imply there is some issue with log fetching.
43
- }
44
- }
45
- return messages;
46
- }
47
-
48
- /**
49
- * Gets the L1 to L2 message index in the L1 to L2 message tree.
50
- * @param l1ToL2Message - The L1 to L2 message.
51
- * @returns The index of the L1 to L2 message in the L1 to L2 message tree (undefined if not found).
52
- */
53
- getMessageIndex(l1ToL2Message: Fr): bigint | undefined {
54
- for (const [key, message] of this.store.entries()) {
55
- if (message.equals(l1ToL2Message)) {
56
- return BigInt(key);
57
- }
58
- }
59
- return undefined;
60
- }
61
- }