@agirails/sdk 2.0.0 → 2.0.1-beta

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 (405) hide show
  1. package/README.md +108 -116
  2. package/dist/ACTPClient.d.ts +33 -456
  3. package/dist/ACTPClient.d.ts.map +1 -1
  4. package/dist/ACTPClient.js +93 -477
  5. package/dist/ACTPClient.js.map +1 -1
  6. package/dist/abi/EscrowVault.json +38 -106
  7. package/dist/builders/DeliveryProofBuilder.d.ts +1 -60
  8. package/dist/builders/DeliveryProofBuilder.d.ts.map +1 -1
  9. package/dist/builders/DeliveryProofBuilder.js +5 -81
  10. package/dist/builders/DeliveryProofBuilder.js.map +1 -1
  11. package/dist/builders/QuoteBuilder.d.ts +0 -101
  12. package/dist/builders/QuoteBuilder.d.ts.map +1 -1
  13. package/dist/builders/QuoteBuilder.js +3 -120
  14. package/dist/builders/QuoteBuilder.js.map +1 -1
  15. package/dist/builders/index.d.ts +0 -4
  16. package/dist/builders/index.d.ts.map +1 -1
  17. package/dist/builders/index.js +0 -4
  18. package/dist/builders/index.js.map +1 -1
  19. package/dist/config/networks.d.ts +0 -28
  20. package/dist/config/networks.d.ts.map +1 -1
  21. package/dist/config/networks.js +12 -60
  22. package/dist/config/networks.js.map +1 -1
  23. package/dist/errors/index.d.ts +2 -165
  24. package/dist/errors/index.d.ts.map +1 -1
  25. package/dist/errors/index.js +2 -260
  26. package/dist/errors/index.js.map +1 -1
  27. package/dist/index.d.ts +13 -61
  28. package/dist/index.d.ts.map +1 -1
  29. package/dist/index.js +36 -141
  30. package/dist/index.js.map +1 -1
  31. package/dist/protocol/ACTPKernel.d.ts +2 -229
  32. package/dist/protocol/ACTPKernel.d.ts.map +1 -1
  33. package/dist/protocol/ACTPKernel.js +33 -367
  34. package/dist/protocol/ACTPKernel.js.map +1 -1
  35. package/dist/protocol/EASHelper.d.ts +2 -57
  36. package/dist/protocol/EASHelper.d.ts.map +1 -1
  37. package/dist/protocol/EASHelper.js +37 -230
  38. package/dist/protocol/EASHelper.js.map +1 -1
  39. package/dist/protocol/EscrowVault.d.ts +2 -93
  40. package/dist/protocol/EscrowVault.d.ts.map +1 -1
  41. package/dist/protocol/EscrowVault.js +33 -122
  42. package/dist/protocol/EscrowVault.js.map +1 -1
  43. package/dist/protocol/EventMonitor.d.ts +1 -45
  44. package/dist/protocol/EventMonitor.d.ts.map +1 -1
  45. package/dist/protocol/EventMonitor.js +8 -64
  46. package/dist/protocol/EventMonitor.js.map +1 -1
  47. package/dist/protocol/MessageSigner.d.ts +2 -116
  48. package/dist/protocol/MessageSigner.d.ts.map +1 -1
  49. package/dist/protocol/MessageSigner.js +9 -215
  50. package/dist/protocol/MessageSigner.js.map +1 -1
  51. package/dist/protocol/ProofGenerator.d.ts +0 -93
  52. package/dist/protocol/ProofGenerator.d.ts.map +1 -1
  53. package/dist/protocol/ProofGenerator.js +9 -194
  54. package/dist/protocol/ProofGenerator.js.map +1 -1
  55. package/dist/protocol/QuoteBuilder.d.ts +0 -8
  56. package/dist/protocol/QuoteBuilder.d.ts.map +1 -1
  57. package/dist/protocol/QuoteBuilder.js +0 -8
  58. package/dist/protocol/QuoteBuilder.js.map +1 -1
  59. package/dist/types/eip712.d.ts +0 -34
  60. package/dist/types/eip712.d.ts.map +1 -1
  61. package/dist/types/eip712.js +5 -31
  62. package/dist/types/eip712.js.map +1 -1
  63. package/dist/types/escrow.d.ts +10 -17
  64. package/dist/types/escrow.d.ts.map +1 -1
  65. package/dist/types/index.d.ts +0 -5
  66. package/dist/types/index.d.ts.map +1 -1
  67. package/dist/types/index.js +0 -8
  68. package/dist/types/index.js.map +1 -1
  69. package/dist/types/message.d.ts +0 -32
  70. package/dist/types/message.d.ts.map +1 -1
  71. package/dist/types/message.js +0 -4
  72. package/dist/types/message.js.map +1 -1
  73. package/dist/types/state.d.ts +0 -28
  74. package/dist/types/state.d.ts.map +1 -1
  75. package/dist/types/state.js +6 -37
  76. package/dist/types/state.js.map +1 -1
  77. package/dist/types/transaction.d.ts +0 -17
  78. package/dist/types/transaction.d.ts.map +1 -1
  79. package/dist/utils/IPFSClient.d.ts +0 -113
  80. package/dist/utils/IPFSClient.d.ts.map +1 -1
  81. package/dist/utils/IPFSClient.js +7 -128
  82. package/dist/utils/IPFSClient.js.map +1 -1
  83. package/dist/utils/NonceManager.d.ts +1 -234
  84. package/dist/utils/NonceManager.d.ts.map +1 -1
  85. package/dist/utils/NonceManager.js +7 -372
  86. package/dist/utils/NonceManager.js.map +1 -1
  87. package/dist/utils/ReceivedNonceTracker.d.ts +0 -175
  88. package/dist/utils/ReceivedNonceTracker.d.ts.map +1 -1
  89. package/dist/utils/ReceivedNonceTracker.js +5 -261
  90. package/dist/utils/ReceivedNonceTracker.js.map +1 -1
  91. package/dist/utils/canonicalJson.d.ts +0 -22
  92. package/dist/utils/canonicalJson.d.ts.map +1 -1
  93. package/dist/utils/canonicalJson.js +3 -26
  94. package/dist/utils/canonicalJson.js.map +1 -1
  95. package/dist/utils/computeTypeHash.d.ts +0 -14
  96. package/dist/utils/computeTypeHash.d.ts.map +1 -1
  97. package/dist/utils/computeTypeHash.js +2 -19
  98. package/dist/utils/computeTypeHash.js.map +1 -1
  99. package/dist/utils/validation.d.ts +0 -40
  100. package/dist/utils/validation.d.ts.map +1 -1
  101. package/dist/utils/validation.js +7 -184
  102. package/dist/utils/validation.js.map +1 -1
  103. package/package.json +37 -54
  104. package/src/ACTPClient.ts +178 -692
  105. package/src/__tests__/ProofGenerator.test.ts +124 -0
  106. package/src/__tests__/QuoteBuilder.test.ts +516 -0
  107. package/src/__tests__/StateMachine.test.ts +82 -0
  108. package/src/__tests__/builders/DeliveryProofBuilder.test.ts +581 -0
  109. package/src/__tests__/integration/ACTPClient.test.ts +263 -0
  110. package/src/__tests__/integration.test.ts +289 -0
  111. package/src/__tests__/protocol/EASHelper.test.ts +472 -0
  112. package/src/__tests__/protocol/EventMonitor.test.ts +382 -0
  113. package/src/__tests__/security/ACTPKernel.security.test.ts +1167 -0
  114. package/src/__tests__/security/EscrowVault.security.test.ts +570 -0
  115. package/src/__tests__/security/MessageSigner.security.test.ts +286 -0
  116. package/src/__tests__/security/NonceReplay.security.test.ts +501 -0
  117. package/src/__tests__/security/validation.security.test.ts +376 -0
  118. package/src/__tests__/utils/IPFSClient.test.ts +262 -0
  119. package/src/__tests__/utils/NonceManager.test.ts +205 -0
  120. package/src/__tests__/utils/canonicalJson.test.ts +153 -0
  121. package/src/abi/EscrowVault.json +38 -106
  122. package/src/builders/DeliveryProofBuilder.ts +2 -3
  123. package/src/config/networks.ts +9 -32
  124. package/src/errors/index.ts +1 -298
  125. package/src/index.ts +71 -207
  126. package/src/protocol/ACTPKernel.ts +23 -175
  127. package/src/protocol/EASHelper.ts +46 -230
  128. package/src/protocol/EscrowVault.ts +50 -68
  129. package/src/protocol/EventMonitor.ts +15 -44
  130. package/src/protocol/MessageSigner.ts +13 -193
  131. package/src/protocol/ProofGenerator.ts +4 -223
  132. package/src/types/escrow.ts +11 -12
  133. package/src/types/index.ts +1 -5
  134. package/src/types/state.ts +3 -12
  135. package/src/types/transaction.ts +1 -4
  136. package/src/utils/IPFSClient.ts +5 -122
  137. package/src/utils/NonceManager.ts +8 -305
  138. package/src/utils/ReceivedNonceTracker.ts +0 -170
  139. package/src/utils/validation.ts +0 -164
  140. package/LICENSE +0 -190
  141. package/bin/actp +0 -10
  142. package/dist/abi/AgentRegistry.json +0 -782
  143. package/dist/abi/IdentityRegistry.json +0 -316
  144. package/dist/adapters/BaseAdapter.d.ts +0 -231
  145. package/dist/adapters/BaseAdapter.d.ts.map +0 -1
  146. package/dist/adapters/BaseAdapter.js +0 -393
  147. package/dist/adapters/BaseAdapter.js.map +0 -1
  148. package/dist/adapters/BeginnerAdapter.d.ts +0 -152
  149. package/dist/adapters/BeginnerAdapter.d.ts.map +0 -1
  150. package/dist/adapters/BeginnerAdapter.js +0 -168
  151. package/dist/adapters/BeginnerAdapter.js.map +0 -1
  152. package/dist/adapters/IntermediateAdapter.d.ts +0 -211
  153. package/dist/adapters/IntermediateAdapter.d.ts.map +0 -1
  154. package/dist/adapters/IntermediateAdapter.js +0 -260
  155. package/dist/adapters/IntermediateAdapter.js.map +0 -1
  156. package/dist/adapters/index.d.ts +0 -15
  157. package/dist/adapters/index.d.ts.map +0 -1
  158. package/dist/adapters/index.js +0 -26
  159. package/dist/adapters/index.js.map +0 -1
  160. package/dist/cli/commands/balance.d.ts +0 -13
  161. package/dist/cli/commands/balance.d.ts.map +0 -1
  162. package/dist/cli/commands/balance.js +0 -89
  163. package/dist/cli/commands/balance.js.map +0 -1
  164. package/dist/cli/commands/batch.d.ts +0 -24
  165. package/dist/cli/commands/batch.d.ts.map +0 -1
  166. package/dist/cli/commands/batch.js +0 -424
  167. package/dist/cli/commands/batch.js.map +0 -1
  168. package/dist/cli/commands/config.d.ts +0 -13
  169. package/dist/cli/commands/config.d.ts.map +0 -1
  170. package/dist/cli/commands/config.js +0 -192
  171. package/dist/cli/commands/config.js.map +0 -1
  172. package/dist/cli/commands/init.d.ts +0 -19
  173. package/dist/cli/commands/init.d.ts.map +0 -1
  174. package/dist/cli/commands/init.js +0 -143
  175. package/dist/cli/commands/init.js.map +0 -1
  176. package/dist/cli/commands/mint.d.ts +0 -13
  177. package/dist/cli/commands/mint.d.ts.map +0 -1
  178. package/dist/cli/commands/mint.js +0 -91
  179. package/dist/cli/commands/mint.js.map +0 -1
  180. package/dist/cli/commands/pay.d.ts +0 -18
  181. package/dist/cli/commands/pay.d.ts.map +0 -1
  182. package/dist/cli/commands/pay.js +0 -87
  183. package/dist/cli/commands/pay.js.map +0 -1
  184. package/dist/cli/commands/simulate.d.ts +0 -32
  185. package/dist/cli/commands/simulate.d.ts.map +0 -1
  186. package/dist/cli/commands/simulate.js +0 -290
  187. package/dist/cli/commands/simulate.js.map +0 -1
  188. package/dist/cli/commands/time.d.ts +0 -29
  189. package/dist/cli/commands/time.d.ts.map +0 -1
  190. package/dist/cli/commands/time.js +0 -252
  191. package/dist/cli/commands/time.js.map +0 -1
  192. package/dist/cli/commands/tx.d.ts +0 -16
  193. package/dist/cli/commands/tx.d.ts.map +0 -1
  194. package/dist/cli/commands/tx.js +0 -379
  195. package/dist/cli/commands/tx.js.map +0 -1
  196. package/dist/cli/commands/watch.d.ts +0 -20
  197. package/dist/cli/commands/watch.d.ts.map +0 -1
  198. package/dist/cli/commands/watch.js +0 -160
  199. package/dist/cli/commands/watch.js.map +0 -1
  200. package/dist/cli/index.d.ts +0 -17
  201. package/dist/cli/index.d.ts.map +0 -1
  202. package/dist/cli/index.js +0 -104
  203. package/dist/cli/index.js.map +0 -1
  204. package/dist/cli/utils/client.d.ts +0 -70
  205. package/dist/cli/utils/client.d.ts.map +0 -1
  206. package/dist/cli/utils/client.js +0 -240
  207. package/dist/cli/utils/client.js.map +0 -1
  208. package/dist/cli/utils/config.d.ts +0 -91
  209. package/dist/cli/utils/config.d.ts.map +0 -1
  210. package/dist/cli/utils/config.js +0 -240
  211. package/dist/cli/utils/config.js.map +0 -1
  212. package/dist/cli/utils/output.d.ts +0 -174
  213. package/dist/cli/utils/output.d.ts.map +0 -1
  214. package/dist/cli/utils/output.js +0 -380
  215. package/dist/cli/utils/output.js.map +0 -1
  216. package/dist/level0/Provider.d.ts +0 -106
  217. package/dist/level0/Provider.d.ts.map +0 -1
  218. package/dist/level0/Provider.js +0 -10
  219. package/dist/level0/Provider.js.map +0 -1
  220. package/dist/level0/ServiceDirectory.d.ts +0 -74
  221. package/dist/level0/ServiceDirectory.d.ts.map +0 -1
  222. package/dist/level0/ServiceDirectory.js +0 -122
  223. package/dist/level0/ServiceDirectory.js.map +0 -1
  224. package/dist/level0/index.d.ts +0 -10
  225. package/dist/level0/index.d.ts.map +0 -1
  226. package/dist/level0/index.js +0 -15
  227. package/dist/level0/index.js.map +0 -1
  228. package/dist/level0/provide.d.ts +0 -51
  229. package/dist/level0/provide.d.ts.map +0 -1
  230. package/dist/level0/provide.js +0 -113
  231. package/dist/level0/provide.js.map +0 -1
  232. package/dist/level0/request.d.ts +0 -53
  233. package/dist/level0/request.d.ts.map +0 -1
  234. package/dist/level0/request.js +0 -462
  235. package/dist/level0/request.js.map +0 -1
  236. package/dist/level1/Agent.d.ts +0 -472
  237. package/dist/level1/Agent.d.ts.map +0 -1
  238. package/dist/level1/Agent.js +0 -1091
  239. package/dist/level1/Agent.js.map +0 -1
  240. package/dist/level1/index.d.ts +0 -10
  241. package/dist/level1/index.d.ts.map +0 -1
  242. package/dist/level1/index.js +0 -30
  243. package/dist/level1/index.js.map +0 -1
  244. package/dist/level1/pricing/PriceCalculator.d.ts +0 -62
  245. package/dist/level1/pricing/PriceCalculator.d.ts.map +0 -1
  246. package/dist/level1/pricing/PriceCalculator.js +0 -237
  247. package/dist/level1/pricing/PriceCalculator.js.map +0 -1
  248. package/dist/level1/pricing/PricingStrategy.d.ts +0 -179
  249. package/dist/level1/pricing/PricingStrategy.d.ts.map +0 -1
  250. package/dist/level1/pricing/PricingStrategy.js +0 -11
  251. package/dist/level1/pricing/PricingStrategy.js.map +0 -1
  252. package/dist/level1/types/Job.d.ts +0 -166
  253. package/dist/level1/types/Job.d.ts.map +0 -1
  254. package/dist/level1/types/Job.js +0 -11
  255. package/dist/level1/types/Job.js.map +0 -1
  256. package/dist/level1/types/Options.d.ts +0 -258
  257. package/dist/level1/types/Options.d.ts.map +0 -1
  258. package/dist/level1/types/Options.js +0 -8
  259. package/dist/level1/types/Options.js.map +0 -1
  260. package/dist/level1/types/index.d.ts +0 -8
  261. package/dist/level1/types/index.d.ts.map +0 -1
  262. package/dist/level1/types/index.js +0 -8
  263. package/dist/level1/types/index.js.map +0 -1
  264. package/dist/protocol/AgentRegistry.d.ts +0 -177
  265. package/dist/protocol/AgentRegistry.d.ts.map +0 -1
  266. package/dist/protocol/AgentRegistry.js +0 -449
  267. package/dist/protocol/AgentRegistry.js.map +0 -1
  268. package/dist/protocol/DIDManager.d.ts +0 -289
  269. package/dist/protocol/DIDManager.d.ts.map +0 -1
  270. package/dist/protocol/DIDManager.js +0 -481
  271. package/dist/protocol/DIDManager.js.map +0 -1
  272. package/dist/protocol/DIDResolver.d.ts +0 -236
  273. package/dist/protocol/DIDResolver.d.ts.map +0 -1
  274. package/dist/protocol/DIDResolver.js +0 -495
  275. package/dist/protocol/DIDResolver.js.map +0 -1
  276. package/dist/runtime/BlockchainRuntime.d.ts +0 -360
  277. package/dist/runtime/BlockchainRuntime.d.ts.map +0 -1
  278. package/dist/runtime/BlockchainRuntime.js +0 -767
  279. package/dist/runtime/BlockchainRuntime.js.map +0 -1
  280. package/dist/runtime/IACTPRuntime.d.ts +0 -271
  281. package/dist/runtime/IACTPRuntime.d.ts.map +0 -1
  282. package/dist/runtime/IACTPRuntime.js +0 -15
  283. package/dist/runtime/IACTPRuntime.js.map +0 -1
  284. package/dist/runtime/MockRuntime.d.ts +0 -445
  285. package/dist/runtime/MockRuntime.d.ts.map +0 -1
  286. package/dist/runtime/MockRuntime.js +0 -1065
  287. package/dist/runtime/MockRuntime.js.map +0 -1
  288. package/dist/runtime/MockStateManager.d.ts +0 -233
  289. package/dist/runtime/MockStateManager.d.ts.map +0 -1
  290. package/dist/runtime/MockStateManager.js +0 -533
  291. package/dist/runtime/MockStateManager.js.map +0 -1
  292. package/dist/runtime/index.d.ts +0 -14
  293. package/dist/runtime/index.d.ts.map +0 -1
  294. package/dist/runtime/index.js +0 -42
  295. package/dist/runtime/index.js.map +0 -1
  296. package/dist/runtime/types/MockState.d.ts +0 -167
  297. package/dist/runtime/types/MockState.d.ts.map +0 -1
  298. package/dist/runtime/types/MockState.js +0 -43
  299. package/dist/runtime/types/MockState.js.map +0 -1
  300. package/dist/types/agent.d.ts +0 -76
  301. package/dist/types/agent.d.ts.map +0 -1
  302. package/dist/types/agent.js +0 -8
  303. package/dist/types/agent.js.map +0 -1
  304. package/dist/types/did.d.ts +0 -192
  305. package/dist/types/did.d.ts.map +0 -1
  306. package/dist/types/did.js +0 -38
  307. package/dist/types/did.js.map +0 -1
  308. package/dist/utils/ErrorRecoveryGuide.d.ts +0 -125
  309. package/dist/utils/ErrorRecoveryGuide.d.ts.map +0 -1
  310. package/dist/utils/ErrorRecoveryGuide.js +0 -579
  311. package/dist/utils/ErrorRecoveryGuide.js.map +0 -1
  312. package/dist/utils/Helpers.d.ts +0 -453
  313. package/dist/utils/Helpers.d.ts.map +0 -1
  314. package/dist/utils/Helpers.js +0 -623
  315. package/dist/utils/Helpers.js.map +0 -1
  316. package/dist/utils/Logger.d.ts +0 -195
  317. package/dist/utils/Logger.d.ts.map +0 -1
  318. package/dist/utils/Logger.js +0 -382
  319. package/dist/utils/Logger.js.map +0 -1
  320. package/dist/utils/RateLimiter.d.ts +0 -253
  321. package/dist/utils/RateLimiter.d.ts.map +0 -1
  322. package/dist/utils/RateLimiter.js +0 -424
  323. package/dist/utils/RateLimiter.js.map +0 -1
  324. package/dist/utils/SDKLifecycle.d.ts +0 -156
  325. package/dist/utils/SDKLifecycle.d.ts.map +0 -1
  326. package/dist/utils/SDKLifecycle.js +0 -347
  327. package/dist/utils/SDKLifecycle.js.map +0 -1
  328. package/dist/utils/SecureNonce.d.ts +0 -57
  329. package/dist/utils/SecureNonce.d.ts.map +0 -1
  330. package/dist/utils/SecureNonce.js +0 -80
  331. package/dist/utils/SecureNonce.js.map +0 -1
  332. package/dist/utils/Semaphore.d.ts +0 -123
  333. package/dist/utils/Semaphore.d.ts.map +0 -1
  334. package/dist/utils/Semaphore.js +0 -247
  335. package/dist/utils/Semaphore.js.map +0 -1
  336. package/dist/utils/UsedAttestationTracker.d.ts +0 -167
  337. package/dist/utils/UsedAttestationTracker.d.ts.map +0 -1
  338. package/dist/utils/UsedAttestationTracker.js +0 -309
  339. package/dist/utils/UsedAttestationTracker.js.map +0 -1
  340. package/dist/utils/fsSafe.d.ts +0 -14
  341. package/dist/utils/fsSafe.d.ts.map +0 -1
  342. package/dist/utils/fsSafe.js +0 -89
  343. package/dist/utils/fsSafe.js.map +0 -1
  344. package/dist/utils/index.d.ts +0 -15
  345. package/dist/utils/index.d.ts.map +0 -1
  346. package/dist/utils/index.js +0 -51
  347. package/dist/utils/index.js.map +0 -1
  348. package/dist/utils/security.d.ts +0 -147
  349. package/dist/utils/security.d.ts.map +0 -1
  350. package/dist/utils/security.js +0 -391
  351. package/dist/utils/security.js.map +0 -1
  352. package/src/abi/AgentRegistry.json +0 -782
  353. package/src/abi/IdentityRegistry.json +0 -316
  354. package/src/adapters/BaseAdapter.ts +0 -473
  355. package/src/adapters/BeginnerAdapter.ts +0 -232
  356. package/src/adapters/IntermediateAdapter.ts +0 -316
  357. package/src/adapters/index.ts +0 -25
  358. package/src/cli/commands/balance.ts +0 -110
  359. package/src/cli/commands/batch.ts +0 -487
  360. package/src/cli/commands/config.ts +0 -231
  361. package/src/cli/commands/init.ts +0 -161
  362. package/src/cli/commands/mint.ts +0 -116
  363. package/src/cli/commands/pay.ts +0 -113
  364. package/src/cli/commands/simulate.ts +0 -345
  365. package/src/cli/commands/time.ts +0 -303
  366. package/src/cli/commands/tx.ts +0 -448
  367. package/src/cli/commands/watch.ts +0 -211
  368. package/src/cli/index.ts +0 -116
  369. package/src/cli/utils/client.ts +0 -249
  370. package/src/cli/utils/config.ts +0 -282
  371. package/src/cli/utils/output.ts +0 -465
  372. package/src/level0/Provider.ts +0 -117
  373. package/src/level0/ServiceDirectory.ts +0 -131
  374. package/src/level0/index.ts +0 -10
  375. package/src/level0/provide.ts +0 -131
  376. package/src/level0/request.ts +0 -494
  377. package/src/level1/Agent.ts +0 -1432
  378. package/src/level1/index.ts +0 -10
  379. package/src/level1/pricing/PriceCalculator.ts +0 -255
  380. package/src/level1/pricing/PricingStrategy.ts +0 -198
  381. package/src/level1/types/Job.ts +0 -179
  382. package/src/level1/types/Options.ts +0 -291
  383. package/src/level1/types/index.ts +0 -8
  384. package/src/protocol/AgentRegistry.ts +0 -559
  385. package/src/protocol/DIDManager.ts +0 -629
  386. package/src/protocol/DIDResolver.ts +0 -554
  387. package/src/runtime/BlockchainRuntime.ts +0 -993
  388. package/src/runtime/IACTPRuntime.ts +0 -284
  389. package/src/runtime/MockRuntime.ts +0 -1244
  390. package/src/runtime/MockStateManager.ts +0 -576
  391. package/src/runtime/index.ts +0 -25
  392. package/src/runtime/types/MockState.ts +0 -227
  393. package/src/types/agent.ts +0 -79
  394. package/src/types/did.ts +0 -223
  395. package/src/utils/ErrorRecoveryGuide.ts +0 -675
  396. package/src/utils/Helpers.ts +0 -688
  397. package/src/utils/Logger.ts +0 -484
  398. package/src/utils/RateLimiter.ts +0 -534
  399. package/src/utils/SDKLifecycle.ts +0 -416
  400. package/src/utils/SecureNonce.ts +0 -78
  401. package/src/utils/Semaphore.ts +0 -276
  402. package/src/utils/UsedAttestationTracker.ts +0 -387
  403. package/src/utils/fsSafe.ts +0 -75
  404. package/src/utils/index.ts +0 -80
  405. package/src/utils/security.ts +0 -418
@@ -1 +1 @@
1
- {"version":3,"file":"ACTPKernel.js","sourceRoot":"","sources":["../../src/protocol/ACTPKernel.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ACTPKernel.js","sourceRoot":"","sources":["../../src/protocol/ACTPKernel.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,5 @@
1
1
  import { Signer } from 'ethers';
2
2
  import { DeliveryProof } from '../types';
3
- import { IUsedAttestationTracker } from '../utils/UsedAttestationTracker';
4
3
  export interface EASConfig {
5
4
  contractAddress: string;
6
5
  deliveryProofSchemaId: string;
@@ -9,70 +8,16 @@ export interface AttestationResponse {
9
8
  uid: string;
10
9
  transactionHash: string;
11
10
  }
12
- /**
13
- * EASHelper - utility wrapper for Ethereum Attestation Service interactions
14
- */
15
11
  export declare class EASHelper {
16
12
  private readonly config;
17
13
  private readonly eas;
18
- private readonly attestationTracker;
19
- /**
20
- * Create EASHelper instance
21
- *
22
- * @param signer - Ethers signer for signing attestations
23
- * @param config - EAS configuration
24
- * @param attestationTracker - Optional tracker for replay attack prevention (C-1 fix)
25
- *
26
- * SECURITY FIX (NEW-M-2): Validates schema UID format in constructor
27
- */
28
- constructor(signer: Signer, config: EASConfig, attestationTracker?: IUsedAttestationTracker);
29
- /**
30
- * Get the attestation tracker for external use
31
- */
32
- getAttestationTracker(): IUsedAttestationTracker;
33
- /**
34
- * Create an attestation for a delivery proof. Returns the attestation UID and transaction hash.
35
- */
14
+ constructor(signer: Signer, config: EASConfig);
36
15
  attestDeliveryProof(proof: DeliveryProof, recipient: string, options?: {
37
16
  expirationTime?: number;
38
17
  revocable?: boolean;
39
18
  }): Promise<AttestationResponse>;
40
- /**
41
- * Revoke a previously issued attestation by UID.
42
- */
43
19
  revokeAttestation(uid: string): Promise<string>;
44
- /**
45
- * Fetch attestation data from the EAS contract.
46
- */
47
- getAttestation(uid: string): Promise<import("@ethereum-attestation-service/eas-sdk").Attestation>;
48
- /**
49
- * Verify that a delivery attestation belongs to the specified transaction.
50
- *
51
- * SECURITY: ACTPKernel V1 accepts any bytes32 as attestationUID without validation.
52
- * This means a malicious provider could submit attestation from Transaction A
53
- * for Transaction B. This method provides SDK-side protection by verifying:
54
- *
55
- * 1. Attestation exists and is not revoked
56
- * 2. Attestation uses the canonical delivery schema UID
57
- * 3. Attestation's txId matches the expected transaction ID
58
- * 4. Attestation has not expired
59
- *
60
- * @param txId - Expected transaction ID (bytes32)
61
- * @param attestationUID - Attestation UID to verify (bytes32)
62
- * @returns true if attestation is valid for this transaction, false otherwise
63
- * @throws Error if attestation is revoked, expired, schema mismatch, or txId mismatch
64
- */
20
+ getAttestation(uid: string): Promise<any>;
65
21
  verifyDeliveryAttestation(txId: string, attestationUID: string): Promise<boolean>;
66
- /**
67
- * Verify attestation for escrow release with mandatory replay protection
68
- *
69
- * SECURITY FIX (C-4): This method MUST be called before releaseEscrow()
70
- * to prevent attestation replay attacks.
71
- *
72
- * @param txId - Expected transaction ID (bytes32)
73
- * @param attestationUID - Attestation UID to verify (bytes32)
74
- * @throws Error if verification fails or replay attack detected
75
- */
76
- verifyAndRecordForRelease(txId: string, attestationUID: string): Promise<void>;
77
22
  }
78
23
  //# sourceMappingURL=EASHelper.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"EASHelper.d.ts","sourceRoot":"","sources":["../../src/protocol/EASHelper.ts"],"names":[],"mappings":"AAAA,OAAO,EAAY,MAAM,EAAE,MAAM,QAAQ,CAAC;AAE1C,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AAEzC,OAAO,EACL,uBAAuB,EAExB,MAAM,iCAAiC,CAAC;AAEzC,MAAM,WAAW,SAAS;IACxB,eAAe,EAAE,MAAM,CAAC;IACxB,qBAAqB,EAAE,MAAM,CAAC;CAC/B;AAED,MAAM,WAAW,mBAAmB;IAClC,GAAG,EAAE,MAAM,CAAC;IACZ,eAAe,EAAE,MAAM,CAAC;CACzB;AAED;;GAEG;AACH,qBAAa,SAAS;IAelB,OAAO,CAAC,QAAQ,CAAC,MAAM;IAdzB,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAM;IAC1B,OAAO,CAAC,QAAQ,CAAC,kBAAkB,CAA0B;IAE7D;;;;;;;;OAQG;gBAED,MAAM,EAAE,MAAM,EACG,MAAM,EAAE,SAAS,EAClC,kBAAkB,CAAC,EAAE,uBAAuB;IAsC9C;;OAEG;IACH,qBAAqB,IAAI,uBAAuB;IAIhD;;OAEG;IACG,mBAAmB,CACvB,KAAK,EAAE,aAAa,EACpB,SAAS,EAAE,MAAM,EACjB,OAAO,CAAC,EAAE;QAAE,cAAc,CAAC,EAAE,MAAM,CAAC;QAAC,SAAS,CAAC,EAAE,OAAO,CAAA;KAAE,GACzD,OAAO,CAAC,mBAAmB,CAAC;IA4C/B;;OAEG;IACG,iBAAiB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAYrD;;OAEG;IACG,cAAc,CAAC,GAAG,EAAE,MAAM;IAOhC;;;;;;;;;;;;;;;;OAgBG;IACG,yBAAyB,CAC7B,IAAI,EAAE,MAAM,EACZ,cAAc,EAAE,MAAM,GACrB,OAAO,CAAC,OAAO,CAAC;IAwLnB;;;;;;;;;OASG;IACG,yBAAyB,CAC7B,IAAI,EAAE,MAAM,EACZ,cAAc,EAAE,MAAM,GACrB,OAAO,CAAC,IAAI,CAAC;CAIjB"}
1
+ {"version":3,"file":"EASHelper.d.ts","sourceRoot":"","sources":["../../src/protocol/EASHelper.ts"],"names":[],"mappings":"AAAA,OAAO,EAAY,MAAM,EAA0B,MAAM,QAAQ,CAAC;AAClE,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AAGzC,MAAM,WAAW,SAAS;IACxB,eAAe,EAAE,MAAM,CAAC;IACxB,qBAAqB,EAAE,MAAM,CAAC;CAC/B;AAED,MAAM,WAAW,mBAAmB;IAClC,GAAG,EAAE,MAAM,CAAC;IACZ,eAAe,EAAE,MAAM,CAAC;CACzB;AAYD,qBAAa,SAAS;IAGQ,OAAO,CAAC,QAAQ,CAAC,MAAM;IAFnD,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAW;gBAEnB,MAAM,EAAE,MAAM,EAAmB,MAAM,EAAE,SAAS;IAOxD,mBAAmB,CACvB,KAAK,EAAE,aAAa,EACpB,SAAS,EAAE,MAAM,EACjB,OAAO,CAAC,EAAE;QAAE,cAAc,CAAC,EAAE,MAAM,CAAC;QAAC,SAAS,CAAC,EAAE,OAAO,CAAA;KAAE,GACzD,OAAO,CAAC,mBAAmB,CAAC;IAoDzB,iBAAiB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAY/C,cAAc,CAAC,GAAG,EAAE,MAAM;IAqB1B,yBAAyB,CAC7B,IAAI,EAAE,MAAM,EACZ,cAAc,EAAE,MAAM,GACrB,OAAO,CAAC,OAAO,CAAC;CAsEpB"}
@@ -2,62 +2,18 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.EASHelper = void 0;
4
4
  const ethers_1 = require("ethers");
5
- const eas_sdk_1 = require("@ethereum-attestation-service/eas-sdk");
6
5
  const eip712_1 = require("../types/eip712");
7
- const UsedAttestationTracker_1 = require("../utils/UsedAttestationTracker");
8
- /**
9
- * EASHelper - utility wrapper for Ethereum Attestation Service interactions
10
- */
6
+ const EAS_ABI = [
7
+ 'event Attested(address indexed attester, bytes32 indexed uid, bytes32 indexed schema)',
8
+ 'function attest(tuple(bytes32 schema, tuple(address recipient, uint64 expirationTime, bool revocable, bytes32 refUID, bytes data) data) request) external returns (bytes32)',
9
+ 'function revoke(tuple(bytes32 schema, bytes32 uid) request) external returns (bytes32)',
10
+ 'function getAttestation(bytes32 uid) external view returns (tuple(bytes32 uid, bytes32 schema, address recipient, address attester, uint64 time, uint64 expirationTime, bool revocable, bytes32 refUID, bytes data, uint32 bump))'
11
+ ];
11
12
  class EASHelper {
12
- /**
13
- * Create EASHelper instance
14
- *
15
- * @param signer - Ethers signer for signing attestations
16
- * @param config - EAS configuration
17
- * @param attestationTracker - Optional tracker for replay attack prevention (C-1 fix)
18
- *
19
- * SECURITY FIX (NEW-M-2): Validates schema UID format in constructor
20
- */
21
- constructor(signer, config, attestationTracker) {
13
+ constructor(signer, config) {
22
14
  this.config = config;
23
- // SECURITY FIX (NEW-M-2): Validate schema UID format
24
- if (!config.deliveryProofSchemaId || !/^0x[a-fA-F0-9]{64}$/.test(config.deliveryProofSchemaId)) {
25
- throw new Error(`Invalid deliveryProofSchemaId: must be bytes32 hex string (0x...). ` +
26
- `Got: ${config.deliveryProofSchemaId}`);
27
- }
28
- if (config.deliveryProofSchemaId === '0x0000000000000000000000000000000000000000000000000000000000000000') {
29
- throw new Error('deliveryProofSchemaId cannot be zero bytes32');
30
- }
31
- // Use official EAS SDK wrapper to ensure ABI correctness across deployments
32
- // (includes fields like revocationTime that are required for security checks).
33
- this.eas = new eas_sdk_1.EAS(config.contractAddress);
34
- this.eas.connect(signer);
35
- // SECURITY FIX (C-1): Use provided tracker or create new in-memory one
36
- if (!attestationTracker) {
37
- // SECURITY WARNING (HIGH-5): In-memory tracker does not persist across restarts!
38
- // For production use, provide a FileBasedUsedAttestationTracker with a stateDirectory:
39
- //
40
- // import { FileBasedUsedAttestationTracker } from '../utils/UsedAttestationTracker';
41
- // const tracker = new FileBasedUsedAttestationTracker('/path/to/state');
42
- // const easHelper = new EASHelper(signer, config, tracker);
43
- //
44
- // Without persistence, attestation replay protection is lost on process restart,
45
- // allowing potential double-spend attacks.
46
- console.warn('[SECURITY WARNING] EASHelper: Using in-memory attestation tracker. ' +
47
- 'Replay protection will be lost on process restart. ' +
48
- 'For production, provide FileBasedUsedAttestationTracker for persistence.');
49
- }
50
- this.attestationTracker = attestationTracker || new UsedAttestationTracker_1.InMemoryUsedAttestationTracker();
15
+ this.eas = new ethers_1.Contract(config.contractAddress, EAS_ABI, signer);
51
16
  }
52
- /**
53
- * Get the attestation tracker for external use
54
- */
55
- getAttestationTracker() {
56
- return this.attestationTracker;
57
- }
58
- /**
59
- * Create an attestation for a delivery proof. Returns the attestation UID and transaction hash.
60
- */
61
17
  async attestDeliveryProof(proof, recipient, options) {
62
18
  const { expirationTime = 0, revocable = true } = options || {};
63
19
  const proofData = (0, eip712_1.deliveryProofDataFromProof)(proof);
@@ -74,226 +30,77 @@ class EASHelper {
74
30
  schema: this.config.deliveryProofSchemaId,
75
31
  data: {
76
32
  recipient,
77
- expirationTime: BigInt(expirationTime),
33
+ expirationTime,
78
34
  revocable,
79
35
  refUID: proof.txId,
80
- data: encodedData,
81
- // For Base EAS, value is typically 0. Keep explicit to avoid ambiguity.
82
- value: 0n
36
+ data: encodedData
83
37
  }
84
38
  });
85
- const uid = await tx.wait();
86
- if (!uid || !/^0x[a-fA-F0-9]{64}$/.test(uid)) {
87
- throw new Error(`Failed to obtain attestation UID from EAS transaction. Got: ${String(uid)}`);
88
- }
89
- if (uid === '0x0000000000000000000000000000000000000000000000000000000000000000') {
90
- throw new Error('EAS returned zero UID for attestation (unexpected).');
91
- }
39
+ const receipt = await tx.wait();
40
+ const attestedLog = receipt?.logs?.find((log) => {
41
+ try {
42
+ const parsed = this.eas.interface.parseLog(log);
43
+ return parsed?.name === 'Attested';
44
+ }
45
+ catch {
46
+ return false;
47
+ }
48
+ });
49
+ const uid = attestedLog
50
+ ? this.eas.interface.parseLog(attestedLog)?.args?.uid
51
+ : (0, ethers_1.zeroPadValue)('0x00', 32);
92
52
  return {
93
53
  uid,
94
- transactionHash: tx.tx.hash
54
+ transactionHash: receipt.transactionHash
95
55
  };
96
56
  }
97
- /**
98
- * Revoke a previously issued attestation by UID.
99
- */
100
57
  async revokeAttestation(uid) {
101
- if (!uid || !/^0x[a-fA-F0-9]{64}$/.test(uid)) {
102
- throw new Error(`Invalid attestation UID format: ${uid}`);
103
- }
104
58
  const tx = await this.eas.revoke({
105
59
  schema: this.config.deliveryProofSchemaId,
106
- data: { uid }
60
+ uid
107
61
  });
108
- await tx.wait();
109
- return tx.tx.hash;
62
+ const receipt = await tx.wait();
63
+ return receipt.transactionHash;
110
64
  }
111
- /**
112
- * Fetch attestation data from the EAS contract.
113
- */
114
65
  async getAttestation(uid) {
115
- if (!uid || !/^0x[a-fA-F0-9]{64}$/.test(uid)) {
116
- throw new Error(`Invalid attestation UID format: ${uid}`);
117
- }
118
66
  return await this.eas.getAttestation(uid);
119
67
  }
120
- /**
121
- * Verify that a delivery attestation belongs to the specified transaction.
122
- *
123
- * SECURITY: ACTPKernel V1 accepts any bytes32 as attestationUID without validation.
124
- * This means a malicious provider could submit attestation from Transaction A
125
- * for Transaction B. This method provides SDK-side protection by verifying:
126
- *
127
- * 1. Attestation exists and is not revoked
128
- * 2. Attestation uses the canonical delivery schema UID
129
- * 3. Attestation's txId matches the expected transaction ID
130
- * 4. Attestation has not expired
131
- *
132
- * @param txId - Expected transaction ID (bytes32)
133
- * @param attestationUID - Attestation UID to verify (bytes32)
134
- * @returns true if attestation is valid for this transaction, false otherwise
135
- * @throws Error if attestation is revoked, expired, schema mismatch, or txId mismatch
136
- */
137
68
  async verifyDeliveryAttestation(txId, attestationUID) {
138
- if (!txId || !/^0x[a-fA-F0-9]{64}$/.test(txId)) {
139
- throw new Error(`Invalid txId format (expected bytes32): ${txId}`);
140
- }
141
- if (!attestationUID || !/^0x[a-fA-F0-9]{64}$/.test(attestationUID)) {
142
- throw new Error(`Invalid attestationUID format (expected bytes32): ${attestationUID}`);
143
- }
144
- // 1. Fetch attestation from EAS contract
145
69
  const attestation = await this.eas.getAttestation(attestationUID);
146
- // 2. Check if attestation exists (uid should match)
147
70
  if (attestation.uid !== attestationUID) {
148
71
  throw new Error(`Attestation not found: ${attestationUID}`);
149
72
  }
150
- // 3. Check schema UID matches canonical delivery schema (B2 blocker fix)
151
- // This prevents accepting attestations from unrelated EAS schemas
152
73
  if (attestation.schema !== this.config.deliveryProofSchemaId) {
153
74
  throw new Error(`Schema UID mismatch: expected canonical delivery schema ${this.config.deliveryProofSchemaId}, ` +
154
75
  `got ${attestation.schema}. Attestation may be from a different schema!`);
155
76
  }
156
- // 4. Check revocation - EAS uses revocationTime field (not revoked boolean)
157
- // revocationTime = 0 means not revoked
158
- // revocationTime > 0 means revoked at that timestamp
159
- const revocationTime = BigInt(attestation.revocationTime ?? 0);
160
- const isRevoked = revocationTime > 0n;
77
+ const isRevoked = attestation.revocationTime > 0n;
161
78
  if (isRevoked) {
162
- throw new Error(`Attestation has been revoked: ${attestationUID} (revoked at timestamp ${revocationTime})`);
79
+ throw new Error(`Attestation has been revoked: ${attestationUID} (revoked at timestamp ${attestation.revocationTime})`);
163
80
  }
164
- // 5. Check expiration
165
- // expirationTime = 0 means no expiration
166
- // expirationTime > 0 means expires at that timestamp
167
- const expirationTime = BigInt(attestation.expirationTime ?? 0);
168
- if (expirationTime > 0n) {
81
+ if (attestation.expirationTime > 0n) {
169
82
  const now = Math.floor(Date.now() / 1000);
170
- if (Number(expirationTime) < now) {
171
- throw new Error(`Attestation has expired: ${attestationUID} (expired at ${expirationTime})`);
83
+ if (Number(attestation.expirationTime) < now) {
84
+ throw new Error(`Attestation has expired: ${attestationUID} (expired at ${attestation.expirationTime})`);
172
85
  }
173
86
  }
174
- // 6. Decode attestation data to extract txId
175
- let attestedTxId = '';
87
+ let attestedTxId;
176
88
  try {
177
89
  const abiCoder = ethers_1.AbiCoder.defaultAbiCoder();
178
- const rawData = attestation.data;
179
- // Prefer AIP-6 decoding (current DX Playground schema)
180
- // - Official AIP-6: bytes32 txId,string resultCID,bytes32 resultHash,uint256 deliveredAt
181
- // - Test schema: + uint256 testTimestamp
182
- try {
183
- const decoded = abiCoder.decode(['bytes32', 'string', 'bytes32', 'uint256', 'uint256'], rawData);
184
- attestedTxId = decoded[0];
185
- const resultCID = decoded[1];
186
- const resultHash = decoded[2];
187
- const deliveredAt = decoded[3];
188
- if (!attestedTxId || !/^0x[a-fA-F0-9]{64}$/.test(attestedTxId)) {
189
- throw new Error(`Decoded txId is not valid bytes32: ${attestedTxId}`);
190
- }
191
- if (typeof resultCID !== 'string' || resultCID.length === 0 || resultCID.length > 2048) {
192
- throw new Error(`Decoded resultCID invalid length: ${resultCID?.length}`);
193
- }
194
- if (!resultHash || !/^0x[a-fA-F0-9]{64}$/.test(resultHash)) {
195
- throw new Error(`Decoded resultHash is not valid bytes32: ${resultHash}`);
196
- }
197
- const now = BigInt(Math.floor(Date.now() / 1000));
198
- if (deliveredAt > now + 86400n) {
199
- throw new Error(`Decoded deliveredAt is in far future: ${deliveredAt.toString()}`);
200
- }
201
- }
202
- catch (_e) {
203
- // Fallback: official AIP-6 schema without testTimestamp
204
- try {
205
- const decoded = abiCoder.decode(['bytes32', 'string', 'bytes32', 'uint256'], rawData);
206
- attestedTxId = decoded[0];
207
- const resultCID = decoded[1];
208
- const resultHash = decoded[2];
209
- const deliveredAt = decoded[3];
210
- if (!attestedTxId || !/^0x[a-fA-F0-9]{64}$/.test(attestedTxId)) {
211
- throw new Error(`Decoded txId is not valid bytes32: ${attestedTxId}`);
212
- }
213
- if (typeof resultCID !== 'string' || resultCID.length === 0 || resultCID.length > 2048) {
214
- throw new Error(`Decoded resultCID invalid length: ${resultCID?.length}`);
215
- }
216
- if (!resultHash || !/^0x[a-fA-F0-9]{64}$/.test(resultHash)) {
217
- throw new Error(`Decoded resultHash is not valid bytes32: ${resultHash}`);
218
- }
219
- const now = BigInt(Math.floor(Date.now() / 1000));
220
- if (deliveredAt > now + 86400n) {
221
- throw new Error(`Decoded deliveredAt is in far future: ${deliveredAt.toString()}`);
222
- }
223
- }
224
- catch (__e) {
225
- // Final fallback: legacy AIP-4 schema
226
- // Schema: bytes32 txId, bytes32 contentHash, uint256 timestamp, string deliveryUrl, uint256 size, string mimeType
227
- const decoded = abiCoder.decode(['bytes32', 'bytes32', 'uint256', 'string', 'uint256', 'string'], rawData);
228
- attestedTxId = decoded[0];
229
- const contentHash = decoded[1];
230
- const timestamp = decoded[2];
231
- const deliveryUrl = decoded[3];
232
- const size = decoded[4];
233
- const mimeType = decoded[5];
234
- if (!attestedTxId || !/^0x[a-fA-F0-9]{64}$/.test(attestedTxId)) {
235
- throw new Error(`Decoded txId is not valid bytes32: ${attestedTxId}`);
236
- }
237
- if (!contentHash || !/^0x[a-fA-F0-9]{64}$/.test(contentHash)) {
238
- throw new Error(`Decoded contentHash is not valid bytes32: ${contentHash}`);
239
- }
240
- const now = BigInt(Math.floor(Date.now() / 1000));
241
- if (timestamp > now + 86400n) {
242
- throw new Error(`Decoded timestamp is in far future: ${timestamp.toString()}`);
243
- }
244
- if (typeof deliveryUrl !== 'string' || deliveryUrl.length > 2048) {
245
- throw new Error('Decoded deliveryUrl too long');
246
- }
247
- if (size < 0n) {
248
- throw new Error(`Decoded size is negative: ${size}`);
249
- }
250
- if (typeof mimeType !== 'string' || mimeType.length > 256) {
251
- throw new Error('Decoded mimeType too long');
252
- }
253
- }
254
- }
90
+ const decoded = abiCoder.decode(['bytes32', 'bytes32', 'uint256', 'string', 'uint256', 'string'], attestation.data);
91
+ attestedTxId = decoded[0];
255
92
  }
256
93
  catch (error) {
257
94
  throw new Error(`Attestation data format mismatch: cannot decode attestation ${attestationUID}. ` +
258
- `Expected AIP-6 (preferred) or AIP-4 (legacy) delivery proof schema format. ` +
95
+ `Expected AIP-4 delivery proof schema format. ` +
259
96
  `Original error: ${error.message}`);
260
97
  }
261
- // 7. Verify attestation txId matches expected transaction ID
262
- if (attestedTxId.toLowerCase() !== txId.toLowerCase()) {
98
+ if (attestedTxId !== txId) {
263
99
  throw new Error(`Attestation txId mismatch: expected ${txId}, got ${attestedTxId}. ` +
264
100
  `Provider may be attempting to use attestation from different transaction!`);
265
101
  }
266
- // SECURITY FIX (C-1): Check if attestation has been used for a different transaction
267
- if (!this.attestationTracker.isValidForTransaction(attestationUID, txId)) {
268
- const usedFor = this.attestationTracker.getUsageForAttestation(attestationUID);
269
- throw new Error(`Attestation replay attack detected: attestation ${attestationUID} ` +
270
- `was already used for transaction ${usedFor}. ` +
271
- `Cannot reuse for transaction ${txId}.`);
272
- }
273
- // Record this attestation as used for this transaction
274
- const recorded = await this.attestationTracker.recordUsage(attestationUID, txId);
275
- if (!recorded) {
276
- const usedFor = this.attestationTracker.getUsageForAttestation(attestationUID);
277
- throw new Error(`Attestation replay attack detected: attestation ${attestationUID} ` +
278
- `was already used for transaction ${usedFor}. Cannot reuse for ${txId}.`);
279
- }
280
- // All checks passed
281
102
  return true;
282
103
  }
283
- /**
284
- * Verify attestation for escrow release with mandatory replay protection
285
- *
286
- * SECURITY FIX (C-4): This method MUST be called before releaseEscrow()
287
- * to prevent attestation replay attacks.
288
- *
289
- * @param txId - Expected transaction ID (bytes32)
290
- * @param attestationUID - Attestation UID to verify (bytes32)
291
- * @throws Error if verification fails or replay attack detected
292
- */
293
- async verifyAndRecordForRelease(txId, attestationUID) {
294
- // Verify the attestation
295
- await this.verifyDeliveryAttestation(txId, attestationUID);
296
- }
297
104
  }
298
105
  exports.EASHelper = EASHelper;
299
106
  //# sourceMappingURL=EASHelper.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"EASHelper.js","sourceRoot":"","sources":["../../src/protocol/EASHelper.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"EASHelper.js","sourceRoot":"","sources":["../../src/protocol/EASHelper.ts"],"names":[],"mappings":"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"}
@@ -1,114 +1,23 @@
1
- import { Contract, Signer } from 'ethers';
1
+ import { Signer } from 'ethers';
2
2
  import { Escrow } from '../types';
3
- /**
4
- * Gas options for transactions
5
- */
6
3
  interface GasOptions {
7
4
  maxFeePerGas?: bigint;
8
5
  maxPriorityFeePerGas?: bigint;
9
6
  }
10
- /**
11
- * EscrowVault - Escrow contract wrapper
12
- *
13
- * IMPORTANT:
14
- * - Escrow creation happens atomically inside `ACTPKernel.linkEscrow()`.
15
- * - Payout/refund functions are `onlyKernel` on-chain and MUST NOT be called by users.
16
- *
17
- * This module provides:
18
- * - Helper methods for USDC approvals (requester → EscrowVault allowance)
19
- * - Read-only access to escrow state (`escrows()` / `remaining()`)
20
- *
21
- * Workflow (per AIP-3):
22
- * 1. Consumer approves USDC to EscrowVault address (use approveToken)
23
- * 2. Consumer calls ACTPKernel.linkEscrow(txId, escrowVault, escrowId)
24
- * 3. Kernel internally calls IEscrowValidator.createEscrow(escrowId, requester, provider, amount)
25
- * 4. Escrow pulls USDC from requester
26
- *
27
- * Reference: AIP-3 §3.2 (Escrow Linking Workflow), lines 258-336
28
- */
29
7
  export declare class EscrowVault {
30
8
  private readonly address;
31
9
  private readonly signer;
32
10
  private contract;
33
11
  private readonly gasSettings?;
34
12
  constructor(address: string, signer: Signer, gasSettings?: GasOptions);
35
- /**
36
- * Get gas buffer multiplier based on operation complexity
37
- * V6 Security Enhancement: Operation-specific gas buffers
38
- * Reference: SDK_SECURITY_ANALYSIS-Ultra-Think.md Lines 326-337
39
- */
40
13
  private getGasBufferMultiplier;
41
- /**
42
- * Build transaction options with gas settings and estimated gas
43
- * V6 Enhancement: Dynamic buffer based on operation type
44
- *
45
- * SECURITY FIX (NEW-C-1): Gas estimation manipulation attack protection
46
- * - Enforces minimum gas floor regardless of estimate
47
- * - Uses safe BigInt arithmetic with overflow detection
48
- */
49
14
  private buildTxOptions;
50
- /**
51
- * Get escrow vault address
52
- */
53
15
  getAddress(): string;
54
- /**
55
- * Get the underlying ethers Contract instance.
56
- *
57
- * SECURITY FIX (C-3): Provides public access to contract for EventMonitor
58
- * instead of accessing private field via bracket notation.
59
- *
60
- * @returns ethers Contract instance
61
- */
62
- getContract(): Contract;
63
- /**
64
- * Approve USDC token for escrow creation
65
- *
66
- * IMPORTANT: Call this BEFORE ACTPKernel.linkEscrow()
67
- * The consumer must approve EscrowVault to pull USDC when linkEscrow() is called
68
- *
69
- * @param tokenAddress - USDC contract address
70
- * @param amount - Amount to approve (in USDC wei, 6 decimals)
71
- * @throws {ValidationError} If inputs are invalid
72
- * @throws {TransactionRevertedError} If approval fails
73
- *
74
- * @example
75
- * ```typescript
76
- * // Approve 100 USDC for escrow
77
- * const amount = ethers.parseUnits('100', 6);
78
- * await client.escrow.approveToken(BASE_SEPOLIA.contracts.usdc, amount);
79
- *
80
- * // Now call linkEscrow via Kernel
81
- * const escrowId = ethers.id(`escrow-${Date.now()}`);
82
- * await client.kernel.linkEscrow(txId, escrowVault, escrowId);
83
- * ```
84
- */
85
16
  approveToken(tokenAddress: string, amount: bigint): Promise<void>;
86
- /**
87
- * Get escrow details
88
- */
89
17
  getEscrow(escrowId: string): Promise<Escrow>;
90
- /**
91
- * Get escrow remaining balance (amount - releasedAmount)
92
- */
93
18
  getEscrowBalance(escrowId: string): Promise<bigint>;
94
- /**
95
- * @deprecated
96
- *
97
- * Payouts/refunds are executed by ACTPKernel (on-chain) as part of state transitions.
98
- * EscrowVault disbursement methods are `onlyKernel` and cannot be called by EOAs.
99
- *
100
- * Use:
101
- * - `BlockchainRuntime.releaseEscrow(txId, attestationUID?)` (recommended)
102
- * - or `ACTPKernel.transitionState(txId, State.SETTLED, proof)` (advanced)
103
- */
104
- releaseEscrow(escrowId: string, _recipients: string[], _amounts: bigint[]): Promise<void>;
105
- /**
106
- * Check token balance
107
- */
19
+ releaseEscrow(escrowId: string, recipients: string[], amounts: bigint[]): Promise<void>;
108
20
  getTokenBalance(tokenAddress: string, account: string): Promise<bigint>;
109
- /**
110
- * Check token allowance
111
- */
112
21
  getTokenAllowance(tokenAddress: string, owner: string, spender: string): Promise<bigint>;
113
22
  }
114
23
  export {};
@@ -1 +1 @@
1
- {"version":3,"file":"EscrowVault.d.ts","sourceRoot":"","sources":["../../src/protocol/EscrowVault.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAG1C,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAQlC;;GAEG;AACH,UAAU,UAAU;IAClB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,oBAAoB,CAAC,EAAE,MAAM,CAAC;CAC/B;AAED;;;;;;;;;;;;;;;;;;GAkBG;AACH,qBAAa,WAAW;IAKpB,OAAO,CAAC,QAAQ,CAAC,OAAO;IACxB,OAAO,CAAC,QAAQ,CAAC,MAAM;IALzB,OAAO,CAAC,QAAQ,CAAW;IAC3B,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAa;gBAGvB,OAAO,EAAE,MAAM,EACf,MAAM,EAAE,MAAM,EAC/B,WAAW,CAAC,EAAE,UAAU;IAM1B;;;;OAIG;IACH,OAAO,CAAC,sBAAsB;IAQ9B;;;;;;;OAOG;IACH,OAAO,CAAC,cAAc;IAoCtB;;OAEG;IACH,UAAU,IAAI,MAAM;IAIpB;;;;;;;OAOG;IACH,WAAW,IAAI,QAAQ;IAIvB;;;;;;;;;;;;;;;;;;;;;OAqBG;IACG,YAAY,CAAC,YAAY,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAsCvE;;OAEG;IACG,SAAS,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAclD;;OAEG;IACG,gBAAgB,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAKzD;;;;;;;;;OASG;IACG,aAAa,CACjB,QAAQ,EAAE,MAAM,EAChB,WAAW,EAAE,MAAM,EAAE,EACrB,QAAQ,EAAE,MAAM,EAAE,GACjB,OAAO,CAAC,IAAI,CAAC;IAShB;;OAEG;IACG,eAAe,CAAC,YAAY,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAK7E;;OAEG;IACG,iBAAiB,CACrB,YAAY,EAAE,MAAM,EACpB,KAAK,EAAE,MAAM,EACb,OAAO,EAAE,MAAM,GACd,OAAO,CAAC,MAAM,CAAC;CAInB"}
1
+ {"version":3,"file":"EscrowVault.d.ts","sourceRoot":"","sources":["../../src/protocol/EscrowVault.ts"],"names":[],"mappings":"AAAA,OAAO,EAAY,MAAM,EAAE,MAAM,QAAQ,CAAC;AAG1C,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAWlC,UAAU,UAAU;IAClB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,oBAAoB,CAAC,EAAE,MAAM,CAAC;CAC/B;AAiBD,qBAAa,WAAW;IAKpB,OAAO,CAAC,QAAQ,CAAC,OAAO;IACxB,OAAO,CAAC,QAAQ,CAAC,MAAM;IALzB,OAAO,CAAC,QAAQ,CAAW;IAC3B,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAa;gBAGvB,OAAO,EAAE,MAAM,EACf,MAAM,EAAE,MAAM,EAC/B,WAAW,CAAC,EAAE,UAAU;IAW1B,OAAO,CAAC,sBAAsB;IAa9B,OAAO,CAAC,cAAc;IAoBtB,UAAU,IAAI,MAAM;IA0Bd,YAAY,CAAC,YAAY,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAyCjE,SAAS,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAkB5C,gBAAgB,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IASnD,aAAa,CACjB,QAAQ,EAAE,MAAM,EAChB,UAAU,EAAE,MAAM,EAAE,EACpB,OAAO,EAAE,MAAM,EAAE,GAChB,OAAO,CAAC,IAAI,CAAC;IAqCV,eAAe,CAAC,YAAY,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAQvE,iBAAiB,CACrB,YAAY,EAAE,MAAM,EACpB,KAAK,EAAE,MAAM,EACb,OAAO,EAAE,MAAM,GACd,OAAO,CAAC,MAAM,CAAC;CAInB"}