@hashgraphonline/standards-sdk 0.1.189 → 0.1.190

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 (528) hide show
  1. package/dist/browser/hcs-25/adapters/agentverse.d.ts.map +1 -1
  2. package/dist/browser/hcs-25/adapters/availability.d.ts.map +1 -1
  3. package/dist/browser/hcs-25/adapters/connectivity.d.ts.map +1 -1
  4. package/dist/browser/hcs-25/adapters/ethos.d.ts.map +1 -1
  5. package/dist/browser/hcs-25/adapters/model-evals.d.ts.map +1 -1
  6. package/dist/browser/hcs-25/adapters/simple-evals.d.ts.map +1 -1
  7. package/dist/browser/hcs-25/adapters/x402.d.ts.map +1 -1
  8. package/dist/browser/hcs-25/collectors/acp.d.ts +42 -0
  9. package/dist/browser/hcs-25/collectors/acp.d.ts.map +1 -0
  10. package/dist/browser/hcs-25/collectors/agentverse.d.ts +37 -0
  11. package/dist/browser/hcs-25/collectors/agentverse.d.ts.map +1 -0
  12. package/dist/browser/hcs-25/collectors/availability.d.ts +29 -0
  13. package/dist/browser/hcs-25/collectors/availability.d.ts.map +1 -0
  14. package/dist/browser/hcs-25/collectors/catalog.d.ts +57 -0
  15. package/dist/browser/hcs-25/collectors/catalog.d.ts.map +1 -0
  16. package/dist/browser/hcs-25/collectors/connectivity.d.ts +49 -0
  17. package/dist/browser/hcs-25/collectors/connectivity.d.ts.map +1 -0
  18. package/dist/browser/hcs-25/collectors/endpoints.d.ts +9 -0
  19. package/dist/browser/hcs-25/collectors/endpoints.d.ts.map +1 -0
  20. package/dist/browser/hcs-25/collectors/erc8004.d.ts +104 -0
  21. package/dist/browser/hcs-25/collectors/erc8004.d.ts.map +1 -0
  22. package/dist/browser/hcs-25/collectors/ethos.d.ts +95 -0
  23. package/dist/browser/hcs-25/collectors/ethos.d.ts.map +1 -0
  24. package/dist/browser/hcs-25/collectors/freshness.d.ts +36 -0
  25. package/dist/browser/hcs-25/collectors/freshness.d.ts.map +1 -0
  26. package/dist/browser/hcs-25/collectors/http.d.ts +67 -0
  27. package/dist/browser/hcs-25/collectors/http.d.ts.map +1 -0
  28. package/dist/browser/hcs-25/collectors/index.d.ts +21 -0
  29. package/dist/browser/hcs-25/collectors/index.d.ts.map +1 -0
  30. package/dist/browser/hcs-25/collectors/merge.d.ts +11 -0
  31. package/dist/browser/hcs-25/collectors/merge.d.ts.map +1 -0
  32. package/dist/browser/hcs-25/collectors/model-evals.d.ts +315 -0
  33. package/dist/browser/hcs-25/collectors/model-evals.d.ts.map +1 -0
  34. package/dist/browser/hcs-25/collectors/oss-popularity.d.ts +51 -0
  35. package/dist/browser/hcs-25/collectors/oss-popularity.d.ts.map +1 -0
  36. package/dist/browser/hcs-25/collectors/output-verification.d.ts +37 -0
  37. package/dist/browser/hcs-25/collectors/output-verification.d.ts.map +1 -0
  38. package/dist/browser/hcs-25/collectors/pipeline.d.ts +19 -0
  39. package/dist/browser/hcs-25/collectors/pipeline.d.ts.map +1 -0
  40. package/dist/browser/hcs-25/collectors/runner.d.ts +20 -0
  41. package/dist/browser/hcs-25/collectors/runner.d.ts.map +1 -0
  42. package/dist/browser/hcs-25/collectors/simple-evals.d.ts +91 -0
  43. package/dist/browser/hcs-25/collectors/simple-evals.d.ts.map +1 -0
  44. package/dist/browser/hcs-25/collectors/types.d.ts +113 -0
  45. package/dist/browser/hcs-25/collectors/types.d.ts.map +1 -0
  46. package/dist/browser/hcs-25/collectors/x402-onchain.d.ts +105 -0
  47. package/dist/browser/hcs-25/collectors/x402-onchain.d.ts.map +1 -0
  48. package/dist/browser/hcs-25/collectors/x402.d.ts +48 -0
  49. package/dist/browser/hcs-25/collectors/x402.d.ts.map +1 -0
  50. package/dist/browser/hcs-25/index.d.ts +1 -0
  51. package/dist/browser/hcs-25/index.d.ts.map +1 -1
  52. package/dist/browser/hcs-25/signals/marketplace.d.ts +6 -6
  53. package/dist/browser/hcs-25/signals/marketplace.d.ts.map +1 -1
  54. package/dist/browser/hcs-25/signals/model-evals.d.ts +12 -12
  55. package/dist/browser/hcs-25/signals/model-evals.d.ts.map +1 -1
  56. package/dist/browser/hcs-25/signals/operational.d.ts +15 -12
  57. package/dist/browser/hcs-25/signals/operational.d.ts.map +1 -1
  58. package/dist/browser/hcs-25/signals/simple-evals.d.ts +1 -1
  59. package/dist/browser/hcs-25/signals/simple-evals.d.ts.map +1 -1
  60. package/dist/browser-root/hcs-25/adapters/agentverse.d.ts.map +1 -1
  61. package/dist/browser-root/hcs-25/adapters/availability.d.ts.map +1 -1
  62. package/dist/browser-root/hcs-25/adapters/connectivity.d.ts.map +1 -1
  63. package/dist/browser-root/hcs-25/adapters/ethos.d.ts.map +1 -1
  64. package/dist/browser-root/hcs-25/adapters/model-evals.d.ts.map +1 -1
  65. package/dist/browser-root/hcs-25/adapters/simple-evals.d.ts.map +1 -1
  66. package/dist/browser-root/hcs-25/adapters/x402.d.ts.map +1 -1
  67. package/dist/browser-root/hcs-25/collectors/acp.d.ts +42 -0
  68. package/dist/browser-root/hcs-25/collectors/acp.d.ts.map +1 -0
  69. package/dist/browser-root/hcs-25/collectors/agentverse.d.ts +37 -0
  70. package/dist/browser-root/hcs-25/collectors/agentverse.d.ts.map +1 -0
  71. package/dist/browser-root/hcs-25/collectors/availability.d.ts +29 -0
  72. package/dist/browser-root/hcs-25/collectors/availability.d.ts.map +1 -0
  73. package/dist/browser-root/hcs-25/collectors/catalog.d.ts +57 -0
  74. package/dist/browser-root/hcs-25/collectors/catalog.d.ts.map +1 -0
  75. package/dist/browser-root/hcs-25/collectors/connectivity.d.ts +49 -0
  76. package/dist/browser-root/hcs-25/collectors/connectivity.d.ts.map +1 -0
  77. package/dist/browser-root/hcs-25/collectors/endpoints.d.ts +9 -0
  78. package/dist/browser-root/hcs-25/collectors/endpoints.d.ts.map +1 -0
  79. package/dist/browser-root/hcs-25/collectors/erc8004.d.ts +104 -0
  80. package/dist/browser-root/hcs-25/collectors/erc8004.d.ts.map +1 -0
  81. package/dist/browser-root/hcs-25/collectors/ethos.d.ts +95 -0
  82. package/dist/browser-root/hcs-25/collectors/ethos.d.ts.map +1 -0
  83. package/dist/browser-root/hcs-25/collectors/freshness.d.ts +36 -0
  84. package/dist/browser-root/hcs-25/collectors/freshness.d.ts.map +1 -0
  85. package/dist/browser-root/hcs-25/collectors/http.d.ts +67 -0
  86. package/dist/browser-root/hcs-25/collectors/http.d.ts.map +1 -0
  87. package/dist/browser-root/hcs-25/collectors/index.d.ts +21 -0
  88. package/dist/browser-root/hcs-25/collectors/index.d.ts.map +1 -0
  89. package/dist/browser-root/hcs-25/collectors/merge.d.ts +11 -0
  90. package/dist/browser-root/hcs-25/collectors/merge.d.ts.map +1 -0
  91. package/dist/browser-root/hcs-25/collectors/model-evals.d.ts +315 -0
  92. package/dist/browser-root/hcs-25/collectors/model-evals.d.ts.map +1 -0
  93. package/dist/browser-root/hcs-25/collectors/oss-popularity.d.ts +51 -0
  94. package/dist/browser-root/hcs-25/collectors/oss-popularity.d.ts.map +1 -0
  95. package/dist/browser-root/hcs-25/collectors/output-verification.d.ts +37 -0
  96. package/dist/browser-root/hcs-25/collectors/output-verification.d.ts.map +1 -0
  97. package/dist/browser-root/hcs-25/collectors/pipeline.d.ts +19 -0
  98. package/dist/browser-root/hcs-25/collectors/pipeline.d.ts.map +1 -0
  99. package/dist/browser-root/hcs-25/collectors/runner.d.ts +20 -0
  100. package/dist/browser-root/hcs-25/collectors/runner.d.ts.map +1 -0
  101. package/dist/browser-root/hcs-25/collectors/simple-evals.d.ts +91 -0
  102. package/dist/browser-root/hcs-25/collectors/simple-evals.d.ts.map +1 -0
  103. package/dist/browser-root/hcs-25/collectors/types.d.ts +113 -0
  104. package/dist/browser-root/hcs-25/collectors/types.d.ts.map +1 -0
  105. package/dist/browser-root/hcs-25/collectors/x402-onchain.d.ts +105 -0
  106. package/dist/browser-root/hcs-25/collectors/x402-onchain.d.ts.map +1 -0
  107. package/dist/browser-root/hcs-25/collectors/x402.d.ts +48 -0
  108. package/dist/browser-root/hcs-25/collectors/x402.d.ts.map +1 -0
  109. package/dist/browser-root/hcs-25/index.d.ts +1 -0
  110. package/dist/browser-root/hcs-25/index.d.ts.map +1 -1
  111. package/dist/browser-root/hcs-25/signals/marketplace.d.ts +6 -6
  112. package/dist/browser-root/hcs-25/signals/marketplace.d.ts.map +1 -1
  113. package/dist/browser-root/hcs-25/signals/model-evals.d.ts +12 -12
  114. package/dist/browser-root/hcs-25/signals/model-evals.d.ts.map +1 -1
  115. package/dist/browser-root/hcs-25/signals/operational.d.ts +15 -12
  116. package/dist/browser-root/hcs-25/signals/operational.d.ts.map +1 -1
  117. package/dist/browser-root/hcs-25/signals/simple-evals.d.ts +1 -1
  118. package/dist/browser-root/hcs-25/signals/simple-evals.d.ts.map +1 -1
  119. package/dist/cjs/hcs-25/adapters/agentverse.d.ts.map +1 -1
  120. package/dist/cjs/hcs-25/adapters/availability.d.ts.map +1 -1
  121. package/dist/cjs/hcs-25/adapters/connectivity.d.ts.map +1 -1
  122. package/dist/cjs/hcs-25/adapters/ethos.d.ts.map +1 -1
  123. package/dist/cjs/hcs-25/adapters/model-evals.d.ts.map +1 -1
  124. package/dist/cjs/hcs-25/adapters/simple-evals.d.ts.map +1 -1
  125. package/dist/cjs/hcs-25/adapters/x402.d.ts.map +1 -1
  126. package/dist/cjs/hcs-25/collectors/acp.d.ts +42 -0
  127. package/dist/cjs/hcs-25/collectors/acp.d.ts.map +1 -0
  128. package/dist/cjs/hcs-25/collectors/agentverse.d.ts +37 -0
  129. package/dist/cjs/hcs-25/collectors/agentverse.d.ts.map +1 -0
  130. package/dist/cjs/hcs-25/collectors/availability.d.ts +29 -0
  131. package/dist/cjs/hcs-25/collectors/availability.d.ts.map +1 -0
  132. package/dist/cjs/hcs-25/collectors/catalog.d.ts +57 -0
  133. package/dist/cjs/hcs-25/collectors/catalog.d.ts.map +1 -0
  134. package/dist/cjs/hcs-25/collectors/connectivity.d.ts +49 -0
  135. package/dist/cjs/hcs-25/collectors/connectivity.d.ts.map +1 -0
  136. package/dist/cjs/hcs-25/collectors/endpoints.d.ts +9 -0
  137. package/dist/cjs/hcs-25/collectors/endpoints.d.ts.map +1 -0
  138. package/dist/cjs/hcs-25/collectors/erc8004.d.ts +104 -0
  139. package/dist/cjs/hcs-25/collectors/erc8004.d.ts.map +1 -0
  140. package/dist/cjs/hcs-25/collectors/ethos.d.ts +95 -0
  141. package/dist/cjs/hcs-25/collectors/ethos.d.ts.map +1 -0
  142. package/dist/cjs/hcs-25/collectors/freshness.d.ts +36 -0
  143. package/dist/cjs/hcs-25/collectors/freshness.d.ts.map +1 -0
  144. package/dist/cjs/hcs-25/collectors/http.d.ts +67 -0
  145. package/dist/cjs/hcs-25/collectors/http.d.ts.map +1 -0
  146. package/dist/cjs/hcs-25/collectors/index.d.ts +21 -0
  147. package/dist/cjs/hcs-25/collectors/index.d.ts.map +1 -0
  148. package/dist/cjs/hcs-25/collectors/merge.d.ts +11 -0
  149. package/dist/cjs/hcs-25/collectors/merge.d.ts.map +1 -0
  150. package/dist/cjs/hcs-25/collectors/model-evals.d.ts +315 -0
  151. package/dist/cjs/hcs-25/collectors/model-evals.d.ts.map +1 -0
  152. package/dist/cjs/hcs-25/collectors/oss-popularity.d.ts +51 -0
  153. package/dist/cjs/hcs-25/collectors/oss-popularity.d.ts.map +1 -0
  154. package/dist/cjs/hcs-25/collectors/output-verification.d.ts +37 -0
  155. package/dist/cjs/hcs-25/collectors/output-verification.d.ts.map +1 -0
  156. package/dist/cjs/hcs-25/collectors/pipeline.d.ts +19 -0
  157. package/dist/cjs/hcs-25/collectors/pipeline.d.ts.map +1 -0
  158. package/dist/cjs/hcs-25/collectors/runner.d.ts +20 -0
  159. package/dist/cjs/hcs-25/collectors/runner.d.ts.map +1 -0
  160. package/dist/cjs/hcs-25/collectors/simple-evals.d.ts +91 -0
  161. package/dist/cjs/hcs-25/collectors/simple-evals.d.ts.map +1 -0
  162. package/dist/cjs/hcs-25/collectors/types.d.ts +113 -0
  163. package/dist/cjs/hcs-25/collectors/types.d.ts.map +1 -0
  164. package/dist/cjs/hcs-25/collectors/x402-onchain.d.ts +105 -0
  165. package/dist/cjs/hcs-25/collectors/x402-onchain.d.ts.map +1 -0
  166. package/dist/cjs/hcs-25/collectors/x402.d.ts +48 -0
  167. package/dist/cjs/hcs-25/collectors/x402.d.ts.map +1 -0
  168. package/dist/cjs/hcs-25/index.d.ts +1 -0
  169. package/dist/cjs/hcs-25/index.d.ts.map +1 -1
  170. package/dist/cjs/hcs-25/signals/marketplace.d.ts +6 -6
  171. package/dist/cjs/hcs-25/signals/marketplace.d.ts.map +1 -1
  172. package/dist/cjs/hcs-25/signals/model-evals.d.ts +12 -12
  173. package/dist/cjs/hcs-25/signals/model-evals.d.ts.map +1 -1
  174. package/dist/cjs/hcs-25/signals/operational.d.ts +15 -12
  175. package/dist/cjs/hcs-25/signals/operational.d.ts.map +1 -1
  176. package/dist/cjs/hcs-25/signals/simple-evals.d.ts +1 -1
  177. package/dist/cjs/hcs-25/signals/simple-evals.d.ts.map +1 -1
  178. package/dist/cjs/standards-sdk.cjs +2 -2
  179. package/dist/cjs/standards-sdk.cjs.map +1 -1
  180. package/dist/es/hcs-25/adapters/agentverse.d.ts.map +1 -1
  181. package/dist/es/hcs-25/adapters/availability.d.ts.map +1 -1
  182. package/dist/es/hcs-25/adapters/connectivity.d.ts.map +1 -1
  183. package/dist/es/hcs-25/adapters/ethos.d.ts.map +1 -1
  184. package/dist/es/hcs-25/adapters/model-evals.d.ts.map +1 -1
  185. package/dist/es/hcs-25/adapters/simple-evals.d.ts.map +1 -1
  186. package/dist/es/hcs-25/adapters/x402.d.ts.map +1 -1
  187. package/dist/es/hcs-25/collectors/acp.d.ts +42 -0
  188. package/dist/es/hcs-25/collectors/acp.d.ts.map +1 -0
  189. package/dist/es/hcs-25/collectors/agentverse.d.ts +37 -0
  190. package/dist/es/hcs-25/collectors/agentverse.d.ts.map +1 -0
  191. package/dist/es/hcs-25/collectors/availability.d.ts +29 -0
  192. package/dist/es/hcs-25/collectors/availability.d.ts.map +1 -0
  193. package/dist/es/hcs-25/collectors/catalog.d.ts +57 -0
  194. package/dist/es/hcs-25/collectors/catalog.d.ts.map +1 -0
  195. package/dist/es/hcs-25/collectors/connectivity.d.ts +49 -0
  196. package/dist/es/hcs-25/collectors/connectivity.d.ts.map +1 -0
  197. package/dist/es/hcs-25/collectors/endpoints.d.ts +9 -0
  198. package/dist/es/hcs-25/collectors/endpoints.d.ts.map +1 -0
  199. package/dist/es/hcs-25/collectors/erc8004.d.ts +104 -0
  200. package/dist/es/hcs-25/collectors/erc8004.d.ts.map +1 -0
  201. package/dist/es/hcs-25/collectors/ethos.d.ts +95 -0
  202. package/dist/es/hcs-25/collectors/ethos.d.ts.map +1 -0
  203. package/dist/es/hcs-25/collectors/freshness.d.ts +36 -0
  204. package/dist/es/hcs-25/collectors/freshness.d.ts.map +1 -0
  205. package/dist/es/hcs-25/collectors/http.d.ts +67 -0
  206. package/dist/es/hcs-25/collectors/http.d.ts.map +1 -0
  207. package/dist/es/hcs-25/collectors/index.d.ts +21 -0
  208. package/dist/es/hcs-25/collectors/index.d.ts.map +1 -0
  209. package/dist/es/hcs-25/collectors/merge.d.ts +11 -0
  210. package/dist/es/hcs-25/collectors/merge.d.ts.map +1 -0
  211. package/dist/es/hcs-25/collectors/model-evals.d.ts +315 -0
  212. package/dist/es/hcs-25/collectors/model-evals.d.ts.map +1 -0
  213. package/dist/es/hcs-25/collectors/oss-popularity.d.ts +51 -0
  214. package/dist/es/hcs-25/collectors/oss-popularity.d.ts.map +1 -0
  215. package/dist/es/hcs-25/collectors/output-verification.d.ts +37 -0
  216. package/dist/es/hcs-25/collectors/output-verification.d.ts.map +1 -0
  217. package/dist/es/hcs-25/collectors/pipeline.d.ts +19 -0
  218. package/dist/es/hcs-25/collectors/pipeline.d.ts.map +1 -0
  219. package/dist/es/hcs-25/collectors/runner.d.ts +20 -0
  220. package/dist/es/hcs-25/collectors/runner.d.ts.map +1 -0
  221. package/dist/es/hcs-25/collectors/simple-evals.d.ts +91 -0
  222. package/dist/es/hcs-25/collectors/simple-evals.d.ts.map +1 -0
  223. package/dist/es/hcs-25/collectors/types.d.ts +113 -0
  224. package/dist/es/hcs-25/collectors/types.d.ts.map +1 -0
  225. package/dist/es/hcs-25/collectors/x402-onchain.d.ts +105 -0
  226. package/dist/es/hcs-25/collectors/x402-onchain.d.ts.map +1 -0
  227. package/dist/es/hcs-25/collectors/x402.d.ts +48 -0
  228. package/dist/es/hcs-25/collectors/x402.d.ts.map +1 -0
  229. package/dist/es/hcs-25/index.d.ts +1 -0
  230. package/dist/es/hcs-25/index.d.ts.map +1 -1
  231. package/dist/es/hcs-25/signals/marketplace.d.ts +6 -6
  232. package/dist/es/hcs-25/signals/marketplace.d.ts.map +1 -1
  233. package/dist/es/hcs-25/signals/model-evals.d.ts +12 -12
  234. package/dist/es/hcs-25/signals/model-evals.d.ts.map +1 -1
  235. package/dist/es/hcs-25/signals/operational.d.ts +15 -12
  236. package/dist/es/hcs-25/signals/operational.d.ts.map +1 -1
  237. package/dist/es/hcs-25/signals/simple-evals.d.ts +1 -1
  238. package/dist/es/hcs-25/signals/simple-evals.d.ts.map +1 -1
  239. package/dist/es/standards-sdk.es.js +137 -58
  240. package/dist/es/standards-sdk.es.js.map +1 -1
  241. package/dist/es/standards-sdk.es101.js +2 -2
  242. package/dist/es/standards-sdk.es103.js +2 -2
  243. package/dist/es/standards-sdk.es104.js +1 -1
  244. package/dist/es/standards-sdk.es106.js +1 -1
  245. package/dist/es/standards-sdk.es108.js +2 -2
  246. package/dist/es/standards-sdk.es11.js +1 -1
  247. package/dist/es/standards-sdk.es110.js +1 -1
  248. package/dist/es/standards-sdk.es111.js +2 -2
  249. package/dist/es/standards-sdk.es115.js +3 -3
  250. package/dist/es/standards-sdk.es116.js +4 -4
  251. package/dist/es/standards-sdk.es12.js +1 -1
  252. package/dist/es/standards-sdk.es120.js +4 -4
  253. package/dist/es/standards-sdk.es121.js +11 -11
  254. package/dist/es/standards-sdk.es122.js +176 -240
  255. package/dist/es/standards-sdk.es122.js.map +1 -1
  256. package/dist/es/standards-sdk.es123.js +41 -468
  257. package/dist/es/standards-sdk.es123.js.map +1 -1
  258. package/dist/es/standards-sdk.es124.js +28 -103
  259. package/dist/es/standards-sdk.es124.js.map +1 -1
  260. package/dist/es/standards-sdk.es125.js +185 -145
  261. package/dist/es/standards-sdk.es125.js.map +1 -1
  262. package/dist/es/standards-sdk.es126.js +13 -33
  263. package/dist/es/standards-sdk.es126.js.map +1 -1
  264. package/dist/es/standards-sdk.es127.js +44 -10
  265. package/dist/es/standards-sdk.es127.js.map +1 -1
  266. package/dist/es/standards-sdk.es128.js +150 -172
  267. package/dist/es/standards-sdk.es128.js.map +1 -1
  268. package/dist/es/standards-sdk.es129.js +166 -26
  269. package/dist/es/standards-sdk.es129.js.map +1 -1
  270. package/dist/es/standards-sdk.es13.js +1 -1
  271. package/dist/es/standards-sdk.es130.js +375 -18
  272. package/dist/es/standards-sdk.es130.js.map +1 -1
  273. package/dist/es/standards-sdk.es131.js +371 -139
  274. package/dist/es/standards-sdk.es131.js.map +1 -1
  275. package/dist/es/standards-sdk.es132.js +211 -180
  276. package/dist/es/standards-sdk.es132.js.map +1 -1
  277. package/dist/es/standards-sdk.es133.js +210 -770
  278. package/dist/es/standards-sdk.es133.js.map +1 -1
  279. package/dist/es/standards-sdk.es134.js +376 -10
  280. package/dist/es/standards-sdk.es134.js.map +1 -1
  281. package/dist/es/standards-sdk.es135.js +118 -564
  282. package/dist/es/standards-sdk.es135.js.map +1 -1
  283. package/dist/es/standards-sdk.es136.js +233 -608
  284. package/dist/es/standards-sdk.es136.js.map +1 -1
  285. package/dist/es/standards-sdk.es137.js +1328 -12
  286. package/dist/es/standards-sdk.es137.js.map +1 -1
  287. package/dist/es/standards-sdk.es138.js +133 -2
  288. package/dist/es/standards-sdk.es138.js.map +1 -1
  289. package/dist/es/standards-sdk.es139.js +258 -74
  290. package/dist/es/standards-sdk.es139.js.map +1 -1
  291. package/dist/es/standards-sdk.es14.js +1 -1
  292. package/dist/es/standards-sdk.es140.js +104 -38
  293. package/dist/es/standards-sdk.es140.js.map +1 -1
  294. package/dist/es/standards-sdk.es141.js +252 -2
  295. package/dist/es/standards-sdk.es141.js.map +1 -1
  296. package/dist/es/standards-sdk.es142.js +446 -203
  297. package/dist/es/standards-sdk.es142.js.map +1 -1
  298. package/dist/es/standards-sdk.es143.js +104 -1139
  299. package/dist/es/standards-sdk.es143.js.map +1 -1
  300. package/dist/es/standards-sdk.es144.js +144 -290
  301. package/dist/es/standards-sdk.es144.js.map +1 -1
  302. package/dist/es/standards-sdk.es145.js +31 -419
  303. package/dist/es/standards-sdk.es145.js.map +1 -1
  304. package/dist/es/standards-sdk.es146.js +10 -353
  305. package/dist/es/standards-sdk.es146.js.map +1 -1
  306. package/dist/es/standards-sdk.es147.js +144 -1084
  307. package/dist/es/standards-sdk.es147.js.map +1 -1
  308. package/dist/es/standards-sdk.es148.js +25 -204
  309. package/dist/es/standards-sdk.es148.js.map +1 -1
  310. package/dist/es/standards-sdk.es149.js +17 -1562
  311. package/dist/es/standards-sdk.es149.js.map +1 -1
  312. package/dist/es/standards-sdk.es15.js +1 -1
  313. package/dist/es/standards-sdk.es150.js +128 -1134
  314. package/dist/es/standards-sdk.es150.js.map +1 -1
  315. package/dist/es/standards-sdk.es151.js +199 -14
  316. package/dist/es/standards-sdk.es151.js.map +1 -1
  317. package/dist/es/standards-sdk.es152.js +773 -434
  318. package/dist/es/standards-sdk.es152.js.map +1 -1
  319. package/dist/es/standards-sdk.es153.js +10 -256
  320. package/dist/es/standards-sdk.es153.js.map +1 -1
  321. package/dist/es/standards-sdk.es154.js +567 -4
  322. package/dist/es/standards-sdk.es154.js.map +1 -1
  323. package/dist/es/standards-sdk.es155.js +619 -74
  324. package/dist/es/standards-sdk.es155.js.map +1 -1
  325. package/dist/es/standards-sdk.es156.js +12 -86
  326. package/dist/es/standards-sdk.es156.js.map +1 -1
  327. package/dist/es/standards-sdk.es157.js +2 -60
  328. package/dist/es/standards-sdk.es157.js.map +1 -1
  329. package/dist/es/standards-sdk.es158.js +87 -2547
  330. package/dist/es/standards-sdk.es158.js.map +1 -1
  331. package/dist/es/standards-sdk.es159.js +36 -155
  332. package/dist/es/standards-sdk.es159.js.map +1 -1
  333. package/dist/es/standards-sdk.es16.js +6 -6
  334. package/dist/es/standards-sdk.es160.js +2 -7
  335. package/dist/es/standards-sdk.es160.js.map +1 -1
  336. package/dist/es/standards-sdk.es161.js +223 -74
  337. package/dist/es/standards-sdk.es161.js.map +1 -1
  338. package/dist/es/standards-sdk.es162.js +1122 -47
  339. package/dist/es/standards-sdk.es162.js.map +1 -1
  340. package/dist/es/standards-sdk.es163.js +299 -187
  341. package/dist/es/standards-sdk.es163.js.map +1 -1
  342. package/dist/es/standards-sdk.es164.js +419 -23
  343. package/dist/es/standards-sdk.es164.js.map +1 -1
  344. package/dist/es/standards-sdk.es165.js +352 -55
  345. package/dist/es/standards-sdk.es165.js.map +1 -1
  346. package/dist/es/standards-sdk.es166.js +1113 -86
  347. package/dist/es/standards-sdk.es166.js.map +1 -1
  348. package/dist/es/standards-sdk.es167.js +200 -41
  349. package/dist/es/standards-sdk.es167.js.map +1 -1
  350. package/dist/es/standards-sdk.es168.js +1551 -188
  351. package/dist/es/standards-sdk.es168.js.map +1 -1
  352. package/dist/es/standards-sdk.es169.js +1161 -51
  353. package/dist/es/standards-sdk.es169.js.map +1 -1
  354. package/dist/es/standards-sdk.es170.js +15 -47
  355. package/dist/es/standards-sdk.es170.js.map +1 -1
  356. package/dist/es/standards-sdk.es171.js +445 -50
  357. package/dist/es/standards-sdk.es171.js.map +1 -1
  358. package/dist/es/standards-sdk.es172.js +255 -45
  359. package/dist/es/standards-sdk.es172.js.map +1 -1
  360. package/dist/es/standards-sdk.es173.js +4 -122
  361. package/dist/es/standards-sdk.es173.js.map +1 -1
  362. package/dist/es/standards-sdk.es174.js +77 -50
  363. package/dist/es/standards-sdk.es174.js.map +1 -1
  364. package/dist/es/standards-sdk.es175.js +85 -42
  365. package/dist/es/standards-sdk.es175.js.map +1 -1
  366. package/dist/es/standards-sdk.es176.js +60 -72
  367. package/dist/es/standards-sdk.es176.js.map +1 -1
  368. package/dist/es/standards-sdk.es177.js +2544 -65
  369. package/dist/es/standards-sdk.es177.js.map +1 -1
  370. package/dist/es/standards-sdk.es178.js +159 -44
  371. package/dist/es/standards-sdk.es178.js.map +1 -1
  372. package/dist/es/standards-sdk.es179.js +7 -36
  373. package/dist/es/standards-sdk.es179.js.map +1 -1
  374. package/dist/es/standards-sdk.es18.js +13 -13
  375. package/dist/es/standards-sdk.es180.js +86 -30
  376. package/dist/es/standards-sdk.es180.js.map +1 -1
  377. package/dist/es/standards-sdk.es181.js +65 -34
  378. package/dist/es/standards-sdk.es181.js.map +1 -1
  379. package/dist/es/standards-sdk.es182.js +196 -48
  380. package/dist/es/standards-sdk.es182.js.map +1 -1
  381. package/dist/es/standards-sdk.es183.js +23 -135
  382. package/dist/es/standards-sdk.es183.js.map +1 -1
  383. package/dist/es/standards-sdk.es184.js +54 -38
  384. package/dist/es/standards-sdk.es184.js.map +1 -1
  385. package/dist/es/standards-sdk.es185.js +102 -12470
  386. package/dist/es/standards-sdk.es185.js.map +1 -1
  387. package/dist/es/standards-sdk.es186.js +53 -52
  388. package/dist/es/standards-sdk.es186.js.map +1 -1
  389. package/dist/es/standards-sdk.es187.js +223 -103
  390. package/dist/es/standards-sdk.es187.js.map +1 -1
  391. package/dist/es/standards-sdk.es188.js +66 -75
  392. package/dist/es/standards-sdk.es188.js.map +1 -1
  393. package/dist/es/standards-sdk.es189.js +46 -197
  394. package/dist/es/standards-sdk.es189.js.map +1 -1
  395. package/dist/es/standards-sdk.es19.js +10 -10
  396. package/dist/es/standards-sdk.es190.js +58 -668
  397. package/dist/es/standards-sdk.es190.js.map +1 -1
  398. package/dist/es/standards-sdk.es191.js +45 -168
  399. package/dist/es/standards-sdk.es191.js.map +1 -1
  400. package/dist/es/standards-sdk.es192.js +115 -315
  401. package/dist/es/standards-sdk.es192.js.map +1 -1
  402. package/dist/es/standards-sdk.es193.js +51 -340
  403. package/dist/es/standards-sdk.es193.js.map +1 -1
  404. package/dist/es/standards-sdk.es194.js +54 -448
  405. package/dist/es/standards-sdk.es194.js.map +1 -1
  406. package/dist/es/standards-sdk.es195.js +72 -331
  407. package/dist/es/standards-sdk.es195.js.map +1 -1
  408. package/dist/es/standards-sdk.es196.js +75 -76
  409. package/dist/es/standards-sdk.es196.js.map +1 -1
  410. package/dist/es/standards-sdk.es197.js +44 -73
  411. package/dist/es/standards-sdk.es197.js.map +1 -1
  412. package/dist/es/standards-sdk.es198.js +34 -15
  413. package/dist/es/standards-sdk.es198.js.map +1 -1
  414. package/dist/es/standards-sdk.es199.js +30 -139
  415. package/dist/es/standards-sdk.es199.js.map +1 -1
  416. package/dist/es/standards-sdk.es2.js +2 -2
  417. package/dist/es/standards-sdk.es20.js +1 -1
  418. package/dist/es/standards-sdk.es200.js +34 -517
  419. package/dist/es/standards-sdk.es200.js.map +1 -1
  420. package/dist/es/standards-sdk.es201.js +48 -259
  421. package/dist/es/standards-sdk.es201.js.map +1 -1
  422. package/dist/es/standards-sdk.es202.js +127 -185
  423. package/dist/es/standards-sdk.es202.js.map +1 -1
  424. package/dist/es/standards-sdk.es203.js +36 -113
  425. package/dist/es/standards-sdk.es203.js.map +1 -1
  426. package/dist/es/standards-sdk.es204.js +12464 -134
  427. package/dist/es/standards-sdk.es204.js.map +1 -1
  428. package/dist/es/standards-sdk.es205.js +14 -181
  429. package/dist/es/standards-sdk.es205.js.map +1 -1
  430. package/dist/es/standards-sdk.es206.js +55 -683
  431. package/dist/es/standards-sdk.es206.js.map +1 -1
  432. package/dist/es/standards-sdk.es207.js +93 -167
  433. package/dist/es/standards-sdk.es207.js.map +1 -1
  434. package/dist/es/standards-sdk.es208.js +71 -225
  435. package/dist/es/standards-sdk.es208.js.map +1 -1
  436. package/dist/es/standards-sdk.es209.js +176 -215
  437. package/dist/es/standards-sdk.es209.js.map +1 -1
  438. package/dist/es/standards-sdk.es21.js +1 -1
  439. package/dist/es/standards-sdk.es210.js +675 -0
  440. package/dist/es/standards-sdk.es210.js.map +1 -0
  441. package/dist/es/standards-sdk.es211.js +76 -0
  442. package/dist/es/standards-sdk.es211.js.map +1 -0
  443. package/dist/es/standards-sdk.es212.js +175 -0
  444. package/dist/es/standards-sdk.es212.js.map +1 -0
  445. package/dist/es/standards-sdk.es213.js +325 -0
  446. package/dist/es/standards-sdk.es213.js.map +1 -0
  447. package/dist/es/standards-sdk.es214.js +349 -0
  448. package/dist/es/standards-sdk.es214.js.map +1 -0
  449. package/dist/es/standards-sdk.es215.js +456 -0
  450. package/dist/es/standards-sdk.es215.js.map +1 -0
  451. package/dist/es/standards-sdk.es216.js +334 -0
  452. package/dist/es/standards-sdk.es216.js.map +1 -0
  453. package/dist/es/standards-sdk.es217.js +79 -0
  454. package/dist/es/standards-sdk.es217.js.map +1 -0
  455. package/dist/es/standards-sdk.es218.js +142 -0
  456. package/dist/es/standards-sdk.es218.js.map +1 -0
  457. package/dist/es/standards-sdk.es219.js +520 -0
  458. package/dist/es/standards-sdk.es219.js.map +1 -0
  459. package/dist/es/standards-sdk.es22.js +1 -1
  460. package/dist/es/standards-sdk.es220.js +262 -0
  461. package/dist/es/standards-sdk.es220.js.map +1 -0
  462. package/dist/es/standards-sdk.es221.js +199 -0
  463. package/dist/es/standards-sdk.es221.js.map +1 -0
  464. package/dist/es/standards-sdk.es222.js +122 -0
  465. package/dist/es/standards-sdk.es222.js.map +1 -0
  466. package/dist/es/standards-sdk.es223.js +155 -0
  467. package/dist/es/standards-sdk.es223.js.map +1 -0
  468. package/dist/es/standards-sdk.es224.js +187 -0
  469. package/dist/es/standards-sdk.es224.js.map +1 -0
  470. package/dist/es/standards-sdk.es225.js +687 -0
  471. package/dist/es/standards-sdk.es225.js.map +1 -0
  472. package/dist/es/standards-sdk.es226.js +188 -0
  473. package/dist/es/standards-sdk.es226.js.map +1 -0
  474. package/dist/es/standards-sdk.es227.js +238 -0
  475. package/dist/es/standards-sdk.es227.js.map +1 -0
  476. package/dist/es/standards-sdk.es228.js +242 -0
  477. package/dist/es/standards-sdk.es228.js.map +1 -0
  478. package/dist/es/standards-sdk.es23.js +1 -1
  479. package/dist/es/standards-sdk.es24.js +1 -1
  480. package/dist/es/standards-sdk.es25.js +1 -1
  481. package/dist/es/standards-sdk.es26.js +1 -1
  482. package/dist/es/standards-sdk.es27.js +13 -13
  483. package/dist/es/standards-sdk.es30.js +2 -2
  484. package/dist/es/standards-sdk.es31.js +4 -4
  485. package/dist/es/standards-sdk.es32.js +1 -1
  486. package/dist/es/standards-sdk.es35.js +7 -7
  487. package/dist/es/standards-sdk.es36.js +4 -4
  488. package/dist/es/standards-sdk.es37.js +2 -2
  489. package/dist/es/standards-sdk.es38.js +2 -2
  490. package/dist/es/standards-sdk.es39.js +1 -1
  491. package/dist/es/standards-sdk.es4.js +2 -2
  492. package/dist/es/standards-sdk.es40.js +1 -1
  493. package/dist/es/standards-sdk.es41.js +2 -2
  494. package/dist/es/standards-sdk.es46.js +1 -1
  495. package/dist/es/standards-sdk.es5.js +2 -2
  496. package/dist/es/standards-sdk.es51.js +1 -1
  497. package/dist/es/standards-sdk.es53.js +1 -1
  498. package/dist/es/standards-sdk.es56.js +2 -2
  499. package/dist/es/standards-sdk.es59.js +1 -1
  500. package/dist/es/standards-sdk.es6.js +2 -2
  501. package/dist/es/standards-sdk.es60.js +1 -1
  502. package/dist/es/standards-sdk.es62.js +1 -1
  503. package/dist/es/standards-sdk.es63.js +2 -2
  504. package/dist/es/standards-sdk.es64.js +1 -1
  505. package/dist/es/standards-sdk.es65.js +1 -1
  506. package/dist/es/standards-sdk.es66.js +1 -1
  507. package/dist/es/standards-sdk.es67.js +8 -8
  508. package/dist/es/standards-sdk.es69.js +1 -1
  509. package/dist/es/standards-sdk.es7.js +1 -1
  510. package/dist/es/standards-sdk.es71.js +2 -2
  511. package/dist/es/standards-sdk.es72.js +3 -3
  512. package/dist/es/standards-sdk.es75.js +5 -5
  513. package/dist/es/standards-sdk.es76.js +3 -3
  514. package/dist/es/standards-sdk.es77.js +2 -2
  515. package/dist/es/standards-sdk.es78.js +1 -1
  516. package/dist/es/standards-sdk.es81.js +2 -2
  517. package/dist/es/standards-sdk.es83.js +2 -2
  518. package/dist/es/standards-sdk.es84.js +5 -5
  519. package/dist/es/standards-sdk.es85.js +1 -1
  520. package/dist/es/standards-sdk.es88.js +1 -1
  521. package/dist/es/standards-sdk.es89.js +2 -2
  522. package/dist/es/standards-sdk.es9.js +2 -2
  523. package/dist/es/standards-sdk.es90.js +4 -4
  524. package/dist/es/standards-sdk.es94.js +3 -3
  525. package/dist/es/standards-sdk.es96.js +2 -2
  526. package/dist/es/standards-sdk.es98.js +1 -1
  527. package/dist/es/standards-sdk.es99.js +3 -3
  528. package/package.json +1 -1
@@ -1,15 +1,49 @@
1
- import { HCS26BaseClient } from "./standards-sdk.es125.js";
2
- class HCS26BrowserClient extends HCS26BaseClient {
3
- constructor(config) {
4
- super({
5
- network: config.network,
6
- logger: config.logger,
7
- mirrorNode: config.mirrorNode,
8
- verificationProvider: config.verificationProvider
9
- });
1
+ import { isJsonObject, readString, readSubjectAdditional } from "./standards-sdk.es198.js";
2
+ import "./standards-sdk.es182.js";
3
+ import "./standards-sdk.es195.js";
4
+ import "./standards-sdk.es196.js";
5
+ import "./standards-sdk.es197.js";
6
+ const ENDPOINT_KEYS = [
7
+ "endpoint",
8
+ "url",
9
+ "serverUrl",
10
+ "endpointUrl",
11
+ "baseUrl"
12
+ ];
13
+ function readEndpointKeys(record) {
14
+ if (!record) {
15
+ return null;
10
16
  }
17
+ for (const key of ENDPOINT_KEYS) {
18
+ const value = record[key];
19
+ if (typeof value === "string" && /^https?:\/\//.test(value)) {
20
+ return value;
21
+ }
22
+ }
23
+ return null;
24
+ }
25
+ function resolveSubjectEndpoint(subject) {
26
+ const metadata = subject.metadata;
27
+ if (metadata) {
28
+ const direct = readEndpointKeys(metadata);
29
+ if (direct) {
30
+ return direct;
31
+ }
32
+ const endpoints = metadata.endpoints;
33
+ if (Array.isArray(endpoints)) {
34
+ for (const entry of endpoints) {
35
+ if (isJsonObject(entry)) {
36
+ const url = readString(entry, "url");
37
+ if (url && /^https?:\/\//.test(url)) {
38
+ return url;
39
+ }
40
+ }
41
+ }
42
+ }
43
+ }
44
+ return readEndpointKeys(readSubjectAdditional(subject));
11
45
  }
12
46
  export {
13
- HCS26BrowserClient
47
+ resolveSubjectEndpoint
14
48
  };
15
49
  //# sourceMappingURL=standards-sdk.es127.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"standards-sdk.es127.js","sources":["../../src/hcs-26/browser.ts"],"sourcesContent":["import type { ILogger } from '../utils/logger';\nimport type { NetworkType } from '../utils/types';\nimport { HCS26BaseClient, type HCS26ClientConfig } from './base-client';\n\nexport interface BrowserHCS26ClientConfig\n extends Omit<HCS26ClientConfig, 'network' | 'logger'> {\n network: NetworkType;\n logger?: ILogger;\n}\n\nexport class HCS26BrowserClient extends HCS26BaseClient {\n constructor(config: BrowserHCS26ClientConfig) {\n super({\n network: config.network,\n logger: config.logger,\n mirrorNode: config.mirrorNode,\n verificationProvider: config.verificationProvider,\n });\n }\n}\n"],"names":[],"mappings":";AAUO,MAAM,2BAA2B,gBAAgB;AAAA,EACtD,YAAY,QAAkC;AAC5C,UAAM;AAAA,MACJ,SAAS,OAAO;AAAA,MAChB,QAAQ,OAAO;AAAA,MACf,YAAY,OAAO;AAAA,MACnB,sBAAsB,OAAO;AAAA,IAAA,CAC9B;AAAA,EACH;AACF;"}
1
+ {"version":3,"file":"standards-sdk.es127.js","sources":["../../src/hcs-25/collectors/endpoints.ts"],"sourcesContent":["import type { Hcs25Subject } from '../types';\nimport { isJsonObject, readString, readSubjectAdditional } from '../signals';\n\nconst ENDPOINT_KEYS = [\n 'endpoint',\n 'url',\n 'serverUrl',\n 'endpointUrl',\n 'baseUrl',\n] as const;\n\nfunction readEndpointKeys(\n record: Record<string, unknown> | undefined,\n): string | null {\n if (!record) {\n return null;\n }\n for (const key of ENDPOINT_KEYS) {\n const value = record[key];\n if (typeof value === 'string' && /^https?:\\/\\//.test(value)) {\n return value;\n }\n }\n return null;\n}\n\n/**\n * Resolves the subject's callable endpoint URL from common metadata\n * locations: `metadata.endpoint|url|serverUrl|endpointUrl|baseUrl`,\n * `metadata.additional.*` equivalents, and the first\n * `metadata.endpoints[].url` (AgentVerse-style endpoint lists).\n */\nexport function resolveSubjectEndpoint(subject: Hcs25Subject): string | null {\n const metadata = subject.metadata;\n if (metadata) {\n const direct = readEndpointKeys(metadata);\n if (direct) {\n return direct;\n }\n\n const endpoints = metadata.endpoints;\n if (Array.isArray(endpoints)) {\n for (const entry of endpoints) {\n if (isJsonObject(entry)) {\n const url = readString(entry, 'url');\n if (url && /^https?:\\/\\//.test(url)) {\n return url;\n }\n }\n }\n }\n }\n\n return readEndpointKeys(readSubjectAdditional(subject));\n}\n"],"names":[],"mappings":";;;;;AAGA,MAAM,gBAAgB;AAAA,EACpB;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACF;AAEA,SAAS,iBACP,QACe;AACf,MAAI,CAAC,QAAQ;AACX,WAAO;AAAA,EACT;AACA,aAAW,OAAO,eAAe;AAC/B,UAAM,QAAQ,OAAO,GAAG;AACxB,QAAI,OAAO,UAAU,YAAY,eAAe,KAAK,KAAK,GAAG;AAC3D,aAAO;AAAA,IACT;AAAA,EACF;AACA,SAAO;AACT;AAQO,SAAS,uBAAuB,SAAsC;AAC3E,QAAM,WAAW,QAAQ;AACzB,MAAI,UAAU;AACZ,UAAM,SAAS,iBAAiB,QAAQ;AACxC,QAAI,QAAQ;AACV,aAAO;AAAA,IACT;AAEA,UAAM,YAAY,SAAS;AAC3B,QAAI,MAAM,QAAQ,SAAS,GAAG;AAC5B,iBAAW,SAAS,WAAW;AAC7B,YAAI,aAAa,KAAK,GAAG;AACvB,gBAAM,MAAM,WAAW,OAAO,KAAK;AACnC,cAAI,OAAO,eAAe,KAAK,GAAG,GAAG;AACnC,mBAAO;AAAA,UACT;AAAA,QACF;AAAA,MACF;AAAA,IACF;AAAA,EACF;AAEA,SAAO,iBAAiB,sBAAsB,OAAO,CAAC;AACxD;"}
@@ -1,185 +1,163 @@
1
- let loggerFactory = null;
2
- function normalizeErrorData(error) {
3
- const normalizedData = {
4
- name: error.name,
5
- message: error.message
6
- };
7
- if (error.stack) {
8
- normalizedData.stack = error.stack;
9
- }
10
- for (const [key, value] of Object.entries(error)) {
11
- normalizedData[key] = value;
12
- }
13
- return normalizedData;
1
+ import { readMetadataRecord, readString } from "./standards-sdk.es198.js";
2
+ import "./standards-sdk.es182.js";
3
+ import "./standards-sdk.es195.js";
4
+ import "./standards-sdk.es196.js";
5
+ import "./standards-sdk.es197.js";
6
+ import { resolveSubjectEndpoint } from "./standards-sdk.es127.js";
7
+ import { Hcs25CollectorHttpError, isTimeoutError } from "./standards-sdk.es122.js";
8
+ const DEFAULT_EXCLUDED_REGISTRIES = [
9
+ "openrouter",
10
+ "near-ai"
11
+ ];
12
+ function minutesSince(timestamp, now) {
13
+ const ms = Date.parse(timestamp);
14
+ if (Number.isNaN(ms)) {
15
+ return null;
16
+ }
17
+ return Math.max(0, (now.getTime() - ms) / 6e4);
14
18
  }
15
- function serializeLogData(data) {
16
- try {
17
- return JSON.stringify(
18
- data,
19
- (_key, value) => {
20
- if (value instanceof Error) {
21
- return normalizeErrorData(value);
22
- }
23
- if (typeof value === "bigint") {
24
- return value.toString();
25
- }
26
- if (value instanceof Map) {
27
- return Object.fromEntries(value);
28
- }
29
- if (value instanceof Set) {
30
- return Array.from(value);
19
+ function missingResult(now, reason) {
20
+ return [
21
+ {
22
+ signalId: "availability.probe",
23
+ status: "missing",
24
+ fields: [
25
+ {
26
+ scope: "root",
27
+ values: {
28
+ availabilityScore: null,
29
+ availabilityCheckedAt: now.toISOString(),
30
+ availabilityReason: reason,
31
+ availabilitySource: "probe",
32
+ availabilityStatus: "missing"
33
+ }
31
34
  }
32
- if (value instanceof Uint8Array) {
33
- return Array.from(value);
34
- }
35
- return value;
36
- },
37
- 2
38
- );
39
- } catch {
40
- return String(data);
41
- }
42
- }
43
- function setLoggerFactory(factory) {
44
- loggerFactory = factory;
45
- Logger.clearInstances();
46
- }
47
- const _Logger = class _Logger {
48
- constructor(options = {}) {
49
- if (loggerFactory) {
50
- return loggerFactory(options);
35
+ ]
51
36
  }
52
- const globalDisable = typeof process !== "undefined" && process.env?.DISABLE_LOGS === "true";
53
- this.silent = options.silent || globalDisable;
54
- this.level = this.silent ? "silent" : options.level || "info";
55
- this.moduleContext = options.module || "app";
56
- this.prettyPrint = !this.silent && options.prettyPrint !== false;
57
- }
58
- static getInstance(options = {}) {
59
- const moduleKey = options.module || "default";
60
- const globalDisable = typeof process !== "undefined" && process.env?.DISABLE_LOGS === "true";
61
- if (globalDisable && _Logger.instances.has(moduleKey)) {
62
- const existingLogger = _Logger.instances.get(moduleKey);
63
- if (existingLogger.getLevel() !== "silent") {
64
- _Logger.instances.delete(moduleKey);
37
+ ];
38
+ }
39
+ function createAvailabilitySignalAdapter(options = {}) {
40
+ const resolveEndpoint = options.resolveEndpoint ?? resolveSubjectEndpoint;
41
+ const method = options.method ?? "auto";
42
+ const collect = async (subject, context) => {
43
+ const { now } = context;
44
+ const results = [];
45
+ const metrics = readMetadataRecord(subject, "metrics");
46
+ const lastActiveAt = metrics ? readString(metrics, "lastActiveAt") : null;
47
+ if (lastActiveAt !== null) {
48
+ const mins = minutesSince(lastActiveAt, now);
49
+ if (mins !== null) {
50
+ results.push({
51
+ signalId: "availability.last_seen",
52
+ status: "ok",
53
+ value: mins,
54
+ fields: [{ scope: "metrics", values: { minsFromLastOnline: mins } }],
55
+ provenance: {
56
+ source: "metadata",
57
+ subjectId: subject.id,
58
+ fetchedAt: now.toISOString()
59
+ }
60
+ });
65
61
  }
66
62
  }
67
- if (!_Logger.instances.has(moduleKey)) {
68
- const logger = loggerFactory ? loggerFactory(options) : new _Logger(options);
69
- _Logger.instances.set(moduleKey, logger);
70
- }
71
- return _Logger.instances.get(moduleKey);
72
- }
73
- setLogLevel(level) {
74
- this.level = level;
75
- }
76
- getLevel() {
77
- return this.level;
78
- }
79
- setSilent(silent) {
80
- this.silent = silent;
81
- if (silent) {
82
- this.level = "silent";
83
- }
84
- }
85
- setModule(module) {
86
- this.moduleContext = module;
87
- }
88
- formatArgs(args) {
89
- if (args.length === 0) {
90
- return { msg: "" };
91
- }
92
- if (args.length === 1) {
93
- if (typeof args[0] === "string") {
94
- return { msg: args[0] };
63
+ const endpoint = resolveEndpoint(subject);
64
+ if (!endpoint) {
65
+ if (results.length > 0) {
66
+ return results;
95
67
  }
96
- return { msg: "", data: args[0] };
68
+ return missingResult(now, "no endpoint metadata");
97
69
  }
98
- const stringArgs = [];
99
- const objectArgs = [];
100
- args.forEach((arg) => {
101
- if (typeof arg === "string" || typeof arg === "number" || typeof arg === "boolean") {
102
- stringArgs.push(String(arg));
70
+ const started = now.getTime();
71
+ try {
72
+ const attempt = async (verb) => {
73
+ const response = await context.fetch(endpoint, {
74
+ method: verb,
75
+ headers: options.headers,
76
+ signal: context.signal
77
+ });
78
+ return response.status;
79
+ };
80
+ let status;
81
+ if (method === "auto") {
82
+ try {
83
+ status = await attempt("HEAD");
84
+ if (status === 405 || status === 501) {
85
+ status = await attempt("GET");
86
+ }
87
+ } catch (error) {
88
+ if (error instanceof Hcs25CollectorHttpError) {
89
+ throw error;
90
+ }
91
+ status = await attempt("GET");
92
+ }
103
93
  } else {
104
- objectArgs.push(arg);
94
+ status = await attempt(method);
105
95
  }
106
- });
107
- const msg = stringArgs.join(" ");
108
- return objectArgs.length > 0 ? { msg, data: objectArgs } : { msg };
109
- }
110
- shouldLog(level) {
111
- if (this.silent || this.level === "silent") {
112
- return false;
113
- }
114
- const levels = ["trace", "debug", "info", "warn", "error", "silent"];
115
- const currentLevelIndex = levels.indexOf(this.level);
116
- const targetLevelIndex = levels.indexOf(level);
117
- return targetLevelIndex >= currentLevelIndex;
118
- }
119
- getConsoleMethod(level) {
120
- if (level === "error") {
121
- return console.error;
122
- }
123
- if (level === "warn") {
124
- return console.warn;
125
- }
126
- if (level === "debug") {
127
- return console.debug;
128
- }
129
- return console.log;
130
- }
131
- writeLog(level, ...args) {
132
- if (!this.shouldLog(level)) {
133
- return;
134
- }
135
- const { msg, data } = this.formatArgs(args);
136
- const timestamp = (/* @__PURE__ */ new Date()).toISOString();
137
- const consoleMethod = this.getConsoleMethod(level);
138
- if (this.prettyPrint) {
139
- const levelFormatted = level.toUpperCase().padEnd(5);
140
- let output = `${timestamp} ${levelFormatted} [${this.moduleContext}] ${msg}`;
141
- if (data) {
142
- output += "\n" + serializeLogData(data);
143
- }
144
- consoleMethod(output);
145
- } else {
146
- const logObj = {
147
- timestamp,
148
- level,
149
- module: this.moduleContext,
150
- message: msg,
151
- ...data && { data }
152
- };
153
- consoleMethod(JSON.stringify(logObj));
96
+ const latencyMs = Date.now() - started;
97
+ const reachable = status < 500;
98
+ results.push({
99
+ signalId: "availability.probe",
100
+ status: "ok",
101
+ value: reachable ? 1 : 0,
102
+ fields: [
103
+ {
104
+ scope: "root",
105
+ values: {
106
+ availabilityScore: reachable ? 1 : 0,
107
+ availabilityCheckedAt: now.toISOString(),
108
+ availabilityLatencyMs: latencyMs,
109
+ availabilityReason: reachable ? "reachable" : `endpoint returned HTTP ${status}`,
110
+ availabilitySource: "probe",
111
+ availabilityStatus: "ok"
112
+ }
113
+ }
114
+ ],
115
+ provenance: {
116
+ source: "probe",
117
+ sourceUrl: endpoint,
118
+ subjectId: subject.id,
119
+ fetchedAt: now.toISOString()
120
+ }
121
+ });
122
+ return results;
123
+ } catch (error) {
124
+ const timedOut = isTimeoutError(error);
125
+ const statusValue = timedOut ? "timeout" : "error";
126
+ results.push({
127
+ signalId: "availability.probe",
128
+ status: statusValue,
129
+ fields: [
130
+ {
131
+ scope: "root",
132
+ values: {
133
+ availabilityCheckedAt: now.toISOString(),
134
+ availabilityReason: error instanceof Error ? error.message : String(error),
135
+ availabilitySource: "probe",
136
+ availabilityStatus: statusValue
137
+ }
138
+ }
139
+ ],
140
+ provenance: {
141
+ source: "probe",
142
+ sourceUrl: endpoint,
143
+ subjectId: subject.id,
144
+ fetchedAt: now.toISOString()
145
+ }
146
+ });
147
+ return results;
154
148
  }
155
- }
156
- debug(...args) {
157
- this.writeLog("debug", ...args);
158
- }
159
- info(...args) {
160
- this.writeLog("info", ...args);
161
- }
162
- warn(...args) {
163
- this.writeLog("warn", ...args);
164
- }
165
- error(...args) {
166
- this.writeLog("error", ...args);
167
- }
168
- trace(...args) {
169
- this.writeLog("trace", ...args);
170
- }
171
- /**
172
- * Clear all logger instances
173
- * Used when switching logger implementations
174
- */
175
- static clearInstances() {
176
- _Logger.instances.clear();
177
- }
178
- };
179
- _Logger.instances = /* @__PURE__ */ new Map();
180
- let Logger = _Logger;
149
+ };
150
+ return {
151
+ id: "availability",
152
+ produces: ["availability.probe", "availability.last_seen"],
153
+ timeoutMs: options.timeoutMs,
154
+ includeRegistries: options.includeRegistries,
155
+ excludeRegistries: options.excludeRegistries ?? DEFAULT_EXCLUDED_REGISTRIES,
156
+ appliesTo: options.appliesTo,
157
+ collect
158
+ };
159
+ }
181
160
  export {
182
- Logger,
183
- setLoggerFactory
161
+ createAvailabilitySignalAdapter
184
162
  };
185
163
  //# sourceMappingURL=standards-sdk.es128.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"standards-sdk.es128.js","sources":["../../src/utils/logger.ts"],"sourcesContent":["export type LogLevel = 'trace' | 'debug' | 'info' | 'warn' | 'error' | 'silent';\n\nexport interface LoggerOptions {\n level?: LogLevel;\n module?: string;\n prettyPrint?: boolean;\n silent?: boolean;\n}\n\nexport interface ILogger {\n debug(...args: any[]): void;\n info(...args: any[]): void;\n warn(...args: any[]): void;\n error(...args: any[]): void;\n trace(...args: any[]): void;\n setLogLevel(level: LogLevel): void;\n getLevel(): LogLevel;\n setSilent(silent: boolean): void;\n setModule(module: string): void;\n}\n\nexport type LoggerFactory = (options: LoggerOptions) => ILogger;\n\nlet loggerFactory: LoggerFactory | null = null;\n\nfunction normalizeErrorData(error: Error): Record<string, unknown> {\n const normalizedData: Record<string, unknown> = {\n name: error.name,\n message: error.message,\n };\n\n if (error.stack) {\n normalizedData.stack = error.stack;\n }\n\n for (const [key, value] of Object.entries(error)) {\n normalizedData[key] = value;\n }\n\n return normalizedData;\n}\n\nfunction serializeLogData(data: unknown): string {\n try {\n return JSON.stringify(\n data,\n (_key, value: unknown) => {\n if (value instanceof Error) {\n return normalizeErrorData(value);\n }\n if (typeof value === 'bigint') {\n return value.toString();\n }\n if (value instanceof Map) {\n return Object.fromEntries(value);\n }\n if (value instanceof Set) {\n return Array.from(value);\n }\n if (value instanceof Uint8Array) {\n return Array.from(value);\n }\n return value;\n },\n 2,\n );\n } catch {\n return String(data);\n }\n}\n\n/**\n * Set a custom logger factory to override the default Pino-based implementation\n */\nexport function setLoggerFactory(factory: LoggerFactory): void {\n loggerFactory = factory;\n Logger.clearInstances();\n}\n\nexport class Logger implements ILogger {\n private static instances: Map<string, ILogger> = new Map();\n private level: LogLevel;\n private moduleContext: string;\n private silent: boolean;\n private prettyPrint: boolean;\n\n constructor(options: LoggerOptions = {}) {\n if (loggerFactory) {\n return loggerFactory(options) as any;\n }\n\n const globalDisable =\n typeof process !== 'undefined' && process.env?.DISABLE_LOGS === 'true';\n\n this.silent = options.silent || globalDisable;\n this.level = this.silent ? 'silent' : options.level || 'info';\n this.moduleContext = options.module || 'app';\n this.prettyPrint = !this.silent && options.prettyPrint !== false;\n }\n\n static getInstance(options: LoggerOptions = {}): ILogger {\n const moduleKey = options.module || 'default';\n\n const globalDisable =\n typeof process !== 'undefined' && process.env?.DISABLE_LOGS === 'true';\n\n if (globalDisable && Logger.instances.has(moduleKey)) {\n const existingLogger = Logger.instances.get(moduleKey)!;\n if (existingLogger.getLevel() !== 'silent') {\n Logger.instances.delete(moduleKey);\n }\n }\n\n if (!Logger.instances.has(moduleKey)) {\n const logger = loggerFactory\n ? loggerFactory(options)\n : new Logger(options);\n Logger.instances.set(moduleKey, logger);\n }\n\n return Logger.instances.get(moduleKey)!;\n }\n\n setLogLevel(level: LogLevel): void {\n this.level = level;\n }\n\n getLevel(): LogLevel {\n return this.level;\n }\n\n setSilent(silent: boolean): void {\n this.silent = silent;\n if (silent) {\n this.level = 'silent';\n }\n }\n\n setModule(module: string): void {\n this.moduleContext = module;\n }\n\n private formatArgs(args: any[]): { msg: string; data?: any } {\n if (args.length === 0) {\n return { msg: '' };\n }\n\n if (args.length === 1) {\n if (typeof args[0] === 'string') {\n return { msg: args[0] };\n }\n return { msg: '', data: args[0] };\n }\n\n const stringArgs: string[] = [];\n const objectArgs: any[] = [];\n\n args.forEach(arg => {\n if (\n typeof arg === 'string' ||\n typeof arg === 'number' ||\n typeof arg === 'boolean'\n ) {\n stringArgs.push(String(arg));\n } else {\n objectArgs.push(arg);\n }\n });\n\n const msg = stringArgs.join(' ');\n return objectArgs.length > 0 ? { msg, data: objectArgs } : { msg };\n }\n\n private shouldLog(level: LogLevel): boolean {\n if (this.silent || this.level === 'silent') {\n return false;\n }\n\n const levels = ['trace', 'debug', 'info', 'warn', 'error', 'silent'];\n const currentLevelIndex = levels.indexOf(this.level);\n const targetLevelIndex = levels.indexOf(level);\n\n return targetLevelIndex >= currentLevelIndex;\n }\n\n private getConsoleMethod(level: LogLevel): (...args: any[]) => void {\n if (level === 'error') {\n return console.error;\n }\n if (level === 'warn') {\n return console.warn;\n }\n if (level === 'debug') {\n return console.debug;\n }\n return console.log;\n }\n\n private writeLog(level: LogLevel, ...args: any[]): void {\n if (!this.shouldLog(level)) {\n return;\n }\n\n const { msg, data } = this.formatArgs(args);\n const timestamp = new Date().toISOString();\n const consoleMethod = this.getConsoleMethod(level);\n\n if (this.prettyPrint) {\n const levelFormatted = level.toUpperCase().padEnd(5);\n let output = `${timestamp} ${levelFormatted} [${this.moduleContext}] ${msg}`;\n\n if (data) {\n output += '\\n' + serializeLogData(data);\n }\n\n consoleMethod(output);\n } else {\n const logObj = {\n timestamp,\n level,\n module: this.moduleContext,\n message: msg,\n ...(data && { data }),\n };\n\n consoleMethod(JSON.stringify(logObj));\n }\n }\n\n debug(...args: any[]): void {\n this.writeLog('debug', ...args);\n }\n\n info(...args: any[]): void {\n this.writeLog('info', ...args);\n }\n\n warn(...args: any[]): void {\n this.writeLog('warn', ...args);\n }\n\n error(...args: any[]): void {\n this.writeLog('error', ...args);\n }\n\n trace(...args: any[]): void {\n this.writeLog('trace', ...args);\n }\n\n /**\n * Clear all logger instances\n * Used when switching logger implementations\n */\n static clearInstances(): void {\n Logger.instances.clear();\n }\n}\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"standards-sdk.es128.js","sources":["../../src/hcs-25/collectors/availability.ts"],"sourcesContent":["import type { Hcs25Subject } from '../types';\nimport { readMetadataRecord, readString } from '../signals';\nimport { resolveSubjectEndpoint } from './endpoints';\nimport { Hcs25CollectorHttpError, isTimeoutError } from './http';\nimport type {\n Hcs25CollectContext,\n Hcs25SignalAdapter,\n Hcs25SignalAdapterResult,\n} from './types';\n\n/**\n * Options for the availability signal adapter.\n */\nexport interface Hcs25AvailabilitySignalAdapterOptions {\n /** Custom endpoint resolver; defaults to {@link resolveSubjectEndpoint}. */\n resolveEndpoint?: (subject: Hcs25Subject) => string | null;\n /** Probe method. `auto` (default) tries HEAD and falls back to GET. */\n method?: 'auto' | 'HEAD' | 'GET';\n /** Per-probe timeout in milliseconds. */\n timeoutMs?: number;\n /** Extra request headers (e.g. auth for gated endpoints). */\n headers?: Record<string, string>;\n /** Applicability constraints. */\n includeRegistries?: readonly string[];\n excludeRegistries?: readonly string[];\n appliesTo?: (subject: Hcs25Subject) => boolean;\n}\n\nconst DEFAULT_EXCLUDED_REGISTRIES: readonly string[] = [\n 'openrouter',\n 'near-ai',\n];\n\nfunction minutesSince(timestamp: string, now: Date): number | null {\n const ms = Date.parse(timestamp);\n if (Number.isNaN(ms)) {\n return null;\n }\n return Math.max(0, (now.getTime() - ms) / 60000);\n}\n\nfunction missingResult(now: Date, reason: string): Hcs25SignalAdapterResult[] {\n return [\n {\n signalId: 'availability.probe',\n status: 'missing',\n fields: [\n {\n scope: 'root',\n values: {\n availabilityScore: null,\n availabilityCheckedAt: now.toISOString(),\n availabilityReason: reason,\n availabilitySource: 'probe',\n availabilityStatus: 'missing',\n },\n },\n ],\n },\n ];\n}\n\n/**\n * Creates the `availability` signal adapter: probes the subject's endpoint,\n * records reachability, latency, and probe provenance, and converts the\n * ecosystem-native `metrics.lastActiveAt` field into\n * `metrics.minsFromLastOnline` (the deterministic scoring adapter consumes\n * the derived field). Unreachable endpoints score 0; absent endpoints are\n * `missing`.\n */\nexport function createAvailabilitySignalAdapter(\n options: Hcs25AvailabilitySignalAdapterOptions = {},\n): Hcs25SignalAdapter {\n const resolveEndpoint = options.resolveEndpoint ?? resolveSubjectEndpoint;\n const method = options.method ?? 'auto';\n\n const collect = async (\n subject: Hcs25Subject,\n context: Hcs25CollectContext,\n ): Promise<Hcs25SignalAdapterResult[]> => {\n const { now } = context;\n const results: Hcs25SignalAdapterResult[] = [];\n\n const metrics = readMetadataRecord(subject, 'metrics');\n const lastActiveAt = metrics ? readString(metrics, 'lastActiveAt') : null;\n if (lastActiveAt !== null) {\n const mins = minutesSince(lastActiveAt, now);\n if (mins !== null) {\n results.push({\n signalId: 'availability.last_seen',\n status: 'ok',\n value: mins,\n fields: [{ scope: 'metrics', values: { minsFromLastOnline: mins } }],\n provenance: {\n source: 'metadata',\n subjectId: subject.id,\n fetchedAt: now.toISOString(),\n },\n });\n }\n }\n\n const endpoint = resolveEndpoint(subject);\n if (!endpoint) {\n if (results.length > 0) {\n return results;\n }\n return missingResult(now, 'no endpoint metadata');\n }\n\n const started = now.getTime();\n try {\n const attempt = async (verb: 'HEAD' | 'GET'): Promise<number> => {\n const response = await context.fetch(endpoint, {\n method: verb,\n headers: options.headers,\n signal: context.signal,\n });\n return response.status;\n };\n\n let status: number;\n if (method === 'auto') {\n try {\n status = await attempt('HEAD');\n if (status === 405 || status === 501) {\n status = await attempt('GET');\n }\n } catch (error) {\n if (error instanceof Hcs25CollectorHttpError) {\n throw error;\n }\n status = await attempt('GET');\n }\n } else {\n status = await attempt(method);\n }\n\n const latencyMs = Date.now() - started;\n const reachable = status < 500;\n results.push({\n signalId: 'availability.probe',\n status: 'ok',\n value: reachable ? 1 : 0,\n fields: [\n {\n scope: 'root',\n values: {\n availabilityScore: reachable ? 1 : 0,\n availabilityCheckedAt: now.toISOString(),\n availabilityLatencyMs: latencyMs,\n availabilityReason: reachable\n ? 'reachable'\n : `endpoint returned HTTP ${status}`,\n availabilitySource: 'probe',\n availabilityStatus: 'ok',\n },\n },\n ],\n provenance: {\n source: 'probe',\n sourceUrl: endpoint,\n subjectId: subject.id,\n fetchedAt: now.toISOString(),\n },\n });\n return results;\n } catch (error) {\n const timedOut = isTimeoutError(error);\n const statusValue = timedOut ? 'timeout' : 'error';\n results.push({\n signalId: 'availability.probe',\n status: statusValue,\n fields: [\n {\n scope: 'root',\n values: {\n availabilityCheckedAt: now.toISOString(),\n availabilityReason:\n error instanceof Error ? error.message : String(error),\n availabilitySource: 'probe',\n availabilityStatus: statusValue,\n },\n },\n ],\n provenance: {\n source: 'probe',\n sourceUrl: endpoint,\n subjectId: subject.id,\n fetchedAt: now.toISOString(),\n },\n });\n return results;\n }\n };\n\n return {\n id: 'availability',\n produces: ['availability.probe', 'availability.last_seen'],\n timeoutMs: options.timeoutMs,\n includeRegistries: options.includeRegistries,\n excludeRegistries: options.excludeRegistries ?? DEFAULT_EXCLUDED_REGISTRIES,\n appliesTo: options.appliesTo,\n collect,\n };\n}\n"],"names":[],"mappings":"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"}
@@ -1,32 +1,172 @@
1
- import { Logger } from "./standards-sdk.es128.js";
2
- function createLoggerAdapter(iLogger) {
3
- const adapter = Object.create(Logger.prototype);
4
- adapter.debug = (...args) => iLogger.debug(...args);
5
- adapter.info = (...args) => iLogger.info(...args);
6
- adapter.warn = (...args) => iLogger.warn(...args);
7
- adapter.error = (...args) => iLogger.error(...args);
8
- adapter.trace = (...args) => iLogger.trace(...args);
9
- adapter.setLogLevel = (level) => iLogger.setLogLevel(level);
10
- adapter.getLevel = () => iLogger.getLevel();
11
- adapter.setSilent = (silent) => iLogger.setSilent(silent);
12
- adapter.setModule = (module) => iLogger.setModule(module);
13
- adapter.logger = { level: iLogger.getLevel() };
14
- adapter.moduleContext = "";
15
- adapter.formatArgs = () => ({ msg: "" });
16
- return adapter;
1
+ import { resolveSubjectEndpoint } from "./standards-sdk.es127.js";
2
+ import { isTimeoutError } from "./standards-sdk.es122.js";
3
+ const MCP_PROTOCOL_VERSION = "2024-11-05";
4
+ async function fetchOk(context, url, init) {
5
+ const response = await context.fetch(url, {
6
+ ...init,
7
+ signal: context.signal
8
+ });
9
+ return response.status < 500;
17
10
  }
18
- function isConcreteLogger(logger) {
19
- return logger instanceof Logger;
20
- }
21
- function ensureLoggerType(logger) {
22
- if (isConcreteLogger(logger)) {
23
- return logger;
11
+ const mcpConnectivityProbe = async (subject, context) => {
12
+ const endpoint = resolveSubjectEndpoint(subject);
13
+ if (!endpoint) {
14
+ return null;
15
+ }
16
+ const ok = await fetchOk(context, endpoint, {
17
+ method: "POST",
18
+ headers: {
19
+ "content-type": "application/json",
20
+ accept: "application/json, text/event-stream"
21
+ },
22
+ body: JSON.stringify({
23
+ jsonrpc: "2.0",
24
+ id: 1,
25
+ method: "initialize",
26
+ params: {
27
+ protocolVersion: MCP_PROTOCOL_VERSION,
28
+ capabilities: {},
29
+ clientInfo: { name: "hcs-25-connectivity-probe", version: "1" }
30
+ }
31
+ })
32
+ });
33
+ return ok ? 100 : 0;
34
+ };
35
+ const a2aConnectivityProbe = async (subject, context) => {
36
+ const endpoint = resolveSubjectEndpoint(subject);
37
+ if (!endpoint) {
38
+ return null;
24
39
  }
25
- return createLoggerAdapter(logger);
40
+ const cardUrl = endpoint.includes("/.well-known/") ? endpoint : new URL("/.well-known/agent.json", endpoint).toString();
41
+ const ok = await fetchOk(context, cardUrl);
42
+ return ok ? 100 : 0;
43
+ };
44
+ const httpConnectivityProbe = async (subject, context) => {
45
+ const endpoint = resolveSubjectEndpoint(subject);
46
+ if (!endpoint) {
47
+ return null;
48
+ }
49
+ const ok = await fetchOk(context, endpoint);
50
+ return ok ? 100 : 0;
51
+ };
52
+ const DEFAULT_PROBES = {
53
+ mcp: mcpConnectivityProbe,
54
+ a2a: a2aConnectivityProbe
55
+ };
56
+ const DEFAULT_EXCLUDED_REGISTRIES = [
57
+ "openrouter",
58
+ "near-ai"
59
+ ];
60
+ function createConnectivitySignalAdapter(options = {}) {
61
+ const probes = { ...DEFAULT_PROBES, ...options.probes };
62
+ const collect = async (subject, context) => {
63
+ const now = context.now;
64
+ const protocol = subject.protocol?.toLowerCase();
65
+ const protocolProbe = protocol ? probes[protocol] : void 0;
66
+ const defaultProbe = probes.default ?? httpConnectivityProbe;
67
+ const namedTargets = Object.keys(probes).filter(
68
+ (key) => key !== protocol && key !== "default" && !(key in DEFAULT_PROBES)
69
+ );
70
+ const results = [];
71
+ const targets = {};
72
+ let primaryScore = null;
73
+ let primaryStatus = "ok";
74
+ let probed = false;
75
+ const runProbe = async (probe, signalId, target) => {
76
+ try {
77
+ const score = await probe(subject, context);
78
+ if (score === null) {
79
+ return;
80
+ }
81
+ probed = true;
82
+ const clamped = Math.min(100, Math.max(0, score));
83
+ if (target) {
84
+ targets[target] = clamped;
85
+ } else {
86
+ primaryScore = clamped;
87
+ }
88
+ results.push({
89
+ signalId,
90
+ status: "ok",
91
+ value: clamped,
92
+ provenance: {
93
+ source: "connectivity-probe",
94
+ sourceUrl: resolveSubjectEndpoint(subject) ?? void 0,
95
+ subjectId: subject.id,
96
+ fetchedAt: now.toISOString()
97
+ }
98
+ });
99
+ } catch (error) {
100
+ probed = true;
101
+ const status = isTimeoutError(error) ? "timeout" : "error";
102
+ if (!target) {
103
+ primaryStatus = status;
104
+ primaryScore = 0;
105
+ }
106
+ results.push({
107
+ signalId,
108
+ status,
109
+ provenance: {
110
+ source: "connectivity-probe",
111
+ subjectId: subject.id,
112
+ fetchedAt: now.toISOString()
113
+ }
114
+ });
115
+ }
116
+ };
117
+ await runProbe(protocolProbe ?? defaultProbe, "connectivity.probe");
118
+ for (const target of namedTargets) {
119
+ await runProbe(probes[target], `connectivity.${target}`, target);
120
+ }
121
+ if (!probed) {
122
+ return [
123
+ {
124
+ signalId: "connectivity.probe",
125
+ status: "missing",
126
+ fields: [
127
+ {
128
+ scope: "additional",
129
+ values: { connectivityStatus: "missing" }
130
+ }
131
+ ]
132
+ }
133
+ ];
134
+ }
135
+ const additional = {
136
+ connectivityStatus: primaryStatus === "ok" ? "ok" : primaryStatus
137
+ };
138
+ if (primaryScore !== null) {
139
+ additional.connectivityScore = primaryScore;
140
+ }
141
+ if (Object.keys(targets).length > 0) {
142
+ additional.connectivityTargets = { ...targets };
143
+ }
144
+ const last = results[results.length - 1];
145
+ return [
146
+ ...results,
147
+ {
148
+ signalId: "connectivity.score",
149
+ status: primaryStatus === "ok" ? "ok" : primaryStatus,
150
+ value: primaryScore ?? void 0,
151
+ fields: [{ scope: "additional", values: additional }],
152
+ provenance: last?.provenance
153
+ }
154
+ ];
155
+ };
156
+ return {
157
+ id: "connectivity",
158
+ produces: ["connectivity.probe", "connectivity.score"],
159
+ timeoutMs: options.timeoutMs,
160
+ includeRegistries: options.includeRegistries,
161
+ excludeRegistries: options.excludeRegistries ?? DEFAULT_EXCLUDED_REGISTRIES,
162
+ appliesTo: options.appliesTo,
163
+ collect
164
+ };
26
165
  }
27
166
  export {
28
- createLoggerAdapter,
29
- ensureLoggerType,
30
- isConcreteLogger
167
+ a2aConnectivityProbe,
168
+ createConnectivitySignalAdapter,
169
+ httpConnectivityProbe,
170
+ mcpConnectivityProbe
31
171
  };
32
172
  //# sourceMappingURL=standards-sdk.es129.js.map