@ixo/openhands-sdk 0.2.0 → 0.4.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 (503) hide show
  1. package/dist/cjs/campaign/campaign.js +3 -2
  2. package/dist/cjs/campaign/campaign.js.map +1 -1
  3. package/dist/cjs/campaign/funding.d.ts.map +1 -1
  4. package/dist/cjs/campaign/funding.js +3 -0
  5. package/dist/cjs/campaign/funding.js.map +1 -1
  6. package/dist/cjs/campaign/pool.d.ts.map +1 -1
  7. package/dist/cjs/campaign/pool.js +2 -1
  8. package/dist/cjs/campaign/pool.js.map +1 -1
  9. package/dist/cjs/campaign/spots.d.ts.map +1 -1
  10. package/dist/cjs/campaign/spots.js +8 -6
  11. package/dist/cjs/campaign/spots.js.map +1 -1
  12. package/dist/cjs/chain/ask.d.ts +104 -14
  13. package/dist/cjs/chain/ask.d.ts.map +1 -1
  14. package/dist/cjs/chain/ask.js +151 -78
  15. package/dist/cjs/chain/ask.js.map +1 -1
  16. package/dist/cjs/chain/askImage.d.ts +19 -0
  17. package/dist/cjs/chain/askImage.d.ts.map +1 -0
  18. package/dist/cjs/chain/askImage.js +56 -0
  19. package/dist/cjs/chain/askImage.js.map +1 -0
  20. package/dist/cjs/chain/bridge.d.ts +7 -33
  21. package/dist/cjs/chain/bridge.d.ts.map +1 -1
  22. package/dist/cjs/chain/bridge.js +10 -25
  23. package/dist/cjs/chain/bridge.js.map +1 -1
  24. package/dist/cjs/chain/claimSubmit.d.ts +15 -0
  25. package/dist/cjs/chain/claimSubmit.d.ts.map +1 -0
  26. package/dist/cjs/chain/claimSubmit.js +14 -0
  27. package/dist/cjs/chain/claimSubmit.js.map +1 -0
  28. package/dist/cjs/chain/delegate.d.ts +52 -7
  29. package/dist/cjs/chain/delegate.d.ts.map +1 -1
  30. package/dist/cjs/chain/delegate.js +66 -14
  31. package/dist/cjs/chain/delegate.js.map +1 -1
  32. package/dist/cjs/chain/domainIndexer.d.ts +26 -0
  33. package/dist/cjs/chain/domainIndexer.d.ts.map +1 -0
  34. package/dist/cjs/chain/domainIndexer.js +51 -0
  35. package/dist/cjs/chain/domainIndexer.js.map +1 -0
  36. package/dist/cjs/chain/entityShape.d.ts +233 -0
  37. package/dist/cjs/chain/entityShape.d.ts.map +1 -0
  38. package/dist/cjs/chain/entityShape.js +251 -0
  39. package/dist/cjs/chain/entityShape.js.map +1 -0
  40. package/dist/cjs/chain/env.d.ts +103 -6
  41. package/dist/cjs/chain/env.d.ts.map +1 -1
  42. package/dist/cjs/chain/env.js +188 -14
  43. package/dist/cjs/chain/env.js.map +1 -1
  44. package/dist/cjs/chain/guest.d.ts +14 -0
  45. package/dist/cjs/chain/guest.d.ts.map +1 -1
  46. package/dist/cjs/chain/guest.js +9 -9
  47. package/dist/cjs/chain/guest.js.map +1 -1
  48. package/dist/cjs/chain/money.d.ts +47 -2
  49. package/dist/cjs/chain/money.d.ts.map +1 -1
  50. package/dist/cjs/chain/money.js +63 -6
  51. package/dist/cjs/chain/money.js.map +1 -1
  52. package/dist/cjs/chain/orgReviewBilling.d.ts +124 -0
  53. package/dist/cjs/chain/orgReviewBilling.d.ts.map +1 -0
  54. package/dist/cjs/chain/orgReviewBilling.js +290 -0
  55. package/dist/cjs/chain/orgReviewBilling.js.map +1 -0
  56. package/dist/cjs/chain/orgReviewBillingSign.d.ts +63 -0
  57. package/dist/cjs/chain/orgReviewBillingSign.d.ts.map +1 -0
  58. package/dist/cjs/chain/orgReviewBillingSign.js +166 -0
  59. package/dist/cjs/chain/orgReviewBillingSign.js.map +1 -0
  60. package/dist/cjs/chain/payoutSettings.d.ts +97 -0
  61. package/dist/cjs/chain/payoutSettings.d.ts.map +1 -0
  62. package/dist/cjs/chain/payoutSettings.js +123 -0
  63. package/dist/cjs/chain/payoutSettings.js.map +1 -0
  64. package/dist/cjs/chain/payoutTerms.d.ts +72 -0
  65. package/dist/cjs/chain/payoutTerms.d.ts.map +1 -0
  66. package/dist/cjs/chain/payoutTerms.js +141 -0
  67. package/dist/cjs/chain/payoutTerms.js.map +1 -0
  68. package/dist/cjs/chain/query.d.ts +14 -0
  69. package/dist/cjs/chain/query.d.ts.map +1 -1
  70. package/dist/cjs/chain/query.js +27 -0
  71. package/dist/cjs/chain/query.js.map +1 -1
  72. package/dist/cjs/chain/reviewBilling.d.ts +86 -0
  73. package/dist/cjs/chain/reviewBilling.d.ts.map +1 -0
  74. package/dist/cjs/chain/reviewBilling.js +265 -0
  75. package/dist/cjs/chain/reviewBilling.js.map +1 -0
  76. package/dist/cjs/chain/store.d.ts +7 -6
  77. package/dist/cjs/chain/store.d.ts.map +1 -1
  78. package/dist/cjs/chain/store.js +7 -6
  79. package/dist/cjs/chain/store.js.map +1 -1
  80. package/dist/cjs/chain/subscription.d.ts +0 -7
  81. package/dist/cjs/chain/subscription.d.ts.map +1 -1
  82. package/dist/cjs/chain/subscription.js +4 -47
  83. package/dist/cjs/chain/subscription.js.map +1 -1
  84. package/dist/cjs/chain/takeBack.d.ts +12 -0
  85. package/dist/cjs/chain/takeBack.d.ts.map +1 -1
  86. package/dist/cjs/chain/takeBack.js +24 -10
  87. package/dist/cjs/chain/takeBack.js.map +1 -1
  88. package/dist/cjs/chain/why.d.ts +44 -0
  89. package/dist/cjs/chain/why.d.ts.map +1 -0
  90. package/dist/cjs/chain/why.js +153 -0
  91. package/dist/cjs/chain/why.js.map +1 -0
  92. package/dist/cjs/chain/whyMint.d.ts +8 -0
  93. package/dist/cjs/chain/whyMint.d.ts.map +1 -0
  94. package/dist/cjs/chain/whyMint.js +53 -0
  95. package/dist/cjs/chain/whyMint.js.map +1 -0
  96. package/dist/cjs/chain.d.ts +8 -4
  97. package/dist/cjs/chain.d.ts.map +1 -1
  98. package/dist/cjs/chain.js +19 -9
  99. package/dist/cjs/chain.js.map +1 -1
  100. package/dist/cjs/config.d.ts +37 -5
  101. package/dist/cjs/config.d.ts.map +1 -1
  102. package/dist/cjs/config.js +9 -2
  103. package/dist/cjs/config.js.map +1 -1
  104. package/dist/cjs/data/agent.d.ts.map +1 -1
  105. package/dist/cjs/data/agent.js +5 -4
  106. package/dist/cjs/data/agent.js.map +1 -1
  107. package/dist/cjs/data/askEntity.d.ts +40 -0
  108. package/dist/cjs/data/askEntity.d.ts.map +1 -0
  109. package/dist/cjs/data/askEntity.js +48 -0
  110. package/dist/cjs/data/askEntity.js.map +1 -0
  111. package/dist/cjs/data/askLinks.d.ts +6 -0
  112. package/dist/cjs/data/askLinks.d.ts.map +1 -0
  113. package/dist/cjs/data/askLinks.js +21 -0
  114. package/dist/cjs/data/askLinks.js.map +1 -0
  115. package/dist/cjs/data/board/assemble.d.ts.map +1 -1
  116. package/dist/cjs/data/board/assemble.js +15 -2
  117. package/dist/cjs/data/board/assemble.js.map +1 -1
  118. package/dist/cjs/data/board/facts.d.ts +11 -0
  119. package/dist/cjs/data/board/facts.d.ts.map +1 -1
  120. package/dist/cjs/data/board/facts.js +16 -0
  121. package/dist/cjs/data/board/facts.js.map +1 -1
  122. package/dist/cjs/data/board/read.d.ts.map +1 -1
  123. package/dist/cjs/data/board/read.js +2 -1
  124. package/dist/cjs/data/board/read.js.map +1 -1
  125. package/dist/cjs/data/board/types.d.ts +9 -0
  126. package/dist/cjs/data/board/types.d.ts.map +1 -1
  127. package/dist/cjs/data/board/types.js.map +1 -1
  128. package/dist/cjs/data/docs.d.ts +10 -2
  129. package/dist/cjs/data/docs.d.ts.map +1 -1
  130. package/dist/cjs/data/docs.js +43 -3
  131. package/dist/cjs/data/docs.js.map +1 -1
  132. package/dist/cjs/data/format.js +1 -1
  133. package/dist/cjs/data/format.js.map +1 -1
  134. package/dist/cjs/data/install.d.ts +8 -0
  135. package/dist/cjs/data/install.d.ts.map +1 -1
  136. package/dist/cjs/data/install.js +9 -1
  137. package/dist/cjs/data/install.js.map +1 -1
  138. package/dist/cjs/data/oracleInfo.d.ts +6 -1
  139. package/dist/cjs/data/oracleInfo.d.ts.map +1 -1
  140. package/dist/cjs/data/oracleInfo.js +22 -3
  141. package/dist/cjs/data/oracleInfo.js.map +1 -1
  142. package/dist/cjs/data/oracles.d.ts +62 -5
  143. package/dist/cjs/data/oracles.d.ts.map +1 -1
  144. package/dist/cjs/data/oracles.js +90 -11
  145. package/dist/cjs/data/oracles.js.map +1 -1
  146. package/dist/cjs/data/orgPayouts.d.ts +87 -0
  147. package/dist/cjs/data/orgPayouts.d.ts.map +1 -0
  148. package/dist/cjs/data/orgPayouts.js +183 -0
  149. package/dist/cjs/data/orgPayouts.js.map +1 -0
  150. package/dist/cjs/data/plans.d.ts +8 -0
  151. package/dist/cjs/data/plans.d.ts.map +1 -0
  152. package/dist/cjs/data/plans.js +12 -0
  153. package/dist/cjs/data/plans.js.map +1 -0
  154. package/dist/cjs/data/profiles.d.ts +20 -0
  155. package/dist/cjs/data/profiles.d.ts.map +1 -1
  156. package/dist/cjs/data/profiles.js +63 -4
  157. package/dist/cjs/data/profiles.js.map +1 -1
  158. package/dist/cjs/data/queue.d.ts.map +1 -1
  159. package/dist/cjs/data/queue.js +3 -2
  160. package/dist/cjs/data/queue.js.map +1 -1
  161. package/dist/cjs/data/receipt.d.ts +7 -0
  162. package/dist/cjs/data/receipt.d.ts.map +1 -1
  163. package/dist/cjs/data/receipt.js +25 -6
  164. package/dist/cjs/data/receipt.js.map +1 -1
  165. package/dist/cjs/data/resources.d.ts +3 -0
  166. package/dist/cjs/data/resources.d.ts.map +1 -1
  167. package/dist/cjs/data/resources.js +4 -1
  168. package/dist/cjs/data/resources.js.map +1 -1
  169. package/dist/cjs/data/threads.d.ts +14 -0
  170. package/dist/cjs/data/threads.d.ts.map +1 -1
  171. package/dist/cjs/data/threads.js +40 -23
  172. package/dist/cjs/data/threads.js.map +1 -1
  173. package/dist/cjs/data/trace.d.ts +8 -0
  174. package/dist/cjs/data/trace.d.ts.map +1 -1
  175. package/dist/cjs/data/trace.js +1 -1
  176. package/dist/cjs/data/trace.js.map +1 -1
  177. package/dist/cjs/data/traceWords.d.ts +4 -1
  178. package/dist/cjs/data/traceWords.d.ts.map +1 -1
  179. package/dist/cjs/data/traceWords.js +8 -2
  180. package/dist/cjs/data/traceWords.js.map +1 -1
  181. package/dist/cjs/data/why.d.ts +38 -0
  182. package/dist/cjs/data/why.d.ts.map +1 -0
  183. package/dist/cjs/data/why.js +86 -0
  184. package/dist/cjs/data/why.js.map +1 -0
  185. package/dist/cjs/data/whyReceipt.d.ts +33 -0
  186. package/dist/cjs/data/whyReceipt.d.ts.map +1 -0
  187. package/dist/cjs/data/whyReceipt.js +291 -0
  188. package/dist/cjs/data/whyReceipt.js.map +1 -0
  189. package/dist/cjs/geo/exifcarry.d.ts +9 -0
  190. package/dist/cjs/geo/exifcarry.d.ts.map +1 -1
  191. package/dist/cjs/geo/exifcarry.js +35 -0
  192. package/dist/cjs/geo/exifcarry.js.map +1 -1
  193. package/dist/cjs/geo/geohash.d.ts +25 -0
  194. package/dist/cjs/geo/geohash.d.ts.map +1 -0
  195. package/dist/cjs/geo/geohash.js +114 -0
  196. package/dist/cjs/geo/geohash.js.map +1 -0
  197. package/dist/cjs/geo/provenance.d.ts +41 -0
  198. package/dist/cjs/geo/provenance.d.ts.map +1 -0
  199. package/dist/cjs/geo/provenance.js +134 -0
  200. package/dist/cjs/geo/provenance.js.map +1 -0
  201. package/dist/cjs/rubric/bridge.d.ts +98 -2
  202. package/dist/cjs/rubric/bridge.d.ts.map +1 -1
  203. package/dist/cjs/rubric/bridge.js +132 -15
  204. package/dist/cjs/rubric/bridge.js.map +1 -1
  205. package/dist/cjs/rubric/card.d.ts +28 -14
  206. package/dist/cjs/rubric/card.d.ts.map +1 -1
  207. package/dist/cjs/rubric/card.js +28 -7
  208. package/dist/cjs/rubric/card.js.map +1 -1
  209. package/dist/cjs/rubric/claimForm.d.ts +116 -0
  210. package/dist/cjs/rubric/claimForm.d.ts.map +1 -1
  211. package/dist/cjs/rubric/claimForm.js +12 -1
  212. package/dist/cjs/rubric/claimForm.js.map +1 -1
  213. package/dist/cjs/rubric/compose.d.ts +5 -0
  214. package/dist/cjs/rubric/compose.d.ts.map +1 -1
  215. package/dist/cjs/rubric/compose.js +9 -3
  216. package/dist/cjs/rubric/compose.js.map +1 -1
  217. package/dist/cjs/rubric/gateMet.d.ts.map +1 -1
  218. package/dist/cjs/rubric/gateMet.js +4 -2
  219. package/dist/cjs/rubric/gateMet.js.map +1 -1
  220. package/dist/cjs/rubric/leg.d.ts +2 -2
  221. package/dist/cjs/rubric/leg.d.ts.map +1 -1
  222. package/dist/cjs/rubric/leg.js +7 -5
  223. package/dist/cjs/rubric/leg.js.map +1 -1
  224. package/dist/cjs/rubric/marketPlan.d.ts +182 -0
  225. package/dist/cjs/rubric/marketPlan.d.ts.map +1 -0
  226. package/dist/cjs/rubric/marketPlan.js +419 -0
  227. package/dist/cjs/rubric/marketPlan.js.map +1 -0
  228. package/dist/cjs/rubric/observation.d.ts +95 -0
  229. package/dist/cjs/rubric/observation.d.ts.map +1 -0
  230. package/dist/cjs/rubric/observation.js +88 -0
  231. package/dist/cjs/rubric/observation.js.map +1 -0
  232. package/dist/cjs/rubric/pingLink.d.ts +45 -0
  233. package/dist/cjs/rubric/pingLink.d.ts.map +1 -0
  234. package/dist/cjs/rubric/pingLink.js +74 -0
  235. package/dist/cjs/rubric/pingLink.js.map +1 -0
  236. package/dist/cjs/rubric/pingMatch.d.ts +73 -0
  237. package/dist/cjs/rubric/pingMatch.d.ts.map +1 -0
  238. package/dist/cjs/rubric/pingMatch.js +65 -0
  239. package/dist/cjs/rubric/pingMatch.js.map +1 -0
  240. package/dist/cjs/rubric/survey.d.ts +65 -0
  241. package/dist/cjs/rubric/survey.d.ts.map +1 -0
  242. package/dist/cjs/rubric/survey.js +101 -0
  243. package/dist/cjs/rubric/survey.js.map +1 -0
  244. package/dist/cjs/rubric/terms.d.ts +15 -0
  245. package/dist/cjs/rubric/terms.d.ts.map +1 -1
  246. package/dist/cjs/rubric/terms.js +14 -1
  247. package/dist/cjs/rubric/terms.js.map +1 -1
  248. package/dist/cjs/rubric.d.ts +1 -1
  249. package/dist/cjs/rubric.d.ts.map +1 -1
  250. package/dist/cjs/rubric.js +4 -2
  251. package/dist/cjs/rubric.js.map +1 -1
  252. package/dist/esm/campaign/campaign.js +4 -3
  253. package/dist/esm/campaign/campaign.js.map +1 -1
  254. package/dist/esm/campaign/funding.d.ts.map +1 -1
  255. package/dist/esm/campaign/funding.js +3 -0
  256. package/dist/esm/campaign/funding.js.map +1 -1
  257. package/dist/esm/campaign/pool.d.ts.map +1 -1
  258. package/dist/esm/campaign/pool.js +2 -1
  259. package/dist/esm/campaign/pool.js.map +1 -1
  260. package/dist/esm/campaign/spots.d.ts.map +1 -1
  261. package/dist/esm/campaign/spots.js +8 -6
  262. package/dist/esm/campaign/spots.js.map +1 -1
  263. package/dist/esm/chain/ask.d.ts +104 -14
  264. package/dist/esm/chain/ask.d.ts.map +1 -1
  265. package/dist/esm/chain/ask.js +152 -80
  266. package/dist/esm/chain/ask.js.map +1 -1
  267. package/dist/esm/chain/askImage.d.ts +19 -0
  268. package/dist/esm/chain/askImage.d.ts.map +1 -0
  269. package/dist/esm/chain/askImage.js +50 -0
  270. package/dist/esm/chain/askImage.js.map +1 -0
  271. package/dist/esm/chain/bridge.d.ts +7 -33
  272. package/dist/esm/chain/bridge.d.ts.map +1 -1
  273. package/dist/esm/chain/bridge.js +10 -24
  274. package/dist/esm/chain/bridge.js.map +1 -1
  275. package/dist/esm/chain/claimSubmit.d.ts +15 -0
  276. package/dist/esm/chain/claimSubmit.d.ts.map +1 -0
  277. package/dist/esm/chain/claimSubmit.js +10 -0
  278. package/dist/esm/chain/claimSubmit.js.map +1 -0
  279. package/dist/esm/chain/delegate.d.ts +52 -7
  280. package/dist/esm/chain/delegate.d.ts.map +1 -1
  281. package/dist/esm/chain/delegate.js +64 -13
  282. package/dist/esm/chain/delegate.js.map +1 -1
  283. package/dist/esm/chain/domainIndexer.d.ts +26 -0
  284. package/dist/esm/chain/domainIndexer.d.ts.map +1 -0
  285. package/dist/esm/chain/domainIndexer.js +48 -0
  286. package/dist/esm/chain/domainIndexer.js.map +1 -0
  287. package/dist/esm/chain/entityShape.d.ts +233 -0
  288. package/dist/esm/chain/entityShape.d.ts.map +1 -0
  289. package/dist/esm/chain/entityShape.js +231 -0
  290. package/dist/esm/chain/entityShape.js.map +1 -0
  291. package/dist/esm/chain/env.d.ts +103 -6
  292. package/dist/esm/chain/env.d.ts.map +1 -1
  293. package/dist/esm/chain/env.js +174 -12
  294. package/dist/esm/chain/env.js.map +1 -1
  295. package/dist/esm/chain/guest.d.ts +14 -0
  296. package/dist/esm/chain/guest.d.ts.map +1 -1
  297. package/dist/esm/chain/guest.js +7 -8
  298. package/dist/esm/chain/guest.js.map +1 -1
  299. package/dist/esm/chain/money.d.ts +47 -2
  300. package/dist/esm/chain/money.d.ts.map +1 -1
  301. package/dist/esm/chain/money.js +54 -4
  302. package/dist/esm/chain/money.js.map +1 -1
  303. package/dist/esm/chain/orgReviewBilling.d.ts +124 -0
  304. package/dist/esm/chain/orgReviewBilling.d.ts.map +1 -0
  305. package/dist/esm/chain/orgReviewBilling.js +241 -0
  306. package/dist/esm/chain/orgReviewBilling.js.map +1 -0
  307. package/dist/esm/chain/orgReviewBillingSign.d.ts +63 -0
  308. package/dist/esm/chain/orgReviewBillingSign.d.ts.map +1 -0
  309. package/dist/esm/chain/orgReviewBillingSign.js +124 -0
  310. package/dist/esm/chain/orgReviewBillingSign.js.map +1 -0
  311. package/dist/esm/chain/payoutSettings.d.ts +97 -0
  312. package/dist/esm/chain/payoutSettings.d.ts.map +1 -0
  313. package/dist/esm/chain/payoutSettings.js +111 -0
  314. package/dist/esm/chain/payoutSettings.js.map +1 -0
  315. package/dist/esm/chain/payoutTerms.d.ts +72 -0
  316. package/dist/esm/chain/payoutTerms.d.ts.map +1 -0
  317. package/dist/esm/chain/payoutTerms.js +127 -0
  318. package/dist/esm/chain/payoutTerms.js.map +1 -0
  319. package/dist/esm/chain/query.d.ts +14 -0
  320. package/dist/esm/chain/query.d.ts.map +1 -1
  321. package/dist/esm/chain/query.js +25 -0
  322. package/dist/esm/chain/query.js.map +1 -1
  323. package/dist/esm/chain/reviewBilling.d.ts +86 -0
  324. package/dist/esm/chain/reviewBilling.d.ts.map +1 -0
  325. package/dist/esm/chain/reviewBilling.js +215 -0
  326. package/dist/esm/chain/reviewBilling.js.map +1 -0
  327. package/dist/esm/chain/store.d.ts +7 -6
  328. package/dist/esm/chain/store.d.ts.map +1 -1
  329. package/dist/esm/chain/store.js +7 -6
  330. package/dist/esm/chain/store.js.map +1 -1
  331. package/dist/esm/chain/subscription.d.ts +0 -7
  332. package/dist/esm/chain/subscription.d.ts.map +1 -1
  333. package/dist/esm/chain/subscription.js +4 -13
  334. package/dist/esm/chain/subscription.js.map +1 -1
  335. package/dist/esm/chain/takeBack.d.ts +12 -0
  336. package/dist/esm/chain/takeBack.d.ts.map +1 -1
  337. package/dist/esm/chain/takeBack.js +22 -9
  338. package/dist/esm/chain/takeBack.js.map +1 -1
  339. package/dist/esm/chain/why.d.ts +44 -0
  340. package/dist/esm/chain/why.d.ts.map +1 -0
  341. package/dist/esm/chain/why.js +111 -0
  342. package/dist/esm/chain/why.js.map +1 -0
  343. package/dist/esm/chain/whyMint.d.ts +8 -0
  344. package/dist/esm/chain/whyMint.d.ts.map +1 -0
  345. package/dist/esm/chain/whyMint.js +17 -0
  346. package/dist/esm/chain/whyMint.js.map +1 -0
  347. package/dist/esm/chain.d.ts +8 -4
  348. package/dist/esm/chain.d.ts.map +1 -1
  349. package/dist/esm/chain.js +9 -4
  350. package/dist/esm/chain.js.map +1 -1
  351. package/dist/esm/config.d.ts +37 -5
  352. package/dist/esm/config.d.ts.map +1 -1
  353. package/dist/esm/config.js +9 -3
  354. package/dist/esm/config.js.map +1 -1
  355. package/dist/esm/data/agent.d.ts.map +1 -1
  356. package/dist/esm/data/agent.js +5 -4
  357. package/dist/esm/data/agent.js.map +1 -1
  358. package/dist/esm/data/askEntity.d.ts +40 -0
  359. package/dist/esm/data/askEntity.d.ts.map +1 -0
  360. package/dist/esm/data/askEntity.js +41 -0
  361. package/dist/esm/data/askEntity.js.map +1 -0
  362. package/dist/esm/data/askLinks.d.ts +6 -0
  363. package/dist/esm/data/askLinks.d.ts.map +1 -0
  364. package/dist/esm/data/askLinks.js +16 -0
  365. package/dist/esm/data/askLinks.js.map +1 -0
  366. package/dist/esm/data/board/assemble.d.ts.map +1 -1
  367. package/dist/esm/data/board/assemble.js +15 -2
  368. package/dist/esm/data/board/assemble.js.map +1 -1
  369. package/dist/esm/data/board/facts.d.ts +11 -0
  370. package/dist/esm/data/board/facts.d.ts.map +1 -1
  371. package/dist/esm/data/board/facts.js +15 -0
  372. package/dist/esm/data/board/facts.js.map +1 -1
  373. package/dist/esm/data/board/read.d.ts.map +1 -1
  374. package/dist/esm/data/board/read.js +2 -1
  375. package/dist/esm/data/board/read.js.map +1 -1
  376. package/dist/esm/data/board/types.d.ts +9 -0
  377. package/dist/esm/data/board/types.d.ts.map +1 -1
  378. package/dist/esm/data/board/types.js.map +1 -1
  379. package/dist/esm/data/docs.d.ts +10 -2
  380. package/dist/esm/data/docs.d.ts.map +1 -1
  381. package/dist/esm/data/docs.js +43 -4
  382. package/dist/esm/data/docs.js.map +1 -1
  383. package/dist/esm/data/format.js +1 -1
  384. package/dist/esm/data/format.js.map +1 -1
  385. package/dist/esm/data/install.d.ts +8 -0
  386. package/dist/esm/data/install.d.ts.map +1 -1
  387. package/dist/esm/data/install.js +8 -0
  388. package/dist/esm/data/install.js.map +1 -1
  389. package/dist/esm/data/oracleInfo.d.ts +6 -1
  390. package/dist/esm/data/oracleInfo.d.ts.map +1 -1
  391. package/dist/esm/data/oracleInfo.js +22 -3
  392. package/dist/esm/data/oracleInfo.js.map +1 -1
  393. package/dist/esm/data/oracles.d.ts +62 -5
  394. package/dist/esm/data/oracles.d.ts.map +1 -1
  395. package/dist/esm/data/oracles.js +87 -12
  396. package/dist/esm/data/oracles.js.map +1 -1
  397. package/dist/esm/data/orgPayouts.d.ts +87 -0
  398. package/dist/esm/data/orgPayouts.d.ts.map +1 -0
  399. package/dist/esm/data/orgPayouts.js +170 -0
  400. package/dist/esm/data/orgPayouts.js.map +1 -0
  401. package/dist/esm/data/plans.d.ts +8 -0
  402. package/dist/esm/data/plans.d.ts.map +1 -0
  403. package/dist/esm/data/plans.js +8 -0
  404. package/dist/esm/data/plans.js.map +1 -0
  405. package/dist/esm/data/profiles.d.ts +20 -0
  406. package/dist/esm/data/profiles.d.ts.map +1 -1
  407. package/dist/esm/data/profiles.js +60 -4
  408. package/dist/esm/data/profiles.js.map +1 -1
  409. package/dist/esm/data/queue.d.ts.map +1 -1
  410. package/dist/esm/data/queue.js +3 -2
  411. package/dist/esm/data/queue.js.map +1 -1
  412. package/dist/esm/data/receipt.d.ts +7 -0
  413. package/dist/esm/data/receipt.d.ts.map +1 -1
  414. package/dist/esm/data/receipt.js +26 -7
  415. package/dist/esm/data/receipt.js.map +1 -1
  416. package/dist/esm/data/resources.d.ts +3 -0
  417. package/dist/esm/data/resources.d.ts.map +1 -1
  418. package/dist/esm/data/resources.js +2 -0
  419. package/dist/esm/data/resources.js.map +1 -1
  420. package/dist/esm/data/threads.d.ts +14 -0
  421. package/dist/esm/data/threads.d.ts.map +1 -1
  422. package/dist/esm/data/threads.js +40 -24
  423. package/dist/esm/data/threads.js.map +1 -1
  424. package/dist/esm/data/trace.d.ts +8 -0
  425. package/dist/esm/data/trace.d.ts.map +1 -1
  426. package/dist/esm/data/trace.js +1 -1
  427. package/dist/esm/data/trace.js.map +1 -1
  428. package/dist/esm/data/traceWords.d.ts +4 -1
  429. package/dist/esm/data/traceWords.d.ts.map +1 -1
  430. package/dist/esm/data/traceWords.js +8 -2
  431. package/dist/esm/data/traceWords.js.map +1 -1
  432. package/dist/esm/data/why.d.ts +38 -0
  433. package/dist/esm/data/why.d.ts.map +1 -0
  434. package/dist/esm/data/why.js +78 -0
  435. package/dist/esm/data/why.js.map +1 -0
  436. package/dist/esm/data/whyReceipt.d.ts +33 -0
  437. package/dist/esm/data/whyReceipt.d.ts.map +1 -0
  438. package/dist/esm/data/whyReceipt.js +284 -0
  439. package/dist/esm/data/whyReceipt.js.map +1 -0
  440. package/dist/esm/geo/exifcarry.d.ts +9 -0
  441. package/dist/esm/geo/exifcarry.d.ts.map +1 -1
  442. package/dist/esm/geo/exifcarry.js +34 -0
  443. package/dist/esm/geo/exifcarry.js.map +1 -1
  444. package/dist/esm/geo/geohash.d.ts +25 -0
  445. package/dist/esm/geo/geohash.d.ts.map +1 -0
  446. package/dist/esm/geo/geohash.js +109 -0
  447. package/dist/esm/geo/geohash.js.map +1 -0
  448. package/dist/esm/geo/provenance.d.ts +41 -0
  449. package/dist/esm/geo/provenance.d.ts.map +1 -0
  450. package/dist/esm/geo/provenance.js +129 -0
  451. package/dist/esm/geo/provenance.js.map +1 -0
  452. package/dist/esm/rubric/bridge.d.ts +98 -2
  453. package/dist/esm/rubric/bridge.d.ts.map +1 -1
  454. package/dist/esm/rubric/bridge.js +130 -14
  455. package/dist/esm/rubric/bridge.js.map +1 -1
  456. package/dist/esm/rubric/card.d.ts +28 -14
  457. package/dist/esm/rubric/card.d.ts.map +1 -1
  458. package/dist/esm/rubric/card.js +24 -5
  459. package/dist/esm/rubric/card.js.map +1 -1
  460. package/dist/esm/rubric/claimForm.d.ts +116 -0
  461. package/dist/esm/rubric/claimForm.d.ts.map +1 -1
  462. package/dist/esm/rubric/claimForm.js +11 -0
  463. package/dist/esm/rubric/claimForm.js.map +1 -1
  464. package/dist/esm/rubric/compose.d.ts +5 -0
  465. package/dist/esm/rubric/compose.d.ts.map +1 -1
  466. package/dist/esm/rubric/compose.js +7 -2
  467. package/dist/esm/rubric/compose.js.map +1 -1
  468. package/dist/esm/rubric/gateMet.d.ts.map +1 -1
  469. package/dist/esm/rubric/gateMet.js +4 -2
  470. package/dist/esm/rubric/gateMet.js.map +1 -1
  471. package/dist/esm/rubric/leg.d.ts +2 -2
  472. package/dist/esm/rubric/leg.d.ts.map +1 -1
  473. package/dist/esm/rubric/leg.js +7 -5
  474. package/dist/esm/rubric/leg.js.map +1 -1
  475. package/dist/esm/rubric/marketPlan.d.ts +182 -0
  476. package/dist/esm/rubric/marketPlan.d.ts.map +1 -0
  477. package/dist/esm/rubric/marketPlan.js +403 -0
  478. package/dist/esm/rubric/marketPlan.js.map +1 -0
  479. package/dist/esm/rubric/observation.d.ts +95 -0
  480. package/dist/esm/rubric/observation.d.ts.map +1 -0
  481. package/dist/esm/rubric/observation.js +82 -0
  482. package/dist/esm/rubric/observation.js.map +1 -0
  483. package/dist/esm/rubric/pingLink.d.ts +45 -0
  484. package/dist/esm/rubric/pingLink.d.ts.map +1 -0
  485. package/dist/esm/rubric/pingLink.js +69 -0
  486. package/dist/esm/rubric/pingLink.js.map +1 -0
  487. package/dist/esm/rubric/pingMatch.d.ts +73 -0
  488. package/dist/esm/rubric/pingMatch.d.ts.map +1 -0
  489. package/dist/esm/rubric/pingMatch.js +60 -0
  490. package/dist/esm/rubric/pingMatch.js.map +1 -0
  491. package/dist/esm/rubric/survey.d.ts +65 -0
  492. package/dist/esm/rubric/survey.d.ts.map +1 -0
  493. package/dist/esm/rubric/survey.js +94 -0
  494. package/dist/esm/rubric/survey.js.map +1 -0
  495. package/dist/esm/rubric/terms.d.ts +15 -0
  496. package/dist/esm/rubric/terms.d.ts.map +1 -1
  497. package/dist/esm/rubric/terms.js +14 -2
  498. package/dist/esm/rubric/terms.js.map +1 -1
  499. package/dist/esm/rubric.d.ts +1 -1
  500. package/dist/esm/rubric.d.ts.map +1 -1
  501. package/dist/esm/rubric.js +1 -1
  502. package/dist/esm/rubric.js.map +1 -1
  503. package/package.json +8 -2
@@ -0,0 +1,48 @@
1
+ /**
2
+ * The nudge to the IXO domain indexer (W10 of the alignment plan).
3
+ *
4
+ * The indexer (`ixoworld/domain-indexer`, one per network) is how IXO
5
+ * surfaces find a domain: it polls blocksync for every EntityCreated and
6
+ * EntityUpdated event (`src/blocksync/chain-event-poller.ts`, two-second
7
+ * cadence) and indexes any entity that carries a `#dmn`, so a shaped ask
8
+ * reaches it on its own within moments of tap 2. A nudge buys only the wait:
9
+ * `POST /index {did}` runs the pipeline now, synchronously, and the card is at
10
+ * `GET /domain-cards/<did>` by the time the poster's page lands on the ask.
11
+ * No auth, best effort, never awaited by the flows that call it.
12
+ *
13
+ * Read from its source on 2026-10-13: on a card whose checksum is unchanged
14
+ * the indexer only bumps a timestamp (`EntityIndexer.ts`, "STEP 1.5"), so
15
+ * nothing here refreshes a card that already exists — a verifier setting
16
+ * `entityVerified` is not seen by the indexer until its own cron looks again.
17
+ * The legacy shape has no `#dmn`, so a nudge for a legacy ask indexes nothing
18
+ * and is not sent.
19
+ */
20
+ import { domainIndexerUrl } from "./env.js";
21
+ import { isEntityDid } from "./entityShape.js";
22
+ /* The indexer answers when its pipeline is done — content fetch, summaries,
23
+ embedding — which is seconds, not milliseconds. The browser's keepalive
24
+ lets the page move on meanwhile. */
25
+ const TIMEOUT_MS = 15_000;
26
+ /** True when the indexer answered 2xx; false on every other outcome, never a throw. */
27
+ export async function nudgeDomainIndexer(entityDid, options = {}) {
28
+ const base = (options.baseUrl ?? domainIndexerUrl()).replace(/\/+$/, "");
29
+ if (!base || !isEntityDid(entityDid))
30
+ return false;
31
+ const send = options.fetch ?? globalThis.fetch;
32
+ if (typeof send !== "function")
33
+ return false;
34
+ try {
35
+ const response = await send(`${base}/index`, {
36
+ method: "POST",
37
+ headers: { "content-type": "application/json" },
38
+ body: JSON.stringify({ did: entityDid }),
39
+ keepalive: true,
40
+ signal: AbortSignal.timeout(TIMEOUT_MS)
41
+ });
42
+ return response.ok;
43
+ }
44
+ catch {
45
+ return false;
46
+ }
47
+ }
48
+ //# sourceMappingURL=domainIndexer.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"domainIndexer.js","sourceRoot":"","sources":["../../../src/chain/domainIndexer.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AAEH,OAAO,EAAE,gBAAgB,EAAE,MAAM,UAAU,CAAC;AAC5C,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAE/C;;sCAEsC;AACtC,MAAM,UAAU,GAAG,MAAM,CAAC;AAO1B,uFAAuF;AACvF,MAAM,CAAC,KAAK,UAAU,kBAAkB,CAAC,SAAiB,EAAE,UAAwB,EAAE;IACpF,MAAM,IAAI,GAAG,CAAC,OAAO,CAAC,OAAO,IAAI,gBAAgB,EAAE,CAAC,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;IACzE,IAAI,CAAC,IAAI,IAAI,CAAC,WAAW,CAAC,SAAS,CAAC;QAAE,OAAO,KAAK,CAAC;IACnD,MAAM,IAAI,GAAG,OAAO,CAAC,KAAK,IAAI,UAAU,CAAC,KAAK,CAAC;IAC/C,IAAI,OAAO,IAAI,KAAK,UAAU;QAAE,OAAO,KAAK,CAAC;IAC7C,IAAI,CAAC;QACH,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,GAAG,IAAI,QAAQ,EAAE;YAC3C,MAAM,EAAE,MAAM;YACd,OAAO,EAAE,EAAE,cAAc,EAAE,kBAAkB,EAAE;YAC/C,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,EAAE,GAAG,EAAE,SAAS,EAAE,CAAC;YACxC,SAAS,EAAE,IAAI;YACf,MAAM,EAAE,WAAW,CAAC,OAAO,CAAC,UAAU,CAAC;SACxC,CAAC,CAAC;QACH,OAAO,QAAQ,CAAC,EAAE,CAAC;IACrB,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,KAAK,CAAC;IACf,CAAC;AACH,CAAC"}
@@ -0,0 +1,233 @@
1
+ /**
2
+ * The shape of every entity Openhands mints, as plain data (W2 of the IXO
3
+ * alignment plan). Pure functions, no chain client, no `node:` builtin, so the
4
+ * `chain` barrel stays isomorphic and the same builders serve the browser's
5
+ * poster, the worker, the MCP and every script. The caller wraps the result
6
+ * in `MsgCreateEntity.fromPartial` / `LinkedResource.fromPartial`.
7
+ *
8
+ * What "the IXO shape" is (verified on chain and in the portal's own
9
+ * `createEntity.ts`, 2026-10-09):
10
+ *
11
+ * - `context` is `[{ixo: https://w3id.org/ixo/context/v1}, {class: <protocol DID>}]`;
12
+ * the class is the `protocol/...` the entity is created from.
13
+ * - `service` carries `#matrix` (type `MatrixHomeServer` — what the portal and
14
+ * the evals-engine match on) and, while the claim lane still serves public
15
+ * CIDs, `#ipfs`. Never `#cellnode`.
16
+ * - `linkedResource` carries `#pro` (type `Settings`, description `Profile`)
17
+ * and `#dmn` (type `domainCard`) on every entity; `#done`, `#rub`, `#vct`
18
+ * where the kind calls for them. `serviceEndpoint` is where the bytes are,
19
+ * `proof` their content address.
20
+ * - `linkedEntity` links a deed to its claim protocol (`verifiableClaim`) and
21
+ * a campaign ask to its campaign protocol (`partOf`). No link to any DAO —
22
+ * with one exception, agreed 2026-10-14 for OpenHands HQ: a deed posted FOR
23
+ * an org carries `requestedBy` → that org (`dao`), and the org lists the deed
24
+ * back as `request`; the engine takes the company from the pair, since each
25
+ * side can only be written by its own keys. Without an org, nothing.
26
+ */
27
+ export declare const IXO_CONTEXT_URL = "https://w3id.org/ixo/context/v1";
28
+ /** A DID of the entity module's shape, `did:ixo:entity:<32 hex>`. */
29
+ export declare const isEntityDid: (value: unknown) => value is string;
30
+ export type EntityKind = "deed/request" | "protocol/deed" | "protocol/verifiableClaim" | "oracle";
31
+ export interface ContextEntry {
32
+ key: string;
33
+ val: string;
34
+ }
35
+ /** The JSON-LD context every classed entity carries: the ixo vocabulary and the class it was created from. */
36
+ export declare function classContext(classDid: string): ContextEntry[];
37
+ export interface ServiceShape {
38
+ id: string;
39
+ type: string;
40
+ serviceEndpoint: string;
41
+ }
42
+ /** `{id}#matrix`, the type readers match on (`MatrixHomeServer`), the homeserver without a trailing slash. */
43
+ export declare const matrixService: (homeserver: string) => ServiceShape;
44
+ /** `{id}#ipfs` — kept only while claim bodies and attachments are served as public CIDs. */
45
+ export declare const ipfsGatewayService: (gatewayUrl: string) => ServiceShape;
46
+ export interface ResourceShape {
47
+ id: string;
48
+ type: string;
49
+ description: string;
50
+ mediaType: string;
51
+ serviceEndpoint: string;
52
+ proof: string;
53
+ encrypted: "false";
54
+ right: "";
55
+ }
56
+ /** Where a document lives and its content address. */
57
+ export interface DocRef {
58
+ url: string;
59
+ proof: string;
60
+ }
61
+ /** `#pro` — blocksync surfaces it as `settings.Profile`; Trace, the portal and `data/profiles.ts` read the name from it. */
62
+ export declare const profileResource: (doc: DocRef) => ResourceShape;
63
+ /** `#dmn` — the domain card; the indexer finds it by this type. */
64
+ export declare const domainCardResource: (doc: DocRef) => ResourceShape;
65
+ /** `#done` — the ask's terms; readers match the type, not the fragment. */
66
+ export declare const doneMeansResource: (doc: DocRef) => ResourceShape;
67
+ /** `#rub` — the evals-engine rubric; the engine matches `type === "rubric"` at an id ending `#rub`, and the proof is its hex sha256. */
68
+ export declare const rubricResource: (doc: DocRef) => ResourceShape;
69
+ /** `#vct` — the claim form a rubric binds to; the engine finds it by id suffix on the collection's protocol. */
70
+ export declare const claimFormResource: (doc: DocRef) => ResourceShape;
71
+ export interface LinkedEntityShape {
72
+ id: string;
73
+ type: string;
74
+ relationship: string;
75
+ service: "";
76
+ }
77
+ /** A deed → the `protocol/verifiableClaim` its collections point at. */
78
+ export declare const verifiableClaimLink: (protocolDid: string) => LinkedEntityShape;
79
+ /** A campaign ask → its campaign `protocol/deed`. Never a DAO: the only `partOf` this estate writes. */
80
+ export declare const campaignLink: (campaignProtocolDid: string) => LinkedEntityShape;
81
+ /**
82
+ * The deed's half of the two-sided org link (OpenHands HQ, 2026-10-14): the
83
+ * org's IID lists the deed as `request`, the deed lists the org as
84
+ * `requestedBy`, and the engine counts the company only when both agree. The
85
+ * one DAO link the shape has, and only on a deed posted for an org.
86
+ */
87
+ export declare const requestedByLink: (orgDid: string) => LinkedEntityShape;
88
+ /** The org's half: on the org's IID, the deed it requested. Written by a key with authentication on the org (OpenHands HQ). */
89
+ export declare const requestLink: (deedDid: string) => LinkedEntityShape;
90
+ /** A caller's own linked resource for a deed — e.g. `#payoutTerms` for an off-chain rail — before it is checked and completed. */
91
+ export interface ExtraResource {
92
+ /** `{id}#<fragment>`; the shape's own fragments are refused. */
93
+ id: string;
94
+ type: string;
95
+ description?: string;
96
+ mediaType: string;
97
+ serviceEndpoint: string;
98
+ /** The content address of the exact bytes at `serviceEndpoint` (CIDv1 raw sha-256, as every document here). */
99
+ proof: string;
100
+ }
101
+ /** Checks a caller's resource and completes it to the chain's shape. */
102
+ export declare function extraResource(input: ExtraResource): ResourceShape;
103
+ export interface ProfileInput {
104
+ name: string;
105
+ description?: string;
106
+ orgName?: string;
107
+ brand?: string;
108
+ location?: string;
109
+ image?: string;
110
+ logo?: string;
111
+ }
112
+ export declare function buildProfile(input: ProfileInput): {
113
+ "@context": {
114
+ ixo: string;
115
+ "@id": string;
116
+ type: string;
117
+ "@protected": boolean;
118
+ };
119
+ id: string;
120
+ type: string;
121
+ orgName: string;
122
+ name: string;
123
+ image: string;
124
+ logo: string;
125
+ brand: string;
126
+ location: string;
127
+ description: string;
128
+ attributes: {
129
+ key: string;
130
+ value: string;
131
+ }[];
132
+ metrics: unknown[];
133
+ };
134
+ export type DomainCardSubjectType = "ixo:Deed" | "ixo:Protocol" | "ixo:Oracle";
135
+ export interface DomainCardInput {
136
+ /** The entity the card describes (also its issuer unless `issuer` is given). */
137
+ did: string;
138
+ issuer?: string;
139
+ type: DomainCardSubjectType;
140
+ name: string;
141
+ description: string;
142
+ /** The ask's or protocol's page. */
143
+ url?: string;
144
+ logo?: string;
145
+ /** Cover images, first is the hero. */
146
+ image?: string[];
147
+ keywords?: string[];
148
+ /** The `#done` terms (or any document the card is about). */
149
+ relatedDocument?: string;
150
+ /** Campaign, poster, protocol — `{ type, id, relationship }` as the card spec lays them out. */
151
+ relationships?: {
152
+ type: string;
153
+ id: string;
154
+ relationship: string;
155
+ }[];
156
+ geo?: {
157
+ latitude: number;
158
+ longitude: number;
159
+ };
160
+ validFrom?: string;
161
+ }
162
+ /**
163
+ * The `#dmn` document: a Verifiable Credential of type `ixo:DomainCard` per
164
+ * `ixoworld/domainCards` (`schemas/ixo-domain-card-1.json`). Unsigned here —
165
+ * the indexer and the portal never verify a proof; a signer can add one.
166
+ */
167
+ export declare function buildDomainCard(input: DomainCardInput): {
168
+ "@context": readonly ["https://www.w3.org/ns/credentials/v2", "https://w3id.org/ixo/context/v1", {
169
+ readonly attribute: "https://w3id.org/ixo/attributes/v1/";
170
+ readonly schema: "https://schema.org/";
171
+ readonly ixo: "https://w3id.org/ixo/vocab/v1";
172
+ readonly prov: "http://www.w3.org/ns/prov#";
173
+ readonly proj: "https://linked.data.gov.au/def/project#";
174
+ readonly xsd: "http://www.w3.org/2001/XMLSchema#";
175
+ readonly id: "@id";
176
+ readonly type: "@type";
177
+ readonly "@protected": true;
178
+ }];
179
+ id: string;
180
+ type: string[];
181
+ issuer: {
182
+ id: string;
183
+ };
184
+ validFrom: string;
185
+ credentialSchema: {
186
+ id: string;
187
+ type: string;
188
+ };
189
+ credentialSubject: Record<string, unknown>;
190
+ };
191
+ export interface EntityMessageInput {
192
+ kind: EntityKind;
193
+ /** The protocol this entity is created from. */
194
+ classDid: string;
195
+ relayerNode: string;
196
+ ownerAddress: string;
197
+ ownerDid: string;
198
+ /** Verification methods for the owner, as the chain SDK builds them (`createIidVerificationMethods`); passed through. */
199
+ verification: unknown[];
200
+ services: ServiceShape[];
201
+ resources: ResourceShape[];
202
+ linkedEntities?: LinkedEntityShape[];
203
+ /** The title — kept for the readers that still look here; 140 chars at most. */
204
+ alsoKnownAs?: string;
205
+ startDate: Date;
206
+ /** Default: a hundred years on, the portal's convention. */
207
+ endDate?: Date;
208
+ }
209
+ /**
210
+ * The `MsgCreateEntity` body, minus the proto wrapping. Refuses the shapes
211
+ * the plan retired: a `dao` ask, an empty context, a cellnode service, a
212
+ * relayer that is not an entity DID.
213
+ */
214
+ export declare function buildEntityMessage(input: EntityMessageInput): {
215
+ entityType: EntityKind;
216
+ entityStatus: number;
217
+ context: ContextEntry[];
218
+ verification: unknown[];
219
+ controller: string[];
220
+ ownerAddress: string;
221
+ ownerDid: string;
222
+ relayerNode: string;
223
+ alsoKnownAs: string;
224
+ service: ServiceShape[];
225
+ linkedResource: ResourceShape[];
226
+ linkedEntity: LinkedEntityShape[];
227
+ accordedRight: unknown[];
228
+ linkedClaim: unknown[];
229
+ startDate: Date;
230
+ endDate: Date;
231
+ };
232
+ export type EntityMessageShape = ReturnType<typeof buildEntityMessage>;
233
+ //# sourceMappingURL=entityShape.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"entityShape.d.ts","sourceRoot":"","sources":["../../../src/chain/entityShape.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,231 @@
1
+ /**
2
+ * The shape of every entity Openhands mints, as plain data (W2 of the IXO
3
+ * alignment plan). Pure functions, no chain client, no `node:` builtin, so the
4
+ * `chain` barrel stays isomorphic and the same builders serve the browser's
5
+ * poster, the worker, the MCP and every script. The caller wraps the result
6
+ * in `MsgCreateEntity.fromPartial` / `LinkedResource.fromPartial`.
7
+ *
8
+ * What "the IXO shape" is (verified on chain and in the portal's own
9
+ * `createEntity.ts`, 2026-10-09):
10
+ *
11
+ * - `context` is `[{ixo: https://w3id.org/ixo/context/v1}, {class: <protocol DID>}]`;
12
+ * the class is the `protocol/...` the entity is created from.
13
+ * - `service` carries `#matrix` (type `MatrixHomeServer` — what the portal and
14
+ * the evals-engine match on) and, while the claim lane still serves public
15
+ * CIDs, `#ipfs`. Never `#cellnode`.
16
+ * - `linkedResource` carries `#pro` (type `Settings`, description `Profile`)
17
+ * and `#dmn` (type `domainCard`) on every entity; `#done`, `#rub`, `#vct`
18
+ * where the kind calls for them. `serviceEndpoint` is where the bytes are,
19
+ * `proof` their content address.
20
+ * - `linkedEntity` links a deed to its claim protocol (`verifiableClaim`) and
21
+ * a campaign ask to its campaign protocol (`partOf`). No link to any DAO —
22
+ * with one exception, agreed 2026-10-14 for OpenHands HQ: a deed posted FOR
23
+ * an org carries `requestedBy` → that org (`dao`), and the org lists the deed
24
+ * back as `request`; the engine takes the company from the pair, since each
25
+ * side can only be written by its own keys. Without an org, nothing.
26
+ */
27
+ export const IXO_CONTEXT_URL = "https://w3id.org/ixo/context/v1";
28
+ /** A DID of the entity module's shape, `did:ixo:entity:<32 hex>`. */
29
+ export const isEntityDid = (value) => typeof value === "string" && /^did:ixo:entity:[0-9a-f]{32}$/.test(value);
30
+ /** The JSON-LD context every classed entity carries: the ixo vocabulary and the class it was created from. */
31
+ export function classContext(classDid) {
32
+ if (!isEntityDid(classDid))
33
+ throw new Error(`a class must be an entity DID, got ${JSON.stringify(classDid)}`);
34
+ return [
35
+ { key: "ixo", val: IXO_CONTEXT_URL },
36
+ { key: "class", val: classDid }
37
+ ];
38
+ }
39
+ /** `{id}#matrix`, the type readers match on (`MatrixHomeServer`), the homeserver without a trailing slash. */
40
+ export const matrixService = (homeserver) => ({ id: "{id}#matrix", type: "MatrixHomeServer", serviceEndpoint: homeserver.replace(/\/+$/, "") });
41
+ /** `{id}#ipfs` — kept only while claim bodies and attachments are served as public CIDs. */
42
+ export const ipfsGatewayService = (gatewayUrl) => ({ id: "{id}#ipfs", type: "Ipfs", serviceEndpoint: `${gatewayUrl.replace(/\/+$/, "")}/ipfs/` });
43
+ const resource = (fragment, type, description, mediaType, doc) => {
44
+ if (!doc.url?.trim() || !doc.proof?.trim())
45
+ throw new Error(`#${fragment} needs both a url and a proof`);
46
+ return { id: `{id}#${fragment}`, type, description, mediaType, serviceEndpoint: doc.url.trim(), proof: doc.proof.trim(), encrypted: "false", right: "" };
47
+ };
48
+ /** `#pro` — blocksync surfaces it as `settings.Profile`; Trace, the portal and `data/profiles.ts` read the name from it. */
49
+ export const profileResource = (doc) => resource("pro", "Settings", "Profile", "application/ld+json", doc);
50
+ /** `#dmn` — the domain card; the indexer finds it by this type. */
51
+ export const domainCardResource = (doc) => resource("dmn", "domainCard", "Domain card", "application/ld+json", doc);
52
+ /** `#done` — the ask's terms; readers match the type, not the fragment. */
53
+ export const doneMeansResource = (doc) => resource("done", "DoneMeans", "What would count as done, published before the work", "application/json", doc);
54
+ /** `#rub` — the evals-engine rubric; the engine matches `type === "rubric"` at an id ending `#rub`, and the proof is its hex sha256. */
55
+ export const rubricResource = (doc) => {
56
+ /* The engine refuses anything else (hash_mismatch / endpoint): an https address, never ipfs: or a CID proof. */
57
+ if (!/^https:\/\//.test(doc.url))
58
+ throw new Error(`#rub needs an https address, got ${JSON.stringify(doc.url)}`);
59
+ if (!/^[0-9a-f]{64}$/.test(doc.proof))
60
+ throw new Error(`#rub's proof is the lowercase sha256 hex of its bytes, got ${JSON.stringify(doc.proof)}`);
61
+ return resource("rub", "rubric", "The same terms, in the evals-engine's rubric format", "application/ld+json", doc);
62
+ };
63
+ /** `#vct` — the claim form a rubric binds to; the engine finds it by id suffix on the collection's protocol. */
64
+ export const claimFormResource = (doc) => resource("vct", "surveyTemplate", "The claim form this protocol's rubrics are bound to", "application/ld+json", doc);
65
+ /** A deed → the `protocol/verifiableClaim` its collections point at. */
66
+ export const verifiableClaimLink = (protocolDid) => {
67
+ if (!isEntityDid(protocolDid))
68
+ throw new Error(`verifiableClaim link needs an entity DID, got ${JSON.stringify(protocolDid)}`);
69
+ return { id: protocolDid, type: "protocol/verifiableClaim", relationship: "verifiableClaim", service: "" };
70
+ };
71
+ /** A campaign ask → its campaign `protocol/deed`. Never a DAO: the only `partOf` this estate writes. */
72
+ export const campaignLink = (campaignProtocolDid) => {
73
+ if (!isEntityDid(campaignProtocolDid))
74
+ throw new Error(`partOf link needs an entity DID, got ${JSON.stringify(campaignProtocolDid)}`);
75
+ return { id: campaignProtocolDid, type: "protocol/deed", relationship: "partOf", service: "" };
76
+ };
77
+ /**
78
+ * The deed's half of the two-sided org link (OpenHands HQ, 2026-10-14): the
79
+ * org's IID lists the deed as `request`, the deed lists the org as
80
+ * `requestedBy`, and the engine counts the company only when both agree. The
81
+ * one DAO link the shape has, and only on a deed posted for an org.
82
+ */
83
+ export const requestedByLink = (orgDid) => {
84
+ if (!isEntityDid(orgDid))
85
+ throw new Error(`requestedBy link needs the org's entity DID, got ${JSON.stringify(orgDid)}`);
86
+ return { id: orgDid, type: "dao", relationship: "requestedBy", service: "" };
87
+ };
88
+ /** The org's half: on the org's IID, the deed it requested. Written by a key with authentication on the org (OpenHands HQ). */
89
+ export const requestLink = (deedDid) => {
90
+ if (!isEntityDid(deedDid))
91
+ throw new Error(`request link needs the deed's entity DID, got ${JSON.stringify(deedDid)}`);
92
+ return { id: deedDid, type: "deed/request", relationship: "request", service: "" };
93
+ };
94
+ const OWN_FRAGMENTS = new Set(["pro", "dmn", "done", "rub", "vct", "rules"]);
95
+ /** Checks a caller's resource and completes it to the chain's shape. */
96
+ export function extraResource(input) {
97
+ const match = /^\{id\}#([A-Za-z][A-Za-z0-9_-]{0,63})$/.exec(input.id);
98
+ if (!match)
99
+ throw new Error(`an extra resource's id is "{id}#<fragment>", got ${JSON.stringify(input.id)}`);
100
+ if (OWN_FRAGMENTS.has(match[1]))
101
+ throw new Error(`#${match[1]} is the shape's own fragment; an extra resource may not take it`);
102
+ if (!input.type?.trim() || !input.mediaType?.trim())
103
+ throw new Error(`#${match[1]} needs a type and a mediaType`);
104
+ const url = (input.serviceEndpoint ?? "").trim();
105
+ if (url && !/^https:\/\/\S+$/.test(url))
106
+ throw new Error(`#${match[1]} needs an https serviceEndpoint, got ${JSON.stringify(input.serviceEndpoint)}`);
107
+ return resource(match[1], input.type.trim(), (input.description ?? "").trim(), input.mediaType.trim(), { url: input.serviceEndpoint, proof: input.proof });
108
+ }
109
+ /** The `#pro` document, exactly the shape the portal writes (`createEntity.ts`) and every reader expects (`type: "profile"`, `name`). */
110
+ /* Names and descriptions are an ask's own words — a stranger's — and reach IXO's
111
+ index and portals through the card. Bounded here, whatever the door was. */
112
+ const NAME_MAX = 140;
113
+ const DESCRIPTION_MAX = 1000;
114
+ export function buildProfile(input) {
115
+ const name = input.name.trim().slice(0, NAME_MAX);
116
+ if (!name)
117
+ throw new Error("a profile needs a name");
118
+ return {
119
+ "@context": { ixo: "https://w3id.org/ixo/ns/protocol/", "@id": "@type", type: "@type", "@protected": true },
120
+ id: "ixo:entity#profile",
121
+ type: "profile",
122
+ orgName: (input.orgName ?? "Openhands").trim(),
123
+ name,
124
+ image: input.image ?? "",
125
+ logo: input.logo ?? "",
126
+ brand: (input.brand ?? "Openhands").trim(),
127
+ location: (input.location ?? "Global").trim(),
128
+ description: (input.description ?? "").trim().slice(0, DESCRIPTION_MAX),
129
+ attributes: [],
130
+ metrics: []
131
+ };
132
+ }
133
+ const CARD_CONTEXT = [
134
+ "https://www.w3.org/ns/credentials/v2",
135
+ "https://w3id.org/ixo/context/v1",
136
+ {
137
+ attribute: "https://w3id.org/ixo/attributes/v1/",
138
+ schema: "https://schema.org/",
139
+ ixo: "https://w3id.org/ixo/vocab/v1",
140
+ prov: "http://www.w3.org/ns/prov#",
141
+ proj: "https://linked.data.gov.au/def/project#",
142
+ xsd: "http://www.w3.org/2001/XMLSchema#",
143
+ id: "@id",
144
+ type: "@type",
145
+ "@protected": true
146
+ }
147
+ ];
148
+ const imageObject = (url) => ({ type: "schema:ImageObject", id: url, contentUrl: url });
149
+ /**
150
+ * The `#dmn` document: a Verifiable Credential of type `ixo:DomainCard` per
151
+ * `ixoworld/domainCards` (`schemas/ixo-domain-card-1.json`). Unsigned here —
152
+ * the indexer and the portal never verify a proof; a signer can add one.
153
+ */
154
+ export function buildDomainCard(input) {
155
+ if (!isEntityDid(input.did))
156
+ throw new Error(`a domain card needs the entity's DID, got ${JSON.stringify(input.did)}`);
157
+ const name = input.name.trim().slice(0, NAME_MAX);
158
+ if (!name)
159
+ throw new Error("a domain card needs a name");
160
+ const subject = {
161
+ id: input.did,
162
+ type: [input.type],
163
+ name,
164
+ description: input.description.trim().slice(0, DESCRIPTION_MAX)
165
+ };
166
+ if (input.url)
167
+ subject.url = input.url;
168
+ if (input.logo)
169
+ subject.logo = { ...imageObject(input.logo), "schema:additionalProperty": [
170
+ { type: "schema:PropertyValue", name: "logoLight", value: imageObject(input.logo) },
171
+ { type: "schema:PropertyValue", name: "logoDark", value: imageObject(input.logo) }
172
+ ] };
173
+ if (input.image?.length)
174
+ subject.image = input.image.map(imageObject);
175
+ if (input.keywords?.length)
176
+ subject.keywords = input.keywords;
177
+ if (input.geo)
178
+ subject.geoCoordinates = { latitude: String(input.geo.latitude), longitude: String(input.geo.longitude) };
179
+ if (input.relatedDocument)
180
+ subject.relatedDocument = { type: "schema:CreativeWork", id: input.relatedDocument };
181
+ if (input.relationships?.length)
182
+ subject.relationships = input.relationships;
183
+ return {
184
+ "@context": CARD_CONTEXT,
185
+ id: `${input.did}#dmn`,
186
+ type: ["VerifiableCredential", "ixo:DomainCard"],
187
+ issuer: { id: input.issuer ?? input.did },
188
+ validFrom: input.validFrom ?? new Date().toISOString().slice(0, 19) + "Z",
189
+ credentialSchema: { id: "https://w3id.org/ixo/protocol/schema/v1#domainCard", type: "JsonSchema" },
190
+ credentialSubject: subject
191
+ };
192
+ }
193
+ const HUNDRED_YEARS_MS = 100 * 365 * 24 * 3600 * 1000;
194
+ /**
195
+ * The `MsgCreateEntity` body, minus the proto wrapping. Refuses the shapes
196
+ * the plan retired: a `dao` ask, an empty context, a cellnode service, a
197
+ * relayer that is not an entity DID.
198
+ */
199
+ export function buildEntityMessage(input) {
200
+ if (!isEntityDid(input.relayerNode))
201
+ throw new Error(`relayerNode must be an entity DID, got ${JSON.stringify(input.relayerNode)}`);
202
+ if (input.services.some((service) => service.type === "Cellnode" || /#cellnode$/.test(service.id)))
203
+ throw new Error("no #cellnode service: documents live on Matrix media (rule of 2026-10-09)");
204
+ if (!input.services.some((service) => service.type === "MatrixHomeServer"))
205
+ throw new Error("every entity declares its Matrix homeserver as a MatrixHomeServer service");
206
+ if (!input.resources.some((item) => item.id === "{id}#pro"))
207
+ throw new Error("every entity carries a #pro profile — it is the only name Trace reads");
208
+ const ids = input.resources.map((item) => item.id);
209
+ const duplicate = ids.find((id, index) => ids.indexOf(id) !== index);
210
+ if (duplicate)
211
+ throw new Error(`linked resource ${duplicate} appears twice`);
212
+ return {
213
+ entityType: input.kind,
214
+ entityStatus: 0,
215
+ context: classContext(input.classDid),
216
+ verification: input.verification,
217
+ controller: [input.ownerDid],
218
+ ownerAddress: input.ownerAddress,
219
+ ownerDid: input.ownerDid,
220
+ relayerNode: input.relayerNode,
221
+ alsoKnownAs: (input.alsoKnownAs ?? "").slice(0, 140),
222
+ service: input.services,
223
+ linkedResource: input.resources,
224
+ linkedEntity: input.linkedEntities ?? [],
225
+ accordedRight: [],
226
+ linkedClaim: [],
227
+ startDate: input.startDate,
228
+ endDate: input.endDate ?? new Date(input.startDate.getTime() + HUNDRED_YEARS_MS)
229
+ };
230
+ }
231
+ //# sourceMappingURL=entityShape.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"entityShape.js","sourceRoot":"","sources":["../../../src/chain/entityShape.ts"],"names":[],"mappings":"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"}