@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,266 +0,0 @@
1
- "use strict";
2
- /**
3
- * @module ai/sap/scoring
4
- * @description SAP — Agent health scoring and network analytics.
5
- *
6
- * Computes composite health scores for individual agents and entire
7
- * sub-networks, factoring in reputation, uptime, latency, call volume,
8
- * capability coverage, and pricing competitiveness.
9
- *
10
- * Also provides **network-level analytics**: protocol concentration,
11
- * Gini coefficient for call distribution, and trend detection.
12
- *
13
- * @example
14
- * ```ts
15
- * import { computeAgentHealthScore, computeNetworkAnalytics } from '@oobe-protocol-labs/synapse-client-sdk/ai/sap';
16
- *
17
- * const health = computeAgentHealthScore(agentPDA);
18
- * console.log(health.composite); // 0..100
19
- * console.log(health.breakdown); // { reputation, uptime, latency, activity, pricing }
20
- *
21
- * const analytics = computeNetworkAnalytics(allAgents);
22
- * console.log(analytics.giniCoefficient); // 0..1 (0 = perfectly even)
23
- * console.log(analytics.protocolConcentration);
24
- * ```
25
- *
26
- * @since 1.4.0
27
- */
28
- Object.defineProperty(exports, "__esModule", { value: true });
29
- exports.computeAgentHealthScore = computeAgentHealthScore;
30
- exports.computeNetworkAnalytics = computeNetworkAnalytics;
31
- /* ═══════════════════════════════════════════════════════════════
32
- * Scoring Weights
33
- * ═══════════════════════════════════════════════════════════════ */
34
- const DEFAULT_WEIGHTS = {
35
- reputation: 0.30,
36
- uptime: 0.25,
37
- latency: 0.20,
38
- activity: 0.15,
39
- pricing: 0.10,
40
- };
41
- /* ═══════════════════════════════════════════════════════════════
42
- * Single Agent Scoring
43
- * ═══════════════════════════════════════════════════════════════ */
44
- /**
45
- * @description Compute a composite health score for a single agent.
46
- *
47
- * @param {AgentPDAAccount} agent - The agent to score
48
- * @param {Object} [context] - Optional context for relative scoring
49
- * @param {number} [context.networkAvgCalls] - Network average calls (for activity scoring)
50
- * @param {bigint} [context.networkAvgPrice] - Network average price per call
51
- * @param {Partial<typeof DEFAULT_WEIGHTS>} [weights] - Override default weights
52
- * @returns {AgentHealthScore}
53
- *
54
- * @since 1.4.0
55
- */
56
- function computeAgentHealthScore(agent, context, weights) {
57
- const w = { ...DEFAULT_WEIGHTS, ...weights };
58
- // Reputation: 0–1000 → 0–100
59
- const reputation = Math.min(100, (agent.reputation.score / 1000) * 100);
60
- // Uptime: direct mapping (0–100)
61
- const uptime = Math.min(100, Math.max(0, agent.reputation.uptimePercent));
62
- // Latency: log scale, 0ms = 100, 100ms = 80, 1s = 50, 10s = 10, 30s+ = 0
63
- const latency = computeLatencyScore(agent.reputation.avgLatencyMs);
64
- // Activity: relative to network average (or absolute if no context)
65
- const avgCalls = context?.networkAvgCalls ?? 1000;
66
- const callRatio = Number(agent.reputation.totalCallsServed) / Math.max(avgCalls, 1);
67
- const activity = Math.min(100, callRatio * 50); // 2x average = 100
68
- // Pricing: lower is better (relative to network average)
69
- const agentPrice = agent.pricing[0]?.pricePerCall ?? 0n;
70
- const avgPrice = context?.networkAvgPrice ?? 5000n;
71
- const pricing = avgPrice > 0n
72
- ? Math.min(100, Math.max(0, 100 - Number((agentPrice * 100n) / avgPrice)))
73
- : 50;
74
- const breakdown = {
75
- reputation: Math.round(reputation),
76
- uptime: Math.round(uptime),
77
- latency: Math.round(latency),
78
- activity: Math.round(activity),
79
- pricing: Math.round(pricing),
80
- };
81
- const composite = Math.round(w.reputation * reputation +
82
- w.uptime * uptime +
83
- w.latency * latency +
84
- w.activity * activity +
85
- w.pricing * pricing);
86
- const tier = scoreTier(composite);
87
- const recommendations = generateRecommendations(agent, breakdown);
88
- return {
89
- walletPubkey: agent.walletPubkey,
90
- name: agent.name,
91
- composite,
92
- breakdown,
93
- tier,
94
- summary: `${agent.name}: ${composite}/100 (${tier})`,
95
- recommendations,
96
- };
97
- }
98
- /* ═══════════════════════════════════════════════════════════════
99
- * Network Analytics
100
- * ═══════════════════════════════════════════════════════════════ */
101
- /**
102
- * @description Compute network-level analytics across all discovered agents.
103
- *
104
- * @param {AgentPDAAccount[]} agents - All agents in the network
105
- * @returns {NetworkAnalytics}
106
- *
107
- * @since 1.4.0
108
- */
109
- function computeNetworkAnalytics(agents) {
110
- if (agents.length === 0) {
111
- return {
112
- totalAgents: 0,
113
- activeAgents: 0,
114
- avgHealthScore: 0,
115
- tierDistribution: { excellent: 0, good: 0, fair: 0, poor: 0, critical: 0 },
116
- giniCoefficient: 0,
117
- protocolConcentration: [],
118
- capabilityCoverage: [],
119
- topAgents: [],
120
- needsAttention: [],
121
- };
122
- }
123
- // Context for relative scoring
124
- const totalCalls = agents.reduce((s, a) => s + Number(a.reputation.totalCallsServed), 0);
125
- const networkAvgCalls = totalCalls / agents.length;
126
- const totalPrice = agents.reduce((s, a) => s + (a.pricing[0]?.pricePerCall ?? 0n), 0n);
127
- const networkAvgPrice = totalPrice / BigInt(agents.length);
128
- // Score each agent
129
- const scores = agents.map(a => computeAgentHealthScore(a, { networkAvgCalls, networkAvgPrice }));
130
- const active = agents.filter(a => a.isActive).length;
131
- const avgScore = Math.round(scores.reduce((s, h) => s + h.composite, 0) / scores.length);
132
- // Tier distribution
133
- const tierDist = {
134
- excellent: 0, good: 0, fair: 0, poor: 0, critical: 0,
135
- };
136
- for (const s of scores)
137
- tierDist[s.tier]++;
138
- // Gini coefficient (for call distribution fairness)
139
- const gini = computeGini(agents.map(a => Number(a.reputation.totalCallsServed)));
140
- // Protocol concentration
141
- const protocolMap = new Map();
142
- for (const agent of agents) {
143
- for (const cap of agent.capabilities) {
144
- const protocol = cap.protocol ?? cap.id.split(':')[0];
145
- protocolMap.set(protocol, (protocolMap.get(protocol) ?? 0) + 1);
146
- }
147
- }
148
- const protocolConcentration = [...protocolMap.entries()]
149
- .map(([protocol, agentCount]) => ({
150
- protocol,
151
- agentCount,
152
- pct: Math.round((agentCount / agents.length) * 100),
153
- }))
154
- .sort((a, b) => b.agentCount - a.agentCount);
155
- // Capability coverage
156
- const capMap = new Map();
157
- for (const agent of agents) {
158
- for (const cap of agent.capabilities) {
159
- capMap.set(cap.id, (capMap.get(cap.id) ?? 0) + 1);
160
- }
161
- }
162
- const capabilityCoverage = [...capMap.entries()]
163
- .map(([capability, agentCount]) => ({ capability, agentCount }))
164
- .sort((a, b) => b.agentCount - a.agentCount);
165
- // Top agents
166
- const topAgents = [...scores]
167
- .sort((a, b) => b.composite - a.composite)
168
- .slice(0, 10)
169
- .map(s => ({ walletPubkey: s.walletPubkey, name: s.name, score: s.composite }));
170
- // Needs attention
171
- const needsAttention = scores
172
- .filter(s => s.composite < 40)
173
- .map(s => ({
174
- walletPubkey: s.walletPubkey,
175
- name: s.name,
176
- score: s.composite,
177
- reasons: s.recommendations,
178
- }));
179
- return {
180
- totalAgents: agents.length,
181
- activeAgents: active,
182
- avgHealthScore: avgScore,
183
- tierDistribution: tierDist,
184
- giniCoefficient: gini,
185
- protocolConcentration,
186
- capabilityCoverage,
187
- topAgents,
188
- needsAttention,
189
- };
190
- }
191
- /* ═══════════════════════════════════════════════════════════════
192
- * Internal Helpers
193
- * ═══════════════════════════════════════════════════════════════ */
194
- function computeLatencyScore(ms) {
195
- if (ms <= 0)
196
- return 100;
197
- if (ms <= 50)
198
- return 95;
199
- if (ms <= 100)
200
- return 85;
201
- if (ms <= 500)
202
- return 70;
203
- if (ms <= 1000)
204
- return 55;
205
- if (ms <= 3000)
206
- return 35;
207
- if (ms <= 10000)
208
- return 15;
209
- return 5;
210
- }
211
- function scoreTier(composite) {
212
- if (composite >= 85)
213
- return 'excellent';
214
- if (composite >= 65)
215
- return 'good';
216
- if (composite >= 45)
217
- return 'fair';
218
- if (composite >= 25)
219
- return 'poor';
220
- return 'critical';
221
- }
222
- function generateRecommendations(agent, breakdown) {
223
- const recs = [];
224
- if (breakdown.uptime < 50) {
225
- recs.push('Improve uptime — current uptime is below 50%, causing automatic filtering by discovery queries');
226
- }
227
- if (breakdown.reputation < 30) {
228
- recs.push('Reputation is very low — consider reducing pricing to attract initial calls and build reputation');
229
- }
230
- if (breakdown.latency < 30) {
231
- recs.push(`Reduce response latency (currently ${agent.reputation.avgLatencyMs}ms) — high latency reduces selection probability`);
232
- }
233
- if (breakdown.activity < 20) {
234
- recs.push('Very low call volume — register more capabilities or reduce pricing to increase visibility');
235
- }
236
- if (breakdown.pricing < 20) {
237
- recs.push('Pricing is significantly above network average — consider competitive pricing to increase call volume');
238
- }
239
- if (agent.capabilities.length < 2) {
240
- recs.push('Register additional capabilities — multi-capable agents are preferred by SubnetworkBuilder');
241
- }
242
- if (!agent.x402Endpoint) {
243
- recs.push('Add an x402 endpoint to enable pay-per-call via the x402 protocol');
244
- }
245
- return recs;
246
- }
247
- /**
248
- * @description Compute the Gini coefficient for a distribution of values.
249
- * 0 = perfectly equal, 1 = maximum inequality.
250
- * @internal
251
- */
252
- function computeGini(values) {
253
- const n = values.length;
254
- if (n === 0)
255
- return 0;
256
- const sorted = [...values].sort((a, b) => a - b);
257
- const sum = sorted.reduce((a, b) => a + b, 0);
258
- if (sum === 0)
259
- return 0;
260
- let giniSum = 0;
261
- for (let i = 0; i < n; i++) {
262
- giniSum += (2 * (i + 1) - n - 1) * sorted[i];
263
- }
264
- return Math.round((giniSum / (n * sum)) * 1000) / 1000;
265
- }
266
- //# sourceMappingURL=scoring.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"scoring.js","sourceRoot":"","sources":["../../../../src/ai/sap/scoring.ts"],"names":[],"mappings":"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"}
@@ -1,201 +0,0 @@
1
- /**
2
- * @module ai/sap/subnetwork
3
- * @description SAP — Subnetwork builder for composing multi-agent task forces.
4
- *
5
- * Given a set of **required capabilities**, discovers the optimal set of
6
- * agents that collectively cover all capabilities, then provides utilities
7
- * to orchestrate them (cost estimation, health checks, failover selection).
8
- *
9
- * Think of it as a **query planner** for an agent-based microservice mesh:
10
- * you describe WHAT you need, and the SubnetworkBuilder finds WHO can do it,
11
- * optimizing for cost, reputation, latency, or a weighted combination.
12
- *
13
- * @example
14
- * ```ts
15
- * import { SubnetworkBuilder, SAPDiscovery } from '@oobe-protocol-labs/synapse-client-sdk/ai/sap';
16
- *
17
- * const discovery = new SAPDiscovery(client, { programId });
18
- * const subnet = new SubnetworkBuilder(discovery);
19
- *
20
- * // Build a subnetwork that can swap, lend, and analyze risk
21
- * const result = await subnet.build({
22
- * requiredCapabilities: ['jupiter:swap', 'solend:lend', 'ai:riskScore'],
23
- * strategy: 'balanced',
24
- * maxCostPerCall: 5000n,
25
- * });
26
- *
27
- * if (result.complete) {
28
- * for (const assignment of result.assignments) {
29
- * console.log(`${assignment.capability} → ${assignment.agent.name}`);
30
- * }
31
- * console.log(`Total cost: ${result.estimatedCostPerCall}`);
32
- * }
33
- * ```
34
- *
35
- * @since 1.4.0
36
- */
37
- import type { AgentPDAAccount, AgentPricingOnChain } from './types';
38
- import type { SAPDiscovery } from './discovery';
39
- /**
40
- * @description Optimization strategy for agent selection.
41
- * @since 1.4.0
42
- */
43
- export type SelectionStrategy = 'cheapest' | 'reputable' | 'fastest' | 'balanced';
44
- /**
45
- * @description Configuration for building a subnetwork.
46
- * @since 1.4.0
47
- */
48
- export interface SubnetworkConfig {
49
- /** Capabilities the subnetwork must collectively support. */
50
- requiredCapabilities: string[];
51
- /** Optimization strategy. @default 'balanced' */
52
- strategy?: SelectionStrategy;
53
- /** Maximum acceptable cost per call (total across all agents). */
54
- maxCostPerCall?: bigint;
55
- /** Minimum reputation score for any agent in the subnetwork. @default 0 */
56
- minReputation?: number;
57
- /** Minimum uptime for any agent. @default 0 */
58
- minUptime?: number;
59
- /** Pricing tier to use for cost calculations. @default 'standard' */
60
- pricingTier?: string;
61
- /** Maximum number of agents in the subnetwork. @default 10 */
62
- maxAgents?: number;
63
- /** Prefer agents that cover multiple required capabilities (reduces hop count). @default true */
64
- preferMultiCapable?: boolean;
65
- }
66
- /**
67
- * @description A single capability → agent assignment in a subnetwork.
68
- * @since 1.4.0
69
- */
70
- export interface CapabilityAssignment {
71
- /** The capability ID. */
72
- capability: string;
73
- /** The agent assigned to provide this capability. */
74
- agent: AgentPDAAccount;
75
- /** The pricing tier selected for this agent. */
76
- pricing: AgentPricingOnChain;
77
- /** The agent's reputation score. */
78
- reputationScore: number;
79
- /** The agent's average latency. */
80
- latencyMs: number;
81
- /** Alternative agents that could provide this capability (sorted by score). */
82
- alternatives: AgentPDAAccount[];
83
- }
84
- /**
85
- * @description Result of a subnetwork build operation.
86
- * @since 1.4.0
87
- */
88
- export interface SubnetworkResult {
89
- /** Whether ALL required capabilities were assigned. */
90
- complete: boolean;
91
- /** Capability → agent assignments. */
92
- assignments: CapabilityAssignment[];
93
- /** Capabilities that could NOT be assigned (no agents found). */
94
- unassigned: string[];
95
- /** Unique agents in this subnetwork (deduplicated). */
96
- agents: AgentPDAAccount[];
97
- /** Estimated total cost per call (sum across all agents). */
98
- estimatedCostPerCall: bigint;
99
- /** Average reputation across all agents. */
100
- avgReputation: number;
101
- /** Max latency across all agents (bottleneck). */
102
- maxLatencyMs: number;
103
- /** Time taken to build the subnetwork (ms). */
104
- buildTimeMs: number;
105
- /** The strategy used. */
106
- strategy: SelectionStrategy;
107
- }
108
- /**
109
- * @description Health status of the subnetwork.
110
- * @since 1.4.0
111
- */
112
- export interface SubnetworkHealth {
113
- /** Overall health: 'healthy' | 'degraded' | 'critical'. */
114
- status: 'healthy' | 'degraded' | 'critical';
115
- /** Per-agent health. */
116
- agents: Array<{
117
- agent: AgentPDAAccount;
118
- capabilities: string[];
119
- isHealthy: boolean;
120
- reason?: string;
121
- }>;
122
- /** Capabilities at risk (only one agent, low reputation or uptime). */
123
- atRisk: string[];
124
- /** Capabilities with redundancy (2+ agents can provide them). */
125
- redundant: string[];
126
- }
127
- /**
128
- * @description Builds and manages agent sub-networks for multi-capability tasks.
129
- *
130
- * The builder:
131
- * 1. Discovers agents for each required capability via {@link SAPDiscovery}
132
- * 2. Scores candidates using the selected strategy
133
- * 3. Assigns agents to capabilities, preferring multi-capable agents
134
- * 4. Computes cost, reputation, and latency estimates
135
- * 5. Identifies failover alternatives for each assignment
136
- *
137
- * @since 1.4.0
138
- */
139
- export declare class SubnetworkBuilder {
140
- private readonly discovery;
141
- constructor(discovery: SAPDiscovery);
142
- /**
143
- * @description Build an optimal subnetwork covering all required capabilities.
144
- *
145
- * @param {SubnetworkConfig} config - Subnetwork requirements
146
- * @returns {Promise<SubnetworkResult>} The built subnetwork with assignments
147
- *
148
- * @example
149
- * ```ts
150
- * const result = await subnet.build({
151
- * requiredCapabilities: ['jupiter:swap', 'pyth:getPrice', 'ai:riskScore'],
152
- * strategy: 'balanced',
153
- * minReputation: 500,
154
- * maxCostPerCall: 10000n,
155
- * });
156
- * ```
157
- *
158
- * @since 1.4.0
159
- */
160
- build(config: SubnetworkConfig): Promise<SubnetworkResult>;
161
- /**
162
- * @description Evaluate the health of an existing subnetwork result.
163
- *
164
- * Checks each assigned agent's reputation, uptime, and latency,
165
- * and identifies capabilities at risk (single provider) or with
166
- * redundancy (multiple alternatives).
167
- *
168
- * @param {SubnetworkResult} subnet - A previously built subnetwork
169
- * @returns {SubnetworkHealth} Health assessment
170
- *
171
- * @since 1.4.0
172
- */
173
- evaluateHealth(subnet: SubnetworkResult): SubnetworkHealth;
174
- /**
175
- * @description Rebuild a subnetwork, replacing unhealthy agents with alternatives.
176
- *
177
- * @param {SubnetworkResult} current - The current subnetwork
178
- * @param {SubnetworkConfig} config - Original config (for constraints)
179
- * @returns {Promise<SubnetworkResult>} A rebuilt subnetwork
180
- *
181
- * @since 1.4.0
182
- */
183
- rebuild(current: SubnetworkResult, config: SubnetworkConfig): Promise<SubnetworkResult>;
184
- /**
185
- * @description Estimate the total cost for N calls through the subnetwork.
186
- * @param {SubnetworkResult} subnet - Built subnetwork
187
- * @param {number} calls - Number of calls to estimate for
188
- * @returns {{ totalCost: bigint; perAgent: Array<{ agent: string; cost: bigint }> }}
189
- * @since 1.4.0
190
- */
191
- estimateCost(subnet: SubnetworkResult, calls: number): {
192
- totalCost: bigint;
193
- perAgent: Array<{
194
- agent: string;
195
- cost: bigint;
196
- }>;
197
- };
198
- private scoreAgent;
199
- private findPricing;
200
- }
201
- //# sourceMappingURL=subnetwork.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"subnetwork.d.ts","sourceRoot":"","sources":["../../../../src/ai/sap/subnetwork.ts"],"names":[],"mappings":"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"}