@hashgraphonline/standards-sdk 0.1.190 → 0.1.191

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 (350) hide show
  1. package/dist/browser/hcs-25/adapters/ans-trust-discovery.d.ts +22 -0
  2. package/dist/browser/hcs-25/adapters/ans-trust-discovery.d.ts.map +1 -0
  3. package/dist/browser/hcs-25/adapters/index.d.ts +1 -0
  4. package/dist/browser/hcs-25/adapters/index.d.ts.map +1 -1
  5. package/dist/browser/hcs-25/collectors/ans-trust-discovery.d.ts +32 -0
  6. package/dist/browser/hcs-25/collectors/ans-trust-discovery.d.ts.map +1 -0
  7. package/dist/browser/hcs-25/collectors/catalog.d.ts +9 -2
  8. package/dist/browser/hcs-25/collectors/catalog.d.ts.map +1 -1
  9. package/dist/browser/hcs-25/collectors/index.d.ts +1 -0
  10. package/dist/browser/hcs-25/collectors/index.d.ts.map +1 -1
  11. package/dist/browser/hcs-25/signals/ans-trust-discovery.d.ts +50 -0
  12. package/dist/browser/hcs-25/signals/ans-trust-discovery.d.ts.map +1 -0
  13. package/dist/browser/hcs-25/signals/index.d.ts +1 -0
  14. package/dist/browser/hcs-25/signals/index.d.ts.map +1 -1
  15. package/dist/browser-root/hcs-25/adapters/ans-trust-discovery.d.ts +22 -0
  16. package/dist/browser-root/hcs-25/adapters/ans-trust-discovery.d.ts.map +1 -0
  17. package/dist/browser-root/hcs-25/adapters/index.d.ts +1 -0
  18. package/dist/browser-root/hcs-25/adapters/index.d.ts.map +1 -1
  19. package/dist/browser-root/hcs-25/collectors/ans-trust-discovery.d.ts +32 -0
  20. package/dist/browser-root/hcs-25/collectors/ans-trust-discovery.d.ts.map +1 -0
  21. package/dist/browser-root/hcs-25/collectors/catalog.d.ts +9 -2
  22. package/dist/browser-root/hcs-25/collectors/catalog.d.ts.map +1 -1
  23. package/dist/browser-root/hcs-25/collectors/index.d.ts +1 -0
  24. package/dist/browser-root/hcs-25/collectors/index.d.ts.map +1 -1
  25. package/dist/browser-root/hcs-25/signals/ans-trust-discovery.d.ts +50 -0
  26. package/dist/browser-root/hcs-25/signals/ans-trust-discovery.d.ts.map +1 -0
  27. package/dist/browser-root/hcs-25/signals/index.d.ts +1 -0
  28. package/dist/browser-root/hcs-25/signals/index.d.ts.map +1 -1
  29. package/dist/cjs/hcs-25/adapters/ans-trust-discovery.d.ts +22 -0
  30. package/dist/cjs/hcs-25/adapters/ans-trust-discovery.d.ts.map +1 -0
  31. package/dist/cjs/hcs-25/adapters/index.d.ts +1 -0
  32. package/dist/cjs/hcs-25/adapters/index.d.ts.map +1 -1
  33. package/dist/cjs/hcs-25/collectors/ans-trust-discovery.d.ts +32 -0
  34. package/dist/cjs/hcs-25/collectors/ans-trust-discovery.d.ts.map +1 -0
  35. package/dist/cjs/hcs-25/collectors/catalog.d.ts +9 -2
  36. package/dist/cjs/hcs-25/collectors/catalog.d.ts.map +1 -1
  37. package/dist/cjs/hcs-25/collectors/index.d.ts +1 -0
  38. package/dist/cjs/hcs-25/collectors/index.d.ts.map +1 -1
  39. package/dist/cjs/hcs-25/signals/ans-trust-discovery.d.ts +50 -0
  40. package/dist/cjs/hcs-25/signals/ans-trust-discovery.d.ts.map +1 -0
  41. package/dist/cjs/hcs-25/signals/index.d.ts +1 -0
  42. package/dist/cjs/hcs-25/signals/index.d.ts.map +1 -1
  43. package/dist/cjs/standards-sdk.cjs +1 -1
  44. package/dist/cjs/standards-sdk.cjs.map +1 -1
  45. package/dist/es/hcs-25/adapters/ans-trust-discovery.d.ts +22 -0
  46. package/dist/es/hcs-25/adapters/ans-trust-discovery.d.ts.map +1 -0
  47. package/dist/es/hcs-25/adapters/index.d.ts +1 -0
  48. package/dist/es/hcs-25/adapters/index.d.ts.map +1 -1
  49. package/dist/es/hcs-25/collectors/ans-trust-discovery.d.ts +32 -0
  50. package/dist/es/hcs-25/collectors/ans-trust-discovery.d.ts.map +1 -0
  51. package/dist/es/hcs-25/collectors/catalog.d.ts +9 -2
  52. package/dist/es/hcs-25/collectors/catalog.d.ts.map +1 -1
  53. package/dist/es/hcs-25/collectors/index.d.ts +1 -0
  54. package/dist/es/hcs-25/collectors/index.d.ts.map +1 -1
  55. package/dist/es/hcs-25/signals/ans-trust-discovery.d.ts +50 -0
  56. package/dist/es/hcs-25/signals/ans-trust-discovery.d.ts.map +1 -0
  57. package/dist/es/hcs-25/signals/index.d.ts +1 -0
  58. package/dist/es/hcs-25/signals/index.d.ts.map +1 -1
  59. package/dist/es/standards-sdk.es.js +78 -71
  60. package/dist/es/standards-sdk.es.js.map +1 -1
  61. package/dist/es/standards-sdk.es101.js +2 -2
  62. package/dist/es/standards-sdk.es103.js +2 -2
  63. package/dist/es/standards-sdk.es104.js +1 -1
  64. package/dist/es/standards-sdk.es106.js +1 -1
  65. package/dist/es/standards-sdk.es108.js +2 -2
  66. package/dist/es/standards-sdk.es11.js +1 -1
  67. package/dist/es/standards-sdk.es110.js +1 -1
  68. package/dist/es/standards-sdk.es111.js +2 -2
  69. package/dist/es/standards-sdk.es115.js +3 -3
  70. package/dist/es/standards-sdk.es116.js +4 -4
  71. package/dist/es/standards-sdk.es12.js +1 -1
  72. package/dist/es/standards-sdk.es120.js +22 -4
  73. package/dist/es/standards-sdk.es120.js.map +1 -1
  74. package/dist/es/standards-sdk.es121.js +15 -12
  75. package/dist/es/standards-sdk.es121.js.map +1 -1
  76. package/dist/es/standards-sdk.es123.js +6 -5
  77. package/dist/es/standards-sdk.es123.js.map +1 -1
  78. package/dist/es/standards-sdk.es124.js +6 -5
  79. package/dist/es/standards-sdk.es124.js.map +1 -1
  80. package/dist/es/standards-sdk.es127.js +6 -5
  81. package/dist/es/standards-sdk.es127.js.map +1 -1
  82. package/dist/es/standards-sdk.es128.js +110 -136
  83. package/dist/es/standards-sdk.es128.js.map +1 -1
  84. package/dist/es/standards-sdk.es129.js +133 -141
  85. package/dist/es/standards-sdk.es129.js.map +1 -1
  86. package/dist/es/standards-sdk.es13.js +1 -1
  87. package/dist/es/standards-sdk.es130.js +135 -345
  88. package/dist/es/standards-sdk.es130.js.map +1 -1
  89. package/dist/es/standards-sdk.es131.js +332 -344
  90. package/dist/es/standards-sdk.es131.js.map +1 -1
  91. package/dist/es/standards-sdk.es132.js +338 -178
  92. package/dist/es/standards-sdk.es132.js.map +1 -1
  93. package/dist/es/standards-sdk.es133.js +200 -196
  94. package/dist/es/standards-sdk.es133.js.map +1 -1
  95. package/dist/es/standards-sdk.es134.js +216 -364
  96. package/dist/es/standards-sdk.es134.js.map +1 -1
  97. package/dist/es/standards-sdk.es135.js +358 -100
  98. package/dist/es/standards-sdk.es135.js.map +1 -1
  99. package/dist/es/standards-sdk.es136.js +91 -220
  100. package/dist/es/standards-sdk.es136.js.map +1 -1
  101. package/dist/es/standards-sdk.es137.js +173 -1250
  102. package/dist/es/standards-sdk.es137.js.map +1 -1
  103. package/dist/es/standards-sdk.es138.js +1295 -98
  104. package/dist/es/standards-sdk.es138.js.map +1 -1
  105. package/dist/es/standards-sdk.es139.js +109 -246
  106. package/dist/es/standards-sdk.es139.js.map +1 -1
  107. package/dist/es/standards-sdk.es14.js +1 -1
  108. package/dist/es/standards-sdk.es140.js +263 -97
  109. package/dist/es/standards-sdk.es140.js.map +1 -1
  110. package/dist/es/standards-sdk.es141.js +107 -248
  111. package/dist/es/standards-sdk.es141.js.map +1 -1
  112. package/dist/es/standards-sdk.es142.js +246 -472
  113. package/dist/es/standards-sdk.es142.js.map +1 -1
  114. package/dist/es/standards-sdk.es143.js +458 -85
  115. package/dist/es/standards-sdk.es143.js.map +1 -1
  116. package/dist/es/standards-sdk.es144.js +96 -151
  117. package/dist/es/standards-sdk.es144.js.map +1 -1
  118. package/dist/es/standards-sdk.es145.js +155 -29
  119. package/dist/es/standards-sdk.es145.js.map +1 -1
  120. package/dist/es/standards-sdk.es146.js +26 -4
  121. package/dist/es/standards-sdk.es146.js.map +1 -1
  122. package/dist/es/standards-sdk.es147.js +10 -180
  123. package/dist/es/standards-sdk.es147.js.map +1 -1
  124. package/dist/es/standards-sdk.es148.js +179 -26
  125. package/dist/es/standards-sdk.es148.js.map +1 -1
  126. package/dist/es/standards-sdk.es149.js +27 -20
  127. package/dist/es/standards-sdk.es149.js.map +1 -1
  128. package/dist/es/standards-sdk.es15.js +1 -1
  129. package/dist/es/standards-sdk.es150.js +18 -156
  130. package/dist/es/standards-sdk.es150.js.map +1 -1
  131. package/dist/es/standards-sdk.es151.js +148 -190
  132. package/dist/es/standards-sdk.es151.js.map +1 -1
  133. package/dist/es/standards-sdk.es152.js +159 -747
  134. package/dist/es/standards-sdk.es152.js.map +1 -1
  135. package/dist/es/standards-sdk.es153.js +786 -9
  136. package/dist/es/standards-sdk.es153.js.map +1 -1
  137. package/dist/es/standards-sdk.es154.js +13 -567
  138. package/dist/es/standards-sdk.es154.js.map +1 -1
  139. package/dist/es/standards-sdk.es155.js +541 -600
  140. package/dist/es/standards-sdk.es155.js.map +1 -1
  141. package/dist/es/standards-sdk.es156.js +625 -12
  142. package/dist/es/standards-sdk.es156.js.map +1 -1
  143. package/dist/es/standards-sdk.es157.js +13 -2
  144. package/dist/es/standards-sdk.es157.js.map +1 -1
  145. package/dist/es/standards-sdk.es158.js +2 -87
  146. package/dist/es/standards-sdk.es158.js.map +1 -1
  147. package/dist/es/standards-sdk.es159.js +84 -37
  148. package/dist/es/standards-sdk.es159.js.map +1 -1
  149. package/dist/es/standards-sdk.es16.js +6 -6
  150. package/dist/es/standards-sdk.es160.js +40 -2
  151. package/dist/es/standards-sdk.es160.js.map +1 -1
  152. package/dist/es/standards-sdk.es161.js +2 -235
  153. package/dist/es/standards-sdk.es161.js.map +1 -1
  154. package/dist/es/standards-sdk.es162.js +204 -1109
  155. package/dist/es/standards-sdk.es162.js.map +1 -1
  156. package/dist/es/standards-sdk.es163.js +1059 -225
  157. package/dist/es/standards-sdk.es163.js.map +1 -1
  158. package/dist/es/standards-sdk.es164.js +303 -419
  159. package/dist/es/standards-sdk.es164.js.map +1 -1
  160. package/dist/es/standards-sdk.es165.js +418 -351
  161. package/dist/es/standards-sdk.es165.js.map +1 -1
  162. package/dist/es/standards-sdk.es166.js +347 -1114
  163. package/dist/es/standards-sdk.es166.js.map +1 -1
  164. package/dist/es/standards-sdk.es167.js +1094 -180
  165. package/dist/es/standards-sdk.es167.js.map +1 -1
  166. package/dist/es/standards-sdk.es168.js +153 -1512
  167. package/dist/es/standards-sdk.es168.js.map +1 -1
  168. package/dist/es/standards-sdk.es169.js +1457 -1056
  169. package/dist/es/standards-sdk.es169.js.map +1 -1
  170. package/dist/es/standards-sdk.es170.js +1163 -14
  171. package/dist/es/standards-sdk.es170.js.map +1 -1
  172. package/dist/es/standards-sdk.es171.js +15 -449
  173. package/dist/es/standards-sdk.es171.js.map +1 -1
  174. package/dist/es/standards-sdk.es172.js +440 -248
  175. package/dist/es/standards-sdk.es172.js.map +1 -1
  176. package/dist/es/standards-sdk.es173.js +259 -4
  177. package/dist/es/standards-sdk.es173.js.map +1 -1
  178. package/dist/es/standards-sdk.es174.js +4 -81
  179. package/dist/es/standards-sdk.es174.js.map +1 -1
  180. package/dist/es/standards-sdk.es175.js +71 -77
  181. package/dist/es/standards-sdk.es175.js.map +1 -1
  182. package/dist/es/standards-sdk.es176.js +80 -53
  183. package/dist/es/standards-sdk.es176.js.map +1 -1
  184. package/dist/es/standards-sdk.es177.js +59 -2546
  185. package/dist/es/standards-sdk.es177.js.map +1 -1
  186. package/dist/es/standards-sdk.es178.js +2547 -159
  187. package/dist/es/standards-sdk.es178.js.map +1 -1
  188. package/dist/es/standards-sdk.es179.js +159 -7
  189. package/dist/es/standards-sdk.es179.js.map +1 -1
  190. package/dist/es/standards-sdk.es18.js +13 -13
  191. package/dist/es/standards-sdk.es180.js +7 -86
  192. package/dist/es/standards-sdk.es180.js.map +1 -1
  193. package/dist/es/standards-sdk.es181.js +65 -44
  194. package/dist/es/standards-sdk.es181.js.map +1 -1
  195. package/dist/es/standards-sdk.es182.js +57 -188
  196. package/dist/es/standards-sdk.es182.js.map +1 -1
  197. package/dist/es/standards-sdk.es183.js +27 -26
  198. package/dist/es/standards-sdk.es183.js.map +1 -1
  199. package/dist/es/standards-sdk.es184.js +191 -53
  200. package/dist/es/standards-sdk.es184.js.map +1 -1
  201. package/dist/es/standards-sdk.es185.js +21 -109
  202. package/dist/es/standards-sdk.es185.js.map +1 -1
  203. package/dist/es/standards-sdk.es186.js +49 -47
  204. package/dist/es/standards-sdk.es186.js.map +1 -1
  205. package/dist/es/standards-sdk.es187.js +89 -205
  206. package/dist/es/standards-sdk.es187.js.map +1 -1
  207. package/dist/es/standards-sdk.es188.js +35 -58
  208. package/dist/es/standards-sdk.es188.js.map +1 -1
  209. package/dist/es/standards-sdk.es189.js +48 -39
  210. package/dist/es/standards-sdk.es189.js.map +1 -1
  211. package/dist/es/standards-sdk.es19.js +10 -10
  212. package/dist/es/standards-sdk.es190.js +218 -48
  213. package/dist/es/standards-sdk.es190.js.map +1 -1
  214. package/dist/es/standards-sdk.es191.js +66 -42
  215. package/dist/es/standards-sdk.es191.js.map +1 -1
  216. package/dist/es/standards-sdk.es192.js +33 -105
  217. package/dist/es/standards-sdk.es192.js.map +1 -1
  218. package/dist/es/standards-sdk.es193.js +49 -43
  219. package/dist/es/standards-sdk.es193.js.map +1 -1
  220. package/dist/es/standards-sdk.es194.js +33 -42
  221. package/dist/es/standards-sdk.es194.js.map +1 -1
  222. package/dist/es/standards-sdk.es195.js +123 -72
  223. package/dist/es/standards-sdk.es195.js.map +1 -1
  224. package/dist/es/standards-sdk.es196.js +58 -75
  225. package/dist/es/standards-sdk.es196.js.map +1 -1
  226. package/dist/es/standards-sdk.es197.js +60 -44
  227. package/dist/es/standards-sdk.es197.js.map +1 -1
  228. package/dist/es/standards-sdk.es198.js +72 -36
  229. package/dist/es/standards-sdk.es198.js.map +1 -1
  230. package/dist/es/standards-sdk.es199.js +75 -30
  231. package/dist/es/standards-sdk.es199.js.map +1 -1
  232. package/dist/es/standards-sdk.es2.js +2 -2
  233. package/dist/es/standards-sdk.es20.js +1 -1
  234. package/dist/es/standards-sdk.es200.js +44 -34
  235. package/dist/es/standards-sdk.es200.js.map +1 -1
  236. package/dist/es/standards-sdk.es201.js +36 -48
  237. package/dist/es/standards-sdk.es201.js.map +1 -1
  238. package/dist/es/standards-sdk.es202.js +30 -138
  239. package/dist/es/standards-sdk.es202.js.map +1 -1
  240. package/dist/es/standards-sdk.es203.js +34 -42
  241. package/dist/es/standards-sdk.es203.js.map +1 -1
  242. package/dist/es/standards-sdk.es204.js +48 -12482
  243. package/dist/es/standards-sdk.es204.js.map +1 -1
  244. package/dist/es/standards-sdk.es205.js +134 -13
  245. package/dist/es/standards-sdk.es205.js.map +1 -1
  246. package/dist/es/standards-sdk.es206.js +36 -50
  247. package/dist/es/standards-sdk.es206.js.map +1 -1
  248. package/dist/es/standards-sdk.es207.js +12449 -78
  249. package/dist/es/standards-sdk.es207.js.map +1 -1
  250. package/dist/es/standards-sdk.es208.js +15 -79
  251. package/dist/es/standards-sdk.es208.js.map +1 -1
  252. package/dist/es/standards-sdk.es209.js +48 -192
  253. package/dist/es/standards-sdk.es209.js.map +1 -1
  254. package/dist/es/standards-sdk.es21.js +1 -1
  255. package/dist/es/standards-sdk.es210.js +90 -651
  256. package/dist/es/standards-sdk.es210.js.map +1 -1
  257. package/dist/es/standards-sdk.es211.js +71 -63
  258. package/dist/es/standards-sdk.es211.js.map +1 -1
  259. package/dist/es/standards-sdk.es212.js +188 -160
  260. package/dist/es/standards-sdk.es212.js.map +1 -1
  261. package/dist/es/standards-sdk.es213.js +65 -314
  262. package/dist/es/standards-sdk.es213.js.map +1 -1
  263. package/dist/es/standards-sdk.es214.js +661 -335
  264. package/dist/es/standards-sdk.es214.js.map +1 -1
  265. package/dist/es/standards-sdk.es215.js +129 -410
  266. package/dist/es/standards-sdk.es215.js.map +1 -1
  267. package/dist/es/standards-sdk.es216.js +200 -209
  268. package/dist/es/standards-sdk.es216.js.map +1 -1
  269. package/dist/es/standards-sdk.es217.js +334 -64
  270. package/dist/es/standards-sdk.es217.js.map +1 -1
  271. package/dist/es/standards-sdk.es218.js +438 -124
  272. package/dist/es/standards-sdk.es218.js.map +1 -1
  273. package/dist/es/standards-sdk.es219.js +310 -496
  274. package/dist/es/standards-sdk.es219.js.map +1 -1
  275. package/dist/es/standards-sdk.es22.js +1 -1
  276. package/dist/es/standards-sdk.es220.js +60 -243
  277. package/dist/es/standards-sdk.es220.js.map +1 -1
  278. package/dist/es/standards-sdk.es221.js +118 -175
  279. package/dist/es/standards-sdk.es221.js.map +1 -1
  280. package/dist/es/standards-sdk.es222.js +465 -67
  281. package/dist/es/standards-sdk.es222.js.map +1 -1
  282. package/dist/es/standards-sdk.es223.js +250 -143
  283. package/dist/es/standards-sdk.es223.js.map +1 -1
  284. package/dist/es/standards-sdk.es224.js +172 -160
  285. package/dist/es/standards-sdk.es224.js.map +1 -1
  286. package/dist/es/standards-sdk.es225.js +65 -630
  287. package/dist/es/standards-sdk.es225.js.map +1 -1
  288. package/dist/es/standards-sdk.es226.js +128 -161
  289. package/dist/es/standards-sdk.es226.js.map +1 -1
  290. package/dist/es/standards-sdk.es227.js +144 -195
  291. package/dist/es/standards-sdk.es227.js.map +1 -1
  292. package/dist/es/standards-sdk.es228.js +668 -223
  293. package/dist/es/standards-sdk.es228.js.map +1 -1
  294. package/dist/es/standards-sdk.es229.js +188 -0
  295. package/dist/es/standards-sdk.es229.js.map +1 -0
  296. package/dist/es/standards-sdk.es23.js +1 -1
  297. package/dist/es/standards-sdk.es230.js +238 -0
  298. package/dist/es/standards-sdk.es230.js.map +1 -0
  299. package/dist/es/standards-sdk.es231.js +242 -0
  300. package/dist/es/standards-sdk.es231.js.map +1 -0
  301. package/dist/es/standards-sdk.es24.js +1 -1
  302. package/dist/es/standards-sdk.es25.js +1 -1
  303. package/dist/es/standards-sdk.es26.js +1 -1
  304. package/dist/es/standards-sdk.es27.js +13 -13
  305. package/dist/es/standards-sdk.es30.js +2 -2
  306. package/dist/es/standards-sdk.es31.js +4 -4
  307. package/dist/es/standards-sdk.es32.js +1 -1
  308. package/dist/es/standards-sdk.es35.js +7 -7
  309. package/dist/es/standards-sdk.es36.js +4 -4
  310. package/dist/es/standards-sdk.es37.js +2 -2
  311. package/dist/es/standards-sdk.es38.js +2 -2
  312. package/dist/es/standards-sdk.es39.js +1 -1
  313. package/dist/es/standards-sdk.es4.js +2 -2
  314. package/dist/es/standards-sdk.es40.js +1 -1
  315. package/dist/es/standards-sdk.es41.js +2 -2
  316. package/dist/es/standards-sdk.es46.js +1 -1
  317. package/dist/es/standards-sdk.es5.js +2 -2
  318. package/dist/es/standards-sdk.es51.js +1 -1
  319. package/dist/es/standards-sdk.es53.js +1 -1
  320. package/dist/es/standards-sdk.es56.js +2 -2
  321. package/dist/es/standards-sdk.es59.js +1 -1
  322. package/dist/es/standards-sdk.es6.js +2 -2
  323. package/dist/es/standards-sdk.es60.js +1 -1
  324. package/dist/es/standards-sdk.es62.js +1 -1
  325. package/dist/es/standards-sdk.es63.js +2 -2
  326. package/dist/es/standards-sdk.es64.js +1 -1
  327. package/dist/es/standards-sdk.es65.js +1 -1
  328. package/dist/es/standards-sdk.es66.js +1 -1
  329. package/dist/es/standards-sdk.es67.js +8 -8
  330. package/dist/es/standards-sdk.es69.js +1 -1
  331. package/dist/es/standards-sdk.es7.js +1 -1
  332. package/dist/es/standards-sdk.es71.js +2 -2
  333. package/dist/es/standards-sdk.es72.js +3 -3
  334. package/dist/es/standards-sdk.es75.js +5 -5
  335. package/dist/es/standards-sdk.es76.js +3 -3
  336. package/dist/es/standards-sdk.es77.js +2 -2
  337. package/dist/es/standards-sdk.es78.js +1 -1
  338. package/dist/es/standards-sdk.es81.js +2 -2
  339. package/dist/es/standards-sdk.es83.js +2 -2
  340. package/dist/es/standards-sdk.es84.js +5 -5
  341. package/dist/es/standards-sdk.es85.js +1 -1
  342. package/dist/es/standards-sdk.es88.js +1 -1
  343. package/dist/es/standards-sdk.es89.js +2 -2
  344. package/dist/es/standards-sdk.es9.js +2 -2
  345. package/dist/es/standards-sdk.es90.js +4 -4
  346. package/dist/es/standards-sdk.es94.js +3 -3
  347. package/dist/es/standards-sdk.es96.js +2 -2
  348. package/dist/es/standards-sdk.es98.js +1 -1
  349. package/dist/es/standards-sdk.es99.js +3 -3
  350. package/package.json +1 -1
@@ -1,29 +1,30 @@
1
- import { clampScore } from "./standards-sdk.es119.js";
2
- function clampUnit(value) {
3
- return Math.min(1, Math.max(0, value));
4
- }
5
- function normalizeRatio(value) {
6
- return clampUnit(value > 1 ? value / 100 : value);
7
- }
8
- function logScale(value, cap) {
9
- if (cap <= 0) {
10
- return 0;
11
- }
12
- return clampScore(
13
- 100 * clampUnit(Math.log1p(Math.max(0, value)) / Math.log1p(cap))
14
- );
15
- }
16
- function meanOfPresent(values) {
17
- const present = values.filter((value) => value !== null);
18
- if (present.length === 0) {
19
- return null;
20
- }
21
- return present.reduce((sum, value) => sum + value, 0) / present.length;
22
- }
1
+ import { z } from "zod";
2
+ import { hcs25SignalStatusSchema } from "./standards-sdk.es118.js";
3
+ const HCS25_ANS_TRUST_DISCOVERY_SIGNALS = [
4
+ "certtype",
5
+ "dnssecurity",
6
+ "agentage",
7
+ "versionstability",
8
+ "dnsconsistency",
9
+ "httpsrecord",
10
+ "agentcard",
11
+ "certificatehygiene"
12
+ ];
13
+ const ansTrustDiscoveryScoreSchema = z.number().min(0).max(100).nullish();
14
+ const hcs25AnsTrustDiscoveryFieldsSchema = z.object({
15
+ "ans-trust-discovery.certtype": ansTrustDiscoveryScoreSchema,
16
+ "ans-trust-discovery.dnssecurity": ansTrustDiscoveryScoreSchema,
17
+ "ans-trust-discovery.agentage": ansTrustDiscoveryScoreSchema,
18
+ "ans-trust-discovery.versionstability": ansTrustDiscoveryScoreSchema,
19
+ "ans-trust-discovery.dnsconsistency": ansTrustDiscoveryScoreSchema,
20
+ "ans-trust-discovery.httpsrecord": ansTrustDiscoveryScoreSchema,
21
+ "ans-trust-discovery.agentcard": ansTrustDiscoveryScoreSchema,
22
+ "ans-trust-discovery.certificatehygiene": ansTrustDiscoveryScoreSchema,
23
+ ansTrustDiscoveryStatus: hcs25SignalStatusSchema.nullish(),
24
+ ansTrustDiscoveryUpdatedAt: z.string().nullish()
25
+ }).passthrough();
23
26
  export {
24
- clampUnit,
25
- logScale,
26
- meanOfPresent,
27
- normalizeRatio
27
+ HCS25_ANS_TRUST_DISCOVERY_SIGNALS,
28
+ hcs25AnsTrustDiscoveryFieldsSchema
28
29
  };
29
30
  //# sourceMappingURL=standards-sdk.es183.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"standards-sdk.es183.js","sources":["../../src/hcs-25/adapters/normalization.ts"],"sourcesContent":["import { clampScore } from '../scoring';\n\n/**\n * Clamps a value into the unit interval `[0, 1]`.\n */\nexport function clampUnit(value: number): number {\n return Math.min(1, Math.max(0, value));\n}\n\n/**\n * Normalizes a ratio that implementations may store either as `0..1` or as\n * `0..100`. Values above one are treated as percent scale.\n */\nexport function normalizeRatio(value: number): number {\n return clampUnit(value > 1 ? value / 100 : value);\n}\n\n/**\n * Log-scales a raw count into `[0, 100]` using `log1p` against a cap, per\n * the HCS-25 recommended log-scaling pattern.\n */\nexport function logScale(value: number, cap: number): number {\n if (cap <= 0) {\n return 0;\n }\n return clampScore(\n 100 * clampUnit(Math.log1p(Math.max(0, value)) / Math.log1p(cap)),\n );\n}\n\n/**\n * Computes the arithmetic mean of the provided values, returning null when\n * none are present.\n */\nexport function meanOfPresent(\n values: readonly (number | null)[],\n): number | null {\n const present = values.filter((value): value is number => value !== null);\n if (present.length === 0) {\n return null;\n }\n return present.reduce((sum, value) => sum + value, 0) / present.length;\n}\n"],"names":[],"mappings":";AAKO,SAAS,UAAU,OAAuB;AAC/C,SAAO,KAAK,IAAI,GAAG,KAAK,IAAI,GAAG,KAAK,CAAC;AACvC;AAMO,SAAS,eAAe,OAAuB;AACpD,SAAO,UAAU,QAAQ,IAAI,QAAQ,MAAM,KAAK;AAClD;AAMO,SAAS,SAAS,OAAe,KAAqB;AAC3D,MAAI,OAAO,GAAG;AACZ,WAAO;AAAA,EACT;AACA,SAAO;AAAA,IACL,MAAM,UAAU,KAAK,MAAM,KAAK,IAAI,GAAG,KAAK,CAAC,IAAI,KAAK,MAAM,GAAG,CAAC;AAAA,EAAA;AAEpE;AAMO,SAAS,cACd,QACe;AACf,QAAM,UAAU,OAAO,OAAO,CAAC,UAA2B,UAAU,IAAI;AACxE,MAAI,QAAQ,WAAW,GAAG;AACxB,WAAO;AAAA,EACT;AACA,SAAO,QAAQ,OAAO,CAAC,KAAK,UAAU,MAAM,OAAO,CAAC,IAAI,QAAQ;AAClE;"}
1
+ {"version":3,"file":"standards-sdk.es183.js","sources":["../../src/hcs-25/signals/ans-trust-discovery.ts"],"sourcesContent":["import { z } from 'zod';\n\nimport { hcs25SignalStatusSchema } from '../types';\n\n/**\n * Signals published by an ANS Trust Index provider and consumed by the\n * `ans-trust-discovery` adapter, in specification order.\n */\nexport const HCS25_ANS_TRUST_DISCOVERY_SIGNALS = [\n 'certtype',\n 'dnssecurity',\n 'agentage',\n 'versionstability',\n 'dnsconsistency',\n 'httpsrecord',\n 'agentcard',\n 'certificatehygiene',\n] as const;\n\n/**\n * One signal name from {@link HCS25_ANS_TRUST_DISCOVERY_SIGNALS}.\n */\nexport type Hcs25AnsTrustDiscoverySignal =\n (typeof HCS25_ANS_TRUST_DISCOVERY_SIGNALS)[number];\n\nconst ansTrustDiscoveryScoreSchema = z.number().min(0).max(100).nullish();\n\n/**\n * Stored-field schema for ANS Trust Index signals stored under\n * `metadata.ansTrustDiscovery`. Each signal is a provider-normalized score\n * in `[0,100]`, or null when the provider could not compute it.\n */\nexport const hcs25AnsTrustDiscoveryFieldsSchema = z\n .object({\n 'ans-trust-discovery.certtype': ansTrustDiscoveryScoreSchema,\n 'ans-trust-discovery.dnssecurity': ansTrustDiscoveryScoreSchema,\n 'ans-trust-discovery.agentage': ansTrustDiscoveryScoreSchema,\n 'ans-trust-discovery.versionstability': ansTrustDiscoveryScoreSchema,\n 'ans-trust-discovery.dnsconsistency': ansTrustDiscoveryScoreSchema,\n 'ans-trust-discovery.httpsrecord': ansTrustDiscoveryScoreSchema,\n 'ans-trust-discovery.agentcard': ansTrustDiscoveryScoreSchema,\n 'ans-trust-discovery.certificatehygiene': ansTrustDiscoveryScoreSchema,\n ansTrustDiscoveryStatus: hcs25SignalStatusSchema.nullish(),\n ansTrustDiscoveryUpdatedAt: z.string().nullish(),\n })\n .passthrough();\n"],"names":[],"mappings":";;AAQO,MAAM,oCAAoC;AAAA,EAC/C;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACF;AAQA,MAAM,+BAA+B,EAAE,OAAA,EAAS,IAAI,CAAC,EAAE,IAAI,GAAG,EAAE,QAAA;AAOzD,MAAM,qCAAqC,EAC/C,OAAO;AAAA,EACN,gCAAgC;AAAA,EAChC,mCAAmC;AAAA,EACnC,gCAAgC;AAAA,EAChC,wCAAwC;AAAA,EACxC,sCAAsC;AAAA,EACtC,mCAAmC;AAAA,EACnC,iCAAiC;AAAA,EACjC,0CAA0C;AAAA,EAC1C,yBAAyB,wBAAwB,QAAA;AAAA,EACjD,4BAA4B,EAAE,OAAA,EAAS,QAAA;AACzC,CAAC,EACA,YAAA;"}
@@ -1,61 +1,199 @@
1
- import { clampScore } from "./standards-sdk.es119.js";
2
- import { readNumber, readSubjectMetrics } from "./standards-sdk.es198.js";
3
- import "./standards-sdk.es182.js";
4
- import "./standards-sdk.es195.js";
5
- import "./standards-sdk.es196.js";
6
- import "./standards-sdk.es197.js";
7
- import { normalizeRatio, logScale } from "./standards-sdk.es183.js";
8
- const DEFAULT_INCLUDED_REGISTRIES = ["virtuals-protocol"];
9
- const MISSING = { value: 0, status: "missing" };
10
- function readAcpField(subject, key) {
11
- const metricsValue = readNumber(readSubjectMetrics(subject), key);
12
- if (metricsValue !== null) {
13
- return metricsValue;
1
+ import { z } from "zod";
2
+ const SIMPLE_EVAL_GRADE_CORRECT = {
3
+ status: "correct",
4
+ score: 100
5
+ };
6
+ const SIMPLE_EVAL_GRADE_WRONG = {
7
+ status: "wrong",
8
+ score: 0
9
+ };
10
+ const SIMPLE_EVAL_GRADE_UNPARSEABLE = {
11
+ status: "unparseable",
12
+ score: 0
13
+ };
14
+ function mapSimpleEvalStatus(token) {
15
+ switch (token) {
16
+ case "timeout":
17
+ return "timeout";
18
+ case "stale":
19
+ return "stale";
20
+ case "missing":
21
+ case "skipped":
22
+ return "missing";
23
+ case "upstream-error":
24
+ case "error":
25
+ return "error";
26
+ default:
27
+ return "ok";
28
+ }
29
+ }
30
+ function gradeSimpleMathResponse(response, expected) {
31
+ const match = response.match(/-?\d+(?:\.\d+)?/);
32
+ if (!match) {
33
+ return SIMPLE_EVAL_GRADE_UNPARSEABLE;
34
+ }
35
+ const value = Number.parseFloat(match[0]);
36
+ return value === expected ? SIMPLE_EVAL_GRADE_CORRECT : SIMPLE_EVAL_GRADE_WRONG;
37
+ }
38
+ const SCIENCE_CHOICE_LETTERS = ["A", "B", "C", "D"];
39
+ function gradeSimpleScienceResponse(response, correctChoice, options) {
40
+ const letterMatch = response.match(/\b([A-Da-d])\b/);
41
+ if (letterMatch) {
42
+ return letterMatch[1].toUpperCase() === correctChoice ? SIMPLE_EVAL_GRADE_CORRECT : SIMPLE_EVAL_GRADE_WRONG;
43
+ }
44
+ if (options) {
45
+ const normalized = response.toLowerCase();
46
+ const matchedIndex = options.findIndex(
47
+ (option) => option.length > 0 && normalized.includes(option.toLowerCase())
48
+ );
49
+ if (matchedIndex >= 0) {
50
+ return SCIENCE_CHOICE_LETTERS[matchedIndex] === correctChoice ? SIMPLE_EVAL_GRADE_CORRECT : SIMPLE_EVAL_GRADE_WRONG;
51
+ }
14
52
  }
15
- const metadata = subject.metadata;
16
- return metadata ? readNumber(metadata, key) : null;
53
+ return SIMPLE_EVAL_GRADE_UNPARSEABLE;
17
54
  }
18
- function createAcpAdapter(options = {}) {
19
- const volumeCap = options.volumeCap ?? 500;
20
- const revenueCap = options.revenueCap ?? 1e4;
55
+ function randomInt(rng, minInclusive, maxInclusive) {
56
+ const span = maxInclusive - minInclusive + 1;
57
+ return minInclusive + Math.floor(rng() * span);
58
+ }
59
+ function generateSimpleMathQuestion(rng = Math.random) {
60
+ const operations = ["add", "sub", "mul"];
61
+ const operation = operations[Math.floor(rng() * operations.length) % operations.length];
62
+ let left;
63
+ let right;
64
+ let expected;
65
+ let expression;
66
+ if (operation === "add") {
67
+ left = randomInt(rng, 10, 100);
68
+ right = randomInt(rng, 10, 100);
69
+ expected = left + right;
70
+ expression = `${left}+${right}`;
71
+ } else if (operation === "sub") {
72
+ left = randomInt(rng, 10, 100);
73
+ right = randomInt(rng, 1, 50);
74
+ expected = left - right;
75
+ expression = `${left}-${right}`;
76
+ } else {
77
+ left = randomInt(rng, 2, 12);
78
+ right = randomInt(rng, 2, 12);
79
+ expected = left * right;
80
+ expression = `${left}x${right}`;
81
+ }
82
+ const operator = operation === "add" ? "+" : operation === "sub" ? "−" : "×";
21
83
  return {
22
- id: "acp",
23
- weight: 2,
24
- contributionMode: "scoped",
25
- includeRegistries: options.includeRegistries ?? DEFAULT_INCLUDED_REGISTRIES,
26
- components: [
27
- {
28
- name: "jobs.successRate",
29
- normalize: ({ subject }) => {
30
- const raw = readAcpField(subject, "successRate");
31
- return raw === null ? MISSING : { value: clampScore(normalizeRatio(raw) * 100), status: "ok" };
32
- }
33
- },
34
- {
35
- name: "jobs.deliveryVolume",
36
- normalize: ({ subject }) => {
37
- const volume = readAcpField(subject, "volume") ?? readAcpField(subject, "successfulJobCount");
38
- return volume === null ? MISSING : { value: logScale(volume, volumeCap), status: "ok" };
39
- }
40
- },
41
- {
42
- name: "jobs.revenue",
43
- normalize: ({ subject }) => {
44
- const revenue = readAcpField(subject, "revenue");
45
- return revenue === null ? MISSING : { value: logScale(revenue, revenueCap), status: "ok" };
46
- }
47
- },
48
- {
49
- name: "reviews.rating",
50
- normalize: ({ subject }) => {
51
- const rating = readAcpField(subject, "rating");
52
- return rating === null ? MISSING : { value: clampScore(rating / 5 * 100), status: "ok" };
53
- }
54
- }
55
- ]
84
+ questionId: `math:${operation}:${expression}`,
85
+ prompt: `Answer with just the number.
86
+
87
+ What is ${left} ${operator} ${right}?`,
88
+ expected
56
89
  };
57
90
  }
91
+ function sciencePrompt(stem, options) {
92
+ const lines = options.map(
93
+ (option, index) => `${SCIENCE_CHOICE_LETTERS[index]}) ${option}`
94
+ );
95
+ return `Answer with just A, B, C, or D.
96
+
97
+ ${stem}
98
+ ${lines.join("\n")}`;
99
+ }
100
+ function scienceQuestion(questionId, stem, options, correctIndex) {
101
+ return {
102
+ questionId,
103
+ prompt: sciencePrompt(stem, options),
104
+ options: [options[0], options[1], options[2], options[3]],
105
+ correctChoice: SCIENCE_CHOICE_LETTERS[correctIndex]
106
+ };
107
+ }
108
+ const SIMPLE_SCIENCE_QUESTION_BANK = [
109
+ scienceQuestion(
110
+ "science:photosynthesis-gas",
111
+ "Which gas do plants primarily absorb during photosynthesis?",
112
+ ["Oxygen", "Carbon dioxide", "Nitrogen", "Helium"],
113
+ 1
114
+ ),
115
+ scienceQuestion(
116
+ "science:water-formula",
117
+ "What is the chemical formula for water?",
118
+ ["HO", "H2O2", "H2O", "O2H"],
119
+ 2
120
+ ),
121
+ scienceQuestion(
122
+ "science:blood-pump",
123
+ "Which organ pumps blood through the human body?",
124
+ ["Liver", "Heart", "Lungs", "Kidneys"],
125
+ 1
126
+ ),
127
+ scienceQuestion(
128
+ "science:vacuum-speed",
129
+ "Which of these travels fastest in a vacuum?",
130
+ ["Sound", "Water waves", "Wind", "Light"],
131
+ 3
132
+ ),
133
+ scienceQuestion(
134
+ "science:red-planet",
135
+ "Which planet is known as the Red Planet?",
136
+ ["Mars", "Venus", "Jupiter", "Mercury"],
137
+ 0
138
+ ),
139
+ scienceQuestion(
140
+ "science:boiling-point",
141
+ "At what temperature does water boil at sea level, in Celsius?",
142
+ ["50°C", "100°C", "150°C", "200°C"],
143
+ 1
144
+ ),
145
+ scienceQuestion(
146
+ "science:photosynthesis-energy",
147
+ "What is the primary source of energy for photosynthesis?",
148
+ ["Sunlight", "Moonlight", "Lightning", "Starlight"],
149
+ 0
150
+ ),
151
+ scienceQuestion(
152
+ "science:atom-charge",
153
+ "What is the electrical charge of a proton?",
154
+ ["Negative", "Neutral", "Positive", "Variable"],
155
+ 2
156
+ )
157
+ ];
158
+ function sampleSimpleScienceQuestion(rng = Math.random) {
159
+ const index = Math.floor(rng() * SIMPLE_SCIENCE_QUESTION_BANK.length) % SIMPLE_SCIENCE_QUESTION_BANK.length;
160
+ return SIMPLE_SCIENCE_QUESTION_BANK[index];
161
+ }
162
+ const hcs25SimpleEvalFieldsSchema = z.object({
163
+ a2aSimpleMathScore: z.number().nullish(),
164
+ a2aSimpleMathStatus: z.string().nullish(),
165
+ a2aSimpleMathQuestionId: z.string().nullish(),
166
+ a2aSimpleMathSessionId: z.string().nullish(),
167
+ a2aSimpleMathResponse: z.string().nullish(),
168
+ a2aSimpleMathError: z.string().nullish(),
169
+ a2aSimpleMathUpdatedAt: z.string().nullish(),
170
+ a2aSimpleScienceScore: z.number().nullish(),
171
+ a2aSimpleScienceStatus: z.string().nullish(),
172
+ a2aSimpleScienceQuestionId: z.string().nullish(),
173
+ a2aSimpleScienceSessionId: z.string().nullish(),
174
+ a2aSimpleScienceResponse: z.string().nullish(),
175
+ a2aSimpleScienceError: z.string().nullish(),
176
+ a2aSimpleScienceUpdatedAt: z.string().nullish(),
177
+ nandaSimpleMathScore: z.number().nullish(),
178
+ nandaSimpleMathStatus: z.string().nullish(),
179
+ nandaSimpleMathQuestionId: z.string().nullish(),
180
+ nandaSimpleMathResponse: z.string().nullish(),
181
+ nandaSimpleMathError: z.string().nullish(),
182
+ nandaSimpleMathUpdatedAt: z.string().nullish(),
183
+ nandaSimpleScienceScore: z.number().nullish(),
184
+ nandaSimpleScienceStatus: z.string().nullish(),
185
+ nandaSimpleScienceQuestionId: z.string().nullish(),
186
+ nandaSimpleScienceResponse: z.string().nullish(),
187
+ nandaSimpleScienceError: z.string().nullish(),
188
+ nandaSimpleScienceUpdatedAt: z.string().nullish()
189
+ }).passthrough();
58
190
  export {
59
- createAcpAdapter
191
+ SIMPLE_SCIENCE_QUESTION_BANK,
192
+ generateSimpleMathQuestion,
193
+ gradeSimpleMathResponse,
194
+ gradeSimpleScienceResponse,
195
+ hcs25SimpleEvalFieldsSchema,
196
+ mapSimpleEvalStatus,
197
+ sampleSimpleScienceQuestion
60
198
  };
61
199
  //# sourceMappingURL=standards-sdk.es184.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"standards-sdk.es184.js","sources":["../../src/hcs-25/adapters/acp.ts"],"sourcesContent":["import { clampScore } from '../scoring';\nimport type {\n Hcs25AdapterDefinition,\n Hcs25NormalizedValue,\n Hcs25Subject,\n} from '../types';\nimport { readNumber, readSubjectMetrics } from '../signals';\nimport { logScale, normalizeRatio } from './normalization';\n\n/**\n * Options for the ACP/Virtuals marketplace adapter.\n */\nexport interface Hcs25AcpAdapterOptions {\n /** Volume cap used for log scaling delivery volume. Default 500. */\n volumeCap?: number;\n /** Revenue cap used for log scaling revenue. Default 10000. */\n revenueCap?: number;\n /** Registries where marketplace metrics apply. */\n includeRegistries?: readonly string[];\n}\n\nconst DEFAULT_INCLUDED_REGISTRIES: readonly string[] = ['virtuals-protocol'];\n\nconst MISSING: Hcs25NormalizedValue = { value: 0, status: 'missing' };\n\nfunction readAcpField(subject: Hcs25Subject, key: string): number | null {\n const metricsValue = readNumber(readSubjectMetrics(subject), key);\n if (metricsValue !== null) {\n return metricsValue;\n }\n const metadata = subject.metadata;\n return metadata ? readNumber(metadata, key) : null;\n}\n\n/**\n * Creates the `acp` adapter: normalizes marketplace-native execution\n * performance (job success, delivery volume, revenue, ratings) for\n * ACP/Virtuals-style agents. Delivery volume falls back to the successful\n * job count when no provider-defined volume exists.\n */\nexport function createAcpAdapter(\n options: Hcs25AcpAdapterOptions = {},\n): Hcs25AdapterDefinition {\n const volumeCap = options.volumeCap ?? 500;\n const revenueCap = options.revenueCap ?? 10000;\n\n return {\n id: 'acp',\n weight: 2,\n contributionMode: 'scoped',\n includeRegistries: options.includeRegistries ?? DEFAULT_INCLUDED_REGISTRIES,\n components: [\n {\n name: 'jobs.successRate',\n normalize: ({ subject }): Hcs25NormalizedValue => {\n const raw = readAcpField(subject, 'successRate');\n return raw === null\n ? MISSING\n : { value: clampScore(normalizeRatio(raw) * 100), status: 'ok' };\n },\n },\n {\n name: 'jobs.deliveryVolume',\n normalize: ({ subject }): Hcs25NormalizedValue => {\n const volume =\n readAcpField(subject, 'volume') ??\n readAcpField(subject, 'successfulJobCount');\n return volume === null\n ? MISSING\n : { value: logScale(volume, volumeCap), status: 'ok' };\n },\n },\n {\n name: 'jobs.revenue',\n normalize: ({ subject }): Hcs25NormalizedValue => {\n const revenue = readAcpField(subject, 'revenue');\n return revenue === null\n ? MISSING\n : { value: logScale(revenue, revenueCap), status: 'ok' };\n },\n },\n {\n name: 'reviews.rating',\n normalize: ({ subject }): Hcs25NormalizedValue => {\n const rating = readAcpField(subject, 'rating');\n return rating === null\n ? MISSING\n : { value: clampScore((rating / 5) * 100), status: 'ok' };\n },\n },\n ],\n };\n}\n"],"names":[],"mappings":";;;;;;;AAqBA,MAAM,8BAAiD,CAAC,mBAAmB;AAE3E,MAAM,UAAgC,EAAE,OAAO,GAAG,QAAQ,UAAA;AAE1D,SAAS,aAAa,SAAuB,KAA4B;AACvE,QAAM,eAAe,WAAW,mBAAmB,OAAO,GAAG,GAAG;AAChE,MAAI,iBAAiB,MAAM;AACzB,WAAO;AAAA,EACT;AACA,QAAM,WAAW,QAAQ;AACzB,SAAO,WAAW,WAAW,UAAU,GAAG,IAAI;AAChD;AAQO,SAAS,iBACd,UAAkC,IACV;AACxB,QAAM,YAAY,QAAQ,aAAa;AACvC,QAAM,aAAa,QAAQ,cAAc;AAEzC,SAAO;AAAA,IACL,IAAI;AAAA,IACJ,QAAQ;AAAA,IACR,kBAAkB;AAAA,IAClB,mBAAmB,QAAQ,qBAAqB;AAAA,IAChD,YAAY;AAAA,MACV;AAAA,QACE,MAAM;AAAA,QACN,WAAW,CAAC,EAAE,cAAoC;AAChD,gBAAM,MAAM,aAAa,SAAS,aAAa;AAC/C,iBAAO,QAAQ,OACX,UACA,EAAE,OAAO,WAAW,eAAe,GAAG,IAAI,GAAG,GAAG,QAAQ,KAAA;AAAA,QAC9D;AAAA,MAAA;AAAA,MAEF;AAAA,QACE,MAAM;AAAA,QACN,WAAW,CAAC,EAAE,cAAoC;AAChD,gBAAM,SACJ,aAAa,SAAS,QAAQ,KAC9B,aAAa,SAAS,oBAAoB;AAC5C,iBAAO,WAAW,OACd,UACA,EAAE,OAAO,SAAS,QAAQ,SAAS,GAAG,QAAQ,KAAA;AAAA,QACpD;AAAA,MAAA;AAAA,MAEF;AAAA,QACE,MAAM;AAAA,QACN,WAAW,CAAC,EAAE,cAAoC;AAChD,gBAAM,UAAU,aAAa,SAAS,SAAS;AAC/C,iBAAO,YAAY,OACf,UACA,EAAE,OAAO,SAAS,SAAS,UAAU,GAAG,QAAQ,KAAA;AAAA,QACtD;AAAA,MAAA;AAAA,MAEF;AAAA,QACE,MAAM;AAAA,QACN,WAAW,CAAC,EAAE,cAAoC;AAChD,gBAAM,SAAS,aAAa,SAAS,QAAQ;AAC7C,iBAAO,WAAW,OACd,UACA,EAAE,OAAO,WAAY,SAAS,IAAK,GAAG,GAAG,QAAQ,KAAA;AAAA,QACvD;AAAA,MAAA;AAAA,IACF;AAAA,EACF;AAEJ;"}
1
+ {"version":3,"file":"standards-sdk.es184.js","sources":["../../src/hcs-25/signals/simple-evals.ts"],"sourcesContent":["import { z } from 'zod';\n\nimport type { Hcs25SignalStatus } from '../types';\n\n/**\n * Status tokens emitted by simple eval runners, per the HCS-25 simple-evals\n * methodology.\n */\nexport type Hcs25SimpleEvalStatus =\n | 'correct'\n | 'wrong'\n | 'unparseable'\n | 'timeout'\n | 'missing'\n | 'empty'\n | 'skipped'\n | 'upstream-error'\n | 'stale'\n | 'error';\n\n/**\n * A graded simple-eval outcome. Scores are binary per the methodology.\n */\nexport interface Hcs25SimpleEvalGrade {\n status: Hcs25SimpleEvalStatus;\n score: number;\n}\n\nconst SIMPLE_EVAL_GRADE_CORRECT: Hcs25SimpleEvalGrade = {\n status: 'correct',\n score: 100,\n};\n\nconst SIMPLE_EVAL_GRADE_WRONG: Hcs25SimpleEvalGrade = {\n status: 'wrong',\n score: 0,\n};\n\nconst SIMPLE_EVAL_GRADE_UNPARSEABLE: Hcs25SimpleEvalGrade = {\n status: 'unparseable',\n score: 0,\n};\n\n/**\n * Maps a simple-eval status token onto an HCS-25 signal status code.\n * Substantive outcomes stay `ok` because the stored score carries the value;\n * skipped runs are treated as missing.\n */\nexport function mapSimpleEvalStatus(token: string | null): Hcs25SignalStatus {\n switch (token) {\n case 'timeout':\n return 'timeout';\n case 'stale':\n return 'stale';\n case 'missing':\n case 'skipped':\n return 'missing';\n case 'upstream-error':\n case 'error':\n return 'error';\n default:\n return 'ok';\n }\n}\n\n/**\n * Grades a SimpleMath response by extracting the first numeric token and\n * comparing it against the expected answer.\n */\nexport function gradeSimpleMathResponse(\n response: string,\n expected: number,\n): Hcs25SimpleEvalGrade {\n const match = response.match(/-?\\d+(?:\\.\\d+)?/);\n if (!match) {\n return SIMPLE_EVAL_GRADE_UNPARSEABLE;\n }\n\n const value = Number.parseFloat(match[0]);\n return value === expected\n ? SIMPLE_EVAL_GRADE_CORRECT\n : SIMPLE_EVAL_GRADE_WRONG;\n}\n\nconst SCIENCE_CHOICE_LETTERS = ['A', 'B', 'C', 'D'] as const;\n\n/**\n * Grades a SimpleScience response by extracting a standalone `A|B|C|D`\n * token, falling back to full option-text matching when options are\n * provided.\n */\nexport function gradeSimpleScienceResponse(\n response: string,\n correctChoice: (typeof SCIENCE_CHOICE_LETTERS)[number],\n options?: readonly string[],\n): Hcs25SimpleEvalGrade {\n const letterMatch = response.match(/\\b([A-Da-d])\\b/);\n if (letterMatch) {\n return letterMatch[1].toUpperCase() === correctChoice\n ? SIMPLE_EVAL_GRADE_CORRECT\n : SIMPLE_EVAL_GRADE_WRONG;\n }\n\n if (options) {\n const normalized = response.toLowerCase();\n const matchedIndex = options.findIndex(\n option => option.length > 0 && normalized.includes(option.toLowerCase()),\n );\n if (matchedIndex >= 0) {\n return SCIENCE_CHOICE_LETTERS[matchedIndex] === correctChoice\n ? SIMPLE_EVAL_GRADE_CORRECT\n : SIMPLE_EVAL_GRADE_WRONG;\n }\n }\n\n return SIMPLE_EVAL_GRADE_UNPARSEABLE;\n}\n\n/**\n * A generated SimpleMath question with its stable identifier and expected\n * answer.\n */\nexport interface Hcs25SimpleMathQuestion {\n questionId: string;\n prompt: string;\n expected: number;\n}\n\nfunction randomInt(\n rng: () => number,\n minInclusive: number,\n maxInclusive: number,\n): number {\n const span = maxInclusive - minInclusive + 1;\n return minInclusive + Math.floor(rng() * span);\n}\n\n/**\n * Generates a random SimpleMath question. Operand ranges follow the\n * methodology: addition uses two integers in 10–100, subtraction subtracts\n * 1–50 from 10–100, and multiplication uses small integers in 2–12. Pass a\n * seeded rng for deterministic generation.\n */\nexport function generateSimpleMathQuestion(\n rng: () => number = Math.random,\n): Hcs25SimpleMathQuestion {\n const operations = ['add', 'sub', 'mul'] as const;\n const operation =\n operations[Math.floor(rng() * operations.length) % operations.length];\n\n let left: number;\n let right: number;\n let expected: number;\n let expression: string;\n\n if (operation === 'add') {\n left = randomInt(rng, 10, 100);\n right = randomInt(rng, 10, 100);\n expected = left + right;\n expression = `${left}+${right}`;\n } else if (operation === 'sub') {\n left = randomInt(rng, 10, 100);\n right = randomInt(rng, 1, 50);\n expected = left - right;\n expression = `${left}-${right}`;\n } else {\n left = randomInt(rng, 2, 12);\n right = randomInt(rng, 2, 12);\n expected = left * right;\n expression = `${left}x${right}`;\n }\n\n const operator = operation === 'add' ? '+' : operation === 'sub' ? '−' : '×';\n\n return {\n questionId: `math:${operation}:${expression}`,\n prompt: `Answer with just the number.\\n\\nWhat is ${left} ${operator} ${right}?`,\n expected,\n };\n}\n\n/**\n * A curated SimpleScience multiple-choice question with exactly four\n * options and one unambiguous correct choice.\n */\nexport interface Hcs25SimpleScienceQuestion {\n questionId: string;\n prompt: string;\n options: readonly [string, string, string, string];\n correctChoice: (typeof SCIENCE_CHOICE_LETTERS)[number];\n}\n\nfunction sciencePrompt(stem: string, options: readonly string[]): string {\n const lines = options.map(\n (option, index) => `${SCIENCE_CHOICE_LETTERS[index]}) ${option}`,\n );\n return `Answer with just A, B, C, or D.\\n\\n${stem}\\n${lines.join('\\n')}`;\n}\n\nfunction scienceQuestion(\n questionId: string,\n stem: string,\n options: readonly string[],\n correctIndex: number,\n): Hcs25SimpleScienceQuestion {\n return {\n questionId,\n prompt: sciencePrompt(stem, options),\n options: [options[0], options[1], options[2], options[3]],\n correctChoice: SCIENCE_CHOICE_LETTERS[correctIndex],\n };\n}\n\n/**\n * A small curated bank of basic science facts spanning chemistry, biology,\n * physics, and earth science, per the methodology.\n */\nexport const SIMPLE_SCIENCE_QUESTION_BANK: readonly Hcs25SimpleScienceQuestion[] =\n [\n scienceQuestion(\n 'science:photosynthesis-gas',\n 'Which gas do plants primarily absorb during photosynthesis?',\n ['Oxygen', 'Carbon dioxide', 'Nitrogen', 'Helium'],\n 1,\n ),\n scienceQuestion(\n 'science:water-formula',\n 'What is the chemical formula for water?',\n ['HO', 'H2O2', 'H2O', 'O2H'],\n 2,\n ),\n scienceQuestion(\n 'science:blood-pump',\n 'Which organ pumps blood through the human body?',\n ['Liver', 'Heart', 'Lungs', 'Kidneys'],\n 1,\n ),\n scienceQuestion(\n 'science:vacuum-speed',\n 'Which of these travels fastest in a vacuum?',\n ['Sound', 'Water waves', 'Wind', 'Light'],\n 3,\n ),\n scienceQuestion(\n 'science:red-planet',\n 'Which planet is known as the Red Planet?',\n ['Mars', 'Venus', 'Jupiter', 'Mercury'],\n 0,\n ),\n scienceQuestion(\n 'science:boiling-point',\n 'At what temperature does water boil at sea level, in Celsius?',\n ['50°C', '100°C', '150°C', '200°C'],\n 1,\n ),\n scienceQuestion(\n 'science:photosynthesis-energy',\n 'What is the primary source of energy for photosynthesis?',\n ['Sunlight', 'Moonlight', 'Lightning', 'Starlight'],\n 0,\n ),\n scienceQuestion(\n 'science:atom-charge',\n 'What is the electrical charge of a proton?',\n ['Negative', 'Neutral', 'Positive', 'Variable'],\n 2,\n ),\n ];\n\n/**\n * Samples a random science question from the curated bank. Pass a seeded rng\n * for deterministic sampling.\n */\nexport function sampleSimpleScienceQuestion(\n rng: () => number = Math.random,\n): Hcs25SimpleScienceQuestion {\n const index =\n Math.floor(rng() * SIMPLE_SCIENCE_QUESTION_BANK.length) %\n SIMPLE_SCIENCE_QUESTION_BANK.length;\n return SIMPLE_SCIENCE_QUESTION_BANK[index];\n}\n\n/**\n * Stored-field schema for the shared A2A/NANDA simple-eval signal family.\n * Field names follow the `a2aSimple*` / `nandaSimple*` conventions.\n */\nexport const hcs25SimpleEvalFieldsSchema = z\n .object({\n a2aSimpleMathScore: z.number().nullish(),\n a2aSimpleMathStatus: z.string().nullish(),\n a2aSimpleMathQuestionId: z.string().nullish(),\n a2aSimpleMathSessionId: z.string().nullish(),\n a2aSimpleMathResponse: z.string().nullish(),\n a2aSimpleMathError: z.string().nullish(),\n a2aSimpleMathUpdatedAt: z.string().nullish(),\n a2aSimpleScienceScore: z.number().nullish(),\n a2aSimpleScienceStatus: z.string().nullish(),\n a2aSimpleScienceQuestionId: z.string().nullish(),\n a2aSimpleScienceSessionId: z.string().nullish(),\n a2aSimpleScienceResponse: z.string().nullish(),\n a2aSimpleScienceError: z.string().nullish(),\n a2aSimpleScienceUpdatedAt: z.string().nullish(),\n nandaSimpleMathScore: z.number().nullish(),\n nandaSimpleMathStatus: z.string().nullish(),\n nandaSimpleMathQuestionId: z.string().nullish(),\n nandaSimpleMathResponse: z.string().nullish(),\n nandaSimpleMathError: z.string().nullish(),\n nandaSimpleMathUpdatedAt: z.string().nullish(),\n nandaSimpleScienceScore: z.number().nullish(),\n nandaSimpleScienceStatus: z.string().nullish(),\n nandaSimpleScienceQuestionId: z.string().nullish(),\n nandaSimpleScienceResponse: z.string().nullish(),\n nandaSimpleScienceError: z.string().nullish(),\n nandaSimpleScienceUpdatedAt: z.string().nullish(),\n })\n .passthrough();\n"],"names":[],"mappings":"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"}
@@ -1,117 +1,29 @@
1
1
  import { clampScore } from "./standards-sdk.es119.js";
2
- import { readSubjectAdditional, readNumber, readString } from "./standards-sdk.es198.js";
3
- import "./standards-sdk.es182.js";
4
- import "./standards-sdk.es195.js";
5
- import "./standards-sdk.es196.js";
6
- import "./standards-sdk.es197.js";
7
- import { clampUnit } from "./standards-sdk.es183.js";
8
- const DEFAULT_INCLUDED_REGISTRIES = ["agentverse", "uagent"];
9
- const MISSING = { value: 0, status: "missing" };
10
- function withInsightsStatus(additional, result) {
11
- const status = readString(additional, "agentverseInsightsStatus");
12
- if (result.status === "ok" && status === "stale") {
13
- return { value: result.value, status: "stale" };
14
- }
15
- if (result.status !== "ok" && (status === "upstream-error" || status === "error")) {
16
- return { value: 0, status: "error" };
17
- }
18
- if (result.status !== "ok" && status === "timeout") {
19
- return { value: 0, status: "timeout" };
20
- }
21
- return result;
2
+ function clampUnit(value) {
3
+ return Math.min(1, Math.max(0, value));
22
4
  }
23
- function normalizeInsights(subject) {
24
- const additional = readSubjectAdditional(subject);
25
- const rating = readNumber(additional, "agentverseInsightsRating");
26
- if (rating !== null) {
27
- return withInsightsStatus(additional, {
28
- value: clampScore(rating / 5 * 100),
29
- status: "ok"
30
- });
31
- }
32
- const proxies = [
33
- readNumber(additional, "agentverseInsightsReadmeQualityScore"),
34
- readNumber(additional, "agentverseInsightsReadmeUniquenessScore"),
35
- readNumber(additional, "agentverseInsightsInteractionsScore")
36
- ].filter((value) => value !== null);
37
- if (proxies.length === 0) {
38
- return withInsightsStatus(additional, MISSING);
39
- }
40
- const mean = proxies.reduce((sum, value) => sum + value, 0) / proxies.length;
41
- return withInsightsStatus(additional, {
42
- value: clampScore(mean * 100),
43
- status: "ok"
44
- });
5
+ function normalizeRatio(value) {
6
+ return clampUnit(value > 1 ? value / 100 : value);
45
7
  }
46
- function createAgentverseInsightsAdapter(options = {}) {
47
- return {
48
- id: "agentverse-insights",
49
- weight: 1,
50
- contributionMode: "scoped",
51
- includeRegistries: options.includeRegistries ?? DEFAULT_INCLUDED_REGISTRIES,
52
- defaultComponentKey: "agentverse-insights.score",
53
- components: [
54
- { name: "score", normalize: ({ subject }) => normalizeInsights(subject) }
55
- ]
56
- };
8
+ function logScale(value, cap) {
9
+ if (cap <= 0) {
10
+ return 0;
11
+ }
12
+ return clampScore(
13
+ 100 * clampUnit(Math.log1p(Math.max(0, value)) / Math.log1p(cap))
14
+ );
57
15
  }
58
- function createAgentverseVerifierAdapter(options = {}) {
59
- const interactionCap = options.interactionCap ?? 1e3;
60
- const responseTimeCapSeconds = options.responseTimeCapSeconds ?? 30;
61
- return {
62
- id: "agentverse-verifier",
63
- weight: 1,
64
- contributionMode: "conditional",
65
- includeRegistries: options.includeRegistries ?? DEFAULT_INCLUDED_REGISTRIES,
66
- defaultComponentKey: "agentverse-verifier.score",
67
- components: [
68
- {
69
- name: "score",
70
- nonScorableWhenUnavailable: true,
71
- normalize: ({ subject }) => {
72
- const additional = readSubjectAdditional(subject);
73
- const recentInteractions = readNumber(
74
- additional,
75
- "agentverseInsightsVerifierRecentInteractions"
76
- ) ?? 0;
77
- const recentSuccesses = readNumber(
78
- additional,
79
- "agentverseInsightsVerifierRecentSuccessInteractions"
80
- ) ?? 0;
81
- const totalInteractions = readNumber(
82
- additional,
83
- "agentverseInsightsVerifierTotalInteractions"
84
- ) ?? 0;
85
- const totalSuccesses = readNumber(
86
- additional,
87
- "agentverseInsightsVerifierTotalSuccessInteractions"
88
- ) ?? 0;
89
- const useRecent = recentInteractions > 0;
90
- const interactions = useRecent ? recentInteractions : totalInteractions;
91
- const successes = useRecent ? recentSuccesses : totalSuccesses;
92
- if (interactions <= 0) {
93
- return withInsightsStatus(additional, MISSING);
94
- }
95
- const successRate = clampUnit(successes / interactions) * 100;
96
- const avgResponseTime = readNumber(
97
- additional,
98
- "agentverseInsightsAvgResponseTime"
99
- );
100
- const responseFactor = avgResponseTime === null ? 1 : clampUnit(1 - avgResponseTime / responseTimeCapSeconds);
101
- const volumeFactor = clampUnit(
102
- Math.log1p(interactions) / Math.log1p(interactionCap)
103
- );
104
- return withInsightsStatus(additional, {
105
- value: clampScore(successRate * responseFactor * volumeFactor),
106
- status: "ok"
107
- });
108
- }
109
- }
110
- ]
111
- };
16
+ function meanOfPresent(values) {
17
+ const present = values.filter((value) => value !== null);
18
+ if (present.length === 0) {
19
+ return null;
20
+ }
21
+ return present.reduce((sum, value) => sum + value, 0) / present.length;
112
22
  }
113
23
  export {
114
- createAgentverseInsightsAdapter,
115
- createAgentverseVerifierAdapter
24
+ clampUnit,
25
+ logScale,
26
+ meanOfPresent,
27
+ normalizeRatio
116
28
  };
117
29
  //# sourceMappingURL=standards-sdk.es185.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"standards-sdk.es185.js","sources":["../../src/hcs-25/adapters/agentverse.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';\nimport { clampUnit } from './normalization';\n\n/**\n * Options for the AgentVerse insights adapter.\n */\nexport interface Hcs25AgentverseInsightsAdapterOptions {\n /** Registries where AgentVerse insights apply. */\n includeRegistries?: readonly string[];\n}\n\n/**\n * Options for the AgentVerse verifier reliability adapter.\n */\nexport interface Hcs25AgentverseVerifierAdapterOptions {\n /** Interaction count cap for the volume confidence factor. Default 1000. */\n interactionCap?: number;\n /** Average response time (seconds) that maps to a zero factor. Default 30. */\n responseTimeCapSeconds?: number;\n /** Registries where AgentVerse verifier counters apply. */\n includeRegistries?: readonly string[];\n}\n\nconst DEFAULT_INCLUDED_REGISTRIES: readonly string[] = ['agentverse', 'uagent'];\n\nconst MISSING: Hcs25NormalizedValue = { value: 0, status: 'missing' };\n\n/**\n * Threads the stored `agentverseInsightsStatus` through a computed result:\n * `stale` keeps the value with a stale status, `upstream-error`/`error`\n * without usable data surface as `error`, `timeout` surfaces as `timeout`.\n */\nfunction withInsightsStatus(\n additional: Hcs25JsonObject,\n result: Hcs25NormalizedValue,\n): Hcs25NormalizedValue {\n const status = readString(additional, 'agentverseInsightsStatus');\n if (result.status === 'ok' && status === 'stale') {\n return { value: result.value, status: 'stale' };\n }\n if (\n result.status !== 'ok' &&\n (status === 'upstream-error' || status === 'error')\n ) {\n return { value: 0, status: 'error' };\n }\n if (result.status !== 'ok' && status === 'timeout') {\n return { value: 0, status: 'timeout' };\n }\n return result;\n}\n\nfunction normalizeInsights(subject: Hcs25Subject): Hcs25NormalizedValue {\n const additional: Hcs25JsonObject = readSubjectAdditional(subject);\n const rating = readNumber(additional, 'agentverseInsightsRating');\n if (rating !== null) {\n return withInsightsStatus(additional, {\n value: clampScore((rating / 5) * 100),\n status: 'ok',\n });\n }\n\n const proxies = [\n readNumber(additional, 'agentverseInsightsReadmeQualityScore'),\n readNumber(additional, 'agentverseInsightsReadmeUniquenessScore'),\n readNumber(additional, 'agentverseInsightsInteractionsScore'),\n ].filter((value): value is number => value !== null);\n\n if (proxies.length === 0) {\n return withInsightsStatus(additional, MISSING);\n }\n\n const mean = proxies.reduce((sum, value) => sum + value, 0) / proxies.length;\n return withInsightsStatus(additional, {\n value: clampScore(mean * 100),\n status: 'ok',\n });\n}\n\n/**\n * Creates the `agentverse-insights` adapter: converts marketplace \"insights\"\n * indicators into a single normalized component, preferring the explicit\n * rating (scaled from five) and falling back to the mean of the available\n * quality proxies.\n */\nexport function createAgentverseInsightsAdapter(\n options: Hcs25AgentverseInsightsAdapterOptions = {},\n): Hcs25AdapterDefinition {\n return {\n id: 'agentverse-insights',\n weight: 1,\n contributionMode: 'scoped',\n includeRegistries: options.includeRegistries ?? DEFAULT_INCLUDED_REGISTRIES,\n defaultComponentKey: 'agentverse-insights.score',\n components: [\n { name: 'score', normalize: ({ subject }) => normalizeInsights(subject) },\n ],\n };\n}\n\n/**\n * Creates the `agentverse-verifier` adapter: converts verifier interaction\n * counters into a reliability score combining success rate, a response-time\n * penalty, and a volume confidence factor. Conditional contribution keeps\n * agents without verifier counters out of the denominator.\n */\nexport function createAgentverseVerifierAdapter(\n options: Hcs25AgentverseVerifierAdapterOptions = {},\n): Hcs25AdapterDefinition {\n const interactionCap = options.interactionCap ?? 1000;\n const responseTimeCapSeconds = options.responseTimeCapSeconds ?? 30;\n\n return {\n id: 'agentverse-verifier',\n weight: 1,\n contributionMode: 'conditional',\n includeRegistries: options.includeRegistries ?? DEFAULT_INCLUDED_REGISTRIES,\n defaultComponentKey: 'agentverse-verifier.score',\n components: [\n {\n name: 'score',\n nonScorableWhenUnavailable: true,\n normalize: ({ subject }): Hcs25NormalizedValue => {\n const additional = readSubjectAdditional(subject);\n const recentInteractions =\n readNumber(\n additional,\n 'agentverseInsightsVerifierRecentInteractions',\n ) ?? 0;\n const recentSuccesses =\n readNumber(\n additional,\n 'agentverseInsightsVerifierRecentSuccessInteractions',\n ) ?? 0;\n const totalInteractions =\n readNumber(\n additional,\n 'agentverseInsightsVerifierTotalInteractions',\n ) ?? 0;\n const totalSuccesses =\n readNumber(\n additional,\n 'agentverseInsightsVerifierTotalSuccessInteractions',\n ) ?? 0;\n\n const useRecent = recentInteractions > 0;\n const interactions = useRecent\n ? recentInteractions\n : totalInteractions;\n const successes = useRecent ? recentSuccesses : totalSuccesses;\n\n if (interactions <= 0) {\n return withInsightsStatus(additional, MISSING);\n }\n\n const successRate = clampUnit(successes / interactions) * 100;\n const avgResponseTime = readNumber(\n additional,\n 'agentverseInsightsAvgResponseTime',\n );\n const responseFactor =\n avgResponseTime === null\n ? 1\n : clampUnit(1 - avgResponseTime / responseTimeCapSeconds);\n const volumeFactor = clampUnit(\n Math.log1p(interactions) / Math.log1p(interactionCap),\n );\n\n return withInsightsStatus(additional, {\n value: clampScore(successRate * responseFactor * volumeFactor),\n status: 'ok',\n });\n },\n },\n ],\n };\n}\n"],"names":[],"mappings":";;;;;;;AAkCA,MAAM,8BAAiD,CAAC,cAAc,QAAQ;AAE9E,MAAM,UAAgC,EAAE,OAAO,GAAG,QAAQ,UAAA;AAO1D,SAAS,mBACP,YACA,QACsB;AACtB,QAAM,SAAS,WAAW,YAAY,0BAA0B;AAChE,MAAI,OAAO,WAAW,QAAQ,WAAW,SAAS;AAChD,WAAO,EAAE,OAAO,OAAO,OAAO,QAAQ,QAAA;AAAA,EACxC;AACA,MACE,OAAO,WAAW,SACjB,WAAW,oBAAoB,WAAW,UAC3C;AACA,WAAO,EAAE,OAAO,GAAG,QAAQ,QAAA;AAAA,EAC7B;AACA,MAAI,OAAO,WAAW,QAAQ,WAAW,WAAW;AAClD,WAAO,EAAE,OAAO,GAAG,QAAQ,UAAA;AAAA,EAC7B;AACA,SAAO;AACT;AAEA,SAAS,kBAAkB,SAA6C;AACtE,QAAM,aAA8B,sBAAsB,OAAO;AACjE,QAAM,SAAS,WAAW,YAAY,0BAA0B;AAChE,MAAI,WAAW,MAAM;AACnB,WAAO,mBAAmB,YAAY;AAAA,MACpC,OAAO,WAAY,SAAS,IAAK,GAAG;AAAA,MACpC,QAAQ;AAAA,IAAA,CACT;AAAA,EACH;AAEA,QAAM,UAAU;AAAA,IACd,WAAW,YAAY,sCAAsC;AAAA,IAC7D,WAAW,YAAY,yCAAyC;AAAA,IAChE,WAAW,YAAY,qCAAqC;AAAA,EAAA,EAC5D,OAAO,CAAC,UAA2B,UAAU,IAAI;AAEnD,MAAI,QAAQ,WAAW,GAAG;AACxB,WAAO,mBAAmB,YAAY,OAAO;AAAA,EAC/C;AAEA,QAAM,OAAO,QAAQ,OAAO,CAAC,KAAK,UAAU,MAAM,OAAO,CAAC,IAAI,QAAQ;AACtE,SAAO,mBAAmB,YAAY;AAAA,IACpC,OAAO,WAAW,OAAO,GAAG;AAAA,IAC5B,QAAQ;AAAA,EAAA,CACT;AACH;AAQO,SAAS,gCACd,UAAiD,IACzB;AACxB,SAAO;AAAA,IACL,IAAI;AAAA,IACJ,QAAQ;AAAA,IACR,kBAAkB;AAAA,IAClB,mBAAmB,QAAQ,qBAAqB;AAAA,IAChD,qBAAqB;AAAA,IACrB,YAAY;AAAA,MACV,EAAE,MAAM,SAAS,WAAW,CAAC,EAAE,QAAA,MAAc,kBAAkB,OAAO,EAAA;AAAA,IAAE;AAAA,EAC1E;AAEJ;AAQO,SAAS,gCACd,UAAiD,IACzB;AACxB,QAAM,iBAAiB,QAAQ,kBAAkB;AACjD,QAAM,yBAAyB,QAAQ,0BAA0B;AAEjE,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,4BAA4B;AAAA,QAC5B,WAAW,CAAC,EAAE,cAAoC;AAChD,gBAAM,aAAa,sBAAsB,OAAO;AAChD,gBAAM,qBACJ;AAAA,YACE;AAAA,YACA;AAAA,UAAA,KACG;AACP,gBAAM,kBACJ;AAAA,YACE;AAAA,YACA;AAAA,UAAA,KACG;AACP,gBAAM,oBACJ;AAAA,YACE;AAAA,YACA;AAAA,UAAA,KACG;AACP,gBAAM,iBACJ;AAAA,YACE;AAAA,YACA;AAAA,UAAA,KACG;AAEP,gBAAM,YAAY,qBAAqB;AACvC,gBAAM,eAAe,YACjB,qBACA;AACJ,gBAAM,YAAY,YAAY,kBAAkB;AAEhD,cAAI,gBAAgB,GAAG;AACrB,mBAAO,mBAAmB,YAAY,OAAO;AAAA,UAC/C;AAEA,gBAAM,cAAc,UAAU,YAAY,YAAY,IAAI;AAC1D,gBAAM,kBAAkB;AAAA,YACtB;AAAA,YACA;AAAA,UAAA;AAEF,gBAAM,iBACJ,oBAAoB,OAChB,IACA,UAAU,IAAI,kBAAkB,sBAAsB;AAC5D,gBAAM,eAAe;AAAA,YACnB,KAAK,MAAM,YAAY,IAAI,KAAK,MAAM,cAAc;AAAA,UAAA;AAGtD,iBAAO,mBAAmB,YAAY;AAAA,YACpC,OAAO,WAAW,cAAc,iBAAiB,YAAY;AAAA,YAC7D,QAAQ;AAAA,UAAA,CACT;AAAA,QACH;AAAA,MAAA;AAAA,IACF;AAAA,EACF;AAEJ;"}
1
+ {"version":3,"file":"standards-sdk.es185.js","sources":["../../src/hcs-25/adapters/normalization.ts"],"sourcesContent":["import { clampScore } from '../scoring';\n\n/**\n * Clamps a value into the unit interval `[0, 1]`.\n */\nexport function clampUnit(value: number): number {\n return Math.min(1, Math.max(0, value));\n}\n\n/**\n * Normalizes a ratio that implementations may store either as `0..1` or as\n * `0..100`. Values above one are treated as percent scale.\n */\nexport function normalizeRatio(value: number): number {\n return clampUnit(value > 1 ? value / 100 : value);\n}\n\n/**\n * Log-scales a raw count into `[0, 100]` using `log1p` against a cap, per\n * the HCS-25 recommended log-scaling pattern.\n */\nexport function logScale(value: number, cap: number): number {\n if (cap <= 0) {\n return 0;\n }\n return clampScore(\n 100 * clampUnit(Math.log1p(Math.max(0, value)) / Math.log1p(cap)),\n );\n}\n\n/**\n * Computes the arithmetic mean of the provided values, returning null when\n * none are present.\n */\nexport function meanOfPresent(\n values: readonly (number | null)[],\n): number | null {\n const present = values.filter((value): value is number => value !== null);\n if (present.length === 0) {\n return null;\n }\n return present.reduce((sum, value) => sum + value, 0) / present.length;\n}\n"],"names":[],"mappings":";AAKO,SAAS,UAAU,OAAuB;AAC/C,SAAO,KAAK,IAAI,GAAG,KAAK,IAAI,GAAG,KAAK,CAAC;AACvC;AAMO,SAAS,eAAe,OAAuB;AACpD,SAAO,UAAU,QAAQ,IAAI,QAAQ,MAAM,KAAK;AAClD;AAMO,SAAS,SAAS,OAAe,KAAqB;AAC3D,MAAI,OAAO,GAAG;AACZ,WAAO;AAAA,EACT;AACA,SAAO;AAAA,IACL,MAAM,UAAU,KAAK,MAAM,KAAK,IAAI,GAAG,KAAK,CAAC,IAAI,KAAK,MAAM,GAAG,CAAC;AAAA,EAAA;AAEpE;AAMO,SAAS,cACd,QACe;AACf,QAAM,UAAU,OAAO,OAAO,CAAC,UAA2B,UAAU,IAAI;AACxE,MAAI,QAAQ,WAAW,GAAG;AACxB,WAAO;AAAA,EACT;AACA,SAAO,QAAQ,OAAO,CAAC,KAAK,UAAU,MAAM,OAAO,CAAC,IAAI,QAAQ;AAClE;"}