@oobe-protocol-labs/synapse-client-sdk 2.0.0 → 2.0.5

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 (621) hide show
  1. package/CHANGELOG.md +103 -0
  2. package/README.md +2 -2
  3. package/dist/cjs/ai/actions/server.d.ts.map +1 -1
  4. package/dist/cjs/ai/actions/server.js +5 -3
  5. package/dist/cjs/ai/actions/server.js.map +1 -1
  6. package/dist/cjs/ai/gateway/index.d.ts.map +1 -1
  7. package/dist/cjs/ai/gateway/index.js.map +1 -1
  8. package/dist/cjs/ai/gateway/x402/client.d.ts.map +1 -1
  9. package/dist/cjs/ai/gateway/x402/client.js +0 -3
  10. package/dist/cjs/ai/gateway/x402/client.js.map +1 -1
  11. package/dist/cjs/ai/gateway/x402/paywall.d.ts.map +1 -1
  12. package/dist/cjs/ai/gateway/x402/paywall.js.map +1 -1
  13. package/dist/cjs/ai/index.d.ts +1 -1
  14. package/dist/cjs/ai/index.d.ts.map +1 -1
  15. package/dist/cjs/ai/index.js +12 -28
  16. package/dist/cjs/ai/index.js.map +1 -1
  17. package/dist/cjs/ai/intents/executor.js.map +1 -1
  18. package/dist/cjs/ai/intents/parser.d.ts.map +1 -1
  19. package/dist/cjs/ai/intents/parser.js.map +1 -1
  20. package/dist/cjs/ai/intents/planner.js.map +1 -1
  21. package/dist/cjs/ai/mcp/client.js +1 -1
  22. package/dist/cjs/ai/mcp/client.js.map +1 -1
  23. package/dist/cjs/ai/persistence/postgresql.js.map +1 -1
  24. package/dist/cjs/ai/plugins/registry.js +1 -1
  25. package/dist/cjs/ai/plugins/registry.js.map +1 -1
  26. package/dist/cjs/ai/sap/client.d.ts +197 -0
  27. package/dist/cjs/ai/sap/client.d.ts.map +1 -0
  28. package/dist/cjs/ai/sap/client.js +334 -0
  29. package/dist/cjs/ai/sap/client.js.map +1 -0
  30. package/dist/cjs/ai/sap/index.d.ts +69 -52
  31. package/dist/cjs/ai/sap/index.d.ts.map +1 -1
  32. package/dist/cjs/ai/sap/index.js +73 -77
  33. package/dist/cjs/ai/sap/index.js.map +1 -1
  34. package/dist/cjs/ai/sap/provider.d.ts +180 -0
  35. package/dist/cjs/ai/sap/provider.d.ts.map +1 -0
  36. package/dist/cjs/ai/sap/provider.js +219 -0
  37. package/dist/cjs/ai/sap/provider.js.map +1 -0
  38. package/dist/cjs/ai/sap/types.d.ts +120 -384
  39. package/dist/cjs/ai/sap/types.d.ts.map +1 -1
  40. package/dist/cjs/ai/sap/types.js +20 -200
  41. package/dist/cjs/ai/sap/types.js.map +1 -1
  42. package/dist/cjs/ai/tools/protocols/jupiter-onchain/tools.d.ts.map +1 -1
  43. package/dist/cjs/ai/tools/protocols/jupiter-onchain/tools.js.map +1 -1
  44. package/dist/cjs/ai/tools/protocols/shared.d.ts.map +1 -1
  45. package/dist/cjs/ai/tools/protocols/shared.js +4 -1
  46. package/dist/cjs/ai/tools/protocols/shared.js.map +1 -1
  47. package/dist/cjs/ai/tools/protocols/solana-programs/tools.js.map +1 -1
  48. package/dist/cjs/context/container.d.ts.map +1 -1
  49. package/dist/cjs/context/container.js.map +1 -1
  50. package/dist/cjs/grpc/parser/geyser-parser.d.ts.map +1 -1
  51. package/dist/cjs/grpc/parser/geyser-parser.js.map +1 -1
  52. package/dist/cjs/next/index.d.ts.map +1 -1
  53. package/dist/cjs/next/index.js +7 -1
  54. package/dist/cjs/next/index.js.map +1 -1
  55. package/dist/cjs/programs/index.d.ts.map +1 -1
  56. package/dist/cjs/programs/index.js.map +1 -1
  57. package/dist/cjs/utils/helpers.js.map +1 -1
  58. package/dist/docs/classes/AccountReader.html +18 -18
  59. package/dist/docs/classes/AccountsClient.html +10 -10
  60. package/dist/docs/classes/AsyncProviderError.html +4 -4
  61. package/dist/docs/classes/CircularDependencyError.html +4 -4
  62. package/dist/docs/classes/DasClient.html +13 -13
  63. package/dist/docs/classes/GeyserParser.html +17 -17
  64. package/dist/docs/classes/GrpcTransport.html +6 -6
  65. package/dist/docs/classes/HttpTransport.html +4 -4
  66. package/dist/docs/classes/InstructionWriter.html +11 -11
  67. package/dist/docs/classes/MemoryGuard.html +9 -9
  68. package/dist/docs/classes/NetworkError.html +5 -5
  69. package/dist/docs/classes/RefRegistry.html +11 -11
  70. package/dist/docs/classes/RefReleasedError.html +4 -4
  71. package/dist/docs/classes/RpcMethodNotFoundError.html +4 -4
  72. package/dist/docs/classes/ServiceNotFoundError.html +4 -4
  73. package/dist/docs/classes/ServiceRef.html +13 -13
  74. package/dist/docs/classes/SolanaRpc.html +55 -55
  75. package/dist/docs/classes/SynapseClient.html +15 -15
  76. package/dist/docs/classes/SynapseContext.html +27 -27
  77. package/dist/docs/classes/SynapseError.html +4 -4
  78. package/dist/docs/classes/TimeoutError.html +4 -4
  79. package/dist/docs/classes/UpstreamError.html +6 -6
  80. package/dist/docs/classes/WeakServiceRef.html +4 -4
  81. package/dist/docs/classes/WsClient.html +10 -10
  82. package/dist/docs/enums/SynapseNetwork.html +2 -2
  83. package/dist/docs/enums/SynapseRegion.html +2 -2
  84. package/dist/docs/enums/TokenExtensionType.html +2 -2
  85. package/dist/docs/functions/Epoch-1.html +1 -1
  86. package/dist/docs/functions/Lamports-2.html +1 -1
  87. package/dist/docs/functions/Pubkey-1.html +1 -1
  88. package/dist/docs/functions/Sig.html +1 -1
  89. package/dist/docs/functions/Slot-1.html +1 -1
  90. package/dist/docs/functions/UnixTs.html +1 -1
  91. package/dist/docs/functions/autoSelectRegion.html +1 -1
  92. package/dist/docs/functions/autoWire.html +1 -1
  93. package/dist/docs/functions/base58Encode.html +1 -1
  94. package/dist/docs/functions/base64ToBytes.html +1 -1
  95. package/dist/docs/functions/bigIntReplacer.html +1 -1
  96. package/dist/docs/functions/chunk.html +1 -1
  97. package/dist/docs/functions/computeBalanceChanges.html +1 -1
  98. package/dist/docs/functions/computeTokenBalanceChanges.html +1 -1
  99. package/dist/docs/functions/createBareContext.html +1 -1
  100. package/dist/docs/functions/createBinding.html +1 -1
  101. package/dist/docs/functions/createBoundHook.html +1 -1
  102. package/dist/docs/functions/createReactAdapter.html +1 -1
  103. package/dist/docs/functions/createRefHook.html +1 -1
  104. package/dist/docs/functions/createServerMiddleware.html +1 -1
  105. package/dist/docs/functions/createServiceHook.html +1 -1
  106. package/dist/docs/functions/createSingleton.html +1 -1
  107. package/dist/docs/functions/createSynapse.html +1 -1
  108. package/dist/docs/functions/createSynapseContext.html +1 -1
  109. package/dist/docs/functions/createToken.html +1 -1
  110. package/dist/docs/functions/decodeBase58.html +1 -1
  111. package/dist/docs/functions/decodeLookupTable.html +1 -1
  112. package/dist/docs/functions/decodeMint.html +1 -1
  113. package/dist/docs/functions/decodeMultisig.html +1 -1
  114. package/dist/docs/functions/decodeNonceAccount.html +1 -1
  115. package/dist/docs/functions/decodeStakeAccount.html +1 -1
  116. package/dist/docs/functions/decodeToken2022Account.html +1 -1
  117. package/dist/docs/functions/decodeToken2022Mint.html +1 -1
  118. package/dist/docs/functions/decodeTokenAccount.html +1 -1
  119. package/dist/docs/functions/encodeBase58.html +1 -1
  120. package/dist/docs/functions/fetchLookupTable.html +1 -1
  121. package/dist/docs/functions/fetchMint.html +1 -1
  122. package/dist/docs/functions/fetchNonceAccount.html +1 -1
  123. package/dist/docs/functions/fetchStakeAccount.html +1 -1
  124. package/dist/docs/functions/fetchTokenAccount.html +1 -1
  125. package/dist/docs/functions/fetchTokenAccountsByOwner.html +1 -1
  126. package/dist/docs/functions/fromKitAddress.html +1 -1
  127. package/dist/docs/functions/getAccountInfo.html +1 -1
  128. package/dist/docs/functions/getAsset.html +1 -1
  129. package/dist/docs/functions/getAssetBatch.html +1 -1
  130. package/dist/docs/functions/getAssetProof.html +1 -1
  131. package/dist/docs/functions/getAssetProofBatch.html +1 -1
  132. package/dist/docs/functions/getAssetsByAuthority.html +1 -1
  133. package/dist/docs/functions/getAssetsByCreator.html +1 -1
  134. package/dist/docs/functions/getAssetsByGroup.html +1 -1
  135. package/dist/docs/functions/getAssetsByOwner.html +1 -1
  136. package/dist/docs/functions/getBalance.html +1 -1
  137. package/dist/docs/functions/getBlock.html +1 -1
  138. package/dist/docs/functions/getBlockCommitment.html +1 -1
  139. package/dist/docs/functions/getBlockHeight.html +1 -1
  140. package/dist/docs/functions/getBlockProduction.html +1 -1
  141. package/dist/docs/functions/getBlockTime.html +1 -1
  142. package/dist/docs/functions/getBlocks.html +1 -1
  143. package/dist/docs/functions/getBlocksWithLimit.html +1 -1
  144. package/dist/docs/functions/getClusterNodes.html +1 -1
  145. package/dist/docs/functions/getContext.html +1 -1
  146. package/dist/docs/functions/getDecodedAccount.html +1 -1
  147. package/dist/docs/functions/getDecodedAccounts.html +1 -1
  148. package/dist/docs/functions/getEnvironment.html +1 -1
  149. package/dist/docs/functions/getEpochInfo.html +1 -1
  150. package/dist/docs/functions/getEpochSchedule.html +1 -1
  151. package/dist/docs/functions/getFeeForMessage.html +1 -1
  152. package/dist/docs/functions/getFirstAvailableBlock.html +1 -1
  153. package/dist/docs/functions/getGenesisHash.html +1 -1
  154. package/dist/docs/functions/getHealth.html +1 -1
  155. package/dist/docs/functions/getHighestSnapshotSlot.html +1 -1
  156. package/dist/docs/functions/getIdentity.html +1 -1
  157. package/dist/docs/functions/getInflationGovernor.html +1 -1
  158. package/dist/docs/functions/getInflationRate.html +1 -1
  159. package/dist/docs/functions/getInflationReward.html +1 -1
  160. package/dist/docs/functions/getLargestAccounts.html +1 -1
  161. package/dist/docs/functions/getLatestBlockhash.html +1 -1
  162. package/dist/docs/functions/getLeaderSchedule.html +1 -1
  163. package/dist/docs/functions/getMaxRetransmitSlot.html +1 -1
  164. package/dist/docs/functions/getMaxShredInsertSlot.html +1 -1
  165. package/dist/docs/functions/getMinimumBalanceForRentExemption.html +1 -1
  166. package/dist/docs/functions/getMultipleAccounts.html +1 -1
  167. package/dist/docs/functions/getProgramAccounts.html +1 -1
  168. package/dist/docs/functions/getProgramCategory.html +1 -1
  169. package/dist/docs/functions/getRecentPerformanceSamples.html +1 -1
  170. package/dist/docs/functions/getRecentPrioritizationFees.html +1 -1
  171. package/dist/docs/functions/getSignatureStatuses.html +1 -1
  172. package/dist/docs/functions/getSignaturesForAddress.html +1 -1
  173. package/dist/docs/functions/getSignaturesForAsset.html +1 -1
  174. package/dist/docs/functions/getSlot.html +1 -1
  175. package/dist/docs/functions/getSlotLeader.html +1 -1
  176. package/dist/docs/functions/getSlotLeaders.html +1 -1
  177. package/dist/docs/functions/getStakeActivation.html +1 -1
  178. package/dist/docs/functions/getStakeMinimumDelegation.html +1 -1
  179. package/dist/docs/functions/getSupply.html +1 -1
  180. package/dist/docs/functions/getTokenAccountBalance.html +1 -1
  181. package/dist/docs/functions/getTokenAccounts.html +1 -1
  182. package/dist/docs/functions/getTokenAccountsByDelegate.html +1 -1
  183. package/dist/docs/functions/getTokenAccountsByOwner.html +1 -1
  184. package/dist/docs/functions/getTokenLargestAccounts.html +1 -1
  185. package/dist/docs/functions/getTokenSupply.html +1 -1
  186. package/dist/docs/functions/getTransaction.html +1 -1
  187. package/dist/docs/functions/getTransactionCount.html +1 -1
  188. package/dist/docs/functions/getVersion.html +1 -1
  189. package/dist/docs/functions/getVoteAccounts.html +1 -1
  190. package/dist/docs/functions/isBlockhashValid.html +1 -1
  191. package/dist/docs/functions/isBrowser.html +1 -1
  192. package/dist/docs/functions/isDisposable.html +1 -1
  193. package/dist/docs/functions/isProgramInCategory.html +1 -1
  194. package/dist/docs/functions/isServer.html +1 -1
  195. package/dist/docs/functions/isValidPubkey.html +1 -1
  196. package/dist/docs/functions/isValidSignature.html +1 -1
  197. package/dist/docs/functions/lamportsToSol.html +1 -1
  198. package/dist/docs/functions/listEndpoints.html +1 -1
  199. package/dist/docs/functions/listNetworks.html +1 -1
  200. package/dist/docs/functions/listRegions.html +1 -1
  201. package/dist/docs/functions/minimumLedgerSlot.html +1 -1
  202. package/dist/docs/functions/parseAccountUpdate.html +1 -1
  203. package/dist/docs/functions/parseBlockMeta.html +1 -1
  204. package/dist/docs/functions/parseEntry.html +1 -1
  205. package/dist/docs/functions/parseGeyserUpdate.html +1 -1
  206. package/dist/docs/functions/parseSlotUpdate.html +1 -1
  207. package/dist/docs/functions/parseTimestamp.html +1 -1
  208. package/dist/docs/functions/parseTransaction.html +1 -1
  209. package/dist/docs/functions/probeLatency.html +1 -1
  210. package/dist/docs/functions/rawBufferToBase58.html +1 -1
  211. package/dist/docs/functions/rawBufferToBase64.html +1 -1
  212. package/dist/docs/functions/rawBufferToBytes.html +1 -1
  213. package/dist/docs/functions/rawBufferToHex.html +1 -1
  214. package/dist/docs/functions/readonly.html +1 -1
  215. package/dist/docs/functions/readonlySigner.html +1 -1
  216. package/dist/docs/functions/requestAirdrop.html +1 -1
  217. package/dist/docs/functions/resolveEndpoint.html +1 -1
  218. package/dist/docs/functions/resolveProgram.html +1 -1
  219. package/dist/docs/functions/resolveProgramBatch.html +1 -1
  220. package/dist/docs/functions/retry.html +1 -1
  221. package/dist/docs/functions/searchAssets.html +1 -1
  222. package/dist/docs/functions/sendTransaction.html +1 -1
  223. package/dist/docs/functions/setGlobalContext.html +1 -1
  224. package/dist/docs/functions/simulateTransaction.html +1 -1
  225. package/dist/docs/functions/sleep.html +1 -1
  226. package/dist/docs/functions/solToLamports.html +1 -1
  227. package/dist/docs/functions/toClientConfig.html +1 -1
  228. package/dist/docs/functions/toJsonSafe.html +1 -1
  229. package/dist/docs/functions/toKitAddress.html +1 -1
  230. package/dist/docs/functions/toKitInstruction.html +1 -1
  231. package/dist/docs/functions/toKitLamports.html +1 -1
  232. package/dist/docs/functions/toKitSignatureString.html +1 -1
  233. package/dist/docs/functions/tryGetContext.html +1 -1
  234. package/dist/docs/functions/tryUseService.html +1 -1
  235. package/dist/docs/functions/useBoundServices.html +1 -1
  236. package/dist/docs/functions/useService.html +1 -1
  237. package/dist/docs/functions/useSharedRef.html +1 -1
  238. package/dist/docs/functions/withRef.html +1 -1
  239. package/dist/docs/functions/withRefAsync.html +1 -1
  240. package/dist/docs/functions/writable.html +1 -1
  241. package/dist/docs/functions/writableSigner.html +1 -1
  242. package/dist/docs/index.html +2 -2
  243. package/dist/docs/interfaces/AccountInfo.html +7 -7
  244. package/dist/docs/interfaces/AccountMeta.html +4 -4
  245. package/dist/docs/interfaces/AccountNotification.html +2 -2
  246. package/dist/docs/interfaces/AccountSubParams.html +2 -2
  247. package/dist/docs/interfaces/AddMemoParams.html +5 -5
  248. package/dist/docs/interfaces/AdvanceNonceParams.html +3 -3
  249. package/dist/docs/interfaces/AliasProvider.html +2 -2
  250. package/dist/docs/interfaces/AllocateParams.html +3 -3
  251. package/dist/docs/interfaces/ApproveCheckedParams.html +9 -9
  252. package/dist/docs/interfaces/ApproveParams.html +7 -7
  253. package/dist/docs/interfaces/AssetSignatureInfo.html +2 -2
  254. package/dist/docs/interfaces/AssetSignaturesPage.html +2 -2
  255. package/dist/docs/interfaces/AssignParams.html +3 -3
  256. package/dist/docs/interfaces/AsyncFactoryProvider.html +2 -2
  257. package/dist/docs/interfaces/AuthorizeNonceParams.html +4 -4
  258. package/dist/docs/interfaces/BalanceChange.html +6 -6
  259. package/dist/docs/interfaces/BlockProduction.html +3 -3
  260. package/dist/docs/interfaces/BlockResult.html +2 -2
  261. package/dist/docs/interfaces/BlockReward.html +2 -2
  262. package/dist/docs/interfaces/BlockhashResult.html +2 -2
  263. package/dist/docs/interfaces/BurnCheckedParams.html +8 -8
  264. package/dist/docs/interfaces/BurnParams.html +7 -7
  265. package/dist/docs/interfaces/CallOptions.html +6 -6
  266. package/dist/docs/interfaces/ClassProvider.html +2 -2
  267. package/dist/docs/interfaces/CloseAccountParams.html +6 -6
  268. package/dist/docs/interfaces/ConfirmedTransaction.html +6 -6
  269. package/dist/docs/interfaces/ContactInfo.html +2 -2
  270. package/dist/docs/interfaces/ContextAdapter.html +5 -5
  271. package/dist/docs/interfaces/ContextEvents.html +6 -6
  272. package/dist/docs/interfaces/ContextModule.html +3 -3
  273. package/dist/docs/interfaces/CreateATAParams.html +6 -6
  274. package/dist/docs/interfaces/CreateAccountParams.html +6 -6
  275. package/dist/docs/interfaces/CreateAccountWithSeedParams.html +8 -8
  276. package/dist/docs/interfaces/CreateSynapseContextOpts.html +4 -4
  277. package/dist/docs/interfaces/DasAsset.html +2 -2
  278. package/dist/docs/interfaces/DasAssetProof.html +2 -2
  279. package/dist/docs/interfaces/DasAuthority.html +2 -2
  280. package/dist/docs/interfaces/DasCompression.html +2 -2
  281. package/dist/docs/interfaces/DasContent.html +2 -2
  282. package/dist/docs/interfaces/DasCreator.html +2 -2
  283. package/dist/docs/interfaces/DasFile.html +2 -2
  284. package/dist/docs/interfaces/DasGrouping.html +2 -2
  285. package/dist/docs/interfaces/DasOpts.html +2 -2
  286. package/dist/docs/interfaces/DasOwnership.html +2 -2
  287. package/dist/docs/interfaces/DasPage.html +2 -2
  288. package/dist/docs/interfaces/DasRoyalty.html +2 -2
  289. package/dist/docs/interfaces/DasSearchParams.html +2 -2
  290. package/dist/docs/interfaces/DasSupply.html +2 -2
  291. package/dist/docs/interfaces/DataSlice.html +3 -3
  292. package/dist/docs/interfaces/DecodedAccountResult.html +4 -4
  293. package/dist/docs/interfaces/DecodedLookupTable.html +8 -8
  294. package/dist/docs/interfaces/DecodedMint.html +6 -6
  295. package/dist/docs/interfaces/DecodedMultisig.html +5 -5
  296. package/dist/docs/interfaces/DecodedNonceAccount.html +6 -6
  297. package/dist/docs/interfaces/DecodedStakeAccount.html +2 -2
  298. package/dist/docs/interfaces/DecodedToken2022Account.html +9 -9
  299. package/dist/docs/interfaces/DecodedToken2022Mint.html +6 -6
  300. package/dist/docs/interfaces/DecodedTokenAccount.html +9 -9
  301. package/dist/docs/interfaces/DefaultAccountStateExt.html +2 -2
  302. package/dist/docs/interfaces/Disposable.html +2 -2
  303. package/dist/docs/interfaces/EndpointConnectConfig.html +5 -5
  304. package/dist/docs/interfaces/EpochInfo.html +7 -7
  305. package/dist/docs/interfaces/EpochSchedule.html +2 -2
  306. package/dist/docs/interfaces/FactoryProvider.html +2 -2
  307. package/dist/docs/interfaces/FetchedMint.html +6 -6
  308. package/dist/docs/interfaces/FetchedTokenAccount.html +6 -6
  309. package/dist/docs/interfaces/FreezeThawParams.html +6 -6
  310. package/dist/docs/interfaces/GetAccountInfoOpts.html +6 -6
  311. package/dist/docs/interfaces/GetAssetsByAuthorityParams.html +2 -2
  312. package/dist/docs/interfaces/GetAssetsByCreatorParams.html +2 -2
  313. package/dist/docs/interfaces/GetAssetsByGroupParams.html +2 -2
  314. package/dist/docs/interfaces/GetAssetsByOwnerParams.html +2 -2
  315. package/dist/docs/interfaces/GetBlockOpts.html +6 -6
  316. package/dist/docs/interfaces/GetBlockProductionOpts.html +6 -6
  317. package/dist/docs/interfaces/GetMultipleAccountsOpts.html +6 -6
  318. package/dist/docs/interfaces/GetProgramAccountsOpts.html +6 -6
  319. package/dist/docs/interfaces/GetSignatureStatusesOpts.html +6 -6
  320. package/dist/docs/interfaces/GetSignaturesOpts.html +7 -7
  321. package/dist/docs/interfaces/GetTokenAccountsParams.html +2 -2
  322. package/dist/docs/interfaces/GetTransactionOpts.html +6 -6
  323. package/dist/docs/interfaces/GeyserParserConfig.html +6 -6
  324. package/dist/docs/interfaces/GeyserParserEvents.html +9 -9
  325. package/dist/docs/interfaces/GeyserParserStats.html +2 -2
  326. package/dist/docs/interfaces/GrpcCallOptions.html +2 -2
  327. package/dist/docs/interfaces/GrpcTransportConfig.html +6 -6
  328. package/dist/docs/interfaces/ImmutableOwnerExt.html +2 -2
  329. package/dist/docs/interfaces/InflationGovernor.html +2 -2
  330. package/dist/docs/interfaces/InflationRate.html +2 -2
  331. package/dist/docs/interfaces/InflationReward.html +2 -2
  332. package/dist/docs/interfaces/InitializeAccountParams.html +5 -5
  333. package/dist/docs/interfaces/InitializeMintParams.html +6 -6
  334. package/dist/docs/interfaces/InitializeNonceParams.html +3 -3
  335. package/dist/docs/interfaces/InterestBearingConfigExt.html +2 -2
  336. package/dist/docs/interfaces/LatencyProbeResult.html +2 -2
  337. package/dist/docs/interfaces/LeakReport.html +5 -5
  338. package/dist/docs/interfaces/LogsNotification.html +2 -2
  339. package/dist/docs/interfaces/LogsSubParams.html +2 -2
  340. package/dist/docs/interfaces/MemoTransferExt.html +2 -2
  341. package/dist/docs/interfaces/MemoryGuardConfig.html +4 -4
  342. package/dist/docs/interfaces/MetadataPointerExt.html +2 -2
  343. package/dist/docs/interfaces/MintCloseAuthorityExt.html +2 -2
  344. package/dist/docs/interfaces/MintToCheckedParams.html +8 -8
  345. package/dist/docs/interfaces/MintToParams.html +7 -7
  346. package/dist/docs/interfaces/NonTransferableExt.html +2 -2
  347. package/dist/docs/interfaces/PaginationOpts.html +2 -2
  348. package/dist/docs/interfaces/ParsedAccountUpdate.html +16 -16
  349. package/dist/docs/interfaces/ParsedBlockMeta.html +2 -2
  350. package/dist/docs/interfaces/ParsedEntry.html +2 -2
  351. package/dist/docs/interfaces/ParsedInstruction.html +9 -9
  352. package/dist/docs/interfaces/ParsedSlotUpdate.html +3 -3
  353. package/dist/docs/interfaces/ParsedTransaction.html +19 -19
  354. package/dist/docs/interfaces/PerfSample.html +2 -2
  355. package/dist/docs/interfaces/PermanentDelegateExt.html +2 -2
  356. package/dist/docs/interfaces/ProgramAccount.html +2 -2
  357. package/dist/docs/interfaces/ProgramNotification.html +2 -2
  358. package/dist/docs/interfaces/ProgramSubParams.html +2 -2
  359. package/dist/docs/interfaces/ProgramsBundle.html +33 -33
  360. package/dist/docs/interfaces/RawAccountInfo.html +2 -2
  361. package/dist/docs/interfaces/RawBlockMeta.html +2 -2
  362. package/dist/docs/interfaces/RawBuffer.html +2 -2
  363. package/dist/docs/interfaces/RawCompiledInstruction.html +2 -2
  364. package/dist/docs/interfaces/RawEntry.html +2 -2
  365. package/dist/docs/interfaces/RawGeyserUpdate.html +2 -2
  366. package/dist/docs/interfaces/RawInnerInstruction.html +2 -2
  367. package/dist/docs/interfaces/RawSlotInfo.html +2 -2
  368. package/dist/docs/interfaces/RawTimestamp.html +2 -2
  369. package/dist/docs/interfaces/RawTokenBalance.html +2 -2
  370. package/dist/docs/interfaces/RawTransactionInfo.html +2 -2
  371. package/dist/docs/interfaces/ReactAdapterConfig.html +2 -2
  372. package/dist/docs/interfaces/RecoverNestedParams.html +7 -7
  373. package/dist/docs/interfaces/RefRegistryConfig.html +2 -2
  374. package/dist/docs/interfaces/RefStats.html +7 -7
  375. package/dist/docs/interfaces/RequestHeapFrameParams.html +2 -2
  376. package/dist/docs/interfaces/ResolveMiddleware.html +1 -1
  377. package/dist/docs/interfaces/RevokeParams.html +5 -5
  378. package/dist/docs/interfaces/RootNotification.html +2 -2
  379. package/dist/docs/interfaces/RootSubParams.html +1 -1
  380. package/dist/docs/interfaces/RpcContext.html +2 -2
  381. package/dist/docs/interfaces/RpcError.html +4 -4
  382. package/dist/docs/interfaces/RpcRequest.html +3 -3
  383. package/dist/docs/interfaces/RpcResponse.html +2 -2
  384. package/dist/docs/interfaces/SendTransactionOpts.html +6 -6
  385. package/dist/docs/interfaces/ServerAdapterConfig.html +3 -3
  386. package/dist/docs/interfaces/ServiceBinding.html +6 -6
  387. package/dist/docs/interfaces/ServiceRegistration.html +3 -3
  388. package/dist/docs/interfaces/ServiceResolver.html +6 -6
  389. package/dist/docs/interfaces/ServiceToken.html +4 -4
  390. package/dist/docs/interfaces/SetComputeUnitLimitParams.html +2 -2
  391. package/dist/docs/interfaces/SetComputeUnitPriceParams.html +2 -2
  392. package/dist/docs/interfaces/SetLoadedAccountsDataSizeLimitParams.html +2 -2
  393. package/dist/docs/interfaces/SignatureInfo.html +7 -7
  394. package/dist/docs/interfaces/SignatureNotification.html +2 -2
  395. package/dist/docs/interfaces/SignatureStatus.html +5 -5
  396. package/dist/docs/interfaces/SignatureSubParams.html +2 -2
  397. package/dist/docs/interfaces/SignaturesForAssetParams.html +2 -2
  398. package/dist/docs/interfaces/SimulateResult.html +2 -2
  399. package/dist/docs/interfaces/SimulateTransactionOpts.html +7 -7
  400. package/dist/docs/interfaces/SingletonOptions.html +2 -2
  401. package/dist/docs/interfaces/SlotNotification.html +2 -2
  402. package/dist/docs/interfaces/SlotSubParams.html +1 -1
  403. package/dist/docs/interfaces/SortOpts.html +2 -2
  404. package/dist/docs/interfaces/StakeAuthorized.html +2 -2
  405. package/dist/docs/interfaces/StakeDelegation.html +3 -3
  406. package/dist/docs/interfaces/StakeLockup.html +4 -4
  407. package/dist/docs/interfaces/StakeMeta.html +2 -2
  408. package/dist/docs/interfaces/Supply.html +5 -5
  409. package/dist/docs/interfaces/SynapseClientConfig.html +9 -9
  410. package/dist/docs/interfaces/SynapseClientLike.html +2 -2
  411. package/dist/docs/interfaces/SynapseEndpoint.html +7 -7
  412. package/dist/docs/interfaces/SyncNativeParams.html +3 -3
  413. package/dist/docs/interfaces/SystemTransferParams.html +4 -4
  414. package/dist/docs/interfaces/TokenAccount.html +3 -3
  415. package/dist/docs/interfaces/TokenAccountsByOwnerResult.html +2 -2
  416. package/dist/docs/interfaces/TokenAmount.html +5 -5
  417. package/dist/docs/interfaces/TokenBalanceChange.html +2 -2
  418. package/dist/docs/interfaces/TokenTransferParams.html +7 -7
  419. package/dist/docs/interfaces/TransactionInstruction.html +4 -4
  420. package/dist/docs/interfaces/TransactionMeta.html +11 -11
  421. package/dist/docs/interfaces/TransferCheckedParams.html +9 -9
  422. package/dist/docs/interfaces/TransferFeeAmount.html +2 -2
  423. package/dist/docs/interfaces/TransferFeeConfig.html +2 -2
  424. package/dist/docs/interfaces/TransportConfig.html +7 -7
  425. package/dist/docs/interfaces/UnknownExtension.html +2 -2
  426. package/dist/docs/interfaces/ValueProvider.html +2 -2
  427. package/dist/docs/interfaces/VoteAccount.html +9 -9
  428. package/dist/docs/interfaces/VoteAccountsResult.html +3 -3
  429. package/dist/docs/interfaces/WithdrawNonceParams.html +5 -5
  430. package/dist/docs/interfaces/WsConfig.html +6 -6
  431. package/dist/docs/media/CHANGELOG.md +103 -0
  432. package/dist/docs/types/AccountFetchOpts.html +1 -1
  433. package/dist/docs/types/AccountFilter.html +1 -1
  434. package/dist/docs/types/Base58.html +1 -1
  435. package/dist/docs/types/Brand.html +1 -1
  436. package/dist/docs/types/Commitment.html +1 -1
  437. package/dist/docs/types/DasSortBy.html +1 -1
  438. package/dist/docs/types/DasSortDirection.html +1 -1
  439. package/dist/docs/types/DataSizeFilter.html +1 -1
  440. package/dist/docs/types/DecodedExtension.html +1 -1
  441. package/dist/docs/types/Encoding.html +1 -1
  442. package/dist/docs/types/Epoch.html +1 -1
  443. package/dist/docs/types/Lamports.html +1 -1
  444. package/dist/docs/types/LogsFilter.html +1 -1
  445. package/dist/docs/types/MemcmpFilter.html +1 -1
  446. package/dist/docs/types/NonceState.html +1 -1
  447. package/dist/docs/types/ParsedGeyserUpdate.html +1 -1
  448. package/dist/docs/types/Pubkey.html +1 -1
  449. package/dist/docs/types/RuntimeEnv.html +1 -1
  450. package/dist/docs/types/ServiceLifecycle.html +1 -1
  451. package/dist/docs/types/ServiceProvider.html +1 -1
  452. package/dist/docs/types/Signature.html +1 -1
  453. package/dist/docs/types/Slot.html +1 -1
  454. package/dist/docs/types/StakeAccountType.html +1 -1
  455. package/dist/docs/types/SubscriptionId.html +1 -1
  456. package/dist/docs/types/TokenAccountState.html +1 -1
  457. package/dist/docs/types/TransactionDetail.html +1 -1
  458. package/dist/docs/types/UnaryMethod.html +1 -1
  459. package/dist/docs/types/UnixTimestamp.html +1 -1
  460. package/dist/docs/types/WsNotification.html +1 -1
  461. package/dist/docs/variables/ASSOCIATED_TOKEN_PROGRAM.html +1 -1
  462. package/dist/docs/variables/AssociatedToken.html +4 -4
  463. package/dist/docs/variables/COMPUTE_BUDGET_PROGRAM.html +1 -1
  464. package/dist/docs/variables/ComputeBudget.html +5 -5
  465. package/dist/docs/variables/JUPITER_PROGRAMS.html +1 -1
  466. package/dist/docs/variables/KNOWN_PROGRAMS.html +1 -1
  467. package/dist/docs/variables/KNOWN_PROGRAMS_COUNT.html +1 -1
  468. package/dist/docs/variables/LOOKUP_TABLE_HEADER_SIZE.html +1 -1
  469. package/dist/docs/variables/LOOKUP_TABLE_PROGRAM_ID.html +1 -1
  470. package/dist/docs/variables/MARINADE_PROGRAMS.html +1 -1
  471. package/dist/docs/variables/MAX_MULTISIG_SIGNERS.html +1 -1
  472. package/dist/docs/variables/MEMO_PROGRAM_V1.html +1 -1
  473. package/dist/docs/variables/MEMO_PROGRAM_V2.html +1 -1
  474. package/dist/docs/variables/METAPLEX_PROGRAMS.html +1 -1
  475. package/dist/docs/variables/METEORA_PROGRAMS.html +1 -1
  476. package/dist/docs/variables/MINT_SIZE.html +1 -1
  477. package/dist/docs/variables/MULTISIG_SIZE.html +1 -1
  478. package/dist/docs/variables/Memo.html +2 -2
  479. package/dist/docs/variables/NONCE_ACCOUNT_SIZE.html +1 -1
  480. package/dist/docs/variables/ORCA_PROGRAMS.html +1 -1
  481. package/dist/docs/variables/OTHER_PROGRAMS.html +1 -1
  482. package/dist/docs/variables/RAYDIUM_PROGRAMS.html +1 -1
  483. package/dist/docs/variables/SDK_USER_AGENT.html +1 -1
  484. package/dist/docs/variables/SPL_PROGRAMS.html +1 -1
  485. package/dist/docs/variables/STAKE_PROGRAM_ID.html +1 -1
  486. package/dist/docs/variables/SYNAPSE_DEVNET_EU.html +1 -1
  487. package/dist/docs/variables/SYNAPSE_DEVNET_US.html +1 -1
  488. package/dist/docs/variables/SYNAPSE_ENDPOINTS.html +1 -1
  489. package/dist/docs/variables/SYNAPSE_MAINNET_EU.html +1 -1
  490. package/dist/docs/variables/SYNAPSE_MAINNET_US.html +1 -1
  491. package/dist/docs/variables/SYSTEM_PROGRAM.html +1 -1
  492. package/dist/docs/variables/SYSTEM_PROGRAMS.html +1 -1
  493. package/dist/docs/variables/SYSTEM_PROGRAM_ID.html +1 -1
  494. package/dist/docs/variables/SplToken.html +16 -16
  495. package/dist/docs/variables/SystemProgram.html +10 -10
  496. package/dist/docs/variables/TOKEN_2022_PROGRAM.html +1 -1
  497. package/dist/docs/variables/TOKEN_2022_PROGRAM_ID.html +1 -1
  498. package/dist/docs/variables/TOKEN_ACCOUNT_SIZE.html +1 -1
  499. package/dist/docs/variables/TOKEN_PROGRAM.html +1 -1
  500. package/dist/docs/variables/TOKEN_PROGRAM_ID.html +1 -1
  501. package/dist/docs/variables/Tokens.html +1 -1
  502. package/dist/esm/ai/actions/server.d.ts.map +1 -1
  503. package/dist/esm/ai/actions/server.js +5 -3
  504. package/dist/esm/ai/actions/server.js.map +1 -1
  505. package/dist/esm/ai/gateway/index.d.ts.map +1 -1
  506. package/dist/esm/ai/gateway/index.js.map +1 -1
  507. package/dist/esm/ai/gateway/x402/client.d.ts.map +1 -1
  508. package/dist/esm/ai/gateway/x402/client.js +0 -3
  509. package/dist/esm/ai/gateway/x402/client.js.map +1 -1
  510. package/dist/esm/ai/gateway/x402/paywall.d.ts.map +1 -1
  511. package/dist/esm/ai/gateway/x402/paywall.js.map +1 -1
  512. package/dist/esm/ai/index.d.ts +1 -1
  513. package/dist/esm/ai/index.d.ts.map +1 -1
  514. package/dist/esm/ai/index.js +9 -11
  515. package/dist/esm/ai/index.js.map +1 -1
  516. package/dist/esm/ai/intents/executor.js.map +1 -1
  517. package/dist/esm/ai/intents/parser.d.ts.map +1 -1
  518. package/dist/esm/ai/intents/parser.js.map +1 -1
  519. package/dist/esm/ai/intents/planner.js.map +1 -1
  520. package/dist/esm/ai/mcp/client.js +1 -1
  521. package/dist/esm/ai/mcp/client.js.map +1 -1
  522. package/dist/esm/ai/persistence/postgresql.js.map +1 -1
  523. package/dist/esm/ai/plugins/registry.js +1 -1
  524. package/dist/esm/ai/plugins/registry.js.map +1 -1
  525. package/dist/esm/ai/sap/client.d.ts +197 -0
  526. package/dist/esm/ai/sap/client.d.ts.map +1 -0
  527. package/dist/esm/ai/sap/client.js +330 -0
  528. package/dist/esm/ai/sap/client.js.map +1 -0
  529. package/dist/esm/ai/sap/index.d.ts +69 -52
  530. package/dist/esm/ai/sap/index.d.ts.map +1 -1
  531. package/dist/esm/ai/sap/index.js +68 -49
  532. package/dist/esm/ai/sap/index.js.map +1 -1
  533. package/dist/esm/ai/sap/provider.d.ts +180 -0
  534. package/dist/esm/ai/sap/provider.d.ts.map +1 -0
  535. package/dist/esm/ai/sap/provider.js +215 -0
  536. package/dist/esm/ai/sap/provider.js.map +1 -0
  537. package/dist/esm/ai/sap/types.d.ts +120 -384
  538. package/dist/esm/ai/sap/types.d.ts.map +1 -1
  539. package/dist/esm/ai/sap/types.js +18 -195
  540. package/dist/esm/ai/sap/types.js.map +1 -1
  541. package/dist/esm/ai/tools/protocols/jupiter-onchain/tools.d.ts.map +1 -1
  542. package/dist/esm/ai/tools/protocols/jupiter-onchain/tools.js.map +1 -1
  543. package/dist/esm/ai/tools/protocols/shared.d.ts.map +1 -1
  544. package/dist/esm/ai/tools/protocols/shared.js +4 -1
  545. package/dist/esm/ai/tools/protocols/shared.js.map +1 -1
  546. package/dist/esm/ai/tools/protocols/solana-programs/tools.js.map +1 -1
  547. package/dist/esm/context/container.d.ts.map +1 -1
  548. package/dist/esm/context/container.js.map +1 -1
  549. package/dist/esm/grpc/parser/geyser-parser.d.ts.map +1 -1
  550. package/dist/esm/grpc/parser/geyser-parser.js.map +1 -1
  551. package/dist/esm/next/index.d.ts.map +1 -1
  552. package/dist/esm/next/index.js +7 -1
  553. package/dist/esm/next/index.js.map +1 -1
  554. package/dist/esm/programs/index.d.ts.map +1 -1
  555. package/dist/esm/programs/index.js.map +1 -1
  556. package/dist/esm/utils/helpers.js.map +1 -1
  557. package/package.json +31 -20
  558. package/dist/cjs/ai/sap/adapter.d.ts +0 -140
  559. package/dist/cjs/ai/sap/adapter.d.ts.map +0 -1
  560. package/dist/cjs/ai/sap/adapter.js +0 -181
  561. package/dist/cjs/ai/sap/adapter.js.map +0 -1
  562. package/dist/cjs/ai/sap/discovery.d.ts +0 -165
  563. package/dist/cjs/ai/sap/discovery.d.ts.map +0 -1
  564. package/dist/cjs/ai/sap/discovery.js +0 -316
  565. package/dist/cjs/ai/sap/discovery.js.map +0 -1
  566. package/dist/cjs/ai/sap/pda.d.ts +0 -205
  567. package/dist/cjs/ai/sap/pda.d.ts.map +0 -1
  568. package/dist/cjs/ai/sap/pda.js +0 -547
  569. package/dist/cjs/ai/sap/pda.js.map +0 -1
  570. package/dist/cjs/ai/sap/program.d.ts +0 -153
  571. package/dist/cjs/ai/sap/program.d.ts.map +0 -1
  572. package/dist/cjs/ai/sap/program.js +0 -227
  573. package/dist/cjs/ai/sap/program.js.map +0 -1
  574. package/dist/cjs/ai/sap/registry.d.ts +0 -218
  575. package/dist/cjs/ai/sap/registry.d.ts.map +0 -1
  576. package/dist/cjs/ai/sap/registry.js +0 -519
  577. package/dist/cjs/ai/sap/registry.js.map +0 -1
  578. package/dist/cjs/ai/sap/scoring.d.ts +0 -138
  579. package/dist/cjs/ai/sap/scoring.d.ts.map +0 -1
  580. package/dist/cjs/ai/sap/scoring.js +0 -266
  581. package/dist/cjs/ai/sap/scoring.js.map +0 -1
  582. package/dist/cjs/ai/sap/subnetwork.d.ts +0 -201
  583. package/dist/cjs/ai/sap/subnetwork.d.ts.map +0 -1
  584. package/dist/cjs/ai/sap/subnetwork.js +0 -365
  585. package/dist/cjs/ai/sap/subnetwork.js.map +0 -1
  586. package/dist/cjs/ai/sap/validator.d.ts +0 -160
  587. package/dist/cjs/ai/sap/validator.d.ts.map +0 -1
  588. package/dist/cjs/ai/sap/validator.js +0 -619
  589. package/dist/cjs/ai/sap/validator.js.map +0 -1
  590. package/dist/esm/ai/sap/adapter.d.ts +0 -140
  591. package/dist/esm/ai/sap/adapter.d.ts.map +0 -1
  592. package/dist/esm/ai/sap/adapter.js +0 -177
  593. package/dist/esm/ai/sap/adapter.js.map +0 -1
  594. package/dist/esm/ai/sap/discovery.d.ts +0 -165
  595. package/dist/esm/ai/sap/discovery.d.ts.map +0 -1
  596. package/dist/esm/ai/sap/discovery.js +0 -311
  597. package/dist/esm/ai/sap/discovery.js.map +0 -1
  598. package/dist/esm/ai/sap/pda.d.ts +0 -205
  599. package/dist/esm/ai/sap/pda.d.ts.map +0 -1
  600. package/dist/esm/ai/sap/pda.js +0 -535
  601. package/dist/esm/ai/sap/pda.js.map +0 -1
  602. package/dist/esm/ai/sap/program.d.ts +0 -153
  603. package/dist/esm/ai/sap/program.d.ts.map +0 -1
  604. package/dist/esm/ai/sap/program.js +0 -222
  605. package/dist/esm/ai/sap/program.js.map +0 -1
  606. package/dist/esm/ai/sap/registry.d.ts +0 -218
  607. package/dist/esm/ai/sap/registry.d.ts.map +0 -1
  608. package/dist/esm/ai/sap/registry.js +0 -515
  609. package/dist/esm/ai/sap/registry.js.map +0 -1
  610. package/dist/esm/ai/sap/scoring.d.ts +0 -138
  611. package/dist/esm/ai/sap/scoring.d.ts.map +0 -1
  612. package/dist/esm/ai/sap/scoring.js +0 -262
  613. package/dist/esm/ai/sap/scoring.js.map +0 -1
  614. package/dist/esm/ai/sap/subnetwork.d.ts +0 -201
  615. package/dist/esm/ai/sap/subnetwork.d.ts.map +0 -1
  616. package/dist/esm/ai/sap/subnetwork.js +0 -361
  617. package/dist/esm/ai/sap/subnetwork.js.map +0 -1
  618. package/dist/esm/ai/sap/validator.d.ts +0 -160
  619. package/dist/esm/ai/sap/validator.d.ts.map +0 -1
  620. package/dist/esm/ai/sap/validator.js +0 -614
  621. package/dist/esm/ai/sap/validator.js.map +0 -1
@@ -1,311 +0,0 @@
1
- /**
2
- * @module ai/sap/discovery
3
- * @description SAP — On-chain agent discovery via `getProgramAccounts`.
4
- *
5
- * Queries the Solana blockchain for registered agents, applying filters
6
- * like capability, protocol, reputation, price range, and uptime.
7
- *
8
- * Uses the SDK's native {@link HttpTransport} — no external dependencies.
9
- *
10
- * @example
11
- * ```ts
12
- * import { SynapseClient } from '@oobe-protocol-labs/synapse-client-sdk';
13
- * import { SAPDiscovery } from '@oobe-protocol-labs/synapse-client-sdk/ai';
14
- *
15
- * const client = new SynapseClient({ endpoint: 'https://api.mainnet-beta.solana.com' });
16
- * const discovery = new SAPDiscovery(client, { programId: 'SAPAgnt1...' });
17
- *
18
- * // Find agents that support Jupiter swaps
19
- * const result = await discovery.find({ capability: 'jupiter:swap', minReputation: 700 });
20
- * for (const agent of result.agents) {
21
- * console.log(agent.name, agent.reputation.score, agent.x402Endpoint);
22
- * }
23
- * ```
24
- *
25
- * @since 1.3.0
26
- */
27
- import { SAP_DEFAULT_PROGRAM_ID, SAP_ACCOUNT_DISCRIMINATOR } from './types.js';
28
- import { deserializeAgentAccount, deriveAgentPDA } from './pda.js';
29
- /* ═══════════════════════════════════════════════════════════════
30
- * SAPDiscovery
31
- * ═══════════════════════════════════════════════════════════════ */
32
- /**
33
- * @description Error class for SAP discovery failures.
34
- * @since 1.3.0
35
- */
36
- export class SAPDiscoveryError extends Error {
37
- code;
38
- constructor(message, code) {
39
- super(message);
40
- this.code = code;
41
- this.name = 'SAPDiscoveryError';
42
- }
43
- }
44
- /**
45
- * @description On-chain agent discovery engine.
46
- *
47
- * Queries the Solana blockchain for SAP-registered agents using
48
- * `getProgramAccounts` with memcmp filters for efficient querying.
49
- *
50
- * @since 1.3.0
51
- */
52
- export class SAPDiscovery {
53
- transport;
54
- config;
55
- /**
56
- * @param {RpcClient} client - Client providing RPC transport
57
- * @param {Partial<SAPConfig>} [config] - Discovery configuration
58
- */
59
- constructor(client, config) {
60
- this.transport = client.transport;
61
- this.config = {
62
- programId: config?.programId ?? SAP_DEFAULT_PROGRAM_ID,
63
- commitment: config?.commitment ?? 'confirmed',
64
- maxAccounts: config?.maxAccounts ?? 100,
65
- };
66
- }
67
- /**
68
- * @description Find a single agent by wallet public key.
69
- *
70
- * Derives the PDA and fetches the account data directly.
71
- *
72
- * @param {string} walletPubkey - Agent's wallet (base58)
73
- * @returns {Promise<AgentPDAAccount | null>} Agent account or null
74
- *
75
- * @example
76
- * ```ts
77
- * const agent = await discovery.findAgent('7xKXwJ...');
78
- * if (agent) console.log(agent.name, agent.capabilities);
79
- * ```
80
- *
81
- * @since 1.3.0
82
- */
83
- async findAgent(walletPubkey) {
84
- const pda = deriveAgentPDA(walletPubkey, this.config.programId);
85
- const result = await this.transport.request('getAccountInfo', [pda.address, { encoding: 'base64', commitment: this.config.commitment }]);
86
- if (!result?.value?.data)
87
- return null;
88
- try {
89
- const bytes = Buffer.from(result.value.data[0], 'base64');
90
- return deserializeAgentAccount(pda.address, bytes);
91
- }
92
- catch {
93
- return null;
94
- }
95
- }
96
- /**
97
- * @description Find agents matching the given filters.
98
- *
99
- * Uses `getProgramAccounts` with a memcmp filter on the discriminator
100
- * to fetch all SAP accounts, then applies client-side filters.
101
- *
102
- * @param {AgentDiscoveryFilter} [filter] - Query filters
103
- * @returns {Promise<DiscoveryResult>} Discovery results with matching agents
104
- *
105
- * @example
106
- * ```ts
107
- * const result = await discovery.find({
108
- * capability: 'jupiter:swap',
109
- * minReputation: 600,
110
- * maxPricePerCall: 5000n,
111
- * sortBy: 'reputation',
112
- * limit: 20,
113
- * });
114
- * ```
115
- *
116
- * @since 1.3.0
117
- */
118
- async find(filter = {}) {
119
- const start = performance.now();
120
- const { activeOnly = true, capability, protocol, minReputation, maxPricePerCall, minUptime, sortBy, sortDirection = 'desc', limit = 50, } = filter;
121
- // Fetch all accounts with discriminator filter
122
- const accounts = await this.fetchAllAccounts();
123
- const totalScanned = accounts.length;
124
- // Apply filters
125
- let matched = accounts.filter((agent) => {
126
- if (activeOnly && !agent.isActive)
127
- return false;
128
- if (capability && !agent.capabilities.some(c => c.id === capability))
129
- return false;
130
- if (protocol && !agent.capabilities.some(c => c.protocol === protocol))
131
- return false;
132
- if (minReputation !== undefined && agent.reputation.score < minReputation)
133
- return false;
134
- if (maxPricePerCall !== undefined) {
135
- const cheapest = agent.pricing.reduce((min, p) => p.pricePerCall < min ? p.pricePerCall : min, agent.pricing[0]?.pricePerCall ?? 0n);
136
- if (cheapest > maxPricePerCall)
137
- return false;
138
- }
139
- if (minUptime !== undefined && agent.reputation.uptimePercent < minUptime)
140
- return false;
141
- return true;
142
- });
143
- const totalMatching = matched.length;
144
- // Sort
145
- if (sortBy) {
146
- const mul = sortDirection === 'asc' ? 1 : -1;
147
- matched.sort((a, b) => {
148
- switch (sortBy) {
149
- case 'reputation': return mul * (a.reputation.score - b.reputation.score);
150
- case 'latency': return mul * (a.reputation.avgLatencyMs - b.reputation.avgLatencyMs);
151
- case 'uptime': return mul * (a.reputation.uptimePercent - b.reputation.uptimePercent);
152
- case 'calls': return mul * Number(a.reputation.totalCallsServed - b.reputation.totalCallsServed);
153
- case 'price': {
154
- const aMin = a.pricing[0]?.pricePerCall ?? 0n;
155
- const bMin = b.pricing[0]?.pricePerCall ?? 0n;
156
- return mul * Number(aMin - bMin);
157
- }
158
- default: return 0;
159
- }
160
- });
161
- }
162
- // Limit
163
- if (matched.length > limit) {
164
- matched = matched.slice(0, limit);
165
- }
166
- return {
167
- agents: matched,
168
- totalScanned,
169
- totalMatching,
170
- queryLatencyMs: Math.round(performance.now() - start),
171
- };
172
- }
173
- /**
174
- * @description Find all active agents (shortcut for `find({ activeOnly: true })`).
175
- * @returns {Promise<AgentPDAAccount[]>} Active agent accounts
176
- * @since 1.3.0
177
- */
178
- async findActive() {
179
- const result = await this.find({ activeOnly: true, limit: this.config.maxAccounts });
180
- return result.agents;
181
- }
182
- /**
183
- * @description Find agents by capability ID.
184
- * @param {string} capabilityId - Capability to search for (e.g. `"jupiter:swap"`)
185
- * @returns {Promise<AgentPDAAccount[]>} Agents with the given capability
186
- * @since 1.3.0
187
- */
188
- async findByCapability(capabilityId) {
189
- const result = await this.find({ capability: capabilityId, limit: this.config.maxAccounts });
190
- return result.agents;
191
- }
192
- /**
193
- * @description Find agents by protocol name.
194
- * @param {string} protocol - Protocol name (e.g. `"jupiter"`, `"raydium"`)
195
- * @returns {Promise<AgentPDAAccount[]>} Agents offering tools for the given protocol
196
- * @since 1.3.0
197
- */
198
- async findByProtocol(protocol) {
199
- const result = await this.find({ protocol, limit: this.config.maxAccounts });
200
- return result.agents;
201
- }
202
- /**
203
- * @description Find the cheapest agent for a given capability.
204
- * @param {string} capabilityId - Capability to search for
205
- * @returns {Promise<AgentPDAAccount | null>} Cheapest agent or null
206
- * @since 1.3.0
207
- */
208
- async findCheapest(capabilityId) {
209
- const result = await this.find({
210
- capability: capabilityId,
211
- sortBy: 'price',
212
- sortDirection: 'asc',
213
- limit: 1,
214
- });
215
- return result.agents[0] ?? null;
216
- }
217
- /**
218
- * @description Find the most reputable agent for a given capability.
219
- * @param {string} capabilityId - Capability to search for
220
- * @returns {Promise<AgentPDAAccount | null>} Most reputable agent or null
221
- * @since 1.3.0
222
- */
223
- async findMostReputable(capabilityId) {
224
- const result = await this.find({
225
- capability: capabilityId,
226
- sortBy: 'reputation',
227
- sortDirection: 'desc',
228
- limit: 1,
229
- });
230
- return result.agents[0] ?? null;
231
- }
232
- /**
233
- * @description Compute aggregate metrics across all registered agents.
234
- *
235
- * @returns {Promise<SAPAggregateMetrics>} Network-wide agent statistics
236
- *
237
- * @example
238
- * ```ts
239
- * const metrics = await discovery.getAggregateMetrics();
240
- * console.log(`${metrics.activeAgents} active agents`);
241
- * console.log(`${metrics.totalCallsServed} total calls served`);
242
- * console.log(`Protocols: ${metrics.protocols.join(', ')}`);
243
- * ```
244
- *
245
- * @since 1.3.0
246
- */
247
- async getAggregateMetrics() {
248
- const agents = await this.fetchAllAccounts();
249
- const protocols = new Set();
250
- const capabilities = new Set();
251
- let totalCalls = 0n;
252
- let totalReputation = 0;
253
- let totalLatency = 0;
254
- let activeCount = 0;
255
- for (const agent of agents) {
256
- if (agent.isActive)
257
- activeCount++;
258
- totalCalls += agent.reputation.totalCallsServed;
259
- totalReputation += agent.reputation.score;
260
- totalLatency += agent.reputation.avgLatencyMs;
261
- for (const cap of agent.capabilities) {
262
- capabilities.add(cap.id);
263
- if (cap.protocol)
264
- protocols.add(cap.protocol);
265
- }
266
- }
267
- return {
268
- totalAgents: agents.length,
269
- activeAgents: activeCount,
270
- totalCallsServed: totalCalls,
271
- avgReputation: agents.length > 0 ? Math.round(totalReputation / agents.length) : 0,
272
- avgLatencyMs: agents.length > 0 ? Math.round(totalLatency / agents.length) : 0,
273
- protocols: [...protocols],
274
- capabilities: [...capabilities],
275
- };
276
- }
277
- /* ── Internal ── */
278
- /**
279
- * @description Fetch all SAP accounts from the blockchain using getProgramAccounts.
280
- * @returns {Promise<AgentPDAAccount[]>} All deserialized agent accounts
281
- * @internal
282
- */
283
- async fetchAllAccounts() {
284
- // memcmp filter: match the 8-byte discriminator at offset 0
285
- const discriminatorBase64 = Buffer.from(SAP_ACCOUNT_DISCRIMINATOR).toString('base64');
286
- const rpcResult = await this.transport.request('getProgramAccounts', [
287
- this.config.programId,
288
- {
289
- encoding: 'base64',
290
- commitment: this.config.commitment,
291
- filters: [
292
- { memcmp: { offset: 0, bytes: discriminatorBase64, encoding: 'base64' } },
293
- ],
294
- },
295
- ]);
296
- if (!Array.isArray(rpcResult))
297
- return [];
298
- const agents = [];
299
- for (const entry of rpcResult) {
300
- try {
301
- const bytes = Buffer.from(entry.account.data[0], 'base64');
302
- agents.push(deserializeAgentAccount(entry.pubkey, bytes));
303
- }
304
- catch {
305
- // Skip malformed accounts
306
- }
307
- }
308
- return agents;
309
- }
310
- }
311
- //# sourceMappingURL=discovery.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"discovery.js","sourceRoot":"","sources":["../../../../src/ai/sap/discovery.ts"],"names":[],"mappings":"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"}
@@ -1,205 +0,0 @@
1
- /**
2
- * @module ai/sap/pda
3
- * @description SAP — PDA derivation, account serialization & deserialization.
4
- *
5
- * Provides Solana Program Derived Address (PDA) computation for agent
6
- * identity accounts, plus Borsh-compatible binary serialization for
7
- * reading and writing on-chain agent data.
8
- *
9
- * PDA seeds: `["synapse_agent", <wallet_pubkey_32_bytes>]`
10
- *
11
- * @example
12
- * ```ts
13
- * import { deriveAgentPDA, deserializeAgentAccount } from '@oobe-protocol-labs/synapse-client-sdk/ai';
14
- *
15
- * const { address, bump } = deriveAgentPDA(walletPubkey, programId);
16
- * const account = deserializeAgentAccount(address, rawBytes);
17
- * ```
18
- *
19
- * @since 1.3.0
20
- */
21
- import type { AgentPDAAccount } from './types';
22
- /**
23
- * @description Decode a base58-encoded string to raw bytes.
24
- * @param {string} str - Base58-encoded string
25
- * @returns {Uint8Array} Decoded bytes
26
- * @since 1.3.0
27
- */
28
- export declare function base58Decode(str: string): Uint8Array;
29
- /**
30
- * @description Encode raw bytes to a base58 string.
31
- * @param {Uint8Array} bytes - Raw bytes
32
- * @returns {string} Base58-encoded string
33
- * @since 1.3.0
34
- */
35
- export declare function base58Encode(bytes: Uint8Array): string;
36
- /**
37
- * @description Check whether a 32-byte hash lies on the ed25519 curve.
38
- * Uses Node.js `crypto.createPublicKey` to attempt point decompression.
39
- *
40
- * @param {Uint8Array} point - 32-byte candidate
41
- * @returns {boolean} `true` if the point is a valid ed25519 public key (on curve)
42
- * @since 1.3.0
43
- */
44
- export declare function isOnCurve(point: Uint8Array): boolean;
45
- /**
46
- * @description Result of a PDA derivation.
47
- * @since 1.3.0
48
- */
49
- export interface DerivedPDA {
50
- /** PDA address (base58). */
51
- address: string;
52
- /** Bump seed used (255 → 0). */
53
- bump: number;
54
- /** Raw 32-byte PDA address. */
55
- bytes: Uint8Array;
56
- }
57
- /**
58
- * @description Derive the agent PDA address for a given wallet public key.
59
- *
60
- * Algorithm (Solana `findProgramAddress`):
61
- * 1. For bump = 255 → 0:
62
- * - candidate = SHA-256(seed_prefix + wallet_bytes + [bump] + program_id + "ProgramDerivedAddress")
63
- * - If candidate is NOT on the ed25519 curve → return (candidate, bump)
64
- *
65
- * @param {string} walletPubkey - Agent's wallet pubkey (base58)
66
- * @param {string} programId - SAP program ID (base58)
67
- * @returns {DerivedPDA} The derived PDA address and bump seed
68
- * @throws {Error} If no valid PDA can be found (theoretically impossible)
69
- *
70
- * @example
71
- * ```ts
72
- * const pda = deriveAgentPDA('7xKX...wallet', 'SAPAgnt1...');
73
- * console.log(pda.address); // base58 PDA address
74
- * console.log(pda.bump); // 254
75
- * ```
76
- *
77
- * @since 1.3.0
78
- */
79
- export declare function deriveAgentPDA(walletPubkey: string, programId: string): DerivedPDA;
80
- /**
81
- * @description Minimal Borsh-compatible binary reader for deserializing
82
- * agent PDA account data from the Solana blockchain.
83
- * @since 1.3.0
84
- */
85
- export declare class BorshReader {
86
- private readonly data;
87
- private offset;
88
- /**
89
- * @param {Buffer | Uint8Array} data - Raw account data bytes
90
- */
91
- constructor(data: Buffer | Uint8Array);
92
- /** Current read position. */
93
- get position(): number;
94
- /** Remaining unread bytes. */
95
- get remaining(): number;
96
- /**
97
- * @description Read a single unsigned byte.
98
- * @returns {number} u8 value
99
- */
100
- readU8(): number;
101
- /**
102
- * @description Read a 32-bit unsigned integer (little-endian).
103
- * @returns {number} u32 value
104
- */
105
- readU32(): number;
106
- /**
107
- * @description Read a 64-bit signed integer (little-endian) as bigint.
108
- * @returns {bigint} i64 value
109
- */
110
- readI64(): bigint;
111
- /**
112
- * @description Read a 64-bit unsigned integer (little-endian) as bigint.
113
- * @returns {bigint} u64 value
114
- */
115
- readU64(): bigint;
116
- /**
117
- * @description Read a fixed-length byte array.
118
- * @param {number} len - Number of bytes to read
119
- * @returns {Uint8Array} Raw bytes
120
- */
121
- readBytes(len: number): Uint8Array;
122
- /**
123
- * @description Read a Borsh-encoded string (u32 length prefix + UTF-8 bytes).
124
- * @returns {string} Decoded string
125
- */
126
- readString(): string;
127
- /**
128
- * @description Read an optional value (1 byte flag + value if present).
129
- * @param {() => T} readFn - Reader function for the inner value
130
- * @returns {T | undefined}
131
- */
132
- readOption<T>(readFn: () => T): T | undefined;
133
- /**
134
- * @description Read a Borsh-encoded Vec (u32 length prefix + elements).
135
- * @param {() => T} readFn - Reader function for each element
136
- * @returns {T[]} Array of decoded elements
137
- */
138
- readVec<T>(readFn: () => T): T[];
139
- }
140
- /**
141
- * @description Minimal Borsh-compatible binary writer for serializing
142
- * instruction data to send to the SAP program.
143
- * @since 1.3.0
144
- */
145
- export declare class BorshWriter {
146
- private buf;
147
- /** Get the serialized bytes. */
148
- toBytes(): Uint8Array;
149
- /** @description Write a single unsigned byte. */
150
- writeU8(val: number): this;
151
- /** @description Write a 32-bit unsigned integer (little-endian). */
152
- writeU32(val: number): this;
153
- /** @description Write a 64-bit signed integer (little-endian) as bigint. */
154
- writeI64(val: bigint): this;
155
- /** @description Write a 64-bit unsigned integer (little-endian) as bigint. */
156
- writeU64(val: bigint): this;
157
- /** @description Write raw bytes. */
158
- writeBytes(bytes: Uint8Array): this;
159
- /** @description Write a Borsh-encoded string (u32 length + UTF-8 bytes). */
160
- writeString(str: string): this;
161
- /** @description Write an optional value (1-byte flag + value). */
162
- writeOption<T>(val: T | undefined, writeFn: (v: T) => void): this;
163
- /** @description Write a Borsh-encoded Vec (u32 length + elements). */
164
- writeVec<T>(items: T[], writeFn: (v: T) => void): this;
165
- }
166
- /**
167
- * @description Deserialize raw account bytes into an {@link AgentPDAAccount}.
168
- *
169
- * @param {string} address - PDA address (base58)
170
- * @param {Buffer | Uint8Array} data - Raw account data from `getAccountInfo`
171
- * @returns {AgentPDAAccount} Fully deserialized agent account
172
- * @throws {Error} If discriminator doesn't match or data is malformed
173
- *
174
- * @example
175
- * ```ts
176
- * const raw = await transport.request('getAccountInfo', [pdaAddress, { encoding: 'base64' }]);
177
- * const decoded = Buffer.from(raw.value.data[0], 'base64');
178
- * const agent = deserializeAgentAccount(pdaAddress, decoded);
179
- * ```
180
- *
181
- * @since 1.3.0
182
- */
183
- export declare function deserializeAgentAccount(address: string, data: Buffer | Uint8Array): AgentPDAAccount;
184
- /**
185
- * @description Serialize agent data into instruction data for the `register` instruction.
186
- * Does NOT include the instruction discriminator — that is prepended by
187
- * {@link SAPInstructionBuilder}.
188
- *
189
- * @param {RegisterAgentParams} params - Registration parameters
190
- * @returns {Uint8Array} Borsh-serialized instruction data (without discriminator)
191
- *
192
- * @since 1.3.0
193
- */
194
- export declare function serializeRegisterData(params: import('./types').RegisterAgentParams): Uint8Array;
195
- /**
196
- * @description Serialize update data for the `update` instruction.
197
- * Uses Option encoding for each field — `None` means "don't change".
198
- *
199
- * @param {UpdateAgentParams} params - Fields to update
200
- * @returns {Uint8Array} Borsh-serialized instruction data (without discriminator)
201
- *
202
- * @since 1.4.0
203
- */
204
- export declare function serializeUpdateData(params: import('./types').UpdateAgentParams): Uint8Array;
205
- //# sourceMappingURL=pda.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"pda.d.ts","sourceRoot":"","sources":["../../../../src/ai/sap/pda.ts"],"names":[],"mappings":"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"}