safehands-pharos 1.5.0 → 2.8.0

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 (566) hide show
  1. package/.agents/policies/default.json +15 -0
  2. package/.env.example +81 -64
  3. package/README.md +301 -444
  4. package/SECURITY.md +112 -0
  5. package/SKILL.md +59 -0
  6. package/contracts/SafeHandsAttestation.sol +182 -0
  7. package/contracts/SafeHandsRegistry.sol +149 -0
  8. package/dist/agent/SafeHandsGuardianAgent.d.ts +39 -0
  9. package/dist/agent/SafeHandsGuardianAgent.d.ts.map +1 -0
  10. package/dist/agent/SafeHandsGuardianAgent.js +98 -0
  11. package/dist/agent/SafeHandsGuardianAgent.js.map +1 -0
  12. package/dist/agent/agentDecisionFormatter.d.ts +43 -0
  13. package/dist/agent/agentDecisionFormatter.d.ts.map +1 -0
  14. package/dist/agent/agentDecisionFormatter.js +96 -0
  15. package/dist/agent/agentDecisionFormatter.js.map +1 -0
  16. package/dist/agent/agentEnrich.d.ts +28 -0
  17. package/dist/agent/agentEnrich.d.ts.map +1 -0
  18. package/dist/agent/agentEnrich.js +99 -0
  19. package/dist/agent/agentEnrich.js.map +1 -0
  20. package/dist/agent/agentIntentClassifier.d.ts +44 -0
  21. package/dist/agent/agentIntentClassifier.d.ts.map +1 -0
  22. package/dist/agent/agentIntentClassifier.js +77 -0
  23. package/dist/agent/agentIntentClassifier.js.map +1 -0
  24. package/dist/agent/agentPolicyResolver.d.ts +44 -0
  25. package/dist/agent/agentPolicyResolver.d.ts.map +1 -0
  26. package/dist/agent/agentPolicyResolver.js +94 -0
  27. package/dist/agent/agentPolicyResolver.js.map +1 -0
  28. package/dist/agent/agentRuntime.d.ts +12 -0
  29. package/dist/agent/agentRuntime.d.ts.map +1 -0
  30. package/dist/agent/agentRuntime.js +31 -0
  31. package/dist/agent/agentRuntime.js.map +1 -0
  32. package/dist/agent/agentToolRouter.d.ts +24 -0
  33. package/dist/agent/agentToolRouter.d.ts.map +1 -0
  34. package/dist/agent/agentToolRouter.js +89 -0
  35. package/dist/agent/agentToolRouter.js.map +1 -0
  36. package/dist/agent/guardianOperator.d.ts +35 -0
  37. package/dist/agent/guardianOperator.d.ts.map +1 -0
  38. package/dist/agent/guardianOperator.js +65 -0
  39. package/dist/agent/guardianOperator.js.map +1 -0
  40. package/dist/agent/index.d.ts +8 -0
  41. package/dist/agent/index.d.ts.map +1 -0
  42. package/dist/agent/index.js +14 -0
  43. package/dist/agent/index.js.map +1 -0
  44. package/dist/api/activityRoutes.d.ts +70 -0
  45. package/dist/api/activityRoutes.d.ts.map +1 -0
  46. package/dist/api/activityRoutes.js +100 -0
  47. package/dist/api/activityRoutes.js.map +1 -0
  48. package/dist/api/agentRoutes.d.ts +16 -0
  49. package/dist/api/agentRoutes.d.ts.map +1 -0
  50. package/dist/api/agentRoutes.js +37 -0
  51. package/dist/api/agentRoutes.js.map +1 -0
  52. package/dist/api/broadcastRoutes.d.ts +34 -0
  53. package/dist/api/broadcastRoutes.d.ts.map +1 -0
  54. package/dist/api/broadcastRoutes.js +147 -0
  55. package/dist/api/broadcastRoutes.js.map +1 -0
  56. package/dist/api/consolePage.d.ts +2 -0
  57. package/dist/api/consolePage.d.ts.map +1 -0
  58. package/dist/api/consolePage.js +206 -0
  59. package/dist/api/consolePage.js.map +1 -0
  60. package/dist/api/httpHardening.d.ts +75 -0
  61. package/dist/api/httpHardening.d.ts.map +1 -0
  62. package/dist/api/httpHardening.js +122 -0
  63. package/dist/api/httpHardening.js.map +1 -0
  64. package/dist/api/indexerRoutes.d.ts +46 -0
  65. package/dist/api/indexerRoutes.d.ts.map +1 -0
  66. package/dist/api/indexerRoutes.js +75 -0
  67. package/dist/api/indexerRoutes.js.map +1 -0
  68. package/dist/api/paidRoutes.d.ts +8 -0
  69. package/dist/api/paidRoutes.d.ts.map +1 -0
  70. package/dist/api/paidRoutes.js +175 -0
  71. package/dist/api/paidRoutes.js.map +1 -0
  72. package/dist/api/prepareRoutes.d.ts +58 -0
  73. package/dist/api/prepareRoutes.d.ts.map +1 -0
  74. package/dist/api/prepareRoutes.js +90 -0
  75. package/dist/api/prepareRoutes.js.map +1 -0
  76. package/dist/api/response.d.ts +39 -0
  77. package/dist/api/response.d.ts.map +1 -0
  78. package/dist/api/response.js +53 -0
  79. package/dist/api/response.js.map +1 -0
  80. package/dist/api/routes.d.ts +175 -0
  81. package/dist/api/routes.d.ts.map +1 -0
  82. package/dist/api/routes.js +276 -0
  83. package/dist/api/routes.js.map +1 -0
  84. package/dist/api/schemas.d.ts +147 -0
  85. package/dist/api/schemas.d.ts.map +1 -0
  86. package/dist/api/schemas.js +81 -0
  87. package/dist/api/schemas.js.map +1 -0
  88. package/dist/api/server.d.ts +11 -0
  89. package/dist/api/server.d.ts.map +1 -0
  90. package/dist/api/server.js +505 -0
  91. package/dist/api/server.js.map +1 -0
  92. package/dist/api/toolRoutes.d.ts +14 -0
  93. package/dist/api/toolRoutes.d.ts.map +1 -0
  94. package/dist/api/toolRoutes.js +138 -0
  95. package/dist/api/toolRoutes.js.map +1 -0
  96. package/dist/api/walletPrepareRoutes.d.ts +74 -0
  97. package/dist/api/walletPrepareRoutes.d.ts.map +1 -0
  98. package/dist/api/walletPrepareRoutes.js +127 -0
  99. package/dist/api/walletPrepareRoutes.js.map +1 -0
  100. package/dist/api/x402Gate.d.ts +51 -0
  101. package/dist/api/x402Gate.d.ts.map +1 -0
  102. package/dist/api/x402Gate.js +184 -0
  103. package/dist/api/x402Gate.js.map +1 -0
  104. package/dist/cli.d.ts +1 -1
  105. package/dist/cli.d.ts.map +1 -1
  106. package/dist/cli.js +29 -1
  107. package/dist/cli.js.map +1 -1
  108. package/dist/data/ecosystemRegistry.data.d.ts +3 -0
  109. package/dist/data/ecosystemRegistry.data.d.ts.map +1 -0
  110. package/dist/data/ecosystemRegistry.data.js +582 -0
  111. package/dist/data/ecosystemRegistry.data.js.map +1 -0
  112. package/dist/demo.d.ts +0 -0
  113. package/dist/demo.d.ts.map +1 -1
  114. package/dist/demo.js +43 -8
  115. package/dist/demo.js.map +1 -1
  116. package/dist/handsafe.zip +0 -0
  117. package/dist/index.d.ts +0 -0
  118. package/dist/index.d.ts.map +0 -0
  119. package/dist/index.js +212 -135
  120. package/dist/index.js.map +1 -1
  121. package/dist/init.d.ts +0 -0
  122. package/dist/init.d.ts.map +1 -1
  123. package/dist/init.js +72 -10
  124. package/dist/init.js.map +1 -1
  125. package/dist/lib/analysis/abiWords.d.ts +17 -0
  126. package/dist/lib/analysis/abiWords.d.ts.map +1 -0
  127. package/dist/lib/analysis/abiWords.js +48 -0
  128. package/dist/lib/analysis/abiWords.js.map +1 -0
  129. package/dist/lib/analysis/approval.d.ts +29 -0
  130. package/dist/lib/analysis/approval.d.ts.map +1 -0
  131. package/dist/lib/analysis/approval.js +189 -0
  132. package/dist/lib/analysis/approval.js.map +1 -0
  133. package/dist/lib/analysis/calldata.d.ts +60 -0
  134. package/dist/lib/analysis/calldata.d.ts.map +1 -0
  135. package/dist/lib/analysis/calldata.js +464 -0
  136. package/dist/lib/analysis/calldata.js.map +1 -0
  137. package/dist/lib/analysis/contractIntel.d.ts +65 -0
  138. package/dist/lib/analysis/contractIntel.d.ts.map +1 -0
  139. package/dist/lib/analysis/contractIntel.js +320 -0
  140. package/dist/lib/analysis/contractIntel.js.map +1 -0
  141. package/dist/lib/analysis/evm.d.ts +42 -0
  142. package/dist/lib/analysis/evm.d.ts.map +1 -0
  143. package/dist/lib/analysis/evm.js +185 -0
  144. package/dist/lib/analysis/evm.js.map +1 -0
  145. package/dist/lib/analysis/gas.d.ts +4 -0
  146. package/dist/lib/analysis/gas.d.ts.map +1 -0
  147. package/dist/lib/analysis/gas.js +13 -0
  148. package/dist/lib/analysis/gas.js.map +1 -0
  149. package/dist/lib/analysis/index.d.ts +11 -0
  150. package/dist/lib/analysis/index.d.ts.map +1 -0
  151. package/dist/lib/analysis/index.js +16 -0
  152. package/dist/lib/analysis/index.js.map +1 -0
  153. package/dist/lib/analysis/pharosTokens.d.ts +31 -0
  154. package/dist/lib/analysis/pharosTokens.d.ts.map +1 -0
  155. package/dist/lib/analysis/pharosTokens.js +78 -0
  156. package/dist/lib/analysis/pharosTokens.js.map +1 -0
  157. package/dist/lib/analysis/safeTx.d.ts +27 -0
  158. package/dist/lib/analysis/safeTx.d.ts.map +1 -0
  159. package/dist/lib/analysis/safeTx.js +118 -0
  160. package/dist/lib/analysis/safeTx.js.map +1 -0
  161. package/dist/lib/analysis/token.d.ts +21 -0
  162. package/dist/lib/analysis/token.d.ts.map +1 -0
  163. package/dist/lib/analysis/token.js +151 -0
  164. package/dist/lib/analysis/token.js.map +1 -0
  165. package/dist/lib/analysis/types.d.ts +49 -0
  166. package/dist/lib/analysis/types.d.ts.map +1 -0
  167. package/dist/lib/analysis/types.js +10 -0
  168. package/dist/lib/analysis/types.js.map +1 -0
  169. package/dist/lib/analysis/x402.d.ts +24 -0
  170. package/dist/lib/analysis/x402.d.ts.map +1 -0
  171. package/dist/lib/analysis/x402.js +60 -0
  172. package/dist/lib/analysis/x402.js.map +1 -0
  173. package/dist/lib/auditLog.d.ts +1 -0
  174. package/dist/lib/auditLog.d.ts.map +1 -1
  175. package/dist/lib/auditLog.js +0 -0
  176. package/dist/lib/auditLog.js.map +1 -1
  177. package/dist/lib/config.d.ts +77 -0
  178. package/dist/lib/config.d.ts.map +1 -0
  179. package/dist/lib/config.js +120 -0
  180. package/dist/lib/config.js.map +1 -0
  181. package/dist/lib/constants.d.ts +246 -97
  182. package/dist/lib/constants.d.ts.map +1 -1
  183. package/dist/lib/constants.js +334 -127
  184. package/dist/lib/constants.js.map +1 -1
  185. package/dist/lib/dodoApi.d.ts +26 -3
  186. package/dist/lib/dodoApi.d.ts.map +1 -1
  187. package/dist/lib/dodoApi.js +80 -17
  188. package/dist/lib/dodoApi.js.map +1 -1
  189. package/dist/lib/ecosystemRegistry.d.ts +126 -0
  190. package/dist/lib/ecosystemRegistry.d.ts.map +1 -0
  191. package/dist/lib/ecosystemRegistry.js +178 -0
  192. package/dist/lib/ecosystemRegistry.js.map +1 -0
  193. package/dist/lib/envLoader.d.ts +0 -0
  194. package/dist/lib/envLoader.d.ts.map +0 -0
  195. package/dist/lib/envLoader.js +39 -18
  196. package/dist/lib/envLoader.js.map +1 -1
  197. package/dist/lib/goldsky.d.ts +58 -0
  198. package/dist/lib/goldsky.d.ts.map +1 -0
  199. package/dist/lib/goldsky.js +275 -0
  200. package/dist/lib/goldsky.js.map +1 -0
  201. package/dist/lib/guardian/decision.d.ts +23 -0
  202. package/dist/lib/guardian/decision.d.ts.map +1 -0
  203. package/dist/lib/guardian/decision.js +40 -0
  204. package/dist/lib/guardian/decision.js.map +1 -0
  205. package/dist/lib/http.d.ts +0 -1
  206. package/dist/lib/http.d.ts.map +1 -1
  207. package/dist/lib/http.js +297 -32
  208. package/dist/lib/http.js.map +1 -1
  209. package/dist/lib/managedExecution.d.ts +19 -0
  210. package/dist/lib/managedExecution.d.ts.map +1 -0
  211. package/dist/lib/managedExecution.js +64 -0
  212. package/dist/lib/managedExecution.js.map +1 -0
  213. package/dist/lib/merkleBatcher.d.ts +23 -0
  214. package/dist/lib/merkleBatcher.d.ts.map +1 -0
  215. package/dist/lib/merkleBatcher.js +62 -0
  216. package/dist/lib/merkleBatcher.js.map +1 -0
  217. package/dist/lib/networks.d.ts +48 -0
  218. package/dist/lib/networks.d.ts.map +1 -0
  219. package/dist/lib/networks.js +103 -0
  220. package/dist/lib/networks.js.map +1 -0
  221. package/dist/lib/observability/accessContext.d.ts +29 -0
  222. package/dist/lib/observability/accessContext.d.ts.map +1 -0
  223. package/dist/lib/observability/accessContext.js +50 -0
  224. package/dist/lib/observability/accessContext.js.map +1 -0
  225. package/dist/lib/observability/activityStore.d.ts +70 -0
  226. package/dist/lib/observability/activityStore.d.ts.map +1 -0
  227. package/dist/lib/observability/activityStore.js +149 -0
  228. package/dist/lib/observability/activityStore.js.map +1 -0
  229. package/dist/lib/observability/apiKey.d.ts +55 -0
  230. package/dist/lib/observability/apiKey.d.ts.map +1 -0
  231. package/dist/lib/observability/apiKey.js +141 -0
  232. package/dist/lib/observability/apiKey.js.map +1 -0
  233. package/dist/lib/observability/logger.d.ts +30 -0
  234. package/dist/lib/observability/logger.d.ts.map +1 -0
  235. package/dist/lib/observability/logger.js +30 -0
  236. package/dist/lib/observability/logger.js.map +1 -0
  237. package/dist/lib/observability/quota.d.ts +33 -0
  238. package/dist/lib/observability/quota.d.ts.map +1 -0
  239. package/dist/lib/observability/quota.js +49 -0
  240. package/dist/lib/observability/quota.js.map +1 -0
  241. package/dist/lib/observability/requestId.d.ts +8 -0
  242. package/dist/lib/observability/requestId.d.ts.map +1 -0
  243. package/dist/lib/observability/requestId.js +24 -0
  244. package/dist/lib/observability/requestId.js.map +1 -0
  245. package/dist/lib/observability/sanitize.d.ts +77 -0
  246. package/dist/lib/observability/sanitize.d.ts.map +1 -0
  247. package/dist/lib/observability/sanitize.js +228 -0
  248. package/dist/lib/observability/sanitize.js.map +1 -0
  249. package/dist/lib/observability/scopes.d.ts +20 -0
  250. package/dist/lib/observability/scopes.d.ts.map +1 -0
  251. package/dist/lib/observability/scopes.js +77 -0
  252. package/dist/lib/observability/scopes.js.map +1 -0
  253. package/dist/lib/okxDexApi.d.ts +106 -0
  254. package/dist/lib/okxDexApi.d.ts.map +1 -0
  255. package/dist/lib/okxDexApi.js +221 -0
  256. package/dist/lib/okxDexApi.js.map +1 -0
  257. package/dist/lib/persistentJsonStore.d.ts +5 -0
  258. package/dist/lib/persistentJsonStore.d.ts.map +1 -0
  259. package/dist/lib/persistentJsonStore.js +39 -0
  260. package/dist/lib/persistentJsonStore.js.map +1 -0
  261. package/dist/lib/pharos/attestationPublisher.d.ts +50 -0
  262. package/dist/lib/pharos/attestationPublisher.d.ts.map +1 -0
  263. package/dist/lib/pharos/attestationPublisher.js +262 -0
  264. package/dist/lib/pharos/attestationPublisher.js.map +1 -0
  265. package/dist/lib/pharos/ecosystem.d.ts +52 -0
  266. package/dist/lib/pharos/ecosystem.d.ts.map +1 -0
  267. package/dist/lib/pharos/ecosystem.js +431 -0
  268. package/dist/lib/pharos/ecosystem.js.map +1 -0
  269. package/dist/lib/pharos/ecosystemEvidence.d.ts +53 -0
  270. package/dist/lib/pharos/ecosystemEvidence.d.ts.map +1 -0
  271. package/dist/lib/pharos/ecosystemEvidence.js +133 -0
  272. package/dist/lib/pharos/ecosystemEvidence.js.map +1 -0
  273. package/dist/lib/pharos/rpc.d.ts +44 -0
  274. package/dist/lib/pharos/rpc.d.ts.map +1 -0
  275. package/dist/lib/pharos/rpc.js +90 -0
  276. package/dist/lib/pharos/rpc.js.map +1 -0
  277. package/dist/lib/pharos/rpcEvidence.d.ts +49 -0
  278. package/dist/lib/pharos/rpcEvidence.d.ts.map +1 -0
  279. package/dist/lib/pharos/rpcEvidence.js +46 -0
  280. package/dist/lib/pharos/rpcEvidence.js.map +1 -0
  281. package/dist/lib/pharos/rpcMethods.d.ts +46 -0
  282. package/dist/lib/pharos/rpcMethods.d.ts.map +1 -0
  283. package/dist/lib/pharos/rpcMethods.js +176 -0
  284. package/dist/lib/pharos/rpcMethods.js.map +1 -0
  285. package/dist/lib/pharos/spvVerifier.d.ts +47 -0
  286. package/dist/lib/pharos/spvVerifier.d.ts.map +1 -0
  287. package/dist/lib/pharos/spvVerifier.js +105 -0
  288. package/dist/lib/pharos/spvVerifier.js.map +1 -0
  289. package/dist/lib/pharos/userSignedBroadcaster.d.ts +10 -0
  290. package/dist/lib/pharos/userSignedBroadcaster.d.ts.map +1 -0
  291. package/dist/lib/pharos/userSignedBroadcaster.js +50 -0
  292. package/dist/lib/pharos/userSignedBroadcaster.js.map +1 -0
  293. package/dist/lib/pharosClient.d.ts +5 -10
  294. package/dist/lib/pharosClient.d.ts.map +1 -1
  295. package/dist/lib/pharosClient.js +9 -16
  296. package/dist/lib/pharosClient.js.map +1 -1
  297. package/dist/lib/policy/actionPolicyEngine.d.ts +37 -1
  298. package/dist/lib/policy/actionPolicyEngine.d.ts.map +1 -1
  299. package/dist/lib/policy/actionPolicyEngine.js +213 -52
  300. package/dist/lib/policy/actionPolicyEngine.js.map +1 -1
  301. package/dist/lib/policy/agentPolicy.d.ts +29 -0
  302. package/dist/lib/policy/agentPolicy.d.ts.map +1 -0
  303. package/dist/lib/policy/agentPolicy.js +154 -0
  304. package/dist/lib/policy/agentPolicy.js.map +1 -0
  305. package/dist/lib/policy/policyPresets.d.ts +30 -0
  306. package/dist/lib/policy/policyPresets.d.ts.map +1 -0
  307. package/dist/lib/policy/policyPresets.js +124 -0
  308. package/dist/lib/policy/policyPresets.js.map +1 -0
  309. package/dist/lib/policy/writeExecutionGate.d.ts +23 -0
  310. package/dist/lib/policy/writeExecutionGate.d.ts.map +1 -0
  311. package/dist/lib/policy/writeExecutionGate.js +65 -0
  312. package/dist/lib/policy/writeExecutionGate.js.map +1 -0
  313. package/dist/lib/preparedTxStore.d.ts +21 -0
  314. package/dist/lib/preparedTxStore.d.ts.map +1 -0
  315. package/dist/lib/preparedTxStore.js +90 -0
  316. package/dist/lib/preparedTxStore.js.map +1 -0
  317. package/dist/lib/price/chainlinkPushProvider.d.ts +34 -0
  318. package/dist/lib/price/chainlinkPushProvider.d.ts.map +1 -0
  319. package/dist/lib/price/chainlinkPushProvider.js +36 -0
  320. package/dist/lib/price/chainlinkPushProvider.js.map +1 -0
  321. package/dist/lib/price/feedRegistry.d.ts +26 -0
  322. package/dist/lib/price/feedRegistry.d.ts.map +1 -0
  323. package/dist/lib/price/feedRegistry.js +67 -0
  324. package/dist/lib/price/feedRegistry.js.map +1 -0
  325. package/dist/lib/price/priceResolver.d.ts +35 -0
  326. package/dist/lib/price/priceResolver.d.ts.map +1 -0
  327. package/dist/lib/price/priceResolver.js +246 -0
  328. package/dist/lib/price/priceResolver.js.map +1 -0
  329. package/dist/lib/price/supraProvider.d.ts +9 -0
  330. package/dist/lib/price/supraProvider.d.ts.map +1 -0
  331. package/dist/lib/price/supraProvider.js +17 -0
  332. package/dist/lib/price/supraProvider.js.map +1 -0
  333. package/dist/lib/price/types.d.ts +67 -0
  334. package/dist/lib/price/types.d.ts.map +1 -0
  335. package/dist/lib/price/types.js +7 -0
  336. package/dist/lib/price/types.js.map +1 -0
  337. package/dist/lib/productionGuards.d.ts +16 -0
  338. package/dist/lib/productionGuards.d.ts.map +1 -0
  339. package/dist/lib/productionGuards.js +93 -0
  340. package/dist/lib/productionGuards.js.map +1 -0
  341. package/dist/lib/recipientSafety.d.ts +5 -0
  342. package/dist/lib/recipientSafety.d.ts.map +1 -0
  343. package/dist/lib/recipientSafety.js +28 -0
  344. package/dist/lib/recipientSafety.js.map +1 -0
  345. package/dist/lib/riskEngine.d.ts +19 -0
  346. package/dist/lib/riskEngine.d.ts.map +1 -1
  347. package/dist/lib/riskEngine.js +107 -38
  348. package/dist/lib/riskEngine.js.map +1 -1
  349. package/dist/lib/riskInclusion.d.ts +72 -0
  350. package/dist/lib/riskInclusion.d.ts.map +1 -0
  351. package/dist/lib/riskInclusion.js +252 -0
  352. package/dist/lib/riskInclusion.js.map +1 -0
  353. package/dist/lib/safeHandsRegistry.d.ts +32 -0
  354. package/dist/lib/safeHandsRegistry.d.ts.map +1 -0
  355. package/dist/lib/safeHandsRegistry.js +151 -0
  356. package/dist/lib/safeHandsRegistry.js.map +1 -0
  357. package/dist/lib/signer/index.d.ts +3 -3
  358. package/dist/lib/signer/index.d.ts.map +1 -1
  359. package/dist/lib/signer/index.js +33 -11
  360. package/dist/lib/signer/index.js.map +1 -1
  361. package/dist/lib/spendAccumulator.d.ts +24 -1
  362. package/dist/lib/spendAccumulator.d.ts.map +1 -1
  363. package/dist/lib/spendAccumulator.js +76 -6
  364. package/dist/lib/spendAccumulator.js.map +1 -1
  365. package/dist/lib/toolResponse.d.ts +6 -1
  366. package/dist/lib/toolResponse.d.ts.map +1 -1
  367. package/dist/lib/toolResponse.js +13 -9
  368. package/dist/lib/toolResponse.js.map +1 -1
  369. package/dist/lib/validation.d.ts +7 -0
  370. package/dist/lib/validation.d.ts.map +1 -0
  371. package/dist/lib/validation.js +62 -0
  372. package/dist/lib/validation.js.map +1 -0
  373. package/dist/lib/wallet/index.d.ts +8 -12
  374. package/dist/lib/wallet/index.d.ts.map +1 -1
  375. package/dist/lib/wallet/index.js +48 -35
  376. package/dist/lib/wallet/index.js.map +1 -1
  377. package/dist/lib/x402ReplayStore.d.ts +6 -0
  378. package/dist/lib/x402ReplayStore.d.ts.map +1 -0
  379. package/dist/lib/x402ReplayStore.js +79 -0
  380. package/dist/lib/x402ReplayStore.js.map +1 -0
  381. package/dist/safehands.zip +0 -0
  382. package/dist/sdk.d.ts +14 -0
  383. package/dist/sdk.d.ts.map +1 -0
  384. package/dist/sdk.js +25 -0
  385. package/dist/sdk.js.map +1 -0
  386. package/dist/tools/approveToken.d.ts +31 -10
  387. package/dist/tools/approveToken.d.ts.map +1 -1
  388. package/dist/tools/approveToken.js +91 -24
  389. package/dist/tools/approveToken.js.map +1 -1
  390. package/dist/tools/assessRisk.d.ts +13 -26
  391. package/dist/tools/assessRisk.d.ts.map +1 -1
  392. package/dist/tools/assessRisk.js +34 -75
  393. package/dist/tools/assessRisk.js.map +1 -1
  394. package/dist/tools/checkAllowance.d.ts +9 -3
  395. package/dist/tools/checkAllowance.d.ts.map +1 -1
  396. package/dist/tools/checkAllowance.js +27 -5
  397. package/dist/tools/checkAllowance.js.map +1 -1
  398. package/dist/tools/checkTokenSecurity.d.ts +62 -5
  399. package/dist/tools/checkTokenSecurity.d.ts.map +1 -1
  400. package/dist/tools/checkTokenSecurity.js +166 -21
  401. package/dist/tools/checkTokenSecurity.js.map +1 -1
  402. package/dist/tools/createAgentWallet.d.ts +4 -2
  403. package/dist/tools/createAgentWallet.d.ts.map +1 -1
  404. package/dist/tools/createAgentWallet.js +36 -31
  405. package/dist/tools/createAgentWallet.js.map +1 -1
  406. package/dist/tools/estimateGas.d.ts +7 -2
  407. package/dist/tools/estimateGas.d.ts.map +1 -1
  408. package/dist/tools/estimateGas.js +16 -10
  409. package/dist/tools/estimateGas.js.map +1 -1
  410. package/dist/tools/executeSwap.d.ts +56 -8
  411. package/dist/tools/executeSwap.d.ts.map +1 -1
  412. package/dist/tools/executeSwap.js +194 -46
  413. package/dist/tools/executeSwap.js.map +1 -1
  414. package/dist/tools/explainRisk.d.ts +9 -9
  415. package/dist/tools/explainRisk.d.ts.map +1 -1
  416. package/dist/tools/explainRisk.js +5 -4
  417. package/dist/tools/explainRisk.js.map +1 -1
  418. package/dist/tools/getAgentPolicy.d.ts +15 -0
  419. package/dist/tools/getAgentPolicy.d.ts.map +1 -0
  420. package/dist/tools/getAgentPolicy.js +16 -0
  421. package/dist/tools/getAgentPolicy.js.map +1 -0
  422. package/dist/tools/getAgentReputation.d.ts +31 -0
  423. package/dist/tools/getAgentReputation.d.ts.map +1 -0
  424. package/dist/tools/getAgentReputation.js +44 -0
  425. package/dist/tools/getAgentReputation.js.map +1 -0
  426. package/dist/tools/getAgentWallet.d.ts +1 -1
  427. package/dist/tools/getAgentWallet.d.ts.map +1 -1
  428. package/dist/tools/getAgentWallet.js +11 -1
  429. package/dist/tools/getAgentWallet.js.map +1 -1
  430. package/dist/tools/getAgentWalletBalance.d.ts +1 -1
  431. package/dist/tools/getAgentWalletBalance.d.ts.map +1 -1
  432. package/dist/tools/getAgentWalletBalance.js +58 -26
  433. package/dist/tools/getAgentWalletBalance.js.map +1 -1
  434. package/dist/tools/getExecutionHistory.d.ts +1 -1
  435. package/dist/tools/getExecutionHistory.d.ts.map +1 -1
  436. package/dist/tools/getExecutionHistory.js +13 -19
  437. package/dist/tools/getExecutionHistory.js.map +1 -1
  438. package/dist/tools/getGasPrice.d.ts +3 -3
  439. package/dist/tools/getGasPrice.d.ts.map +0 -0
  440. package/dist/tools/getGasPrice.js +7 -7
  441. package/dist/tools/getGasPrice.js.map +1 -1
  442. package/dist/tools/getPoolInfo.d.ts +17 -17
  443. package/dist/tools/getPoolInfo.d.ts.map +1 -1
  444. package/dist/tools/getPoolInfo.js +14 -9
  445. package/dist/tools/getPoolInfo.js.map +1 -1
  446. package/dist/tools/getSpvProof.d.ts +24 -0
  447. package/dist/tools/getSpvProof.d.ts.map +1 -0
  448. package/dist/tools/getSpvProof.js +64 -0
  449. package/dist/tools/getSpvProof.js.map +1 -0
  450. package/dist/tools/getTokenPrice.d.ts +28 -85
  451. package/dist/tools/getTokenPrice.d.ts.map +1 -1
  452. package/dist/tools/getTokenPrice.js +87 -94
  453. package/dist/tools/getTokenPrice.js.map +1 -1
  454. package/dist/tools/getTransactionStatus.d.ts +2 -2
  455. package/dist/tools/getTransactionStatus.d.ts.map +0 -0
  456. package/dist/tools/getTransactionStatus.js +0 -0
  457. package/dist/tools/getTransactionStatus.js.map +0 -0
  458. package/dist/tools/getWalletBalance.d.ts +38 -3
  459. package/dist/tools/getWalletBalance.d.ts.map +1 -1
  460. package/dist/tools/getWalletBalance.js +92 -52
  461. package/dist/tools/getWalletBalance.js.map +1 -1
  462. package/dist/tools/publishRiskScore.d.ts +36 -14
  463. package/dist/tools/publishRiskScore.d.ts.map +1 -1
  464. package/dist/tools/publishRiskScore.js +80 -32
  465. package/dist/tools/publishRiskScore.js.map +1 -1
  466. package/dist/tools/queryGoldsky.d.ts +20 -0
  467. package/dist/tools/queryGoldsky.d.ts.map +1 -0
  468. package/dist/tools/queryGoldsky.js +29 -0
  469. package/dist/tools/queryGoldsky.js.map +1 -0
  470. package/dist/tools/queryRiskRegistry.d.ts +14 -14
  471. package/dist/tools/queryRiskRegistry.d.ts.map +1 -1
  472. package/dist/tools/queryRiskRegistry.js +34 -30
  473. package/dist/tools/queryRiskRegistry.js.map +1 -1
  474. package/dist/tools/safehandsPreflightCheck.d.ts +29 -14
  475. package/dist/tools/safehandsPreflightCheck.d.ts.map +1 -1
  476. package/dist/tools/safehandsPreflightCheck.js +133 -6
  477. package/dist/tools/safehandsPreflightCheck.js.map +1 -1
  478. package/dist/tools/safehandsRiskReport.d.ts +29 -14
  479. package/dist/tools/safehandsRiskReport.d.ts.map +1 -1
  480. package/dist/tools/safehandsRiskReport.js +23 -3
  481. package/dist/tools/safehandsRiskReport.js.map +1 -1
  482. package/dist/tools/safehandsSafeExecute.d.ts +1 -1
  483. package/dist/tools/safehandsSafeExecute.d.ts.map +1 -1
  484. package/dist/tools/safehandsSafeExecute.js +100 -17
  485. package/dist/tools/safehandsSafeExecute.js.map +1 -1
  486. package/dist/tools/safehandsWalletHealth.d.ts +15 -1
  487. package/dist/tools/safehandsWalletHealth.d.ts.map +1 -1
  488. package/dist/tools/safehandsWalletHealth.js +67 -25
  489. package/dist/tools/safehandsWalletHealth.js.map +1 -1
  490. package/dist/tools/safehandsX402Preflight.d.ts +3 -3
  491. package/dist/tools/safehandsX402Preflight.d.ts.map +1 -1
  492. package/dist/tools/safehandsX402Preflight.js +24 -3
  493. package/dist/tools/safehandsX402Preflight.js.map +1 -1
  494. package/dist/tools/sendPayment.d.ts +10 -4
  495. package/dist/tools/sendPayment.d.ts.map +1 -1
  496. package/dist/tools/sendPayment.js +63 -36
  497. package/dist/tools/sendPayment.js.map +1 -1
  498. package/dist/tools/setAgentPolicy.d.ts +75 -0
  499. package/dist/tools/setAgentPolicy.d.ts.map +1 -0
  500. package/dist/tools/setAgentPolicy.js +80 -0
  501. package/dist/tools/setAgentPolicy.js.map +1 -0
  502. package/dist/tools/simulateTransaction.d.ts +7 -3
  503. package/dist/tools/simulateTransaction.d.ts.map +1 -1
  504. package/dist/tools/simulateTransaction.js +42 -9
  505. package/dist/tools/simulateTransaction.js.map +1 -1
  506. package/dist/tools/tokenRegistryStatus.d.ts +25 -5
  507. package/dist/tools/tokenRegistryStatus.d.ts.map +1 -1
  508. package/dist/tools/tokenRegistryStatus.js +61 -31
  509. package/dist/tools/tokenRegistryStatus.js.map +1 -1
  510. package/dist/tools/verifyRiskInclusion.d.ts +59 -0
  511. package/dist/tools/verifyRiskInclusion.d.ts.map +1 -0
  512. package/dist/tools/verifyRiskInclusion.js +40 -0
  513. package/dist/tools/verifyRiskInclusion.js.map +1 -0
  514. package/dist/tools/x402PayAndFetch.d.ts +15 -9
  515. package/dist/tools/x402PayAndFetch.d.ts.map +1 -1
  516. package/dist/tools/x402PayAndFetch.js +163 -20
  517. package/dist/tools/x402PayAndFetch.js.map +1 -1
  518. package/dist/worker.d.ts +3 -0
  519. package/dist/worker.d.ts.map +1 -0
  520. package/dist/worker.js +39 -0
  521. package/dist/worker.js.map +1 -0
  522. package/dist/x402Server.d.ts +1 -1
  523. package/dist/x402Server.d.ts.map +1 -1
  524. package/dist/x402Server.js +144 -35
  525. package/dist/x402Server.js.map +1 -1
  526. package/docs/REVIEWER_QUICKSTART.md +113 -0
  527. package/docs/SAFEHANDS_REVIEWER_DEMO_SCRIPT.md +228 -0
  528. package/package.json +131 -73
  529. package/contracts/RiskRegistry.json +0 -223
  530. package/contracts/RiskRegistry.sol +0 -58
  531. package/dist/lib/testDodoLive.d.ts +0 -2
  532. package/dist/lib/testDodoLive.d.ts.map +0 -1
  533. package/dist/lib/testDodoLive.js +0 -105
  534. package/dist/lib/testDodoLive.js.map +0 -1
  535. package/dist/lib/testLiveSafehands.d.ts +0 -2
  536. package/dist/lib/testLiveSafehands.d.ts.map +0 -1
  537. package/dist/lib/testLiveSafehands.js +0 -93
  538. package/dist/lib/testLiveSafehands.js.map +0 -1
  539. package/dist/lib/testRpc.d.ts +0 -2
  540. package/dist/lib/testRpc.d.ts.map +0 -1
  541. package/dist/lib/testRpc.js +0 -30
  542. package/dist/lib/testRpc.js.map +0 -1
  543. package/dist/lib/testRpcLive.d.ts +0 -2
  544. package/dist/lib/testRpcLive.d.ts.map +0 -1
  545. package/dist/lib/testRpcLive.js +0 -89
  546. package/dist/lib/testRpcLive.js.map +0 -1
  547. package/dist/lib/testTools.d.ts +0 -2
  548. package/dist/lib/testTools.d.ts.map +0 -1
  549. package/dist/lib/testTools.js +0 -397
  550. package/dist/lib/testTools.js.map +0 -1
  551. package/dist/lib/testX402Live.d.ts +0 -2
  552. package/dist/lib/testX402Live.d.ts.map +0 -1
  553. package/dist/lib/testX402Live.js +0 -160
  554. package/dist/lib/testX402Live.js.map +0 -1
  555. package/dist/scripts/checkDeploy.d.ts +0 -2
  556. package/dist/scripts/checkDeploy.d.ts.map +0 -1
  557. package/dist/scripts/checkDeploy.js +0 -25
  558. package/dist/scripts/checkDeploy.js.map +0 -1
  559. package/dist/scripts/deployRegistry.d.ts +0 -2
  560. package/dist/scripts/deployRegistry.d.ts.map +0 -1
  561. package/dist/scripts/deployRegistry.js +0 -101
  562. package/dist/scripts/deployRegistry.js.map +0 -1
  563. package/dist/scripts/testRegistry.d.ts +0 -2
  564. package/dist/scripts/testRegistry.d.ts.map +0 -1
  565. package/dist/scripts/testRegistry.js +0 -44
  566. package/dist/scripts/testRegistry.js.map +0 -1
@@ -1,55 +1,45 @@
1
+ /** Package version, read once from package.json so callers never hardcode it. */
2
+ export declare const SAFEHANDS_VERSION: string;
3
+ /** User-agent for outbound HTTP calls (GoPlus etc.), version-synced. */
4
+ export declare const SAFEHANDS_USER_AGENT: string;
1
5
  export declare const PHAROS_ENVIRONMENT: string;
2
6
  export declare const CHAIN_ID: number;
3
7
  export declare const RPC_URL: string;
4
8
  export declare const EXPLORER_BASE: string;
5
- export declare const IS_MAINNET = false;
6
- export declare const CHAIN_REGISTRY: {
7
- readonly pharosAtlanticTestnet: {
8
- readonly environment: "atlantic-testnet";
9
- readonly chainId: 688689;
10
- readonly isMainnet: false;
11
- readonly rpcUrlEnv: "PHAROS_RPC_URL";
12
- readonly defaultRpcUrl: "https://atlantic.dplabs-internal.com/";
13
- readonly explorerUrl: "https://atlantic.pharosscan.xyz/";
14
- readonly docsSource: "https://docs.pharosnetwork.xyz/developer-guide/hardhat/write-your-first-nft";
15
- };
16
- };
17
- /** Native PHRS — sentinel address used by DODO API for native token */
18
- export declare const PHRS_ADDRESS: "0xEeeeeEeeeEeEeeEeEeEeeEEEeeeeEeeeeeeeEEeE";
9
+ export declare const IS_MAINNET: boolean;
10
+ /** Native PROS sentinel address used by DODO API for native token */
11
+ export declare const PROS_ADDRESS: "0xEeeeeEeeeEeEeeEeEeEeeEEEeeeeEeeeeeeeEEeE";
19
12
  export declare const USDT_ADDRESS: "0xE7E84B8B4f39C507499c40B4ac199B050e2882d5";
20
- /** Primary USDC for Pharos Skill Engine (from official tokens.json) */
13
+ /** Skill-Engine-compat USDC (official pharos-skill-engine tokens.json); testnet compat list only. */
21
14
  export declare const USDC_ADDRESS: "0xE0BE08c77f415F577A1B3A9aD7a1Df1479564ec8";
22
- /** Alternate USDC listed by Circle's contract addresses page (not in Skill Engine tokens.json) */
15
+ /** Circle's Pharos TESTNET USDC (per Circle's contract-addresses page). Used only as the Atlantic alt-USDC route fallback — never a mainnet claim. */
23
16
  export declare const CIRCLE_USDC_ADDRESS: "0xcfC8330f4BCAB529c625D12781b1C19466A9Fc8B";
24
- /** @deprecated Use USDC_ADDRESS instead. Kept for backward compatibility. */
25
- export declare const X402_DEMO_USDC_ADDRESS: "0xE0BE08c77f415F577A1B3A9aD7a1Df1479564ec8";
26
- export declare const TEST_USDC_ADDRESS: "0xE0BE08c77f415F577A1B3A9aD7a1Df1479564ec8";
27
17
  export declare const WBTC_ADDRESS: "0x0c64F03EEa5c30946D5c55B4b532D08ad74638a4";
28
18
  export declare const WETH_ADDRESS: "0x7d211F77525ea39A0592794f793cC1036eEaccD5";
29
- export declare const WPHRS_ADDRESS: "0x838800b758277CC111B2d48Ab01e5E164f8E9471";
19
+ export declare const WPROS_ADDRESS: "0x838800b758277CC111B2d48Ab01e5E164f8E9471";
30
20
  export declare const TOKEN_REGISTRY: {
31
- readonly PHRS: {
32
- readonly symbol: "PHRS";
21
+ readonly PROS: {
22
+ readonly symbol: "PROS";
33
23
  readonly address: "0xEeeeeEeeeEeEeeEeEeEeeEEEeeeeEeeeeeeeEEeE";
34
24
  readonly decimals: 18;
35
- readonly chainId: number;
36
- readonly environment: string;
25
+ readonly chainId: 688689;
26
+ readonly environment: "atlantic-testnet";
37
27
  readonly isMainnet: false;
38
28
  readonly isCanonical: true;
39
29
  readonly isTestToken: true;
40
- readonly purpose: "native PHRS sentinel address for DODO route API";
30
+ readonly purpose: "native PROS sentinel address for DODO route API";
41
31
  readonly docsSource: "https://docs.pharos.xyz/";
42
32
  };
43
33
  readonly USDC: {
44
34
  readonly symbol: "USDC";
45
35
  readonly address: "0xE0BE08c77f415F577A1B3A9aD7a1Df1479564ec8";
46
36
  readonly decimals: 6;
47
- readonly chainId: number;
48
- readonly environment: string;
37
+ readonly chainId: 688689;
38
+ readonly environment: "atlantic-testnet";
49
39
  readonly isMainnet: false;
50
40
  readonly isCanonical: true;
51
41
  readonly isTestToken: true;
52
- readonly purpose: "Pharos Skill Engine USDC the USDC listed in the official pharos-skill-engine-0.1.0 assets/tokens.json for atlantic-testnet";
42
+ readonly purpose: "Pharos Skill Engine USDC: the USDC listed in the official pharos-skill-engine-0.1.0 assets/tokens.json for pacific-mainnet";
53
43
  readonly docsSource: "pharos-skill-engine-0.1.0/assets/tokens.json";
54
44
  readonly verificationStatus: "DOCS_VERIFIED_FROM_PHAROS_SKILL_ENGINE";
55
45
  };
@@ -57,21 +47,21 @@ export declare const TOKEN_REGISTRY: {
57
47
  readonly symbol: "CIRCLE_USDC";
58
48
  readonly address: "0xcfC8330f4BCAB529c625D12781b1C19466A9Fc8B";
59
49
  readonly decimals: 6;
60
- readonly chainId: number;
61
- readonly environment: string;
50
+ readonly chainId: 688689;
51
+ readonly environment: "atlantic-testnet";
62
52
  readonly isMainnet: false;
63
53
  readonly isCanonical: true;
64
54
  readonly isTestToken: true;
65
- readonly purpose: "Alternate USDC listed by Circle contract addresses page and Pharos docs token registry; not the primary token in Skill Engine tokens.json";
66
- readonly docsSource: "https://developers.circle.com/stablecoins/usdc-contract-addresses and https://docs.pharos.xyz/getting-started/token-registry";
67
- readonly verificationStatus: "CIRCLE_REFERENCED_USDC";
55
+ readonly purpose: "Circle's Pharos TESTNET USDC (Circle contract-addresses page, re-checked 2026-07-10); Atlantic alt-USDC route fallback, not the primary Skill-Engine token";
56
+ readonly docsSource: "https://developers.circle.com/stablecoins/usdc-contract-addresses";
57
+ readonly verificationStatus: "CIRCLE_DOCS_VERIFIED_TESTNET";
68
58
  };
69
59
  readonly USDT: {
70
60
  readonly symbol: "USDT";
71
61
  readonly address: "0xE7E84B8B4f39C507499c40B4ac199B050e2882d5";
72
62
  readonly decimals: 6;
73
- readonly chainId: number;
74
- readonly environment: string;
63
+ readonly chainId: 688689;
64
+ readonly environment: "atlantic-testnet";
75
65
  readonly isMainnet: false;
76
66
  readonly isCanonical: true;
77
67
  readonly isTestToken: true;
@@ -83,8 +73,8 @@ export declare const TOKEN_REGISTRY: {
83
73
  readonly symbol: "WBTC";
84
74
  readonly address: "0x0c64F03EEa5c30946D5c55B4b532D08ad74638a4";
85
75
  readonly decimals: 18;
86
- readonly chainId: number;
87
- readonly environment: string;
76
+ readonly chainId: 688689;
77
+ readonly environment: "atlantic-testnet";
88
78
  readonly isMainnet: false;
89
79
  readonly isCanonical: true;
90
80
  readonly isTestToken: true;
@@ -96,8 +86,8 @@ export declare const TOKEN_REGISTRY: {
96
86
  readonly symbol: "WETH";
97
87
  readonly address: "0x7d211F77525ea39A0592794f793cC1036eEaccD5";
98
88
  readonly decimals: 18;
99
- readonly chainId: number;
100
- readonly environment: string;
89
+ readonly chainId: 688689;
90
+ readonly environment: "atlantic-testnet";
101
91
  readonly isMainnet: false;
102
92
  readonly isCanonical: true;
103
93
  readonly isTestToken: true;
@@ -105,34 +95,129 @@ export declare const TOKEN_REGISTRY: {
105
95
  readonly docsSource: "https://docs.pharos.xyz/getting-started/token-registry";
106
96
  readonly verificationStatus: "DOCS_VERIFIED";
107
97
  };
108
- readonly WPHRS: {
109
- readonly symbol: "WPHRS";
98
+ readonly WPROS: {
99
+ readonly symbol: "WPROS";
110
100
  readonly address: "0x838800b758277CC111B2d48Ab01e5E164f8E9471";
111
101
  readonly decimals: 18;
112
- readonly chainId: number;
113
- readonly environment: string;
102
+ readonly chainId: 688689;
103
+ readonly environment: "atlantic-testnet";
114
104
  readonly isMainnet: false;
115
105
  readonly isCanonical: true;
116
106
  readonly isTestToken: true;
117
- readonly purpose: "canonical Pharos Atlantic Testnet WPHRS (Wrapped PHRS)";
107
+ readonly purpose: "canonical Pharos Atlantic Testnet WPROS (Wrapped PROS)";
108
+ readonly docsSource: "https://docs.pharos.xyz/getting-started/token-registry";
109
+ readonly verificationStatus: "DOCS_VERIFIED";
110
+ };
111
+ };
112
+ export declare const PACIFIC_WPROS_ADDRESS: "0x52c48d4213107b20bc583832b0d951fb9ca8f0b0";
113
+ export declare const PACIFIC_USDC_ADDRESS: "0xc879c018db60520f4355c26ed1a6d572cdac1815";
114
+ export declare const PACIFIC_LINK_ADDRESS: "0x51e2A24742Db77604B881d6781Ee16B5b8fcBE29";
115
+ export declare const PACIFIC_WETH_ADDRESS: "0x1f4b7011Ee3d53969bb67F59428a9ec0477856E9";
116
+ export declare const PACIFIC_MAINNET_TOKEN_REGISTRY: {
117
+ readonly WPROS: {
118
+ readonly symbol: "WPROS";
119
+ readonly name: "Wrapped PROS";
120
+ readonly address: "0x52c48d4213107b20bc583832b0d951fb9ca8f0b0";
121
+ readonly decimals: 18;
122
+ readonly chainId: 1672;
123
+ readonly environment: "pacific-mainnet";
124
+ readonly isMainnet: true;
125
+ readonly isCanonical: true;
126
+ readonly docsSource: "https://docs.pharos.xyz/getting-started/token-registry";
127
+ readonly verificationStatus: "DOCS_VERIFIED";
128
+ };
129
+ readonly USDC: {
130
+ readonly symbol: "USDC";
131
+ readonly name: "USD Coin (Circle-deployed)";
132
+ readonly address: "0xc879c018db60520f4355c26ed1a6d572cdac1815";
133
+ readonly decimals: 6;
134
+ readonly chainId: 1672;
135
+ readonly environment: "pacific-mainnet";
136
+ readonly isMainnet: true;
137
+ readonly isCanonical: true;
138
+ readonly docsSource: "https://docs.pharos.xyz/getting-started/token-registry and https://developers.circle.com/stablecoins/usdc-contract-addresses";
139
+ readonly verificationStatus: "DOCS_VERIFIED";
140
+ };
141
+ readonly LINK: {
142
+ readonly symbol: "LINK";
143
+ readonly name: "ChainLink Token";
144
+ readonly address: "0x51e2A24742Db77604B881d6781Ee16B5b8fcBE29";
145
+ readonly decimals: 18;
146
+ readonly chainId: 1672;
147
+ readonly environment: "pacific-mainnet";
148
+ readonly isMainnet: true;
149
+ readonly isCanonical: true;
150
+ readonly docsSource: "https://docs.pharos.xyz/getting-started/token-registry";
151
+ readonly verificationStatus: "DOCS_VERIFIED";
152
+ };
153
+ readonly WETH: {
154
+ readonly symbol: "WETH";
155
+ readonly name: "Wrapped Ether";
156
+ readonly address: "0x1f4b7011Ee3d53969bb67F59428a9ec0477856E9";
157
+ readonly decimals: 18;
158
+ readonly chainId: 1672;
159
+ readonly environment: "pacific-mainnet";
160
+ readonly isMainnet: true;
161
+ readonly isCanonical: true;
118
162
  readonly docsSource: "https://docs.pharos.xyz/getting-started/token-registry";
119
163
  readonly verificationStatus: "DOCS_VERIFIED";
120
164
  };
121
165
  };
122
166
  export declare const TOKEN_DECIMALS: Record<string, number>;
123
167
  export declare const TOKEN_MAP: Record<string, `0x${string}`>;
168
+ export declare const PACIFIC_TOKEN_MAP: Record<string, `0x${string}`>;
169
+ export declare const PACIFIC_TOKEN_DECIMALS: Record<string, number>;
170
+ /** Network-aware token symbol→address map (mainnet-first). */
171
+ export declare function activeTokenMap(): Record<string, `0x${string}`>;
172
+ /** Network-aware token decimals (mainnet-first). */
173
+ export declare function activeTokenDecimals(): Record<string, number>;
174
+ /** Active canonical USDC address (mainnet 0xc879…, else Skill-Engine USDC). */
175
+ export declare function activeUsdcAddress(): `0x${string}`;
176
+ /** Active network token registry metadata (mainnet-first). */
177
+ export declare function activeTokenRegistry(): Record<string, {
178
+ symbol: string;
179
+ address: `0x${string}`;
180
+ decimals: number;
181
+ [key: string]: unknown;
182
+ }>;
183
+ /** x402 payment assets SafeHands recognizes for the active network. */
184
+ export declare function activeX402AllowedTokenAddresses(): `0x${string}`[];
124
185
  export declare const DODO_APPROVE_ADDRESS: "0x4Cf317b8918FbE8A890c01eDAb7d548555Ac2cE9";
125
186
  export declare const DODO_ROUTE_PROXY_ADDRESS: "0x819829e5CF6e19F9fED92F6b4CC1edF45a2cC4A2";
126
- export declare const POSITION_MANAGER_ADDRESS: "0x1c430d84DD6185b1Ea2d4693e0033799d193542f";
187
+ export declare function activeDodoSpenderAllowlist(): `0x${string}`[];
188
+ export declare function activeDodoRouterAllowlist(): `0x${string}`[];
189
+ export declare function isAllowedDodoSpender(address: string): boolean;
190
+ export declare function isAllowedDodoRouter(address: string): boolean;
127
191
  export declare const DODO_API_BASE: string;
128
192
  export declare const DODO_API_KEY: string | undefined;
129
- export declare const DODO_DEFAULT_SLIPPAGE = 3.225;
193
+ export declare const DODO_DEFAULT_SLIPPAGE = 3;
130
194
  export declare const DODO_ROUTE_ENDPOINT = "/route-service/v2/widget/getdodoroute";
195
+ export declare const OKX_DEX_ROUTER_ADDRESS: "0x75f21a97bd89a9a5683a9f46b5d5b4a080708dea";
196
+ export declare const OKX_DEX_APPROVE_ADDRESS: "0x78466A1488f1883d71cFddd1c621351572dE0a1C";
197
+ export declare function activeOkxSpenderAllowlist(): `0x${string}`[];
198
+ export declare function activeOkxRouterAllowlist(): `0x${string}`[];
199
+ export declare function isAllowedOkxSpender(address: string): boolean;
200
+ export declare function isAllowedOkxRouter(address: string): boolean;
201
+ export declare const OKX_API_BASE: string;
202
+ export declare const OKX_SWAP_ENDPOINT = "/api/v6/dex/aggregator/swap";
203
+ export interface OkxApiCredentials {
204
+ apiKey: string;
205
+ apiSecret: string;
206
+ passphrase: string;
207
+ projectId?: string;
208
+ }
209
+ export declare function okxApiCredentials(): {
210
+ ok: true;
211
+ credentials: OkxApiCredentials;
212
+ } | {
213
+ ok: false;
214
+ missing: string[];
215
+ };
131
216
  export declare const RISK_BLOCK_THRESHOLD = 80;
132
- export declare const RISK_WARN_THRESHOLD = 60;
217
+ export declare const COUNTERPARTY_CRITICAL_THRESHOLD = 90;
133
218
  export declare const MAX_SLIPPAGE_PCT = 5;
134
219
  export declare const MAX_BALANCE_USAGE_PCT = 90;
135
- export declare const MAX_TX_AMOUNT_PHRS: string;
220
+ export declare const MAX_TX_AMOUNT_PROS: string;
136
221
  export declare const MAX_APPROVAL_AMOUNT_USDC: string;
137
222
  export declare const MAX_DAILY_SPEND_USD: string;
138
223
  export declare const MAX_X402_PAYMENT_USDC: string;
@@ -220,85 +305,149 @@ export declare const ERC20_ABI: readonly [{
220
305
  readonly type: "bool";
221
306
  }];
222
307
  }];
223
- export declare const RISK_REGISTRY_ADDRESS: `0x${string}`;
224
- export declare const RISK_REGISTRY_ABI: readonly [{
225
- readonly name: "publish";
308
+ export declare const REQUIRE_AUTHORIZED_AGENT_FOR_WRITE: boolean;
309
+ export declare const REQUIRE_AUTHORIZED_AGENT_FOR_X402: boolean;
310
+ export declare const AUTO_AUTHORIZE_AGENT_WALLET: boolean;
311
+ /** Read-path resolver: env override → Pacific-mainnet baked default → "" (chainId-guarded, fail-closed). */
312
+ export declare function resolveSafeHandsRegistryAddress(chainId?: number): string;
313
+ /**
314
+ * Read-path resolver: env override → Pacific-mainnet baked default → "" (chainId-guarded, fail-closed).
315
+ * NOTE: the legacy SAFEHANDS_RISK_REGISTRY_ADDRESS var aliases the REGISTRY contract only and is
316
+ * deliberately NOT accepted here — the attestation ledger is a different contract, and aliasing
317
+ * both to one address produced ABI-mismatch reads.
318
+ */
319
+ export declare function resolveSafeHandsAttestationAddress(chainId?: number): string;
320
+ export declare const SAFEHANDS_REGISTRY_ADDRESS: string;
321
+ export declare const SAFEHANDS_ATTESTATION_ADDRESS: string;
322
+ export declare const SAFEHANDS_REGISTRY_ABI: readonly [{
323
+ readonly name: "owner";
226
324
  readonly type: "function";
227
- readonly stateMutability: "nonpayable";
325
+ readonly stateMutability: "view";
326
+ readonly inputs: readonly [];
327
+ readonly outputs: readonly [{
328
+ readonly type: "address";
329
+ }];
330
+ }, {
331
+ readonly name: "isAuthorizedOperator";
332
+ readonly type: "function";
333
+ readonly stateMutability: "view";
228
334
  readonly inputs: readonly [{
229
- readonly name: "wallet";
230
335
  readonly type: "address";
231
- }, {
232
- readonly name: "score";
233
- readonly type: "uint256";
234
- }, {
235
- readonly name: "riskLevel";
236
- readonly type: "string";
237
- }, {
238
- readonly name: "recommendation";
239
- readonly type: "string";
240
336
  }];
241
- readonly outputs: readonly [];
337
+ readonly outputs: readonly [{
338
+ readonly type: "bool";
339
+ }];
242
340
  }, {
243
- readonly name: "query";
341
+ readonly name: "isAuthorizedAgent";
244
342
  readonly type: "function";
245
343
  readonly stateMutability: "view";
246
344
  readonly inputs: readonly [{
247
- readonly name: "wallet";
248
345
  readonly type: "address";
249
346
  }];
250
347
  readonly outputs: readonly [{
251
- readonly name: "";
252
- readonly type: "tuple";
253
- readonly components: readonly [{
254
- readonly name: "score";
255
- readonly type: "uint256";
256
- }, {
257
- readonly name: "riskLevel";
258
- readonly type: "string";
259
- }, {
260
- readonly name: "recommendation";
261
- readonly type: "string";
262
- }, {
263
- readonly name: "timestamp";
264
- readonly type: "uint256";
265
- }, {
266
- readonly name: "assessedBy";
267
- readonly type: "address";
268
- }];
348
+ readonly type: "bool";
269
349
  }];
270
350
  }, {
271
351
  readonly name: "setAuthorizedAgent";
272
352
  readonly type: "function";
273
353
  readonly stateMutability: "nonpayable";
274
354
  readonly inputs: readonly [{
275
- readonly name: "agent";
276
355
  readonly type: "address";
356
+ readonly name: "agent";
277
357
  }, {
358
+ readonly type: "bool";
278
359
  readonly name: "authorized";
360
+ }];
361
+ readonly outputs: readonly [];
362
+ }, {
363
+ readonly name: "setAuthorizedAgents";
364
+ readonly type: "function";
365
+ readonly stateMutability: "nonpayable";
366
+ readonly inputs: readonly [{
367
+ readonly type: "address[]";
368
+ readonly name: "agents";
369
+ }, {
279
370
  readonly type: "bool";
371
+ readonly name: "authorized";
280
372
  }];
281
373
  readonly outputs: readonly [];
282
374
  }, {
283
- readonly anonymous: false;
284
- readonly name: "RiskPublished";
285
- readonly type: "event";
375
+ readonly name: "setOperator";
376
+ readonly type: "function";
377
+ readonly stateMutability: "nonpayable";
286
378
  readonly inputs: readonly [{
287
- readonly indexed: true;
288
- readonly name: "wallet";
289
379
  readonly type: "address";
380
+ readonly name: "operator";
290
381
  }, {
291
- readonly indexed: false;
292
- readonly name: "score";
293
- readonly type: "uint256";
294
- }, {
295
- readonly indexed: false;
296
- readonly name: "riskLevel";
382
+ readonly type: "bool";
383
+ readonly name: "authorized";
384
+ }];
385
+ readonly outputs: readonly [];
386
+ }, {
387
+ readonly name: "currentMerkleRoot";
388
+ readonly type: "function";
389
+ readonly stateMutability: "view";
390
+ readonly inputs: readonly [];
391
+ readonly outputs: readonly [{
392
+ readonly type: "bytes32";
393
+ }];
394
+ }, {
395
+ readonly name: "currentDataURI";
396
+ readonly type: "function";
397
+ readonly stateMutability: "view";
398
+ readonly inputs: readonly [];
399
+ readonly outputs: readonly [{
297
400
  readonly type: "string";
401
+ }];
402
+ }, {
403
+ readonly name: "commitRiskRoot";
404
+ readonly type: "function";
405
+ readonly stateMutability: "nonpayable";
406
+ readonly inputs: readonly [{
407
+ readonly type: "bytes32";
408
+ readonly name: "root";
298
409
  }, {
299
- readonly indexed: false;
300
- readonly name: "assessedBy";
410
+ readonly type: "string";
411
+ readonly name: "dataURI";
412
+ }];
413
+ readonly outputs: readonly [];
414
+ }, {
415
+ readonly name: "verifyRiskRecord";
416
+ readonly type: "function";
417
+ readonly stateMutability: "view";
418
+ readonly inputs: readonly [{
301
419
  readonly type: "address";
420
+ readonly name: "target";
421
+ }, {
422
+ readonly type: "bytes32";
423
+ readonly name: "actionHash";
424
+ }, {
425
+ readonly type: "uint8";
426
+ readonly name: "score";
427
+ }, {
428
+ readonly type: "uint8";
429
+ readonly name: "level";
430
+ }, {
431
+ readonly type: "uint8";
432
+ readonly name: "recommendation";
433
+ }, {
434
+ readonly type: "bytes32";
435
+ readonly name: "policyVersionHash";
436
+ }, {
437
+ readonly type: "bytes32";
438
+ readonly name: "evidenceHash";
439
+ }, {
440
+ readonly type: "uint64";
441
+ readonly name: "expiresAt";
442
+ }, {
443
+ readonly type: "bytes32[]";
444
+ readonly name: "proof";
445
+ }];
446
+ readonly outputs: readonly [{
447
+ readonly type: "bool";
302
448
  }];
303
449
  }];
450
+ export declare const PACIFIC_CANONICAL_CONTRACTS: string[];
451
+ export declare const ATLANTIC_CANONICAL_CONTRACTS: string[];
452
+ export declare function isCanonicalInfrastructure(address: string, isMainnet: boolean): boolean;
304
453
  //# sourceMappingURL=constants.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../src/lib/constants.ts"],"names":[],"mappings":"AAWA,eAAO,MAAM,kBAAkB,QAAuD,CAAC;AACvF,eAAO,MAAM,QAAQ,QAAkD,CAAC;AACxE,eAAO,MAAM,OAAO,QAAwE,CAAC;AAC7F,eAAO,MAAM,aAAa,QAA4E,CAAC;AACvG,eAAO,MAAM,UAAU,QAAQ,CAAC;AAEhC,eAAO,MAAM,cAAc;;;;;;;;;;CAUjB,CAAC;AASX,uEAAuE;AACvE,eAAO,MAAM,YAAY,EAAG,4CAAqD,CAAC;AAClF,eAAO,MAAM,YAAY,EAAG,4CAAqD,CAAC;AAElF,uEAAuE;AACvE,eAAO,MAAM,YAAY,EAAG,4CAAqD,CAAC;AAElF,kGAAkG;AAClG,eAAO,MAAM,mBAAmB,EAAG,4CAAqD,CAAC;AAEzF,6EAA6E;AAC7E,eAAO,MAAM,sBAAsB,8CAAe,CAAC;AACnD,eAAO,MAAM,iBAAiB,8CAAe,CAAC;AAE9C,eAAO,MAAM,YAAY,EAAG,4CAAqD,CAAC;AAClF,eAAO,MAAM,YAAY,EAAG,4CAAqD,CAAC;AAClF,eAAO,MAAM,aAAa,EAAG,4CAAqD,CAAC;AAEnF,eAAO,MAAM,cAAc;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA2FjB,CAAC;AAIX,eAAO,MAAM,cAAc,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAejD,CAAC;AAIF,eAAO,MAAM,SAAS,EAAE,MAAM,CAAC,MAAM,EAAE,KAAK,MAAM,EAAE,CAQnD,CAAC;AAIF,eAAO,MAAM,oBAAoB,EAAG,4CAAqD,CAAC;AAC1F,eAAO,MAAM,wBAAwB,EAAG,4CAAqD,CAAC;AAC9F,eAAO,MAAM,wBAAwB,EAAG,4CAAqD,CAAC;AAI9F,eAAO,MAAM,aAAa,QAAuD,CAAC;AAClF,eAAO,MAAM,YAAY,oBAA2B,CAAC;AACrD,eAAO,MAAM,qBAAqB,QAAQ,CAAC;AAC3C,eAAO,MAAM,mBAAmB,0CAA0C,CAAC;AAI3E,eAAO,MAAM,oBAAoB,KAAK,CAAC;AACvC,eAAO,MAAM,mBAAmB,KAAK,CAAC;AACtC,eAAO,MAAM,gBAAgB,IAAI,CAAC;AAClC,eAAO,MAAM,qBAAqB,KAAK,CAAC;AAIxC,eAAO,MAAM,kBAAkB,QAA0C,CAAC;AAC1E,eAAO,MAAM,wBAAwB,QAA+C,CAAC;AACrF,eAAO,MAAM,mBAAmB,QAA0C,CAAC;AAC3E,eAAO,MAAM,qBAAqB,QAA8C,CAAC;AACjF,eAAO,MAAM,0BAA0B,EAA+D,KAAK,MAAM,EAAE,CAAC;AAIpH,eAAO,MAAM,YAAY;;;;;;CAMf,CAAC;AAIX,eAAO,MAAM,SAAS;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAoDZ,CAAC;AAIX,eAAO,MAAM,qBAAqB,EACiB,KAAK,MAAM,EAAE,CAAC;AAEjE,eAAO,MAAM,iBAAiB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAqDpB,CAAC"}
1
+ {"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../src/lib/constants.ts"],"names":[],"mappings":"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"}