@hashgraphonline/standards-sdk 0.1.184 → 0.1.186

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 (452) hide show
  1. package/dist/browser/hcs-25/adapters/acp.d.ts +20 -0
  2. package/dist/browser/hcs-25/adapters/acp.d.ts.map +1 -0
  3. package/dist/browser/hcs-25/adapters/agentverse.d.ts +34 -0
  4. package/dist/browser/hcs-25/adapters/agentverse.d.ts.map +1 -0
  5. package/dist/browser/hcs-25/adapters/availability.d.ts +22 -0
  6. package/dist/browser/hcs-25/adapters/availability.d.ts.map +1 -0
  7. package/dist/browser/hcs-25/adapters/connectivity.d.ts +25 -0
  8. package/dist/browser/hcs-25/adapters/connectivity.d.ts.map +1 -0
  9. package/dist/browser/hcs-25/adapters/erc8004-feedback.d.ts +19 -0
  10. package/dist/browser/hcs-25/adapters/erc8004-feedback.d.ts.map +1 -0
  11. package/dist/browser/hcs-25/adapters/ethos.d.ts +21 -0
  12. package/dist/browser/hcs-25/adapters/ethos.d.ts.map +1 -0
  13. package/dist/browser/hcs-25/adapters/index.d.ts +21 -0
  14. package/dist/browser/hcs-25/adapters/index.d.ts.map +1 -0
  15. package/dist/browser/hcs-25/adapters/model-evals.d.ts +61 -0
  16. package/dist/browser/hcs-25/adapters/model-evals.d.ts.map +1 -0
  17. package/dist/browser/hcs-25/adapters/normalization.d.ts +20 -0
  18. package/dist/browser/hcs-25/adapters/normalization.d.ts.map +1 -0
  19. package/dist/browser/hcs-25/adapters/oss-popularity.d.ts +22 -0
  20. package/dist/browser/hcs-25/adapters/oss-popularity.d.ts.map +1 -0
  21. package/dist/browser/hcs-25/adapters/output-verification.d.ts +27 -0
  22. package/dist/browser/hcs-25/adapters/output-verification.d.ts.map +1 -0
  23. package/dist/browser/hcs-25/adapters/simple-evals.d.ts +14 -0
  24. package/dist/browser/hcs-25/adapters/simple-evals.d.ts.map +1 -0
  25. package/dist/browser/hcs-25/adapters/x402.d.ts +18 -0
  26. package/dist/browser/hcs-25/adapters/x402.d.ts.map +1 -0
  27. package/dist/browser/hcs-25/identifiers.d.ts +24 -0
  28. package/dist/browser/hcs-25/identifiers.d.ts.map +1 -0
  29. package/dist/browser/hcs-25/index.d.ts +6 -0
  30. package/dist/browser/hcs-25/index.d.ts.map +1 -0
  31. package/dist/browser/hcs-25/scoring.d.ts +32 -0
  32. package/dist/browser/hcs-25/scoring.d.ts.map +1 -0
  33. package/dist/browser/hcs-25/signals/index.d.ts +20 -0
  34. package/dist/browser/hcs-25/signals/index.d.ts.map +1 -0
  35. package/dist/browser/hcs-25/signals/marketplace.d.ts +296 -0
  36. package/dist/browser/hcs-25/signals/marketplace.d.ts.map +1 -0
  37. package/dist/browser/hcs-25/signals/metadata.d.ts +40 -0
  38. package/dist/browser/hcs-25/signals/metadata.d.ts.map +1 -0
  39. package/dist/browser/hcs-25/signals/model-evals.d.ts +127 -0
  40. package/dist/browser/hcs-25/signals/model-evals.d.ts.map +1 -0
  41. package/dist/browser/hcs-25/signals/operational.d.ts +757 -0
  42. package/dist/browser/hcs-25/signals/operational.d.ts.map +1 -0
  43. package/dist/browser/hcs-25/signals/simple-evals.d.ts +156 -0
  44. package/dist/browser/hcs-25/signals/simple-evals.d.ts.map +1 -0
  45. package/dist/browser/hcs-25/types.d.ts +363 -0
  46. package/dist/browser/hcs-25/types.d.ts.map +1 -0
  47. package/dist/browser/index.d.ts +1 -0
  48. package/dist/browser/index.d.ts.map +1 -1
  49. package/dist/browser-root/hcs-25/adapters/acp.d.ts +20 -0
  50. package/dist/browser-root/hcs-25/adapters/acp.d.ts.map +1 -0
  51. package/dist/browser-root/hcs-25/adapters/agentverse.d.ts +34 -0
  52. package/dist/browser-root/hcs-25/adapters/agentverse.d.ts.map +1 -0
  53. package/dist/browser-root/hcs-25/adapters/availability.d.ts +22 -0
  54. package/dist/browser-root/hcs-25/adapters/availability.d.ts.map +1 -0
  55. package/dist/browser-root/hcs-25/adapters/connectivity.d.ts +25 -0
  56. package/dist/browser-root/hcs-25/adapters/connectivity.d.ts.map +1 -0
  57. package/dist/browser-root/hcs-25/adapters/erc8004-feedback.d.ts +19 -0
  58. package/dist/browser-root/hcs-25/adapters/erc8004-feedback.d.ts.map +1 -0
  59. package/dist/browser-root/hcs-25/adapters/ethos.d.ts +21 -0
  60. package/dist/browser-root/hcs-25/adapters/ethos.d.ts.map +1 -0
  61. package/dist/browser-root/hcs-25/adapters/index.d.ts +21 -0
  62. package/dist/browser-root/hcs-25/adapters/index.d.ts.map +1 -0
  63. package/dist/browser-root/hcs-25/adapters/model-evals.d.ts +61 -0
  64. package/dist/browser-root/hcs-25/adapters/model-evals.d.ts.map +1 -0
  65. package/dist/browser-root/hcs-25/adapters/normalization.d.ts +20 -0
  66. package/dist/browser-root/hcs-25/adapters/normalization.d.ts.map +1 -0
  67. package/dist/browser-root/hcs-25/adapters/oss-popularity.d.ts +22 -0
  68. package/dist/browser-root/hcs-25/adapters/oss-popularity.d.ts.map +1 -0
  69. package/dist/browser-root/hcs-25/adapters/output-verification.d.ts +27 -0
  70. package/dist/browser-root/hcs-25/adapters/output-verification.d.ts.map +1 -0
  71. package/dist/browser-root/hcs-25/adapters/simple-evals.d.ts +14 -0
  72. package/dist/browser-root/hcs-25/adapters/simple-evals.d.ts.map +1 -0
  73. package/dist/browser-root/hcs-25/adapters/x402.d.ts +18 -0
  74. package/dist/browser-root/hcs-25/adapters/x402.d.ts.map +1 -0
  75. package/dist/browser-root/hcs-25/identifiers.d.ts +24 -0
  76. package/dist/browser-root/hcs-25/identifiers.d.ts.map +1 -0
  77. package/dist/browser-root/hcs-25/index.d.ts +6 -0
  78. package/dist/browser-root/hcs-25/index.d.ts.map +1 -0
  79. package/dist/browser-root/hcs-25/scoring.d.ts +32 -0
  80. package/dist/browser-root/hcs-25/scoring.d.ts.map +1 -0
  81. package/dist/browser-root/hcs-25/signals/index.d.ts +20 -0
  82. package/dist/browser-root/hcs-25/signals/index.d.ts.map +1 -0
  83. package/dist/browser-root/hcs-25/signals/marketplace.d.ts +296 -0
  84. package/dist/browser-root/hcs-25/signals/marketplace.d.ts.map +1 -0
  85. package/dist/browser-root/hcs-25/signals/metadata.d.ts +40 -0
  86. package/dist/browser-root/hcs-25/signals/metadata.d.ts.map +1 -0
  87. package/dist/browser-root/hcs-25/signals/model-evals.d.ts +127 -0
  88. package/dist/browser-root/hcs-25/signals/model-evals.d.ts.map +1 -0
  89. package/dist/browser-root/hcs-25/signals/operational.d.ts +757 -0
  90. package/dist/browser-root/hcs-25/signals/operational.d.ts.map +1 -0
  91. package/dist/browser-root/hcs-25/signals/simple-evals.d.ts +156 -0
  92. package/dist/browser-root/hcs-25/signals/simple-evals.d.ts.map +1 -0
  93. package/dist/browser-root/hcs-25/types.d.ts +363 -0
  94. package/dist/browser-root/hcs-25/types.d.ts.map +1 -0
  95. package/dist/browser-root/index.d.ts +1 -0
  96. package/dist/browser-root/index.d.ts.map +1 -1
  97. package/dist/cjs/hcs-25/adapters/acp.d.ts +20 -0
  98. package/dist/cjs/hcs-25/adapters/acp.d.ts.map +1 -0
  99. package/dist/cjs/hcs-25/adapters/agentverse.d.ts +34 -0
  100. package/dist/cjs/hcs-25/adapters/agentverse.d.ts.map +1 -0
  101. package/dist/cjs/hcs-25/adapters/availability.d.ts +22 -0
  102. package/dist/cjs/hcs-25/adapters/availability.d.ts.map +1 -0
  103. package/dist/cjs/hcs-25/adapters/connectivity.d.ts +25 -0
  104. package/dist/cjs/hcs-25/adapters/connectivity.d.ts.map +1 -0
  105. package/dist/cjs/hcs-25/adapters/erc8004-feedback.d.ts +19 -0
  106. package/dist/cjs/hcs-25/adapters/erc8004-feedback.d.ts.map +1 -0
  107. package/dist/cjs/hcs-25/adapters/ethos.d.ts +21 -0
  108. package/dist/cjs/hcs-25/adapters/ethos.d.ts.map +1 -0
  109. package/dist/cjs/hcs-25/adapters/index.d.ts +21 -0
  110. package/dist/cjs/hcs-25/adapters/index.d.ts.map +1 -0
  111. package/dist/cjs/hcs-25/adapters/model-evals.d.ts +61 -0
  112. package/dist/cjs/hcs-25/adapters/model-evals.d.ts.map +1 -0
  113. package/dist/cjs/hcs-25/adapters/normalization.d.ts +20 -0
  114. package/dist/cjs/hcs-25/adapters/normalization.d.ts.map +1 -0
  115. package/dist/cjs/hcs-25/adapters/oss-popularity.d.ts +22 -0
  116. package/dist/cjs/hcs-25/adapters/oss-popularity.d.ts.map +1 -0
  117. package/dist/cjs/hcs-25/adapters/output-verification.d.ts +27 -0
  118. package/dist/cjs/hcs-25/adapters/output-verification.d.ts.map +1 -0
  119. package/dist/cjs/hcs-25/adapters/simple-evals.d.ts +14 -0
  120. package/dist/cjs/hcs-25/adapters/simple-evals.d.ts.map +1 -0
  121. package/dist/cjs/hcs-25/adapters/x402.d.ts +18 -0
  122. package/dist/cjs/hcs-25/adapters/x402.d.ts.map +1 -0
  123. package/dist/cjs/hcs-25/identifiers.d.ts +24 -0
  124. package/dist/cjs/hcs-25/identifiers.d.ts.map +1 -0
  125. package/dist/cjs/hcs-25/index.d.ts +6 -0
  126. package/dist/cjs/hcs-25/index.d.ts.map +1 -0
  127. package/dist/cjs/hcs-25/scoring.d.ts +32 -0
  128. package/dist/cjs/hcs-25/scoring.d.ts.map +1 -0
  129. package/dist/cjs/hcs-25/signals/index.d.ts +20 -0
  130. package/dist/cjs/hcs-25/signals/index.d.ts.map +1 -0
  131. package/dist/cjs/hcs-25/signals/marketplace.d.ts +296 -0
  132. package/dist/cjs/hcs-25/signals/marketplace.d.ts.map +1 -0
  133. package/dist/cjs/hcs-25/signals/metadata.d.ts +40 -0
  134. package/dist/cjs/hcs-25/signals/metadata.d.ts.map +1 -0
  135. package/dist/cjs/hcs-25/signals/model-evals.d.ts +127 -0
  136. package/dist/cjs/hcs-25/signals/model-evals.d.ts.map +1 -0
  137. package/dist/cjs/hcs-25/signals/operational.d.ts +757 -0
  138. package/dist/cjs/hcs-25/signals/operational.d.ts.map +1 -0
  139. package/dist/cjs/hcs-25/signals/simple-evals.d.ts +156 -0
  140. package/dist/cjs/hcs-25/signals/simple-evals.d.ts.map +1 -0
  141. package/dist/cjs/hcs-25/types.d.ts +363 -0
  142. package/dist/cjs/hcs-25/types.d.ts.map +1 -0
  143. package/dist/cjs/index.d.ts +1 -0
  144. package/dist/cjs/index.d.ts.map +1 -1
  145. package/dist/cjs/standards-sdk.cjs +2 -2
  146. package/dist/cjs/standards-sdk.cjs.map +1 -1
  147. package/dist/es/hcs-25/adapters/acp.d.ts +20 -0
  148. package/dist/es/hcs-25/adapters/acp.d.ts.map +1 -0
  149. package/dist/es/hcs-25/adapters/agentverse.d.ts +34 -0
  150. package/dist/es/hcs-25/adapters/agentverse.d.ts.map +1 -0
  151. package/dist/es/hcs-25/adapters/availability.d.ts +22 -0
  152. package/dist/es/hcs-25/adapters/availability.d.ts.map +1 -0
  153. package/dist/es/hcs-25/adapters/connectivity.d.ts +25 -0
  154. package/dist/es/hcs-25/adapters/connectivity.d.ts.map +1 -0
  155. package/dist/es/hcs-25/adapters/erc8004-feedback.d.ts +19 -0
  156. package/dist/es/hcs-25/adapters/erc8004-feedback.d.ts.map +1 -0
  157. package/dist/es/hcs-25/adapters/ethos.d.ts +21 -0
  158. package/dist/es/hcs-25/adapters/ethos.d.ts.map +1 -0
  159. package/dist/es/hcs-25/adapters/index.d.ts +21 -0
  160. package/dist/es/hcs-25/adapters/index.d.ts.map +1 -0
  161. package/dist/es/hcs-25/adapters/model-evals.d.ts +61 -0
  162. package/dist/es/hcs-25/adapters/model-evals.d.ts.map +1 -0
  163. package/dist/es/hcs-25/adapters/normalization.d.ts +20 -0
  164. package/dist/es/hcs-25/adapters/normalization.d.ts.map +1 -0
  165. package/dist/es/hcs-25/adapters/oss-popularity.d.ts +22 -0
  166. package/dist/es/hcs-25/adapters/oss-popularity.d.ts.map +1 -0
  167. package/dist/es/hcs-25/adapters/output-verification.d.ts +27 -0
  168. package/dist/es/hcs-25/adapters/output-verification.d.ts.map +1 -0
  169. package/dist/es/hcs-25/adapters/simple-evals.d.ts +14 -0
  170. package/dist/es/hcs-25/adapters/simple-evals.d.ts.map +1 -0
  171. package/dist/es/hcs-25/adapters/x402.d.ts +18 -0
  172. package/dist/es/hcs-25/adapters/x402.d.ts.map +1 -0
  173. package/dist/es/hcs-25/identifiers.d.ts +24 -0
  174. package/dist/es/hcs-25/identifiers.d.ts.map +1 -0
  175. package/dist/es/hcs-25/index.d.ts +6 -0
  176. package/dist/es/hcs-25/index.d.ts.map +1 -0
  177. package/dist/es/hcs-25/scoring.d.ts +32 -0
  178. package/dist/es/hcs-25/scoring.d.ts.map +1 -0
  179. package/dist/es/hcs-25/signals/index.d.ts +20 -0
  180. package/dist/es/hcs-25/signals/index.d.ts.map +1 -0
  181. package/dist/es/hcs-25/signals/marketplace.d.ts +296 -0
  182. package/dist/es/hcs-25/signals/marketplace.d.ts.map +1 -0
  183. package/dist/es/hcs-25/signals/metadata.d.ts +40 -0
  184. package/dist/es/hcs-25/signals/metadata.d.ts.map +1 -0
  185. package/dist/es/hcs-25/signals/model-evals.d.ts +127 -0
  186. package/dist/es/hcs-25/signals/model-evals.d.ts.map +1 -0
  187. package/dist/es/hcs-25/signals/operational.d.ts +757 -0
  188. package/dist/es/hcs-25/signals/operational.d.ts.map +1 -0
  189. package/dist/es/hcs-25/signals/simple-evals.d.ts +156 -0
  190. package/dist/es/hcs-25/signals/simple-evals.d.ts.map +1 -0
  191. package/dist/es/hcs-25/types.d.ts +363 -0
  192. package/dist/es/hcs-25/types.d.ts.map +1 -0
  193. package/dist/es/index.d.ts +1 -0
  194. package/dist/es/index.d.ts.map +1 -1
  195. package/dist/es/standards-sdk.es.js +131 -40
  196. package/dist/es/standards-sdk.es.js.map +1 -1
  197. package/dist/es/standards-sdk.es101.js +2 -2
  198. package/dist/es/standards-sdk.es103.js +2 -2
  199. package/dist/es/standards-sdk.es104.js +1 -1
  200. package/dist/es/standards-sdk.es106.js +1 -1
  201. package/dist/es/standards-sdk.es108.js +2 -2
  202. package/dist/es/standards-sdk.es11.js +1 -1
  203. package/dist/es/standards-sdk.es110.js +1 -1
  204. package/dist/es/standards-sdk.es111.js +2 -2
  205. package/dist/es/standards-sdk.es115.js +3 -3
  206. package/dist/es/standards-sdk.es116.js +4 -4
  207. package/dist/es/standards-sdk.es117.js +19 -251
  208. package/dist/es/standards-sdk.es117.js.map +1 -1
  209. package/dist/es/standards-sdk.es118.js +60 -475
  210. package/dist/es/standards-sdk.es118.js.map +1 -1
  211. package/dist/es/standards-sdk.es119.js +218 -86
  212. package/dist/es/standards-sdk.es119.js.map +1 -1
  213. package/dist/es/standards-sdk.es12.js +1 -1
  214. package/dist/es/standards-sdk.es120.js +225 -159
  215. package/dist/es/standards-sdk.es120.js.map +1 -1
  216. package/dist/es/standards-sdk.es121.js +50 -33
  217. package/dist/es/standards-sdk.es121.js.map +1 -1
  218. package/dist/es/standards-sdk.es122.js +250 -10
  219. package/dist/es/standards-sdk.es122.js.map +1 -1
  220. package/dist/es/standards-sdk.es123.js +448 -152
  221. package/dist/es/standards-sdk.es123.js.map +1 -1
  222. package/dist/es/standards-sdk.es124.js +101 -25
  223. package/dist/es/standards-sdk.es124.js.map +1 -1
  224. package/dist/es/standards-sdk.es125.js +155 -17
  225. package/dist/es/standards-sdk.es125.js.map +1 -1
  226. package/dist/es/standards-sdk.es126.js +29 -155
  227. package/dist/es/standards-sdk.es126.js.map +1 -1
  228. package/dist/es/standards-sdk.es127.js +9 -198
  229. package/dist/es/standards-sdk.es127.js.map +1 -1
  230. package/dist/es/standards-sdk.es128.js +146 -754
  231. package/dist/es/standards-sdk.es128.js.map +1 -1
  232. package/dist/es/standards-sdk.es129.js +27 -11
  233. package/dist/es/standards-sdk.es129.js.map +1 -1
  234. package/dist/es/standards-sdk.es13.js +1 -1
  235. package/dist/es/standards-sdk.es130.js +19 -564
  236. package/dist/es/standards-sdk.es130.js.map +1 -1
  237. package/dist/es/standards-sdk.es131.js +140 -606
  238. package/dist/es/standards-sdk.es131.js.map +1 -1
  239. package/dist/es/standards-sdk.es132.js +200 -12
  240. package/dist/es/standards-sdk.es132.js.map +1 -1
  241. package/dist/es/standards-sdk.es133.js +790 -2
  242. package/dist/es/standards-sdk.es133.js.map +1 -1
  243. package/dist/es/standards-sdk.es134.js +10 -84
  244. package/dist/es/standards-sdk.es134.js.map +1 -1
  245. package/dist/es/standards-sdk.es135.js +567 -40
  246. package/dist/es/standards-sdk.es135.js.map +1 -1
  247. package/dist/es/standards-sdk.es136.js +626 -2
  248. package/dist/es/standards-sdk.es136.js.map +1 -1
  249. package/dist/es/standards-sdk.es137.js +12 -234
  250. package/dist/es/standards-sdk.es137.js.map +1 -1
  251. package/dist/es/standards-sdk.es138.js +2 -1140
  252. package/dist/es/standards-sdk.es138.js.map +1 -1
  253. package/dist/es/standards-sdk.es139.js +73 -292
  254. package/dist/es/standards-sdk.es139.js.map +1 -1
  255. package/dist/es/standards-sdk.es14.js +1 -1
  256. package/dist/es/standards-sdk.es140.js +36 -418
  257. package/dist/es/standards-sdk.es140.js.map +1 -1
  258. package/dist/es/standards-sdk.es141.js +2 -355
  259. package/dist/es/standards-sdk.es141.js.map +1 -1
  260. package/dist/es/standards-sdk.es142.js +198 -1085
  261. package/dist/es/standards-sdk.es142.js.map +1 -1
  262. package/dist/es/standards-sdk.es143.js +1107 -175
  263. package/dist/es/standards-sdk.es143.js.map +1 -1
  264. package/dist/es/standards-sdk.es144.js +218 -1479
  265. package/dist/es/standards-sdk.es144.js.map +1 -1
  266. package/dist/es/standards-sdk.es145.js +419 -1154
  267. package/dist/es/standards-sdk.es145.js.map +1 -1
  268. package/dist/es/standards-sdk.es146.js +351 -13
  269. package/dist/es/standards-sdk.es146.js.map +1 -1
  270. package/dist/es/standards-sdk.es147.js +1077 -214
  271. package/dist/es/standards-sdk.es147.js.map +1 -1
  272. package/dist/es/standards-sdk.es148.js +208 -4
  273. package/dist/es/standards-sdk.es148.js.map +1 -1
  274. package/dist/es/standards-sdk.es149.js +1564 -78
  275. package/dist/es/standards-sdk.es149.js.map +1 -1
  276. package/dist/es/standards-sdk.es15.js +1 -1
  277. package/dist/es/standards-sdk.es150.js +1153 -83
  278. package/dist/es/standards-sdk.es150.js.map +1 -1
  279. package/dist/es/standards-sdk.es151.js +15 -58
  280. package/dist/es/standards-sdk.es151.js.map +1 -1
  281. package/dist/es/standards-sdk.es152.js +259 -2547
  282. package/dist/es/standards-sdk.es152.js.map +1 -1
  283. package/dist/es/standards-sdk.es153.js +4 -159
  284. package/dist/es/standards-sdk.es153.js.map +1 -1
  285. package/dist/es/standards-sdk.es154.js +81 -7
  286. package/dist/es/standards-sdk.es154.js.map +1 -1
  287. package/dist/es/standards-sdk.es155.js +79 -78
  288. package/dist/es/standards-sdk.es155.js.map +1 -1
  289. package/dist/es/standards-sdk.es156.js +56 -61
  290. package/dist/es/standards-sdk.es156.js.map +1 -1
  291. package/dist/es/standards-sdk.es157.js +2547 -30
  292. package/dist/es/standards-sdk.es157.js.map +1 -1
  293. package/dist/es/standards-sdk.es158.js +159 -34
  294. package/dist/es/standards-sdk.es158.js.map +1 -1
  295. package/dist/es/standards-sdk.es159.js +7 -48
  296. package/dist/es/standards-sdk.es159.js.map +1 -1
  297. package/dist/es/standards-sdk.es16.js +5 -5
  298. package/dist/es/standards-sdk.es160.js +70 -122
  299. package/dist/es/standards-sdk.es160.js.map +1 -1
  300. package/dist/es/standards-sdk.es161.js +58 -35
  301. package/dist/es/standards-sdk.es161.js.map +1 -1
  302. package/dist/es/standards-sdk.es162.js +190 -12478
  303. package/dist/es/standards-sdk.es162.js.map +1 -1
  304. package/dist/es/standards-sdk.es163.js +22 -52
  305. package/dist/es/standards-sdk.es163.js.map +1 -1
  306. package/dist/es/standards-sdk.es164.js +54 -107
  307. package/dist/es/standards-sdk.es164.js.map +1 -1
  308. package/dist/es/standards-sdk.es165.js +90 -76
  309. package/dist/es/standards-sdk.es165.js.map +1 -1
  310. package/dist/es/standards-sdk.es166.js +46 -197
  311. package/dist/es/standards-sdk.es166.js.map +1 -1
  312. package/dist/es/standards-sdk.es167.js +203 -16
  313. package/dist/es/standards-sdk.es167.js.map +1 -1
  314. package/dist/es/standards-sdk.es168.js +54 -670
  315. package/dist/es/standards-sdk.es168.js.map +1 -1
  316. package/dist/es/standards-sdk.es169.js +44 -167
  317. package/dist/es/standards-sdk.es169.js.map +1 -1
  318. package/dist/es/standards-sdk.es170.js +55 -321
  319. package/dist/es/standards-sdk.es170.js.map +1 -1
  320. package/dist/es/standards-sdk.es171.js +45 -342
  321. package/dist/es/standards-sdk.es171.js.map +1 -1
  322. package/dist/es/standards-sdk.es172.js +115 -446
  323. package/dist/es/standards-sdk.es172.js.map +1 -1
  324. package/dist/es/standards-sdk.es173.js +51 -328
  325. package/dist/es/standards-sdk.es173.js.map +1 -1
  326. package/dist/es/standards-sdk.es174.js +42 -74
  327. package/dist/es/standards-sdk.es174.js.map +1 -1
  328. package/dist/es/standards-sdk.es175.js +72 -73
  329. package/dist/es/standards-sdk.es175.js.map +1 -1
  330. package/dist/es/standards-sdk.es176.js +68 -139
  331. package/dist/es/standards-sdk.es176.js.map +1 -1
  332. package/dist/es/standards-sdk.es177.js +44 -517
  333. package/dist/es/standards-sdk.es177.js.map +1 -1
  334. package/dist/es/standards-sdk.es178.js +33 -256
  335. package/dist/es/standards-sdk.es178.js.map +1 -1
  336. package/dist/es/standards-sdk.es179.js +30 -196
  337. package/dist/es/standards-sdk.es179.js.map +1 -1
  338. package/dist/es/standards-sdk.es18.js +12 -12
  339. package/dist/es/standards-sdk.es180.js +34 -119
  340. package/dist/es/standards-sdk.es180.js.map +1 -1
  341. package/dist/es/standards-sdk.es181.js +48 -152
  342. package/dist/es/standards-sdk.es181.js.map +1 -1
  343. package/dist/es/standards-sdk.es182.js +126 -172
  344. package/dist/es/standards-sdk.es182.js.map +1 -1
  345. package/dist/es/standards-sdk.es183.js +34 -676
  346. package/dist/es/standards-sdk.es183.js.map +1 -1
  347. package/dist/es/standards-sdk.es184.js +12453 -156
  348. package/dist/es/standards-sdk.es184.js.map +1 -1
  349. package/dist/es/standards-sdk.es185.js +14 -232
  350. package/dist/es/standards-sdk.es185.js.map +1 -1
  351. package/dist/es/standards-sdk.es186.js +642 -209
  352. package/dist/es/standards-sdk.es186.js.map +1 -1
  353. package/dist/es/standards-sdk.es187.js +114 -0
  354. package/dist/es/standards-sdk.es187.js.map +1 -0
  355. package/dist/es/standards-sdk.es188.js +76 -0
  356. package/dist/es/standards-sdk.es188.js.map +1 -0
  357. package/dist/es/standards-sdk.es189.js +59 -0
  358. package/dist/es/standards-sdk.es189.js.map +1 -0
  359. package/dist/es/standards-sdk.es19.js +9 -9
  360. package/dist/es/standards-sdk.es190.js +84 -0
  361. package/dist/es/standards-sdk.es190.js.map +1 -0
  362. package/dist/es/standards-sdk.es191.js +203 -0
  363. package/dist/es/standards-sdk.es191.js.map +1 -0
  364. package/dist/es/standards-sdk.es192.js +175 -0
  365. package/dist/es/standards-sdk.es192.js.map +1 -0
  366. package/dist/es/standards-sdk.es193.js +325 -0
  367. package/dist/es/standards-sdk.es193.js.map +1 -0
  368. package/dist/es/standards-sdk.es194.js +349 -0
  369. package/dist/es/standards-sdk.es194.js.map +1 -0
  370. package/dist/es/standards-sdk.es195.js +456 -0
  371. package/dist/es/standards-sdk.es195.js.map +1 -0
  372. package/dist/es/standards-sdk.es196.js +334 -0
  373. package/dist/es/standards-sdk.es196.js.map +1 -0
  374. package/dist/es/standards-sdk.es197.js +79 -0
  375. package/dist/es/standards-sdk.es197.js.map +1 -0
  376. package/dist/es/standards-sdk.es198.js +142 -0
  377. package/dist/es/standards-sdk.es198.js.map +1 -0
  378. package/dist/es/standards-sdk.es199.js +520 -0
  379. package/dist/es/standards-sdk.es199.js.map +1 -0
  380. package/dist/es/standards-sdk.es2.js +2 -2
  381. package/dist/es/standards-sdk.es20.js +1 -1
  382. package/dist/es/standards-sdk.es200.js +262 -0
  383. package/dist/es/standards-sdk.es200.js.map +1 -0
  384. package/dist/es/standards-sdk.es201.js +199 -0
  385. package/dist/es/standards-sdk.es201.js.map +1 -0
  386. package/dist/es/standards-sdk.es202.js +122 -0
  387. package/dist/es/standards-sdk.es202.js.map +1 -0
  388. package/dist/es/standards-sdk.es203.js +155 -0
  389. package/dist/es/standards-sdk.es203.js.map +1 -0
  390. package/dist/es/standards-sdk.es204.js +187 -0
  391. package/dist/es/standards-sdk.es204.js.map +1 -0
  392. package/dist/es/standards-sdk.es205.js +687 -0
  393. package/dist/es/standards-sdk.es205.js.map +1 -0
  394. package/dist/es/standards-sdk.es206.js +188 -0
  395. package/dist/es/standards-sdk.es206.js.map +1 -0
  396. package/dist/es/standards-sdk.es207.js +238 -0
  397. package/dist/es/standards-sdk.es207.js.map +1 -0
  398. package/dist/es/standards-sdk.es208.js +242 -0
  399. package/dist/es/standards-sdk.es208.js.map +1 -0
  400. package/dist/es/standards-sdk.es21.js +1 -1
  401. package/dist/es/standards-sdk.es22.js +1 -1
  402. package/dist/es/standards-sdk.es23.js +1 -1
  403. package/dist/es/standards-sdk.es24.js +1 -1
  404. package/dist/es/standards-sdk.es25.js +1 -1
  405. package/dist/es/standards-sdk.es26.js +1 -1
  406. package/dist/es/standards-sdk.es27.js +12 -12
  407. package/dist/es/standards-sdk.es30.js +2 -2
  408. package/dist/es/standards-sdk.es31.js +4 -4
  409. package/dist/es/standards-sdk.es32.js +1 -1
  410. package/dist/es/standards-sdk.es35.js +6 -6
  411. package/dist/es/standards-sdk.es36.js +4 -4
  412. package/dist/es/standards-sdk.es37.js +2 -2
  413. package/dist/es/standards-sdk.es38.js +2 -2
  414. package/dist/es/standards-sdk.es39.js +1 -1
  415. package/dist/es/standards-sdk.es4.js +2 -2
  416. package/dist/es/standards-sdk.es40.js +1 -1
  417. package/dist/es/standards-sdk.es41.js +2 -2
  418. package/dist/es/standards-sdk.es46.js +1 -1
  419. package/dist/es/standards-sdk.es5.js +2 -2
  420. package/dist/es/standards-sdk.es51.js +1 -1
  421. package/dist/es/standards-sdk.es53.js +1 -1
  422. package/dist/es/standards-sdk.es56.js +2 -2
  423. package/dist/es/standards-sdk.es59.js +1 -1
  424. package/dist/es/standards-sdk.es6.js +2 -2
  425. package/dist/es/standards-sdk.es60.js +1 -1
  426. package/dist/es/standards-sdk.es62.js +1 -1
  427. package/dist/es/standards-sdk.es63.js +2 -2
  428. package/dist/es/standards-sdk.es64.js +1 -1
  429. package/dist/es/standards-sdk.es65.js +1 -1
  430. package/dist/es/standards-sdk.es66.js +1 -1
  431. package/dist/es/standards-sdk.es67.js +7 -7
  432. package/dist/es/standards-sdk.es69.js +1 -1
  433. package/dist/es/standards-sdk.es7.js +1 -1
  434. package/dist/es/standards-sdk.es71.js +2 -2
  435. package/dist/es/standards-sdk.es72.js +3 -3
  436. package/dist/es/standards-sdk.es75.js +5 -5
  437. package/dist/es/standards-sdk.es76.js +3 -3
  438. package/dist/es/standards-sdk.es77.js +2 -2
  439. package/dist/es/standards-sdk.es78.js +1 -1
  440. package/dist/es/standards-sdk.es81.js +2 -2
  441. package/dist/es/standards-sdk.es83.js +2 -2
  442. package/dist/es/standards-sdk.es84.js +4 -4
  443. package/dist/es/standards-sdk.es85.js +1 -1
  444. package/dist/es/standards-sdk.es88.js +1 -1
  445. package/dist/es/standards-sdk.es89.js +2 -2
  446. package/dist/es/standards-sdk.es9.js +2 -2
  447. package/dist/es/standards-sdk.es90.js +4 -4
  448. package/dist/es/standards-sdk.es94.js +3 -3
  449. package/dist/es/standards-sdk.es96.js +2 -2
  450. package/dist/es/standards-sdk.es98.js +1 -1
  451. package/dist/es/standards-sdk.es99.js +3 -3
  452. package/package.json +1 -1
@@ -1,203 +1,52 @@
1
- import { parseSemicolonFields } from "./standards-sdk.es165.js";
2
- const ANS_HCS27_REGISTRY = "ans";
3
- function isObjectRecord(value) {
4
- return typeof value === "object" && value !== null;
5
- }
6
- function asString(value) {
7
- if (typeof value !== "string") {
8
- return null;
9
- }
10
- const trimmed = value.trim();
11
- if (!trimmed) {
12
- return null;
13
- }
14
- return trimmed;
15
- }
16
- function isSemver(value) {
17
- return /^(?:0|[1-9]\d*)\.(?:0|[1-9]\d*)\.(?:0|[1-9]\d*)(?:-[0-9A-Za-z-]+(?:\.[0-9A-Za-z-]+)*)?(?:\+[0-9A-Za-z-]+(?:\.[0-9A-Za-z-]+)*)?$/.test(
18
- value
19
- );
20
- }
21
- function normalizeAnsVersion(value) {
22
- const trimmed = value.trim();
23
- if (!trimmed) {
24
- return null;
25
- }
26
- const withoutPrefix = trimmed.startsWith("v") || trimmed.startsWith("V") ? trimmed.slice(1) : trimmed;
27
- if (!isSemver(withoutPrefix)) {
28
- return null;
29
- }
30
- return withoutPrefix;
31
- }
32
- function parseAnsDnsTxtRecord(rawRecord) {
33
- const fields = parseSemicolonFields(rawRecord);
34
- const version = fields["v"];
35
- const urlValue = fields["url"];
36
- if (!version || !urlValue || version.toLowerCase() !== "ans1") {
37
- return null;
38
- }
39
- let parsedUrl;
40
- try {
41
- parsedUrl = new URL(urlValue);
42
- } catch {
43
- return null;
44
- }
45
- if (parsedUrl.protocol.toLowerCase() !== "https:") {
46
- return null;
47
- }
48
- const rawAnsVersion = fields["version"];
49
- let normalizedAnsVersion;
50
- if (rawAnsVersion !== void 0) {
51
- const parsedVersion = normalizeAnsVersion(rawAnsVersion);
52
- if (!parsedVersion) {
53
- return null;
54
- }
55
- normalizedAnsVersion = parsedVersion;
56
- }
1
+ import { clampScore } from "./standards-sdk.es119.js";
2
+ import { readNumber, readSubjectMetrics, readBoolean } from "./standards-sdk.es178.js";
3
+ import "./standards-sdk.es162.js";
4
+ import "./standards-sdk.es175.js";
5
+ import "./standards-sdk.es176.js";
6
+ import "./standards-sdk.es177.js";
7
+ const DEFAULT_EXCLUDED_REGISTRIES = [
8
+ "openrouter",
9
+ "near-ai"
10
+ ];
11
+ function normalizeAvailability(subject, scoreScale, recencyWindowMinutes) {
12
+ const metadata = subject.metadata;
13
+ const rawScore = metadata ? readNumber(metadata, "availabilityScore") : null;
14
+ if (rawScore !== null) {
15
+ const ratio = scoreScale === "ratio" ? rawScore : scoreScale === "percent" ? rawScore / 100 : rawScore > 1 ? rawScore / 100 : rawScore;
16
+ return { value: clampScore(ratio * 100), status: "ok" };
17
+ }
18
+ const metrics = readSubjectMetrics(subject);
19
+ const minsFromLastOnline = readNumber(metrics, "minsFromLastOnline");
20
+ if (minsFromLastOnline !== null) {
21
+ return {
22
+ value: clampScore(100 * (1 - minsFromLastOnline / recencyWindowMinutes)),
23
+ status: "ok"
24
+ };
25
+ }
26
+ const isOnline = readBoolean(metrics, "isOnline");
27
+ if (isOnline !== null) {
28
+ return { value: isOnline ? 100 : 0, status: "ok" };
29
+ }
30
+ return { value: 0, status: "missing" };
31
+ }
32
+ function createAvailabilityAdapter(options = {}) {
33
+ const scoreScale = options.scoreScale ?? "auto";
34
+ const recencyWindowMinutes = options.recencyWindowMinutes ?? 1440;
57
35
  return {
58
- version: normalizedAnsVersion,
59
- url: parsedUrl.toString()
36
+ id: "availability",
37
+ weight: 1,
38
+ contributionMode: "universal",
39
+ excludeRegistries: options.excludeRegistries ?? DEFAULT_EXCLUDED_REGISTRIES,
40
+ defaultComponentKey: "availability.uptime",
41
+ components: [
42
+ {
43
+ name: "uptime",
44
+ normalize: ({ subject }) => normalizeAvailability(subject, scoreScale, recencyWindowMinutes)
45
+ }
46
+ ]
60
47
  };
61
48
  }
62
- function isValidAnsProfileVersion(value) {
63
- return !!value && normalizeAnsVersion(value) !== null;
64
- }
65
- function hasProtocolPathSegment(pathname, protocol) {
66
- const normalizedProtocol = protocol.trim().toLowerCase();
67
- if (!normalizedProtocol) {
68
- return false;
69
- }
70
- const pathSegments = pathname.split("/").map((segment) => segment.trim()).filter((segment) => segment.length > 0);
71
- for (const segment of pathSegments) {
72
- if (segment.toLowerCase() === normalizedProtocol) {
73
- return true;
74
- }
75
- }
76
- return false;
77
- }
78
- function extractEndpointCandidates(endpoints, supportedSchemes) {
79
- const candidates = [];
80
- for (const [key, value] of Object.entries(endpoints)) {
81
- if (!isObjectRecord(value)) {
82
- continue;
83
- }
84
- const endpoint = asString(value["url"]);
85
- if (!endpoint) {
86
- continue;
87
- }
88
- let parsedUrl;
89
- try {
90
- parsedUrl = new URL(endpoint);
91
- } catch {
92
- continue;
93
- }
94
- const scheme = parsedUrl.protocol.replace(/:$/, "").toLowerCase();
95
- if (!supportedSchemes.has(scheme)) {
96
- continue;
97
- }
98
- candidates.push({
99
- key,
100
- endpointUrl: parsedUrl.toString(),
101
- parsedUrl
102
- });
103
- }
104
- return candidates;
105
- }
106
- function validateAnsHcs27Hints(input) {
107
- if (!isObjectRecord(input)) {
108
- return void 0;
109
- }
110
- const checkpointTopicId = asString(input["checkpoint_topic_id"]);
111
- const registry = asString(input["registry"]);
112
- const logId = asString(input["log_id"]);
113
- if (!checkpointTopicId || !registry || !logId || registry !== ANS_HCS27_REGISTRY) {
114
- return void 0;
115
- }
116
- const checkpointUri = asString(input["checkpoint_uri"]) ?? void 0;
117
- const viewerUri = asString(input["viewer_uri"]) ?? void 0;
118
- return {
119
- checkpointTopicId,
120
- registry,
121
- logId,
122
- checkpointUri,
123
- viewerUri
124
- };
125
- }
126
- function validateHcs28Hints(input) {
127
- if (!isObjectRecord(input)) {
128
- return void 0;
129
- }
130
- const directoryTopicId = asString(input["directory_topic_id"]);
131
- const tId = asString(input["t_id"]);
132
- const agentId = asString(input["agent_id"]);
133
- if (!directoryTopicId || !tId || !agentId) {
134
- return void 0;
135
- }
136
- const proofProfile = asString(input["proof_profile"]) ?? void 0;
137
- return {
138
- directoryTopicId,
139
- tId,
140
- agentId,
141
- proofProfile
142
- };
143
- }
144
- function parseTransparencyHints(input) {
145
- if (!isObjectRecord(input)) {
146
- return void 0;
147
- }
148
- const hcs27 = validateAnsHcs27Hints(input["hcs27"]);
149
- const hcs28 = validateHcs28Hints(input["hcs28"]);
150
- if (!hcs27 && !hcs28) {
151
- return void 0;
152
- }
153
- return {
154
- hcs27,
155
- hcs28
156
- };
157
- }
158
- function parseAnsAgentCard(input) {
159
- if (!isObjectRecord(input)) {
160
- return null;
161
- }
162
- const ansName = asString(input["ansName"]);
163
- const endpoints = input["endpoints"];
164
- if (!ansName || !isObjectRecord(endpoints)) {
165
- return null;
166
- }
167
- return {
168
- ansName,
169
- endpoints,
170
- transparencyHints: parseTransparencyHints(input["transparency"])
171
- };
172
- }
173
- function selectPreferredEndpoint(candidates, protocol) {
174
- if (candidates.length === 0) {
175
- return null;
176
- }
177
- const sortedCandidates = [...candidates].sort(
178
- (a, b) => a.key.localeCompare(b.key)
179
- );
180
- const protocolMatches = sortedCandidates.filter(
181
- (candidate) => hasProtocolPathSegment(candidate.parsedUrl.pathname, protocol)
182
- );
183
- if (protocolMatches.length > 0) {
184
- return protocolMatches[0];
185
- }
186
- return sortedCandidates[0];
187
- }
188
- function toErrorMessage(error) {
189
- if (error instanceof Error && error.message) {
190
- return error.message;
191
- }
192
- return null;
193
- }
194
49
  export {
195
- extractEndpointCandidates,
196
- isValidAnsProfileVersion,
197
- normalizeAnsVersion,
198
- parseAnsAgentCard,
199
- parseAnsDnsTxtRecord,
200
- selectPreferredEndpoint,
201
- toErrorMessage
50
+ createAvailabilityAdapter
202
51
  };
203
52
  //# sourceMappingURL=standards-sdk.es166.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"standards-sdk.es166.js","sources":["../../src/hcs-14/resolvers/ans-dns-web-profile-utils.ts"],"sourcesContent":["import type {\n ProfileResolutionHcs27TransparencyHints,\n ProfileResolutionHcs28TransparencyHints,\n ProfileResolutionTransparencyHints,\n} from './types';\nimport { parseSemicolonFields } from './profile-utils';\n\nexport interface AnsDnsTxtRecord {\n version?: string;\n url: string;\n}\n\nexport interface AnsEndpointCandidate {\n key: string;\n endpointUrl: string;\n parsedUrl: URL;\n}\n\nexport interface ParsedAnsAgentCard {\n ansName: string;\n endpoints: Record<string, unknown>;\n transparencyHints?: ProfileResolutionTransparencyHints;\n}\n\nconst ANS_HCS27_REGISTRY = 'ans';\n\nfunction isObjectRecord(value: unknown): value is Record<string, unknown> {\n return typeof value === 'object' && value !== null;\n}\n\nfunction asString(value: unknown): string | null {\n if (typeof value !== 'string') {\n return null;\n }\n const trimmed = value.trim();\n if (!trimmed) {\n return null;\n }\n return trimmed;\n}\n\nfunction isSemver(value: string): boolean {\n return /^(?:0|[1-9]\\d*)\\.(?:0|[1-9]\\d*)\\.(?:0|[1-9]\\d*)(?:-[0-9A-Za-z-]+(?:\\.[0-9A-Za-z-]+)*)?(?:\\+[0-9A-Za-z-]+(?:\\.[0-9A-Za-z-]+)*)?$/.test(\n value,\n );\n}\n\nexport function normalizeAnsVersion(value: string): string | null {\n const trimmed = value.trim();\n if (!trimmed) {\n return null;\n }\n const withoutPrefix =\n trimmed.startsWith('v') || trimmed.startsWith('V')\n ? trimmed.slice(1)\n : trimmed;\n if (!isSemver(withoutPrefix)) {\n return null;\n }\n return withoutPrefix;\n}\n\nexport function parseAnsDnsTxtRecord(\n rawRecord: string,\n): AnsDnsTxtRecord | null {\n const fields = parseSemicolonFields(rawRecord);\n const version = fields['v'];\n const urlValue = fields['url'];\n if (!version || !urlValue || version.toLowerCase() !== 'ans1') {\n return null;\n }\n\n let parsedUrl: URL;\n try {\n parsedUrl = new URL(urlValue);\n } catch {\n return null;\n }\n\n if (parsedUrl.protocol.toLowerCase() !== 'https:') {\n return null;\n }\n\n const rawAnsVersion = fields['version'];\n let normalizedAnsVersion: string | undefined;\n if (rawAnsVersion !== undefined) {\n const parsedVersion = normalizeAnsVersion(rawAnsVersion);\n if (!parsedVersion) {\n return null;\n }\n normalizedAnsVersion = parsedVersion;\n }\n\n return {\n version: normalizedAnsVersion,\n url: parsedUrl.toString(),\n };\n}\n\nexport function isValidAnsProfileVersion(value: string | undefined): boolean {\n return !!value && normalizeAnsVersion(value) !== null;\n}\n\nfunction hasProtocolPathSegment(pathname: string, protocol: string): boolean {\n const normalizedProtocol = protocol.trim().toLowerCase();\n if (!normalizedProtocol) {\n return false;\n }\n\n const pathSegments = pathname\n .split('/')\n .map(segment => segment.trim())\n .filter(segment => segment.length > 0);\n for (const segment of pathSegments) {\n if (segment.toLowerCase() === normalizedProtocol) {\n return true;\n }\n }\n return false;\n}\n\nexport function extractEndpointCandidates(\n endpoints: Record<string, unknown>,\n supportedSchemes: Set<string>,\n): AnsEndpointCandidate[] {\n const candidates: AnsEndpointCandidate[] = [];\n for (const [key, value] of Object.entries(endpoints)) {\n if (!isObjectRecord(value)) {\n continue;\n }\n const endpoint = asString(value['url']);\n if (!endpoint) {\n continue;\n }\n\n let parsedUrl: URL;\n try {\n parsedUrl = new URL(endpoint);\n } catch {\n continue;\n }\n\n const scheme = parsedUrl.protocol.replace(/:$/, '').toLowerCase();\n if (!supportedSchemes.has(scheme)) {\n continue;\n }\n\n candidates.push({\n key,\n endpointUrl: parsedUrl.toString(),\n parsedUrl,\n });\n }\n\n return candidates;\n}\n\nfunction validateAnsHcs27Hints(\n input: unknown,\n): ProfileResolutionHcs27TransparencyHints | undefined {\n if (!isObjectRecord(input)) {\n return undefined;\n }\n const checkpointTopicId = asString(input['checkpoint_topic_id']);\n const registry = asString(input['registry']);\n const logId = asString(input['log_id']);\n if (\n !checkpointTopicId ||\n !registry ||\n !logId ||\n registry !== ANS_HCS27_REGISTRY\n ) {\n return undefined;\n }\n const checkpointUri = asString(input['checkpoint_uri']) ?? undefined;\n const viewerUri = asString(input['viewer_uri']) ?? undefined;\n return {\n checkpointTopicId,\n registry,\n logId,\n checkpointUri,\n viewerUri,\n };\n}\n\nfunction validateHcs28Hints(\n input: unknown,\n): ProfileResolutionHcs28TransparencyHints | undefined {\n if (!isObjectRecord(input)) {\n return undefined;\n }\n const directoryTopicId = asString(input['directory_topic_id']);\n const tId = asString(input['t_id']);\n const agentId = asString(input['agent_id']);\n if (!directoryTopicId || !tId || !agentId) {\n return undefined;\n }\n const proofProfile = asString(input['proof_profile']) ?? undefined;\n return {\n directoryTopicId,\n tId,\n agentId,\n proofProfile,\n };\n}\n\nfunction parseTransparencyHints(\n input: unknown,\n): ProfileResolutionTransparencyHints | undefined {\n if (!isObjectRecord(input)) {\n return undefined;\n }\n const hcs27 = validateAnsHcs27Hints(input['hcs27']);\n const hcs28 = validateHcs28Hints(input['hcs28']);\n if (!hcs27 && !hcs28) {\n return undefined;\n }\n return {\n hcs27,\n hcs28,\n };\n}\n\nexport function parseAnsAgentCard(input: unknown): ParsedAnsAgentCard | null {\n if (!isObjectRecord(input)) {\n return null;\n }\n const ansName = asString(input['ansName']);\n const endpoints = input['endpoints'];\n if (!ansName || !isObjectRecord(endpoints)) {\n return null;\n }\n return {\n ansName,\n endpoints,\n transparencyHints: parseTransparencyHints(input['transparency']),\n };\n}\n\nexport function selectPreferredEndpoint(\n candidates: AnsEndpointCandidate[],\n protocol: string,\n): AnsEndpointCandidate | null {\n if (candidates.length === 0) {\n return null;\n }\n\n const sortedCandidates = [...candidates].sort((a, b) =>\n a.key.localeCompare(b.key),\n );\n const protocolMatches = sortedCandidates.filter(candidate =>\n hasProtocolPathSegment(candidate.parsedUrl.pathname, protocol),\n );\n if (protocolMatches.length > 0) {\n return protocolMatches[0];\n }\n return sortedCandidates[0];\n}\n\nexport function toErrorMessage(error: unknown): string | null {\n if (error instanceof Error && error.message) {\n return error.message;\n }\n return null;\n}\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"standards-sdk.es166.js","sources":["../../src/hcs-25/adapters/availability.ts"],"sourcesContent":["import { clampScore } from '../scoring';\nimport type {\n Hcs25AdapterDefinition,\n Hcs25NormalizedValue,\n Hcs25Subject,\n} from '../types';\nimport { readBoolean, readNumber, readSubjectMetrics } from '../signals';\n\n/**\n * Options for the availability adapter.\n */\nexport interface Hcs25AvailabilityAdapterOptions {\n /**\n * How to interpret `availabilityScore`. `auto` (the default) treats\n * values up to and including one as a ratio and larger values as an\n * already-normalized percent.\n */\n scoreScale?: 'ratio' | 'percent' | 'auto';\n /** Recency window in minutes for last-seen decay. Defaults to 1440. */\n recencyWindowMinutes?: number;\n /** Registries where reachability is not meaningful. */\n excludeRegistries?: readonly string[];\n}\n\nconst DEFAULT_EXCLUDED_REGISTRIES: readonly string[] = [\n 'openrouter',\n 'near-ai',\n];\n\nfunction normalizeAvailability(\n subject: Hcs25Subject,\n scoreScale: 'ratio' | 'percent' | 'auto',\n recencyWindowMinutes: number,\n): Hcs25NormalizedValue {\n const metadata = subject.metadata;\n const rawScore = metadata ? readNumber(metadata, 'availabilityScore') : null;\n if (rawScore !== null) {\n const ratio =\n scoreScale === 'ratio'\n ? rawScore\n : scoreScale === 'percent'\n ? rawScore / 100\n : rawScore > 1\n ? rawScore / 100\n : rawScore;\n return { value: clampScore(ratio * 100), status: 'ok' };\n }\n\n const metrics = readSubjectMetrics(subject);\n const minsFromLastOnline = readNumber(metrics, 'minsFromLastOnline');\n if (minsFromLastOnline !== null) {\n return {\n value: clampScore(100 * (1 - minsFromLastOnline / recencyWindowMinutes)),\n status: 'ok',\n };\n }\n\n const isOnline = readBoolean(metrics, 'isOnline');\n if (isOnline !== null) {\n return { value: isOnline ? 100 : 0, status: 'ok' };\n }\n\n return { value: 0, status: 'missing' };\n}\n\n/**\n * Creates the `availability` adapter: rewards reachable endpoints and\n * penalizes long offline windows using a linear 24-hour recency decay.\n */\nexport function createAvailabilityAdapter(\n options: Hcs25AvailabilityAdapterOptions = {},\n): Hcs25AdapterDefinition {\n const scoreScale = options.scoreScale ?? 'auto';\n const recencyWindowMinutes = options.recencyWindowMinutes ?? 1440;\n\n return {\n id: 'availability',\n weight: 1,\n contributionMode: 'universal',\n excludeRegistries: options.excludeRegistries ?? DEFAULT_EXCLUDED_REGISTRIES,\n defaultComponentKey: 'availability.uptime',\n components: [\n {\n name: 'uptime',\n normalize: ({ subject }) =>\n normalizeAvailability(subject, scoreScale, recencyWindowMinutes),\n },\n ],\n };\n}\n"],"names":[],"mappings":";;;;;;AAwBA,MAAM,8BAAiD;AAAA,EACrD;AAAA,EACA;AACF;AAEA,SAAS,sBACP,SACA,YACA,sBACsB;AACtB,QAAM,WAAW,QAAQ;AACzB,QAAM,WAAW,WAAW,WAAW,UAAU,mBAAmB,IAAI;AACxE,MAAI,aAAa,MAAM;AACrB,UAAM,QACJ,eAAe,UACX,WACA,eAAe,YACb,WAAW,MACX,WAAW,IACT,WAAW,MACX;AACV,WAAO,EAAE,OAAO,WAAW,QAAQ,GAAG,GAAG,QAAQ,KAAA;AAAA,EACnD;AAEA,QAAM,UAAU,mBAAmB,OAAO;AAC1C,QAAM,qBAAqB,WAAW,SAAS,oBAAoB;AACnE,MAAI,uBAAuB,MAAM;AAC/B,WAAO;AAAA,MACL,OAAO,WAAW,OAAO,IAAI,qBAAqB,qBAAqB;AAAA,MACvE,QAAQ;AAAA,IAAA;AAAA,EAEZ;AAEA,QAAM,WAAW,YAAY,SAAS,UAAU;AAChD,MAAI,aAAa,MAAM;AACrB,WAAO,EAAE,OAAO,WAAW,MAAM,GAAG,QAAQ,KAAA;AAAA,EAC9C;AAEA,SAAO,EAAE,OAAO,GAAG,QAAQ,UAAA;AAC7B;AAMO,SAAS,0BACd,UAA2C,IACnB;AACxB,QAAM,aAAa,QAAQ,cAAc;AACzC,QAAM,uBAAuB,QAAQ,wBAAwB;AAE7D,SAAO;AAAA,IACL,IAAI;AAAA,IACJ,QAAQ;AAAA,IACR,kBAAkB;AAAA,IAClB,mBAAmB,QAAQ,qBAAqB;AAAA,IAChD,qBAAqB;AAAA,IACrB,YAAY;AAAA,MACV;AAAA,QACE,MAAM;AAAA,QACN,WAAW,CAAC,EAAE,QAAA,MACZ,sBAAsB,SAAS,YAAY,oBAAoB;AAAA,MAAA;AAAA,IACnE;AAAA,EACF;AAEJ;"}
@@ -1,20 +1,207 @@
1
- import { Logger } from "./standards-sdk.es123.js";
2
- import { HederaMirrorNode } from "./standards-sdk.es144.js";
3
- class HCS5BaseClient {
4
- /**
5
- * Create a new HCS-5 base client
6
- */
7
- constructor(config) {
8
- this.network = config.network;
9
- this.logger = config.logger || Logger.getInstance({
10
- level: config.logLevel || "info",
11
- module: "HCS5Client",
12
- silent: config.silent
13
- });
14
- this.mirrorNode = new HederaMirrorNode(this.network, this.logger);
15
- }
1
+ import { clampScore } from "./standards-sdk.es119.js";
2
+ import { readSubjectAdditional, readNumber, readString } from "./standards-sdk.es178.js";
3
+ import "./standards-sdk.es162.js";
4
+ import "./standards-sdk.es175.js";
5
+ import "./standards-sdk.es176.js";
6
+ import "./standards-sdk.es177.js";
7
+ const DEFAULT_MODEL_REGISTRIES = ["openrouter", "near-ai"];
8
+ const MISSING = { value: 0, status: "missing" };
9
+ const DEFAULT_MODEL_TIERS = [
10
+ {
11
+ score: 95,
12
+ patterns: [
13
+ "gpt-5",
14
+ "gpt-4.5",
15
+ "o3",
16
+ "o4-mini",
17
+ "claude-opus-4",
18
+ "claude-4-opus",
19
+ "gemini-3",
20
+ "grok-4"
21
+ ]
22
+ },
23
+ {
24
+ score: 85,
25
+ patterns: [
26
+ "claude-sonnet-4",
27
+ "claude-4-sonnet",
28
+ "claude-3-7-sonnet",
29
+ "gemini-2.5-pro",
30
+ "deepseek-v3",
31
+ "deepseek-r1",
32
+ "llama-4-maverick",
33
+ "qwen3-235b",
34
+ "grok-3"
35
+ ]
36
+ },
37
+ {
38
+ score: 70,
39
+ patterns: [
40
+ "gpt-4o",
41
+ "gemini-2.5-flash",
42
+ "claude-haiku",
43
+ "llama-4-scout",
44
+ "qwen3-32b",
45
+ "mistral-large"
46
+ ]
47
+ },
48
+ {
49
+ score: 55,
50
+ patterns: ["llama-3.3", "llama-3.1", "qwen", "mistral", "gemma", "phi-"]
51
+ },
52
+ { score: 35, patterns: ["llama-2", "gpt-3.5", "gemini-1"] }
53
+ ];
54
+ const DEFAULT_MODEL_ID_KEYS = [
55
+ "openrouterModelId",
56
+ "modelId",
57
+ "model"
58
+ ];
59
+ function createOpenRouterEvalsAdapter(options = {}) {
60
+ const lowCoverageMultiplier = options.lowCoverageMultiplier ?? 0.5;
61
+ return {
62
+ id: "openrouter-evals",
63
+ weight: 0.5,
64
+ contributionMode: "scoped",
65
+ includeRegistries: options.includeRegistries ?? DEFAULT_MODEL_REGISTRIES,
66
+ defaultComponentKey: "openrouter-evals.score",
67
+ components: [
68
+ {
69
+ name: "score",
70
+ normalize: ({ subject }) => {
71
+ const additional = readSubjectAdditional(subject);
72
+ const score = readNumber(additional, "openrouterEvalScore");
73
+ const status = readString(additional, "openrouterEvalStatus");
74
+ if (score === null || status === "missing") {
75
+ return MISSING;
76
+ }
77
+ const multiplier = status === "low-coverage" ? lowCoverageMultiplier : 1;
78
+ return { value: clampScore(score * multiplier), status: "ok" };
79
+ }
80
+ }
81
+ ]
82
+ };
83
+ }
84
+ function createChatbotArenaAdapter(includeRegistries) {
85
+ return {
86
+ id: "chatbot-arena",
87
+ weight: 6,
88
+ contributionMode: "scoped",
89
+ includeRegistries: includeRegistries ?? DEFAULT_MODEL_REGISTRIES,
90
+ defaultComponentKey: "chatbot-arena.score",
91
+ components: [
92
+ {
93
+ name: "score",
94
+ normalize: ({ subject }) => {
95
+ const additional = readSubjectAdditional(subject);
96
+ const score = readNumber(additional, "chatbotArenaEvalScore");
97
+ const status = readString(additional, "chatbotArenaEvalStatus");
98
+ if (score === null || status !== "ok") {
99
+ return MISSING;
100
+ }
101
+ return { value: clampScore(score), status: "ok" };
102
+ }
103
+ }
104
+ ]
105
+ };
106
+ }
107
+ function createHuggingFaceModelIndexAdapter(includeRegistries) {
108
+ return {
109
+ id: "huggingface-model-index",
110
+ weight: 0.8,
111
+ contributionMode: "conditional",
112
+ includeRegistries: includeRegistries ?? DEFAULT_MODEL_REGISTRIES,
113
+ defaultComponentKey: "huggingface-model-index.score",
114
+ components: [
115
+ {
116
+ name: "score",
117
+ nonScorableWhenUnavailable: true,
118
+ normalize: ({ subject }) => {
119
+ const additional = readSubjectAdditional(subject);
120
+ const score = readNumber(additional, "huggingFaceEvalScore") ?? readNumber(additional, "huggingFaceSignalScore");
121
+ const status = readString(additional, "huggingFaceEvalStatus");
122
+ const mode = readString(additional, "huggingFaceEvalMode");
123
+ if (score === null || status !== "ok" || mode === "missing") {
124
+ return MISSING;
125
+ }
126
+ return { value: clampScore(score), status: "ok" };
127
+ }
128
+ }
129
+ ]
130
+ };
131
+ }
132
+ function createOpenLlmLeaderboardAdapter(includeRegistries) {
133
+ return {
134
+ id: "openllm-leaderboard",
135
+ weight: 1,
136
+ contributionMode: "conditional",
137
+ includeRegistries: includeRegistries ?? DEFAULT_MODEL_REGISTRIES,
138
+ defaultComponentKey: "openllm-leaderboard.score",
139
+ components: [
140
+ {
141
+ name: "score",
142
+ nonScorableWhenUnavailable: true,
143
+ normalize: ({ subject }) => {
144
+ const additional = readSubjectAdditional(subject);
145
+ const score = readNumber(additional, "openLlmEvalScore");
146
+ const status = readString(additional, "openLlmEvalStatus");
147
+ if (score === null || status !== "ok") {
148
+ return MISSING;
149
+ }
150
+ return { value: clampScore(score), status: "ok" };
151
+ }
152
+ }
153
+ ]
154
+ };
155
+ }
156
+ function createModelTierAdapter(options = {}) {
157
+ const tiers = options.tiers ?? DEFAULT_MODEL_TIERS;
158
+ const defaultScore = options.defaultScore ?? 50;
159
+ const modelIdKeys = options.modelIdKeys ?? DEFAULT_MODEL_ID_KEYS;
160
+ return {
161
+ id: "model-tier",
162
+ weight: 2,
163
+ contributionMode: "conditional",
164
+ includeRegistries: options.includeRegistries ?? DEFAULT_MODEL_REGISTRIES,
165
+ defaultComponentKey: "model-tier.score",
166
+ components: [
167
+ {
168
+ name: "score",
169
+ nonScorableWhenUnavailable: true,
170
+ normalize: ({ subject }) => {
171
+ const additional = readSubjectAdditional(subject);
172
+ const hasStrongCoverage = readString(additional, "openrouterEvalStatus") === "ok";
173
+ const hasIndependentEvals = [
174
+ "chatbotArenaEvalStatus",
175
+ "huggingFaceEvalStatus",
176
+ "openLlmEvalStatus"
177
+ ].some((key) => readString(additional, key) === "ok");
178
+ if (hasStrongCoverage || hasIndependentEvals) {
179
+ return MISSING;
180
+ }
181
+ const modelId = modelIdKeys.map((key) => readString(additional, key)).find((value) => value !== null);
182
+ if (modelId === null) {
183
+ return MISSING;
184
+ }
185
+ const normalizedId = modelId.toLowerCase();
186
+ const tier = tiers.find(
187
+ (entry) => entry.patterns.some(
188
+ (pattern) => normalizedId.includes(pattern.toLowerCase())
189
+ )
190
+ );
191
+ return {
192
+ value: clampScore(tier ? tier.score : defaultScore),
193
+ status: "ok"
194
+ };
195
+ }
196
+ }
197
+ ]
198
+ };
16
199
  }
17
200
  export {
18
- HCS5BaseClient
201
+ createChatbotArenaAdapter,
202
+ createHuggingFaceModelIndexAdapter,
203
+ createModelTierAdapter,
204
+ createOpenLlmLeaderboardAdapter,
205
+ createOpenRouterEvalsAdapter
19
206
  };
20
207
  //# sourceMappingURL=standards-sdk.es167.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"standards-sdk.es167.js","sources":["../../src/hcs-5/base-client.ts"],"sourcesContent":["import { Logger, ILogger } from '../utils/logger';\nimport { HederaMirrorNode } from '../services/mirror-node';\nimport { HCS5ClientConfig } from './types';\nimport { NetworkType } from '../utils/types';\n\n/**\n * Base client for HCS-5 operations\n */\nexport abstract class HCS5BaseClient {\n protected logger: ILogger;\n protected mirrorNode: HederaMirrorNode;\n protected network: NetworkType;\n\n /**\n * Create a new HCS-5 base client\n */\n constructor(config: HCS5ClientConfig) {\n this.network = config.network;\n this.logger =\n config.logger ||\n Logger.getInstance({\n level: config.logLevel || 'info',\n module: 'HCS5Client',\n silent: config.silent,\n });\n\n this.mirrorNode = new HederaMirrorNode(this.network, this.logger);\n }\n}\n"],"names":[],"mappings":";;AAQO,MAAe,eAAe;AAAA;AAAA;AAAA;AAAA,EAQnC,YAAY,QAA0B;AACpC,SAAK,UAAU,OAAO;AACtB,SAAK,SACH,OAAO,UACP,OAAO,YAAY;AAAA,MACjB,OAAO,OAAO,YAAY;AAAA,MAC1B,QAAQ;AAAA,MACR,QAAQ,OAAO;AAAA,IAAA,CAChB;AAEH,SAAK,aAAa,IAAI,iBAAiB,KAAK,SAAS,KAAK,MAAM;AAAA,EAClE;AACF;"}
1
+ {"version":3,"file":"standards-sdk.es167.js","sources":["../../src/hcs-25/adapters/model-evals.ts"],"sourcesContent":["import { clampScore } from '../scoring';\nimport type {\n Hcs25AdapterDefinition,\n Hcs25NormalizedValue,\n Hcs25Subject,\n} from '../types';\nimport {\n readNumber,\n readString,\n readSubjectAdditional,\n type Hcs25JsonObject,\n} from '../signals';\n\n/**\n * Options for the OpenRouter benchmarks adapter.\n */\nexport interface Hcs25OpenRouterEvalsAdapterOptions {\n /** Multiplier applied to scores whose coverage status is `low-coverage`. */\n lowCoverageMultiplier?: number;\n /** Model catalog registries where the adapter applies. */\n includeRegistries?: readonly string[];\n}\n\n/**\n * A heuristic model tier: a score plus the lowercase identifier patterns\n * that map to it. The first matching tier wins.\n */\nexport interface Hcs25ModelTier {\n score: number;\n patterns: readonly string[];\n}\n\n/**\n * Options for the fallback model-tier adapter.\n */\nexport interface Hcs25ModelTierAdapterOptions {\n /** Tier table; the first matching tier wins. */\n tiers?: readonly Hcs25ModelTier[];\n /** Score for models that match no tier. Default 50. */\n defaultScore?: number;\n /** Metadata keys checked for the model identifier, in order. */\n modelIdKeys?: readonly string[];\n /** Model catalog registries where the adapter applies. */\n includeRegistries?: readonly string[];\n}\n\nconst DEFAULT_MODEL_REGISTRIES: readonly string[] = ['openrouter', 'near-ai'];\n\nconst MISSING: Hcs25NormalizedValue = { value: 0, status: 'missing' };\n\nconst DEFAULT_MODEL_TIERS: readonly Hcs25ModelTier[] = [\n {\n score: 95,\n patterns: [\n 'gpt-5',\n 'gpt-4.5',\n 'o3',\n 'o4-mini',\n 'claude-opus-4',\n 'claude-4-opus',\n 'gemini-3',\n 'grok-4',\n ],\n },\n {\n score: 85,\n patterns: [\n 'claude-sonnet-4',\n 'claude-4-sonnet',\n 'claude-3-7-sonnet',\n 'gemini-2.5-pro',\n 'deepseek-v3',\n 'deepseek-r1',\n 'llama-4-maverick',\n 'qwen3-235b',\n 'grok-3',\n ],\n },\n {\n score: 70,\n patterns: [\n 'gpt-4o',\n 'gemini-2.5-flash',\n 'claude-haiku',\n 'llama-4-scout',\n 'qwen3-32b',\n 'mistral-large',\n ],\n },\n {\n score: 55,\n patterns: ['llama-3.3', 'llama-3.1', 'qwen', 'mistral', 'gemma', 'phi-'],\n },\n { score: 35, patterns: ['llama-2', 'gpt-3.5', 'gemini-1'] },\n];\n\nconst DEFAULT_MODEL_ID_KEYS: readonly string[] = [\n 'openrouterModelId',\n 'modelId',\n 'model',\n];\n\n/**\n * Creates the `openrouter-evals` adapter: exposes a coverage-aware\n * benchmark component for model catalog entries, down-weighting\n * low-coverage scores.\n */\nexport function createOpenRouterEvalsAdapter(\n options: Hcs25OpenRouterEvalsAdapterOptions = {},\n): Hcs25AdapterDefinition {\n const lowCoverageMultiplier = options.lowCoverageMultiplier ?? 0.5;\n\n return {\n id: 'openrouter-evals',\n weight: 0.5,\n contributionMode: 'scoped',\n includeRegistries: options.includeRegistries ?? DEFAULT_MODEL_REGISTRIES,\n defaultComponentKey: 'openrouter-evals.score',\n components: [\n {\n name: 'score',\n normalize: ({ subject }): Hcs25NormalizedValue => {\n const additional: Hcs25JsonObject = readSubjectAdditional(subject);\n const score = readNumber(additional, 'openrouterEvalScore');\n const status = readString(additional, 'openrouterEvalStatus');\n\n if (score === null || status === 'missing') {\n return MISSING;\n }\n\n const multiplier =\n status === 'low-coverage' ? lowCoverageMultiplier : 1;\n return { value: clampScore(score * multiplier), status: 'ok' };\n },\n },\n ],\n };\n}\n\n/**\n * Creates the `chatbot-arena` adapter: exposes an independent\n * preference-leaderboard signal as a normalized component.\n */\nexport function createChatbotArenaAdapter(\n includeRegistries?: readonly string[],\n): Hcs25AdapterDefinition {\n return {\n id: 'chatbot-arena',\n weight: 6,\n contributionMode: 'scoped',\n includeRegistries: includeRegistries ?? DEFAULT_MODEL_REGISTRIES,\n defaultComponentKey: 'chatbot-arena.score',\n components: [\n {\n name: 'score',\n normalize: ({ subject }): Hcs25NormalizedValue => {\n const additional = readSubjectAdditional(subject);\n const score = readNumber(additional, 'chatbotArenaEvalScore');\n const status = readString(additional, 'chatbotArenaEvalStatus');\n\n if (score === null || status !== 'ok') {\n return MISSING;\n }\n return { value: clampScore(score), status: 'ok' };\n },\n },\n ],\n };\n}\n\n/**\n * Creates the `huggingface-model-index` adapter: exposes Hugging\n * Face-derived model-index and popularity signals, contributing only when\n * coverage exists.\n */\nexport function createHuggingFaceModelIndexAdapter(\n includeRegistries?: readonly string[],\n): Hcs25AdapterDefinition {\n return {\n id: 'huggingface-model-index',\n weight: 0.8,\n contributionMode: 'conditional',\n includeRegistries: includeRegistries ?? DEFAULT_MODEL_REGISTRIES,\n defaultComponentKey: 'huggingface-model-index.score',\n components: [\n {\n name: 'score',\n nonScorableWhenUnavailable: true,\n normalize: ({ subject }): Hcs25NormalizedValue => {\n const additional = readSubjectAdditional(subject);\n const score =\n readNumber(additional, 'huggingFaceEvalScore') ??\n readNumber(additional, 'huggingFaceSignalScore');\n const status = readString(additional, 'huggingFaceEvalStatus');\n const mode = readString(additional, 'huggingFaceEvalMode');\n\n if (score === null || status !== 'ok' || mode === 'missing') {\n return MISSING;\n }\n return { value: clampScore(score), status: 'ok' };\n },\n },\n ],\n };\n}\n\n/**\n * Creates the `openllm-leaderboard` adapter: exposes a benchmark-derived\n * leaderboard score, contributing only when a record exists.\n */\nexport function createOpenLlmLeaderboardAdapter(\n includeRegistries?: readonly string[],\n): Hcs25AdapterDefinition {\n return {\n id: 'openllm-leaderboard',\n weight: 1,\n contributionMode: 'conditional',\n includeRegistries: includeRegistries ?? DEFAULT_MODEL_REGISTRIES,\n defaultComponentKey: 'openllm-leaderboard.score',\n components: [\n {\n name: 'score',\n nonScorableWhenUnavailable: true,\n normalize: ({ subject }): Hcs25NormalizedValue => {\n const additional = readSubjectAdditional(subject);\n const score = readNumber(additional, 'openLlmEvalScore');\n const status = readString(additional, 'openLlmEvalStatus');\n\n if (score === null || status !== 'ok') {\n return MISSING;\n }\n return { value: clampScore(score), status: 'ok' };\n },\n },\n ],\n };\n}\n\n/**\n * Creates the `model-tier` adapter: a deterministic fallback heuristic for\n * model catalogs with sparse external-eval coverage. It suppresses itself\n * when OpenRouter coverage is sufficient or any independent eval source\n * exists, per the specification's fallback-only guidance.\n */\nexport function createModelTierAdapter(\n options: Hcs25ModelTierAdapterOptions = {},\n): Hcs25AdapterDefinition {\n const tiers = options.tiers ?? DEFAULT_MODEL_TIERS;\n const defaultScore = options.defaultScore ?? 50;\n const modelIdKeys = options.modelIdKeys ?? DEFAULT_MODEL_ID_KEYS;\n\n return {\n id: 'model-tier',\n weight: 2,\n contributionMode: 'conditional',\n includeRegistries: options.includeRegistries ?? DEFAULT_MODEL_REGISTRIES,\n defaultComponentKey: 'model-tier.score',\n components: [\n {\n name: 'score',\n nonScorableWhenUnavailable: true,\n normalize: ({ subject }): Hcs25NormalizedValue => {\n const additional = readSubjectAdditional(subject);\n\n const hasStrongCoverage =\n readString(additional, 'openrouterEvalStatus') === 'ok';\n const hasIndependentEvals = [\n 'chatbotArenaEvalStatus',\n 'huggingFaceEvalStatus',\n 'openLlmEvalStatus',\n ].some(key => readString(additional, key) === 'ok');\n if (hasStrongCoverage || hasIndependentEvals) {\n return MISSING;\n }\n\n const modelId = modelIdKeys\n .map(key => readString(additional, key))\n .find((value): value is string => value !== null);\n if (modelId === null) {\n return MISSING;\n }\n\n const normalizedId = modelId.toLowerCase();\n const tier = tiers.find(entry =>\n entry.patterns.some(pattern =>\n normalizedId.includes(pattern.toLowerCase()),\n ),\n );\n return {\n value: clampScore(tier ? tier.score : defaultScore),\n status: 'ok',\n };\n },\n },\n ],\n };\n}\n"],"names":[],"mappings":"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"}