@ixo/openhands-sdk 0.4.1 → 0.6.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 (548) 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/funding.js +3 -3
  5. package/dist/cjs/campaign/funding.js.map +1 -1
  6. package/dist/cjs/campaign/spot.d.ts.map +1 -1
  7. package/dist/cjs/campaign/spot.js +2 -1
  8. package/dist/cjs/campaign/spot.js.map +1 -1
  9. package/dist/cjs/chain/ask.d.ts +72 -2
  10. package/dist/cjs/chain/ask.d.ts.map +1 -1
  11. package/dist/cjs/chain/ask.js +68 -34
  12. package/dist/cjs/chain/ask.js.map +1 -1
  13. package/dist/cjs/chain/broadcast.d.ts.map +1 -1
  14. package/dist/cjs/chain/broadcast.js +6 -4
  15. package/dist/cjs/chain/broadcast.js.map +1 -1
  16. package/dist/cjs/chain/claimVerdict.d.ts +26 -0
  17. package/dist/cjs/chain/claimVerdict.d.ts.map +1 -0
  18. package/dist/cjs/chain/claimVerdict.js +33 -0
  19. package/dist/cjs/chain/claimVerdict.js.map +1 -0
  20. package/dist/cjs/chain/delegate.d.ts +54 -13
  21. package/dist/cjs/chain/delegate.d.ts.map +1 -1
  22. package/dist/cjs/chain/delegate.js +77 -28
  23. package/dist/cjs/chain/delegate.js.map +1 -1
  24. package/dist/cjs/chain/entityShape.d.ts +2 -0
  25. package/dist/cjs/chain/entityShape.d.ts.map +1 -1
  26. package/dist/cjs/chain/entityShape.js +8 -1
  27. package/dist/cjs/chain/entityShape.js.map +1 -1
  28. package/dist/cjs/chain/env.d.ts +1 -0
  29. package/dist/cjs/chain/env.d.ts.map +1 -1
  30. package/dist/cjs/chain/env.js +9 -1
  31. package/dist/cjs/chain/env.js.map +1 -1
  32. package/dist/cjs/chain/inviteMessages.d.ts +224 -0
  33. package/dist/cjs/chain/inviteMessages.d.ts.map +1 -0
  34. package/dist/cjs/chain/inviteMessages.js +347 -0
  35. package/dist/cjs/chain/inviteMessages.js.map +1 -0
  36. package/dist/cjs/chain/inviteProof.d.ts +121 -0
  37. package/dist/cjs/chain/inviteProof.d.ts.map +1 -0
  38. package/dist/cjs/chain/inviteProof.js +297 -0
  39. package/dist/cjs/chain/inviteProof.js.map +1 -0
  40. package/dist/cjs/chain/lane.d.ts +148 -0
  41. package/dist/cjs/chain/lane.d.ts.map +1 -0
  42. package/dist/cjs/chain/lane.js +220 -0
  43. package/dist/cjs/chain/lane.js.map +1 -0
  44. package/dist/cjs/chain/money.d.ts +24 -17
  45. package/dist/cjs/chain/money.d.ts.map +1 -1
  46. package/dist/cjs/chain/money.js +28 -29
  47. package/dist/cjs/chain/money.js.map +1 -1
  48. package/dist/cjs/chain/oracle.d.ts +2 -0
  49. package/dist/cjs/chain/oracle.d.ts.map +1 -1
  50. package/dist/cjs/chain/oracle.js +1 -1
  51. package/dist/cjs/chain/oracle.js.map +1 -1
  52. package/dist/cjs/chain/orgReviewBilling.d.ts +1 -1
  53. package/dist/cjs/chain/orgReviewBilling.d.ts.map +1 -1
  54. package/dist/cjs/chain/orgReviewBilling.js +16 -15
  55. package/dist/cjs/chain/orgReviewBilling.js.map +1 -1
  56. package/dist/cjs/chain/payoutTerms.d.ts.map +1 -1
  57. package/dist/cjs/chain/payoutTerms.js +1 -1
  58. package/dist/cjs/chain/payoutTerms.js.map +1 -1
  59. package/dist/cjs/chain/personReview.d.ts +218 -0
  60. package/dist/cjs/chain/personReview.d.ts.map +1 -0
  61. package/dist/cjs/chain/personReview.js +379 -0
  62. package/dist/cjs/chain/personReview.js.map +1 -0
  63. package/dist/cjs/chain/postFee.d.ts +11 -0
  64. package/dist/cjs/chain/postFee.d.ts.map +1 -0
  65. package/dist/cjs/chain/postFee.js +14 -0
  66. package/dist/cjs/chain/postFee.js.map +1 -0
  67. package/dist/cjs/chain/query.d.ts +55 -2
  68. package/dist/cjs/chain/query.d.ts.map +1 -1
  69. package/dist/cjs/chain/query.js +144 -8
  70. package/dist/cjs/chain/query.js.map +1 -1
  71. package/dist/cjs/chain/reviewBilling.d.ts +3 -27
  72. package/dist/cjs/chain/reviewBilling.d.ts.map +1 -1
  73. package/dist/cjs/chain/reviewBilling.js +5 -112
  74. package/dist/cjs/chain/reviewBilling.js.map +1 -1
  75. package/dist/cjs/chain/rewardDenom.d.ts +6 -0
  76. package/dist/cjs/chain/rewardDenom.d.ts.map +1 -0
  77. package/dist/cjs/chain/rewardDenom.js +9 -0
  78. package/dist/cjs/chain/rewardDenom.js.map +1 -0
  79. package/dist/cjs/chain/sponsor.d.ts +1 -1
  80. package/dist/cjs/chain/sponsor.d.ts.map +1 -1
  81. package/dist/cjs/chain/sponsor.js +8 -4
  82. package/dist/cjs/chain/sponsor.js.map +1 -1
  83. package/dist/cjs/chain.d.ts +1 -1
  84. package/dist/cjs/chain.d.ts.map +1 -1
  85. package/dist/cjs/chain.js +5 -4
  86. package/dist/cjs/chain.js.map +1 -1
  87. package/dist/cjs/config.d.ts +12 -3
  88. package/dist/cjs/config.d.ts.map +1 -1
  89. package/dist/cjs/config.js +5 -1
  90. package/dist/cjs/config.js.map +1 -1
  91. package/dist/cjs/data/agent.d.ts +2 -0
  92. package/dist/cjs/data/agent.d.ts.map +1 -1
  93. package/dist/cjs/data/agent.js +1 -0
  94. package/dist/cjs/data/agent.js.map +1 -1
  95. package/dist/cjs/data/board/assemble.d.ts +7 -2
  96. package/dist/cjs/data/board/assemble.d.ts.map +1 -1
  97. package/dist/cjs/data/board/assemble.js +76 -10
  98. package/dist/cjs/data/board/assemble.js.map +1 -1
  99. package/dist/cjs/data/board/facts.d.ts +10 -0
  100. package/dist/cjs/data/board/facts.d.ts.map +1 -1
  101. package/dist/cjs/data/board/facts.js +14 -1
  102. package/dist/cjs/data/board/facts.js.map +1 -1
  103. package/dist/cjs/data/board/read.d.ts +46 -3
  104. package/dist/cjs/data/board/read.d.ts.map +1 -1
  105. package/dist/cjs/data/board/read.js +145 -9
  106. package/dist/cjs/data/board/read.js.map +1 -1
  107. package/dist/cjs/data/board/types.d.ts +82 -5
  108. package/dist/cjs/data/board/types.d.ts.map +1 -1
  109. package/dist/cjs/data/board/types.js +5 -3
  110. package/dist/cjs/data/board/types.js.map +1 -1
  111. package/dist/cjs/data/checkers.d.ts +169 -0
  112. package/dist/cjs/data/checkers.d.ts.map +1 -0
  113. package/dist/cjs/data/checkers.js +354 -0
  114. package/dist/cjs/data/checkers.js.map +1 -0
  115. package/dist/cjs/data/checkersRead.d.ts +58 -0
  116. package/dist/cjs/data/checkersRead.d.ts.map +1 -0
  117. package/dist/cjs/data/checkersRead.js +263 -0
  118. package/dist/cjs/data/checkersRead.js.map +1 -0
  119. package/dist/cjs/data/denoms.d.ts.map +1 -1
  120. package/dist/cjs/data/denoms.js +1 -0
  121. package/dist/cjs/data/denoms.js.map +1 -1
  122. package/dist/cjs/data/docUrls.d.ts +3 -0
  123. package/dist/cjs/data/docUrls.d.ts.map +1 -1
  124. package/dist/cjs/data/docUrls.js +12 -1
  125. package/dist/cjs/data/docUrls.js.map +1 -1
  126. package/dist/cjs/data/docs.d.ts +3 -1
  127. package/dist/cjs/data/docs.d.ts.map +1 -1
  128. package/dist/cjs/data/docs.js +15 -2
  129. package/dist/cjs/data/docs.js.map +1 -1
  130. package/dist/cjs/data/engine.d.ts.map +1 -1
  131. package/dist/cjs/data/engine.js +12 -5
  132. package/dist/cjs/data/engine.js.map +1 -1
  133. package/dist/cjs/data/engineUrl.js +1 -1
  134. package/dist/cjs/data/engineUrl.js.map +1 -1
  135. package/dist/cjs/data/envelope.d.ts +18 -0
  136. package/dist/cjs/data/envelope.d.ts.map +1 -1
  137. package/dist/cjs/data/envelope.js +16 -1
  138. package/dist/cjs/data/envelope.js.map +1 -1
  139. package/dist/cjs/data/format.d.ts +32 -10
  140. package/dist/cjs/data/format.d.ts.map +1 -1
  141. package/dist/cjs/data/format.js +62 -19
  142. package/dist/cjs/data/format.js.map +1 -1
  143. package/dist/cjs/data/index.d.ts +2 -2
  144. package/dist/cjs/data/index.d.ts.map +1 -1
  145. package/dist/cjs/data/index.js +2 -1
  146. package/dist/cjs/data/index.js.map +1 -1
  147. package/dist/cjs/data/install.d.ts +46 -49
  148. package/dist/cjs/data/install.d.ts.map +1 -1
  149. package/dist/cjs/data/install.js +62 -61
  150. package/dist/cjs/data/install.js.map +1 -1
  151. package/dist/cjs/data/money.d.ts +36 -0
  152. package/dist/cjs/data/money.d.ts.map +1 -0
  153. package/dist/cjs/data/money.js +95 -0
  154. package/dist/cjs/data/money.js.map +1 -0
  155. package/dist/cjs/data/openness.d.ts +17 -1
  156. package/dist/cjs/data/openness.d.ts.map +1 -1
  157. package/dist/cjs/data/openness.js +16 -26
  158. package/dist/cjs/data/openness.js.map +1 -1
  159. package/dist/cjs/data/queue.d.ts +26 -0
  160. package/dist/cjs/data/queue.d.ts.map +1 -1
  161. package/dist/cjs/data/queue.js +57 -12
  162. package/dist/cjs/data/queue.js.map +1 -1
  163. package/dist/cjs/data/receipt.d.ts +19 -0
  164. package/dist/cjs/data/receipt.d.ts.map +1 -1
  165. package/dist/cjs/data/receipt.js +22 -5
  166. package/dist/cjs/data/receipt.js.map +1 -1
  167. package/dist/cjs/data/sponsors.d.ts +94 -0
  168. package/dist/cjs/data/sponsors.d.ts.map +1 -0
  169. package/dist/cjs/data/sponsors.js +147 -0
  170. package/dist/cjs/data/sponsors.js.map +1 -0
  171. package/dist/cjs/data/threads.d.ts +4 -0
  172. package/dist/cjs/data/threads.d.ts.map +1 -1
  173. package/dist/cjs/data/threads.js +5 -1
  174. package/dist/cjs/data/threads.js.map +1 -1
  175. package/dist/cjs/data/traceWords.js +8 -8
  176. package/dist/cjs/data/traceWords.js.map +1 -1
  177. package/dist/cjs/data/types.d.ts +6 -1
  178. package/dist/cjs/data/types.d.ts.map +1 -1
  179. package/dist/cjs/data/types.js.map +1 -1
  180. package/dist/cjs/data/whyReceipt.d.ts.map +1 -1
  181. package/dist/cjs/data/whyReceipt.js +10 -1
  182. package/dist/cjs/data/whyReceipt.js.map +1 -1
  183. package/dist/cjs/data/work.d.ts +5 -0
  184. package/dist/cjs/data/work.d.ts.map +1 -1
  185. package/dist/cjs/data/work.js +11 -5
  186. package/dist/cjs/data/work.js.map +1 -1
  187. package/dist/cjs/discovery.d.ts +64 -0
  188. package/dist/cjs/discovery.d.ts.map +1 -0
  189. package/dist/cjs/discovery.js +85 -0
  190. package/dist/cjs/discovery.js.map +1 -0
  191. package/dist/cjs/envRead.d.ts +1 -1
  192. package/dist/cjs/envRead.d.ts.map +1 -1
  193. package/dist/cjs/envRead.js +2 -1
  194. package/dist/cjs/envRead.js.map +1 -1
  195. package/dist/cjs/given.d.ts +14 -0
  196. package/dist/cjs/given.d.ts.map +1 -1
  197. package/dist/cjs/given.js +14 -2
  198. package/dist/cjs/given.js.map +1 -1
  199. package/dist/cjs/network.d.ts +3 -1
  200. package/dist/cjs/network.d.ts.map +1 -1
  201. package/dist/cjs/network.js +11 -3
  202. package/dist/cjs/network.js.map +1 -1
  203. package/dist/cjs/rubric/bridge.d.ts +8 -0
  204. package/dist/cjs/rubric/bridge.d.ts.map +1 -1
  205. package/dist/cjs/rubric/bridge.js +107 -8
  206. package/dist/cjs/rubric/bridge.js.map +1 -1
  207. package/dist/cjs/rubric/call.d.ts +35 -8
  208. package/dist/cjs/rubric/call.d.ts.map +1 -1
  209. package/dist/cjs/rubric/call.js +62 -20
  210. package/dist/cjs/rubric/call.js.map +1 -1
  211. package/dist/cjs/rubric/callChecks.d.ts +14 -0
  212. package/dist/cjs/rubric/callChecks.d.ts.map +1 -0
  213. package/dist/cjs/rubric/callChecks.js +43 -0
  214. package/dist/cjs/rubric/callChecks.js.map +1 -0
  215. package/dist/cjs/rubric/callLimits.d.ts +28 -0
  216. package/dist/cjs/rubric/callLimits.d.ts.map +1 -0
  217. package/dist/cjs/rubric/callLimits.js +36 -0
  218. package/dist/cjs/rubric/callLimits.js.map +1 -0
  219. package/dist/cjs/rubric/callTag.d.ts +5 -0
  220. package/dist/cjs/rubric/callTag.d.ts.map +1 -0
  221. package/dist/cjs/rubric/callTag.js +17 -0
  222. package/dist/cjs/rubric/callTag.js.map +1 -0
  223. package/dist/cjs/rubric/compose.d.ts.map +1 -1
  224. package/dist/cjs/rubric/compose.js +5 -3
  225. package/dist/cjs/rubric/compose.js.map +1 -1
  226. package/dist/cjs/rubric/draft.d.ts +9 -1
  227. package/dist/cjs/rubric/draft.d.ts.map +1 -1
  228. package/dist/cjs/rubric/draft.js +25 -3
  229. package/dist/cjs/rubric/draft.js.map +1 -1
  230. package/dist/cjs/rubric/feeLine.d.ts +26 -0
  231. package/dist/cjs/rubric/feeLine.d.ts.map +1 -0
  232. package/dist/cjs/rubric/feeLine.js +46 -0
  233. package/dist/cjs/rubric/feeLine.js.map +1 -0
  234. package/dist/cjs/rubric/gateMet.d.ts +17 -0
  235. package/dist/cjs/rubric/gateMet.d.ts.map +1 -1
  236. package/dist/cjs/rubric/gateMet.js +36 -3
  237. package/dist/cjs/rubric/gateMet.js.map +1 -1
  238. package/dist/cjs/rubric/leg.js +3 -3
  239. package/dist/cjs/rubric/leg.js.map +1 -1
  240. package/dist/cjs/rubric/marketPlan.d.ts +2 -0
  241. package/dist/cjs/rubric/marketPlan.d.ts.map +1 -1
  242. package/dist/cjs/rubric/marketPlan.js.map +1 -1
  243. package/dist/cjs/rubric/planAsk.d.ts +23 -0
  244. package/dist/cjs/rubric/planAsk.d.ts.map +1 -0
  245. package/dist/cjs/rubric/planAsk.js +24 -0
  246. package/dist/cjs/rubric/planAsk.js.map +1 -0
  247. package/dist/cjs/rubric/report.d.ts +208 -0
  248. package/dist/cjs/rubric/report.d.ts.map +1 -0
  249. package/dist/cjs/rubric/report.js +411 -0
  250. package/dist/cjs/rubric/report.js.map +1 -0
  251. package/dist/cjs/rubric/reportLine.d.ts +31 -0
  252. package/dist/cjs/rubric/reportLine.d.ts.map +1 -0
  253. package/dist/cjs/rubric/reportLine.js +45 -0
  254. package/dist/cjs/rubric/reportLine.js.map +1 -0
  255. package/dist/cjs/rubric/reportTemplate.d.ts +30 -0
  256. package/dist/cjs/rubric/reportTemplate.d.ts.map +1 -0
  257. package/dist/cjs/rubric/reportTemplate.js +78 -0
  258. package/dist/cjs/rubric/reportTemplate.js.map +1 -0
  259. package/dist/cjs/rubric/share.d.ts +46 -0
  260. package/dist/cjs/rubric/share.d.ts.map +1 -0
  261. package/dist/cjs/rubric/share.js +65 -0
  262. package/dist/cjs/rubric/share.js.map +1 -0
  263. package/dist/cjs/rubric/terms.d.ts +89 -25
  264. package/dist/cjs/rubric/terms.d.ts.map +1 -1
  265. package/dist/cjs/rubric/terms.js +91 -29
  266. package/dist/cjs/rubric/terms.js.map +1 -1
  267. package/dist/cjs/verification/profile.d.ts +28 -0
  268. package/dist/cjs/verification/profile.d.ts.map +1 -0
  269. package/dist/cjs/verification/profile.js +126 -0
  270. package/dist/cjs/verification/profile.js.map +1 -0
  271. package/dist/cjs/verification/schema.d.ts +54 -0
  272. package/dist/cjs/verification/schema.d.ts.map +1 -0
  273. package/dist/cjs/verification/schema.js +49 -0
  274. package/dist/cjs/verification/schema.js.map +1 -0
  275. package/dist/esm/campaign/cleanup.js +1 -1
  276. package/dist/esm/campaign/cleanup.js.map +1 -1
  277. package/dist/esm/campaign/funding.js +3 -3
  278. package/dist/esm/campaign/funding.js.map +1 -1
  279. package/dist/esm/campaign/spot.d.ts.map +1 -1
  280. package/dist/esm/campaign/spot.js +2 -1
  281. package/dist/esm/campaign/spot.js.map +1 -1
  282. package/dist/esm/chain/ask.d.ts +72 -2
  283. package/dist/esm/chain/ask.d.ts.map +1 -1
  284. package/dist/esm/chain/ask.js +69 -36
  285. package/dist/esm/chain/ask.js.map +1 -1
  286. package/dist/esm/chain/broadcast.d.ts.map +1 -1
  287. package/dist/esm/chain/broadcast.js +7 -5
  288. package/dist/esm/chain/broadcast.js.map +1 -1
  289. package/dist/esm/chain/claimVerdict.d.ts +26 -0
  290. package/dist/esm/chain/claimVerdict.d.ts.map +1 -0
  291. package/dist/esm/chain/claimVerdict.js +30 -0
  292. package/dist/esm/chain/claimVerdict.js.map +1 -0
  293. package/dist/esm/chain/delegate.d.ts +54 -13
  294. package/dist/esm/chain/delegate.d.ts.map +1 -1
  295. package/dist/esm/chain/delegate.js +69 -27
  296. package/dist/esm/chain/delegate.js.map +1 -1
  297. package/dist/esm/chain/entityShape.d.ts +2 -0
  298. package/dist/esm/chain/entityShape.d.ts.map +1 -1
  299. package/dist/esm/chain/entityShape.js +6 -0
  300. package/dist/esm/chain/entityShape.js.map +1 -1
  301. package/dist/esm/chain/env.d.ts +1 -0
  302. package/dist/esm/chain/env.d.ts.map +1 -1
  303. package/dist/esm/chain/env.js +7 -0
  304. package/dist/esm/chain/env.js.map +1 -1
  305. package/dist/esm/chain/inviteMessages.d.ts +224 -0
  306. package/dist/esm/chain/inviteMessages.d.ts.map +1 -0
  307. package/dist/esm/chain/inviteMessages.js +296 -0
  308. package/dist/esm/chain/inviteMessages.js.map +1 -0
  309. package/dist/esm/chain/inviteProof.d.ts +121 -0
  310. package/dist/esm/chain/inviteProof.d.ts.map +1 -0
  311. package/dist/esm/chain/inviteProof.js +278 -0
  312. package/dist/esm/chain/inviteProof.js.map +1 -0
  313. package/dist/esm/chain/lane.d.ts +148 -0
  314. package/dist/esm/chain/lane.d.ts.map +1 -0
  315. package/dist/esm/chain/lane.js +170 -0
  316. package/dist/esm/chain/lane.js.map +1 -0
  317. package/dist/esm/chain/money.d.ts +24 -17
  318. package/dist/esm/chain/money.d.ts.map +1 -1
  319. package/dist/esm/chain/money.js +34 -25
  320. package/dist/esm/chain/money.js.map +1 -1
  321. package/dist/esm/chain/oracle.d.ts +2 -0
  322. package/dist/esm/chain/oracle.d.ts.map +1 -1
  323. package/dist/esm/chain/oracle.js +1 -1
  324. package/dist/esm/chain/oracle.js.map +1 -1
  325. package/dist/esm/chain/orgReviewBilling.d.ts +1 -1
  326. package/dist/esm/chain/orgReviewBilling.d.ts.map +1 -1
  327. package/dist/esm/chain/orgReviewBilling.js +16 -15
  328. package/dist/esm/chain/orgReviewBilling.js.map +1 -1
  329. package/dist/esm/chain/payoutTerms.d.ts.map +1 -1
  330. package/dist/esm/chain/payoutTerms.js +1 -1
  331. package/dist/esm/chain/payoutTerms.js.map +1 -1
  332. package/dist/esm/chain/personReview.d.ts +218 -0
  333. package/dist/esm/chain/personReview.d.ts.map +1 -0
  334. package/dist/esm/chain/personReview.js +322 -0
  335. package/dist/esm/chain/personReview.js.map +1 -0
  336. package/dist/esm/chain/postFee.d.ts +11 -0
  337. package/dist/esm/chain/postFee.d.ts.map +1 -0
  338. package/dist/esm/chain/postFee.js +11 -0
  339. package/dist/esm/chain/postFee.js.map +1 -0
  340. package/dist/esm/chain/query.d.ts +55 -2
  341. package/dist/esm/chain/query.d.ts.map +1 -1
  342. package/dist/esm/chain/query.js +136 -8
  343. package/dist/esm/chain/query.js.map +1 -1
  344. package/dist/esm/chain/reviewBilling.d.ts +3 -27
  345. package/dist/esm/chain/reviewBilling.d.ts.map +1 -1
  346. package/dist/esm/chain/reviewBilling.js +5 -108
  347. package/dist/esm/chain/reviewBilling.js.map +1 -1
  348. package/dist/esm/chain/rewardDenom.d.ts +6 -0
  349. package/dist/esm/chain/rewardDenom.d.ts.map +1 -0
  350. package/dist/esm/chain/rewardDenom.js +5 -0
  351. package/dist/esm/chain/rewardDenom.js.map +1 -0
  352. package/dist/esm/chain/sponsor.d.ts +1 -1
  353. package/dist/esm/chain/sponsor.d.ts.map +1 -1
  354. package/dist/esm/chain/sponsor.js +8 -4
  355. package/dist/esm/chain/sponsor.js.map +1 -1
  356. package/dist/esm/chain.d.ts +1 -1
  357. package/dist/esm/chain.d.ts.map +1 -1
  358. package/dist/esm/chain.js +1 -1
  359. package/dist/esm/chain.js.map +1 -1
  360. package/dist/esm/config.d.ts +12 -3
  361. package/dist/esm/config.d.ts.map +1 -1
  362. package/dist/esm/config.js +6 -2
  363. package/dist/esm/config.js.map +1 -1
  364. package/dist/esm/data/agent.d.ts +2 -0
  365. package/dist/esm/data/agent.d.ts.map +1 -1
  366. package/dist/esm/data/agent.js +1 -0
  367. package/dist/esm/data/agent.js.map +1 -1
  368. package/dist/esm/data/board/assemble.d.ts +7 -2
  369. package/dist/esm/data/board/assemble.d.ts.map +1 -1
  370. package/dist/esm/data/board/assemble.js +73 -9
  371. package/dist/esm/data/board/assemble.js.map +1 -1
  372. package/dist/esm/data/board/facts.d.ts +10 -0
  373. package/dist/esm/data/board/facts.d.ts.map +1 -1
  374. package/dist/esm/data/board/facts.js +13 -1
  375. package/dist/esm/data/board/facts.js.map +1 -1
  376. package/dist/esm/data/board/read.d.ts +46 -3
  377. package/dist/esm/data/board/read.d.ts.map +1 -1
  378. package/dist/esm/data/board/read.js +143 -10
  379. package/dist/esm/data/board/read.js.map +1 -1
  380. package/dist/esm/data/board/types.d.ts +82 -5
  381. package/dist/esm/data/board/types.d.ts.map +1 -1
  382. package/dist/esm/data/board/types.js +5 -3
  383. package/dist/esm/data/board/types.js.map +1 -1
  384. package/dist/esm/data/checkers.d.ts +169 -0
  385. package/dist/esm/data/checkers.d.ts.map +1 -0
  386. package/dist/esm/data/checkers.js +304 -0
  387. package/dist/esm/data/checkers.js.map +1 -0
  388. package/dist/esm/data/checkersRead.d.ts +58 -0
  389. package/dist/esm/data/checkersRead.d.ts.map +1 -0
  390. package/dist/esm/data/checkersRead.js +252 -0
  391. package/dist/esm/data/checkersRead.js.map +1 -0
  392. package/dist/esm/data/denoms.d.ts.map +1 -1
  393. package/dist/esm/data/denoms.js +1 -0
  394. package/dist/esm/data/denoms.js.map +1 -1
  395. package/dist/esm/data/docUrls.d.ts +3 -0
  396. package/dist/esm/data/docUrls.d.ts.map +1 -1
  397. package/dist/esm/data/docUrls.js +9 -0
  398. package/dist/esm/data/docUrls.js.map +1 -1
  399. package/dist/esm/data/docs.d.ts +3 -1
  400. package/dist/esm/data/docs.d.ts.map +1 -1
  401. package/dist/esm/data/docs.js +15 -2
  402. package/dist/esm/data/docs.js.map +1 -1
  403. package/dist/esm/data/engine.d.ts.map +1 -1
  404. package/dist/esm/data/engine.js +12 -5
  405. package/dist/esm/data/engine.js.map +1 -1
  406. package/dist/esm/data/engineUrl.js +2 -2
  407. package/dist/esm/data/engineUrl.js.map +1 -1
  408. package/dist/esm/data/envelope.d.ts +18 -0
  409. package/dist/esm/data/envelope.d.ts.map +1 -1
  410. package/dist/esm/data/envelope.js +14 -0
  411. package/dist/esm/data/envelope.js.map +1 -1
  412. package/dist/esm/data/format.d.ts +32 -10
  413. package/dist/esm/data/format.d.ts.map +1 -1
  414. package/dist/esm/data/format.js +58 -18
  415. package/dist/esm/data/format.js.map +1 -1
  416. package/dist/esm/data/index.d.ts +2 -2
  417. package/dist/esm/data/index.d.ts.map +1 -1
  418. package/dist/esm/data/index.js +1 -1
  419. package/dist/esm/data/index.js.map +1 -1
  420. package/dist/esm/data/install.d.ts +46 -49
  421. package/dist/esm/data/install.d.ts.map +1 -1
  422. package/dist/esm/data/install.js +58 -60
  423. package/dist/esm/data/install.js.map +1 -1
  424. package/dist/esm/data/money.d.ts +36 -0
  425. package/dist/esm/data/money.d.ts.map +1 -0
  426. package/dist/esm/data/money.js +90 -0
  427. package/dist/esm/data/money.js.map +1 -0
  428. package/dist/esm/data/openness.d.ts +17 -1
  429. package/dist/esm/data/openness.d.ts.map +1 -1
  430. package/dist/esm/data/openness.js +16 -26
  431. package/dist/esm/data/openness.js.map +1 -1
  432. package/dist/esm/data/queue.d.ts +26 -0
  433. package/dist/esm/data/queue.d.ts.map +1 -1
  434. package/dist/esm/data/queue.js +50 -9
  435. package/dist/esm/data/queue.js.map +1 -1
  436. package/dist/esm/data/receipt.d.ts +19 -0
  437. package/dist/esm/data/receipt.d.ts.map +1 -1
  438. package/dist/esm/data/receipt.js +20 -4
  439. package/dist/esm/data/receipt.js.map +1 -1
  440. package/dist/esm/data/sponsors.d.ts +94 -0
  441. package/dist/esm/data/sponsors.d.ts.map +1 -0
  442. package/dist/esm/data/sponsors.js +137 -0
  443. package/dist/esm/data/sponsors.js.map +1 -0
  444. package/dist/esm/data/threads.d.ts +4 -0
  445. package/dist/esm/data/threads.d.ts.map +1 -1
  446. package/dist/esm/data/threads.js +6 -2
  447. package/dist/esm/data/threads.js.map +1 -1
  448. package/dist/esm/data/traceWords.js +8 -8
  449. package/dist/esm/data/traceWords.js.map +1 -1
  450. package/dist/esm/data/types.d.ts +6 -1
  451. package/dist/esm/data/types.d.ts.map +1 -1
  452. package/dist/esm/data/types.js.map +1 -1
  453. package/dist/esm/data/whyReceipt.d.ts.map +1 -1
  454. package/dist/esm/data/whyReceipt.js +10 -1
  455. package/dist/esm/data/whyReceipt.js.map +1 -1
  456. package/dist/esm/data/work.d.ts +5 -0
  457. package/dist/esm/data/work.d.ts.map +1 -1
  458. package/dist/esm/data/work.js +11 -5
  459. package/dist/esm/data/work.js.map +1 -1
  460. package/dist/esm/discovery.d.ts +64 -0
  461. package/dist/esm/discovery.d.ts.map +1 -0
  462. package/dist/esm/discovery.js +74 -0
  463. package/dist/esm/discovery.js.map +1 -0
  464. package/dist/esm/envRead.d.ts +1 -1
  465. package/dist/esm/envRead.d.ts.map +1 -1
  466. package/dist/esm/envRead.js +1 -1
  467. package/dist/esm/envRead.js.map +1 -1
  468. package/dist/esm/given.d.ts +14 -0
  469. package/dist/esm/given.d.ts.map +1 -1
  470. package/dist/esm/given.js +11 -1
  471. package/dist/esm/given.js.map +1 -1
  472. package/dist/esm/network.d.ts +3 -1
  473. package/dist/esm/network.d.ts.map +1 -1
  474. package/dist/esm/network.js +10 -3
  475. package/dist/esm/network.js.map +1 -1
  476. package/dist/esm/rubric/bridge.d.ts +8 -0
  477. package/dist/esm/rubric/bridge.d.ts.map +1 -1
  478. package/dist/esm/rubric/bridge.js +105 -7
  479. package/dist/esm/rubric/bridge.js.map +1 -1
  480. package/dist/esm/rubric/call.d.ts +35 -8
  481. package/dist/esm/rubric/call.d.ts.map +1 -1
  482. package/dist/esm/rubric/call.js +57 -16
  483. package/dist/esm/rubric/call.js.map +1 -1
  484. package/dist/esm/rubric/callChecks.d.ts +14 -0
  485. package/dist/esm/rubric/callChecks.d.ts.map +1 -0
  486. package/dist/esm/rubric/callChecks.js +36 -0
  487. package/dist/esm/rubric/callChecks.js.map +1 -0
  488. package/dist/esm/rubric/callLimits.d.ts +28 -0
  489. package/dist/esm/rubric/callLimits.d.ts.map +1 -0
  490. package/dist/esm/rubric/callLimits.js +33 -0
  491. package/dist/esm/rubric/callLimits.js.map +1 -0
  492. package/dist/esm/rubric/callTag.d.ts +5 -0
  493. package/dist/esm/rubric/callTag.d.ts.map +1 -0
  494. package/dist/esm/rubric/callTag.js +12 -0
  495. package/dist/esm/rubric/callTag.js.map +1 -0
  496. package/dist/esm/rubric/compose.d.ts.map +1 -1
  497. package/dist/esm/rubric/compose.js +5 -3
  498. package/dist/esm/rubric/compose.js.map +1 -1
  499. package/dist/esm/rubric/draft.d.ts +9 -1
  500. package/dist/esm/rubric/draft.d.ts.map +1 -1
  501. package/dist/esm/rubric/draft.js +24 -3
  502. package/dist/esm/rubric/draft.js.map +1 -1
  503. package/dist/esm/rubric/feeLine.d.ts +26 -0
  504. package/dist/esm/rubric/feeLine.d.ts.map +1 -0
  505. package/dist/esm/rubric/feeLine.js +42 -0
  506. package/dist/esm/rubric/feeLine.js.map +1 -0
  507. package/dist/esm/rubric/gateMet.d.ts +17 -0
  508. package/dist/esm/rubric/gateMet.d.ts.map +1 -1
  509. package/dist/esm/rubric/gateMet.js +34 -2
  510. package/dist/esm/rubric/gateMet.js.map +1 -1
  511. package/dist/esm/rubric/leg.js +4 -4
  512. package/dist/esm/rubric/leg.js.map +1 -1
  513. package/dist/esm/rubric/marketPlan.d.ts +2 -0
  514. package/dist/esm/rubric/marketPlan.d.ts.map +1 -1
  515. package/dist/esm/rubric/marketPlan.js.map +1 -1
  516. package/dist/esm/rubric/planAsk.d.ts +23 -0
  517. package/dist/esm/rubric/planAsk.d.ts.map +1 -0
  518. package/dist/esm/rubric/planAsk.js +20 -0
  519. package/dist/esm/rubric/planAsk.js.map +1 -0
  520. package/dist/esm/rubric/report.d.ts +208 -0
  521. package/dist/esm/rubric/report.d.ts.map +1 -0
  522. package/dist/esm/rubric/report.js +398 -0
  523. package/dist/esm/rubric/report.js.map +1 -0
  524. package/dist/esm/rubric/reportLine.d.ts +31 -0
  525. package/dist/esm/rubric/reportLine.d.ts.map +1 -0
  526. package/dist/esm/rubric/reportLine.js +40 -0
  527. package/dist/esm/rubric/reportLine.js.map +1 -0
  528. package/dist/esm/rubric/reportTemplate.d.ts +30 -0
  529. package/dist/esm/rubric/reportTemplate.d.ts.map +1 -0
  530. package/dist/esm/rubric/reportTemplate.js +74 -0
  531. package/dist/esm/rubric/reportTemplate.js.map +1 -0
  532. package/dist/esm/rubric/share.d.ts +46 -0
  533. package/dist/esm/rubric/share.d.ts.map +1 -0
  534. package/dist/esm/rubric/share.js +58 -0
  535. package/dist/esm/rubric/share.js.map +1 -0
  536. package/dist/esm/rubric/terms.d.ts +89 -25
  537. package/dist/esm/rubric/terms.d.ts.map +1 -1
  538. package/dist/esm/rubric/terms.js +83 -25
  539. package/dist/esm/rubric/terms.js.map +1 -1
  540. package/dist/esm/verification/profile.d.ts +28 -0
  541. package/dist/esm/verification/profile.d.ts.map +1 -0
  542. package/dist/esm/verification/profile.js +122 -0
  543. package/dist/esm/verification/profile.js.map +1 -0
  544. package/dist/esm/verification/schema.d.ts +54 -0
  545. package/dist/esm/verification/schema.d.ts.map +1 -0
  546. package/dist/esm/verification/schema.js +46 -0
  547. package/dist/esm/verification/schema.js.map +1 -0
  548. package/package.json +22 -2
@@ -0,0 +1,74 @@
1
+ /**
2
+ * The review report template a specialist sees before handing in an Expert Review (2026-10-26, the Asky Checker
3
+ * round): the same six checks the review is held to (`REVIEW_CHECKS`, written as rules in call.ts `REVIEW_LINES`,
4
+ * the report line and the bridge's machine gates), as the sections of one report.
5
+ *
6
+ * One source for every place that shows it — the Experts app's submit page, the MCP's submit and read guidance, and
7
+ * the asks plugin's `report` skill — so no two can drift. Each section names the `openhands-report/1` field it fills
8
+ * (report.ts), so the written report and the structured one are the same report. Plain strings, no imports: it rides
9
+ * into the browser.
10
+ */
11
+ /** The six checks, in plain words: what the checker looks at, and what the person giving the final OK weighs. */
12
+ export const REVIEW_CHECKS = [
13
+ "It covers the ask's scenarios (or steps)",
14
+ "Every finding has evidence: a screenshot, recording or trace",
15
+ "Every problem says how to reproduce it",
16
+ "Every problem has a severity: blocker, major or minor",
17
+ "Every recommendation says what to change",
18
+ "The limitations are stated"
19
+ ];
20
+ /** What is refused outright; everything else goes to the ask's owner for the final OK. */
21
+ export const REVIEW_REFUSED = "A report is turned down by the checker only when it is clearly not one: no report, a report of something other than this ask, or no evidence at all. Anything else goes to the ask's owner, who gives the final OK before you are paid.";
22
+ export const REVIEW_REPORT_SECTIONS = [
23
+ {
24
+ title: "What was tested",
25
+ field: "summary",
26
+ items: [
27
+ { say: "The ask and what you reviewed", field: "summary.product" },
28
+ { say: "The version or build", field: "summary.build" },
29
+ { say: "Where: environment, URL, device, build", field: "summary.environment" },
30
+ { say: "The scenarios you covered", field: "summary.scope" },
31
+ { say: "The date", field: "summary.date" },
32
+ { say: "The outcome, in one sentence", field: "summary.outcome" }
33
+ ]
34
+ },
35
+ {
36
+ title: "Steps",
37
+ field: "steps",
38
+ items: [{ say: "One per scenario or step: what you did, what you expected, what you observed", field: "what, expected, observed" }, { say: "Its result: passed, failed, blocked or not tested", field: "result: passed, failed, blocked, not_tested" }]
39
+ },
40
+ {
41
+ title: "Findings",
42
+ field: "findings",
43
+ items: [
44
+ { say: "Each problem: what happened", field: "title, observed, expected" },
45
+ { say: "Its evidence: a screenshot, recording or trace, attached and named", field: "evidence" },
46
+ { say: "How to reproduce it (a blocker you cannot reproduce says what is missing)", field: "how_to_reproduce, cannot_reproduce" },
47
+ { say: "Its severity, blocker, major or minor, and why", field: "severity, severity_why" },
48
+ { say: "Its impact on the person using it", field: "impact" }
49
+ ]
50
+ },
51
+ {
52
+ title: "Recommendations",
53
+ field: "recommendations",
54
+ items: [{ say: "Each: what to change", field: "text" }, { say: "Its priority: high, medium or low", field: "priority" }, { say: "How to tell it is done", field: "done_when" }]
55
+ },
56
+ {
57
+ title: "Limitations",
58
+ field: "limitations",
59
+ items: [{ say: "What you could not test, and why the result may not hold", field: "limitations" }]
60
+ }
61
+ ];
62
+ /** The template as plain text: headings and bullets, for the MCP's guidance and the plugin's skill. */
63
+ export function reviewReportTemplate(options = {}) {
64
+ return [
65
+ "Review report",
66
+ "",
67
+ ...REVIEW_REPORT_SECTIONS.flatMap((section) => [`## ${section.title}`, ...section.items.map((item) => `- ${item.say}${options.fields && item.field ? ` (${item.field})` : ""}`), ""]),
68
+ "What the checker looks at:",
69
+ ...REVIEW_CHECKS.map((check, index) => `${index + 1}. ${check}`),
70
+ "",
71
+ REVIEW_REFUSED
72
+ ].join("\n");
73
+ }
74
+ //# sourceMappingURL=reportTemplate.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"reportTemplate.js","sourceRoot":"","sources":["../../../src/rubric/reportTemplate.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,46 @@
1
+ /**
2
+ * The network's share on private calls (docs/verified-work-fee-split-plan.md):
3
+ * which terms carry it, and the leg that leaves the quoted amount with the
4
+ * person after the chain's split.
5
+ *
6
+ * Its own module, with no imports, rather than inside `terms.ts`: the posting
7
+ * path (`chain/ask.ts`) asks it, and a page loads that path lazily. Were these
8
+ * lines in `terms.ts`, that lazy use would keep them in the vocabulary chunk
9
+ * every page's first load carries. `terms.ts` re-exports them, so readers
10
+ * import them from the terms like everything else.
11
+ */
12
+ /** A private ask: by invitation or by application, and every review (a review is a hire by invitation). */
13
+ export declare function isPrivateTerms(terms: unknown): boolean;
14
+ /**
15
+ * A private call: by invitation or by application, and every review. Its
16
+ * approval leg carries the network's share — the chain's own split
17
+ * (`isOraclePayment`), never a fee of ours. A call open to anyone, and every
18
+ * ask that is not a call, public or private, carries none
19
+ * (docs/verified-work-fee-split-plan.md, D1).
20
+ */
21
+ export declare const sharedCall: (terms: unknown) => boolean;
22
+ /** The chain's split of a shared approval, in whole percent: to the network (`params.ixoAccount`) and to the relayer node. */
23
+ export interface FeeSplit {
24
+ network: number;
25
+ node: number;
26
+ }
27
+ /**
28
+ * The leg whose chain split leaves at least `net` with the person: the
29
+ * smallest that covers it at the split's full rate.
30
+ *
31
+ * The poster quotes what the person receives and the leg is grossed up to it
32
+ * (D2), so the share is added on top and never taken off an agreed rate. The
33
+ * chain truncates both shares and pays the dust to the receiver, so with
34
+ * `A = ceil(Q / (1 − r))` the person gets `A − floor(A·n) − floor(A·m) ≥ A(1 − r) ≥ Q`.
35
+ * Whole base units in, whole base units out, in integers (a float quotient a
36
+ * hair under its true value would short the person a unit); a 0/0 split is the
37
+ * quote itself.
38
+ */
39
+ export declare const grossFor: (net: number, split: FeeSplit) => number;
40
+ /**
41
+ * What the person receives from a shared leg: the chain's own arithmetic —
42
+ * each share truncated, the receiver paid the rest — so a page can say the
43
+ * exact amount that lands rather than the quote it is at least.
44
+ */
45
+ export declare const netOf: (leg: number, split: FeeSplit) => number;
46
+ //# sourceMappingURL=share.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"share.d.ts","sourceRoot":"","sources":["../../../src/rubric/share.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAEH,2GAA2G;AAC3G,wBAAgB,cAAc,CAAC,KAAK,EAAE,OAAO,GAAG,OAAO,CAGtD;AAED;;;;;;GAMG;AACH,eAAO,MAAM,UAAU,GAAI,OAAO,OAAO,KAAG,OAAmG,CAAC;AAEhJ,8HAA8H;AAC9H,MAAM,WAAW,QAAQ;IACvB,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,EAAE,MAAM,CAAC;CACd;AAED;;;;;;;;;;;GAWG;AACH,eAAO,MAAM,QAAQ,GAAI,KAAK,MAAM,EAAE,OAAO,QAAQ,KAAG,MAQvD,CAAC;AAEF;;;;GAIG;AACH,eAAO,MAAM,KAAK,GAAI,KAAK,MAAM,EAAE,OAAO,QAAQ,KAAG,MAIpD,CAAC"}
@@ -0,0 +1,58 @@
1
+ /**
2
+ * The network's share on private calls (docs/verified-work-fee-split-plan.md):
3
+ * which terms carry it, and the leg that leaves the quoted amount with the
4
+ * person after the chain's split.
5
+ *
6
+ * Its own module, with no imports, rather than inside `terms.ts`: the posting
7
+ * path (`chain/ask.ts`) asks it, and a page loads that path lazily. Were these
8
+ * lines in `terms.ts`, that lazy use would keep them in the vocabulary chunk
9
+ * every page's first load carries. `terms.ts` re-exports them, so readers
10
+ * import them from the terms like everything else.
11
+ */
12
+ /** A private ask: by invitation or by application, and every review (a review is a hire by invitation). */
13
+ export function isPrivateTerms(terms) {
14
+ const doc = terms;
15
+ return doc?.access === "invite" || doc?.access === "apply" || doc?.call?.kind === "review";
16
+ }
17
+ /**
18
+ * A private call: by invitation or by application, and every review. Its
19
+ * approval leg carries the network's share — the chain's own split
20
+ * (`isOraclePayment`), never a fee of ours. A call open to anyone, and every
21
+ * ask that is not a call, public or private, carries none
22
+ * (docs/verified-work-fee-split-plan.md, D1).
23
+ */
24
+ export const sharedCall = (terms) => Boolean(terms?.call) && isPrivateTerms(terms);
25
+ /**
26
+ * The leg whose chain split leaves at least `net` with the person: the
27
+ * smallest that covers it at the split's full rate.
28
+ *
29
+ * The poster quotes what the person receives and the leg is grossed up to it
30
+ * (D2), so the share is added on top and never taken off an agreed rate. The
31
+ * chain truncates both shares and pays the dust to the receiver, so with
32
+ * `A = ceil(Q / (1 − r))` the person gets `A − floor(A·n) − floor(A·m) ≥ A(1 − r) ≥ Q`.
33
+ * Whole base units in, whole base units out, in integers (a float quotient a
34
+ * hair under its true value would short the person a unit); a 0/0 split is the
35
+ * quote itself.
36
+ */
37
+ export const grossFor = (net, split) => {
38
+ /* The rate in parts per million, rounded up: the chain's own percentages are decimals, and rounding them down could short the person. */
39
+ const PPM = 1000000n;
40
+ const rate = BigInt(Math.ceil((split.network + split.node) * 10_000));
41
+ if (rate <= 0n)
42
+ return net;
43
+ if (rate >= PPM)
44
+ throw new Error("the split leaves nothing for the person");
45
+ const keep = PPM - rate;
46
+ return Number((BigInt(net) * PPM + keep - 1n) / keep);
47
+ };
48
+ /**
49
+ * What the person receives from a shared leg: the chain's own arithmetic —
50
+ * each share truncated, the receiver paid the rest — so a page can say the
51
+ * exact amount that lands rather than the quote it is at least.
52
+ */
53
+ export const netOf = (leg, split) => {
54
+ /* Each share in parts per million of the leg, truncated as the chain truncates it. */
55
+ const cut = (percent) => (BigInt(leg) * BigInt(Math.round(percent * 10_000))) / 1000000n;
56
+ return Number(BigInt(leg) - cut(split.network) - cut(split.node));
57
+ };
58
+ //# sourceMappingURL=share.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"share.js","sourceRoot":"","sources":["../../../src/rubric/share.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAEH,2GAA2G;AAC3G,MAAM,UAAU,cAAc,CAAC,KAAc;IAC3C,MAAM,GAAG,GAAG,KAAkF,CAAC;IAC/F,OAAO,GAAG,EAAE,MAAM,KAAK,QAAQ,IAAI,GAAG,EAAE,MAAM,KAAK,OAAO,IAAI,GAAG,EAAE,IAAI,EAAE,IAAI,KAAK,QAAQ,CAAC;AAC7F,CAAC;AAED;;;;;;GAMG;AACH,MAAM,CAAC,MAAM,UAAU,GAAG,CAAC,KAAc,EAAW,EAAE,CAAC,OAAO,CAAE,KAA+C,EAAE,IAAI,CAAC,IAAI,cAAc,CAAC,KAAK,CAAC,CAAC;AAQhJ;;;;;;;;;;;GAWG;AACH,MAAM,CAAC,MAAM,QAAQ,GAAG,CAAC,GAAW,EAAE,KAAe,EAAU,EAAE;IAC/D,yIAAyI;IACzI,MAAM,GAAG,GAAG,QAAU,CAAC;IACvB,MAAM,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,KAAK,CAAC,OAAO,GAAG,KAAK,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC,CAAC,CAAC;IACtE,IAAI,IAAI,IAAI,EAAE;QAAE,OAAO,GAAG,CAAC;IAC3B,IAAI,IAAI,IAAI,GAAG;QAAE,MAAM,IAAI,KAAK,CAAC,yCAAyC,CAAC,CAAC;IAC5E,MAAM,IAAI,GAAG,GAAG,GAAG,IAAI,CAAC;IACxB,OAAO,MAAM,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,GAAG,GAAG,GAAG,IAAI,GAAG,EAAE,CAAC,GAAG,IAAI,CAAC,CAAC;AACxD,CAAC,CAAC;AAEF;;;;GAIG;AACH,MAAM,CAAC,MAAM,KAAK,GAAG,CAAC,GAAW,EAAE,KAAe,EAAU,EAAE;IAC5D,sFAAsF;IACtF,MAAM,GAAG,GAAG,CAAC,OAAe,EAAU,EAAE,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,GAAG,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,GAAG,MAAM,CAAC,CAAC,CAAC,GAAG,QAAU,CAAC;IAC3G,OAAO,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,GAAG,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,GAAG,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC;AACpE,CAAC,CAAC"}
@@ -8,7 +8,10 @@
8
8
  * lived in ./verdict.ts until the oracle migration retired the in-repo checker;
9
9
  * the receipt shape it wrote survives in ./receipt.ts for the readers.
10
10
  */
11
+ import { REPORT_CHECK_ID, type ReportRequirement } from "./report.ts";
11
12
  import type { GeoBox } from "../geo/box.ts";
13
+ import { CALL_LIMITS } from "./callLimits.ts";
14
+ import type { FeeSplit } from "./share.ts";
12
15
  export type SkillId = "url-check" | "read" | "write" | "answer";
13
16
  export interface SkillMatch {
14
17
  skill: SkillId;
@@ -334,6 +337,18 @@ export interface AskTerms {
334
337
  * alone. Frozen at posting, like the campaign it sits beside.
335
338
  */
336
339
  plan?: string;
340
+ /**
341
+ * Who may answer (docs/verified-work-private-calls-thinking.md, §5).
342
+ *
343
+ * Absent, anyone the gate admits — every ask before this field existed.
344
+ * `apply`: listed, but an answer needs the poster's yes first (an
345
+ * application the poster decides). `invite`: not listed, and only the
346
+ * addresses the poster invited — by link, by address or by their page —
347
+ * are admitted. The gate holds the list; the chain holds this word, frozen
348
+ * with the money like the campaign tag, so a call cannot quietly become
349
+ * public or private after the first entry.
350
+ */
351
+ access?: AskAccess;
337
352
  /**
338
353
  * This ask is a site: cleared by several people, a patch at a time.
339
354
  *
@@ -451,6 +466,17 @@ export interface AskTerms {
451
466
  };
452
467
  criteria: Criterion[];
453
468
  judge: JudgeSpec;
469
+ /**
470
+ * The person who gives the final OK (an ixo1 address; the poster or anyone they name). The AI checks
471
+ * first and refuses what fails the basics; whatever passes is held at the oracle until this person
472
+ * answers the `attest` lines and "Approve this answer?" (the bridge's ReviewTasks). Absent: the AI decides.
473
+ */
474
+ approver?: string;
475
+ /**
476
+ * The answer is a review report (`openhands-report/1`, rubric/report.ts), structured or attached as a PDF; `sections`
477
+ * are the poster's extra required headings. The bridge adds the shape check; `withReport` adds the AI's line.
478
+ */
479
+ report?: ReportRequirement;
454
480
  /**
455
481
  * How the ask came: `"mcp"` when our MCP posted it for an agent
456
482
  * (docs/verified-work-marketplace-volume-plan.md, D1). The board says so
@@ -509,17 +535,53 @@ export type CallBlock = {
509
535
  };
510
536
  export declare const CALL_LEGS: readonly ["entries", "prize", "runnersUp"];
511
537
  export type CallLeg = (typeof CALL_LEGS)[number];
538
+ /** Who may answer an ask, when not everyone: by the poster's yes, or by the poster's list. */
539
+ export declare const ASK_ACCESS: readonly ["apply", "invite"];
540
+ export type AskAccess = (typeof ASK_ACCESS)[number];
541
+ /**
542
+ * What kind of call it is. Absent, a competition: the entries, the pick and
543
+ * the runners-up. `hire`: the entries alone — every entry that passes the
544
+ * lines is paid, up to the quota, and nobody is picked. "Hire five people at
545
+ * 20 USDC each for a review that passes the checks" is a hire.
546
+ */
547
+ export type CallMode = "hire";
548
+ /**
549
+ * What kind of call this is, beyond its legs. `review`: a review of an app or
550
+ * an agent by specialists (the Expert Reviews world, docs/verified-work-expert-
551
+ * reviews-plan.md): always a hire, never open to anyone, its entries handed in
552
+ * as review reports. Absent: an open call as every call before it was.
553
+ */
554
+ export type CallKind = "review";
555
+ /** What a review call reviews: the thing, its version, and where a specialist finds it. Private access goes in the invitation, never here. */
556
+ export interface CallSubject {
557
+ name: string;
558
+ version?: string;
559
+ where?: string;
560
+ }
561
+ /** The facilitator a pro ask was posted through, as the terms carry it: its slug in the registry, its name, its node on this network. */
562
+ export interface CallSponsor {
563
+ slug: string;
564
+ name: string;
565
+ node: string;
566
+ }
512
567
  export interface CallTerms {
513
568
  /** The call's own name, and its page's: `/opencall/<slug>`. */
514
569
  slug: string;
515
570
  leg: CallLeg;
571
+ /** `hire`: the entries leg is the whole call. Absent: a competition with a pick. */
572
+ mode?: CallMode;
573
+ /** `review`: specialists review the subject on the scenarios and hand in reports. */
574
+ kind?: CallKind;
575
+ subject?: CallSubject;
576
+ /** The scenarios a review tries, in order: one line each. */
577
+ scenarios?: string[];
516
578
  title: string;
517
579
  lede: string;
518
580
  /** Who posts it, as they want to be named. */
519
581
  poster: string;
520
582
  /** What each judged line is worth towards the score, in criteria order. */
521
583
  points: number[];
522
- /** Whole PAY, for the page; the chain is the truth. */
584
+ /** Whole PAY, for the page; the chain is the truth. What each person receives: on a private call the leg is more (`share`). */
523
585
  money: {
524
586
  prize: number;
525
587
  runnersN: number;
@@ -527,6 +589,22 @@ export interface CallTerms {
527
589
  entryEach: number;
528
590
  entryUpTo: number;
529
591
  };
592
+ /**
593
+ * A private call only (`sharedCall`): the chain's split of its approval leg
594
+ * when it was posted, in percent — to the network and to the relayer node.
595
+ * The leg was grossed up so each person keeps `money` (`grossFor`); with
596
+ * this a reader can say the leg, the share and what lands without a chain
597
+ * read. Absent on every other call, and on every call posted before it.
598
+ */
599
+ share?: FeeSplit;
600
+ /**
601
+ * A pro ask only: the facilitator the poster chose (code name `sponsor`),
602
+ * written into the terms so every
603
+ * reader names it without a registry read. `node` is the entity DID the
604
+ * ask's deed names as its relayer node, which earns the chain's node share.
605
+ * Absent on open calls, and on every call posted before it.
606
+ */
607
+ sponsor?: CallSponsor;
530
608
  /** ISO dates: entries close, the shortlist shows, the poster picks. */
531
609
  closes: string;
532
610
  drop: string;
@@ -539,30 +617,11 @@ export interface CallTerms {
539
617
  };
540
618
  blocks: CallBlock[];
541
619
  }
542
- /** A call's slug: what its page and its tag are named by. */
620
+ export { grossFor, isPrivateTerms, netOf, sharedCall, type FeeSplit } from "./share.ts";
621
+ /** A call's slug: what its page and its tag are named by. A sponsor's registry slug has the same shape. */
543
622
  export declare const CALL_SLUG: RegExp;
544
- /** The limits a call is read with, and written to. */
545
- export declare const CALL_LIMITS: {
546
- readonly title: 160;
547
- readonly lede: 500;
548
- readonly poster: 80;
549
- readonly blocks: 8;
550
- readonly paragraphs: 8;
551
- readonly paragraph: 1500;
552
- readonly url: 2048;
553
- readonly alt: 300;
554
- readonly caption: 300;
555
- readonly items: 6;
556
- readonly steps: 8;
557
- readonly stepTitle: 120;
558
- readonly stepText: 300;
559
- readonly source: 2000;
560
- readonly csv: 4000;
561
- readonly note: 300;
562
- readonly name: 120;
563
- readonly start: 1500;
564
- readonly lines: 5;
565
- };
623
+ /** The limits a call is read with, and written to: their own module (`callLimits.ts`), so a page that checks a call's words loads them without this vocabulary. */
624
+ export { CALL_LIMITS };
566
625
  export declare const DEFAULT_CONFIDENCE = 0.7;
567
626
  /**
568
627
  * A distance as a person says it: metres up to a kilometre, kilometres past
@@ -579,7 +638,8 @@ export declare const askSentence: (terms: AskTerms) => string;
579
638
  * An ask whose judge cannot rule on all of it is a trap: the chain allows
580
639
  * exactly one verdict per claim, so there is no "the oracle does its half and
581
640
  * the poster does the rest". Any `attest` criterion therefore forces the
582
- * poster to hold the pen.
641
+ * poster to hold the pen — unless the terms name an `approver`, whose answers
642
+ * the oracle folds into its one verdict.
583
643
  */
584
644
  export declare const requiresPoster: (terms: AskTerms) => boolean;
585
645
  /**
@@ -603,6 +663,10 @@ export declare function normalizeTerms(doc: DoneMeans | AskTerms): AskTerms;
603
663
  export declare function callOf(raw: unknown): {
604
664
  call: CallTerms;
605
665
  } | null;
666
+ export { REPORT_CHECK_ID };
667
+ export declare function withReport<T extends AskTerms>(terms: T, sections: readonly string[], rules?: {
668
+ v: 2;
669
+ }): T;
606
670
  export declare function parseTerms(value: unknown): AskTerms | null;
607
671
  /**
608
672
  * What an ask is asking for, read off its own sentence. The deliverable is
@@ -1 +1 @@
1
- {"version":3,"file":"terms.d.ts","sourceRoot":"","sources":["../../../src/rubric/terms.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"terms.d.ts","sourceRoot":"","sources":["../../../src/rubric/terms.ts"],"names":[],"mappings":"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"}
@@ -8,7 +8,11 @@
8
8
  * lived in ./verdict.ts until the oracle migration retired the in-repo checker;
9
9
  * the receipt shape it wrote survives in ./receipt.ts for the readers.
10
10
  */
11
+ /* Type only — erased at compile, so the geo package never reaches a browser
12
+ while a geo gate still describes itself in the terms a poster agreed to. */
13
+ import { REPORT_CHECK_ID, reportCheckText, requiredSections } from "./report.js";
11
14
  import { surveyOptionsProblem } from "./survey.js";
15
+ import { CALL_LIMITS } from "./callLimits.js";
12
16
  /** Evidence no text-only worker can produce: no camera, no hands, no address. */
13
17
  const PHYSICAL = /\b(photo|photograph|picture|snap|image of|screenshot|screen shot|selfie|video|film|scan|handwritten|sticky note|poster|in person|visit|go to|walk|drive|deliver|pick up|drop off|knock|doorstep|on ?site|meet|queue|shelf|receipt)\b/i;
14
18
  const URL_PATTERN = /\bhttps?:\/\/[^\s"'<>)]+|\b(?:[a-z0-9-]+\.)+(?:com|org|net|io|dev|app|earth|xyz|co|ai|me|so|sh|eu|uk|de)(?:\/[^\s"'<>)]*)?/i;
@@ -245,30 +249,16 @@ export const DELIVERABLE_TYPES = ["url", "text", "photo", "photo-pair", "mess-re
245
249
  */
246
250
  export const CLAIM_KINDS = ["patch", "site"];
247
251
  export const CALL_LEGS = ["entries", "prize", "runnersUp"];
248
- /** A call's slug: what its page and its tag are named by. */
252
+ /** Who may answer an ask, when not everyone: by the poster's yes, or by the poster's list. */
253
+ export const ASK_ACCESS = ["apply", "invite"];
254
+ /* Who is private, which calls carry the network's share, and the leg that covers it: beside the terms, in a module of their own (share.ts says why). */
255
+ export { grossFor, isPrivateTerms, netOf, sharedCall } from "./share.js";
256
+ /** A call's slug: what its page and its tag are named by. A sponsor's registry slug has the same shape. */
249
257
  export const CALL_SLUG = /^[a-z][a-z0-9-]{2,39}$/;
250
- /** The limits a call is read with, and written to. */
251
- export const CALL_LIMITS = {
252
- title: 160,
253
- lede: 500,
254
- poster: 80,
255
- blocks: 8,
256
- paragraphs: 8,
257
- paragraph: 1500,
258
- url: 2048,
259
- alt: 300,
260
- caption: 300,
261
- items: 6,
262
- steps: 8,
263
- stepTitle: 120,
264
- stepText: 300,
265
- source: 2000,
266
- csv: 4000,
267
- note: 300,
268
- name: 120,
269
- start: 1500,
270
- lines: 5
271
- };
258
+ /* An entity DID, as `chain/entityShape.ts` `isEntityDid` reads one; repeated so the vocabulary chunk loads no chain module. */
259
+ const ENTITY_DID = /^did:ixo:entity:[0-9a-f]{32}$/;
260
+ /** The limits a call is read with, and written to: their own module (`callLimits.ts`), so a page that checks a call's words loads them without this vocabulary. */
261
+ export { CALL_LIMITS };
272
262
  export const DEFAULT_CONFIDENCE = 0.7;
273
263
  /**
274
264
  * A distance as a person says it: metres up to a kilometre, kilometres past
@@ -292,7 +282,8 @@ export const askSentence = (terms) => terms.criteria.map(criterionText).join("
292
282
  * An ask whose judge cannot rule on all of it is a trap: the chain allows
293
283
  * exactly one verdict per claim, so there is no "the oracle does its half and
294
284
  * the poster does the rest". Any `attest` criterion therefore forces the
295
- * poster to hold the pen.
285
+ * poster to hold the pen — unless the terms name an `approver`, whose answers
286
+ * the oracle folds into its one verdict.
296
287
  */
297
288
  export const requiresPoster = (terms) => terms.criteria.some((criterion) => criterion.kind === "attest");
298
289
  /**
@@ -301,7 +292,7 @@ export const requiresPoster = (terms) => terms.criteria.some((criterion) => crit
301
292
  * honesty the keyless worker already practises when a skill needs a brain.
302
293
  */
303
294
  export function servableByOracle(terms, options) {
304
- if (requiresPoster(terms))
295
+ if (requiresPoster(terms) && !terms.approver)
305
296
  return { ok: false, reason: "has a requirement only a person can review" };
306
297
  if (!options.canJudge && terms.criteria.some((criterion) => criterion.kind === "judge"))
307
298
  return { ok: false, reason: "has requirements for AI review, but no model is configured" };
@@ -575,6 +566,14 @@ export function callOf(raw) {
575
566
  return null;
576
567
  if (!amount(money.prize) || !whole(money.runnersN, 0, 5) || !amount(money.runnersEach) || !amount(money.entryEach) || !whole(money.entryUpTo, 1, 10_000))
577
568
  return null;
569
+ /* The split a private call was posted under: two percentages that left the person something, or the call does not read. */
570
+ const share = call.share;
571
+ if (share !== undefined && (!share || typeof share !== "object" || !nonNegative(share.network) || !nonNegative(share.node) || share.network + share.node >= 100))
572
+ return null;
573
+ /* The facilitator a pro ask names: a registry slug, a name, an entity DID, each whole or the call does not read. */
574
+ const sponsor = call.sponsor;
575
+ if (sponsor !== undefined && (!sponsor || typeof sponsor !== "object" || typeof sponsor.slug !== "string" || !CALL_SLUG.test(sponsor.slug) || !line(sponsor.name, L.sponsorName) || typeof sponsor.node !== "string" || !ENTITY_DID.test(sponsor.node)))
576
+ return null;
578
577
  if (!date(call.closes) || !date(call.drop) || !date(call.pick))
579
578
  return null;
580
579
  let legs;
@@ -597,15 +596,42 @@ export function callOf(raw) {
597
596
  const blocks = call.blocks.map(blockOf);
598
597
  if (blocks.some((block) => block === null))
599
598
  return null;
599
+ /* A review: the kind, what it reviews, and the scenarios, each read whole or the call does not read. A review is a hire by definition. */
600
+ let review = null;
601
+ if (call.kind !== undefined) {
602
+ if (call.kind !== "review" || call.mode !== "hire")
603
+ return null;
604
+ const subject = call.subject;
605
+ if (subject !== undefined) {
606
+ if (!subject || typeof subject !== "object" || !line(subject.name, L.subjectName))
607
+ return null;
608
+ if (subject.version !== undefined && !line(subject.version, L.version))
609
+ return null;
610
+ if (subject.where !== undefined && !line(subject.where, L.where))
611
+ return null;
612
+ }
613
+ if (call.scenarios !== undefined && (!Array.isArray(call.scenarios) || call.scenarios.length === 0 || call.scenarios.length > L.scenarios || !call.scenarios.every((one) => line(one, L.scenario))))
614
+ return null;
615
+ review = {
616
+ kind: "review",
617
+ ...(subject ? { subject: { name: subject.name, ...(subject.version !== undefined ? { version: subject.version } : {}), ...(subject.where !== undefined ? { where: subject.where } : {}) } } : {}),
618
+ ...(call.scenarios !== undefined ? { scenarios: [...call.scenarios] } : {})
619
+ };
620
+ }
600
621
  return {
601
622
  call: {
602
623
  slug: call.slug,
603
624
  leg: call.leg,
625
+ /* The one literal: anything else is a competition, as every call before it was. */
626
+ ...(call.mode === "hire" ? { mode: "hire" } : {}),
627
+ ...(review ?? {}),
604
628
  title: call.title,
605
629
  lede: call.lede,
606
630
  poster: call.poster,
607
631
  points: [...call.points],
608
632
  money: { prize: money.prize, runnersN: money.runnersN, runnersEach: money.runnersEach, entryEach: money.entryEach, entryUpTo: money.entryUpTo },
633
+ ...(share ? { share: { network: share.network, node: share.node } } : {}),
634
+ ...(sponsor ? { sponsor: { slug: sponsor.slug, name: sponsor.name, node: sponsor.node } } : {}),
609
635
  closes: call.closes,
610
636
  drop: call.drop,
611
637
  pick: call.pick,
@@ -633,6 +659,34 @@ function deliverableOf(deliverable) {
633
659
  const { choices, ...rest } = deliverable;
634
660
  return { ...rest, prompt: trim(deliverable.prompt, PROMPT_MAX), ...(choices !== undefined && surveyOptionsProblem(choices) === null ? { choices: choices.map((one) => one.trim()) } : {}) };
635
661
  }
662
+ /** A report requirement as kept: named here or dropped here, like every other field. */
663
+ function reportOf(raw) {
664
+ if (!raw || typeof raw !== "object" || Array.isArray(raw))
665
+ return null;
666
+ const sections = requiredSections(raw.sections);
667
+ /* The one literal: the Expert Review rules (reportLine.ts `v`). Anything else is the rules every report ask had. */
668
+ return sections ? { report: { sections, ...(raw.v === 2 ? { v: 2 } : {}) } } : null;
669
+ }
670
+ export { REPORT_CHECK_ID };
671
+ /**
672
+ * Terms whose answer is a review report: the requirement, and the line the AI pre-checks it on (a structured report or
673
+ * a PDF, with the poster's sections). The structure itself the bridge checks by machine. Anything subjective stays
674
+ * with the person who gives the final OK.
675
+ */
676
+ /** A web-page check's own gates. A report that names a site is a review, not a check that the page is up, so they go. */
677
+ const PAGE_CHECK_GATES = new Set(["mentions-url", "reports-status", "re-measure"]);
678
+ export function withReport(terms, sections, rules) {
679
+ const requirement = { sections: requiredSections([...sections]) ?? [], ...(rules ? { v: rules.v } : {}) };
680
+ const { via, ...rest } = terms;
681
+ const kept = terms.criteria.filter((criterion) => criterion.id !== REPORT_CHECK_ID && !(criterion.kind === "measure" && PAGE_CHECK_GATES.has(criterion.gate?.id ?? "")));
682
+ return {
683
+ ...rest,
684
+ ...(terms.deliverable.type === "url" ? { deliverable: { ...terms.deliverable, type: "file" } } : {}),
685
+ criteria: [...kept, { id: REPORT_CHECK_ID, kind: "judge", text: reportCheckText(requirement) }],
686
+ report: requirement,
687
+ ...(via ? { via } : {})
688
+ };
689
+ }
636
690
  export function parseTerms(value) {
637
691
  const doc = value;
638
692
  if (!doc || typeof doc !== "object")
@@ -677,6 +731,8 @@ export function parseTerms(value) {
677
731
  ...(typeof doc.series === "string" && /^[a-z0-9-]{1,64}$/.test(doc.series) ? { series: doc.series } : {}),
678
732
  /* Named here or dropped here. Only a content address: the plan is a document, never a label. */
679
733
  ...(typeof doc.plan === "string" && /^baf[a-z2-7]{20,}$/.test(doc.plan) ? { plan: doc.plan } : {}),
734
+ /* Named here or dropped here: only the two words the gate knows. An unknown word is "anyone", never a door nobody defined. */
735
+ ...(doc.access === "apply" || doc.access === "invite" ? { access: doc.access } : {}),
680
736
  ...(chainOf(doc.chain) ?? {}),
681
737
  ...(callOf(doc.call) ?? {}),
682
738
  ...(doc.followUp && Number(doc.followUp.days) > 0 && doc.followUp.pay
@@ -702,6 +758,8 @@ export function parseTerms(value) {
702
758
  lost here, exactly as `campaign` and `followUp` were before it. */
703
759
  ...(doc.site === true ? { site: true } : {}),
704
760
  ...(disposalOf(doc.disposal) ?? {}),
761
+ ...(typeof doc.approver === "string" && /^ixo1[a-z0-9]{38,64}$/.test(doc.approver) ? { approver: doc.approver } : {}),
762
+ ...(reportOf(doc.report) ?? {}),
705
763
  criteria: doc.criteria.slice(0, CRITERIA_MAX).map(readCriterion),
706
764
  judge,
707
765
  /* Named here or dropped here. The one literal: anything else is nobody's mark. */