@ixo/openhands-sdk 0.4.1 → 0.5.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 (484) hide show
  1. package/README.md +2 -2
  2. package/dist/cjs/campaign/cleanup.js +1 -1
  3. package/dist/cjs/campaign/cleanup.js.map +1 -1
  4. package/dist/cjs/campaign/spot.d.ts.map +1 -1
  5. package/dist/cjs/campaign/spot.js +2 -1
  6. package/dist/cjs/campaign/spot.js.map +1 -1
  7. package/dist/cjs/chain/ask.d.ts +17 -0
  8. package/dist/cjs/chain/ask.d.ts.map +1 -1
  9. package/dist/cjs/chain/ask.js +26 -9
  10. package/dist/cjs/chain/ask.js.map +1 -1
  11. package/dist/cjs/chain/broadcast.d.ts.map +1 -1
  12. package/dist/cjs/chain/broadcast.js +6 -4
  13. package/dist/cjs/chain/broadcast.js.map +1 -1
  14. package/dist/cjs/chain/claimVerdict.d.ts +26 -0
  15. package/dist/cjs/chain/claimVerdict.d.ts.map +1 -0
  16. package/dist/cjs/chain/claimVerdict.js +33 -0
  17. package/dist/cjs/chain/claimVerdict.js.map +1 -0
  18. package/dist/cjs/chain/delegate.d.ts +46 -3
  19. package/dist/cjs/chain/delegate.d.ts.map +1 -1
  20. package/dist/cjs/chain/delegate.js +68 -6
  21. package/dist/cjs/chain/delegate.js.map +1 -1
  22. package/dist/cjs/chain/entityShape.d.ts +2 -0
  23. package/dist/cjs/chain/entityShape.d.ts.map +1 -1
  24. package/dist/cjs/chain/entityShape.js +8 -1
  25. package/dist/cjs/chain/entityShape.js.map +1 -1
  26. package/dist/cjs/chain/env.d.ts +1 -0
  27. package/dist/cjs/chain/env.d.ts.map +1 -1
  28. package/dist/cjs/chain/env.js +9 -1
  29. package/dist/cjs/chain/env.js.map +1 -1
  30. package/dist/cjs/chain/inviteMessages.d.ts +183 -0
  31. package/dist/cjs/chain/inviteMessages.d.ts.map +1 -0
  32. package/dist/cjs/chain/inviteMessages.js +289 -0
  33. package/dist/cjs/chain/inviteMessages.js.map +1 -0
  34. package/dist/cjs/chain/inviteProof.d.ts +121 -0
  35. package/dist/cjs/chain/inviteProof.d.ts.map +1 -0
  36. package/dist/cjs/chain/inviteProof.js +297 -0
  37. package/dist/cjs/chain/inviteProof.js.map +1 -0
  38. package/dist/cjs/chain/lane.d.ts +148 -0
  39. package/dist/cjs/chain/lane.d.ts.map +1 -0
  40. package/dist/cjs/chain/lane.js +220 -0
  41. package/dist/cjs/chain/lane.js.map +1 -0
  42. package/dist/cjs/chain/money.d.ts +6 -4
  43. package/dist/cjs/chain/money.d.ts.map +1 -1
  44. package/dist/cjs/chain/money.js +10 -7
  45. package/dist/cjs/chain/money.js.map +1 -1
  46. package/dist/cjs/chain/oracle.d.ts +2 -0
  47. package/dist/cjs/chain/oracle.d.ts.map +1 -1
  48. package/dist/cjs/chain/oracle.js +1 -1
  49. package/dist/cjs/chain/oracle.js.map +1 -1
  50. package/dist/cjs/chain/orgReviewBilling.js +1 -1
  51. package/dist/cjs/chain/orgReviewBilling.js.map +1 -1
  52. package/dist/cjs/chain/payoutTerms.d.ts.map +1 -1
  53. package/dist/cjs/chain/payoutTerms.js +1 -1
  54. package/dist/cjs/chain/payoutTerms.js.map +1 -1
  55. package/dist/cjs/chain/personReview.d.ts +218 -0
  56. package/dist/cjs/chain/personReview.d.ts.map +1 -0
  57. package/dist/cjs/chain/personReview.js +379 -0
  58. package/dist/cjs/chain/personReview.js.map +1 -0
  59. package/dist/cjs/chain/postFee.d.ts +11 -0
  60. package/dist/cjs/chain/postFee.d.ts.map +1 -0
  61. package/dist/cjs/chain/postFee.js +14 -0
  62. package/dist/cjs/chain/postFee.js.map +1 -0
  63. package/dist/cjs/chain/query.d.ts +55 -2
  64. package/dist/cjs/chain/query.d.ts.map +1 -1
  65. package/dist/cjs/chain/query.js +144 -8
  66. package/dist/cjs/chain/query.js.map +1 -1
  67. package/dist/cjs/chain/reviewBilling.d.ts +3 -27
  68. package/dist/cjs/chain/reviewBilling.d.ts.map +1 -1
  69. package/dist/cjs/chain/reviewBilling.js +5 -112
  70. package/dist/cjs/chain/reviewBilling.js.map +1 -1
  71. package/dist/cjs/chain.d.ts +1 -1
  72. package/dist/cjs/chain.d.ts.map +1 -1
  73. package/dist/cjs/chain.js +5 -2
  74. package/dist/cjs/chain.js.map +1 -1
  75. package/dist/cjs/config.d.ts +11 -2
  76. package/dist/cjs/config.d.ts.map +1 -1
  77. package/dist/cjs/config.js +5 -1
  78. package/dist/cjs/config.js.map +1 -1
  79. package/dist/cjs/data/agent.d.ts +2 -0
  80. package/dist/cjs/data/agent.d.ts.map +1 -1
  81. package/dist/cjs/data/agent.js +1 -0
  82. package/dist/cjs/data/agent.js.map +1 -1
  83. package/dist/cjs/data/board/assemble.d.ts +7 -2
  84. package/dist/cjs/data/board/assemble.d.ts.map +1 -1
  85. package/dist/cjs/data/board/assemble.js +76 -10
  86. package/dist/cjs/data/board/assemble.js.map +1 -1
  87. package/dist/cjs/data/board/facts.d.ts +2 -0
  88. package/dist/cjs/data/board/facts.d.ts.map +1 -1
  89. package/dist/cjs/data/board/facts.js +2 -1
  90. package/dist/cjs/data/board/facts.js.map +1 -1
  91. package/dist/cjs/data/board/read.d.ts +27 -3
  92. package/dist/cjs/data/board/read.d.ts.map +1 -1
  93. package/dist/cjs/data/board/read.js +122 -8
  94. package/dist/cjs/data/board/read.js.map +1 -1
  95. package/dist/cjs/data/board/types.d.ts +77 -5
  96. package/dist/cjs/data/board/types.d.ts.map +1 -1
  97. package/dist/cjs/data/board/types.js +5 -3
  98. package/dist/cjs/data/board/types.js.map +1 -1
  99. package/dist/cjs/data/checkers.d.ts +169 -0
  100. package/dist/cjs/data/checkers.d.ts.map +1 -0
  101. package/dist/cjs/data/checkers.js +354 -0
  102. package/dist/cjs/data/checkers.js.map +1 -0
  103. package/dist/cjs/data/checkersRead.d.ts +58 -0
  104. package/dist/cjs/data/checkersRead.d.ts.map +1 -0
  105. package/dist/cjs/data/checkersRead.js +263 -0
  106. package/dist/cjs/data/checkersRead.js.map +1 -0
  107. package/dist/cjs/data/denoms.d.ts.map +1 -1
  108. package/dist/cjs/data/denoms.js +1 -0
  109. package/dist/cjs/data/denoms.js.map +1 -1
  110. package/dist/cjs/data/docUrls.d.ts +2 -0
  111. package/dist/cjs/data/docUrls.d.ts.map +1 -1
  112. package/dist/cjs/data/docUrls.js +4 -1
  113. package/dist/cjs/data/docUrls.js.map +1 -1
  114. package/dist/cjs/data/docs.d.ts +3 -1
  115. package/dist/cjs/data/docs.d.ts.map +1 -1
  116. package/dist/cjs/data/docs.js +15 -2
  117. package/dist/cjs/data/docs.js.map +1 -1
  118. package/dist/cjs/data/engine.d.ts.map +1 -1
  119. package/dist/cjs/data/engine.js +12 -5
  120. package/dist/cjs/data/engine.js.map +1 -1
  121. package/dist/cjs/data/engineUrl.js +1 -1
  122. package/dist/cjs/data/engineUrl.js.map +1 -1
  123. package/dist/cjs/data/envelope.d.ts +18 -0
  124. package/dist/cjs/data/envelope.d.ts.map +1 -1
  125. package/dist/cjs/data/envelope.js +16 -1
  126. package/dist/cjs/data/envelope.js.map +1 -1
  127. package/dist/cjs/data/format.d.ts +18 -0
  128. package/dist/cjs/data/format.d.ts.map +1 -1
  129. package/dist/cjs/data/format.js +32 -2
  130. package/dist/cjs/data/format.js.map +1 -1
  131. package/dist/cjs/data/index.d.ts +2 -2
  132. package/dist/cjs/data/index.d.ts.map +1 -1
  133. package/dist/cjs/data/index.js +2 -1
  134. package/dist/cjs/data/index.js.map +1 -1
  135. package/dist/cjs/data/install.d.ts +44 -47
  136. package/dist/cjs/data/install.d.ts.map +1 -1
  137. package/dist/cjs/data/install.js +60 -59
  138. package/dist/cjs/data/install.js.map +1 -1
  139. package/dist/cjs/data/openness.d.ts +14 -1
  140. package/dist/cjs/data/openness.d.ts.map +1 -1
  141. package/dist/cjs/data/openness.js +14 -26
  142. package/dist/cjs/data/openness.js.map +1 -1
  143. package/dist/cjs/data/queue.d.ts +26 -0
  144. package/dist/cjs/data/queue.d.ts.map +1 -1
  145. package/dist/cjs/data/queue.js +57 -12
  146. package/dist/cjs/data/queue.js.map +1 -1
  147. package/dist/cjs/data/receipt.d.ts +19 -0
  148. package/dist/cjs/data/receipt.d.ts.map +1 -1
  149. package/dist/cjs/data/receipt.js +22 -5
  150. package/dist/cjs/data/receipt.js.map +1 -1
  151. package/dist/cjs/data/threads.d.ts +2 -0
  152. package/dist/cjs/data/threads.d.ts.map +1 -1
  153. package/dist/cjs/data/threads.js +3 -1
  154. package/dist/cjs/data/threads.js.map +1 -1
  155. package/dist/cjs/data/traceWords.js +1 -1
  156. package/dist/cjs/data/traceWords.js.map +1 -1
  157. package/dist/cjs/data/types.d.ts +6 -1
  158. package/dist/cjs/data/types.d.ts.map +1 -1
  159. package/dist/cjs/data/types.js.map +1 -1
  160. package/dist/cjs/data/whyReceipt.d.ts.map +1 -1
  161. package/dist/cjs/data/whyReceipt.js +10 -1
  162. package/dist/cjs/data/whyReceipt.js.map +1 -1
  163. package/dist/cjs/data/work.d.ts +5 -0
  164. package/dist/cjs/data/work.d.ts.map +1 -1
  165. package/dist/cjs/data/work.js +11 -5
  166. package/dist/cjs/data/work.js.map +1 -1
  167. package/dist/cjs/discovery.d.ts +64 -0
  168. package/dist/cjs/discovery.d.ts.map +1 -0
  169. package/dist/cjs/discovery.js +85 -0
  170. package/dist/cjs/discovery.js.map +1 -0
  171. package/dist/cjs/envRead.d.ts +1 -1
  172. package/dist/cjs/envRead.d.ts.map +1 -1
  173. package/dist/cjs/envRead.js +2 -1
  174. package/dist/cjs/envRead.js.map +1 -1
  175. package/dist/cjs/given.d.ts +14 -0
  176. package/dist/cjs/given.d.ts.map +1 -1
  177. package/dist/cjs/given.js +14 -2
  178. package/dist/cjs/given.js.map +1 -1
  179. package/dist/cjs/network.d.ts +3 -1
  180. package/dist/cjs/network.d.ts.map +1 -1
  181. package/dist/cjs/network.js +11 -3
  182. package/dist/cjs/network.js.map +1 -1
  183. package/dist/cjs/rubric/bridge.d.ts +8 -0
  184. package/dist/cjs/rubric/bridge.d.ts.map +1 -1
  185. package/dist/cjs/rubric/bridge.js +107 -8
  186. package/dist/cjs/rubric/bridge.js.map +1 -1
  187. package/dist/cjs/rubric/call.d.ts +35 -8
  188. package/dist/cjs/rubric/call.d.ts.map +1 -1
  189. package/dist/cjs/rubric/call.js +62 -20
  190. package/dist/cjs/rubric/call.js.map +1 -1
  191. package/dist/cjs/rubric/callTag.d.ts +5 -0
  192. package/dist/cjs/rubric/callTag.d.ts.map +1 -0
  193. package/dist/cjs/rubric/callTag.js +17 -0
  194. package/dist/cjs/rubric/callTag.js.map +1 -0
  195. package/dist/cjs/rubric/compose.d.ts.map +1 -1
  196. package/dist/cjs/rubric/compose.js +5 -3
  197. package/dist/cjs/rubric/compose.js.map +1 -1
  198. package/dist/cjs/rubric/draft.d.ts +9 -1
  199. package/dist/cjs/rubric/draft.d.ts.map +1 -1
  200. package/dist/cjs/rubric/draft.js +24 -2
  201. package/dist/cjs/rubric/draft.js.map +1 -1
  202. package/dist/cjs/rubric/gateMet.d.ts +17 -0
  203. package/dist/cjs/rubric/gateMet.d.ts.map +1 -1
  204. package/dist/cjs/rubric/gateMet.js +36 -3
  205. package/dist/cjs/rubric/gateMet.js.map +1 -1
  206. package/dist/cjs/rubric/leg.js +3 -3
  207. package/dist/cjs/rubric/leg.js.map +1 -1
  208. package/dist/cjs/rubric/marketPlan.d.ts +2 -0
  209. package/dist/cjs/rubric/marketPlan.d.ts.map +1 -1
  210. package/dist/cjs/rubric/marketPlan.js.map +1 -1
  211. package/dist/cjs/rubric/planAsk.d.ts +23 -0
  212. package/dist/cjs/rubric/planAsk.d.ts.map +1 -0
  213. package/dist/cjs/rubric/planAsk.js +24 -0
  214. package/dist/cjs/rubric/planAsk.js.map +1 -0
  215. package/dist/cjs/rubric/report.d.ts +208 -0
  216. package/dist/cjs/rubric/report.d.ts.map +1 -0
  217. package/dist/cjs/rubric/report.js +384 -0
  218. package/dist/cjs/rubric/report.js.map +1 -0
  219. package/dist/cjs/rubric/reportLine.d.ts +31 -0
  220. package/dist/cjs/rubric/reportLine.d.ts.map +1 -0
  221. package/dist/cjs/rubric/reportLine.js +45 -0
  222. package/dist/cjs/rubric/reportLine.js.map +1 -0
  223. package/dist/cjs/rubric/reportTemplate.d.ts +30 -0
  224. package/dist/cjs/rubric/reportTemplate.d.ts.map +1 -0
  225. package/dist/cjs/rubric/reportTemplate.js +78 -0
  226. package/dist/cjs/rubric/reportTemplate.js.map +1 -0
  227. package/dist/cjs/rubric/share.d.ts +46 -0
  228. package/dist/cjs/rubric/share.d.ts.map +1 -0
  229. package/dist/cjs/rubric/share.js +65 -0
  230. package/dist/cjs/rubric/share.js.map +1 -0
  231. package/dist/cjs/rubric/terms.d.ts +76 -2
  232. package/dist/cjs/rubric/terms.d.ts.map +1 -1
  233. package/dist/cjs/rubric/terms.js +84 -4
  234. package/dist/cjs/rubric/terms.js.map +1 -1
  235. package/dist/cjs/verification/profile.d.ts +28 -0
  236. package/dist/cjs/verification/profile.d.ts.map +1 -0
  237. package/dist/cjs/verification/profile.js +126 -0
  238. package/dist/cjs/verification/profile.js.map +1 -0
  239. package/dist/cjs/verification/schema.d.ts +54 -0
  240. package/dist/cjs/verification/schema.d.ts.map +1 -0
  241. package/dist/cjs/verification/schema.js +49 -0
  242. package/dist/cjs/verification/schema.js.map +1 -0
  243. package/dist/esm/campaign/cleanup.js +1 -1
  244. package/dist/esm/campaign/cleanup.js.map +1 -1
  245. package/dist/esm/campaign/spot.d.ts.map +1 -1
  246. package/dist/esm/campaign/spot.js +2 -1
  247. package/dist/esm/campaign/spot.js.map +1 -1
  248. package/dist/esm/chain/ask.d.ts +17 -0
  249. package/dist/esm/chain/ask.d.ts.map +1 -1
  250. package/dist/esm/chain/ask.js +28 -11
  251. package/dist/esm/chain/ask.js.map +1 -1
  252. package/dist/esm/chain/broadcast.d.ts.map +1 -1
  253. package/dist/esm/chain/broadcast.js +7 -5
  254. package/dist/esm/chain/broadcast.js.map +1 -1
  255. package/dist/esm/chain/claimVerdict.d.ts +26 -0
  256. package/dist/esm/chain/claimVerdict.d.ts.map +1 -0
  257. package/dist/esm/chain/claimVerdict.js +30 -0
  258. package/dist/esm/chain/claimVerdict.js.map +1 -0
  259. package/dist/esm/chain/delegate.d.ts +46 -3
  260. package/dist/esm/chain/delegate.d.ts.map +1 -1
  261. package/dist/esm/chain/delegate.js +60 -5
  262. package/dist/esm/chain/delegate.js.map +1 -1
  263. package/dist/esm/chain/entityShape.d.ts +2 -0
  264. package/dist/esm/chain/entityShape.d.ts.map +1 -1
  265. package/dist/esm/chain/entityShape.js +6 -0
  266. package/dist/esm/chain/entityShape.js.map +1 -1
  267. package/dist/esm/chain/env.d.ts +1 -0
  268. package/dist/esm/chain/env.d.ts.map +1 -1
  269. package/dist/esm/chain/env.js +7 -0
  270. package/dist/esm/chain/env.js.map +1 -1
  271. package/dist/esm/chain/inviteMessages.d.ts +183 -0
  272. package/dist/esm/chain/inviteMessages.d.ts.map +1 -0
  273. package/dist/esm/chain/inviteMessages.js +246 -0
  274. package/dist/esm/chain/inviteMessages.js.map +1 -0
  275. package/dist/esm/chain/inviteProof.d.ts +121 -0
  276. package/dist/esm/chain/inviteProof.d.ts.map +1 -0
  277. package/dist/esm/chain/inviteProof.js +278 -0
  278. package/dist/esm/chain/inviteProof.js.map +1 -0
  279. package/dist/esm/chain/lane.d.ts +148 -0
  280. package/dist/esm/chain/lane.d.ts.map +1 -0
  281. package/dist/esm/chain/lane.js +170 -0
  282. package/dist/esm/chain/lane.js.map +1 -0
  283. package/dist/esm/chain/money.d.ts +6 -4
  284. package/dist/esm/chain/money.d.ts.map +1 -1
  285. package/dist/esm/chain/money.js +10 -7
  286. package/dist/esm/chain/money.js.map +1 -1
  287. package/dist/esm/chain/oracle.d.ts +2 -0
  288. package/dist/esm/chain/oracle.d.ts.map +1 -1
  289. package/dist/esm/chain/oracle.js +1 -1
  290. package/dist/esm/chain/oracle.js.map +1 -1
  291. package/dist/esm/chain/orgReviewBilling.js +1 -1
  292. package/dist/esm/chain/orgReviewBilling.js.map +1 -1
  293. package/dist/esm/chain/payoutTerms.d.ts.map +1 -1
  294. package/dist/esm/chain/payoutTerms.js +1 -1
  295. package/dist/esm/chain/payoutTerms.js.map +1 -1
  296. package/dist/esm/chain/personReview.d.ts +218 -0
  297. package/dist/esm/chain/personReview.d.ts.map +1 -0
  298. package/dist/esm/chain/personReview.js +322 -0
  299. package/dist/esm/chain/personReview.js.map +1 -0
  300. package/dist/esm/chain/postFee.d.ts +11 -0
  301. package/dist/esm/chain/postFee.d.ts.map +1 -0
  302. package/dist/esm/chain/postFee.js +11 -0
  303. package/dist/esm/chain/postFee.js.map +1 -0
  304. package/dist/esm/chain/query.d.ts +55 -2
  305. package/dist/esm/chain/query.d.ts.map +1 -1
  306. package/dist/esm/chain/query.js +136 -8
  307. package/dist/esm/chain/query.js.map +1 -1
  308. package/dist/esm/chain/reviewBilling.d.ts +3 -27
  309. package/dist/esm/chain/reviewBilling.d.ts.map +1 -1
  310. package/dist/esm/chain/reviewBilling.js +5 -108
  311. package/dist/esm/chain/reviewBilling.js.map +1 -1
  312. package/dist/esm/chain.d.ts +1 -1
  313. package/dist/esm/chain.d.ts.map +1 -1
  314. package/dist/esm/chain.js +1 -1
  315. package/dist/esm/chain.js.map +1 -1
  316. package/dist/esm/config.d.ts +11 -2
  317. package/dist/esm/config.d.ts.map +1 -1
  318. package/dist/esm/config.js +6 -2
  319. package/dist/esm/config.js.map +1 -1
  320. package/dist/esm/data/agent.d.ts +2 -0
  321. package/dist/esm/data/agent.d.ts.map +1 -1
  322. package/dist/esm/data/agent.js +1 -0
  323. package/dist/esm/data/agent.js.map +1 -1
  324. package/dist/esm/data/board/assemble.d.ts +7 -2
  325. package/dist/esm/data/board/assemble.d.ts.map +1 -1
  326. package/dist/esm/data/board/assemble.js +73 -9
  327. package/dist/esm/data/board/assemble.js.map +1 -1
  328. package/dist/esm/data/board/facts.d.ts +2 -0
  329. package/dist/esm/data/board/facts.d.ts.map +1 -1
  330. package/dist/esm/data/board/facts.js +2 -1
  331. package/dist/esm/data/board/facts.js.map +1 -1
  332. package/dist/esm/data/board/read.d.ts +27 -3
  333. package/dist/esm/data/board/read.d.ts.map +1 -1
  334. package/dist/esm/data/board/read.js +123 -10
  335. package/dist/esm/data/board/read.js.map +1 -1
  336. package/dist/esm/data/board/types.d.ts +77 -5
  337. package/dist/esm/data/board/types.d.ts.map +1 -1
  338. package/dist/esm/data/board/types.js +5 -3
  339. package/dist/esm/data/board/types.js.map +1 -1
  340. package/dist/esm/data/checkers.d.ts +169 -0
  341. package/dist/esm/data/checkers.d.ts.map +1 -0
  342. package/dist/esm/data/checkers.js +304 -0
  343. package/dist/esm/data/checkers.js.map +1 -0
  344. package/dist/esm/data/checkersRead.d.ts +58 -0
  345. package/dist/esm/data/checkersRead.d.ts.map +1 -0
  346. package/dist/esm/data/checkersRead.js +252 -0
  347. package/dist/esm/data/checkersRead.js.map +1 -0
  348. package/dist/esm/data/denoms.d.ts.map +1 -1
  349. package/dist/esm/data/denoms.js +1 -0
  350. package/dist/esm/data/denoms.js.map +1 -1
  351. package/dist/esm/data/docUrls.d.ts +2 -0
  352. package/dist/esm/data/docUrls.d.ts.map +1 -1
  353. package/dist/esm/data/docUrls.js +2 -0
  354. package/dist/esm/data/docUrls.js.map +1 -1
  355. package/dist/esm/data/docs.d.ts +3 -1
  356. package/dist/esm/data/docs.d.ts.map +1 -1
  357. package/dist/esm/data/docs.js +15 -2
  358. package/dist/esm/data/docs.js.map +1 -1
  359. package/dist/esm/data/engine.d.ts.map +1 -1
  360. package/dist/esm/data/engine.js +12 -5
  361. package/dist/esm/data/engine.js.map +1 -1
  362. package/dist/esm/data/engineUrl.js +2 -2
  363. package/dist/esm/data/engineUrl.js.map +1 -1
  364. package/dist/esm/data/envelope.d.ts +18 -0
  365. package/dist/esm/data/envelope.d.ts.map +1 -1
  366. package/dist/esm/data/envelope.js +14 -0
  367. package/dist/esm/data/envelope.js.map +1 -1
  368. package/dist/esm/data/format.d.ts +18 -0
  369. package/dist/esm/data/format.d.ts.map +1 -1
  370. package/dist/esm/data/format.js +28 -1
  371. package/dist/esm/data/format.js.map +1 -1
  372. package/dist/esm/data/index.d.ts +2 -2
  373. package/dist/esm/data/index.d.ts.map +1 -1
  374. package/dist/esm/data/index.js +1 -1
  375. package/dist/esm/data/index.js.map +1 -1
  376. package/dist/esm/data/install.d.ts +44 -47
  377. package/dist/esm/data/install.d.ts.map +1 -1
  378. package/dist/esm/data/install.js +56 -58
  379. package/dist/esm/data/install.js.map +1 -1
  380. package/dist/esm/data/openness.d.ts +14 -1
  381. package/dist/esm/data/openness.d.ts.map +1 -1
  382. package/dist/esm/data/openness.js +14 -26
  383. package/dist/esm/data/openness.js.map +1 -1
  384. package/dist/esm/data/queue.d.ts +26 -0
  385. package/dist/esm/data/queue.d.ts.map +1 -1
  386. package/dist/esm/data/queue.js +50 -9
  387. package/dist/esm/data/queue.js.map +1 -1
  388. package/dist/esm/data/receipt.d.ts +19 -0
  389. package/dist/esm/data/receipt.d.ts.map +1 -1
  390. package/dist/esm/data/receipt.js +20 -4
  391. package/dist/esm/data/receipt.js.map +1 -1
  392. package/dist/esm/data/threads.d.ts +2 -0
  393. package/dist/esm/data/threads.d.ts.map +1 -1
  394. package/dist/esm/data/threads.js +3 -1
  395. package/dist/esm/data/threads.js.map +1 -1
  396. package/dist/esm/data/traceWords.js +1 -1
  397. package/dist/esm/data/traceWords.js.map +1 -1
  398. package/dist/esm/data/types.d.ts +6 -1
  399. package/dist/esm/data/types.d.ts.map +1 -1
  400. package/dist/esm/data/types.js.map +1 -1
  401. package/dist/esm/data/whyReceipt.d.ts.map +1 -1
  402. package/dist/esm/data/whyReceipt.js +10 -1
  403. package/dist/esm/data/whyReceipt.js.map +1 -1
  404. package/dist/esm/data/work.d.ts +5 -0
  405. package/dist/esm/data/work.d.ts.map +1 -1
  406. package/dist/esm/data/work.js +11 -5
  407. package/dist/esm/data/work.js.map +1 -1
  408. package/dist/esm/discovery.d.ts +64 -0
  409. package/dist/esm/discovery.d.ts.map +1 -0
  410. package/dist/esm/discovery.js +74 -0
  411. package/dist/esm/discovery.js.map +1 -0
  412. package/dist/esm/envRead.d.ts +1 -1
  413. package/dist/esm/envRead.d.ts.map +1 -1
  414. package/dist/esm/envRead.js +1 -1
  415. package/dist/esm/envRead.js.map +1 -1
  416. package/dist/esm/given.d.ts +14 -0
  417. package/dist/esm/given.d.ts.map +1 -1
  418. package/dist/esm/given.js +11 -1
  419. package/dist/esm/given.js.map +1 -1
  420. package/dist/esm/network.d.ts +3 -1
  421. package/dist/esm/network.d.ts.map +1 -1
  422. package/dist/esm/network.js +10 -3
  423. package/dist/esm/network.js.map +1 -1
  424. package/dist/esm/rubric/bridge.d.ts +8 -0
  425. package/dist/esm/rubric/bridge.d.ts.map +1 -1
  426. package/dist/esm/rubric/bridge.js +105 -7
  427. package/dist/esm/rubric/bridge.js.map +1 -1
  428. package/dist/esm/rubric/call.d.ts +35 -8
  429. package/dist/esm/rubric/call.d.ts.map +1 -1
  430. package/dist/esm/rubric/call.js +57 -16
  431. package/dist/esm/rubric/call.js.map +1 -1
  432. package/dist/esm/rubric/callTag.d.ts +5 -0
  433. package/dist/esm/rubric/callTag.d.ts.map +1 -0
  434. package/dist/esm/rubric/callTag.js +12 -0
  435. package/dist/esm/rubric/callTag.js.map +1 -0
  436. package/dist/esm/rubric/compose.d.ts.map +1 -1
  437. package/dist/esm/rubric/compose.js +5 -3
  438. package/dist/esm/rubric/compose.js.map +1 -1
  439. package/dist/esm/rubric/draft.d.ts +9 -1
  440. package/dist/esm/rubric/draft.d.ts.map +1 -1
  441. package/dist/esm/rubric/draft.js +23 -2
  442. package/dist/esm/rubric/draft.js.map +1 -1
  443. package/dist/esm/rubric/gateMet.d.ts +17 -0
  444. package/dist/esm/rubric/gateMet.d.ts.map +1 -1
  445. package/dist/esm/rubric/gateMet.js +34 -2
  446. package/dist/esm/rubric/gateMet.js.map +1 -1
  447. package/dist/esm/rubric/leg.js +4 -4
  448. package/dist/esm/rubric/leg.js.map +1 -1
  449. package/dist/esm/rubric/marketPlan.d.ts +2 -0
  450. package/dist/esm/rubric/marketPlan.d.ts.map +1 -1
  451. package/dist/esm/rubric/marketPlan.js.map +1 -1
  452. package/dist/esm/rubric/planAsk.d.ts +23 -0
  453. package/dist/esm/rubric/planAsk.d.ts.map +1 -0
  454. package/dist/esm/rubric/planAsk.js +20 -0
  455. package/dist/esm/rubric/planAsk.js.map +1 -0
  456. package/dist/esm/rubric/report.d.ts +208 -0
  457. package/dist/esm/rubric/report.d.ts.map +1 -0
  458. package/dist/esm/rubric/report.js +371 -0
  459. package/dist/esm/rubric/report.js.map +1 -0
  460. package/dist/esm/rubric/reportLine.d.ts +31 -0
  461. package/dist/esm/rubric/reportLine.d.ts.map +1 -0
  462. package/dist/esm/rubric/reportLine.js +40 -0
  463. package/dist/esm/rubric/reportLine.js.map +1 -0
  464. package/dist/esm/rubric/reportTemplate.d.ts +30 -0
  465. package/dist/esm/rubric/reportTemplate.d.ts.map +1 -0
  466. package/dist/esm/rubric/reportTemplate.js +74 -0
  467. package/dist/esm/rubric/reportTemplate.js.map +1 -0
  468. package/dist/esm/rubric/share.d.ts +46 -0
  469. package/dist/esm/rubric/share.d.ts.map +1 -0
  470. package/dist/esm/rubric/share.js +58 -0
  471. package/dist/esm/rubric/share.js.map +1 -0
  472. package/dist/esm/rubric/terms.d.ts +76 -2
  473. package/dist/esm/rubric/terms.d.ts.map +1 -1
  474. package/dist/esm/rubric/terms.js +78 -3
  475. package/dist/esm/rubric/terms.js.map +1 -1
  476. package/dist/esm/verification/profile.d.ts +28 -0
  477. package/dist/esm/verification/profile.d.ts.map +1 -0
  478. package/dist/esm/verification/profile.js +122 -0
  479. package/dist/esm/verification/profile.js.map +1 -0
  480. package/dist/esm/verification/schema.d.ts +54 -0
  481. package/dist/esm/verification/schema.d.ts.map +1 -0
  482. package/dist/esm/verification/schema.js +46 -0
  483. package/dist/esm/verification/schema.js.map +1 -0
  484. package/package.json +22 -2
@@ -1,13 +1,13 @@
1
1
  "use strict";
2
2
  /**
3
- * How an MCP client is told to connect to Openhands Network.
3
+ * How an MCP client is told to connect to asks.world.
4
4
  *
5
5
  * One table, several renderings: the server's own `get_config_help` and the
6
6
  * hosted `where_to_act`, the install block (`/`, `/connect`, `/mcp`), the
7
7
  * agent page and its `/mcp.md` twin, and the hosted server's description all
8
8
  * print these lines from here, so
9
9
  * they cannot disagree — which they did, for a month, when the page said
10
- * `/path/to/openhands-mcp` and the server printed whatever path it happened
10
+ * `/path/to/asks-mcp` and the server printed whatever path it happened
11
11
  * to be running from.
12
12
  *
13
13
  * Pure and dependency-free, like `app/lib/networks.ts`: the app, the MCP
@@ -20,25 +20,41 @@
20
20
  * anchor, so the server, the package and the plugin all carry its name.
21
21
  */
22
22
  Object.defineProperty(exports, "__esModule", { value: true });
23
- exports.HOSTED_WHERE = exports.HOSTED_CLIENTS = exports.PLUGIN_WHERE = exports.PLUGIN_PATHS = exports.HQ_INSTALL_LINES = exports.PLUGIN_INSTALLS = exports.PLUGIN_CLIENTS = exports.CLAUDE_CODE_ONE_STEP = exports.PLUGIN_NETWORK_ENV = exports.PLUGIN_NETWORK_DEFAULT = exports.READ_ONLY_LINE = exports.READ_ONLY_PLUGINS_LINE = exports.resourceLines = exports.RESOURCE_PACKAGES = exports.npmUrl = exports.PLUGIN_MARKETPLACE_URL = exports.HQ_PLUGIN_NAME = exports.PLUGIN_ID = exports.PLUGIN_NAME = exports.PLUGIN_MARKETPLACE = exports.INSTALL_WHERE = exports.INSTALL_CLIENTS = exports.hostedUrl = exports.MCP_HOSTED_PATH = exports.MCP_SPEC = exports.MCP_MAJOR = exports.MCP_SERVER = exports.MCP_PACKAGE = void 0;
23
+ exports.HOSTED_WHERE = exports.HOSTED_CLIENTS = exports.PLUGIN_WHERE = exports.PLUGIN_COMMANDS_LINE = exports.PLUGIN_PATHS = exports.claudeAppPluginSteps = exports.pluginShellLine = exports.PLUGIN_INSTALLS = exports.PLUGIN_CLIENTS = exports.CLAUDE_CODE_ONE_STEP = exports.READ_ONLY_LINE = exports.resourceLines = exports.RESOURCE_PACKAGES = exports.npmUrl = exports.PLUGIN_MARKETPLACE_URL = exports.PLUGIN_ID = exports.PLUGIN_NAME = exports.PLUGIN_MARKETPLACE = exports.INSTALL_WHERE = exports.INSTALL_CLIENTS = exports.hostedUrl = exports.MCP_HOSTED_PATH = exports.npxCacheLines = exports.NPX_REFRESH_LINE = exports.NPX_CACHE_NOTE = exports.MCP_SPEC = exports.MCP_TAG = exports.MCP_SERVER = exports.MCP_PACKAGE = void 0;
24
24
  exports.installLines = installLines;
25
25
  exports.pluginLines = pluginLines;
26
26
  exports.pluginPathsText = pluginPathsText;
27
27
  exports.pluginNetworkNote = pluginNetworkNote;
28
28
  exports.hostedLines = hostedLines;
29
29
  /** The npm package the bundled server ships as (the plugin plan's A2). */
30
- exports.MCP_PACKAGE = "@ixo/openhands-mcp";
31
- /** The name a client registers the server under; tools appear as `mcp__openhands-network__*`. */
32
- exports.MCP_SERVER = "openhands-network";
30
+ exports.MCP_PACKAGE = "@ixo/asks-mcp";
31
+ /** The name a client registers the server under; tools appear as `mcp__asks__*`. */
32
+ exports.MCP_SERVER = "asks";
33
33
  /**
34
- * The major an install pins. semantic-release publishes the package
35
- * (docs/RELEASING-MCP.md) and a breaking change moves the major, so `npx -y
36
- * @ixo/openhands-mcp@1` takes every fix and feature of 1.x and never a
37
- * 2.0 nobody asked for. The plugin (ixoworld/ixo-plugins) pins the same.
34
+ * The dist-tag an install follows (owner, 2026-10-26): `latest`, the newest release from main, majors
35
+ * included. The plugin (ixoworld/ixo-plugins) uses the same.
38
36
  */
39
- exports.MCP_MAJOR = 1;
37
+ exports.MCP_TAG = "latest";
40
38
  /** What `npx` is told to run. */
41
- exports.MCP_SPEC = `${exports.MCP_PACKAGE}@${exports.MCP_MAJOR}`;
39
+ exports.MCP_SPEC = `${exports.MCP_PACKAGE}@${exports.MCP_TAG}`;
40
+ /** A site's network is the test network unless it is mainnet (testnet, devnet). */
41
+ const isTest = (network) => network !== "mainnet";
42
+ /**
43
+ * What that spec actually runs is whatever build the npx cache holds for it.
44
+ * npx keeps one install per spec string and reuses it without asking the
45
+ * registry, so a machine that installed in September keeps September's
46
+ * server until the cache is cleared — on 2026-10-20 `@1` ran 1.1.0 on a Mac
47
+ * while 1.4.1 was latest, and 1.1.0 refused post_call for want of variables
48
+ * 1.4 reads from the site. The plugin's `.mcp.json` uses the same spec. Said
49
+ * beside the version wherever an install is printed, with the one line that
50
+ * refreshes it.
51
+ */
52
+ exports.NPX_CACHE_NOTE = `npx keeps the build it first installed for "${exports.MCP_SPEC}" and reuses it without asking npm, so after a release an older server can keep running on your machine.`;
53
+ /** The one line that makes the next start install the newest release: npx's own cache, found through npm's config so the path is right on every machine. */
54
+ exports.NPX_REFRESH_LINE = 'rm -rf "$(npm config get cache)/_npx"';
55
+ /** The note and the line, as text: what get_config_help and the install pages print. */
56
+ const npxCacheLines = () => [`${exports.NPX_CACHE_NOTE} To refresh it, run this once, then start the client again:\n${exports.NPX_REFRESH_LINE}`];
57
+ exports.npxCacheLines = npxCacheLines;
42
58
  /**
43
59
  * The hosted server's path on every deployment's own origin: read-only,
44
60
  * unauthenticated, and the protocol surface the `/v1/` prefix versions
@@ -54,7 +70,7 @@ const PACKAGE_ENTRY = { kind: "package" };
54
70
  /** The command and its arguments, as every client wants them. */
55
71
  function command(entry) {
56
72
  return entry.kind === "package"
57
- ? { command: "npx", args: ["-y", entry.name ?? exports.MCP_SPEC], env: {} }
73
+ ? { command: "npx", args: ["-y", exports.MCP_SPEC], env: {} }
58
74
  : { command: "node", args: ["--experimental-strip-types", entry.path], env: {} };
59
75
  }
60
76
  const envOf = (options) => ({
@@ -65,23 +81,25 @@ const envOf = (options) => ({
65
81
  function installLines(client, options) {
66
82
  const run = command(options.entry ?? PACKAGE_ENTRY);
67
83
  const env = envOf(options);
84
+ /* A plugin install does not replace a hand-added server (Claude Code names plugin servers `plugin:<plugin>:<server>`), so the guide says to remove it, or every tool is listed twice (final review M3). */
85
+ const name = exports.MCP_SERVER;
68
86
  switch (client) {
69
87
  case "claude-code": {
70
88
  const flags = Object.entries(env)
71
89
  .map(([key, value]) => `--env ${key}=${value}`)
72
90
  .join(" ");
73
- return `claude mcp add ${exports.MCP_SERVER} ${flags} -- ${run.command} ${run.args.join(" ")}`;
91
+ return `claude mcp add ${name} ${flags} -- ${run.command} ${run.args.join(" ")}`;
74
92
  }
75
93
  case "codex": {
76
94
  const table = Object.entries(env)
77
95
  .map(([key, value]) => `${key} = "${value}"`)
78
96
  .join(", ");
79
- return [`[mcp_servers.${exports.MCP_SERVER}]`, `command = "${run.command}"`, `args = ${JSON.stringify(run.args)}`, `env = { ${table} }`].join("\n");
97
+ return [`[mcp_servers.${name}]`, `command = "${run.command}"`, `args = ${JSON.stringify(run.args)}`, `env = { ${table} }`].join("\n");
80
98
  }
81
99
  case "cursor":
82
- return JSON.stringify({ mcpServers: { [exports.MCP_SERVER]: { command: run.command, args: run.args, env } } }, null, 2);
100
+ return JSON.stringify({ mcpServers: { [name]: { command: run.command, args: run.args, env } } }, null, 2);
83
101
  case "vscode":
84
- return `vscode:mcp/install?${encodeURIComponent(JSON.stringify({ name: exports.MCP_SERVER, command: run.command, args: run.args, env }))}`;
102
+ return `vscode:mcp/install?${encodeURIComponent(JSON.stringify({ name, command: run.command, args: run.args, env }))}`;
85
103
  }
86
104
  }
87
105
  /** Where each client keeps it — the sentence above the block. */
@@ -98,14 +116,8 @@ exports.INSTALL_WHERE = {
98
116
  * package does.
99
117
  */
100
118
  exports.PLUGIN_MARKETPLACE = "ixoworld/ixo-plugins";
101
- exports.PLUGIN_NAME = "ixo-openhands";
119
+ exports.PLUGIN_NAME = "asks";
102
120
  exports.PLUGIN_ID = `${exports.PLUGIN_NAME}@ixo-plugins`;
103
- /**
104
- * The hosted MCP (claude.ai, ChatGPT) only reads. Everything that signs runs in
105
- * Claude Code with the local MCP / HQ plugin, where keys and data stay on the
106
- * user's machine (owner ruling 2026-10-15). One wording, said everywhere.
107
- */
108
- exports.HQ_PLUGIN_NAME = "ixo-openhands-hq";
109
121
  /** The plugin marketplace's public repository: every plugin's skill, README and version. */
110
122
  exports.PLUGIN_MARKETPLACE_URL = `https://github.com/${exports.PLUGIN_MARKETPLACE}`;
111
123
  /** An npm package's page, where its latest version is. */
@@ -116,27 +128,19 @@ exports.npmUrl = npmUrl;
116
128
  * guides (/llms.txt, /mcp.md) list these; bump a range here when a plugin's skill moves to a new one.
117
129
  */
118
130
  exports.RESOURCE_PACKAGES = [
119
- { name: exports.MCP_PACKAGE, range: String(exports.MCP_MAJOR), what: `the Openhands tools both plugins run (server name ${exports.MCP_SERVER})` },
120
- { name: "@ixo/decision-oracle", range: "0.2", what: `company setup: the organisation, its reviewer and Pay for reviews (used by ${exports.HQ_PLUGIN_NAME})` },
121
- { name: "@ixo/payouts-facilitator", range: "0.1", what: `a company's own payouts service, for paying workers USDC on Base (used by ${exports.HQ_PLUGIN_NAME})` }
131
+ { name: exports.MCP_PACKAGE, range: exports.MCP_TAG, what: `the asks.world tools the plugin runs (server name ${exports.MCP_SERVER})` },
132
+ { name: "@ixo/decision-oracle", range: "0.2", what: `company setup: the organisation, its reviewer and Pay for reviews (used by ${exports.PLUGIN_NAME})` },
133
+ { name: "@ixo/payouts-facilitator", range: "0.1", what: `a company's own payouts service, for paying workers USDC on Base (used by ${exports.PLUGIN_NAME})` }
122
134
  ];
123
135
  /** One line per package: name@range, what it is, its npm page. */
124
136
  const resourceLines = () => exports.RESOURCE_PACKAGES.map((one) => `${one.name}@${one.range}: ${one.what}. ${(0, exports.npmUrl)(one.name)}`);
125
137
  exports.resourceLines = resourceLines;
126
- /** The marketplace also lists two hosted, read-only plugins; their names read like network versions of ixo-openhands, so say what they are. */
127
- exports.READ_ONLY_PLUGINS_LINE = "ixo-openhands-mainnet and ixo-openhands-testnet in the same marketplace are read-only: they only look at the board, with no posting, payouts or sign-in. They are not the mainnet or testnet versions of ixo-openhands; for those, install ixo-openhands or ixo-openhands-hq, which start on mainnet and switch to testnet with OPENHANDS_NETWORK=testnet.";
128
- exports.READ_ONLY_LINE = "This connector can only read. To post asks, set up payouts, pay for reviews or get paid, use Claude Code with an OpenHands plugin (ixo-openhands-hq for a company, ixo-openhands for a worker or yourself): it runs on your computer, so your keys and data stay with you.";
129
138
  /**
130
- * The network the plugin starts on, and the variable that changes it.
131
- *
132
- * The plugin's Claude Code `.mcp.json` sets `NEXT_PUBLIC_CHAIN_NETWORK` to
133
- * `${OPENHANDS_NETWORK:-mainnet}`, which Claude Code expands from the
134
- * environment it was started in. Codex's portable `mcp.json` has no such
135
- * expansion and says `mainnet` outright, so in Codex the plugin is mainnet
136
- * only and the test network is the config.toml lines.
139
+ * The hosted MCP (claude.ai, ChatGPT) only reads. Everything that signs runs in
140
+ * Claude Code with the local MCP / HQ plugin, where keys and data stay on the
141
+ * user's machine (owner ruling 2026-10-15). One wording, said everywhere.
137
142
  */
138
- exports.PLUGIN_NETWORK_DEFAULT = "mainnet";
139
- exports.PLUGIN_NETWORK_ENV = "OPENHANDS_NETWORK";
143
+ exports.READ_ONLY_LINE = "This connector can only read. To post asks, set up payouts, pay for reviews or get paid, use Claude Code with an asks.world plugin (asks): it runs on your computer, so your keys and data stay with you.";
140
144
  /** The first Claude Code that installs from a marketplace in one step, with `--marketplace`. */
141
145
  exports.CLAUDE_CODE_ONE_STEP = "2.1.275";
142
146
  exports.PLUGIN_CLIENTS = ["claude-code", "codex"];
@@ -157,44 +161,41 @@ function pluginLines(install, name = exports.PLUGIN_NAME) {
157
161
  return [`codex plugin marketplace add ${exports.PLUGIN_MARKETPLACE}`, `codex plugin add ${id}`].join("\n");
158
162
  }
159
163
  }
160
- /** The HQ plugin's two Claude Code lines, which work on every Claude Code version. */
161
- exports.HQ_INSTALL_LINES = pluginLines("claude-code-older", exports.HQ_PLUGIN_NAME);
164
+ /** The Claude Code install as shell commands, said on one line: for an agent that cannot type a /plugin command but can run `claude`. */
165
+ const pluginShellLine = (name) => `claude plugin marketplace add ${exports.PLUGIN_MARKETPLACE} then claude plugin install ${name}@ixo-plugins`;
166
+ exports.pluginShellLine = pluginShellLine;
162
167
  /**
163
- * The two ways in, company first: who each plugin is for and what it does.
164
- * Every page and tool that shows an install shows both, from here.
168
+ * The Claude app (desktop or claude.ai, paid plans): a person adds the plugin by hand, and its server, which runs on
169
+ * their computer, works where Claude can run things on it: the Code tab, or a chat with a folder connected (the former Cowork); not a plain chat (support.claude.com, "Use plugins in Claude").
165
170
  */
171
+ const claudeAppPluginSteps = (names) => `In the Claude app (paid plans) your user adds it themselves: Customize, then Plugins, then Add, then Add marketplace, then Add from a repository, and enter ${exports.PLUGIN_MARKETPLACE}; then on the Discover tab pick ${names} and tap Add. It runs on their computer, so they use it in the app's Code tab or in a chat with a folder connected, not in a plain chat.`;
172
+ exports.claudeAppPluginSteps = claudeAppPluginSteps;
173
+ /** The one plugin, for a company or a worker: what it does, said once. Every page and tool that shows an install shows it, from here. */
166
174
  exports.PLUGIN_PATHS = [
167
- {
168
- name: exports.HQ_PLUGIN_NAME,
169
- who: "For a company",
170
- what: "Set up your company (organisation, how workers are paid, a reviewer, review billing), then post asks."
171
- },
172
175
  {
173
176
  name: exports.PLUGIN_NAME,
174
- who: "For a worker or yourself",
175
- what: "Find asks, answer them and get paid. Post asks of your own."
177
+ who: "For a company or yourself",
178
+ what: "Find asks, answer them and get paid, post asks of your own, and set up your company (organisation, how workers are paid, a reviewer, review billing). A report ask is answered with Claude (the report and screenshots, which you approve before anything is sent) or on the website."
176
179
  }
177
180
  ];
181
+ /** The plugin's commands (ixoworld/ixo-plugins), said once: `/asks` works out what the person wants, the rest go straight to one job. */
182
+ exports.PLUGIN_COMMANDS_LINE = `Once installed, type /asks and say what you want, or go straight to one job: /asks:create (post an ask or a review, set up a company), /asks:jobs (find work), /asks:invite, /asks:manage, /asks:report (write a review report), /asks:profile, /asks:account, /asks:connect, /asks:help.`;
178
183
  exports.PLUGIN_WHERE = {
179
184
  "claude-code": `Claude Code ${exports.CLAUDE_CODE_ONE_STEP} or newer, typed inside a session:`,
180
185
  "claude-code-older": "An older Claude Code, two lines inside a session:",
181
186
  codex: "Codex, in a terminal:"
182
187
  };
183
- /** Both plugins as plain text, company first: who it is for, then each install's lines. */
188
+ /** The plugin as plain text: who it is for, then each install's lines. */
184
189
  function pluginPathsText(installs = exports.PLUGIN_INSTALLS) {
185
190
  return exports.PLUGIN_PATHS.map((path) => [`${path.who}: ${path.name}. ${path.what}`, ...installs.map((one) => `${exports.PLUGIN_WHERE[one]}\n${pluginLines(one, path.name)}`)].join("\n\n"));
186
191
  }
187
192
  /**
188
- * What the plugin brings and which network it starts on, said for the site at
189
- * `network`: on mainnet, how to get the test network instead; on the test
190
- * network, that the client has to be started for it.
193
+ * What the plugin brings and which network to use, said for the site at `network`. One server serves both: every
194
+ * tool takes `network`, so there is nothing to set at install.
191
195
  */
192
196
  function pluginNetworkNote(network) {
193
- const what = "Each plugin brings the server and its skill.";
194
- const codex = `In Codex the plugins are always mainnet; for the test network there, use the config.toml lines.`;
195
- return network === exports.PLUGIN_NETWORK_DEFAULT
196
- ? `${what} They start on mainnet, where rewards are paid in IXO or USDC. To try the test network, where coins have no value, start Claude Code with ${exports.PLUGIN_NETWORK_ENV}=testnet set in its shell (${exports.PLUGIN_NETWORK_ENV}=testnet claude). ${codex}`
197
- : `${what} This site is the test network, where coins have no value, and the plugins start on mainnet: start Claude Code with ${exports.PLUGIN_NETWORK_ENV}=testnet (${exports.PLUGIN_NETWORK_ENV}=testnet claude) so it matches. ${codex}`;
197
+ const what = `The plugin brings the server and its skill, for both networks. Every action names one: mainnet, where rewards are paid in IXO or USDC, or testnet, a dry run where coins have no value.`;
198
+ return isTest(network) ? `This site is the test network. Install ${exports.PLUGIN_NAME}. ${what} Here, use it on testnet (a dry run, play money).` : what;
198
199
  }
199
200
  /**
200
201
  * The hosted server, for a client that cannot run a local one. It reads the
@@ -1 +1 @@
1
- {"version":3,"file":"install.js","sourceRoot":"","sources":["../../../src/data/install.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"install.js","sourceRoot":"","sources":["../../../src/data/install.ts"],"names":[],"mappings":"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"}
@@ -68,6 +68,18 @@ export type AskDoor = Openness | {
68
68
  * this gate. An RPC that fails yields an empty set, which shows no door — the
69
69
  * safe direction, since the gate would refuse anyway.
70
70
  */
71
+ /**
72
+ * The door, with the screen's word on it (Part C): `held` is a person looking
73
+ * first; `refused` is not carried here at all. `reason` is the sentence kept
74
+ * with the ruling — the phrase rules' own, or a moderator's — when the board
75
+ * gave one. Answered server-side (`doorFor` in the app), never by `askDoor`,
76
+ * which reads the chain alone.
77
+ */
78
+ export type ScreenedDoor = AskDoor | {
79
+ open: false;
80
+ why: "held" | "refused";
81
+ reason: string | null;
82
+ };
71
83
  export declare function askDoor(ask: AskWindow & {
72
84
  admin?: string | null;
73
85
  }, authorized: ReadonlySet<string>, now?: Date): AskDoor;
@@ -89,5 +101,6 @@ export declare function askDoor(ask: AskWindow & {
89
101
  export declare function standingLine(ask: AskWindow & {
90
102
  count: number;
91
103
  rejected: number;
92
- }, openness?: AskDoor): string;
104
+ approver?: string | null;
105
+ }, openness?: ScreenedDoor): string;
93
106
  //# sourceMappingURL=openness.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"openness.d.ts","sourceRoot":"","sources":["../../../src/data/openness.ts"],"names":[],"mappings":"AAEA;;;;;;;;;;GAUG;AAEH,MAAM,WAAW,SAAS;IACxB,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,GAAG,MAAM,CAAC;IACvB,QAAQ,EAAE,MAAM,CAAC;IACjB;;;;;;;OAOG;IACH,KAAK,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAAC;IAC/B,OAAO,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CACzB;AAED,MAAM,MAAM,QAAQ,GAChB;IAAE,IAAI,EAAE,IAAI,CAAA;CAAE;AAChB;+EAC+E;GAC7E;IAAE,IAAI,EAAE,KAAK,CAAC;IAAC,GAAG,EAAE,QAAQ,GAAG,QAAQ,GAAG,QAAQ,GAAG,OAAO,CAAA;CAAE,CAAC;AAEnE,wBAAgB,WAAW,CAAC,GAAG,EAAE,SAAS,EAAE,GAAG,GAAE,IAAiB,GAAG,QAAQ,CAsC5E;AAED;;;GAGG;AACH,MAAM,MAAM,OAAO,GAAG,QAAQ,GAAG;IAAE,IAAI,EAAE,KAAK,CAAC;IAAC,GAAG,EAAE,WAAW,CAAA;CAAE,CAAC;AAEnE;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AACH,wBAAgB,OAAO,CAAC,GAAG,EAAE,SAAS,GAAG;IAAE,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;CAAE,EAAE,UAAU,EAAE,WAAW,CAAC,MAAM,CAAC,EAAE,GAAG,GAAE,IAAiB,GAAG,OAAO,CAMpI;AAED;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,YAAY,CAAC,GAAG,EAAE,SAAS,GAAG;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,QAAQ,EAAE,MAAM,CAAA;CAAE,EAAE,QAAQ,GAAE,OAA0B,GAAG,MAAM,CA8C/H"}
1
+ {"version":3,"file":"openness.d.ts","sourceRoot":"","sources":["../../../src/data/openness.ts"],"names":[],"mappings":"AAEA;;;;;;;;;;GAUG;AAEH,MAAM,WAAW,SAAS;IACxB,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,GAAG,MAAM,CAAC;IACvB,QAAQ,EAAE,MAAM,CAAC;IACjB;;;;;;;OAOG;IACH,KAAK,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAAC;IAC/B,OAAO,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CACzB;AAED,MAAM,MAAM,QAAQ,GAChB;IAAE,IAAI,EAAE,IAAI,CAAA;CAAE;AAChB;+EAC+E;GAC7E;IAAE,IAAI,EAAE,KAAK,CAAC;IAAC,GAAG,EAAE,QAAQ,GAAG,QAAQ,GAAG,QAAQ,GAAG,OAAO,CAAA;CAAE,CAAC;AAEnE,wBAAgB,WAAW,CAAC,GAAG,EAAE,SAAS,EAAE,GAAG,GAAE,IAAiB,GAAG,QAAQ,CAsC5E;AAED;;;GAGG;AACH,MAAM,MAAM,OAAO,GAAG,QAAQ,GAAG;IAAE,IAAI,EAAE,KAAK,CAAC;IAAC,GAAG,EAAE,WAAW,CAAA;CAAE,CAAC;AAEnE;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AACH;;;;;;GAMG;AACH,MAAM,MAAM,YAAY,GAAG,OAAO,GAAG;IAAE,IAAI,EAAE,KAAK,CAAC;IAAC,GAAG,EAAE,MAAM,GAAG,SAAS,CAAC;IAAC,MAAM,EAAE,MAAM,GAAG,IAAI,CAAA;CAAE,CAAC;AAErG,wBAAgB,OAAO,CAAC,GAAG,EAAE,SAAS,GAAG;IAAE,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;CAAE,EAAE,UAAU,EAAE,WAAW,CAAC,MAAM,CAAC,EAAE,GAAG,GAAE,IAAiB,GAAG,OAAO,CAMpI;AAED;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,YAAY,CAAC,GAAG,EAAE,SAAS,GAAG;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,QAAQ,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;CAAE,EAAE,QAAQ,GAAE,YAA+B,GAAG,MAAM,CAyD9J"}
@@ -44,32 +44,6 @@ function askOpenness(ask, now = new Date()) {
44
44
  return { open: false, why: "ended" };
45
45
  return { open: true };
46
46
  }
47
- /**
48
- * Whether **this deployment** can take an answer to this ask — which is the
49
- * question a submit button is really asking, and a strictly harder one than
50
- * `askOpenness`.
51
- *
52
- * The board learned this first. The public index returns every claim
53
- * collection on the network, and most belong to other projects: an IXO World
54
- * invoice, somebody's device telemetry, a protocol nobody here has heard of.
55
- * They are open, they pay, they collect answers — through their own
56
- * application. Ours cannot make their claims, and the chain agrees: their
57
- * escrow account never granted this deployment's gate the right to admit a
58
- * stranger, so every submission from here is refused after the work is done.
59
- *
60
- * That grant is the whole test. It is not a heuristic about naming or
61
- * shape — it is the same fact the gate itself re-checks before it signs, so
62
- * a door drawn on this answer is a door that opens.
63
- *
64
- * **Deliberately not tested: published criteria.** An Openhands ask may
65
- * carry no `DoneMeans` and be checked by whoever posted it — the submit page
66
- * says so in its own footnote. Reading their absence as "foreign" would take
67
- * the door off honest asks whose poster reviews by hand.
68
- *
69
- * `authorized` is the set `takeableAdmins()` returns: admins that granted
70
- * this gate. An RPC that fails yields an empty set, which shows no door — the
71
- * safe direction, since the gate would refuse anyway.
72
- */
73
47
  function askDoor(ask, authorized, now = new Date()) {
74
48
  /* The chain's own word and the clock first: an ask that is closed is closed
75
49
  whoever posted it, and "closed" is the more useful thing to be told. */
@@ -95,6 +69,16 @@ function askDoor(ask, authorized, now = new Date()) {
95
69
  */
96
70
  function standingLine(ask, openness = askOpenness(ask)) {
97
71
  if (!openness.open) {
72
+ /*
73
+ * The screen's word, with its reason: the poster whose money is locked
74
+ * behind it, and the worker about to walk somewhere, both need the why
75
+ * more than the date (2026-10-20: a call's entries leg said "3 of 3 spots
76
+ * still pay" while the gate refused every entrant).
77
+ */
78
+ if (openness.why === "refused")
79
+ return openness.reason ? `${openness.reason} This ask takes no answers here.` : "Openhands Network doesn't carry this ask, so it takes no answers here.";
80
+ if (openness.why === "held")
81
+ return `This ask is being looked at before it takes answers.${openness.reason ? ` ${openness.reason}` : ""}`;
98
82
  /*
99
83
  * The one reason that is not about this ask running out of anything. An
100
84
  * ask posted by another application is still open, still paying, still
@@ -112,6 +96,10 @@ function standingLine(ask, openness = askOpenness(ask)) {
112
96
  * shrug and is actually a falsehood.
113
97
  */
114
98
  if (openness.why === "filled") {
99
+ /* Answers still undecided on an ask a person gives the final OK on are held for them, not refused. */
100
+ const held = ask.count - ask.approved - ask.rejected;
101
+ if (held > 0 && ask.approver)
102
+ return `This ask has taken all the answers it can. ${held === 1 ? "One is" : `${held} are`} waiting for the poster's OK.`;
115
103
  return ask.approved > 0
116
104
  ? "Every payout on this ask has been made."
117
105
  : "This ask has taken all the answers it can, and none was approved.";
@@ -1 +1 @@
1
- {"version":3,"file":"openness.js","sourceRoot":"","sources":["../../../src/data/openness.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"openness.js","sourceRoot":"","sources":["../../../src/data/openness.ts"],"names":[],"mappings":"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"}
@@ -38,7 +38,24 @@ export interface Waiting {
38
38
  * it is the one non-terminal verdict, explicitly re-evaluatable.
39
39
  */
40
40
  why: "unjudged" | "flagged";
41
+ /** A person gives the final OK at the oracle (the deed's `approver` link): who, as an ixo1 address. Never signed on chain from here. */
42
+ approver?: string | null;
43
+ /** The ask's claim protocol: the engine manifest that holds the person's questions. */
44
+ protocol?: string;
41
45
  }
46
+ export interface LinkedRow {
47
+ id: string;
48
+ linkedEntity?: {
49
+ id?: string;
50
+ relationship?: string;
51
+ }[] | null;
52
+ }
53
+ /** The ixo1 address an entity's `approver` link names, or null. */
54
+ export declare const approverOf: (row: LinkedRow) => string | null;
55
+ /** A checker looked and handed it back to a person (see `Waiting.why`). */
56
+ export declare const FLAGGED = 5;
57
+ /** A GraphQL list literal of strings. */
58
+ export declare const list: (values: readonly string[]) => string;
42
59
  /**
43
60
  * Everything unjudged on every ask this address owns or may judge, oldest first.
44
61
  *
@@ -46,4 +63,13 @@ export interface Waiting {
46
63
  * person who has been waiting longest is the one owed an answer.
47
64
  */
48
65
  export declare function waitingOn(address: string, limit?: number): Promise<Waiting[]>;
66
+ /**
67
+ * The asks this address posted that a person gives the final OK on (the deed's `approver` link): what its Me page
68
+ * keeps checking on for, silently (`ensureReviewing`). Open or recently ended ones only, newest first.
69
+ */
70
+ export declare function checkingAsksOf(address: string, now?: number): Promise<{
71
+ collectionId: string;
72
+ approver: string;
73
+ endsAt: string | null;
74
+ }[]>;
49
75
  //# sourceMappingURL=queue.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"queue.d.ts","sourceRoot":"","sources":["../../../src/data/queue.ts"],"names":[],"mappings":"AAMA;;;;;;;;;;;;;;;GAeG;AACH,MAAM,WAAW,OAAO;IACtB,YAAY,EAAE,MAAM,CAAC;IACrB,OAAO,EAAE,MAAM,CAAC;IAChB,kCAAkC;IAClC,YAAY,EAAE,MAAM,CAAC;IACrB,WAAW,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B,oEAAoE;IACpE,KAAK,EAAE,MAAM,CAAC;IACd,2CAA2C;IAC3C,IAAI,EAAE;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE,GAAG,IAAI,CAAC;IAC/C,6DAA6D;IAC7D,KAAK,EAAE,MAAM,CAAC;IACd,SAAS,EAAE,MAAM,CAAC;IAClB;;;;;;OAMG;IACH,GAAG,EAAE,UAAU,GAAG,SAAS,CAAC;CAC7B;AAqED;;;;;GAKG;AACH,wBAAsB,SAAS,CAAC,OAAO,EAAE,MAAM,EAAE,KAAK,SAAK,GAAG,OAAO,CAAC,OAAO,EAAE,CAAC,CA+D/E"}
1
+ {"version":3,"file":"queue.d.ts","sourceRoot":"","sources":["../../../src/data/queue.ts"],"names":[],"mappings":"AAMA;;;;;;;;;;;;;;;GAeG;AACH,MAAM,WAAW,OAAO;IACtB,YAAY,EAAE,MAAM,CAAC;IACrB,OAAO,EAAE,MAAM,CAAC;IAChB,kCAAkC;IAClC,YAAY,EAAE,MAAM,CAAC;IACrB,WAAW,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B,oEAAoE;IACpE,KAAK,EAAE,MAAM,CAAC;IACd,2CAA2C;IAC3C,IAAI,EAAE;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE,GAAG,IAAI,CAAC;IAC/C,6DAA6D;IAC7D,KAAK,EAAE,MAAM,CAAC;IACd,SAAS,EAAE,MAAM,CAAC;IAClB;;;;;;OAMG;IACH,GAAG,EAAE,UAAU,GAAG,SAAS,CAAC;IAC5B,wIAAwI;IACxI,QAAQ,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,uFAAuF;IACvF,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,SAAS;IACxB,EAAE,EAAE,MAAM,CAAC;IACX,YAAY,CAAC,EAAE;QAAE,EAAE,CAAC,EAAE,MAAM,CAAC;QAAC,YAAY,CAAC,EAAE,MAAM,CAAA;KAAE,EAAE,GAAG,IAAI,CAAC;CAChE;AAED,mEAAmE;AACnE,eAAO,MAAM,UAAU,GAAI,KAAK,SAAS,KAAG,MAAM,GAAG,IAAoJ,CAAC;AAmC1M,2EAA2E;AAC3E,eAAO,MAAM,OAAO,IAAI,CAAC;AAEzB,yCAAyC;AACzC,eAAO,MAAM,IAAI,GAAI,QAAQ,SAAS,MAAM,EAAE,WAAmE,CAAC;AAgClH;;;;;GAKG;AACH,wBAAsB,SAAS,CAAC,OAAO,EAAE,MAAM,EAAE,KAAK,SAAK,GAAG,OAAO,CAAC,OAAO,EAAE,CAAC,CA6E/E;AAED;;;GAGG;AACH,wBAAsB,cAAc,CAAC,OAAO,EAAE,MAAM,EAAE,GAAG,SAAa,GAAG,OAAO,CAAC;IAAE,YAAY,EAAE,MAAM,CAAC;IAAC,QAAQ,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,GAAG,IAAI,CAAA;CAAE,EAAE,CAAC,CAgBpJ"}
@@ -1,11 +1,16 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.list = exports.FLAGGED = exports.approverOf = void 0;
3
4
  exports.waitingOn = waitingOn;
5
+ exports.checkingAsksOf = checkingAsksOf;
4
6
  const balance_ts_1 = require("./balance.js");
5
7
  const gql_ts_1 = require("./gql.js");
6
8
  const paged_ts_1 = require("./paged.js");
7
9
  const profiles_ts_1 = require("./profiles.js");
8
10
  const format_ts_1 = require("./format.js");
11
+ /** The ixo1 address an entity's `approver` link names, or null. */
12
+ const approverOf = (row) => row.linkedEntity?.find((one) => one.relationship === "approver" && one.id?.startsWith("did:ixo:ixo1"))?.id?.slice("did:ixo:".length) ?? null;
13
+ exports.approverOf = approverOf;
9
14
  /*
10
15
  * The chain's own rule, and the reason this queue exists.
11
16
  *
@@ -19,8 +24,11 @@ const format_ts_1 = require("./format.js");
19
24
  * ever shown. The thread said "needs a person" and offered nobody a way to be
20
25
  * that person.
21
26
  */
22
- const FLAGGED = 5;
27
+ /** A checker looked and handed it back to a person (see `Waiting.why`). */
28
+ exports.FLAGGED = 5;
29
+ /** A GraphQL list literal of strings. */
23
30
  const list = (values) => `[${values.map((value) => JSON.stringify(value)).join(", ")}]`;
31
+ exports.list = list;
24
32
  /**
25
33
  * The admin accounts this address may judge for, read from its authz grants.
26
34
  *
@@ -65,37 +73,49 @@ async function waitingOn(address, limit = 40) {
65
73
  become an empty queue, which is the one answer a queue must never give
66
74
  falsely — "nobody is waiting on you". The route says "unavailable"
67
75
  instead (app/api/waiting). */
68
- const [owned, admins] = await Promise.all([
76
+ const [owned, admins, approving] = await Promise.all([
69
77
  (0, gql_ts_1.gql)(`query { entities(filter: {owner: {equalTo: ${JSON.stringify(address)}}}, first: 60) { nodes { id } } }`),
70
- judgedAdmins(address)
78
+ judgedAdmins(address),
79
+ /* Asks that name this address as the person who gives the final OK (chain/entityShape.ts `approverLink`). */
80
+ (0, gql_ts_1.gql)(`query { iids(filter: {linkedEntity: {contains: [{id: ${JSON.stringify(`did:ixo:${address}`)}, relationship: "approver"}]}}, first: 60) { nodes { id } } }`)
71
81
  ]);
72
- const entityDids = owned.entities.nodes.map((entity) => entity.id);
82
+ const ownedDids = owned.entities.nodes.map((entity) => entity.id);
83
+ const entityDids = [...new Set([...ownedDids, ...approving.iids.nodes.map((row) => row.id)])];
73
84
  if (entityDids.length === 0 && admins.length === 0)
74
85
  return [];
86
+ /* Which of the poster's own asks a person approves, and who: theirs to answer, not this queue's, unless it is them. */
87
+ const approvers = new Map(approving.iids.nodes.map((row) => [row.id, address]));
75
88
  /* Two reads rather than one `or`: the asks this address posted, and the
76
89
  asks whose admin account granted it the right to judge. A collection
77
90
  found both ways is one collection. */
78
91
  const [posted, judged] = await Promise.all([
79
92
  entityDids.length > 0
80
- ? (0, gql_ts_1.gql)(`query { claimCollections(filter: {entity: {in: ${list(entityDids)}}}) { nodes { id entity protocol admin payments } } }`)
93
+ ? (0, gql_ts_1.gql)(`query { claimCollections(filter: {entity: {in: ${(0, exports.list)(entityDids)}}}) { nodes { id entity protocol admin payments } } }`)
81
94
  : null,
82
95
  admins.length > 0
83
- ? (0, gql_ts_1.gql)(`query { claimCollections(filter: {admin: {in: ${list(admins)}}}) { nodes { id entity protocol admin payments } } }`)
96
+ ? (0, gql_ts_1.gql)(`query { claimCollections(filter: {admin: {in: ${(0, exports.list)(admins)}}}) { nodes { id entity protocol admin payments } } }`)
84
97
  : null
85
98
  ]);
86
99
  const rows = [...new Map([...(posted?.claimCollections.nodes ?? []), ...(judged?.claimCollections.nodes ?? [])].map((row) => [String(row.id), row])).values()];
87
100
  if (rows.length === 0)
88
101
  return [];
89
- const [claims, names] = await Promise.all([
90
- (0, gql_ts_1.gql)(`query { claims(filter: {collectionId: {in: ${list(rows.map((row) => row.id))}}}, first: ${limit * 3}) {
102
+ const [claims, names, personal] = await Promise.all([
103
+ (0, gql_ts_1.gql)(`query { claims(filter: {collectionId: {in: ${(0, exports.list)(rows.map((row) => row.id))}}}, first: ${limit * 3}) {
91
104
  nodes { claimId collectionId agentAddress submissionDate evaluationByClaimId { status } }
92
105
  } }`),
93
106
  /* By the ask's entity — the protocol only ever equalled it on the old shape; see threads.ts. */
94
- (0, profiles_ts_1.entityNames)(rows.map((row) => row.entity)).catch(() => new Map())
107
+ (0, profiles_ts_1.entityNames)(rows.map((row) => row.entity)).catch(() => new Map()),
108
+ /* Every ask here that a person approves, however it was found (posted, judged): never ruled on chain from this queue. */
109
+ (0, gql_ts_1.gql)(`query { iids(filter: {id: {in: ${(0, exports.list)([...new Set(rows.map((row) => row.entity))])}}, linkedEntity: {contains: [{relationship: "approver"}]}}) { nodes { id linkedEntity } } }`)
95
110
  ]);
111
+ for (const row of personal.iids.nodes) {
112
+ const who = (0, exports.approverOf)(row);
113
+ if (who && !approvers.has(row.id))
114
+ approvers.set(row.id, who);
115
+ }
96
116
  const byId = new Map(rows.map((row) => [row.id, row]));
97
117
  return claims.claims.nodes
98
- .filter((claim) => !claim.evaluationByClaimId || claim.evaluationByClaimId.status === FLAGGED)
118
+ .filter((claim) => !claim.evaluationByClaimId || claim.evaluationByClaimId.status === exports.FLAGGED)
99
119
  .map((claim) => {
100
120
  const collection = byId.get(String(claim.collectionId));
101
121
  if (!collection)
@@ -109,11 +129,36 @@ async function waitingOn(address, limit = 40) {
109
129
  pays: (0, format_ts_1.approvalAmount)(collection.payments),
110
130
  admin: collection.admin,
111
131
  entityDid: collection.entity,
112
- why: claim.evaluationByClaimId?.status === FLAGGED ? "flagged" : "unjudged"
132
+ why: claim.evaluationByClaimId?.status === exports.FLAGGED ? "flagged" : "unjudged",
133
+ approver: approvers.get(collection.entity) ?? null,
134
+ protocol: collection.protocol
113
135
  };
114
136
  })
115
- .filter((waiting) => waiting !== null)
137
+ /* An ask a person approves waits on that person only. */
138
+ .filter((waiting) => waiting !== null && (!waiting.approver || waiting.approver === address))
116
139
  .sort((first, second) => (first.submittedAt ?? "").localeCompare(second.submittedAt ?? ""))
117
140
  .slice(0, limit);
118
141
  }
142
+ /**
143
+ * The asks this address posted that a person gives the final OK on (the deed's `approver` link): what its Me page
144
+ * keeps checking on for, silently (`ensureReviewing`). Open or recently ended ones only, newest first.
145
+ */
146
+ async function checkingAsksOf(address, now = Date.now()) {
147
+ if (!address)
148
+ return [];
149
+ const owned = await (0, gql_ts_1.gql)(`query { entities(filter: {owner: {equalTo: ${JSON.stringify(address)}}}, first: 60) { nodes { id } } }`);
150
+ const ids = owned.entities.nodes.map((entity) => entity.id);
151
+ if (ids.length === 0)
152
+ return [];
153
+ const linked = await (0, gql_ts_1.gql)(`query { iids(filter: {id: {in: ${(0, exports.list)(ids)}}, linkedEntity: {contains: [{relationship: "approver"}]}}) { nodes { id linkedEntity } } }`);
154
+ const approvers = new Map(linked.iids.nodes.map((row) => [row.id, (0, exports.approverOf)(row)]).filter((pair) => pair[1] !== null));
155
+ if (approvers.size === 0)
156
+ return [];
157
+ const collections = await (0, gql_ts_1.gql)(`query { claimCollections(filter: {entity: {in: ${(0, exports.list)([...approvers.keys()])}}}) { nodes { id entity endDate } } }`);
158
+ /* Two days past its end a grant would add nothing (personReview.ts `grantWindow`). */
159
+ return collections.claimCollections.nodes
160
+ .filter((row) => !row.endDate || Date.parse(`${row.endDate.replace(/Z?$/, "Z")}`) > now - 2 * 86_400_000)
161
+ .map((row) => ({ collectionId: String(row.id), approver: approvers.get(row.entity), endsAt: row.endDate ?? null }))
162
+ .sort((a, b) => Number(b.collectionId) - Number(a.collectionId));
163
+ }
119
164
  //# sourceMappingURL=queue.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"queue.js","sourceRoot":"","sources":["../../../src/data/queue.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"queue.js","sourceRoot":"","sources":["../../../src/data/queue.ts"],"names":[],"mappings":"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"}
@@ -44,6 +44,8 @@ export interface ReceiptData {
44
44
  doneMeansUrl?: string | null;
45
45
  /** Paid off chain by the org's facilitator (#payoutTerms). */
46
46
  payout?: PayoutTerms;
47
+ /** The person who gives the final OK (the ask's `approver` link), as an ixo1 address; absent when the checker decides. */
48
+ approver?: string | null;
47
49
  /** The org that backs `payout` (backingOrgOf): the collection's org (legacy), or the deed's two-sided requestedBy/request org (IXO shape). */
48
50
  payoutOrg?: string;
49
51
  /**
@@ -152,8 +154,25 @@ type Connection = {
152
154
  };
153
155
  /** What a paged answer says about where it stands. Exported for the tests. */
154
156
  export declare function pageFrom(request: ReceiptPageRequest, recent: Connection | undefined, waiting: Connection | undefined): ClaimsPage;
157
+ /**
158
+ * Next's data-cache hint for a receipt read: seconds, or 0 for none.
159
+ *
160
+ * The data cache answers a query it has seen with what it held last and
161
+ * refreshes behind it, however long ago that was. That is right for a page a
162
+ * crowd reads and wrong for "is my answer there": a query that names an
163
+ * answer or its author was often first asked before the answer existed, and
164
+ * then hands that copy back minutes later. On testnet #44101 (2026-10-21) an
165
+ * entrant's check_verdict was told "Nothing on #44101 yet" about an entry
166
+ * approved and paid, from a read made 22 minutes before it was filed, and the
167
+ * poster's read_ask showed "4 of 4 spots" an hour after the first was taken.
168
+ * A `fresh` read asks the index itself.
169
+ */
170
+ export declare const receiptRevalidate: (options: {
171
+ fresh?: boolean;
172
+ }) => number;
155
173
  export declare function loadReceipt(collectionId: string, options?: {
156
174
  claims?: ReceiptClaims;
175
+ fresh?: boolean;
157
176
  }): Promise<ReceiptData | null>;
158
177
  /**
159
178
  * One claim, by its id — the question a waiting submitter, a membership check