@ixo/openhands-sdk 0.6.0 → 0.8.0

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 (550) hide show
  1. package/README.md +6 -7
  2. package/dist/cjs/campaign/spots.js +3 -3
  3. package/dist/cjs/chain/allowance.d.ts +6 -2
  4. package/dist/cjs/chain/allowance.d.ts.map +1 -1
  5. package/dist/cjs/chain/allowance.js +47 -19
  6. package/dist/cjs/chain/allowance.js.map +1 -1
  7. package/dist/cjs/chain/ask.d.ts +6 -1
  8. package/dist/cjs/chain/ask.d.ts.map +1 -1
  9. package/dist/cjs/chain/ask.js +13 -6
  10. package/dist/cjs/chain/ask.js.map +1 -1
  11. package/dist/cjs/chain/askyBase.d.ts +36 -0
  12. package/dist/cjs/chain/askyBase.d.ts.map +1 -0
  13. package/dist/cjs/chain/askyBase.js +56 -0
  14. package/dist/cjs/chain/askyBase.js.map +1 -0
  15. package/dist/cjs/chain/assist.d.ts +52 -0
  16. package/dist/cjs/chain/assist.d.ts.map +1 -0
  17. package/dist/cjs/chain/assist.js +99 -0
  18. package/dist/cjs/chain/assist.js.map +1 -0
  19. package/dist/cjs/chain/campaignMint.d.ts +92 -0
  20. package/dist/cjs/chain/campaignMint.d.ts.map +1 -0
  21. package/dist/cjs/chain/campaignMint.js +136 -0
  22. package/dist/cjs/chain/campaignMint.js.map +1 -0
  23. package/dist/cjs/chain/claimIncentives.d.ts +17 -0
  24. package/dist/cjs/chain/claimIncentives.d.ts.map +1 -0
  25. package/dist/cjs/chain/claimIncentives.js +22 -0
  26. package/dist/cjs/chain/claimIncentives.js.map +1 -0
  27. package/dist/cjs/chain/draftMessages.d.ts +12 -0
  28. package/dist/cjs/chain/draftMessages.d.ts.map +1 -0
  29. package/dist/cjs/chain/draftMessages.js +85 -0
  30. package/dist/cjs/chain/draftMessages.js.map +1 -0
  31. package/dist/cjs/chain/entityShape.d.ts +1 -1
  32. package/dist/cjs/chain/entityShape.d.ts.map +1 -1
  33. package/dist/cjs/chain/entityShape.js +5 -5
  34. package/dist/cjs/chain/entityShape.js.map +1 -1
  35. package/dist/cjs/chain/env.js +1 -1
  36. package/dist/cjs/chain/env.js.map +1 -1
  37. package/dist/cjs/chain/gate.d.ts +7 -0
  38. package/dist/cjs/chain/gate.d.ts.map +1 -1
  39. package/dist/cjs/chain/gate.js +26 -10
  40. package/dist/cjs/chain/gate.js.map +1 -1
  41. package/dist/cjs/chain/guest.d.ts +10 -0
  42. package/dist/cjs/chain/guest.d.ts.map +1 -1
  43. package/dist/cjs/chain/guest.js +3 -2
  44. package/dist/cjs/chain/guest.js.map +1 -1
  45. package/dist/cjs/chain/inviteAnswer.d.ts +32 -0
  46. package/dist/cjs/chain/inviteAnswer.d.ts.map +1 -0
  47. package/dist/cjs/chain/inviteAnswer.js +36 -0
  48. package/dist/cjs/chain/inviteAnswer.js.map +1 -0
  49. package/dist/cjs/chain/inviteMessages.d.ts +65 -32
  50. package/dist/cjs/chain/inviteMessages.d.ts.map +1 -1
  51. package/dist/cjs/chain/inviteMessages.js +84 -30
  52. package/dist/cjs/chain/inviteMessages.js.map +1 -1
  53. package/dist/cjs/chain/inviteProof.d.ts +16 -1
  54. package/dist/cjs/chain/inviteProof.d.ts.map +1 -1
  55. package/dist/cjs/chain/inviteProof.js +19 -1
  56. package/dist/cjs/chain/inviteProof.js.map +1 -1
  57. package/dist/cjs/chain/lane.d.ts +16 -0
  58. package/dist/cjs/chain/lane.d.ts.map +1 -1
  59. package/dist/cjs/chain/lane.js +25 -1
  60. package/dist/cjs/chain/lane.js.map +1 -1
  61. package/dist/cjs/chain/orgReviewBilling.js +1 -1
  62. package/dist/cjs/chain/orgReviewBilling.js.map +1 -1
  63. package/dist/cjs/chain/personReview.d.ts.map +1 -1
  64. package/dist/cjs/chain/personReview.js +18 -11
  65. package/dist/cjs/chain/personReview.js.map +1 -1
  66. package/dist/cjs/chain/reviewBilling.d.ts.map +1 -1
  67. package/dist/cjs/chain/reviewBilling.js +1 -1
  68. package/dist/cjs/chain/reviewBilling.js.map +1 -1
  69. package/dist/cjs/chain/session.d.ts +9 -1
  70. package/dist/cjs/chain/session.d.ts.map +1 -1
  71. package/dist/cjs/chain/session.js +13 -15
  72. package/dist/cjs/chain/session.js.map +1 -1
  73. package/dist/cjs/chain/sessionEvents.d.ts +4 -0
  74. package/dist/cjs/chain/sessionEvents.d.ts.map +1 -0
  75. package/dist/cjs/chain/sessionEvents.js +15 -0
  76. package/dist/cjs/chain/sessionEvents.js.map +1 -0
  77. package/dist/cjs/chain/takeBack.d.ts +32 -0
  78. package/dist/cjs/chain/takeBack.d.ts.map +1 -1
  79. package/dist/cjs/chain/takeBack.js +89 -12
  80. package/dist/cjs/chain/takeBack.js.map +1 -1
  81. package/dist/cjs/chain/union.js +1 -1
  82. package/dist/cjs/chain/why.d.ts +6 -2
  83. package/dist/cjs/chain/why.d.ts.map +1 -1
  84. package/dist/cjs/chain/why.js +11 -2
  85. package/dist/cjs/chain/why.js.map +1 -1
  86. package/dist/cjs/chain.d.ts +1 -0
  87. package/dist/cjs/chain.d.ts.map +1 -1
  88. package/dist/cjs/chain.js +3 -1
  89. package/dist/cjs/chain.js.map +1 -1
  90. package/dist/cjs/config.d.ts +7 -1
  91. package/dist/cjs/config.d.ts.map +1 -1
  92. package/dist/cjs/config.js +4 -1
  93. package/dist/cjs/config.js.map +1 -1
  94. package/dist/cjs/data/actionDraft.d.ts +304 -0
  95. package/dist/cjs/data/actionDraft.d.ts.map +1 -0
  96. package/dist/cjs/data/actionDraft.js +470 -0
  97. package/dist/cjs/data/actionDraft.js.map +1 -0
  98. package/dist/cjs/data/actionDraftWords.d.ts +37 -0
  99. package/dist/cjs/data/actionDraftWords.d.ts.map +1 -0
  100. package/dist/cjs/data/actionDraftWords.js +55 -0
  101. package/dist/cjs/data/actionDraftWords.js.map +1 -0
  102. package/dist/cjs/data/agent.d.ts.map +1 -1
  103. package/dist/cjs/data/agent.js +36 -1
  104. package/dist/cjs/data/agent.js.map +1 -1
  105. package/dist/cjs/data/askyProtocol.d.ts +13 -0
  106. package/dist/cjs/data/askyProtocol.d.ts.map +1 -0
  107. package/dist/cjs/data/askyProtocol.js +19 -0
  108. package/dist/cjs/data/askyProtocol.js.map +1 -0
  109. package/dist/cjs/data/board/answer.d.ts +12 -0
  110. package/dist/cjs/data/board/answer.d.ts.map +1 -0
  111. package/dist/cjs/data/board/answer.js +41 -0
  112. package/dist/cjs/data/board/answer.js.map +1 -0
  113. package/dist/cjs/data/board/assemble.js +2 -2
  114. package/dist/cjs/data/board/facts.d.ts +1 -1
  115. package/dist/cjs/data/board/facts.d.ts.map +1 -1
  116. package/dist/cjs/data/board/facts.js +6 -2
  117. package/dist/cjs/data/board/facts.js.map +1 -1
  118. package/dist/cjs/data/board/fixtures.d.ts.map +1 -1
  119. package/dist/cjs/data/board/fixtures.js +2 -1
  120. package/dist/cjs/data/board/fixtures.js.map +1 -1
  121. package/dist/cjs/data/board/read.d.ts +2 -0
  122. package/dist/cjs/data/board/read.d.ts.map +1 -1
  123. package/dist/cjs/data/board/read.js +24 -10
  124. package/dist/cjs/data/board/read.js.map +1 -1
  125. package/dist/cjs/data/board/types.d.ts +16 -0
  126. package/dist/cjs/data/board/types.d.ts.map +1 -1
  127. package/dist/cjs/data/board/types.js +9 -1
  128. package/dist/cjs/data/board/types.js.map +1 -1
  129. package/dist/cjs/data/checkers.d.ts +33 -7
  130. package/dist/cjs/data/checkers.d.ts.map +1 -1
  131. package/dist/cjs/data/checkers.js +165 -55
  132. package/dist/cjs/data/checkers.js.map +1 -1
  133. package/dist/cjs/data/decisionIdentity.d.ts +10 -0
  134. package/dist/cjs/data/decisionIdentity.d.ts.map +1 -0
  135. package/dist/cjs/data/decisionIdentity.js +19 -0
  136. package/dist/cjs/data/decisionIdentity.js.map +1 -0
  137. package/dist/cjs/data/displayNames.d.ts +7 -1
  138. package/dist/cjs/data/displayNames.d.ts.map +1 -1
  139. package/dist/cjs/data/displayNames.js +7 -1
  140. package/dist/cjs/data/displayNames.js.map +1 -1
  141. package/dist/cjs/data/docUrls.d.ts +5 -0
  142. package/dist/cjs/data/docUrls.d.ts.map +1 -1
  143. package/dist/cjs/data/docUrls.js +18 -1
  144. package/dist/cjs/data/docUrls.js.map +1 -1
  145. package/dist/cjs/data/draftUploads.d.ts +145 -0
  146. package/dist/cjs/data/draftUploads.d.ts.map +1 -0
  147. package/dist/cjs/data/draftUploads.js +293 -0
  148. package/dist/cjs/data/draftUploads.js.map +1 -0
  149. package/dist/cjs/data/emailKinds.d.ts +56 -0
  150. package/dist/cjs/data/emailKinds.d.ts.map +1 -0
  151. package/dist/cjs/data/emailKinds.js +39 -0
  152. package/dist/cjs/data/emailKinds.js.map +1 -0
  153. package/dist/cjs/data/engine.js +1 -1
  154. package/dist/cjs/data/engine.js.map +1 -1
  155. package/dist/cjs/data/engineUrl.d.ts +5 -4
  156. package/dist/cjs/data/engineUrl.d.ts.map +1 -1
  157. package/dist/cjs/data/engineUrl.js +12 -6
  158. package/dist/cjs/data/engineUrl.js.map +1 -1
  159. package/dist/cjs/data/envelope.d.ts +9 -2
  160. package/dist/cjs/data/envelope.d.ts.map +1 -1
  161. package/dist/cjs/data/envelope.js +10 -3
  162. package/dist/cjs/data/envelope.js.map +1 -1
  163. package/dist/cjs/data/format.d.ts +10 -0
  164. package/dist/cjs/data/format.d.ts.map +1 -1
  165. package/dist/cjs/data/format.js +8 -1
  166. package/dist/cjs/data/format.js.map +1 -1
  167. package/dist/cjs/data/install.d.ts +57 -131
  168. package/dist/cjs/data/install.d.ts.map +1 -1
  169. package/dist/cjs/data/install.js +95 -182
  170. package/dist/cjs/data/install.js.map +1 -1
  171. package/dist/cjs/data/onAsks.d.ts +57 -0
  172. package/dist/cjs/data/onAsks.d.ts.map +1 -0
  173. package/dist/cjs/data/onAsks.js +78 -0
  174. package/dist/cjs/data/onAsks.js.map +1 -0
  175. package/dist/cjs/data/openness.d.ts +3 -0
  176. package/dist/cjs/data/openness.d.ts.map +1 -1
  177. package/dist/cjs/data/openness.js +19 -7
  178. package/dist/cjs/data/openness.js.map +1 -1
  179. package/dist/cjs/data/orgPayouts.d.ts +1 -0
  180. package/dist/cjs/data/orgPayouts.d.ts.map +1 -1
  181. package/dist/cjs/data/orgPayouts.js +4 -2
  182. package/dist/cjs/data/orgPayouts.js.map +1 -1
  183. package/dist/cjs/data/payoutObservation.d.ts +30 -0
  184. package/dist/cjs/data/payoutObservation.d.ts.map +1 -0
  185. package/dist/cjs/data/payoutObservation.js +219 -0
  186. package/dist/cjs/data/payoutObservation.js.map +1 -0
  187. package/dist/cjs/data/profiles.d.ts +37 -2
  188. package/dist/cjs/data/profiles.d.ts.map +1 -1
  189. package/dist/cjs/data/profiles.js +121 -16
  190. package/dist/cjs/data/profiles.js.map +1 -1
  191. package/dist/cjs/data/queue.d.ts.map +1 -1
  192. package/dist/cjs/data/queue.js +36 -1
  193. package/dist/cjs/data/queue.js.map +1 -1
  194. package/dist/cjs/data/receipt.d.ts +4 -0
  195. package/dist/cjs/data/receipt.d.ts.map +1 -1
  196. package/dist/cjs/data/receipt.js +5 -2
  197. package/dist/cjs/data/receipt.js.map +1 -1
  198. package/dist/cjs/data/threads.d.ts +9 -1
  199. package/dist/cjs/data/threads.d.ts.map +1 -1
  200. package/dist/cjs/data/threads.js +5 -3
  201. package/dist/cjs/data/threads.js.map +1 -1
  202. package/dist/cjs/data/trace.d.ts +1 -0
  203. package/dist/cjs/data/trace.d.ts.map +1 -1
  204. package/dist/cjs/data/trace.js +4 -2
  205. package/dist/cjs/data/trace.js.map +1 -1
  206. package/dist/cjs/data/traceWords.d.ts +5 -1
  207. package/dist/cjs/data/traceWords.d.ts.map +1 -1
  208. package/dist/cjs/data/traceWords.js +20 -5
  209. package/dist/cjs/data/traceWords.js.map +1 -1
  210. package/dist/cjs/data/types.js +1 -1
  211. package/dist/cjs/data/types.js.map +1 -1
  212. package/dist/cjs/discovery.d.ts.map +1 -1
  213. package/dist/cjs/discovery.js +3 -1
  214. package/dist/cjs/discovery.js.map +1 -1
  215. package/dist/cjs/names/client.d.ts +10 -0
  216. package/dist/cjs/names/client.d.ts.map +1 -0
  217. package/dist/cjs/names/client.js +757 -0
  218. package/dist/cjs/names/client.js.map +7 -0
  219. package/dist/cjs/names/names.d.ts +93 -0
  220. package/dist/cjs/names/names.d.ts.map +1 -0
  221. package/dist/cjs/names/names.js +154 -0
  222. package/dist/cjs/names/names.js.map +1 -0
  223. package/dist/cjs/names.d.ts +14 -0
  224. package/dist/cjs/names.d.ts.map +1 -0
  225. package/dist/cjs/names.js +30 -0
  226. package/dist/cjs/names.js.map +1 -0
  227. package/dist/cjs/rubric/askyRubric.d.ts +70 -0
  228. package/dist/cjs/rubric/askyRubric.d.ts.map +1 -0
  229. package/dist/cjs/rubric/askyRubric.js +163 -0
  230. package/dist/cjs/rubric/askyRubric.js.map +1 -0
  231. package/dist/cjs/rubric/bridge.js +2 -2
  232. package/dist/cjs/rubric/bridge.js.map +1 -1
  233. package/dist/cjs/rubric/call.d.ts +5 -0
  234. package/dist/cjs/rubric/call.d.ts.map +1 -1
  235. package/dist/cjs/rubric/call.js +10 -2
  236. package/dist/cjs/rubric/call.js.map +1 -1
  237. package/dist/cjs/rubric/callChecks.d.ts +2 -0
  238. package/dist/cjs/rubric/callChecks.d.ts.map +1 -1
  239. package/dist/cjs/rubric/callChecks.js +7 -2
  240. package/dist/cjs/rubric/callChecks.js.map +1 -1
  241. package/dist/cjs/rubric/callLimits.js +2 -2
  242. package/dist/cjs/rubric/callPrompt.d.ts +7 -0
  243. package/dist/cjs/rubric/callPrompt.d.ts.map +1 -0
  244. package/dist/cjs/rubric/callPrompt.js +9 -0
  245. package/dist/cjs/rubric/callPrompt.js.map +1 -0
  246. package/dist/cjs/rubric/draft.d.ts +1 -1
  247. package/dist/cjs/rubric/draft.d.ts.map +1 -1
  248. package/dist/cjs/rubric/draft.js +1 -1
  249. package/dist/cjs/rubric/feeLine.d.ts +12 -3
  250. package/dist/cjs/rubric/feeLine.d.ts.map +1 -1
  251. package/dist/cjs/rubric/feeLine.js +19 -8
  252. package/dist/cjs/rubric/feeLine.js.map +1 -1
  253. package/dist/cjs/rubric/leg.d.ts +5 -7
  254. package/dist/cjs/rubric/leg.d.ts.map +1 -1
  255. package/dist/cjs/rubric/leg.js +7 -33
  256. package/dist/cjs/rubric/leg.js.map +1 -1
  257. package/dist/cjs/rubric/marketPlan.js +7 -7
  258. package/dist/cjs/rubric/marketPlan.js.map +1 -1
  259. package/dist/cjs/rubric/report.d.ts.map +1 -1
  260. package/dist/cjs/rubric/report.js +4 -4
  261. package/dist/cjs/rubric/report.js.map +1 -1
  262. package/dist/cjs/rubric/reportTemplate.d.ts +12 -2
  263. package/dist/cjs/rubric/reportTemplate.d.ts.map +1 -1
  264. package/dist/cjs/rubric/reportTemplate.js +33 -18
  265. package/dist/cjs/rubric/reportTemplate.js.map +1 -1
  266. package/dist/cjs/rubric/survey.js +2 -2
  267. package/dist/cjs/rubric/survey.js.map +1 -1
  268. package/dist/cjs/rubric/terms.d.ts +9 -6
  269. package/dist/cjs/rubric/terms.d.ts.map +1 -1
  270. package/dist/cjs/rubric/terms.js +7 -8
  271. package/dist/cjs/rubric/terms.js.map +1 -1
  272. package/dist/esm/campaign/spots.js +3 -3
  273. package/dist/esm/chain/allowance.d.ts +6 -2
  274. package/dist/esm/chain/allowance.d.ts.map +1 -1
  275. package/dist/esm/chain/allowance.js +45 -19
  276. package/dist/esm/chain/allowance.js.map +1 -1
  277. package/dist/esm/chain/ask.d.ts +6 -1
  278. package/dist/esm/chain/ask.d.ts.map +1 -1
  279. package/dist/esm/chain/ask.js +14 -7
  280. package/dist/esm/chain/ask.js.map +1 -1
  281. package/dist/esm/chain/askyBase.d.ts +36 -0
  282. package/dist/esm/chain/askyBase.d.ts.map +1 -0
  283. package/dist/esm/chain/askyBase.js +51 -0
  284. package/dist/esm/chain/askyBase.js.map +1 -0
  285. package/dist/esm/chain/assist.d.ts +52 -0
  286. package/dist/esm/chain/assist.d.ts.map +1 -0
  287. package/dist/esm/chain/assist.js +89 -0
  288. package/dist/esm/chain/assist.js.map +1 -0
  289. package/dist/esm/chain/campaignMint.d.ts +92 -0
  290. package/dist/esm/chain/campaignMint.d.ts.map +1 -0
  291. package/dist/esm/chain/campaignMint.js +127 -0
  292. package/dist/esm/chain/campaignMint.js.map +1 -0
  293. package/dist/esm/chain/claimIncentives.d.ts +17 -0
  294. package/dist/esm/chain/claimIncentives.d.ts.map +1 -0
  295. package/dist/esm/chain/claimIncentives.js +19 -0
  296. package/dist/esm/chain/claimIncentives.js.map +1 -0
  297. package/dist/esm/chain/draftMessages.d.ts +12 -0
  298. package/dist/esm/chain/draftMessages.d.ts.map +1 -0
  299. package/dist/esm/chain/draftMessages.js +47 -0
  300. package/dist/esm/chain/draftMessages.js.map +1 -0
  301. package/dist/esm/chain/entityShape.d.ts +1 -1
  302. package/dist/esm/chain/entityShape.d.ts.map +1 -1
  303. package/dist/esm/chain/entityShape.js +5 -5
  304. package/dist/esm/chain/entityShape.js.map +1 -1
  305. package/dist/esm/chain/env.js +1 -1
  306. package/dist/esm/chain/env.js.map +1 -1
  307. package/dist/esm/chain/gate.d.ts +7 -0
  308. package/dist/esm/chain/gate.d.ts.map +1 -1
  309. package/dist/esm/chain/gate.js +24 -10
  310. package/dist/esm/chain/gate.js.map +1 -1
  311. package/dist/esm/chain/guest.d.ts +10 -0
  312. package/dist/esm/chain/guest.d.ts.map +1 -1
  313. package/dist/esm/chain/guest.js +3 -2
  314. package/dist/esm/chain/guest.js.map +1 -1
  315. package/dist/esm/chain/inviteAnswer.d.ts +32 -0
  316. package/dist/esm/chain/inviteAnswer.d.ts.map +1 -0
  317. package/dist/esm/chain/inviteAnswer.js +28 -0
  318. package/dist/esm/chain/inviteAnswer.js.map +1 -0
  319. package/dist/esm/chain/inviteMessages.d.ts +65 -32
  320. package/dist/esm/chain/inviteMessages.d.ts.map +1 -1
  321. package/dist/esm/chain/inviteMessages.js +69 -25
  322. package/dist/esm/chain/inviteMessages.js.map +1 -1
  323. package/dist/esm/chain/inviteProof.d.ts +16 -1
  324. package/dist/esm/chain/inviteProof.d.ts.map +1 -1
  325. package/dist/esm/chain/inviteProof.js +16 -0
  326. package/dist/esm/chain/inviteProof.js.map +1 -1
  327. package/dist/esm/chain/lane.d.ts +16 -0
  328. package/dist/esm/chain/lane.d.ts.map +1 -1
  329. package/dist/esm/chain/lane.js +22 -0
  330. package/dist/esm/chain/lane.js.map +1 -1
  331. package/dist/esm/chain/orgReviewBilling.js +1 -1
  332. package/dist/esm/chain/orgReviewBilling.js.map +1 -1
  333. package/dist/esm/chain/personReview.d.ts.map +1 -1
  334. package/dist/esm/chain/personReview.js +18 -11
  335. package/dist/esm/chain/personReview.js.map +1 -1
  336. package/dist/esm/chain/reviewBilling.d.ts.map +1 -1
  337. package/dist/esm/chain/reviewBilling.js +1 -1
  338. package/dist/esm/chain/reviewBilling.js.map +1 -1
  339. package/dist/esm/chain/session.d.ts +9 -1
  340. package/dist/esm/chain/session.d.ts.map +1 -1
  341. package/dist/esm/chain/session.js +11 -13
  342. package/dist/esm/chain/session.js.map +1 -1
  343. package/dist/esm/chain/sessionEvents.d.ts +4 -0
  344. package/dist/esm/chain/sessionEvents.d.ts.map +1 -0
  345. package/dist/esm/chain/sessionEvents.js +11 -0
  346. package/dist/esm/chain/sessionEvents.js.map +1 -0
  347. package/dist/esm/chain/takeBack.d.ts +32 -0
  348. package/dist/esm/chain/takeBack.d.ts.map +1 -1
  349. package/dist/esm/chain/takeBack.js +86 -12
  350. package/dist/esm/chain/takeBack.js.map +1 -1
  351. package/dist/esm/chain/union.js +1 -1
  352. package/dist/esm/chain/why.d.ts +6 -2
  353. package/dist/esm/chain/why.d.ts.map +1 -1
  354. package/dist/esm/chain/why.js +12 -3
  355. package/dist/esm/chain/why.js.map +1 -1
  356. package/dist/esm/chain.d.ts +1 -0
  357. package/dist/esm/chain.d.ts.map +1 -1
  358. package/dist/esm/chain.js +1 -0
  359. package/dist/esm/chain.js.map +1 -1
  360. package/dist/esm/config.d.ts +7 -1
  361. package/dist/esm/config.d.ts.map +1 -1
  362. package/dist/esm/config.js +4 -1
  363. package/dist/esm/config.js.map +1 -1
  364. package/dist/esm/data/actionDraft.d.ts +304 -0
  365. package/dist/esm/data/actionDraft.d.ts.map +1 -0
  366. package/dist/esm/data/actionDraft.js +450 -0
  367. package/dist/esm/data/actionDraft.js.map +1 -0
  368. package/dist/esm/data/actionDraftWords.d.ts +37 -0
  369. package/dist/esm/data/actionDraftWords.d.ts.map +1 -0
  370. package/dist/esm/data/actionDraftWords.js +47 -0
  371. package/dist/esm/data/actionDraftWords.js.map +1 -0
  372. package/dist/esm/data/agent.d.ts.map +1 -1
  373. package/dist/esm/data/agent.js +4 -2
  374. package/dist/esm/data/agent.js.map +1 -1
  375. package/dist/esm/data/askyProtocol.d.ts +13 -0
  376. package/dist/esm/data/askyProtocol.d.ts.map +1 -0
  377. package/dist/esm/data/askyProtocol.js +14 -0
  378. package/dist/esm/data/askyProtocol.js.map +1 -0
  379. package/dist/esm/data/board/answer.d.ts +12 -0
  380. package/dist/esm/data/board/answer.d.ts.map +1 -0
  381. package/dist/esm/data/board/answer.js +36 -0
  382. package/dist/esm/data/board/answer.js.map +1 -0
  383. package/dist/esm/data/board/assemble.js +2 -2
  384. package/dist/esm/data/board/facts.d.ts +1 -1
  385. package/dist/esm/data/board/facts.d.ts.map +1 -1
  386. package/dist/esm/data/board/facts.js +6 -2
  387. package/dist/esm/data/board/facts.js.map +1 -1
  388. package/dist/esm/data/board/fixtures.d.ts.map +1 -1
  389. package/dist/esm/data/board/fixtures.js +2 -1
  390. package/dist/esm/data/board/fixtures.js.map +1 -1
  391. package/dist/esm/data/board/read.d.ts +2 -0
  392. package/dist/esm/data/board/read.d.ts.map +1 -1
  393. package/dist/esm/data/board/read.js +25 -11
  394. package/dist/esm/data/board/read.js.map +1 -1
  395. package/dist/esm/data/board/types.d.ts +16 -0
  396. package/dist/esm/data/board/types.d.ts.map +1 -1
  397. package/dist/esm/data/board/types.js +7 -0
  398. package/dist/esm/data/board/types.js.map +1 -1
  399. package/dist/esm/data/checkers.d.ts +33 -7
  400. package/dist/esm/data/checkers.d.ts.map +1 -1
  401. package/dist/esm/data/checkers.js +159 -54
  402. package/dist/esm/data/checkers.js.map +1 -1
  403. package/dist/esm/data/decisionIdentity.d.ts +10 -0
  404. package/dist/esm/data/decisionIdentity.d.ts.map +1 -0
  405. package/dist/esm/data/decisionIdentity.js +15 -0
  406. package/dist/esm/data/decisionIdentity.js.map +1 -0
  407. package/dist/esm/data/displayNames.d.ts +7 -1
  408. package/dist/esm/data/displayNames.d.ts.map +1 -1
  409. package/dist/esm/data/displayNames.js +7 -1
  410. package/dist/esm/data/displayNames.js.map +1 -1
  411. package/dist/esm/data/docUrls.d.ts +5 -0
  412. package/dist/esm/data/docUrls.d.ts.map +1 -1
  413. package/dist/esm/data/docUrls.js +16 -0
  414. package/dist/esm/data/docUrls.js.map +1 -1
  415. package/dist/esm/data/draftUploads.d.ts +145 -0
  416. package/dist/esm/data/draftUploads.d.ts.map +1 -0
  417. package/dist/esm/data/draftUploads.js +272 -0
  418. package/dist/esm/data/draftUploads.js.map +1 -0
  419. package/dist/esm/data/emailKinds.d.ts +56 -0
  420. package/dist/esm/data/emailKinds.d.ts.map +1 -0
  421. package/dist/esm/data/emailKinds.js +32 -0
  422. package/dist/esm/data/emailKinds.js.map +1 -0
  423. package/dist/esm/data/engine.js +1 -1
  424. package/dist/esm/data/engine.js.map +1 -1
  425. package/dist/esm/data/engineUrl.d.ts +5 -4
  426. package/dist/esm/data/engineUrl.d.ts.map +1 -1
  427. package/dist/esm/data/engineUrl.js +11 -5
  428. package/dist/esm/data/engineUrl.js.map +1 -1
  429. package/dist/esm/data/envelope.d.ts +9 -2
  430. package/dist/esm/data/envelope.d.ts.map +1 -1
  431. package/dist/esm/data/envelope.js +10 -3
  432. package/dist/esm/data/envelope.js.map +1 -1
  433. package/dist/esm/data/format.d.ts +10 -0
  434. package/dist/esm/data/format.d.ts.map +1 -1
  435. package/dist/esm/data/format.js +6 -0
  436. package/dist/esm/data/format.js.map +1 -1
  437. package/dist/esm/data/install.d.ts +57 -131
  438. package/dist/esm/data/install.d.ts.map +1 -1
  439. package/dist/esm/data/install.js +88 -173
  440. package/dist/esm/data/install.js.map +1 -1
  441. package/dist/esm/data/onAsks.d.ts +57 -0
  442. package/dist/esm/data/onAsks.d.ts.map +1 -0
  443. package/dist/esm/data/onAsks.js +73 -0
  444. package/dist/esm/data/onAsks.js.map +1 -0
  445. package/dist/esm/data/openness.d.ts +3 -0
  446. package/dist/esm/data/openness.d.ts.map +1 -1
  447. package/dist/esm/data/openness.js +18 -7
  448. package/dist/esm/data/openness.js.map +1 -1
  449. package/dist/esm/data/orgPayouts.d.ts +1 -0
  450. package/dist/esm/data/orgPayouts.d.ts.map +1 -1
  451. package/dist/esm/data/orgPayouts.js +4 -2
  452. package/dist/esm/data/orgPayouts.js.map +1 -1
  453. package/dist/esm/data/payoutObservation.d.ts +30 -0
  454. package/dist/esm/data/payoutObservation.d.ts.map +1 -0
  455. package/dist/esm/data/payoutObservation.js +213 -0
  456. package/dist/esm/data/payoutObservation.js.map +1 -0
  457. package/dist/esm/data/profiles.d.ts +37 -2
  458. package/dist/esm/data/profiles.d.ts.map +1 -1
  459. package/dist/esm/data/profiles.js +120 -16
  460. package/dist/esm/data/profiles.js.map +1 -1
  461. package/dist/esm/data/queue.d.ts.map +1 -1
  462. package/dist/esm/data/queue.js +4 -2
  463. package/dist/esm/data/queue.js.map +1 -1
  464. package/dist/esm/data/receipt.d.ts +4 -0
  465. package/dist/esm/data/receipt.d.ts.map +1 -1
  466. package/dist/esm/data/receipt.js +5 -2
  467. package/dist/esm/data/receipt.js.map +1 -1
  468. package/dist/esm/data/threads.d.ts +9 -1
  469. package/dist/esm/data/threads.d.ts.map +1 -1
  470. package/dist/esm/data/threads.js +6 -4
  471. package/dist/esm/data/threads.js.map +1 -1
  472. package/dist/esm/data/trace.d.ts +1 -0
  473. package/dist/esm/data/trace.d.ts.map +1 -1
  474. package/dist/esm/data/trace.js +4 -2
  475. package/dist/esm/data/trace.js.map +1 -1
  476. package/dist/esm/data/traceWords.d.ts +5 -1
  477. package/dist/esm/data/traceWords.d.ts.map +1 -1
  478. package/dist/esm/data/traceWords.js +19 -5
  479. package/dist/esm/data/traceWords.js.map +1 -1
  480. package/dist/esm/data/types.js +1 -1
  481. package/dist/esm/data/types.js.map +1 -1
  482. package/dist/esm/discovery.d.ts.map +1 -1
  483. package/dist/esm/discovery.js +3 -1
  484. package/dist/esm/discovery.js.map +1 -1
  485. package/dist/esm/names/client.d.ts +10 -0
  486. package/dist/esm/names/client.d.ts.map +1 -0
  487. package/dist/esm/names/client.js +10 -0
  488. package/dist/esm/names/client.js.map +1 -0
  489. package/dist/esm/names/names.d.ts +93 -0
  490. package/dist/esm/names/names.d.ts.map +1 -0
  491. package/dist/esm/names/names.js +142 -0
  492. package/dist/esm/names/names.js.map +1 -0
  493. package/dist/esm/names.d.ts +14 -0
  494. package/dist/esm/names.d.ts.map +1 -0
  495. package/dist/esm/names.js +14 -0
  496. package/dist/esm/names.js.map +1 -0
  497. package/dist/esm/rubric/askyRubric.d.ts +70 -0
  498. package/dist/esm/rubric/askyRubric.d.ts.map +1 -0
  499. package/dist/esm/rubric/askyRubric.js +155 -0
  500. package/dist/esm/rubric/askyRubric.js.map +1 -0
  501. package/dist/esm/rubric/bridge.js +2 -2
  502. package/dist/esm/rubric/bridge.js.map +1 -1
  503. package/dist/esm/rubric/call.d.ts +5 -0
  504. package/dist/esm/rubric/call.d.ts.map +1 -1
  505. package/dist/esm/rubric/call.js +8 -1
  506. package/dist/esm/rubric/call.js.map +1 -1
  507. package/dist/esm/rubric/callChecks.d.ts +2 -0
  508. package/dist/esm/rubric/callChecks.d.ts.map +1 -1
  509. package/dist/esm/rubric/callChecks.js +5 -1
  510. package/dist/esm/rubric/callChecks.js.map +1 -1
  511. package/dist/esm/rubric/callLimits.js +2 -2
  512. package/dist/esm/rubric/callPrompt.d.ts +7 -0
  513. package/dist/esm/rubric/callPrompt.d.ts.map +1 -0
  514. package/dist/esm/rubric/callPrompt.js +6 -0
  515. package/dist/esm/rubric/callPrompt.js.map +1 -0
  516. package/dist/esm/rubric/draft.d.ts +1 -1
  517. package/dist/esm/rubric/draft.d.ts.map +1 -1
  518. package/dist/esm/rubric/draft.js +1 -1
  519. package/dist/esm/rubric/feeLine.d.ts +12 -3
  520. package/dist/esm/rubric/feeLine.d.ts.map +1 -1
  521. package/dist/esm/rubric/feeLine.js +16 -7
  522. package/dist/esm/rubric/feeLine.js.map +1 -1
  523. package/dist/esm/rubric/leg.d.ts +5 -7
  524. package/dist/esm/rubric/leg.d.ts.map +1 -1
  525. package/dist/esm/rubric/leg.js +7 -33
  526. package/dist/esm/rubric/leg.js.map +1 -1
  527. package/dist/esm/rubric/marketPlan.js +7 -7
  528. package/dist/esm/rubric/marketPlan.js.map +1 -1
  529. package/dist/esm/rubric/report.d.ts.map +1 -1
  530. package/dist/esm/rubric/report.js +4 -4
  531. package/dist/esm/rubric/report.js.map +1 -1
  532. package/dist/esm/rubric/reportTemplate.d.ts +12 -2
  533. package/dist/esm/rubric/reportTemplate.d.ts.map +1 -1
  534. package/dist/esm/rubric/reportTemplate.js +30 -17
  535. package/dist/esm/rubric/reportTemplate.js.map +1 -1
  536. package/dist/esm/rubric/survey.js +2 -2
  537. package/dist/esm/rubric/survey.js.map +1 -1
  538. package/dist/esm/rubric/terms.d.ts +9 -6
  539. package/dist/esm/rubric/terms.d.ts.map +1 -1
  540. package/dist/esm/rubric/terms.js +7 -8
  541. package/dist/esm/rubric/terms.js.map +1 -1
  542. package/package.json +24 -3
  543. package/dist/cjs/data/sponsors.d.ts +0 -94
  544. package/dist/cjs/data/sponsors.d.ts.map +0 -1
  545. package/dist/cjs/data/sponsors.js +0 -147
  546. package/dist/cjs/data/sponsors.js.map +0 -1
  547. package/dist/esm/data/sponsors.d.ts +0 -94
  548. package/dist/esm/data/sponsors.d.ts.map +0 -1
  549. package/dist/esm/data/sponsors.js +0 -137
  550. package/dist/esm/data/sponsors.js.map +0 -1
@@ -1,7 +1,8 @@
1
1
  export interface CheckField {
2
2
  name: string;
3
3
  label: string;
4
- type: "string" | "number" | "integer" | "boolean" | "date" | "file";
4
+ /** `list`: several short texts (SurveyJS tagbox or checkbox); `panel`: repeating rows (paneldynamic), each a set of `fields`. */
5
+ type: "string" | "number" | "integer" | "boolean" | "date" | "file" | "list" | "panel";
5
6
  required: boolean;
6
7
  description?: string;
7
8
  enum?: string[];
@@ -9,6 +10,13 @@ export interface CheckField {
9
10
  url?: true;
10
11
  /** A file field's media types (SurveyJS `acceptedTypes`), as the picker's `accept`: "application/pdf". */
11
12
  accept?: string;
13
+ /** A file field that takes several files (SurveyJS `allowMultiple`). */
14
+ multiple?: true;
15
+ /** A panel's questions, asked once per row. */
16
+ fields?: CheckField[];
17
+ /** A panel's least and most rows (`minPanelCount`, `maxPanelCount`). */
18
+ min?: number;
19
+ max?: number;
12
20
  }
13
21
  /** One of a check's rules in its author's words: a rule every answer must pass (`measure`), what an AI checks (`judge`), or what a person decides (`attest`). */
14
22
  export interface CheckRule {
@@ -55,24 +63,26 @@ export interface OpenhandsRoutes {
55
63
  }
56
64
  /** Ask the World's checker, by the address it signs as (devnet IXO-5583; testnet 2026-10-17). */
57
65
  export declare const ASK_THE_WORLD_CHECKERS: ReadonlySet<string>;
66
+ /** What an asker pays per AI check by IXO's own verifiers, on every network (owner, 2026-11-05): nothing. */
67
+ export declare const AI_CHECK_BASE = 0;
58
68
  /**
59
- * Asky Checker: IXO's checker for Expert Review calls (call kind `review`), and their checker wherever it is deployed
69
+ * Asky Pro Checker: IXO's checker for Expert Review calls (call kind `review`), and their checker wherever it is deployed
60
70
  * (2026-10-26). By its oracle's URL and the account it signs verdicts as (its `/v1/info` `address`, the ask's
61
71
  * `terms.checker`), per network. Empty where it is not deployed yet.
62
72
  */
63
73
  export declare const ASKY_CHECKER_URLS: Readonly<Record<string, string>>;
64
74
  export declare const ASKY_CHECKER_ADDRESSES: Readonly<Record<string, string>>;
65
75
  /**
66
- * Its fee per check, escrowed on the ask in this coin, which is also the review's reward coin (owner and S3, 2026-10-26:
67
- * Expert Reviews pay in PAY, 1 PAY a check, on both networks as each /v1/info publishes it).
76
+ * Its fee per check, escrowed on the ask in this coin, which is also the review's reward coin (S3, 2026-10-26: Expert
77
+ * Reviews pay in PAY). Free to askers on every network (`AI_CHECK_BASE`, owner 2026-11-05; it was 1 PAY a check).
68
78
  */
69
79
  export declare const ASKY_CHECKER_FEES: Readonly<Record<string, {
70
80
  base: number;
71
81
  denom: "upay";
72
82
  }>>;
73
- export declare const ASKY_CHECKER_NAME = "Asky Checker";
83
+ export declare const ASKY_CHECKER_NAME = "Asky Pro Checker";
74
84
  export declare const askyCheckerUrl: (network: string) => string | null;
75
- /** Asky Checker on `network`, to post a review call to, nudge and pay per check; null where it is not deployed. */
85
+ /** Asky Pro Checker on `network`, to post a review call to, nudge and pay per check; null where it is not deployed. */
76
86
  export declare const askyChecker: (network: string) => {
77
87
  url: string;
78
88
  address: string;
@@ -81,6 +91,7 @@ export declare const askyChecker: (network: string) => {
81
91
  denom: "upay";
82
92
  };
83
93
  } | null;
94
+ export { ASKY_PROTOCOLS, askyProtocol, isAskyProtocol } from "./askyProtocol.ts";
84
95
  /**
85
96
  * The coin a checker's fee is escrowed in (owner ruling): its own, as its /v1/info publishes it (IXO, or USDC on mainnet).
86
97
  * PAY is the fee only for IXO-managed checkers (our own two); any other checker naming it is refused.
@@ -146,8 +157,21 @@ export interface CheckFile {
146
157
  type: string;
147
158
  url: string;
148
159
  }
160
+ /**
161
+ * The answers by question name: a dotted question (`report.summary.product`) is found under its own name or along its
162
+ * path (`{ report: { summary: { product } } }`), so an answer may come flat or nested.
163
+ */
164
+ export declare function answersOf(fields: CheckField[], values: Record<string, unknown>): Record<string, unknown>;
165
+ /** Step results that were never carried out: only these may leave out what was expected and observed. */
166
+ export declare const STEP_NOT_DONE: readonly string[];
167
+ /**
168
+ * A report's steps rule (Asky Pro Checker's ASKY-102, report.ts's `reportProblems`): in a panel of steps (rows with a
169
+ * `result` and `expected`/`observed`), a step that was done must say what was expected and what was observed, though
170
+ * the form itself marks both optional (its conditional rule lives in the rubric, not the form). The names a row needs.
171
+ */
172
+ export declare function stepNeeds(panel: Pick<CheckField, "fields">, row: Record<string, unknown> | null | undefined): string[];
149
173
  /** Plain-word problems with `values` against `fields`; empty = ok. */
150
- export declare function validateFields(fields: CheckField[], values: Record<string, unknown>): string[];
174
+ export declare function validateFields(fields: CheckField[], given: Record<string, unknown>, where?: string): string[];
151
175
  export interface CheckEnvelopeInput {
152
176
  fields: CheckField[];
153
177
  values: Record<string, unknown>;
@@ -158,6 +182,8 @@ export interface CheckEnvelopeInput {
158
182
  alias?: string;
159
183
  via?: "mcp";
160
184
  ts?: string;
185
+ /** A private ask: file answers name the bare CID (the checker reads it from the lane). */
186
+ bare?: boolean;
161
187
  }
162
188
  /**
163
189
  * The claim body of an answer to an expert ask, the same from the website and the MCP. The checker's engine reads
@@ -1 +1 @@
1
- {"version":3,"file":"checkers.d.ts","sourceRoot":"","sources":["../../../src/data/checkers.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"checkers.d.ts","sourceRoot":"","sources":["../../../src/data/checkers.ts"],"names":[],"mappings":"AAwBA,MAAM,WAAW,UAAU;IACzB,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;IACd,iIAAiI;IACjI,IAAI,EAAE,QAAQ,GAAG,QAAQ,GAAG,SAAS,GAAG,SAAS,GAAG,MAAM,GAAG,MAAM,GAAG,MAAM,GAAG,OAAO,CAAC;IACvF,QAAQ,EAAE,OAAO,CAAC;IAClB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC;IAChB,wHAAwH;IACxH,GAAG,CAAC,EAAE,IAAI,CAAC;IACX,0GAA0G;IAC1G,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,wEAAwE;IACxE,QAAQ,CAAC,EAAE,IAAI,CAAC;IAChB,+CAA+C;IAC/C,MAAM,CAAC,EAAE,UAAU,EAAE,CAAC;IACtB,wEAAwE;IACxE,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,GAAG,CAAC,EAAE,MAAM,CAAC;CACd;AACD,iKAAiK;AACjK,MAAM,WAAW,SAAS;IAAG,IAAI,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,SAAS,GAAG,OAAO,GAAG,QAAQ,CAAA;CAAE;AACjF,MAAM,WAAW,YAAY;IAC3B,GAAG,EAAE,MAAM,CAAC;IACZ,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,UAAU,EAAE,CAAC;IACrB,UAAU,EAAE,OAAO,CAAC;IACpB,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,4GAA4G;IAC5G,KAAK,CAAC,EAAE,SAAS,EAAE,CAAC;CACrB;AACD,MAAM,WAAW,OAAO;IACtB,GAAG,EAAE,MAAM,CAAC;IACZ,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,GAAG,EAAE,MAAM,GAAG,IAAI,CAAC;IACnB,MAAM,EAAE,OAAO,CAAC;IAChB,WAAW,CAAC,EAAE,IAAI,CAAC;IACnB,MAAM,EAAE,YAAY,EAAE,CAAC;IACvB,iHAAiH;IACjH,OAAO,EAAE,MAAM,CAAC;IAChB,+GAA+G;IAC/G,SAAS,EAAE,OAAO,CAAC;IACnB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,gIAAgI;IAChI,KAAK,CAAC,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,CAAC;IACxC,oJAAoJ;IACpJ,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,2HAA2H;IAC3H,MAAM,CAAC,EAAE,eAAe,CAAC;CAC1B;AAED,MAAM,WAAW,eAAe;IAAG,IAAI,EAAE,MAAM,CAAC;IAAC,IAAI,CAAC,EAAE,MAAM,CAAA;CAAE;AAEhE,iGAAiG;AACjG,eAAO,MAAM,sBAAsB,EAAE,WAAW,CAAC,MAAM,CAAyG,CAAC;AAEjK,6GAA6G;AAC7G,eAAO,MAAM,aAAa,IAAI,CAAC;AAE/B;;;;GAIG;AACH,eAAO,MAAM,iBAAiB,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAqJ,CAAC;AACrN,eAAO,MAAM,sBAAsB,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAA0K,CAAC;AAC/O;;;GAGG;AACH,eAAO,MAAM,iBAAiB,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,CAAC,CAAwJ,CAAC;AACjP,eAAO,MAAM,iBAAiB,qBAAqB,CAAC;AACpD,eAAO,MAAM,cAAc,GAAI,SAAS,MAAM,KAAG,MAAM,GAAG,IAA0C,CAAC;AACrG,uHAAuH;AACvH,eAAO,MAAM,WAAW,GAAI,SAAS,MAAM,KAAG;IAAE,GAAG,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,CAAC;IAAC,GAAG,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,CAAA;CAAE,GAAG,IACiG,CAAC;AAEzN,OAAO,EAAE,cAAc,EAAE,YAAY,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AAEjF;;;GAGG;AACH,wBAAgB,SAAS,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,EAAE,OAAO,EAAE,OAAO,GAAG;IAAE,KAAK,EAAE,MAAM,CAAA;CAAE,GAAG;IAAE,OAAO,EAAE,MAAM,CAAA;CAAE,CAIrH;AAED;;;;GAIG;AACH,eAAO,MAAM,kBAAkB,GAAI,MAAM;IAAE,SAAS,CAAC,EAAE;QAAE,IAAI,CAAC,EAAE,OAAO,CAAA;KAAE,GAAG,IAAI,CAAA;CAAE,GAAG,IAAI,GAAG,SAAS,EAAE,aAAW,KAAG,OAA2D,CAAC;AAEjL,+DAA+D;AAC/D,wBAAgB,eAAe,CAAC,IAAI,EAAE;IAAE,SAAS,CAAC,EAAE;QAAE,IAAI,CAAC,EAAE,OAAO,CAAC;QAAC,IAAI,CAAC,EAAE,OAAO,CAAA;KAAE,GAAG,IAAI,CAAA;CAAE,GAAG,IAAI,GAAG,SAAS,GAAG,eAAe,GAAG,SAAS,CAI/I;AAED,uHAAuH;AACvH,eAAO,MAAM,aAAa,GAAI,QAAQ,eAAe,GAAG,IAAI,GAAG,SAAS,EAAE,OAAO,MAAM,GAAG,MAAM,EAAE,cAAc,MAAM,KAAG,MACJ,CAAC;AAEtH,MAAM,WAAW,WAAW;IAAG,SAAS,CAAC,EAAE,MAAM,CAAC;IAAC,KAAK,CAAC,EAAE,OAAO,KAAK,CAAA;CAAE;AAEzE,6HAA6H;AAC7H,wBAAsB,YAAY,CAAC,IAAI,GAAE,WAAgB,GAAG,OAAO,CAAC,OAAO,EAAE,CAAC,CAE7E;AAED,wKAAwK;AACxK,wBAAsB,gBAAgB,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,GAAE,WAAgB,GAAG,OAAO,CAAC,OAAO,GAAG,IAAI,CAAC,CAEvG;AAED,oIAAoI;AACpI,wBAAsB,eAAe,CAAC,WAAW,EAAE,MAAM,EAAE,IAAI,GAAE,WAAgB,GAAG,OAAO,CAAC,YAAY,GAAG,IAAI,CAAC,CAE/G;AAED,qEAAqE;AACrE,wBAAgB,iBAAiB,CAAC,QAAQ,EAAE,SAAS,OAAO,EAAE,EAAE,WAAW,EAAE,MAAM,GAAG;IAAE,OAAO,EAAE,OAAO,CAAC;IAAC,KAAK,EAAE,YAAY,CAAA;CAAE,GAAG,IAAI,CAMrI;AAID;;;GAGG;AACH,wBAAgB,SAAS,CAAC,QAAQ,EAAE,SAAS,OAAO,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI,GAAG;IAAE,OAAO,EAAE,OAAO,CAAC;IAAC,KAAK,EAAE,YAAY,CAAA;CAAE,GAAG;IAAE,OAAO,EAAE,MAAM,CAAA;CAAE,CAS/J;AA2GD;;;;GAIG;AACH,wBAAgB,mBAAmB,CAAC,GAAG,EAAE,OAAO,GAAG,UAAU,EAAE,CAW9D;AAID,wEAAwE;AACxE,MAAM,WAAW,SAAS;IAAG,IAAI,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAC;IAAC,GAAG,EAAE,MAAM,CAAA;CAAE;AAWtE;;;GAGG;AACH,wBAAgB,SAAS,CAAC,MAAM,EAAE,UAAU,EAAE,EAAE,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAWxG;AAED,yGAAyG;AACzG,eAAO,MAAM,aAAa,EAAE,SAAS,MAAM,EAA+B,CAAC;AAE3E;;;;GAIG;AACH,wBAAgB,SAAS,CAAC,KAAK,EAAE,IAAI,CAAC,UAAU,EAAE,QAAQ,CAAC,EAAE,GAAG,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI,GAAG,SAAS,GAAG,MAAM,EAAE,CAItH;AAED,sEAAsE;AACtE,wBAAgB,cAAc,CAAC,MAAM,EAAE,UAAU,EAAE,EAAE,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,KAAK,SAAK,GAAG,MAAM,EAAE,CAwDzG;AA2CD,MAAM,WAAW,kBAAkB;IACjC,MAAM,EAAE,UAAU,EAAE,CAAC;IACrB,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAChC,YAAY,EAAE,MAAM,CAAC;IACrB,iFAAiF;IACjF,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,GAAG,CAAC,EAAE,KAAK,CAAC;IACZ,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,0FAA0F;IAC1F,IAAI,CAAC,EAAE,OAAO,CAAC;CAChB;AAED;;;;;GAKG;AACH,wBAAgB,aAAa,CAAC,KAAK,EAAE,kBAAkB,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CA4BhF"}
@@ -1,42 +1,25 @@
1
- /*
2
- * Expert checkers: oracles that check answers by their OWN rules (each of their protocols' claim form `#vct` and
3
- * rubric `#rub`), as opposed to Openhands, which writes fresh rules for every ask. An oracle is an expert when its
4
- * `GET /v1/info` lists a non-empty `supportedProtocols` (eval-oracle's register gate 3 refuses every other protocol).
5
- *
6
- * Client-safe: the pure helpers (`fieldsFromClaimForm`, `validateFields`, `checkEnvelope`) import nothing; the chain
7
- * and network reads load `checkersRead.ts` lazily, server-side.
8
- *
9
- * Posting an ask on a checker's own rules (no per-ask protocol, no `#rub` of the ask's own):
10
- * - website: `createAskEntities(session, { ...input, protocol })` mints the deed alone and answers
11
- * `claimProtocolDid: protocol`; then `postAsk(..., { shape: { claimProtocolDid: protocol, ... } })` with NO
12
- * `claimDomainCard` (the poster does not control someone else's protocol) and `terms.checker` = the checker's
13
- * `address`, `checkRewardUixo` = the check's `priceBase` (0 when it bills per review) and `feeDenom` = its
14
- * `priceDenom` (a checker names its own coin; devnet's are IXO, not the network's PAY).
15
- * - MCP / worker agent: `createAsk(actor, { ...ask, protocol, feeDenom })`.
16
- * The collection then points at that protocol, so the engine resolves the checker's `#vct` and `#rub`; the checker
17
- * is hired like every ask's oracle, by its hire nudge (`/openhands/hire/:collectionId`).
18
- *
19
- * An answer to such an ask is `checkEnvelope(...)`: the form's answers at the root (what the checker's rubric reads,
20
- * `$.<name>`), beside the usual Openhands envelope fields.
21
- */
1
+ import { evidenceFileOf } from "./draftUploads.js";
22
2
  /** Ask the World's checker, by the address it signs as (devnet IXO-5583; testnet 2026-10-17). */
23
3
  export const ASK_THE_WORLD_CHECKERS = new Set(["ixo1qrk9dp4r2u8q5l9cs42yh4dne4pj3wynp4enwq", "ixo12mvzayzrzsvaud86jf9shy6q2nvkea3tygxhsh"]);
4
+ /** What an asker pays per AI check by IXO's own verifiers, on every network (owner, 2026-11-05): nothing. */
5
+ export const AI_CHECK_BASE = 0;
24
6
  /**
25
- * Asky Checker: IXO's checker for Expert Review calls (call kind `review`), and their checker wherever it is deployed
7
+ * Asky Pro Checker: IXO's checker for Expert Review calls (call kind `review`), and their checker wherever it is deployed
26
8
  * (2026-10-26). By its oracle's URL and the account it signs verdicts as (its `/v1/info` `address`, the ask's
27
9
  * `terms.checker`), per network. Empty where it is not deployed yet.
28
10
  */
29
- export const ASKY_CHECKER_URLS = { devnet: "", testnet: "https://asky-checker.testnet.ixo.earth", mainnet: "https://asky-checker.ixo.earth" };
30
- export const ASKY_CHECKER_ADDRESSES = { devnet: "", testnet: "ixo149t76xlqg5u5dmpz7sjhlz7y0qktafv4z6qg9u", mainnet: "ixo1gmt3rxksd0ukzd228u67p3a34ew7sfl2shff9f" };
11
+ export const ASKY_CHECKER_URLS = { devnet: "https://asky-checker.devnet.ixo.earth", testnet: "https://asky-checker.testnet.ixo.earth", mainnet: "https://asky-checker.ixo.earth" };
12
+ export const ASKY_CHECKER_ADDRESSES = { devnet: "ixo1gqa2r5txa8xmrv7jr5z2chsn6x0d7ulmg238hg", testnet: "ixo149t76xlqg5u5dmpz7sjhlz7y0qktafv4z6qg9u", mainnet: "ixo1gmt3rxksd0ukzd228u67p3a34ew7sfl2shff9f" };
31
13
  /**
32
- * Its fee per check, escrowed on the ask in this coin, which is also the review's reward coin (owner and S3, 2026-10-26:
33
- * Expert Reviews pay in PAY, 1 PAY a check, on both networks as each /v1/info publishes it).
14
+ * Its fee per check, escrowed on the ask in this coin, which is also the review's reward coin (S3, 2026-10-26: Expert
15
+ * Reviews pay in PAY). Free to askers on every network (`AI_CHECK_BASE`, owner 2026-11-05; it was 1 PAY a check).
34
16
  */
35
- export const ASKY_CHECKER_FEES = { testnet: { base: 1_000_000, denom: "upay" }, mainnet: { base: 1_000_000, denom: "upay" } };
36
- export const ASKY_CHECKER_NAME = "Asky Checker";
17
+ export const ASKY_CHECKER_FEES = { devnet: { base: AI_CHECK_BASE, denom: "upay" }, testnet: { base: AI_CHECK_BASE, denom: "upay" }, mainnet: { base: AI_CHECK_BASE, denom: "upay" } };
18
+ export const ASKY_CHECKER_NAME = "Asky Pro Checker";
37
19
  export const askyCheckerUrl = (network) => ASKY_CHECKER_URLS[network] || null;
38
- /** Asky Checker on `network`, to post a review call to, nudge and pay per check; null where it is not deployed. */
20
+ /** Asky Pro Checker on `network`, to post a review call to, nudge and pay per check; null where it is not deployed. */
39
21
  export const askyChecker = (network) => ASKY_CHECKER_URLS[network] && ASKY_CHECKER_ADDRESSES[network] && ASKY_CHECKER_FEES[network] ? { url: ASKY_CHECKER_URLS[network], address: ASKY_CHECKER_ADDRESSES[network], fee: ASKY_CHECKER_FEES[network] } : null;
22
+ export { ASKY_PROTOCOLS, askyProtocol, isAskyProtocol } from "./askyProtocol.js";
40
23
  /**
41
24
  * The coin a checker's fee is escrowed in (owner ruling): its own, as its /v1/info publishes it (IXO, or USDC on mainnet).
42
25
  * PAY is the fee only for IXO-managed checkers (our own two); any other checker naming it is refused.
@@ -95,7 +78,7 @@ export function pickCheck(checkers, checker, check) {
95
78
  if (!found)
96
79
  return { refused: `there is no verifier called "${checker}" on this network${experts.length ? ` (there are: ${experts.map((one) => one.name).join(", ")})` : ""}` };
97
80
  if (found.unavailable || !found.address)
98
- return { refused: `${found.name} cannot take asks just now${found.unavailable ? ` (${found.unavailable})` : ""}` };
81
+ return { refused: `${found.name} cannot take Asks just now${found.unavailable ? ` (${found.unavailable})` : ""}` };
99
82
  const picked = check ? (found.checks.find((one) => one.did === check.trim()) ?? found.checks.find((one) => plain(one.name) === plain(check))) : found.checks.length === 1 ? found.checks[0] : undefined;
100
83
  if (!picked)
101
84
  return { refused: check ? `${found.name} has no check called "${check}" (it has: ${found.checks.map((one) => one.name).join(", ")})` : `${found.name} offers several checks: say which with check (one of: ${found.checks.map((one) => one.name).join(", ")})` };
@@ -132,24 +115,39 @@ function surveyField(q, name, conditional) {
132
115
  case "signaturepad":
133
116
  type = "file";
134
117
  break;
118
+ case "tagbox":
119
+ case "checkbox":
120
+ type = "list";
121
+ break;
122
+ case "paneldynamic":
123
+ type = "panel";
124
+ break;
135
125
  default:
136
- /* shortcut: multi-choice, matrix and dynamic-panel questions are not offered on the simple form; add them when a checker's form needs them. */
126
+ /* shortcut: matrix questions are not offered on the simple form; add them when a checker's form needs them. */
137
127
  return null;
138
128
  }
129
+ const count = (value) => (typeof value === "number" && Number.isInteger(value) && value >= 0 ? value : undefined);
139
130
  const description = words(q.description);
140
131
  const accept = type === "file" ? str(q.acceptedTypes) : undefined;
141
132
  return {
142
133
  name,
143
- label: words(q.title) ?? name,
134
+ /* Asky's report form (anchored on chain, so read as it is) says "(a file's id is its name without the extension)": said plainly here. */
135
+ label: (type === "file" && name === "evidence" ? words(q.title)?.replace(/\s*\([^)]*\bid\b[^)]*\)\s*$/i, "") : words(q.title)) ?? name,
144
136
  type,
145
137
  /* A question shown only on a condition may be left out, whatever its `isRequired` says (eval-oracle's work order). */
146
138
  required: q.isRequired === true && !conditional,
147
139
  ...(description ? { description } : {}),
148
- ...((q.type === "dropdown" || q.type === "radiogroup") && choices.length ? { enum: choices } : {}),
140
+ ...((q.type === "dropdown" || q.type === "radiogroup" || (type === "list" && q.allowCustomChoices !== true)) && choices.length ? { enum: choices } : {}),
149
141
  ...(q.type === "text" && inputType === "url" ? { url: true } : {}),
150
- ...(accept ? { accept } : {})
142
+ ...(accept ? { accept } : {}),
143
+ ...(type === "file" && q.allowMultiple === true ? { multiple: true } : {}),
144
+ ...(type === "panel"
145
+ ? { fields: plainRows(surveyFields(list(q.templateElements), false, new Set())), ...(count(q.minPanelCount) !== undefined ? { min: count(q.minPanelCount) } : {}), ...(count(q.maxPanelCount) !== undefined ? { max: count(q.maxPanelCount) } : {}) }
146
+ : {})
151
147
  };
152
148
  }
149
+ /** A row's `evidence` list in plain words (the form titles it "Evidence (file ids)"): the screenshots for this step, or this problem. */
150
+ const plainRows = (rows) => rows.map((one) => (one.name === "evidence" && one.type === "list" ? { ...one, label: `Screenshots for this ${rows.some((other) => other.name === "result") ? "step" : "problem"}` } : one));
153
151
  function surveyFields(elements, conditional, seen) {
154
152
  const out = [];
155
153
  for (const element of elements) {
@@ -213,14 +211,48 @@ const isFile = (value) => {
213
211
  };
214
212
  /** A number typed into a box arrives as text: "12.5" counts. */
215
213
  const numberOf = (value) => (typeof value === "number" ? value : typeof value === "string" && value.trim() !== "" ? Number(value) : NaN);
214
+ /**
215
+ * The answers by question name: a dotted question (`report.summary.product`) is found under its own name or along its
216
+ * path (`{ report: { summary: { product } } }`), so an answer may come flat or nested.
217
+ */
218
+ export function answersOf(fields, values) {
219
+ const dig = (path) => path.reduce((at, key) => (at && typeof at === "object" && !Array.isArray(at) ? at[key] : undefined), values);
220
+ const out = {};
221
+ for (const field of fields) {
222
+ const value = field.name in values ? values[field.name] : field.name.includes(".") ? dig(field.name.split(".")) : undefined;
223
+ if (value !== undefined)
224
+ out[field.name] = value;
225
+ }
226
+ const roots = new Set(fields.map((field) => field.name.split(".")[0]));
227
+ /* What is not a question (nor a path to one) is kept, so it is said as unknown. */
228
+ for (const [name, value] of Object.entries(values))
229
+ if (!(name in out) && !roots.has(name))
230
+ out[name] = value;
231
+ return out;
232
+ }
233
+ /** Step results that were never carried out: only these may leave out what was expected and observed. */
234
+ export const STEP_NOT_DONE = ["not_tested", "excluded"];
235
+ /**
236
+ * A report's steps rule (Asky Pro Checker's ASKY-102, report.ts's `reportProblems`): in a panel of steps (rows with a
237
+ * `result` and `expected`/`observed`), a step that was done must say what was expected and what was observed, though
238
+ * the form itself marks both optional (its conditional rule lives in the rubric, not the form). The names a row needs.
239
+ */
240
+ export function stepNeeds(panel, row) {
241
+ const names = new Set((panel.fields ?? []).map((one) => one.name));
242
+ if (!names.has("result") || !names.has("expected") || !names.has("observed"))
243
+ return [];
244
+ return STEP_NOT_DONE.includes(String(row?.result ?? "")) ? [] : ["expected", "observed"];
245
+ }
216
246
  /** Plain-word problems with `values` against `fields`; empty = ok. */
217
- export function validateFields(fields, values) {
247
+ export function validateFields(fields, given, where = "") {
248
+ const values = where ? given : answersOf(fields, given);
218
249
  const problems = [];
219
250
  for (const field of fields) {
251
+ const label = `${where}${field.label}`;
220
252
  const value = values[field.name];
221
253
  if (isEmpty(value)) {
222
254
  if (field.required)
223
- problems.push(`${field.label} is needed.`);
255
+ problems.push(`${label} ${field.type === "list" ? "are" : "is"} needed.`);
224
256
  continue;
225
257
  }
226
258
  switch (field.type) {
@@ -228,46 +260,113 @@ export function validateFields(fields, values) {
228
260
  case "integer": {
229
261
  const number = numberOf(value);
230
262
  if (!Number.isFinite(number))
231
- problems.push(`${field.label} must be a number.`);
263
+ problems.push(`${label} must be a number.`);
232
264
  else if (field.type === "integer" && !Number.isInteger(number))
233
- problems.push(`${field.label} must be a whole number.`);
265
+ problems.push(`${label} must be a whole number.`);
234
266
  break;
235
267
  }
236
268
  case "boolean":
237
269
  if (typeof value !== "boolean")
238
- problems.push(`${field.label} must be yes or no.`);
270
+ problems.push(`${label} must be yes or no.`);
239
271
  break;
240
272
  case "date":
241
273
  if (typeof value !== "string" || !/^\d{4}-\d{2}-\d{2}$/.test(value) || Number.isNaN(Date.parse(value)))
242
- problems.push(`${field.label} must be a date (year-month-day).`);
274
+ problems.push(`${label} must be a date (year-month-day).`);
243
275
  break;
244
276
  case "file":
245
277
  if (!filesOf(value).every(isFile))
246
- problems.push(`${field.label} must be a file that has been uploaded.`);
278
+ problems.push(`${label} must be a file that has been uploaded.`);
279
+ else if (!field.multiple && filesOf(value).length > 1)
280
+ problems.push(`${label} takes one file.`);
281
+ break;
282
+ case "list":
283
+ if (!Array.isArray(value) || !value.every((one) => typeof one === "string" && one.trim()))
284
+ problems.push(`${label} must be a list of short texts.`);
285
+ else if (field.enum)
286
+ for (const one of value)
287
+ if (!field.enum.includes(one))
288
+ problems.push(`${label}: "${one}" must be one of: ${field.enum.join(", ")}.`);
247
289
  break;
290
+ case "panel": {
291
+ if (!Array.isArray(value) || !value.every((row) => row && typeof row === "object" && !Array.isArray(row))) {
292
+ problems.push(`${label} must be a list of rows, each with its own fields.`);
293
+ break;
294
+ }
295
+ if (field.min !== undefined && value.length < field.min)
296
+ problems.push(`${label} needs at least ${field.min} ${field.min === 1 ? "row" : "rows"}.`);
297
+ if (field.max !== undefined && value.length > field.max)
298
+ problems.push(`${label} takes at most ${field.max} rows.`);
299
+ value.forEach((row, index) => {
300
+ const where = `${label}, row ${index + 1}: `;
301
+ problems.push(...validateFields(field.fields ?? [], row, where));
302
+ for (const sub of field.fields ?? [])
303
+ if (stepNeeds(field, row).includes(sub.name) && isEmpty(row[sub.name]))
304
+ problems.push(`${where}${sub.label} is needed: a step you did says what you expected and what you observed (only a step not tested or left out may skip them).`);
305
+ });
306
+ break;
307
+ }
248
308
  default:
249
309
  if (typeof value !== "string")
250
- problems.push(`${field.label} must be text.`);
310
+ problems.push(`${label} must be text.`);
251
311
  else if (field.url && !/^https?:\/\/\S+$/i.test(value.trim()))
252
- problems.push(`${field.label} must be a web address starting with https://.`);
312
+ problems.push(`${label} must be a web address starting with https://.`);
253
313
  }
254
- if (field.enum && !field.enum.includes(String(value)))
255
- problems.push(`${field.label} must be one of: ${field.enum.join(", ")}.`);
314
+ if (field.enum && field.type !== "list" && !field.enum.includes(String(value)))
315
+ problems.push(`${label} must be one of: ${field.enum.join(", ")}.`);
256
316
  }
257
317
  const known = new Set(fields.map((field) => field.name));
258
318
  for (const name of Object.keys(values))
259
319
  if (!known.has(name) && !isEmpty(values[name]))
260
- problems.push(`"${name}" is not a question on this form.`);
320
+ problems.push(`${where}"${name}" is not a question on this form.`);
321
+ if (!where)
322
+ problems.push(...unlinkedEvidence(fields, values));
261
323
  return problems;
262
324
  }
263
- /** The answer's value as the checker's rubric reads it: numbers as numbers, files as SurveyJS file answers. */
264
- function answerOf(field, value) {
325
+ /**
326
+ * A form with a root file question `evidence` and rows whose `evidence` names files (Asky Pro Checker's report form):
327
+ * every id a row names must be one of those files, by its name (`evidenceFileOf`, the one forgiving rule the send page
328
+ * and the report viewer use; the send page stores the file's own id). The checker refuses the answer otherwise, after
329
+ * it is paid for.
330
+ */
331
+ function unlinkedEvidence(fields, values) {
332
+ const root = fields.find((field) => field.name === "evidence" && field.type === "file");
333
+ if (!root)
334
+ return [];
335
+ const files = filesOf(values.evidence).filter(isFile).map((file) => ({ id: file.name, name: file.name }));
336
+ const problems = [];
337
+ for (const panel of fields.filter((field) => field.type === "panel" && field.fields?.some((one) => one.name === "evidence" && one.type === "list"))) {
338
+ const rows = Array.isArray(values[panel.name]) ? values[panel.name] : [];
339
+ rows.forEach((row, index) => {
340
+ const missing = (Array.isArray(row?.evidence) ? row.evidence : []).filter((id) => typeof id === "string" && !evidenceFileOf(id.trim(), files));
341
+ if (missing.length)
342
+ problems.push(`${panel.label}, row ${index + 1}: ${missing.map((id) => `"${String(id)}"`).join(", ")} ${missing.length === 1 ? "is" : "are"} not the name of a screenshot added here${files.length ? ` (added: ${files.map((one) => one.name).join(", ")})` : ""}. Add ${missing.length === 1 ? "that screenshot" : "those screenshots"}, or pick one that is added.`);
343
+ });
344
+ }
345
+ return problems;
346
+ }
347
+ /**
348
+ * The answer's value as the checker's rubric reads it: numbers as numbers, files as SurveyJS file answers (`bare`: a
349
+ * private ask's, naming the bare CID, the last segment of the store's URL), lists as trimmed texts, panels as rows.
350
+ */
351
+ function answerOf(field, value, bare = false) {
265
352
  if (field.type === "number" || field.type === "integer")
266
353
  return numberOf(value);
267
354
  if (field.type === "file")
268
- return filesOf(value).map((file) => ({ name: file.name, type: file.type, content: file.url }));
355
+ return filesOf(value).map((file) => ({ name: file.name, type: file.type, content: bare ? (file.url.split("/").pop() ?? file.url) : file.url }));
356
+ if (field.type === "list")
357
+ return value.map((one) => one.trim());
358
+ if (field.type === "panel")
359
+ return value.map((row) => Object.fromEntries((field.fields ?? []).filter((one) => !isEmpty(row[one.name])).map((one) => [one.name, answerOf(one, row[one.name], bare)])));
269
360
  return typeof value === "string" ? value.trim() : value;
270
361
  }
362
+ /** Puts `value` at a dotted name's path: `report.summary.product` → `{ report: { summary: { product } } }`. */
363
+ function putAt(into, name, value) {
364
+ const path = name.split(".");
365
+ let at = into;
366
+ for (const key of path.slice(0, -1))
367
+ at = (at[key] && typeof at[key] === "object" && !Array.isArray(at[key]) ? at[key] : (at[key] = {}));
368
+ at[path[path.length - 1]] = value;
369
+ }
271
370
  /**
272
371
  * The claim body of an answer to an expert ask, the same from the website and the MCP. The checker's engine reads
273
372
  * the claim body verbatim as its `answers`, so every form answer sits at the root under its own name; the Openhands
@@ -278,16 +377,22 @@ export function checkEnvelope(input) {
278
377
  const problems = validateFields(input.fields, input.values);
279
378
  if (problems.length)
280
379
  throw new Error(problems.join(" "));
281
- const answered = input.fields.filter((field) => !isEmpty(input.values[field.name]));
282
- const answers = Object.fromEntries(answered.map((field) => [field.name, answerOf(field, input.values[field.name])]));
380
+ const values = answersOf(input.fields, input.values);
381
+ const answered = input.fields.filter((field) => !isEmpty(values[field.name]));
382
+ /* Each answer at its question's path: a dotted name nests (the engine reads `$report.summary.product` as a path). */
383
+ const answers = {};
384
+ for (const field of answered)
385
+ putAt(answers, field.name, answerOf(field, values[field.name], input.bare));
283
386
  const said = (field) => {
284
- const value = input.values[field.name];
387
+ const value = values[field.name];
285
388
  if (field.type === "file")
286
389
  return filesOf(value).map((file) => file.name).join(", ");
287
390
  if (field.type === "boolean")
288
391
  return value ? "yes" : "no";
289
- return String(answers[field.name]);
392
+ return String(answerOf(field, value));
290
393
  };
394
+ /* A form with rows (a structured report) is read from its answers; the words would only repeat them. */
395
+ const structured = input.fields.some((field) => field.type === "panel");
291
396
  return {
292
397
  v: 2,
293
398
  collectionId: input.collectionId,
@@ -296,7 +401,7 @@ export function checkEnvelope(input) {
296
401
  ...(input.delegate ? { delegate: input.delegate } : {}),
297
402
  ...(input.alias ? { alias: input.alias } : {}),
298
403
  ...(input.via ? { via: input.via } : {}),
299
- deliverable: answered.map((field) => `${field.label}: ${said(field)}`).join("\n"),
404
+ ...(structured ? {} : { deliverable: answered.map((field) => `${field.label}: ${said(field)}`).join("\n") }),
300
405
  /* Last: a form question that shares an envelope field's name keeps the person's answer, which is what the checker reads. */
301
406
  ...answers
302
407
  };
@@ -1 +1 @@
1
- {"version":3,"file":"checkers.js","sourceRoot":"","sources":["../../../src/data/checkers.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"checkers.js","sourceRoot":"","sources":["../../../src/data/checkers.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,10 @@
1
+ /** The network identifiers a decision must name before its details are attributed to a completion. */
2
+ export interface DecisionIdentity {
3
+ claimId: string;
4
+ collectionId: string;
5
+ }
6
+ /** Exact identity only; missing or legacy fields are not evidence of a match. */
7
+ export declare function matchesDecisionIdentity(value: unknown, expected: DecisionIdentity): boolean;
8
+ /** `/api/check` supplies both identifiers under `engine` for engine records. */
9
+ export declare function matchesCheckIdentity(value: unknown, expected: DecisionIdentity): boolean;
10
+ //# sourceMappingURL=decisionIdentity.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"decisionIdentity.d.ts","sourceRoot":"","sources":["../../../src/data/decisionIdentity.ts"],"names":[],"mappings":"AAAA,sGAAsG;AACtG,MAAM,WAAW,gBAAgB;IAC/B,OAAO,EAAE,MAAM,CAAC;IAChB,YAAY,EAAE,MAAM,CAAC;CACtB;AAED,iFAAiF;AACjF,wBAAgB,uBAAuB,CAAC,KAAK,EAAE,OAAO,EAAE,QAAQ,EAAE,gBAAgB,GAAG,OAAO,CAI3F;AAED,gFAAgF;AAChF,wBAAgB,oBAAoB,CAAC,KAAK,EAAE,OAAO,EAAE,QAAQ,EAAE,gBAAgB,GAAG,OAAO,CAIxF"}
@@ -0,0 +1,15 @@
1
+ /** Exact identity only; missing or legacy fields are not evidence of a match. */
2
+ export function matchesDecisionIdentity(value, expected) {
3
+ if (!expected.claimId || !expected.collectionId || !value || typeof value !== "object" || Array.isArray(value))
4
+ return false;
5
+ const record = value;
6
+ return record.claimId === expected.claimId && record.collectionId === expected.collectionId;
7
+ }
8
+ /** `/api/check` supplies both identifiers under `engine` for engine records. */
9
+ export function matchesCheckIdentity(value, expected) {
10
+ if (!value || typeof value !== "object" || Array.isArray(value))
11
+ return false;
12
+ const check = value;
13
+ return check.found === true && matchesDecisionIdentity(check.engine, expected);
14
+ }
15
+ //# sourceMappingURL=decisionIdentity.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"decisionIdentity.js","sourceRoot":"","sources":["../../../src/data/decisionIdentity.ts"],"names":[],"mappings":"AAMA,iFAAiF;AACjF,MAAM,UAAU,uBAAuB,CAAC,KAAc,EAAE,QAA0B;IAChF,IAAI,CAAC,QAAQ,CAAC,OAAO,IAAI,CAAC,QAAQ,CAAC,YAAY,IAAI,CAAC,KAAK,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC;QAAE,OAAO,KAAK,CAAC;IAC7H,MAAM,MAAM,GAAG,KAAgC,CAAC;IAChD,OAAO,MAAM,CAAC,OAAO,KAAK,QAAQ,CAAC,OAAO,IAAI,MAAM,CAAC,YAAY,KAAK,QAAQ,CAAC,YAAY,CAAC;AAC9F,CAAC;AAED,gFAAgF;AAChF,MAAM,UAAU,oBAAoB,CAAC,KAAc,EAAE,QAA0B;IAC7E,IAAI,CAAC,KAAK,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC;QAAE,OAAO,KAAK,CAAC;IAC9E,MAAM,KAAK,GAAG,KAAgC,CAAC;IAC/C,OAAO,KAAK,CAAC,KAAK,KAAK,IAAI,IAAI,uBAAuB,CAAC,KAAK,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;AACjF,CAAC"}
@@ -1,7 +1,13 @@
1
1
  /**
2
2
  * Short account names for a batch of addresses, read from our homeserver.
3
3
  *
4
- * The leaderboard's fold uses this, and only for people who switched the
4
+ * Since 2026-10-31 this repo's leaderboard reads names from the IXO Names
5
+ * worker instead (workers/src/fold/live.ts `liveNames`: one batched request,
6
+ * the same `shortName`, the same three states). This module stays because it
7
+ * is a published subpath (`@ixo/openhands-sdk/data/displayNames`) for hosts
8
+ * that read their own homeserver; nothing in this repo calls it.
9
+ *
10
+ * It was the leaderboard's reader, and only for people who switched the
5
11
  * account name on: it asks `@did-ixo-<address>:<server>` for a display name,
6
12
  * shortens it with `shortName`, and returns the short form or a state. The
7
13
  * full display name never leaves this function, and neither does the Matrix
@@ -1 +1 @@
1
- {"version":3,"file":"displayNames.d.ts","sourceRoot":"","sources":["../../../src/data/displayNames.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AAIH,MAAM,MAAM,iBAAiB,GAAG;IAAE,KAAK,EAAE,OAAO,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAE,GAAG;IAAE,KAAK,EAAE,MAAM,CAAA;CAAE,GAAG;IAAE,KAAK,EAAE,SAAS,CAAA;CAAE,CAAC;AAE5G,MAAM,WAAW,iBAAiB;IAChC,kEAAkE;IAClE,UAAU,EAAE,MAAM,CAAC;IACnB,0EAA0E;IAC1E,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,mFAAmF;IACnF,UAAU,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,kBAAkB;IACjC,wEAAwE;IACxE,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,oCAAoC;IACpC,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,4GAA4G;IAC5G,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,KAAK,CAAC,EAAE,OAAO,KAAK,CAAC;CACtB;AAID;;;GAGG;AACH,eAAO,MAAM,wBAAwB,GAAI,YAAY,MAAM,KAAG,MAM7D,CAAC;AAEF,wBAAsB,gBAAgB,CAAC,MAAM,EAAE,iBAAiB,EAAE,SAAS,EAAE,SAAS,MAAM,EAAE,EAAE,OAAO,GAAE,kBAAuB,GAAG,OAAO,CAAC,GAAG,CAAC,MAAM,EAAE,iBAAiB,CAAC,CAAC,CAiDzK"}
1
+ {"version":3,"file":"displayNames.d.ts","sourceRoot":"","sources":["../../../src/data/displayNames.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA+BG;AAIH,MAAM,MAAM,iBAAiB,GAAG;IAAE,KAAK,EAAE,OAAO,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAE,GAAG;IAAE,KAAK,EAAE,MAAM,CAAA;CAAE,GAAG;IAAE,KAAK,EAAE,SAAS,CAAA;CAAE,CAAC;AAE5G,MAAM,WAAW,iBAAiB;IAChC,kEAAkE;IAClE,UAAU,EAAE,MAAM,CAAC;IACnB,0EAA0E;IAC1E,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,mFAAmF;IACnF,UAAU,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,kBAAkB;IACjC,wEAAwE;IACxE,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,oCAAoC;IACpC,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,4GAA4G;IAC5G,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,KAAK,CAAC,EAAE,OAAO,KAAK,CAAC;CACtB;AAID;;;GAGG;AACH,eAAO,MAAM,wBAAwB,GAAI,YAAY,MAAM,KAAG,MAM7D,CAAC;AAEF,wBAAsB,gBAAgB,CAAC,MAAM,EAAE,iBAAiB,EAAE,SAAS,EAAE,SAAS,MAAM,EAAE,EAAE,OAAO,GAAE,kBAAuB,GAAG,OAAO,CAAC,GAAG,CAAC,MAAM,EAAE,iBAAiB,CAAC,CAAC,CAiDzK"}
@@ -1,7 +1,13 @@
1
1
  /**
2
2
  * Short account names for a batch of addresses, read from our homeserver.
3
3
  *
4
- * The leaderboard's fold uses this, and only for people who switched the
4
+ * Since 2026-10-31 this repo's leaderboard reads names from the IXO Names
5
+ * worker instead (workers/src/fold/live.ts `liveNames`: one batched request,
6
+ * the same `shortName`, the same three states). This module stays because it
7
+ * is a published subpath (`@ixo/openhands-sdk/data/displayNames`) for hosts
8
+ * that read their own homeserver; nothing in this repo calls it.
9
+ *
10
+ * It was the leaderboard's reader, and only for people who switched the
5
11
  * account name on: it asks `@did-ixo-<address>:<server>` for a display name,
6
12
  * shortens it with `shortName`, and returns the short form or a state. The
7
13
  * full display name never leaves this function, and neither does the Matrix