@layerzerolabs/protocol-stellar-v2 0.2.121 → 0.2.122

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 (752) hide show
  1. package/Cargo.toml +22 -37
  2. package/docs/error-spec.md +24 -24
  3. package/docs/layerzero-v2-on-stellar.md +8 -6
  4. package/docs/oapp-guide.md +2 -402
  5. package/docs/oft-guide.md +2 -401
  6. package/{contracts/endpoint-v2 → endpoint-v2}/Cargo.toml +3 -2
  7. package/{contracts/layerzero-views → layerzero-views}/Cargo.toml +1 -6
  8. package/{contracts/message-libs → message-libs}/blocked-message-lib/Cargo.toml +0 -1
  9. package/{contracts/message-libs → message-libs}/message-lib-common/Cargo.toml +2 -2
  10. package/{contracts/message-libs → message-libs}/simple-message-lib/Cargo.toml +1 -2
  11. package/{contracts/message-libs → message-libs}/treasury/Cargo.toml +1 -2
  12. package/{contracts/message-libs → message-libs}/uln-302/Cargo.toml +3 -2
  13. package/package.json +32 -15
  14. package/rustfmt.toml +0 -2
  15. package/{contracts/upgrader → upgrader}/Cargo.toml +0 -1
  16. package/{contracts/workers → workers}/dvn/Cargo.toml +1 -2
  17. package/{contracts/workers → workers}/dvn-fee-lib/Cargo.toml +1 -2
  18. package/{contracts/workers → workers}/executor/Cargo.toml +3 -2
  19. package/{contracts/workers → workers}/executor-fee-lib/Cargo.toml +1 -2
  20. package/{contracts/workers → workers}/executor-helper/Cargo.toml +0 -1
  21. package/{contracts/workers → workers}/fee-lib-interfaces/Cargo.toml +0 -1
  22. package/{contracts/workers → workers}/price-feed/Cargo.toml +1 -2
  23. package/{contracts/workers → workers}/worker/Cargo.toml +0 -1
  24. package/.turbo/turbo-build.log +0 -1363
  25. package/.turbo/turbo-lint.log +0 -401
  26. package/.turbo/turbo-test.log +0 -1952
  27. package/Cargo.lock +0 -2357
  28. package/contracts/common-macros/Cargo.toml +0 -20
  29. package/contracts/common-macros/src/auth.rs +0 -95
  30. package/contracts/common-macros/src/contract_ttl.rs +0 -92
  31. package/contracts/common-macros/src/error.rs +0 -43
  32. package/contracts/common-macros/src/lib.rs +0 -585
  33. package/contracts/common-macros/src/lz_contract.rs +0 -105
  34. package/contracts/common-macros/src/rbac.rs +0 -90
  35. package/contracts/common-macros/src/storage.rs +0 -522
  36. package/contracts/common-macros/src/tests/auth.rs +0 -230
  37. package/contracts/common-macros/src/tests/contract_ttl.rs +0 -695
  38. package/contracts/common-macros/src/tests/error.rs +0 -156
  39. package/contracts/common-macros/src/tests/lz_contract.rs +0 -87
  40. package/contracts/common-macros/src/tests/mod.rs +0 -11
  41. package/contracts/common-macros/src/tests/rbac.rs +0 -523
  42. package/contracts/common-macros/src/tests/snapshots/common_macros__tests__auth__snapshot_generated_multisig_code.snap +0 -31
  43. package/contracts/common-macros/src/tests/snapshots/common_macros__tests__auth__snapshot_generated_ownable_code.snap +0 -39
  44. package/contracts/common-macros/src/tests/snapshots/common_macros__tests__auth__snapshot_only_auth_preserves_function_signature.snap +0 -19
  45. package/contracts/common-macros/src/tests/snapshots/common_macros__tests__contract_ttl__snapshot_generated_contractimpl_code.snap +0 -77
  46. package/contracts/common-macros/src/tests/snapshots/common_macros__tests__contract_ttl__snapshot_generated_contracttrait_code.snap +0 -46
  47. package/contracts/common-macros/src/tests/snapshots/common_macros__tests__error__snapshot_generated_contract_error_code.snap +0 -20
  48. package/contracts/common-macros/src/tests/snapshots/common_macros__tests__lz_contract__snapshot_generated_lz_contract_code.snap +0 -51
  49. package/contracts/common-macros/src/tests/snapshots/common_macros__tests__rbac__snapshot_authorizer_role.snap +0 -21
  50. package/contracts/common-macros/src/tests/snapshots/common_macros__tests__rbac__snapshot_preserve_function_signature.snap +0 -21
  51. package/contracts/common-macros/src/tests/snapshots/common_macros__tests__ttl_configurable__snapshot_generated_ttl_configurable_code.snap +0 -10
  52. package/contracts/common-macros/src/tests/snapshots/common_macros__tests__ttl_extendable__snapshot_generated_ttl_extendable_code.snap +0 -8
  53. package/contracts/common-macros/src/tests/snapshots/common_macros__tests__upgradeable__snapshot_generated_upgradeable_code.snap +0 -28
  54. package/contracts/common-macros/src/tests/storage/extract_fields.rs +0 -87
  55. package/contracts/common-macros/src/tests/storage/gen_accessor_methods.rs +0 -223
  56. package/contracts/common-macros/src/tests/storage/gen_args.rs +0 -65
  57. package/contracts/common-macros/src/tests/storage/gen_enum_variant.rs +0 -78
  58. package/contracts/common-macros/src/tests/storage/gen_key.rs +0 -108
  59. package/contracts/common-macros/src/tests/storage/gen_params.rs +0 -105
  60. package/contracts/common-macros/src/tests/storage/generate_storage.rs +0 -410
  61. package/contracts/common-macros/src/tests/storage/is_primitive_type.rs +0 -48
  62. package/contracts/common-macros/src/tests/storage/mod.rs +0 -16
  63. package/contracts/common-macros/src/tests/storage/parse_default.rs +0 -164
  64. package/contracts/common-macros/src/tests/storage/parse_name.rs +0 -158
  65. package/contracts/common-macros/src/tests/storage/parse_no_ttl_extension.rs +0 -124
  66. package/contracts/common-macros/src/tests/storage/parse_storage_type.rs +0 -174
  67. package/contracts/common-macros/src/tests/storage/snapshots/common_macros__tests__storage__generate_storage__snapshot_generated_storage_code.snap +0 -412
  68. package/contracts/common-macros/src/tests/storage/storage_kind.rs +0 -39
  69. package/contracts/common-macros/src/tests/storage/test_setup.rs +0 -25
  70. package/contracts/common-macros/src/tests/storage/validate_attrs.rs +0 -138
  71. package/contracts/common-macros/src/tests/storage/variant_config.rs +0 -226
  72. package/contracts/common-macros/src/tests/test_helpers.rs +0 -87
  73. package/contracts/common-macros/src/tests/ttl_configurable.rs +0 -34
  74. package/contracts/common-macros/src/tests/ttl_extendable.rs +0 -32
  75. package/contracts/common-macros/src/tests/upgradeable.rs +0 -169
  76. package/contracts/common-macros/src/tests/utils.rs +0 -267
  77. package/contracts/common-macros/src/ttl_configurable.rs +0 -24
  78. package/contracts/common-macros/src/ttl_extendable.rs +0 -28
  79. package/contracts/common-macros/src/upgradeable.rs +0 -136
  80. package/contracts/common-macros/src/utils.rs +0 -56
  81. package/contracts/macro-integration-tests/Cargo.toml +0 -20
  82. package/contracts/macro-integration-tests/src/lib.rs +0 -1
  83. package/contracts/macro-integration-tests/tests/runtime/contract_ttl/constructor.rs +0 -61
  84. package/contracts/macro-integration-tests/tests/runtime/contract_ttl/contract_impl_ttl_extension.rs +0 -97
  85. package/contracts/macro-integration-tests/tests/runtime/contract_ttl/contract_trait_ttl_extension.rs +0 -99
  86. package/contracts/macro-integration-tests/tests/runtime/contract_ttl/mod.rs +0 -3
  87. package/contracts/macro-integration-tests/tests/runtime/lz_contract/mod.rs +0 -5
  88. package/contracts/macro-integration-tests/tests/runtime/lz_contract/wrapper_default.rs +0 -86
  89. package/contracts/macro-integration-tests/tests/runtime/lz_contract/wrapper_multisig.rs +0 -47
  90. package/contracts/macro-integration-tests/tests/runtime/lz_contract/wrapper_multisig_upgradeable.rs +0 -77
  91. package/contracts/macro-integration-tests/tests/runtime/lz_contract/wrapper_upgradeable.rs +0 -114
  92. package/contracts/macro-integration-tests/tests/runtime/lz_contract/wrapper_upgradeable_no_migration.rs +0 -105
  93. package/contracts/macro-integration-tests/tests/runtime/multisig/admin_entrypoints.rs +0 -242
  94. package/contracts/macro-integration-tests/tests/runtime/multisig/mod.rs +0 -9
  95. package/contracts/macro-integration-tests/tests/runtime/multisig/self_auth.rs +0 -54
  96. package/contracts/macro-integration-tests/tests/runtime/oapp/mod.rs +0 -46
  97. package/contracts/macro-integration-tests/tests/runtime/oapp/oapp_core.rs +0 -170
  98. package/contracts/macro-integration-tests/tests/runtime/oapp/options_type3.rs +0 -154
  99. package/contracts/macro-integration-tests/tests/runtime/oapp/receiver.rs +0 -338
  100. package/contracts/macro-integration-tests/tests/runtime/oapp/sender.rs +0 -437
  101. package/contracts/macro-integration-tests/tests/runtime/ownable/initialization.rs +0 -78
  102. package/contracts/macro-integration-tests/tests/runtime/ownable/mod.rs +0 -23
  103. package/contracts/macro-integration-tests/tests/runtime/ownable/only_auth_guard.rs +0 -97
  104. package/contracts/macro-integration-tests/tests/runtime/ownable/ownership_transfer.rs +0 -170
  105. package/contracts/macro-integration-tests/tests/runtime/ownable/two_step_transfer.rs +0 -221
  106. package/contracts/macro-integration-tests/tests/runtime/rbac/guard_behavior.rs +0 -91
  107. package/contracts/macro-integration-tests/tests/runtime/rbac/mod.rs +0 -30
  108. package/contracts/macro-integration-tests/tests/runtime/storage/keyed_roundtrip.rs +0 -266
  109. package/contracts/macro-integration-tests/tests/runtime/storage/mod.rs +0 -4
  110. package/contracts/macro-integration-tests/tests/runtime/storage/name_override_runtime.rs +0 -52
  111. package/contracts/macro-integration-tests/tests/runtime/storage/ttl_extension.rs +0 -293
  112. package/contracts/macro-integration-tests/tests/runtime/storage/unkeyed_roundtrip.rs +0 -147
  113. package/contracts/macro-integration-tests/tests/runtime/ttl_configurable/configuration.rs +0 -206
  114. package/contracts/macro-integration-tests/tests/runtime/ttl_configurable/freeze.rs +0 -143
  115. package/contracts/macro-integration-tests/tests/runtime/ttl_configurable/mod.rs +0 -2
  116. package/contracts/macro-integration-tests/tests/runtime/ttl_extendable/extend_instance_ttl.rs +0 -64
  117. package/contracts/macro-integration-tests/tests/runtime/ttl_extendable/mod.rs +0 -16
  118. package/contracts/macro-integration-tests/tests/runtime/upgradeable/migrate_guard_and_state.rs +0 -243
  119. package/contracts/macro-integration-tests/tests/runtime/upgradeable/mod.rs +0 -3
  120. package/contracts/macro-integration-tests/tests/runtime/upgradeable/no_migration.rs +0 -59
  121. package/contracts/macro-integration-tests/tests/runtime/upgradeable/upgrade_then_migrate.rs +0 -88
  122. package/contracts/macro-integration-tests/tests/runtime.rs +0 -11
  123. package/contracts/macro-integration-tests/tests/ui/contract_impl/fail/not_impl_item.rs +0 -6
  124. package/contracts/macro-integration-tests/tests/ui/contract_impl/fail/not_impl_item.stderr +0 -7
  125. package/contracts/macro-integration-tests/tests/ui/contract_impl/pass/basic.rs +0 -102
  126. package/contracts/macro-integration-tests/tests/ui/contract_trait/fail/not_a_trait.rs +0 -6
  127. package/contracts/macro-integration-tests/tests/ui/contract_trait/fail/not_a_trait.stderr +0 -7
  128. package/contracts/macro-integration-tests/tests/ui/contract_trait/pass/basic.rs +0 -83
  129. package/contracts/macro-integration-tests/tests/ui/error/fail/decreasing_discriminant.rs +0 -12
  130. package/contracts/macro-integration-tests/tests/ui/error/fail/decreasing_discriminant.stderr +0 -7
  131. package/contracts/macro-integration-tests/tests/ui/error/fail/discriminant_too_large.rs +0 -11
  132. package/contracts/macro-integration-tests/tests/ui/error/fail/discriminant_too_large.stderr +0 -7
  133. package/contracts/macro-integration-tests/tests/ui/error/fail/non_enum_input.rs +0 -11
  134. package/contracts/macro-integration-tests/tests/ui/error/fail/non_enum_input.stderr +0 -7
  135. package/contracts/macro-integration-tests/tests/ui/error/fail/non_int_discriminant.rs +0 -21
  136. package/contracts/macro-integration-tests/tests/ui/error/fail/non_int_discriminant.stderr +0 -7
  137. package/contracts/macro-integration-tests/tests/ui/error/fail/non_unit_variant.rs +0 -13
  138. package/contracts/macro-integration-tests/tests/ui/error/fail/non_unit_variant.stderr +0 -7
  139. package/contracts/macro-integration-tests/tests/ui/error/pass/basic.rs +0 -22
  140. package/contracts/macro-integration-tests/tests/ui/lz_contract/fail/invalid_option.rs +0 -6
  141. package/contracts/macro-integration-tests/tests/ui/lz_contract/fail/invalid_option.stderr +0 -7
  142. package/contracts/macro-integration-tests/tests/ui/lz_contract/fail/multisig_rejects_ownable_api.rs +0 -20
  143. package/contracts/macro-integration-tests/tests/ui/lz_contract/fail/multisig_rejects_ownable_api.stderr +0 -20
  144. package/contracts/macro-integration-tests/tests/ui/lz_contract/fail/not_a_struct.rs +0 -8
  145. package/contracts/macro-integration-tests/tests/ui/lz_contract/fail/not_a_struct.stderr +0 -7
  146. package/contracts/macro-integration-tests/tests/ui/lz_contract/fail/upgradeable_invalid_inner_option.rs +0 -10
  147. package/contracts/macro-integration-tests/tests/ui/lz_contract/fail/upgradeable_invalid_inner_option.stderr +0 -30
  148. package/contracts/macro-integration-tests/tests/ui/lz_contract/fail/upgradeable_missing_internal.rs +0 -20
  149. package/contracts/macro-integration-tests/tests/ui/lz_contract/fail/upgradeable_missing_internal.stderr +0 -56
  150. package/contracts/macro-integration-tests/tests/ui/lz_contract/pass/basic.rs +0 -45
  151. package/contracts/macro-integration-tests/tests/ui/lz_contract/pass/multisig.rs +0 -34
  152. package/contracts/macro-integration-tests/tests/ui/lz_contract/pass/multisig_upgradeable.rs +0 -30
  153. package/contracts/macro-integration-tests/tests/ui/lz_contract/pass/upgradeable.rs +0 -39
  154. package/contracts/macro-integration-tests/tests/ui/lz_contract/pass/upgradeable_no_migration.rs +0 -28
  155. package/contracts/macro-integration-tests/tests/ui/lz_contract/pass/upgradeable_rbac.rs +0 -44
  156. package/contracts/macro-integration-tests/tests/ui/multisig/fail/non_struct_input.rs +0 -8
  157. package/contracts/macro-integration-tests/tests/ui/multisig/fail/non_struct_input.stderr +0 -7
  158. package/contracts/macro-integration-tests/tests/ui/multisig/fail/rejects_ownable_api.rs +0 -20
  159. package/contracts/macro-integration-tests/tests/ui/multisig/fail/rejects_ownable_api.stderr +0 -12
  160. package/contracts/macro-integration-tests/tests/ui/multisig/fail/rejects_ownable_trait.rs +0 -20
  161. package/contracts/macro-integration-tests/tests/ui/multisig/fail/rejects_ownable_trait.stderr +0 -5
  162. package/contracts/macro-integration-tests/tests/ui/multisig/pass/basic.rs +0 -49
  163. package/contracts/macro-integration-tests/tests/ui/oapp/fail/custom_wrong_value.rs +0 -8
  164. package/contracts/macro-integration-tests/tests/ui/oapp/fail/custom_wrong_value.stderr +0 -7
  165. package/contracts/macro-integration-tests/tests/ui/oapp/fail/missing_auth_trait.rs +0 -28
  166. package/contracts/macro-integration-tests/tests/ui/oapp/fail/missing_auth_trait.stderr +0 -397
  167. package/contracts/macro-integration-tests/tests/ui/oapp/fail/missing_lz_receive_internal.rs +0 -9
  168. package/contracts/macro-integration-tests/tests/ui/oapp/fail/missing_lz_receive_internal.stderr +0 -71
  169. package/contracts/macro-integration-tests/tests/ui/oapp/fail/non_struct_input.rs +0 -10
  170. package/contracts/macro-integration-tests/tests/ui/oapp/fail/non_struct_input.stderr +0 -7
  171. package/contracts/macro-integration-tests/tests/ui/oapp/fail/unknown_custom_option.rs +0 -8
  172. package/contracts/macro-integration-tests/tests/ui/oapp/fail/unknown_custom_option.stderr +0 -7
  173. package/contracts/macro-integration-tests/tests/ui/oapp/fail/wrong_key.rs +0 -8
  174. package/contracts/macro-integration-tests/tests/ui/oapp/fail/wrong_key.stderr +0 -7
  175. package/contracts/macro-integration-tests/tests/ui/oapp/pass/custom_all.rs +0 -42
  176. package/contracts/macro-integration-tests/tests/ui/oapp/pass/custom_single_trait.rs +0 -103
  177. package/contracts/macro-integration-tests/tests/ui/oapp/pass/minimal_contract.rs +0 -65
  178. package/contracts/macro-integration-tests/tests/ui/oapp/pass/struct_with_fields.rs +0 -48
  179. package/contracts/macro-integration-tests/tests/ui/ownable/fail/non_struct_input.rs +0 -8
  180. package/contracts/macro-integration-tests/tests/ui/ownable/fail/non_struct_input.stderr +0 -7
  181. package/contracts/macro-integration-tests/tests/ui/ownable/fail/only_auth_missing_auth.rs +0 -19
  182. package/contracts/macro-integration-tests/tests/ui/ownable/fail/only_auth_missing_auth.stderr +0 -12
  183. package/contracts/macro-integration-tests/tests/ui/ownable/fail/only_auth_missing_env.rs +0 -22
  184. package/contracts/macro-integration-tests/tests/ui/ownable/fail/only_auth_missing_env.stderr +0 -16
  185. package/contracts/macro-integration-tests/tests/ui/ownable/pass/basic.rs +0 -39
  186. package/contracts/macro-integration-tests/tests/ui/ownable/pass/only_auth_env_param_variants.rs +0 -52
  187. package/contracts/macro-integration-tests/tests/ui/rbac/fail/missing_env.rs +0 -18
  188. package/contracts/macro-integration-tests/tests/ui/rbac/fail/missing_env.stderr +0 -16
  189. package/contracts/macro-integration-tests/tests/ui/rbac/fail/param_not_address.rs +0 -18
  190. package/contracts/macro-integration-tests/tests/ui/rbac/fail/param_not_address.stderr +0 -24
  191. package/contracts/macro-integration-tests/tests/ui/rbac/fail/param_not_found.rs +0 -18
  192. package/contracts/macro-integration-tests/tests/ui/rbac/fail/param_not_found.stderr +0 -24
  193. package/contracts/macro-integration-tests/tests/ui/rbac/pass/basic.rs +0 -80
  194. package/contracts/macro-integration-tests/tests/ui/storage/fail/invalid_storage_type_param.rs +0 -13
  195. package/contracts/macro-integration-tests/tests/ui/storage/fail/invalid_storage_type_param.stderr +0 -7
  196. package/contracts/macro-integration-tests/tests/ui/storage/fail/missing_storage_type_param.rs +0 -13
  197. package/contracts/macro-integration-tests/tests/ui/storage/fail/missing_storage_type_param.stderr +0 -7
  198. package/contracts/macro-integration-tests/tests/ui/storage/fail/multiple_default_values.rs +0 -11
  199. package/contracts/macro-integration-tests/tests/ui/storage/fail/multiple_default_values.stderr +0 -7
  200. package/contracts/macro-integration-tests/tests/ui/storage/fail/multiple_name_attrs.rs +0 -11
  201. package/contracts/macro-integration-tests/tests/ui/storage/fail/multiple_name_attrs.stderr +0 -7
  202. package/contracts/macro-integration-tests/tests/ui/storage/fail/multiple_no_ttl_extension.rs +0 -11
  203. package/contracts/macro-integration-tests/tests/ui/storage/fail/multiple_no_ttl_extension.stderr +0 -7
  204. package/contracts/macro-integration-tests/tests/ui/storage/fail/multiple_storage_kinds.rs +0 -10
  205. package/contracts/macro-integration-tests/tests/ui/storage/fail/multiple_storage_kinds.stderr +0 -7
  206. package/contracts/macro-integration-tests/tests/ui/storage/fail/multiple_type_params.rs +0 -12
  207. package/contracts/macro-integration-tests/tests/ui/storage/fail/multiple_type_params.stderr +0 -7
  208. package/contracts/macro-integration-tests/tests/ui/storage/fail/no_ttl_extension_on_non_persistent.rs +0 -10
  209. package/contracts/macro-integration-tests/tests/ui/storage/fail/no_ttl_extension_on_non_persistent.stderr +0 -7
  210. package/contracts/macro-integration-tests/tests/ui/storage/fail/no_ttl_extension_rejects_args.rs +0 -13
  211. package/contracts/macro-integration-tests/tests/ui/storage/fail/no_ttl_extension_rejects_args.stderr +0 -7
  212. package/contracts/macro-integration-tests/tests/ui/storage/fail/non_enum_input.rs +0 -10
  213. package/contracts/macro-integration-tests/tests/ui/storage/fail/non_enum_input.stderr +0 -7
  214. package/contracts/macro-integration-tests/tests/ui/storage/fail/tuple_variant_rejected.rs +0 -13
  215. package/contracts/macro-integration-tests/tests/ui/storage/fail/tuple_variant_rejected.stderr +0 -7
  216. package/contracts/macro-integration-tests/tests/ui/storage/fail/unknown_variant_attr.rs +0 -13
  217. package/contracts/macro-integration-tests/tests/ui/storage/fail/unknown_variant_attr.stderr +0 -7
  218. package/contracts/macro-integration-tests/tests/ui/storage/pass/api_surface.rs +0 -102
  219. package/contracts/macro-integration-tests/tests/ui/storage/pass/basic.rs +0 -43
  220. package/contracts/macro-integration-tests/tests/ui/storage/pass/multi_key.rs +0 -38
  221. package/contracts/macro-integration-tests/tests/ui/ttl_configurable/fail/missing_auth_trait.rs +0 -14
  222. package/contracts/macro-integration-tests/tests/ui/ttl_configurable/fail/missing_auth_trait.stderr +0 -71
  223. package/contracts/macro-integration-tests/tests/ui/ttl_configurable/fail/non_struct_input.rs +0 -8
  224. package/contracts/macro-integration-tests/tests/ui/ttl_configurable/fail/non_struct_input.stderr +0 -7
  225. package/contracts/macro-integration-tests/tests/ui/ttl_configurable/pass/basic.rs +0 -46
  226. package/contracts/macro-integration-tests/tests/ui/ttl_configurable/pass/multisig_contract.rs +0 -28
  227. package/contracts/macro-integration-tests/tests/ui/ttl_configurable/pass/ownable_contract.rs +0 -32
  228. package/contracts/macro-integration-tests/tests/ui/ttl_extendable/fail/non_struct_input.rs +0 -8
  229. package/contracts/macro-integration-tests/tests/ui/ttl_extendable/fail/non_struct_input.stderr +0 -7
  230. package/contracts/macro-integration-tests/tests/ui/ttl_extendable/pass/basic.rs +0 -23
  231. package/contracts/macro-integration-tests/tests/ui/ttl_extendable/pass/no_user_contractimpl.rs +0 -21
  232. package/contracts/macro-integration-tests/tests/ui/upgradeable/fail/attr_args.rs +0 -11
  233. package/contracts/macro-integration-tests/tests/ui/upgradeable/fail/attr_args.stderr +0 -29
  234. package/contracts/macro-integration-tests/tests/ui/upgradeable/fail/missing_auth_trait.rs +0 -20
  235. package/contracts/macro-integration-tests/tests/ui/upgradeable/fail/missing_auth_trait.stderr +0 -41
  236. package/contracts/macro-integration-tests/tests/ui/upgradeable/fail/missing_upgradeable_internal.rs +0 -10
  237. package/contracts/macro-integration-tests/tests/ui/upgradeable/fail/missing_upgradeable_internal.stderr +0 -49
  238. package/contracts/macro-integration-tests/tests/ui/upgradeable/fail/non_struct_input.rs +0 -8
  239. package/contracts/macro-integration-tests/tests/ui/upgradeable/fail/non_struct_input.stderr +0 -7
  240. package/contracts/macro-integration-tests/tests/ui/upgradeable/pass/basic.rs +0 -41
  241. package/contracts/macro-integration-tests/tests/ui/upgradeable/pass/multisig_contract.rs +0 -33
  242. package/contracts/macro-integration-tests/tests/ui/upgradeable/pass/no_migration.rs +0 -28
  243. package/contracts/macro-integration-tests/tests/ui/upgradeable/pass/no_user_contractimpl.rs +0 -27
  244. package/contracts/macro-integration-tests/tests/ui/upgradeable/pass/rbac.rs +0 -44
  245. package/contracts/macro-integration-tests/tests/ui_contract_impl.rs +0 -12
  246. package/contracts/macro-integration-tests/tests/ui_contract_trait.rs +0 -12
  247. package/contracts/macro-integration-tests/tests/ui_error.rs +0 -11
  248. package/contracts/macro-integration-tests/tests/ui_lz_contract.rs +0 -11
  249. package/contracts/macro-integration-tests/tests/ui_multisig.rs +0 -11
  250. package/contracts/macro-integration-tests/tests/ui_oapp.rs +0 -11
  251. package/contracts/macro-integration-tests/tests/ui_ownable.rs +0 -11
  252. package/contracts/macro-integration-tests/tests/ui_rbac.rs +0 -12
  253. package/contracts/macro-integration-tests/tests/ui_storage.rs +0 -11
  254. package/contracts/macro-integration-tests/tests/ui_ttl_configurable.rs +0 -12
  255. package/contracts/macro-integration-tests/tests/ui_ttl_extendable.rs +0 -12
  256. package/contracts/macro-integration-tests/tests/ui_upgradeable.rs +0 -11
  257. package/contracts/message-libs/Cargo.toml +0 -12
  258. package/contracts/message-libs/lib.rs +0 -2
  259. package/contracts/oapps/Cargo.toml +0 -12
  260. package/contracts/oapps/counter/Cargo.toml +0 -39
  261. package/contracts/oapps/counter/integration_tests/mod.rs +0 -7
  262. package/contracts/oapps/counter/integration_tests/setup_sml.rs +0 -171
  263. package/contracts/oapps/counter/integration_tests/setup_uln.rs +0 -1019
  264. package/contracts/oapps/counter/integration_tests/signing.rs +0 -62
  265. package/contracts/oapps/counter/integration_tests/test_with_blocked.rs +0 -67
  266. package/contracts/oapps/counter/integration_tests/test_with_sml.rs +0 -135
  267. package/contracts/oapps/counter/integration_tests/test_with_uln.rs +0 -314
  268. package/contracts/oapps/counter/integration_tests/utils.rs +0 -294
  269. package/contracts/oapps/counter/src/codec.rs +0 -62
  270. package/contracts/oapps/counter/src/counter.rs +0 -274
  271. package/contracts/oapps/counter/src/errors.rs +0 -9
  272. package/contracts/oapps/counter/src/lib.rs +0 -16
  273. package/contracts/oapps/counter/src/options.rs +0 -30
  274. package/contracts/oapps/counter/src/storage.rs +0 -32
  275. package/contracts/oapps/counter/src/tests/mod.rs +0 -24
  276. package/contracts/oapps/counter/src/tests/test_codec.rs +0 -64
  277. package/contracts/oapps/counter/src/tests/test_counter.rs +0 -387
  278. package/contracts/oapps/counter/src/tests/test_u256_ext.rs +0 -48
  279. package/contracts/oapps/counter/src/u256_ext.rs +0 -21
  280. package/contracts/oapps/lib.rs +0 -2
  281. package/contracts/oapps/oapp/Cargo.toml +0 -22
  282. package/contracts/oapps/oapp/src/errors.rs +0 -13
  283. package/contracts/oapps/oapp/src/interfaces/mod.rs +0 -3
  284. package/contracts/oapps/oapp/src/interfaces/oapp_msg_inspector.rs +0 -70
  285. package/contracts/oapps/oapp/src/lib.rs +0 -15
  286. package/contracts/oapps/oapp/src/oapp_core.rs +0 -143
  287. package/contracts/oapps/oapp/src/oapp_options_type3.rs +0 -133
  288. package/contracts/oapps/oapp/src/oapp_receiver.rs +0 -195
  289. package/contracts/oapps/oapp/src/oapp_sender.rs +0 -152
  290. package/contracts/oapps/oapp/src/tests/mod.rs +0 -5
  291. package/contracts/oapps/oapp/src/tests/oapp_core.rs +0 -225
  292. package/contracts/oapps/oapp/src/tests/oapp_options_type3.rs +0 -246
  293. package/contracts/oapps/oapp/src/tests/oapp_receiver.rs +0 -383
  294. package/contracts/oapps/oapp/src/tests/oapp_sender.rs +0 -570
  295. package/contracts/oapps/oapp/src/tests/test_macros.rs +0 -434
  296. package/contracts/oapps/oapp-macros/Cargo.toml +0 -18
  297. package/contracts/oapps/oapp-macros/src/generators.rs +0 -147
  298. package/contracts/oapps/oapp-macros/src/lib.rs +0 -166
  299. package/contracts/oapps/oapp-macros/src/tests/mod.rs +0 -2
  300. package/contracts/oapps/oapp-macros/src/tests/oapp.rs +0 -74
  301. package/contracts/oapps/oapp-macros/src/tests/parse_custom_impls.rs +0 -90
  302. package/contracts/oapps/oapp-macros/src/tests/snapshots/oapp_macros__tests__oapp__snapshot_generate_oapp.snap +0 -111
  303. package/contracts/oapps/oft/Cargo.toml +0 -30
  304. package/contracts/oapps/oft/integration-tests/extensions/mod.rs +0 -3
  305. package/contracts/oapps/oft/integration-tests/extensions/test_oft_fee.rs +0 -172
  306. package/contracts/oapps/oft/integration-tests/extensions/test_pausable.rs +0 -161
  307. package/contracts/oapps/oft/integration-tests/extensions/test_rate_limiter.rs +0 -336
  308. package/contracts/oapps/oft/integration-tests/mod.rs +0 -3
  309. package/contracts/oapps/oft/integration-tests/setup.rs +0 -306
  310. package/contracts/oapps/oft/integration-tests/utils.rs +0 -609
  311. package/contracts/oapps/oft/src/extensions/mod.rs +0 -3
  312. package/contracts/oapps/oft/src/extensions/oft_fee.rs +0 -281
  313. package/contracts/oapps/oft/src/extensions/pausable.rs +0 -119
  314. package/contracts/oapps/oft/src/extensions/rate_limiter.rs +0 -286
  315. package/contracts/oapps/oft/src/interfaces/mintable.rs +0 -14
  316. package/contracts/oapps/oft/src/interfaces/mod.rs +0 -3
  317. package/contracts/oapps/oft/src/lib.rs +0 -24
  318. package/contracts/oapps/oft/src/oft.rs +0 -176
  319. package/contracts/oapps/oft/src/oft_types/lock_unlock.rs +0 -50
  320. package/contracts/oapps/oft/src/oft_types/mint_burn.rs +0 -51
  321. package/contracts/oapps/oft/src/oft_types/mod.rs +0 -24
  322. package/contracts/oapps/oft/src/tests/extensions/mod.rs +0 -3
  323. package/contracts/oapps/oft/src/tests/extensions/oft_fee.rs +0 -260
  324. package/contracts/oapps/oft/src/tests/extensions/pausable.rs +0 -155
  325. package/contracts/oapps/oft/src/tests/extensions/rate_limiter.rs +0 -601
  326. package/contracts/oapps/oft/src/tests/mod.rs +0 -2
  327. package/contracts/oapps/oft/src/tests/oft_types/lock_unlock.rs +0 -185
  328. package/contracts/oapps/oft/src/tests/oft_types/mod.rs +0 -1
  329. package/contracts/oapps/oft-core/Cargo.toml +0 -24
  330. package/contracts/oapps/oft-core/integration-tests/mod.rs +0 -3
  331. package/contracts/oapps/oft-core/integration-tests/setup.rs +0 -346
  332. package/contracts/oapps/oft-core/integration-tests/test_with_sml.rs +0 -156
  333. package/contracts/oapps/oft-core/integration-tests/utils.rs +0 -220
  334. package/contracts/oapps/oft-core/src/codec/mod.rs +0 -2
  335. package/contracts/oapps/oft-core/src/codec/oft_compose_msg_codec.rs +0 -55
  336. package/contracts/oapps/oft-core/src/codec/oft_msg_codec.rs +0 -58
  337. package/contracts/oapps/oft-core/src/errors.rs +0 -15
  338. package/contracts/oapps/oft-core/src/events.rs +0 -32
  339. package/contracts/oapps/oft-core/src/lib.rs +0 -22
  340. package/contracts/oapps/oft-core/src/oft_core.rs +0 -594
  341. package/contracts/oapps/oft-core/src/storage.rs +0 -19
  342. package/contracts/oapps/oft-core/src/tests/mod.rs +0 -14
  343. package/contracts/oapps/oft-core/src/tests/test_decimals.rs +0 -124
  344. package/contracts/oapps/oft-core/src/tests/test_lz_receive.rs +0 -282
  345. package/contracts/oapps/oft-core/src/tests/test_msg_inspector.rs +0 -324
  346. package/contracts/oapps/oft-core/src/tests/test_oft_compose_msg_codec.rs +0 -68
  347. package/contracts/oapps/oft-core/src/tests/test_oft_msg_codec.rs +0 -64
  348. package/contracts/oapps/oft-core/src/tests/test_oft_version_and_approval.rs +0 -22
  349. package/contracts/oapps/oft-core/src/tests/test_quote_oft.rs +0 -159
  350. package/contracts/oapps/oft-core/src/tests/test_quote_send.rs +0 -195
  351. package/contracts/oapps/oft-core/src/tests/test_resolve_address.rs +0 -37
  352. package/contracts/oapps/oft-core/src/tests/test_send.rs +0 -915
  353. package/contracts/oapps/oft-core/src/tests/test_token.rs +0 -47
  354. package/contracts/oapps/oft-core/src/tests/test_utils.rs +0 -870
  355. package/contracts/oapps/oft-core/src/types.rs +0 -58
  356. package/contracts/oapps/oft-core/src/utils.rs +0 -71
  357. package/contracts/oapps/sac-manager/Cargo.toml +0 -24
  358. package/contracts/oapps/sac-manager/src/interfaces/mod.rs +0 -3
  359. package/contracts/oapps/sac-manager/src/interfaces/sac_admin_wrapper.rs +0 -49
  360. package/contracts/oapps/sac-manager/src/lib.rs +0 -19
  361. package/contracts/oapps/sac-manager/src/sac_manager.rs +0 -95
  362. package/contracts/oapps/sac-manager/src/storage.rs +0 -13
  363. package/contracts/oapps/sac-manager/src/tests/mod.rs +0 -10
  364. package/contracts/oapps/sac-manager/src/tests/sac_manager/clawback.rs +0 -84
  365. package/contracts/oapps/sac-manager/src/tests/sac_manager/mint.rs +0 -53
  366. package/contracts/oapps/sac-manager/src/tests/sac_manager/mod.rs +0 -6
  367. package/contracts/oapps/sac-manager/src/tests/sac_manager/set_admin.rs +0 -46
  368. package/contracts/oapps/sac-manager/src/tests/sac_manager/set_authorized.rs +0 -53
  369. package/contracts/oapps/sac-manager/src/tests/sac_manager/test_helper.rs +0 -35
  370. package/contracts/oapps/sac-manager/src/tests/sac_manager/view_functions.rs +0 -13
  371. package/contracts/oapps/sac-manager/src/tests/test_helper.rs +0 -138
  372. package/contracts/utils/Cargo.toml +0 -20
  373. package/contracts/utils/src/auth.rs +0 -48
  374. package/contracts/utils/src/buffer_reader.rs +0 -194
  375. package/contracts/utils/src/buffer_writer.rs +0 -138
  376. package/contracts/utils/src/bytes_ext.rs +0 -18
  377. package/contracts/utils/src/errors.rs +0 -82
  378. package/contracts/utils/src/lib.rs +0 -20
  379. package/contracts/utils/src/multisig.rs +0 -247
  380. package/contracts/utils/src/option_ext.rs +0 -38
  381. package/contracts/utils/src/ownable.rs +0 -227
  382. package/contracts/utils/src/rbac.rs +0 -438
  383. package/contracts/utils/src/testing_utils.rs +0 -180
  384. package/contracts/utils/src/tests/auth.rs +0 -179
  385. package/contracts/utils/src/tests/buffer_reader.rs +0 -969
  386. package/contracts/utils/src/tests/buffer_writer.rs +0 -689
  387. package/contracts/utils/src/tests/bytes_ext.rs +0 -160
  388. package/contracts/utils/src/tests/mod.rs +0 -13
  389. package/contracts/utils/src/tests/multisig.rs +0 -760
  390. package/contracts/utils/src/tests/option_ext.rs +0 -18
  391. package/contracts/utils/src/tests/ownable.rs +0 -822
  392. package/contracts/utils/src/tests/rbac.rs +0 -559
  393. package/contracts/utils/src/tests/test_helper.rs +0 -67
  394. package/contracts/utils/src/tests/testing_utils.rs +0 -522
  395. package/contracts/utils/src/tests/ttl_configurable.rs +0 -586
  396. package/contracts/utils/src/tests/ttl_extendable.rs +0 -64
  397. package/contracts/utils/src/tests/upgradeable.rs +0 -529
  398. package/contracts/utils/src/ttl_configurable.rs +0 -169
  399. package/contracts/utils/src/ttl_extendable.rs +0 -25
  400. package/contracts/utils/src/upgradeable.rs +0 -103
  401. package/contracts/workers/Cargo.toml +0 -13
  402. package/contracts/workers/lib.rs +0 -2
  403. package/sdk/.turbo/turbo-build.log +0 -5
  404. package/sdk/.turbo/turbo-test.log +0 -1507
  405. package/sdk/LICENSE +0 -23
  406. package/sdk/dist/generated/bml.d.ts +0 -670
  407. package/sdk/dist/generated/bml.d.ts.map +0 -1
  408. package/sdk/dist/generated/bml.js +0 -292
  409. package/sdk/dist/generated/bml.js.map +0 -1
  410. package/sdk/dist/generated/counter.d.ts +0 -1253
  411. package/sdk/dist/generated/counter.d.ts.map +0 -1
  412. package/sdk/dist/generated/counter.js +0 -391
  413. package/sdk/dist/generated/counter.js.map +0 -1
  414. package/sdk/dist/generated/dvn.d.ts +0 -1569
  415. package/sdk/dist/generated/dvn.d.ts.map +0 -1
  416. package/sdk/dist/generated/dvn.js +0 -459
  417. package/sdk/dist/generated/dvn.js.map +0 -1
  418. package/sdk/dist/generated/dvn_fee_lib.d.ts +0 -587
  419. package/sdk/dist/generated/dvn_fee_lib.d.ts.map +0 -1
  420. package/sdk/dist/generated/dvn_fee_lib.js +0 -186
  421. package/sdk/dist/generated/dvn_fee_lib.js.map +0 -1
  422. package/sdk/dist/generated/endpoint.d.ts +0 -1304
  423. package/sdk/dist/generated/endpoint.d.ts.map +0 -1
  424. package/sdk/dist/generated/endpoint.js +0 -396
  425. package/sdk/dist/generated/endpoint.js.map +0 -1
  426. package/sdk/dist/generated/executor.d.ts +0 -1554
  427. package/sdk/dist/generated/executor.d.ts.map +0 -1
  428. package/sdk/dist/generated/executor.js +0 -447
  429. package/sdk/dist/generated/executor.js.map +0 -1
  430. package/sdk/dist/generated/executor_fee_lib.d.ts +0 -1037
  431. package/sdk/dist/generated/executor_fee_lib.d.ts.map +0 -1
  432. package/sdk/dist/generated/executor_fee_lib.js +0 -351
  433. package/sdk/dist/generated/executor_fee_lib.js.map +0 -1
  434. package/sdk/dist/generated/executor_helper.d.ts +0 -883
  435. package/sdk/dist/generated/executor_helper.d.ts.map +0 -1
  436. package/sdk/dist/generated/executor_helper.js +0 -354
  437. package/sdk/dist/generated/executor_helper.js.map +0 -1
  438. package/sdk/dist/generated/layerzero_view.d.ts +0 -1153
  439. package/sdk/dist/generated/layerzero_view.d.ts.map +0 -1
  440. package/sdk/dist/generated/layerzero_view.js +0 -457
  441. package/sdk/dist/generated/layerzero_view.js.map +0 -1
  442. package/sdk/dist/generated/oft.d.ts +0 -1638
  443. package/sdk/dist/generated/oft.d.ts.map +0 -1
  444. package/sdk/dist/generated/oft.js +0 -463
  445. package/sdk/dist/generated/oft.js.map +0 -1
  446. package/sdk/dist/generated/price_feed.d.ts +0 -787
  447. package/sdk/dist/generated/price_feed.d.ts.map +0 -1
  448. package/sdk/dist/generated/price_feed.js +0 -231
  449. package/sdk/dist/generated/price_feed.js.map +0 -1
  450. package/sdk/dist/generated/sac_manager.d.ts +0 -567
  451. package/sdk/dist/generated/sac_manager.d.ts.map +0 -1
  452. package/sdk/dist/generated/sac_manager.js +0 -198
  453. package/sdk/dist/generated/sac_manager.js.map +0 -1
  454. package/sdk/dist/generated/sml.d.ts +0 -934
  455. package/sdk/dist/generated/sml.d.ts.map +0 -1
  456. package/sdk/dist/generated/sml.js +0 -366
  457. package/sdk/dist/generated/sml.js.map +0 -1
  458. package/sdk/dist/generated/treasury.d.ts +0 -892
  459. package/sdk/dist/generated/treasury.d.ts.map +0 -1
  460. package/sdk/dist/generated/treasury.js +0 -352
  461. package/sdk/dist/generated/treasury.js.map +0 -1
  462. package/sdk/dist/generated/uln302.d.ts +0 -1268
  463. package/sdk/dist/generated/uln302.d.ts.map +0 -1
  464. package/sdk/dist/generated/uln302.js +0 -477
  465. package/sdk/dist/generated/uln302.js.map +0 -1
  466. package/sdk/dist/generated/upgrader.d.ts +0 -292
  467. package/sdk/dist/generated/upgrader.d.ts.map +0 -1
  468. package/sdk/dist/generated/upgrader.js +0 -144
  469. package/sdk/dist/generated/upgrader.js.map +0 -1
  470. package/sdk/dist/index.d.ts +0 -17
  471. package/sdk/dist/index.d.ts.map +0 -1
  472. package/sdk/dist/index.js +0 -21
  473. package/sdk/dist/index.js.map +0 -1
  474. package/sdk/node_modules/.bin/tsc +0 -21
  475. package/sdk/node_modules/.bin/tsserver +0 -21
  476. package/sdk/node_modules/.bin/vitest +0 -21
  477. package/sdk/package.json +0 -50
  478. package/sdk/src/index.ts +0 -23
  479. package/sdk/test/counter-sml.test.ts +0 -480
  480. package/sdk/test/counter-uln.test.ts +0 -584
  481. package/sdk/test/oft-sml.test.ts +0 -750
  482. package/sdk/test/sac-manager.test.ts +0 -464
  483. package/sdk/test/secp256k1.ts +0 -59
  484. package/sdk/test/suites/constants.ts +0 -51
  485. package/sdk/test/suites/deploy.ts +0 -312
  486. package/sdk/test/suites/dummyContractClient.ts +0 -168
  487. package/sdk/test/suites/globalSetup.ts +0 -604
  488. package/sdk/test/suites/localnet.ts +0 -192
  489. package/sdk/test/suites/scan.ts +0 -202
  490. package/sdk/test/test_data/test_upgradeable_dvn.wasm +0 -0
  491. package/sdk/test/upgrader.test.ts +0 -194
  492. package/sdk/test/utils.ts +0 -671
  493. package/sdk/tsconfig.json +0 -21
  494. package/sdk/tsconfig.test.json +0 -10
  495. package/sdk/turbo.json +0 -15
  496. package/sdk/vitest.config.ts +0 -21
  497. package/ts-bindings-gen.toml +0 -67
  498. package/turbo-snapshot.lock.json +0 -194
  499. package/turbo.json +0 -26
  500. /package/{contracts/endpoint-v2 → endpoint-v2}/src/endpoint_v2.rs +0 -0
  501. /package/{contracts/endpoint-v2 → endpoint-v2}/src/errors.rs +0 -0
  502. /package/{contracts/endpoint-v2 → endpoint-v2}/src/events.rs +0 -0
  503. /package/{contracts/endpoint-v2 → endpoint-v2}/src/interfaces/layerzero_composer.rs +0 -0
  504. /package/{contracts/endpoint-v2 → endpoint-v2}/src/interfaces/layerzero_endpoint_v2.rs +0 -0
  505. /package/{contracts/endpoint-v2 → endpoint-v2}/src/interfaces/layerzero_receiver.rs +0 -0
  506. /package/{contracts/endpoint-v2 → endpoint-v2}/src/interfaces/message_lib.rs +0 -0
  507. /package/{contracts/endpoint-v2 → endpoint-v2}/src/interfaces/message_lib_manager.rs +0 -0
  508. /package/{contracts/endpoint-v2 → endpoint-v2}/src/interfaces/messaging_channel.rs +0 -0
  509. /package/{contracts/endpoint-v2 → endpoint-v2}/src/interfaces/messaging_composer.rs +0 -0
  510. /package/{contracts/endpoint-v2 → endpoint-v2}/src/interfaces/mod.rs +0 -0
  511. /package/{contracts/endpoint-v2 → endpoint-v2}/src/interfaces/send_lib.rs +0 -0
  512. /package/{contracts/endpoint-v2 → endpoint-v2}/src/lib.rs +0 -0
  513. /package/{contracts/endpoint-v2 → endpoint-v2}/src/message_lib_manager.rs +0 -0
  514. /package/{contracts/endpoint-v2 → endpoint-v2}/src/messaging_channel.rs +0 -0
  515. /package/{contracts/endpoint-v2 → endpoint-v2}/src/messaging_composer.rs +0 -0
  516. /package/{contracts/endpoint-v2 → endpoint-v2}/src/storage.rs +0 -0
  517. /package/{contracts/endpoint-v2 → endpoint-v2}/src/tests/endpoint_setup.rs +0 -0
  518. /package/{contracts/endpoint-v2 → endpoint-v2}/src/tests/endpoint_v2/build_outbound_packet.rs +0 -0
  519. /package/{contracts/endpoint-v2 → endpoint-v2}/src/tests/endpoint_v2/clear.rs +0 -0
  520. /package/{contracts/endpoint-v2 → endpoint-v2}/src/tests/endpoint_v2/delegate.rs +0 -0
  521. /package/{contracts/endpoint-v2 → endpoint-v2}/src/tests/endpoint_v2/initializable.rs +0 -0
  522. /package/{contracts/endpoint-v2 → endpoint-v2}/src/tests/endpoint_v2/lz_receive_alert.rs +0 -0
  523. /package/{contracts/endpoint-v2 → endpoint-v2}/src/tests/endpoint_v2/mod.rs +0 -0
  524. /package/{contracts/endpoint-v2 → endpoint-v2}/src/tests/endpoint_v2/native_token.rs +0 -0
  525. /package/{contracts/endpoint-v2 → endpoint-v2}/src/tests/endpoint_v2/owner.rs +0 -0
  526. /package/{contracts/endpoint-v2 → endpoint-v2}/src/tests/endpoint_v2/pay_messaging_fees.rs +0 -0
  527. /package/{contracts/endpoint-v2 → endpoint-v2}/src/tests/endpoint_v2/quote.rs +0 -0
  528. /package/{contracts/endpoint-v2 → endpoint-v2}/src/tests/endpoint_v2/recover_token.rs +0 -0
  529. /package/{contracts/endpoint-v2 → endpoint-v2}/src/tests/endpoint_v2/require_oapp_auth.rs +0 -0
  530. /package/{contracts/endpoint-v2 → endpoint-v2}/src/tests/endpoint_v2/send.rs +0 -0
  531. /package/{contracts/endpoint-v2 → endpoint-v2}/src/tests/endpoint_v2/set_delegate.rs +0 -0
  532. /package/{contracts/endpoint-v2 → endpoint-v2}/src/tests/endpoint_v2/set_zro.rs +0 -0
  533. /package/{contracts/endpoint-v2 → endpoint-v2}/src/tests/endpoint_v2/transfer_ownership.rs +0 -0
  534. /package/{contracts/endpoint-v2 → endpoint-v2}/src/tests/endpoint_v2/ttl_config.rs +0 -0
  535. /package/{contracts/endpoint-v2 → endpoint-v2}/src/tests/endpoint_v2/verifiable.rs +0 -0
  536. /package/{contracts/endpoint-v2 → endpoint-v2}/src/tests/endpoint_v2/verify.rs +0 -0
  537. /package/{contracts/endpoint-v2 → endpoint-v2}/src/tests/endpoint_v2/zro.rs +0 -0
  538. /package/{contracts/endpoint-v2 → endpoint-v2}/src/tests/message_lib_manager/default_receive_library.rs +0 -0
  539. /package/{contracts/endpoint-v2 → endpoint-v2}/src/tests/message_lib_manager/default_receive_library_timeout.rs +0 -0
  540. /package/{contracts/endpoint-v2 → endpoint-v2}/src/tests/message_lib_manager/default_send_library.rs +0 -0
  541. /package/{contracts/endpoint-v2 → endpoint-v2}/src/tests/message_lib_manager/get_config.rs +0 -0
  542. /package/{contracts/endpoint-v2 → endpoint-v2}/src/tests/message_lib_manager/get_library_index.rs +0 -0
  543. /package/{contracts/endpoint-v2 → endpoint-v2}/src/tests/message_lib_manager/get_receive_library.rs +0 -0
  544. /package/{contracts/endpoint-v2 → endpoint-v2}/src/tests/message_lib_manager/get_registered_libraries.rs +0 -0
  545. /package/{contracts/endpoint-v2 → endpoint-v2}/src/tests/message_lib_manager/get_send_library.rs +0 -0
  546. /package/{contracts/endpoint-v2 → endpoint-v2}/src/tests/message_lib_manager/is_registered_library.rs +0 -0
  547. /package/{contracts/endpoint-v2 → endpoint-v2}/src/tests/message_lib_manager/is_supported_eid.rs +0 -0
  548. /package/{contracts/endpoint-v2 → endpoint-v2}/src/tests/message_lib_manager/is_valid_receive_library.rs +0 -0
  549. /package/{contracts/endpoint-v2 → endpoint-v2}/src/tests/message_lib_manager/mod.rs +0 -0
  550. /package/{contracts/endpoint-v2 → endpoint-v2}/src/tests/message_lib_manager/receive_library_timeout.rs +0 -0
  551. /package/{contracts/endpoint-v2 → endpoint-v2}/src/tests/message_lib_manager/register_library.rs +0 -0
  552. /package/{contracts/endpoint-v2 → endpoint-v2}/src/tests/message_lib_manager/registered_libraries_count.rs +0 -0
  553. /package/{contracts/endpoint-v2 → endpoint-v2}/src/tests/message_lib_manager/require_receive_lib_for_eid.rs +0 -0
  554. /package/{contracts/endpoint-v2 → endpoint-v2}/src/tests/message_lib_manager/require_registered.rs +0 -0
  555. /package/{contracts/endpoint-v2 → endpoint-v2}/src/tests/message_lib_manager/require_send_lib_for_eid.rs +0 -0
  556. /package/{contracts/endpoint-v2 → endpoint-v2}/src/tests/message_lib_manager/require_supported_eid.rs +0 -0
  557. /package/{contracts/endpoint-v2 → endpoint-v2}/src/tests/message_lib_manager/set_config.rs +0 -0
  558. /package/{contracts/endpoint-v2 → endpoint-v2}/src/tests/message_lib_manager/set_default_receive_lib_timeout.rs +0 -0
  559. /package/{contracts/endpoint-v2 → endpoint-v2}/src/tests/message_lib_manager/set_default_receive_library.rs +0 -0
  560. /package/{contracts/endpoint-v2 → endpoint-v2}/src/tests/message_lib_manager/set_default_send_library.rs +0 -0
  561. /package/{contracts/endpoint-v2 → endpoint-v2}/src/tests/message_lib_manager/set_receive_library.rs +0 -0
  562. /package/{contracts/endpoint-v2 → endpoint-v2}/src/tests/message_lib_manager/set_receive_library_timeout.rs +0 -0
  563. /package/{contracts/endpoint-v2 → endpoint-v2}/src/tests/message_lib_manager/set_send_library.rs +0 -0
  564. /package/{contracts/endpoint-v2 → endpoint-v2}/src/tests/message_lib_manager/timeout.rs +0 -0
  565. /package/{contracts/endpoint-v2 → endpoint-v2}/src/tests/messaging_channel/burn.rs +0 -0
  566. /package/{contracts/endpoint-v2 → endpoint-v2}/src/tests/messaging_channel/clear_payload.rs +0 -0
  567. /package/{contracts/endpoint-v2 → endpoint-v2}/src/tests/messaging_channel/inbound.rs +0 -0
  568. /package/{contracts/endpoint-v2 → endpoint-v2}/src/tests/messaging_channel/inbound_nonce.rs +0 -0
  569. /package/{contracts/endpoint-v2 → endpoint-v2}/src/tests/messaging_channel/inbound_payload_hash.rs +0 -0
  570. /package/{contracts/endpoint-v2 → endpoint-v2}/src/tests/messaging_channel/insert_and_drain_pending_nonces.rs +0 -0
  571. /package/{contracts/endpoint-v2 → endpoint-v2}/src/tests/messaging_channel/mod.rs +0 -0
  572. /package/{contracts/endpoint-v2 → endpoint-v2}/src/tests/messaging_channel/next_guid.rs +0 -0
  573. /package/{contracts/endpoint-v2 → endpoint-v2}/src/tests/messaging_channel/nilify.rs +0 -0
  574. /package/{contracts/endpoint-v2 → endpoint-v2}/src/tests/messaging_channel/outbound.rs +0 -0
  575. /package/{contracts/endpoint-v2 → endpoint-v2}/src/tests/messaging_channel/outbound_nonce.rs +0 -0
  576. /package/{contracts/endpoint-v2 → endpoint-v2}/src/tests/messaging_channel/pending_inbound_nonces.rs +0 -0
  577. /package/{contracts/endpoint-v2 → endpoint-v2}/src/tests/messaging_channel/skip.rs +0 -0
  578. /package/{contracts/endpoint-v2 → endpoint-v2}/src/tests/messaging_composer/clear_compose.rs +0 -0
  579. /package/{contracts/endpoint-v2 → endpoint-v2}/src/tests/messaging_composer/compose_queue.rs +0 -0
  580. /package/{contracts/endpoint-v2 → endpoint-v2}/src/tests/messaging_composer/lz_compose_alert.rs +0 -0
  581. /package/{contracts/endpoint-v2 → endpoint-v2}/src/tests/messaging_composer/mod.rs +0 -0
  582. /package/{contracts/endpoint-v2 → endpoint-v2}/src/tests/messaging_composer/send_compose.rs +0 -0
  583. /package/{contracts/endpoint-v2 → endpoint-v2}/src/tests/mock.rs +0 -0
  584. /package/{contracts/endpoint-v2 → endpoint-v2}/src/tests/mod.rs +0 -0
  585. /package/{contracts/endpoint-v2 → endpoint-v2}/src/tests/util/build_payload.rs +0 -0
  586. /package/{contracts/endpoint-v2 → endpoint-v2}/src/tests/util/compute_guid.rs +0 -0
  587. /package/{contracts/endpoint-v2 → endpoint-v2}/src/tests/util/keccak256.rs +0 -0
  588. /package/{contracts/endpoint-v2 → endpoint-v2}/src/tests/util/mod.rs +0 -0
  589. /package/{contracts/endpoint-v2 → endpoint-v2}/src/util.rs +0 -0
  590. /package/{contracts/layerzero-views → layerzero-views}/src/errors.rs +0 -0
  591. /package/{contracts/layerzero-views → layerzero-views}/src/layerzero_view.rs +0 -0
  592. /package/{contracts/layerzero-views → layerzero-views}/src/lib.rs +0 -0
  593. /package/{contracts/layerzero-views → layerzero-views}/src/storage.rs +0 -0
  594. /package/{contracts/layerzero-views → layerzero-views}/src/tests/layerzero_view_tests.rs +0 -0
  595. /package/{contracts/layerzero-views → layerzero-views}/src/tests/mod.rs +0 -0
  596. /package/{contracts/layerzero-views → layerzero-views}/src/tests/setup.rs +0 -0
  597. /package/{contracts/layerzero-views → layerzero-views}/src/tests/types_tests.rs +0 -0
  598. /package/{contracts/layerzero-views → layerzero-views}/src/types.rs +0 -0
  599. /package/{contracts/message-libs → message-libs}/blocked-message-lib/src/lib.rs +0 -0
  600. /package/{contracts/message-libs → message-libs}/blocked-message-lib/src/tests/blocked_message_lib_tests.rs +0 -0
  601. /package/{contracts/message-libs → message-libs}/blocked-message-lib/src/tests/mod.rs +0 -0
  602. /package/{contracts/message-libs → message-libs}/blocked-message-lib/src/tests/setup.rs +0 -0
  603. /package/{contracts/message-libs → message-libs}/message-lib-common/src/errors.rs +0 -0
  604. /package/{contracts/message-libs → message-libs}/message-lib-common/src/interfaces/dvn.rs +0 -0
  605. /package/{contracts/message-libs → message-libs}/message-lib-common/src/interfaces/executor.rs +0 -0
  606. /package/{contracts/message-libs → message-libs}/message-lib-common/src/interfaces/mod.rs +0 -0
  607. /package/{contracts/message-libs → message-libs}/message-lib-common/src/interfaces/treasury.rs +0 -0
  608. /package/{contracts/message-libs → message-libs}/message-lib-common/src/lib.rs +0 -0
  609. /package/{contracts/message-libs → message-libs}/message-lib-common/src/packet_codec_v1.rs +0 -0
  610. /package/{contracts/message-libs → message-libs}/message-lib-common/src/testing_utils.rs +0 -0
  611. /package/{contracts/message-libs → message-libs}/message-lib-common/src/tests/mod.rs +0 -0
  612. /package/{contracts/message-libs → message-libs}/message-lib-common/src/tests/packet_codec_v1/decode_packet_header.rs +0 -0
  613. /package/{contracts/message-libs → message-libs}/message-lib-common/src/tests/packet_codec_v1/encode_packet.rs +0 -0
  614. /package/{contracts/message-libs → message-libs}/message-lib-common/src/tests/packet_codec_v1/encode_packet_header.rs +0 -0
  615. /package/{contracts/message-libs → message-libs}/message-lib-common/src/tests/packet_codec_v1/mod.rs +0 -0
  616. /package/{contracts/message-libs → message-libs}/message-lib-common/src/tests/packet_codec_v1/payload.rs +0 -0
  617. /package/{contracts/message-libs → message-libs}/message-lib-common/src/tests/packet_codec_v1/payload_hash.rs +0 -0
  618. /package/{contracts/message-libs → message-libs}/message-lib-common/src/tests/packet_codec_v1/test_helper.rs +0 -0
  619. /package/{contracts/message-libs → message-libs}/message-lib-common/src/tests/worker_options/append_dvn_option.rs +0 -0
  620. /package/{contracts/message-libs → message-libs}/message-lib-common/src/tests/worker_options/append_lz_receive_option.rs +0 -0
  621. /package/{contracts/message-libs → message-libs}/message-lib-common/src/tests/worker_options/append_native_drop_option.rs +0 -0
  622. /package/{contracts/message-libs → message-libs}/message-lib-common/src/tests/worker_options/convert_legacy_options.rs +0 -0
  623. /package/{contracts/message-libs → message-libs}/message-lib-common/src/tests/worker_options/extract_type_3_options.rs +0 -0
  624. /package/{contracts/message-libs → message-libs}/message-lib-common/src/tests/worker_options/left_pad_to_bytes32.rs +0 -0
  625. /package/{contracts/message-libs → message-libs}/message-lib-common/src/tests/worker_options/mod.rs +0 -0
  626. /package/{contracts/message-libs → message-libs}/message-lib-common/src/tests/worker_options/split_worker_options.rs +0 -0
  627. /package/{contracts/message-libs → message-libs}/message-lib-common/src/worker_options.rs +0 -0
  628. /package/{contracts/message-libs → message-libs}/simple-message-lib/src/errors.rs +0 -0
  629. /package/{contracts/message-libs → message-libs}/simple-message-lib/src/lib.rs +0 -0
  630. /package/{contracts/message-libs → message-libs}/simple-message-lib/src/simple_message_lib.rs +0 -0
  631. /package/{contracts/message-libs → message-libs}/simple-message-lib/src/storage.rs +0 -0
  632. /package/{contracts/message-libs → message-libs}/simple-message-lib/src/tests/mod.rs +0 -0
  633. /package/{contracts/message-libs → message-libs}/simple-message-lib/src/tests/setup.rs +0 -0
  634. /package/{contracts/message-libs → message-libs}/simple-message-lib/src/tests/simple_message_lib_tests.rs +0 -0
  635. /package/{contracts/message-libs → message-libs}/treasury/src/errors.rs +0 -0
  636. /package/{contracts/message-libs → message-libs}/treasury/src/events.rs +0 -0
  637. /package/{contracts/message-libs → message-libs}/treasury/src/interfaces/mod.rs +0 -0
  638. /package/{contracts/message-libs → message-libs}/treasury/src/interfaces/zro_fee_lib.rs +0 -0
  639. /package/{contracts/message-libs → message-libs}/treasury/src/lib.rs +0 -0
  640. /package/{contracts/message-libs → message-libs}/treasury/src/storage.rs +0 -0
  641. /package/{contracts/message-libs → message-libs}/treasury/src/tests/mod.rs +0 -0
  642. /package/{contracts/message-libs → message-libs}/treasury/src/tests/setup.rs +0 -0
  643. /package/{contracts/message-libs → message-libs}/treasury/src/tests/treasury_tests.rs +0 -0
  644. /package/{contracts/message-libs → message-libs}/treasury/src/treasury.rs +0 -0
  645. /package/{contracts/message-libs → message-libs}/uln-302/src/errors.rs +0 -0
  646. /package/{contracts/message-libs → message-libs}/uln-302/src/events.rs +0 -0
  647. /package/{contracts/message-libs → message-libs}/uln-302/src/interfaces/mod.rs +0 -0
  648. /package/{contracts/message-libs → message-libs}/uln-302/src/interfaces/receive_uln.rs +0 -0
  649. /package/{contracts/message-libs → message-libs}/uln-302/src/interfaces/send_uln.rs +0 -0
  650. /package/{contracts/message-libs → message-libs}/uln-302/src/lib.rs +0 -0
  651. /package/{contracts/message-libs → message-libs}/uln-302/src/receive_uln.rs +0 -0
  652. /package/{contracts/message-libs → message-libs}/uln-302/src/send_uln.rs +0 -0
  653. /package/{contracts/message-libs → message-libs}/uln-302/src/storage.rs +0 -0
  654. /package/{contracts/message-libs → message-libs}/uln-302/src/tests/config/mod.rs +0 -0
  655. /package/{contracts/message-libs → message-libs}/uln-302/src/tests/config/oapp_uln_config.rs +0 -0
  656. /package/{contracts/message-libs → message-libs}/uln-302/src/tests/config/uln_config.rs +0 -0
  657. /package/{contracts/message-libs → message-libs}/uln-302/src/tests/mod.rs +0 -0
  658. /package/{contracts/message-libs → message-libs}/uln-302/src/tests/receive_uln302/commit_verification.rs +0 -0
  659. /package/{contracts/message-libs → message-libs}/uln-302/src/tests/receive_uln302/confirmations.rs +0 -0
  660. /package/{contracts/message-libs → message-libs}/uln-302/src/tests/receive_uln302/effective_receive_uln_config.rs +0 -0
  661. /package/{contracts/message-libs → message-libs}/uln-302/src/tests/receive_uln302/mod.rs +0 -0
  662. /package/{contracts/message-libs → message-libs}/uln-302/src/tests/receive_uln302/set_default_receive_uln_configs.rs +0 -0
  663. /package/{contracts/message-libs → message-libs}/uln-302/src/tests/receive_uln302/verifiable.rs +0 -0
  664. /package/{contracts/message-libs → message-libs}/uln-302/src/tests/receive_uln302/verify.rs +0 -0
  665. /package/{contracts/message-libs → message-libs}/uln-302/src/tests/send_uln302/effective_executor_config.rs +0 -0
  666. /package/{contracts/message-libs → message-libs}/uln-302/src/tests/send_uln302/effective_send_uln_config.rs +0 -0
  667. /package/{contracts/message-libs → message-libs}/uln-302/src/tests/send_uln302/mod.rs +0 -0
  668. /package/{contracts/message-libs → message-libs}/uln-302/src/tests/send_uln302/quote.rs +0 -0
  669. /package/{contracts/message-libs → message-libs}/uln-302/src/tests/send_uln302/send.rs +0 -0
  670. /package/{contracts/message-libs → message-libs}/uln-302/src/tests/send_uln302/set_default_executor_configs.rs +0 -0
  671. /package/{contracts/message-libs → message-libs}/uln-302/src/tests/send_uln302/set_default_send_uln_configs.rs +0 -0
  672. /package/{contracts/message-libs → message-libs}/uln-302/src/tests/setup.rs +0 -0
  673. /package/{contracts/message-libs → message-libs}/uln-302/src/tests/testing_utils.rs +0 -0
  674. /package/{contracts/message-libs → message-libs}/uln-302/src/tests/uln302/get_app_receive_uln_config.rs +0 -0
  675. /package/{contracts/message-libs → message-libs}/uln-302/src/tests/uln302/get_app_send_uln_config.rs +0 -0
  676. /package/{contracts/message-libs → message-libs}/uln-302/src/tests/uln302/get_config.rs +0 -0
  677. /package/{contracts/message-libs → message-libs}/uln-302/src/tests/uln302/get_oapp_executor_config.rs +0 -0
  678. /package/{contracts/message-libs → message-libs}/uln-302/src/tests/uln302/mod.rs +0 -0
  679. /package/{contracts/message-libs → message-libs}/uln-302/src/tests/uln302/set_config.rs +0 -0
  680. /package/{contracts/message-libs → message-libs}/uln-302/src/types.rs +0 -0
  681. /package/{contracts/message-libs → message-libs}/uln-302/src/uln302.rs +0 -0
  682. /package/{contracts/upgrader → upgrader}/src/lib.rs +0 -0
  683. /package/{contracts/upgrader → upgrader}/src/tests/mod.rs +0 -0
  684. /package/{contracts/upgrader → upgrader}/src/tests/test_data/test_upgradeable_contract1.wasm +0 -0
  685. /package/{contracts/upgrader → upgrader}/src/tests/test_data/test_upgradeable_contract2.wasm +0 -0
  686. /package/{contracts/upgrader → upgrader}/src/tests/test_data/test_upgradeable_contract3.wasm +0 -0
  687. /package/{contracts/upgrader → upgrader}/src/tests/test_data/test_upgradeable_contract4.wasm +0 -0
  688. /package/{contracts/upgrader → upgrader}/src/tests/test_upgrader.rs +0 -0
  689. /package/{contracts/workers → workers}/dvn/src/auth.rs +0 -0
  690. /package/{contracts/workers → workers}/dvn/src/dvn.rs +0 -0
  691. /package/{contracts/workers → workers}/dvn/src/errors.rs +0 -0
  692. /package/{contracts/workers → workers}/dvn/src/events.rs +0 -0
  693. /package/{contracts/workers → workers}/dvn/src/interfaces/dvn.rs +0 -0
  694. /package/{contracts/workers → workers}/dvn/src/interfaces/mod.rs +0 -0
  695. /package/{contracts/workers → workers}/dvn/src/lib.rs +0 -0
  696. /package/{contracts/workers → workers}/dvn/src/storage.rs +0 -0
  697. /package/{contracts/workers → workers}/dvn/src/tests/auth.rs +0 -0
  698. /package/{contracts/workers → workers}/dvn/src/tests/dvn.rs +0 -0
  699. /package/{contracts/workers → workers}/dvn/src/tests/key_pair.rs +0 -0
  700. /package/{contracts/workers → workers}/dvn/src/tests/mod.rs +0 -0
  701. /package/{contracts/workers → workers}/dvn/src/tests/setup.rs +0 -0
  702. /package/{contracts/workers → workers}/dvn-fee-lib/src/dvn_fee_lib.rs +0 -0
  703. /package/{contracts/workers → workers}/dvn-fee-lib/src/errors.rs +0 -0
  704. /package/{contracts/workers → workers}/dvn-fee-lib/src/lib.rs +0 -0
  705. /package/{contracts/workers → workers}/dvn-fee-lib/src/tests/dvn_fee_lib.rs +0 -0
  706. /package/{contracts/workers → workers}/dvn-fee-lib/src/tests/mod.rs +0 -0
  707. /package/{contracts/workers → workers}/executor/src/auth.rs +0 -0
  708. /package/{contracts/workers → workers}/executor/src/errors.rs +0 -0
  709. /package/{contracts/workers → workers}/executor/src/events.rs +0 -0
  710. /package/{contracts/workers → workers}/executor/src/executor.rs +0 -0
  711. /package/{contracts/workers → workers}/executor/src/interfaces/executor.rs +0 -0
  712. /package/{contracts/workers → workers}/executor/src/interfaces/mod.rs +0 -0
  713. /package/{contracts/workers → workers}/executor/src/lib.rs +0 -0
  714. /package/{contracts/workers → workers}/executor/src/storage.rs +0 -0
  715. /package/{contracts/workers → workers}/executor/src/tests/auth.rs +0 -0
  716. /package/{contracts/workers → workers}/executor/src/tests/executor.rs +0 -0
  717. /package/{contracts/workers → workers}/executor/src/tests/mod.rs +0 -0
  718. /package/{contracts/workers → workers}/executor/src/tests/setup.rs +0 -0
  719. /package/{contracts/workers → workers}/executor-fee-lib/src/errors.rs +0 -0
  720. /package/{contracts/workers → workers}/executor-fee-lib/src/executor_fee_lib.rs +0 -0
  721. /package/{contracts/workers → workers}/executor-fee-lib/src/executor_option.rs +0 -0
  722. /package/{contracts/workers → workers}/executor-fee-lib/src/lib.rs +0 -0
  723. /package/{contracts/workers → workers}/executor-fee-lib/src/tests/executor_fee_lib.rs +0 -0
  724. /package/{contracts/workers → workers}/executor-fee-lib/src/tests/executor_option.rs +0 -0
  725. /package/{contracts/workers → workers}/executor-fee-lib/src/tests/mod.rs +0 -0
  726. /package/{contracts/workers → workers}/executor-fee-lib/src/tests/setup.rs +0 -0
  727. /package/{contracts/workers → workers}/executor-helper/src/executor_helper.rs +0 -0
  728. /package/{contracts/workers → workers}/executor-helper/src/lib.rs +0 -0
  729. /package/{contracts/workers → workers}/executor-helper/src/tests/executor_helper.rs +0 -0
  730. /package/{contracts/workers → workers}/executor-helper/src/tests/mod.rs +0 -0
  731. /package/{contracts/workers → workers}/executor-helper/src/tests/setup.rs +0 -0
  732. /package/{contracts/workers → workers}/fee-lib-interfaces/src/dvn_fee_lib.rs +0 -0
  733. /package/{contracts/workers → workers}/fee-lib-interfaces/src/executor_fee_lib.rs +0 -0
  734. /package/{contracts/workers → workers}/fee-lib-interfaces/src/lib.rs +0 -0
  735. /package/{contracts/workers → workers}/fee-lib-interfaces/src/price_feed.rs +0 -0
  736. /package/{contracts/workers → workers}/price-feed/src/errors.rs +0 -0
  737. /package/{contracts/workers → workers}/price-feed/src/events.rs +0 -0
  738. /package/{contracts/workers → workers}/price-feed/src/lib.rs +0 -0
  739. /package/{contracts/workers → workers}/price-feed/src/price_feed.rs +0 -0
  740. /package/{contracts/workers → workers}/price-feed/src/storage.rs +0 -0
  741. /package/{contracts/workers → workers}/price-feed/src/tests/mod.rs +0 -0
  742. /package/{contracts/workers → workers}/price-feed/src/tests/price_feed.rs +0 -0
  743. /package/{contracts/workers → workers}/price-feed/src/tests/setup.rs +0 -0
  744. /package/{contracts/workers → workers}/price-feed/src/types.rs +0 -0
  745. /package/{contracts/workers → workers}/worker/src/errors.rs +0 -0
  746. /package/{contracts/workers → workers}/worker/src/events.rs +0 -0
  747. /package/{contracts/workers → workers}/worker/src/lib.rs +0 -0
  748. /package/{contracts/workers → workers}/worker/src/storage.rs +0 -0
  749. /package/{contracts/workers → workers}/worker/src/tests/mod.rs +0 -0
  750. /package/{contracts/workers → workers}/worker/src/tests/setup.rs +0 -0
  751. /package/{contracts/workers → workers}/worker/src/tests/worker.rs +0 -0
  752. /package/{contracts/workers → workers}/worker/src/worker.rs +0 -0
@@ -1,166 +0,0 @@
1
- //! # OApp Procedural Macros
2
- //!
3
- //! This crate provides the `#[oapp]` procedural macro for implementing LayerZero OApp
4
- //! (Omnichain Application) functionality on Soroban smart contracts.
5
- //!
6
- //! ## Overview
7
- //!
8
- //! The OApp framework provides full bidirectional cross-chain communication:
9
- //!
10
- //! - **OAppCore**: Foundation for all OApp functionality (peer management, endpoint access)
11
- //! - **OAppSenderInternal**: Enables sending cross-chain messages through LayerZero
12
- //! - **LzReceiveInternal**: Internal trait for message handling logic
13
- //! - **OAppReceiver**: Handles incoming cross-chain messages (has default `lz_receive` impl)
14
- //! - **OAppOptionsType3**: Manages enforced options for message execution parameters
15
- //!
16
- //! ## Usage
17
- //!
18
- //! ### `#[oapp]`
19
- //! The main macro that provides Core + Sender + Receiver + OptionsType3 functionality.
20
- //! This is the only macro you need for cross-chain communication.
21
- //!
22
- //! ### Custom Implementations
23
- //!
24
- //! By default, `#[oapp]` generates default trait implementations. Use `#[oapp(custom = [...])]`
25
- //! to provide your own custom implementations for specific traits:
26
- //!
27
- //! Supported options:
28
- //! - `core` - Custom implement `OAppCore`
29
- //! - `sender` - Custom implement `OAppSenderInternal`
30
- //! - `receiver` - Custom implement `OAppReceiver` (useful for custom `next_nonce`, etc.)
31
- //! - `options_type3` - Custom implement `OAppOptionsType3`
32
- //!
33
- //! ## Examples
34
- //!
35
- //! ### Full OApp with Default Implementations
36
- //!
37
- //! ```ignore
38
- //! use oapp::oapp_receiver::LzReceiveInternal;
39
- //! use oapp_macros::oapp;
40
- //!
41
- //! #[oapp]
42
- //! #[common_macros::lz_contract]
43
- //! struct MyOApp;
44
- //!
45
- //! // Implement LzReceiveInternal to handle incoming messages
46
- //! impl LzReceiveInternal for MyOApp {
47
- //! fn __lz_receive(
48
- //! env: &Env,
49
- //! origin: &Origin,
50
- //! guid: &BytesN<32>,
51
- //! message: &Bytes,
52
- //! extra_data: &Bytes,
53
- //! executor: &Address,
54
- //! value: i128,
55
- //! ) {
56
- //! // Your message handling logic (clear_payload_and_transfer already called)
57
- //! }
58
- //! }
59
- //! ```
60
- //!
61
- //! ### OApp with Custom Core Version
62
- //!
63
- //! ```ignore
64
- //! use oapp::oapp_receiver::LzReceiveInternal;
65
- //! use utils::rbac::RoleBasedAccessControl;
66
- //!
67
- //! #[oapp(custom = [core])]
68
- //! #[common_macros::lz_contract]
69
- //! struct MyOApp;
70
- //!
71
- //! // Required: `custom = [core]` skips generating both OAppCore and RoleBasedAccessControl impls
72
- //! impl RoleBasedAccessControl for MyOApp {}
73
- //!
74
- //! #[contractimpl(contracttrait)]
75
- //! impl OAppCore for MyOApp {
76
- //! fn oapp_version(_env: &Env) -> (u64, u64) {
77
- //! (1, 1) // Custom version
78
- //! }
79
- //! }
80
- //!
81
- //! impl LzReceiveInternal for MyOApp {
82
- //! fn __lz_receive(...) { /* ... */ }
83
- //! }
84
- //! ```
85
- //!
86
- //! ### OApp with Custom Receiver (e.g., ordered delivery)
87
- //!
88
- //! ```ignore
89
- //! use oapp::oapp_receiver::{LzReceiveInternal, OAppReceiver};
90
- //!
91
- //! #[oapp(custom = [receiver])]
92
- //! #[common_macros::lz_contract]
93
- //! struct MyOrderedOApp;
94
- //!
95
- //! impl LzReceiveInternal for MyOrderedOApp {
96
- //! fn __lz_receive(env: &Env, origin: &Origin, guid: &BytesN<32>, ...) {
97
- //! // Your message handling logic
98
- //! }
99
- //! }
100
- //!
101
- //! #[contractimpl(contracttrait)]
102
- //! impl OAppReceiver for MyOrderedOApp {
103
- //! fn next_nonce(env: &Env, src_eid: u32, sender: &BytesN<32>) -> u64 {
104
- //! // Custom nonce logic for ordered delivery
105
- //! Storage::max_received_nonce(env, src_eid, sender) + 1
106
- //! }
107
- //! // lz_receive uses default impl which calls clear_payload_and_transfer then __lz_receive
108
- //! }
109
- //! ```
110
- //!
111
- //! ### OApp with Multiple Custom Implementations
112
- //!
113
- //! ```ignore
114
- //! use oapp::oapp_receiver::LzReceiveInternal;
115
- //! use utils::rbac::RoleBasedAccessControl;
116
- //!
117
- //! #[oapp(custom = [core, sender, options_type3])]
118
- //! #[common_macros::lz_contract]
119
- //! struct MyCustomOApp;
120
- //!
121
- //! // Required: `custom = [core]` skips generating both OAppCore and RoleBasedAccessControl impls
122
- //! impl RoleBasedAccessControl for MyCustomOApp {}
123
- //!
124
- //! #[contractimpl(contracttrait)]
125
- //! impl OAppCore for MyCustomOApp { /* ... */ }
126
- //! impl OAppSenderInternal for MyCustomOApp { /* ... */ }
127
- //! #[contractimpl(contracttrait)]
128
- //! impl OAppOptionsType3 for MyCustomOApp { /* ... */ }
129
- //!
130
- //! impl LzReceiveInternal for MyCustomOApp {
131
- //! fn __lz_receive(...) { /* ... */ }
132
- //! }
133
- //! ```
134
-
135
- mod generators;
136
-
137
- use proc_macro::TokenStream;
138
-
139
- /// Derives OApp trait implementations. Apply `#[lz_contract]` (or similar) for contract + TTL + Auth.
140
- ///
141
- /// ## Usage
142
- ///
143
- /// ```ignore
144
- /// // Default: generates all trait implementations
145
- /// #[oapp]
146
- /// struct MyOApp;
147
- ///
148
- /// // Provide custom implementations for specific traits
149
- /// #[oapp(custom = [core, receiver])]
150
- /// struct MyCustomOApp;
151
- /// ```
152
- ///
153
- /// ## Custom Options
154
- /// - `core` - Manually implement `OAppCore`
155
- /// - `sender` - Manually implement `OAppSenderInternal`
156
- /// - `receiver` - Manually implement `OAppReceiver`
157
- /// - `options_type3` - Manually implement `OAppOptionsType3`
158
- ///
159
- /// You must implement `LzReceiveInternal` for your struct. See module docs for examples.
160
- #[proc_macro_attribute]
161
- pub fn oapp(attr: TokenStream, item: TokenStream) -> TokenStream {
162
- generators::generate_oapp(attr.into(), item.into()).into()
163
- }
164
-
165
- #[cfg(test)]
166
- mod tests;
@@ -1,2 +0,0 @@
1
- mod oapp;
2
- mod parse_custom_impls;
@@ -1,74 +0,0 @@
1
- use quote::quote;
2
-
3
- // ============================================
4
- // Snapshot Tests: OApp Code Generation
5
- // ============================================
6
-
7
- #[test]
8
- fn snapshot_generate_oapp() {
9
- let struct_input = quote! {
10
- pub struct MyOApp;
11
- };
12
-
13
- let all_defaults = {
14
- let result = crate::generators::generate_oapp(quote! {}, struct_input.clone());
15
- prettyplease::unparse(&syn::parse2::<syn::File>(result).expect("failed to parse generated code"))
16
- };
17
-
18
- let custom_core_only = {
19
- let result = crate::generators::generate_oapp(quote! { custom = [core] }, struct_input.clone());
20
- prettyplease::unparse(&syn::parse2::<syn::File>(result).expect("failed to parse generated code"))
21
- };
22
-
23
- let custom_sender_only = {
24
- let result = crate::generators::generate_oapp(quote! { custom = [sender] }, struct_input.clone());
25
- prettyplease::unparse(&syn::parse2::<syn::File>(result).expect("failed to parse generated code"))
26
- };
27
-
28
- let custom_receiver_only = {
29
- let result = crate::generators::generate_oapp(quote! { custom = [receiver] }, struct_input.clone());
30
- prettyplease::unparse(&syn::parse2::<syn::File>(result).expect("failed to parse generated code"))
31
- };
32
-
33
- let custom_options_type3_only = {
34
- let result = crate::generators::generate_oapp(quote! { custom = [options_type3] }, struct_input.clone());
35
- prettyplease::unparse(&syn::parse2::<syn::File>(result).expect("failed to parse generated code"))
36
- };
37
-
38
- let custom_all = {
39
- let result = crate::generators::generate_oapp(
40
- quote! { custom = [core, sender, receiver, options_type3] },
41
- struct_input.clone(),
42
- );
43
- prettyplease::unparse(&syn::parse2::<syn::File>(result).expect("failed to parse generated code"))
44
- };
45
-
46
- let preserves_struct_attributes_and_fields = {
47
- let fancy_input = quote! {
48
- #[derive(Clone, Debug)]
49
- pub struct FancyOApp {
50
- pub x: u32,
51
- }
52
- };
53
- let result = crate::generators::generate_oapp(quote! {}, fancy_input);
54
- prettyplease::unparse(&syn::parse2::<syn::File>(result).expect("failed to parse generated code"))
55
- };
56
-
57
- let combined = format!(
58
- "// === Default (no custom impls) ===\n\n{}\n\n\
59
- // === custom = [core] ===\n\n{}\n\n\
60
- // === custom = [sender] ===\n\n{}\n\n\
61
- // === custom = [receiver] ===\n\n{}\n\n\
62
- // === custom = [options_type3] ===\n\n{}\n\n\
63
- // === custom = [core, sender, receiver, options_type3] ===\n\n{}\n\n\
64
- // === Struct attributes + fields are preserved ===\n\n{}",
65
- all_defaults,
66
- custom_core_only,
67
- custom_sender_only,
68
- custom_receiver_only,
69
- custom_options_type3_only,
70
- custom_all,
71
- preserves_struct_attributes_and_fields
72
- );
73
- insta::assert_snapshot!(combined);
74
- }
@@ -1,90 +0,0 @@
1
- use quote::quote;
2
-
3
- // ============================================
4
- // Unit Tests: #[oapp(custom = [...])] parsing
5
- // ============================================
6
-
7
- #[test]
8
- fn test_custom_impls_parse_empty_is_default() {
9
- let parsed: crate::generators::CustomImpls = syn::parse2(quote! {}).expect("failed to parse empty attrs");
10
- assert!(!parsed.core);
11
- assert!(!parsed.sender);
12
- assert!(!parsed.receiver);
13
- assert!(!parsed.options_type3);
14
- }
15
-
16
- #[test]
17
- fn test_custom_impls_parse_valid_all_list() {
18
- let parsed: crate::generators::CustomImpls =
19
- syn::parse2(quote! { custom = [core, sender, receiver, options_type3] }).expect("failed to parse attrs");
20
- assert!(parsed.core);
21
- assert!(parsed.sender);
22
- assert!(parsed.receiver);
23
- assert!(parsed.options_type3);
24
- }
25
-
26
- #[test]
27
- fn test_custom_impls_parse_empty_custom_list_is_default() {
28
- let parsed: crate::generators::CustomImpls = syn::parse2(quote! { custom = [] }).expect("failed to parse attrs");
29
- assert!(!parsed.core);
30
- assert!(!parsed.sender);
31
- assert!(!parsed.receiver);
32
- assert!(!parsed.options_type3);
33
- }
34
-
35
- #[test]
36
- fn test_custom_impls_allows_trailing_comma() {
37
- let parsed: crate::generators::CustomImpls =
38
- syn::parse2(quote! { custom = [core,] }).expect("failed to parse attrs");
39
- assert!(parsed.core);
40
- assert!(!parsed.sender);
41
- assert!(!parsed.receiver);
42
- assert!(!parsed.options_type3);
43
- }
44
-
45
- #[test]
46
- fn test_custom_impls_allows_duplicates() {
47
- // Duplicates are harmless and should not cause parsing to fail.
48
- let parsed: crate::generators::CustomImpls =
49
- syn::parse2(quote! { custom = [core, core, receiver, receiver] }).expect("failed to parse attrs");
50
- assert!(parsed.core);
51
- assert!(!parsed.sender);
52
- assert!(parsed.receiver);
53
- assert!(!parsed.options_type3);
54
- }
55
-
56
- #[test]
57
- fn test_custom_impls_rejects_wrong_key() {
58
- let err =
59
- syn::parse2::<crate::generators::CustomImpls>(quote! { nope = [core] }).expect_err("expected parse failure");
60
- assert!(err.to_string().contains("expected `custom`"), "unexpected error: {err}");
61
- }
62
-
63
- #[test]
64
- fn test_custom_impls_rejects_unknown_ident() {
65
- let err = syn::parse2::<crate::generators::CustomImpls>(quote! { custom = [core, not_a_real_option] })
66
- .expect_err("expected failure");
67
- assert!(
68
- err.to_string().contains("expected one of `core`, `sender`, `receiver`, `options_type3`"),
69
- "unexpected error: {err}"
70
- );
71
- }
72
-
73
- #[test]
74
- fn test_custom_impls_rejects_trailing_tokens_after_list() {
75
- // `syn::parse2` expects the parser to consume the full stream.
76
- syn::parse2::<crate::generators::CustomImpls>(quote! { custom = [core] extra })
77
- .expect_err("expected parse failure due to trailing tokens");
78
- }
79
-
80
- #[test]
81
- fn test_custom_impls_rejects_missing_equals() {
82
- syn::parse2::<crate::generators::CustomImpls>(quote! { custom [core] })
83
- .expect_err("expected parse failure (missing `=`)");
84
- }
85
-
86
- #[test]
87
- fn test_custom_impls_rejects_non_bracketed_list() {
88
- syn::parse2::<crate::generators::CustomImpls>(quote! { custom = (core) })
89
- .expect_err("expected parse failure (not `[...]`)");
90
- }
@@ -1,111 +0,0 @@
1
- ---
2
- source: contracts/oapps/oapp-macros/src/tests/oapp.rs
3
- assertion_line: 87
4
- expression: combined
5
- ---
6
- // === Default (no custom impls) ===
7
-
8
- pub struct MyOApp;
9
- use oapp::oapp_core::OAppCore as _;
10
- use utils::rbac::RoleBasedAccessControl as _;
11
- #[soroban_sdk::contractimpl(contracttrait)]
12
- impl oapp::oapp_core::OAppCore for MyOApp {}
13
- #[soroban_sdk::contractimpl(contracttrait)]
14
- impl utils::rbac::RoleBasedAccessControl for MyOApp {}
15
- use oapp::oapp_sender::OAppSenderInternal as _;
16
- impl oapp::oapp_sender::OAppSenderInternal for MyOApp {}
17
- use oapp::oapp_receiver::OAppReceiver as _;
18
- #[soroban_sdk::contractimpl(contracttrait)]
19
- impl oapp::oapp_receiver::OAppReceiver for MyOApp {}
20
- use oapp::oapp_options_type3::OAppOptionsType3 as _;
21
- #[soroban_sdk::contractimpl(contracttrait)]
22
- impl oapp::oapp_options_type3::OAppOptionsType3 for MyOApp {}
23
-
24
-
25
- // === custom = [core] ===
26
-
27
- pub struct MyOApp;
28
- use oapp::oapp_sender::OAppSenderInternal as _;
29
- impl oapp::oapp_sender::OAppSenderInternal for MyOApp {}
30
- use oapp::oapp_receiver::OAppReceiver as _;
31
- #[soroban_sdk::contractimpl(contracttrait)]
32
- impl oapp::oapp_receiver::OAppReceiver for MyOApp {}
33
- use oapp::oapp_options_type3::OAppOptionsType3 as _;
34
- #[soroban_sdk::contractimpl(contracttrait)]
35
- impl oapp::oapp_options_type3::OAppOptionsType3 for MyOApp {}
36
-
37
-
38
- // === custom = [sender] ===
39
-
40
- pub struct MyOApp;
41
- use oapp::oapp_core::OAppCore as _;
42
- use utils::rbac::RoleBasedAccessControl as _;
43
- #[soroban_sdk::contractimpl(contracttrait)]
44
- impl oapp::oapp_core::OAppCore for MyOApp {}
45
- #[soroban_sdk::contractimpl(contracttrait)]
46
- impl utils::rbac::RoleBasedAccessControl for MyOApp {}
47
- use oapp::oapp_receiver::OAppReceiver as _;
48
- #[soroban_sdk::contractimpl(contracttrait)]
49
- impl oapp::oapp_receiver::OAppReceiver for MyOApp {}
50
- use oapp::oapp_options_type3::OAppOptionsType3 as _;
51
- #[soroban_sdk::contractimpl(contracttrait)]
52
- impl oapp::oapp_options_type3::OAppOptionsType3 for MyOApp {}
53
-
54
-
55
- // === custom = [receiver] ===
56
-
57
- pub struct MyOApp;
58
- use oapp::oapp_core::OAppCore as _;
59
- use utils::rbac::RoleBasedAccessControl as _;
60
- #[soroban_sdk::contractimpl(contracttrait)]
61
- impl oapp::oapp_core::OAppCore for MyOApp {}
62
- #[soroban_sdk::contractimpl(contracttrait)]
63
- impl utils::rbac::RoleBasedAccessControl for MyOApp {}
64
- use oapp::oapp_sender::OAppSenderInternal as _;
65
- impl oapp::oapp_sender::OAppSenderInternal for MyOApp {}
66
- use oapp::oapp_options_type3::OAppOptionsType3 as _;
67
- #[soroban_sdk::contractimpl(contracttrait)]
68
- impl oapp::oapp_options_type3::OAppOptionsType3 for MyOApp {}
69
-
70
-
71
- // === custom = [options_type3] ===
72
-
73
- pub struct MyOApp;
74
- use oapp::oapp_core::OAppCore as _;
75
- use utils::rbac::RoleBasedAccessControl as _;
76
- #[soroban_sdk::contractimpl(contracttrait)]
77
- impl oapp::oapp_core::OAppCore for MyOApp {}
78
- #[soroban_sdk::contractimpl(contracttrait)]
79
- impl utils::rbac::RoleBasedAccessControl for MyOApp {}
80
- use oapp::oapp_sender::OAppSenderInternal as _;
81
- impl oapp::oapp_sender::OAppSenderInternal for MyOApp {}
82
- use oapp::oapp_receiver::OAppReceiver as _;
83
- #[soroban_sdk::contractimpl(contracttrait)]
84
- impl oapp::oapp_receiver::OAppReceiver for MyOApp {}
85
-
86
-
87
- // === custom = [core, sender, receiver, options_type3] ===
88
-
89
- pub struct MyOApp;
90
-
91
-
92
- // === Struct attributes + fields are preserved ===
93
-
94
- #[derive(Clone, Debug)]
95
- pub struct FancyOApp {
96
- pub x: u32,
97
- }
98
- use oapp::oapp_core::OAppCore as _;
99
- use utils::rbac::RoleBasedAccessControl as _;
100
- #[soroban_sdk::contractimpl(contracttrait)]
101
- impl oapp::oapp_core::OAppCore for FancyOApp {}
102
- #[soroban_sdk::contractimpl(contracttrait)]
103
- impl utils::rbac::RoleBasedAccessControl for FancyOApp {}
104
- use oapp::oapp_sender::OAppSenderInternal as _;
105
- impl oapp::oapp_sender::OAppSenderInternal for FancyOApp {}
106
- use oapp::oapp_receiver::OAppReceiver as _;
107
- #[soroban_sdk::contractimpl(contracttrait)]
108
- impl oapp::oapp_receiver::OAppReceiver for FancyOApp {}
109
- use oapp::oapp_options_type3::OAppOptionsType3 as _;
110
- #[soroban_sdk::contractimpl(contracttrait)]
111
- impl oapp::oapp_options_type3::OAppOptionsType3 for FancyOApp {}
@@ -1,30 +0,0 @@
1
- [package]
2
- name = "oft"
3
- version.workspace = true
4
- edition.workspace = true
5
- license.workspace = true
6
-
7
- [lib]
8
- crate-type = ["cdylib", "rlib"]
9
- doctest = false
10
-
11
- [features]
12
- library = []
13
- testutils = []
14
-
15
- [dependencies]
16
- soroban-sdk = { workspace = true }
17
- cfg-if = { workspace = true }
18
- utils = { workspace = true }
19
- common-macros = { workspace = true }
20
- endpoint-v2 = { workspace = true, features = ["library"] }
21
- oapp = { workspace = true }
22
- oapp-macros = { workspace = true }
23
- oft-core = { workspace = true }
24
-
25
- [dev-dependencies]
26
- soroban-sdk = { workspace = true, features = ["testutils"] }
27
- simple-message-lib = { workspace = true, features = ["testutils"] }
28
- message-lib-common = { workspace = true, features = ["testutils"] }
29
- endpoint-v2 = { workspace = true, features = ["testutils"] }
30
- utils = { workspace = true, features = ["testutils"] }
@@ -1,3 +0,0 @@
1
- mod test_oft_fee;
2
- mod test_pausable;
3
- mod test_rate_limiter;
@@ -1,172 +0,0 @@
1
- //! OFT Fee extension e2e tests for OFT-STD.
2
- //!
3
- //! Tests verify that the OFTFee extension properly collects fees on cross-chain transfers.
4
- //! Key behavior: at debit_view, apply fee first then remove dust.
5
- //! - If fee is zero: amount_sent_ld == amount_received_ld
6
- //! - If fee is non-zero: amount_sent_ld is unchanged (original amount)
7
-
8
- use crate::integration_tests::{
9
- setup::{create_recipient_address, decode_packet, setup, wire_endpoint, wire_oft, TestSetup},
10
- utils::{
11
- address_to_peer_bytes32, create_send_param, lz_receive, mint_oft_token_to, mint_to, quote_oft, quote_send,
12
- scan_packet_sent_event, send, send_with_fee, set_default_fee_bps, set_fee_bps, set_fee_deposit_address,
13
- token_balance, validate_packet,
14
- },
15
- };
16
- use soroban_sdk::{testutils::Address as _, token::TokenClient, Address};
17
-
18
- /// Test e2e cross-chain transfer with zero fee (default)
19
- #[test]
20
- fn test_cross_chain_with_zero_fee() {
21
- let TestSetup { env, chain_a, chain_b } = setup();
22
- wire_endpoint(&env, &[&chain_a, &chain_b]);
23
- wire_oft(&env, &[&chain_a, &chain_b]);
24
-
25
- let sender = Address::generate(&env);
26
- let receiver = create_recipient_address(&env);
27
- let executor = Address::generate(&env);
28
-
29
- mint_oft_token_to(&env, &chain_a, &sender, 10_000_000);
30
- mint_to(&env, &chain_a.owner, &chain_a.native_token, &sender, 10_000_000_000);
31
-
32
- // Default fee state on both OFTs
33
- assert_eq!(chain_a.oft.default_fee_bps(), None);
34
- assert_eq!(chain_a.oft.fee_deposit_address(), None);
35
- assert_eq!(chain_a.oft.effective_fee_bps(&chain_b.eid), 0);
36
- assert_eq!(chain_b.oft.default_fee_bps(), None);
37
- assert_eq!(chain_b.oft.fee_deposit_address(), None);
38
- assert_eq!(chain_b.oft.effective_fee_bps(&chain_a.eid), 0);
39
-
40
- let to = address_to_peer_bytes32(&receiver);
41
- let send_param = create_send_param(&env, chain_b.eid, 1_000_000, 0, &to);
42
- let (_, _, oft_receipt) = quote_oft(&chain_a, &sender, &send_param);
43
-
44
- // With zero fee, amount_sent_ld == amount_received_ld (after dust removal)
45
- assert_eq!(oft_receipt.amount_sent_ld, oft_receipt.amount_received_ld);
46
-
47
- let fee = quote_send(&env, &chain_a, &sender, &send_param, false);
48
- send(&env, &chain_a, &sender, &send_param, &fee, &sender, &oft_receipt);
49
-
50
- let packet_event = scan_packet_sent_event(&env, &chain_a.endpoint.address).unwrap();
51
- validate_packet(&env, &chain_b, &packet_event);
52
- let packet = decode_packet(&env, &packet_event.0);
53
-
54
- lz_receive(&env, &chain_b, &executor, &packet, &receiver, 0);
55
-
56
- // Verify receiver got full amount (no fee)
57
- let receiver_balance = TokenClient::new(&env, &chain_b.oft_token).balance(&receiver);
58
- assert_eq!(receiver_balance, oft_receipt.amount_received_ld);
59
- }
60
-
61
- /// Test e2e cross-chain transfer with fee enabled
62
- #[test]
63
- fn test_cross_chain_with_fee() {
64
- let TestSetup { env, chain_a, chain_b } = setup();
65
- wire_endpoint(&env, &[&chain_a, &chain_b]);
66
- wire_oft(&env, &[&chain_a, &chain_b]);
67
-
68
- let sender = Address::generate(&env);
69
- let receiver = create_recipient_address(&env);
70
- let executor = Address::generate(&env);
71
-
72
- mint_oft_token_to(&env, &chain_a, &sender, 10_000_000);
73
- mint_to(&env, &chain_a.owner, &chain_a.native_token, &sender, 10_000_000_000);
74
-
75
- // Enable 1% fee (100 bps)
76
- set_fee_deposit_address(&env, &chain_a, &chain_a.fee_collector);
77
- set_default_fee_bps(&env, &chain_a, 100);
78
- assert_eq!(chain_a.oft.default_fee_bps(), Some(100));
79
- assert_eq!(chain_a.oft.fee_deposit_address(), Some(chain_a.fee_collector.clone()));
80
- assert_eq!(chain_a.oft.effective_fee_bps(&chain_b.eid), 100);
81
- assert_eq!(chain_b.oft.default_fee_bps(), None);
82
- assert_eq!(chain_b.oft.fee_deposit_address(), None);
83
- assert_eq!(chain_b.oft.effective_fee_bps(&chain_a.eid), 0);
84
-
85
- let to = address_to_peer_bytes32(&receiver);
86
- let amount_ld = 1_000_000i128;
87
- let send_param = create_send_param(&env, chain_b.eid, amount_ld, 0, &to);
88
- let (_, _, oft_receipt) = quote_oft(&chain_a, &sender, &send_param);
89
-
90
- // With fee, amount_sent_ld stays original, amount_received_ld is reduced
91
- assert_eq!(oft_receipt.amount_sent_ld, amount_ld);
92
- assert!(oft_receipt.amount_received_ld < amount_ld);
93
-
94
- // Expected fee: 1% of 1,000,000 = 10,000
95
- let expected_fee = 10_000i128;
96
- let actual_fee = oft_receipt.amount_sent_ld - oft_receipt.amount_received_ld;
97
- assert_eq!(actual_fee, expected_fee);
98
-
99
- let fee = quote_send(&env, &chain_a, &sender, &send_param, false);
100
- send_with_fee(&env, &chain_a, &sender, &send_param, &fee, &sender, &oft_receipt, &chain_a.fee_collector);
101
-
102
- // IMPORTANT: Scan events immediately after send, before any other operations
103
- let packet_event = scan_packet_sent_event(&env, &chain_a.endpoint.address).unwrap();
104
- validate_packet(&env, &chain_b, &packet_event);
105
- let packet = decode_packet(&env, &packet_event.0);
106
-
107
- // Verify fee was collected on source chain
108
- let fee_collector_balance = token_balance(&env, &chain_a.oft_token, &chain_a.fee_collector);
109
- assert_eq!(fee_collector_balance, expected_fee);
110
-
111
- lz_receive(&env, &chain_b, &executor, &packet, &receiver, 0);
112
-
113
- // Verify receiver got amount after fee
114
- let receiver_balance = TokenClient::new(&env, &chain_b.oft_token).balance(&receiver);
115
- assert_eq!(receiver_balance, oft_receipt.amount_received_ld);
116
- }
117
-
118
- /// Test e2e cross-chain transfer with destination-specific fee
119
- #[test]
120
- fn test_cross_chain_with_destination_specific_fee() {
121
- let TestSetup { env, chain_a, chain_b } = setup();
122
- wire_endpoint(&env, &[&chain_a, &chain_b]);
123
- wire_oft(&env, &[&chain_a, &chain_b]);
124
-
125
- let sender = Address::generate(&env);
126
- let receiver = create_recipient_address(&env);
127
- let executor = Address::generate(&env);
128
-
129
- mint_oft_token_to(&env, &chain_a, &sender, 10_000_000);
130
- mint_to(&env, &chain_a.owner, &chain_a.native_token, &sender, 10_000_000_000);
131
-
132
- // Set default fee 1% and destination-specific fee 2% for chain_b
133
- set_fee_deposit_address(&env, &chain_a, &chain_a.fee_collector);
134
- set_default_fee_bps(&env, &chain_a, 100); // 1%
135
- set_fee_bps(&env, &chain_a, chain_b.eid, 200); // 2% for chain_b
136
- assert_eq!(chain_a.oft.default_fee_bps(), Some(100));
137
- assert_eq!(chain_a.oft.fee_bps(&chain_b.eid), Some(200));
138
- assert_eq!(chain_a.oft.fee_deposit_address(), Some(chain_a.fee_collector.clone()));
139
- assert_eq!(chain_a.oft.effective_fee_bps(&chain_b.eid), 200);
140
- assert_eq!(chain_b.oft.default_fee_bps(), None);
141
- assert_eq!(chain_b.oft.fee_bps(&chain_a.eid), None);
142
- assert_eq!(chain_b.oft.fee_deposit_address(), None);
143
- assert_eq!(chain_b.oft.effective_fee_bps(&chain_a.eid), 0);
144
-
145
- let to = address_to_peer_bytes32(&receiver);
146
- let amount_ld = 1_000_000i128;
147
- let send_param = create_send_param(&env, chain_b.eid, amount_ld, 0, &to);
148
- let (_, _, oft_receipt) = quote_oft(&chain_a, &sender, &send_param);
149
-
150
- // 2% fee on 1,000,000 = 20,000
151
- let expected_fee = 20_000i128;
152
- let actual_fee = oft_receipt.amount_sent_ld - oft_receipt.amount_received_ld;
153
- assert_eq!(actual_fee, expected_fee);
154
-
155
- let fee = quote_send(&env, &chain_a, &sender, &send_param, false);
156
- send_with_fee(&env, &chain_a, &sender, &send_param, &fee, &sender, &oft_receipt, &chain_a.fee_collector);
157
-
158
- // IMPORTANT: Scan events immediately after send, before any other operations
159
- let packet_event = scan_packet_sent_event(&env, &chain_a.endpoint.address).unwrap();
160
- validate_packet(&env, &chain_b, &packet_event);
161
- let packet = decode_packet(&env, &packet_event.0);
162
-
163
- // Verify fee was collected
164
- let fee_collector_balance = token_balance(&env, &chain_a.oft_token, &chain_a.fee_collector);
165
- assert_eq!(fee_collector_balance, expected_fee);
166
-
167
- lz_receive(&env, &chain_b, &executor, &packet, &receiver, 0);
168
-
169
- // Verify receiver got correct amount
170
- let receiver_balance = TokenClient::new(&env, &chain_b.oft_token).balance(&receiver);
171
- assert_eq!(receiver_balance, oft_receipt.amount_received_ld);
172
- }