@ixo/decision-oracle 0.0.0-stage → 0.2.1

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 (1118) hide show
  1. package/LICENSE +201 -0
  2. package/README.md +794 -2
  3. package/dist/act.d.ts +87 -0
  4. package/dist/act.d.ts.map +1 -0
  5. package/dist/act.js +20 -0
  6. package/dist/act.js.map +1 -0
  7. package/dist/app.d.ts +22 -0
  8. package/dist/app.d.ts.map +1 -0
  9. package/dist/app.js +128 -0
  10. package/dist/app.js.map +1 -0
  11. package/dist/c2pa.wasm +0 -0
  12. package/dist/cli/commands/api.d.ts +50 -0
  13. package/dist/cli/commands/api.d.ts.map +1 -0
  14. package/dist/cli/commands/api.js +737 -0
  15. package/dist/cli/commands/api.js.map +1 -0
  16. package/dist/cli/commands/create-collection.d.ts +40 -0
  17. package/dist/cli/commands/create-collection.d.ts.map +1 -0
  18. package/dist/cli/commands/create-collection.js +318 -0
  19. package/dist/cli/commands/create-collection.js.map +1 -0
  20. package/dist/cli/commands/create-deed.d.ts +31 -0
  21. package/dist/cli/commands/create-deed.d.ts.map +1 -0
  22. package/dist/cli/commands/create-deed.js +208 -0
  23. package/dist/cli/commands/create-deed.js.map +1 -0
  24. package/dist/cli/commands/delegation.d.ts +26 -0
  25. package/dist/cli/commands/delegation.d.ts.map +1 -0
  26. package/dist/cli/commands/delegation.js +162 -0
  27. package/dist/cli/commands/delegation.js.map +1 -0
  28. package/dist/cli/commands/derive.d.ts +22 -0
  29. package/dist/cli/commands/derive.d.ts.map +1 -0
  30. package/dist/cli/commands/derive.js +53 -0
  31. package/dist/cli/commands/derive.js.map +1 -0
  32. package/dist/cli/commands/engine.d.ts +25 -0
  33. package/dist/cli/commands/engine.d.ts.map +1 -0
  34. package/dist/cli/commands/engine.js +107 -0
  35. package/dist/cli/commands/engine.js.map +1 -0
  36. package/dist/cli/commands/erase.d.ts +17 -0
  37. package/dist/cli/commands/erase.d.ts.map +1 -0
  38. package/dist/cli/commands/erase.js +117 -0
  39. package/dist/cli/commands/erase.js.map +1 -0
  40. package/dist/cli/commands/facts-run.d.ts +30 -0
  41. package/dist/cli/commands/facts-run.d.ts.map +1 -0
  42. package/dist/cli/commands/facts-run.js +409 -0
  43. package/dist/cli/commands/facts-run.js.map +1 -0
  44. package/dist/cli/commands/facts-scaffold.d.ts +22 -0
  45. package/dist/cli/commands/facts-scaffold.d.ts.map +1 -0
  46. package/dist/cli/commands/facts-scaffold.js +208 -0
  47. package/dist/cli/commands/facts-scaffold.js.map +1 -0
  48. package/dist/cli/commands/init.d.ts +18 -0
  49. package/dist/cli/commands/init.d.ts.map +1 -0
  50. package/dist/cli/commands/init.js +34 -0
  51. package/dist/cli/commands/init.js.map +1 -0
  52. package/dist/cli/commands/login.d.ts +9 -0
  53. package/dist/cli/commands/login.d.ts.map +1 -0
  54. package/dist/cli/commands/login.js +16 -0
  55. package/dist/cli/commands/login.js.map +1 -0
  56. package/dist/cli/commands/logout.d.ts +10 -0
  57. package/dist/cli/commands/logout.d.ts.map +1 -0
  58. package/dist/cli/commands/logout.js +28 -0
  59. package/dist/cli/commands/logout.js.map +1 -0
  60. package/dist/cli/commands/manifest.d.ts +12 -0
  61. package/dist/cli/commands/manifest.d.ts.map +1 -0
  62. package/dist/cli/commands/manifest.js +48 -0
  63. package/dist/cli/commands/manifest.js.map +1 -0
  64. package/dist/cli/commands/oracle-init.d.ts +48 -0
  65. package/dist/cli/commands/oracle-init.d.ts.map +1 -0
  66. package/dist/cli/commands/oracle-init.js +1122 -0
  67. package/dist/cli/commands/oracle-init.js.map +1 -0
  68. package/dist/cli/commands/org.d.ts +28 -0
  69. package/dist/cli/commands/org.d.ts.map +1 -0
  70. package/dist/cli/commands/org.js +309 -0
  71. package/dist/cli/commands/org.js.map +1 -0
  72. package/dist/cli/commands/protocol-review.d.ts +20 -0
  73. package/dist/cli/commands/protocol-review.d.ts.map +1 -0
  74. package/dist/cli/commands/protocol-review.js +162 -0
  75. package/dist/cli/commands/protocol-review.js.map +1 -0
  76. package/dist/cli/commands/publish-protocol.d.ts +43 -0
  77. package/dist/cli/commands/publish-protocol.d.ts.map +1 -0
  78. package/dist/cli/commands/publish-protocol.js +345 -0
  79. package/dist/cli/commands/publish-protocol.js.map +1 -0
  80. package/dist/cli/commands/register.d.ts +16 -0
  81. package/dist/cli/commands/register.d.ts.map +1 -0
  82. package/dist/cli/commands/register.js +54 -0
  83. package/dist/cli/commands/register.js.map +1 -0
  84. package/dist/cli/commands/relink.d.ts +11 -0
  85. package/dist/cli/commands/relink.d.ts.map +1 -0
  86. package/dist/cli/commands/relink.js +36 -0
  87. package/dist/cli/commands/relink.js.map +1 -0
  88. package/dist/cli/commands/rubric-fetch-form.d.ts +16 -0
  89. package/dist/cli/commands/rubric-fetch-form.d.ts.map +1 -0
  90. package/dist/cli/commands/rubric-fetch-form.js +83 -0
  91. package/dist/cli/commands/rubric-fetch-form.js.map +1 -0
  92. package/dist/cli/commands/rubric-validate.d.ts +72 -0
  93. package/dist/cli/commands/rubric-validate.d.ts.map +1 -0
  94. package/dist/cli/commands/rubric-validate.js +163 -0
  95. package/dist/cli/commands/rubric-validate.js.map +1 -0
  96. package/dist/cli/commands/scan.d.ts +13 -0
  97. package/dist/cli/commands/scan.d.ts.map +1 -0
  98. package/dist/cli/commands/scan.js +39 -0
  99. package/dist/cli/commands/scan.js.map +1 -0
  100. package/dist/cli/commands/skills.d.ts +11 -0
  101. package/dist/cli/commands/skills.d.ts.map +1 -0
  102. package/dist/cli/commands/skills.js +19 -0
  103. package/dist/cli/commands/skills.js.map +1 -0
  104. package/dist/cli/commands/submit-claim.d.ts +25 -0
  105. package/dist/cli/commands/submit-claim.d.ts.map +1 -0
  106. package/dist/cli/commands/submit-claim.js +155 -0
  107. package/dist/cli/commands/submit-claim.js.map +1 -0
  108. package/dist/cli/index.d.ts +15 -0
  109. package/dist/cli/index.d.ts.map +1 -0
  110. package/dist/cli/index.js +206 -0
  111. package/dist/cli/index.js.map +1 -0
  112. package/dist/cli/lib/agent-card-schema.d.ts +8 -0
  113. package/dist/cli/lib/agent-card-schema.d.ts.map +1 -0
  114. package/dist/cli/lib/agent-card-schema.js +169 -0
  115. package/dist/cli/lib/agent-card-schema.js.map +1 -0
  116. package/dist/cli/lib/ai-rest.d.ts +12 -0
  117. package/dist/cli/lib/ai-rest.d.ts.map +1 -0
  118. package/dist/cli/lib/ai-rest.js +36 -0
  119. package/dist/cli/lib/ai-rest.js.map +1 -0
  120. package/dist/cli/lib/args.d.ts +33 -0
  121. package/dist/cli/lib/args.d.ts.map +1 -0
  122. package/dist/cli/lib/args.js +24 -0
  123. package/dist/cli/lib/args.js.map +1 -0
  124. package/dist/cli/lib/authhub.d.ts +7 -0
  125. package/dist/cli/lib/authhub.d.ts.map +1 -0
  126. package/dist/cli/lib/authhub.js +210 -0
  127. package/dist/cli/lib/authhub.js.map +1 -0
  128. package/dist/cli/lib/chain.d.ts +264 -0
  129. package/dist/cli/lib/chain.d.ts.map +1 -0
  130. package/dist/cli/lib/chain.js +584 -0
  131. package/dist/cli/lib/chain.js.map +1 -0
  132. package/dist/cli/lib/devvars.d.ts +59 -0
  133. package/dist/cli/lib/devvars.d.ts.map +1 -0
  134. package/dist/cli/lib/devvars.js +206 -0
  135. package/dist/cli/lib/devvars.js.map +1 -0
  136. package/dist/cli/lib/engine.d.ts +54 -0
  137. package/dist/cli/lib/engine.d.ts.map +1 -0
  138. package/dist/cli/lib/engine.js +112 -0
  139. package/dist/cli/lib/engine.js.map +1 -0
  140. package/dist/cli/lib/identity-cards.d.ts +188 -0
  141. package/dist/cli/lib/identity-cards.d.ts.map +1 -0
  142. package/dist/cli/lib/identity-cards.js +261 -0
  143. package/dist/cli/lib/identity-cards.js.map +1 -0
  144. package/dist/cli/lib/matrix-account.d.ts +79 -0
  145. package/dist/cli/lib/matrix-account.d.ts.map +1 -0
  146. package/dist/cli/lib/matrix-account.js +228 -0
  147. package/dist/cli/lib/matrix-account.js.map +1 -0
  148. package/dist/cli/lib/oracle-account.d.ts +108 -0
  149. package/dist/cli/lib/oracle-account.d.ts.map +1 -0
  150. package/dist/cli/lib/oracle-account.js +207 -0
  151. package/dist/cli/lib/oracle-account.js.map +1 -0
  152. package/dist/cli/lib/project.d.ts +22 -0
  153. package/dist/cli/lib/project.d.ts.map +1 -0
  154. package/dist/cli/lib/project.js +62 -0
  155. package/dist/cli/lib/project.js.map +1 -0
  156. package/dist/cli/lib/session.d.ts +109 -0
  157. package/dist/cli/lib/session.d.ts.map +1 -0
  158. package/dist/cli/lib/session.js +354 -0
  159. package/dist/cli/lib/session.js.map +1 -0
  160. package/dist/cli/lib/workorder.d.ts +57 -0
  161. package/dist/cli/lib/workorder.d.ts.map +1 -0
  162. package/dist/cli/lib/workorder.js +101 -0
  163. package/dist/cli/lib/workorder.js.map +1 -0
  164. package/dist/config.d.ts +221 -0
  165. package/dist/config.d.ts.map +1 -0
  166. package/dist/config.js +431 -0
  167. package/dist/config.js.map +1 -0
  168. package/dist/context.d.ts +88 -0
  169. package/dist/context.d.ts.map +1 -0
  170. package/dist/context.js +9 -0
  171. package/dist/context.js.map +1 -0
  172. package/dist/contracts/api.d.ts +3367 -0
  173. package/dist/contracts/api.d.ts.map +1 -0
  174. package/dist/contracts/api.js +1303 -0
  175. package/dist/contracts/api.js.map +1 -0
  176. package/dist/contracts/capabilities.d.ts +126 -0
  177. package/dist/contracts/capabilities.d.ts.map +1 -0
  178. package/dist/contracts/capabilities.js +164 -0
  179. package/dist/contracts/capabilities.js.map +1 -0
  180. package/dist/contracts/claim-source.d.ts +98 -0
  181. package/dist/contracts/claim-source.d.ts.map +1 -0
  182. package/dist/contracts/claim-source.js +17 -0
  183. package/dist/contracts/claim-source.js.map +1 -0
  184. package/dist/contracts/errors.d.ts +150 -0
  185. package/dist/contracts/errors.d.ts.map +1 -0
  186. package/dist/contracts/errors.js +121 -0
  187. package/dist/contracts/errors.js.map +1 -0
  188. package/dist/contracts/index.d.ts +15 -0
  189. package/dist/contracts/index.d.ts.map +1 -0
  190. package/dist/contracts/index.js +11 -0
  191. package/dist/contracts/index.js.map +1 -0
  192. package/dist/contracts/payment-gate.d.ts +129 -0
  193. package/dist/contracts/payment-gate.d.ts.map +1 -0
  194. package/dist/contracts/payment-gate.js +24 -0
  195. package/dist/contracts/payment-gate.js.map +1 -0
  196. package/dist/contracts/start-api-claim.d.ts +90 -0
  197. package/dist/contracts/start-api-claim.d.ts.map +1 -0
  198. package/dist/contracts/start-api-claim.js +22 -0
  199. package/dist/contracts/start-api-claim.js.map +1 -0
  200. package/dist/contracts/webhooks.d.ts +1487 -0
  201. package/dist/contracts/webhooks.d.ts.map +1 -0
  202. package/dist/contracts/webhooks.js +71 -0
  203. package/dist/contracts/webhooks.js.map +1 -0
  204. package/dist/contracts/work-order.d.ts +29 -0
  205. package/dist/contracts/work-order.d.ts.map +1 -0
  206. package/dist/contracts/work-order.js +12 -0
  207. package/dist/contracts/work-order.js.map +1 -0
  208. package/dist/cron/ai-cost.d.ts +29 -0
  209. package/dist/cron/ai-cost.d.ts.map +1 -0
  210. package/dist/cron/ai-cost.js +80 -0
  211. package/dist/cron/ai-cost.js.map +1 -0
  212. package/dist/cron/api-lane.d.ts +39 -0
  213. package/dist/cron/api-lane.d.ts.map +1 -0
  214. package/dist/cron/api-lane.js +203 -0
  215. package/dist/cron/api-lane.js.map +1 -0
  216. package/dist/cron/backlog.d.ts +50 -0
  217. package/dist/cron/backlog.d.ts.map +1 -0
  218. package/dist/cron/backlog.js +115 -0
  219. package/dist/cron/backlog.js.map +1 -0
  220. package/dist/cron/billing.d.ts +11 -0
  221. package/dist/cron/billing.d.ts.map +1 -0
  222. package/dist/cron/billing.js +69 -0
  223. package/dist/cron/billing.js.map +1 -0
  224. package/dist/cron/collection.d.ts +50 -0
  225. package/dist/cron/collection.d.ts.map +1 -0
  226. package/dist/cron/collection.js +118 -0
  227. package/dist/cron/collection.js.map +1 -0
  228. package/dist/cron/funding.d.ts +16 -0
  229. package/dist/cron/funding.d.ts.map +1 -0
  230. package/dist/cron/funding.js +262 -0
  231. package/dist/cron/funding.js.map +1 -0
  232. package/dist/cron/payer-billing.d.ts +38 -0
  233. package/dist/cron/payer-billing.d.ts.map +1 -0
  234. package/dist/cron/payer-billing.js +119 -0
  235. package/dist/cron/payer-billing.js.map +1 -0
  236. package/dist/cron/scan.d.ts +43 -0
  237. package/dist/cron/scan.d.ts.map +1 -0
  238. package/dist/cron/scan.js +250 -0
  239. package/dist/cron/scan.js.map +1 -0
  240. package/dist/db/client.d.ts +14 -0
  241. package/dist/db/client.d.ts.map +1 -0
  242. package/dist/db/client.js +14 -0
  243. package/dist/db/client.js.map +1 -0
  244. package/dist/db/index.d.ts +7 -0
  245. package/dist/db/index.d.ts.map +1 -0
  246. package/dist/db/index.js +7 -0
  247. package/dist/db/index.js.map +1 -0
  248. package/dist/db/schema.d.ts +6738 -0
  249. package/dist/db/schema.d.ts.map +1 -0
  250. package/dist/db/schema.js +1433 -0
  251. package/dist/db/schema.js.map +1 -0
  252. package/dist/define-oracle.d.ts +32 -0
  253. package/dist/define-oracle.d.ts.map +1 -0
  254. package/dist/define-oracle.js +80 -0
  255. package/dist/define-oracle.js.map +1 -0
  256. package/dist/dev-oracle.d.ts +9 -0
  257. package/dist/dev-oracle.d.ts.map +1 -0
  258. package/dist/dev-oracle.js +19 -0
  259. package/dist/dev-oracle.js.map +1 -0
  260. package/dist/dev-worker.d.ts +10 -0
  261. package/dist/dev-worker.d.ts.map +1 -0
  262. package/dist/dev-worker.js +12 -0
  263. package/dist/dev-worker.js.map +1 -0
  264. package/dist/env.d.ts +146 -0
  265. package/dist/env.d.ts.map +1 -0
  266. package/dist/env.js +10 -0
  267. package/dist/env.js.map +1 -0
  268. package/dist/facts/exif.d.ts +43 -0
  269. package/dist/facts/exif.d.ts.map +1 -0
  270. package/dist/facts/exif.js +224 -0
  271. package/dist/facts/exif.js.map +1 -0
  272. package/dist/facts/fact.d.ts +62 -0
  273. package/dist/facts/fact.d.ts.map +1 -0
  274. package/dist/facts/fact.js +105 -0
  275. package/dist/facts/fact.js.map +1 -0
  276. package/dist/facts/geo.d.ts +55 -0
  277. package/dist/facts/geo.d.ts.map +1 -0
  278. package/dist/facts/geo.js +267 -0
  279. package/dist/facts/geo.js.map +1 -0
  280. package/dist/facts/index.d.ts +31 -0
  281. package/dist/facts/index.d.ts.map +1 -0
  282. package/dist/facts/index.js +27 -0
  283. package/dist/facts/index.js.map +1 -0
  284. package/dist/facts/linked-doc.d.ts +60 -0
  285. package/dist/facts/linked-doc.d.ts.map +1 -0
  286. package/dist/facts/linked-doc.js +101 -0
  287. package/dist/facts/linked-doc.js.map +1 -0
  288. package/dist/facts/types.d.ts +278 -0
  289. package/dist/facts/types.d.ts.map +1 -0
  290. package/dist/facts/types.js +19 -0
  291. package/dist/facts/types.js.map +1 -0
  292. package/dist/index.d.ts +25 -0
  293. package/dist/index.d.ts.map +1 -0
  294. package/dist/index.js +19 -0
  295. package/dist/index.js.map +1 -0
  296. package/dist/lib/api-lane/accept.d.ts +29 -0
  297. package/dist/lib/api-lane/accept.d.ts.map +1 -0
  298. package/dist/lib/api-lane/accept.js +218 -0
  299. package/dist/lib/api-lane/accept.js.map +1 -0
  300. package/dist/lib/api-lane/claim-list.d.ts +44 -0
  301. package/dist/lib/api-lane/claim-list.d.ts.map +1 -0
  302. package/dist/lib/api-lane/claim-list.js +92 -0
  303. package/dist/lib/api-lane/claim-list.js.map +1 -0
  304. package/dist/lib/api-lane/company.d.ts +56 -0
  305. package/dist/lib/api-lane/company.d.ts.map +1 -0
  306. package/dist/lib/api-lane/company.js +103 -0
  307. package/dist/lib/api-lane/company.js.map +1 -0
  308. package/dist/lib/api-lane/events.d.ts +21 -0
  309. package/dist/lib/api-lane/events.d.ts.map +1 -0
  310. package/dist/lib/api-lane/events.js +111 -0
  311. package/dist/lib/api-lane/events.js.map +1 -0
  312. package/dist/lib/api-lane/ids.d.ts +39 -0
  313. package/dist/lib/api-lane/ids.d.ts.map +1 -0
  314. package/dist/lib/api-lane/ids.js +78 -0
  315. package/dist/lib/api-lane/ids.js.map +1 -0
  316. package/dist/lib/api-lane/index.d.ts +16 -0
  317. package/dist/lib/api-lane/index.d.ts.map +1 -0
  318. package/dist/lib/api-lane/index.js +16 -0
  319. package/dist/lib/api-lane/index.js.map +1 -0
  320. package/dist/lib/api-lane/linked.d.ts +264 -0
  321. package/dist/lib/api-lane/linked.d.ts.map +1 -0
  322. package/dist/lib/api-lane/linked.js +272 -0
  323. package/dist/lib/api-lane/linked.js.map +1 -0
  324. package/dist/lib/api-lane/media-type.d.ts +15 -0
  325. package/dist/lib/api-lane/media-type.d.ts.map +1 -0
  326. package/dist/lib/api-lane/media-type.js +73 -0
  327. package/dist/lib/api-lane/media-type.js.map +1 -0
  328. package/dist/lib/api-lane/member-emails.d.ts +83 -0
  329. package/dist/lib/api-lane/member-emails.d.ts.map +1 -0
  330. package/dist/lib/api-lane/member-emails.js +213 -0
  331. package/dist/lib/api-lane/member-emails.js.map +1 -0
  332. package/dist/lib/api-lane/members.d.ts +42 -0
  333. package/dist/lib/api-lane/members.d.ts.map +1 -0
  334. package/dist/lib/api-lane/members.js +75 -0
  335. package/dist/lib/api-lane/members.js.map +1 -0
  336. package/dist/lib/api-lane/notify.d.ts +47 -0
  337. package/dist/lib/api-lane/notify.d.ts.map +1 -0
  338. package/dist/lib/api-lane/notify.js +240 -0
  339. package/dist/lib/api-lane/notify.js.map +1 -0
  340. package/dist/lib/api-lane/pause.d.ts +41 -0
  341. package/dist/lib/api-lane/pause.d.ts.map +1 -0
  342. package/dist/lib/api-lane/pause.js +155 -0
  343. package/dist/lib/api-lane/pause.js.map +1 -0
  344. package/dist/lib/api-lane/record.d.ts +76 -0
  345. package/dist/lib/api-lane/record.d.ts.map +1 -0
  346. package/dist/lib/api-lane/record.js +337 -0
  347. package/dist/lib/api-lane/record.js.map +1 -0
  348. package/dist/lib/api-lane/retention.d.ts +43 -0
  349. package/dist/lib/api-lane/retention.d.ts.map +1 -0
  350. package/dist/lib/api-lane/retention.js +176 -0
  351. package/dist/lib/api-lane/retention.js.map +1 -0
  352. package/dist/lib/api-lane/review.d.ts +76 -0
  353. package/dist/lib/api-lane/review.d.ts.map +1 -0
  354. package/dist/lib/api-lane/review.js +355 -0
  355. package/dist/lib/api-lane/review.js.map +1 -0
  356. package/dist/lib/api-lane/reviewers.d.ts +109 -0
  357. package/dist/lib/api-lane/reviewers.d.ts.map +1 -0
  358. package/dist/lib/api-lane/reviewers.js +755 -0
  359. package/dist/lib/api-lane/reviewers.js.map +1 -0
  360. package/dist/lib/api-lane/source-delete.d.ts +16 -0
  361. package/dist/lib/api-lane/source-delete.d.ts.map +1 -0
  362. package/dist/lib/api-lane/source-delete.js +50 -0
  363. package/dist/lib/api-lane/source-delete.js.map +1 -0
  364. package/dist/lib/api-lane/source.d.ts +19 -0
  365. package/dist/lib/api-lane/source.d.ts.map +1 -0
  366. package/dist/lib/api-lane/source.js +226 -0
  367. package/dist/lib/api-lane/source.js.map +1 -0
  368. package/dist/lib/api-lane/submitter.d.ts +22 -0
  369. package/dist/lib/api-lane/submitter.d.ts.map +1 -0
  370. package/dist/lib/api-lane/submitter.js +34 -0
  371. package/dist/lib/api-lane/submitter.js.map +1 -0
  372. package/dist/lib/api-lane/timeline.d.ts +20 -0
  373. package/dist/lib/api-lane/timeline.d.ts.map +1 -0
  374. package/dist/lib/api-lane/timeline.js +23 -0
  375. package/dist/lib/api-lane/timeline.js.map +1 -0
  376. package/dist/lib/api-lane/webhook-crypto.d.ts +44 -0
  377. package/dist/lib/api-lane/webhook-crypto.d.ts.map +1 -0
  378. package/dist/lib/api-lane/webhook-crypto.js +103 -0
  379. package/dist/lib/api-lane/webhook-crypto.js.map +1 -0
  380. package/dist/lib/api-lane/webhooks.d.ts +117 -0
  381. package/dist/lib/api-lane/webhooks.d.ts.map +1 -0
  382. package/dist/lib/api-lane/webhooks.js +503 -0
  383. package/dist/lib/api-lane/webhooks.js.map +1 -0
  384. package/dist/lib/archive.d.ts +64 -0
  385. package/dist/lib/archive.d.ts.map +1 -0
  386. package/dist/lib/archive.js +305 -0
  387. package/dist/lib/archive.js.map +1 -0
  388. package/dist/lib/bech32.d.ts +8 -0
  389. package/dist/lib/bech32.d.ts.map +1 -0
  390. package/dist/lib/bech32.js +39 -0
  391. package/dist/lib/bech32.js.map +1 -0
  392. package/dist/lib/claim-erase.d.ts +22 -0
  393. package/dist/lib/claim-erase.d.ts.map +1 -0
  394. package/dist/lib/claim-erase.js +44 -0
  395. package/dist/lib/claim-erase.js.map +1 -0
  396. package/dist/lib/cursor.d.ts +11 -0
  397. package/dist/lib/cursor.d.ts.map +1 -0
  398. package/dist/lib/cursor.js +20 -0
  399. package/dist/lib/cursor.js.map +1 -0
  400. package/dist/lib/email/send.d.ts +43 -0
  401. package/dist/lib/email/send.d.ts.map +1 -0
  402. package/dist/lib/email/send.js +71 -0
  403. package/dist/lib/email/send.js.map +1 -0
  404. package/dist/lib/email/template.d.ts +217 -0
  405. package/dist/lib/email/template.d.ts.map +1 -0
  406. package/dist/lib/email/template.js +713 -0
  407. package/dist/lib/email/template.js.map +1 -0
  408. package/dist/lib/engine/adr36.d.ts +56 -0
  409. package/dist/lib/engine/adr36.d.ts.map +1 -0
  410. package/dist/lib/engine/adr36.js +76 -0
  411. package/dist/lib/engine/adr36.js.map +1 -0
  412. package/dist/lib/engine/client.d.ts +162 -0
  413. package/dist/lib/engine/client.d.ts.map +1 -0
  414. package/dist/lib/engine/client.js +473 -0
  415. package/dist/lib/engine/client.js.map +1 -0
  416. package/dist/lib/engine/types.d.ts +1356 -0
  417. package/dist/lib/engine/types.d.ts.map +1 -0
  418. package/dist/lib/engine/types.js +562 -0
  419. package/dist/lib/engine/types.js.map +1 -0
  420. package/dist/lib/errors.d.ts +73 -0
  421. package/dist/lib/errors.d.ts.map +1 -0
  422. package/dist/lib/errors.js +96 -0
  423. package/dist/lib/errors.js.map +1 -0
  424. package/dist/lib/facts/builder.d.ts +88 -0
  425. package/dist/lib/facts/builder.d.ts.map +1 -0
  426. package/dist/lib/facts/builder.js +239 -0
  427. package/dist/lib/facts/builder.js.map +1 -0
  428. package/dist/lib/facts/ctx.d.ts +34 -0
  429. package/dist/lib/facts/ctx.d.ts.map +1 -0
  430. package/dist/lib/facts/ctx.js +51 -0
  431. package/dist/lib/facts/ctx.js.map +1 -0
  432. package/dist/lib/facts/expected.d.ts +23 -0
  433. package/dist/lib/facts/expected.d.ts.map +1 -0
  434. package/dist/lib/facts/expected.js +16 -0
  435. package/dist/lib/facts/expected.js.map +1 -0
  436. package/dist/lib/facts/fact-cache.d.ts +469 -0
  437. package/dist/lib/facts/fact-cache.d.ts.map +1 -0
  438. package/dist/lib/facts/fact-cache.js +52 -0
  439. package/dist/lib/facts/fact-cache.js.map +1 -0
  440. package/dist/lib/facts/factset.d.ts +608 -0
  441. package/dist/lib/facts/factset.d.ts.map +1 -0
  442. package/dist/lib/facts/factset.js +226 -0
  443. package/dist/lib/facts/factset.js.map +1 -0
  444. package/dist/lib/facts/producer.d.ts +190 -0
  445. package/dist/lib/facts/producer.d.ts.map +1 -0
  446. package/dist/lib/facts/producer.js +15 -0
  447. package/dist/lib/facts/producer.js.map +1 -0
  448. package/dist/lib/facts/runner.d.ts +111 -0
  449. package/dist/lib/facts/runner.d.ts.map +1 -0
  450. package/dist/lib/facts/runner.js +438 -0
  451. package/dist/lib/facts/runner.js.map +1 -0
  452. package/dist/lib/facts/stock/ai-check.d.ts +100 -0
  453. package/dist/lib/facts/stock/ai-check.d.ts.map +1 -0
  454. package/dist/lib/facts/stock/ai-check.js +526 -0
  455. package/dist/lib/facts/stock/ai-check.js.map +1 -0
  456. package/dist/lib/facts/stock/ai-inputs.d.ts +104 -0
  457. package/dist/lib/facts/stock/ai-inputs.d.ts.map +1 -0
  458. package/dist/lib/facts/stock/ai-inputs.js +332 -0
  459. package/dist/lib/facts/stock/ai-inputs.js.map +1 -0
  460. package/dist/lib/facts/stock/ai-provider.d.ts +105 -0
  461. package/dist/lib/facts/stock/ai-provider.d.ts.map +1 -0
  462. package/dist/lib/facts/stock/ai-provider.js +250 -0
  463. package/dist/lib/facts/stock/ai-provider.js.map +1 -0
  464. package/dist/lib/facts/stock/ai-unique.d.ts +85 -0
  465. package/dist/lib/facts/stock/ai-unique.d.ts.map +1 -0
  466. package/dist/lib/facts/stock/ai-unique.js +208 -0
  467. package/dist/lib/facts/stock/ai-unique.js.map +1 -0
  468. package/dist/lib/facts/stock/archive.d.ts +63 -0
  469. package/dist/lib/facts/stock/archive.d.ts.map +1 -0
  470. package/dist/lib/facts/stock/archive.js +349 -0
  471. package/dist/lib/facts/stock/archive.js.map +1 -0
  472. package/dist/lib/facts/stock/c2pa-trust-list.d.ts +16 -0
  473. package/dist/lib/facts/stock/c2pa-trust-list.d.ts.map +1 -0
  474. package/dist/lib/facts/stock/c2pa-trust-list.js +637 -0
  475. package/dist/lib/facts/stock/c2pa-trust-list.js.map +1 -0
  476. package/dist/lib/facts/stock/c2pa.d.ts +56 -0
  477. package/dist/lib/facts/stock/c2pa.d.ts.map +1 -0
  478. package/dist/lib/facts/stock/c2pa.js +234 -0
  479. package/dist/lib/facts/stock/c2pa.js.map +1 -0
  480. package/dist/lib/facts/stock/call.d.ts +91 -0
  481. package/dist/lib/facts/stock/call.d.ts.map +1 -0
  482. package/dist/lib/facts/stock/call.js +281 -0
  483. package/dist/lib/facts/stock/call.js.map +1 -0
  484. package/dist/lib/facts/stock/capability.d.ts +39 -0
  485. package/dist/lib/facts/stock/capability.d.ts.map +1 -0
  486. package/dist/lib/facts/stock/capability.js +59 -0
  487. package/dist/lib/facts/stock/capability.js.map +1 -0
  488. package/dist/lib/facts/stock/ext-source.d.ts +51 -0
  489. package/dist/lib/facts/stock/ext-source.d.ts.map +1 -0
  490. package/dist/lib/facts/stock/ext-source.js +201 -0
  491. package/dist/lib/facts/stock/ext-source.js.map +1 -0
  492. package/dist/lib/facts/stock/frequency-fact.d.ts +59 -0
  493. package/dist/lib/facts/stock/frequency-fact.d.ts.map +1 -0
  494. package/dist/lib/facts/stock/frequency-fact.js +86 -0
  495. package/dist/lib/facts/stock/frequency-fact.js.map +1 -0
  496. package/dist/lib/facts/stock/frequency.d.ts +32 -0
  497. package/dist/lib/facts/stock/frequency.d.ts.map +1 -0
  498. package/dist/lib/facts/stock/frequency.js +48 -0
  499. package/dist/lib/facts/stock/frequency.js.map +1 -0
  500. package/dist/lib/facts/stock/index.d.ts +27 -0
  501. package/dist/lib/facts/stock/index.d.ts.map +1 -0
  502. package/dist/lib/facts/stock/index.js +28 -0
  503. package/dist/lib/facts/stock/index.js.map +1 -0
  504. package/dist/lib/facts/stock/normalize.d.ts +45 -0
  505. package/dist/lib/facts/stock/normalize.d.ts.map +1 -0
  506. package/dist/lib/facts/stock/normalize.js +135 -0
  507. package/dist/lib/facts/stock/normalize.js.map +1 -0
  508. package/dist/lib/facts/stock/phash.d.ts +55 -0
  509. package/dist/lib/facts/stock/phash.d.ts.map +1 -0
  510. package/dist/lib/facts/stock/phash.js +256 -0
  511. package/dist/lib/facts/stock/phash.js.map +1 -0
  512. package/dist/lib/facts/stock/rule-defaults.d.ts +72 -0
  513. package/dist/lib/facts/stock/rule-defaults.d.ts.map +1 -0
  514. package/dist/lib/facts/stock/rule-defaults.js +55 -0
  515. package/dist/lib/facts/stock/rule-defaults.js.map +1 -0
  516. package/dist/lib/facts/stock/send.d.ts +52 -0
  517. package/dist/lib/facts/stock/send.d.ts.map +1 -0
  518. package/dist/lib/facts/stock/send.js +148 -0
  519. package/dist/lib/facts/stock/send.js.map +1 -0
  520. package/dist/lib/facts/stock/unique-score.d.ts +138 -0
  521. package/dist/lib/facts/stock/unique-score.d.ts.map +1 -0
  522. package/dist/lib/facts/stock/unique-score.js +257 -0
  523. package/dist/lib/facts/stock/unique-score.js.map +1 -0
  524. package/dist/lib/facts/stock/unique-store.d.ts +420 -0
  525. package/dist/lib/facts/stock/unique-store.d.ts.map +1 -0
  526. package/dist/lib/facts/stock/unique-store.js +328 -0
  527. package/dist/lib/facts/stock/unique-store.js.map +1 -0
  528. package/dist/lib/facts/stock/unique.d.ts +35 -0
  529. package/dist/lib/facts/stock/unique.d.ts.map +1 -0
  530. package/dist/lib/facts/stock/unique.js +327 -0
  531. package/dist/lib/facts/stock/unique.js.map +1 -0
  532. package/dist/lib/facts/tools.d.ts +57 -0
  533. package/dist/lib/facts/tools.d.ts.map +1 -0
  534. package/dist/lib/facts/tools.js +325 -0
  535. package/dist/lib/facts/tools.js.map +1 -0
  536. package/dist/lib/facts/validate.d.ts +33 -0
  537. package/dist/lib/facts/validate.d.ts.map +1 -0
  538. package/dist/lib/facts/validate.js +137 -0
  539. package/dist/lib/facts/validate.js.map +1 -0
  540. package/dist/lib/hash.d.ts +44 -0
  541. package/dist/lib/hash.d.ts.map +1 -0
  542. package/dist/lib/hash.js +80 -0
  543. package/dist/lib/hash.js.map +1 -0
  544. package/dist/lib/http/client.d.ts +113 -0
  545. package/dist/lib/http/client.d.ts.map +1 -0
  546. package/dist/lib/http/client.js +330 -0
  547. package/dist/lib/http/client.js.map +1 -0
  548. package/dist/lib/ids.d.ts +17 -0
  549. package/dist/lib/ids.d.ts.map +1 -0
  550. package/dist/lib/ids.js +26 -0
  551. package/dist/lib/ids.js.map +1 -0
  552. package/dist/lib/ixo/attachments.d.ts +116 -0
  553. package/dist/lib/ixo/attachments.d.ts.map +1 -0
  554. package/dist/lib/ixo/attachments.js +290 -0
  555. package/dist/lib/ixo/attachments.js.map +1 -0
  556. package/dist/lib/ixo/authz.d.ts +40 -0
  557. package/dist/lib/ixo/authz.d.ts.map +1 -0
  558. package/dist/lib/ixo/authz.js +113 -0
  559. package/dist/lib/ixo/authz.js.map +1 -0
  560. package/dist/lib/ixo/blocksync/index.d.ts +90 -0
  561. package/dist/lib/ixo/blocksync/index.d.ts.map +1 -0
  562. package/dist/lib/ixo/blocksync/index.js +251 -0
  563. package/dist/lib/ixo/blocksync/index.js.map +1 -0
  564. package/dist/lib/ixo/blocksync/queries.d.ts +15 -0
  565. package/dist/lib/ixo/blocksync/queries.d.ts.map +1 -0
  566. package/dist/lib/ixo/blocksync/queries.js +144 -0
  567. package/dist/lib/ixo/blocksync/queries.js.map +1 -0
  568. package/dist/lib/ixo/blocksync/types.d.ts +184 -0
  569. package/dist/lib/ixo/blocksync/types.d.ts.map +1 -0
  570. package/dist/lib/ixo/blocksync/types.js +108 -0
  571. package/dist/lib/ixo/blocksync/types.js.map +1 -0
  572. package/dist/lib/ixo/cellnode.d.ts +35 -0
  573. package/dist/lib/ixo/cellnode.d.ts.map +1 -0
  574. package/dist/lib/ixo/cellnode.js +43 -0
  575. package/dist/lib/ixo/cellnode.js.map +1 -0
  576. package/dist/lib/ixo/chain-write.d.ts +130 -0
  577. package/dist/lib/ixo/chain-write.d.ts.map +1 -0
  578. package/dist/lib/ixo/chain-write.js +460 -0
  579. package/dist/lib/ixo/chain-write.js.map +1 -0
  580. package/dist/lib/ixo/chain.d.ts +1046 -0
  581. package/dist/lib/ixo/chain.d.ts.map +1 -0
  582. package/dist/lib/ixo/chain.js +279 -0
  583. package/dist/lib/ixo/chain.js.map +1 -0
  584. package/dist/lib/ixo/claim-bot.d.ts +49 -0
  585. package/dist/lib/ixo/claim-bot.d.ts.map +1 -0
  586. package/dist/lib/ixo/claim-bot.js +141 -0
  587. package/dist/lib/ixo/claim-bot.js.map +1 -0
  588. package/dist/lib/ixo/delegation-verify.d.ts +44 -0
  589. package/dist/lib/ixo/delegation-verify.d.ts.map +1 -0
  590. package/dist/lib/ixo/delegation-verify.js +101 -0
  591. package/dist/lib/ixo/delegation-verify.js.map +1 -0
  592. package/dist/lib/ixo/did.d.ts +13 -0
  593. package/dist/lib/ixo/did.d.ts.map +1 -0
  594. package/dist/lib/ixo/did.js +85 -0
  595. package/dist/lib/ixo/did.js.map +1 -0
  596. package/dist/lib/ixo/grant-chain.d.ts +55 -0
  597. package/dist/lib/ixo/grant-chain.d.ts.map +1 -0
  598. package/dist/lib/ixo/grant-chain.js +185 -0
  599. package/dist/lib/ixo/grant-chain.js.map +1 -0
  600. package/dist/lib/ixo/identity.d.ts +32 -0
  601. package/dist/lib/ixo/identity.d.ts.map +1 -0
  602. package/dist/lib/ixo/identity.js +104 -0
  603. package/dist/lib/ixo/identity.js.map +1 -0
  604. package/dist/lib/ixo/index.d.ts +118 -0
  605. package/dist/lib/ixo/index.d.ts.map +1 -0
  606. package/dist/lib/ixo/index.js +395 -0
  607. package/dist/lib/ixo/index.js.map +1 -0
  608. package/dist/lib/ixo/payment.d.ts +104 -0
  609. package/dist/lib/ixo/payment.d.ts.map +1 -0
  610. package/dist/lib/ixo/payment.js +136 -0
  611. package/dist/lib/ixo/payment.js.map +1 -0
  612. package/dist/lib/ixo/ucan-store.d.ts +30 -0
  613. package/dist/lib/ixo/ucan-store.d.ts.map +1 -0
  614. package/dist/lib/ixo/ucan-store.js +134 -0
  615. package/dist/lib/ixo/ucan-store.js.map +1 -0
  616. package/dist/lib/ixo/ucan.d.ts +96 -0
  617. package/dist/lib/ixo/ucan.d.ts.map +1 -0
  618. package/dist/lib/ixo/ucan.js +216 -0
  619. package/dist/lib/ixo/ucan.js.map +1 -0
  620. package/dist/lib/ixo/verified-read.d.ts +43 -0
  621. package/dist/lib/ixo/verified-read.d.ts.map +1 -0
  622. package/dist/lib/ixo/verified-read.js +73 -0
  623. package/dist/lib/ixo/verified-read.js.map +1 -0
  624. package/dist/lib/ixo/vfs.d.ts +27 -0
  625. package/dist/lib/ixo/vfs.d.ts.map +1 -0
  626. package/dist/lib/ixo/vfs.js +42 -0
  627. package/dist/lib/ixo/vfs.js.map +1 -0
  628. package/dist/lib/ixo/web-did.d.ts +7 -0
  629. package/dist/lib/ixo/web-did.d.ts.map +1 -0
  630. package/dist/lib/ixo/web-did.js +9 -0
  631. package/dist/lib/ixo/web-did.js.map +1 -0
  632. package/dist/lib/logger.d.ts +34 -0
  633. package/dist/lib/logger.d.ts.map +1 -0
  634. package/dist/lib/logger.js +126 -0
  635. package/dist/lib/logger.js.map +1 -0
  636. package/dist/lib/matrix/api.d.ts +57 -0
  637. package/dist/lib/matrix/api.d.ts.map +1 -0
  638. package/dist/lib/matrix/api.js +58 -0
  639. package/dist/lib/matrix/api.js.map +1 -0
  640. package/dist/lib/matrix/client.d.ts +41 -0
  641. package/dist/lib/matrix/client.d.ts.map +1 -0
  642. package/dist/lib/matrix/client.js +104 -0
  643. package/dist/lib/matrix/client.js.map +1 -0
  644. package/dist/lib/matrix/deliver.d.ts +224 -0
  645. package/dist/lib/matrix/deliver.d.ts.map +1 -0
  646. package/dist/lib/matrix/deliver.js +788 -0
  647. package/dist/lib/matrix/deliver.js.map +1 -0
  648. package/dist/lib/matrix/events.d.ts +114 -0
  649. package/dist/lib/matrix/events.d.ts.map +1 -0
  650. package/dist/lib/matrix/events.js +143 -0
  651. package/dist/lib/matrix/events.js.map +1 -0
  652. package/dist/lib/matrix/mxid.d.ts +24 -0
  653. package/dist/lib/matrix/mxid.d.ts.map +1 -0
  654. package/dist/lib/matrix/mxid.js +47 -0
  655. package/dist/lib/matrix/mxid.js.map +1 -0
  656. package/dist/lib/metrics.d.ts +105 -0
  657. package/dist/lib/metrics.d.ts.map +1 -0
  658. package/dist/lib/metrics.js +204 -0
  659. package/dist/lib/metrics.js.map +1 -0
  660. package/dist/lib/oauth/approvals.d.ts +160 -0
  661. package/dist/lib/oauth/approvals.d.ts.map +1 -0
  662. package/dist/lib/oauth/approvals.js +273 -0
  663. package/dist/lib/oauth/approvals.js.map +1 -0
  664. package/dist/lib/oauth/standing.d.ts +152 -0
  665. package/dist/lib/oauth/standing.d.ts.map +1 -0
  666. package/dist/lib/oauth/standing.js +299 -0
  667. package/dist/lib/oauth/standing.js.map +1 -0
  668. package/dist/lib/oauth/token.d.ts +60 -0
  669. package/dist/lib/oauth/token.d.ts.map +1 -0
  670. package/dist/lib/oauth/token.js +129 -0
  671. package/dist/lib/oauth/token.js.map +1 -0
  672. package/dist/lib/payments/extend.d.ts +42 -0
  673. package/dist/lib/payments/extend.d.ts.map +1 -0
  674. package/dist/lib/payments/extend.js +98 -0
  675. package/dist/lib/payments/extend.js.map +1 -0
  676. package/dist/lib/payments/facilitator.d.ts +220 -0
  677. package/dist/lib/payments/facilitator.d.ts.map +1 -0
  678. package/dist/lib/payments/facilitator.js +451 -0
  679. package/dist/lib/payments/facilitator.js.map +1 -0
  680. package/dist/lib/payments/gate.d.ts +207 -0
  681. package/dist/lib/payments/gate.d.ts.map +1 -0
  682. package/dist/lib/payments/gate.js +481 -0
  683. package/dist/lib/payments/gate.js.map +1 -0
  684. package/dist/lib/payments/header-seal.d.ts +33 -0
  685. package/dist/lib/payments/header-seal.d.ts.map +1 -0
  686. package/dist/lib/payments/header-seal.js +76 -0
  687. package/dist/lib/payments/header-seal.js.map +1 -0
  688. package/dist/lib/payments/index.d.ts +12 -0
  689. package/dist/lib/payments/index.d.ts.map +1 -0
  690. package/dist/lib/payments/index.js +11 -0
  691. package/dist/lib/payments/index.js.map +1 -0
  692. package/dist/lib/payments/price.d.ts +25 -0
  693. package/dist/lib/payments/price.d.ts.map +1 -0
  694. package/dist/lib/payments/price.js +43 -0
  695. package/dist/lib/payments/price.js.map +1 -0
  696. package/dist/lib/payments/reconcile.d.ts +77 -0
  697. package/dist/lib/payments/reconcile.d.ts.map +1 -0
  698. package/dist/lib/payments/reconcile.js +317 -0
  699. package/dist/lib/payments/reconcile.js.map +1 -0
  700. package/dist/lib/payments/refund.d.ts +34 -0
  701. package/dist/lib/payments/refund.d.ts.map +1 -0
  702. package/dist/lib/payments/refund.js +123 -0
  703. package/dist/lib/payments/refund.js.map +1 -0
  704. package/dist/lib/payments/review-billing.d.ts +222 -0
  705. package/dist/lib/payments/review-billing.d.ts.map +1 -0
  706. package/dist/lib/payments/review-billing.js +609 -0
  707. package/dist/lib/payments/review-billing.js.map +1 -0
  708. package/dist/lib/payments/settle.d.ts +44 -0
  709. package/dist/lib/payments/settle.d.ts.map +1 -0
  710. package/dist/lib/payments/settle.js +306 -0
  711. package/dist/lib/payments/settle.js.map +1 -0
  712. package/dist/lib/payments/terms.d.ts +27 -0
  713. package/dist/lib/payments/terms.d.ts.map +1 -0
  714. package/dist/lib/payments/terms.js +21 -0
  715. package/dist/lib/payments/terms.js.map +1 -0
  716. package/dist/lib/payouts.d.ts +20 -0
  717. package/dist/lib/payouts.d.ts.map +1 -0
  718. package/dist/lib/payouts.js +30 -0
  719. package/dist/lib/payouts.js.map +1 -0
  720. package/dist/lib/readiness.d.ts +42 -0
  721. package/dist/lib/readiness.d.ts.map +1 -0
  722. package/dist/lib/readiness.js +130 -0
  723. package/dist/lib/readiness.js.map +1 -0
  724. package/dist/lib/redact.d.ts +23 -0
  725. package/dist/lib/redact.d.ts.map +1 -0
  726. package/dist/lib/redact.js +67 -0
  727. package/dist/lib/redact.js.map +1 -0
  728. package/dist/lib/register.d.ts +85 -0
  729. package/dist/lib/register.d.ts.map +1 -0
  730. package/dist/lib/register.js +390 -0
  731. package/dist/lib/register.js.map +1 -0
  732. package/dist/lib/review/attestation.d.ts +92 -0
  733. package/dist/lib/review/attestation.d.ts.map +1 -0
  734. package/dist/lib/review/attestation.js +264 -0
  735. package/dist/lib/review/attestation.js.map +1 -0
  736. package/dist/lib/review/reviewer-grant.d.ts +146 -0
  737. package/dist/lib/review/reviewer-grant.d.ts.map +1 -0
  738. package/dist/lib/review/reviewer-grant.js +359 -0
  739. package/dist/lib/review/reviewer-grant.js.map +1 -0
  740. package/dist/lib/review/tasks.d.ts +18 -0
  741. package/dist/lib/review/tasks.d.ts.map +1 -0
  742. package/dist/lib/review/tasks.js +36 -0
  743. package/dist/lib/review/tasks.js.map +1 -0
  744. package/dist/lib/sentry.d.ts +89 -0
  745. package/dist/lib/sentry.d.ts.map +1 -0
  746. package/dist/lib/sentry.js +284 -0
  747. package/dist/lib/sentry.js.map +1 -0
  748. package/dist/lib/spans.d.ts +14 -0
  749. package/dist/lib/spans.d.ts.map +1 -0
  750. package/dist/lib/spans.js +28 -0
  751. package/dist/lib/spans.js.map +1 -0
  752. package/dist/lib/tracing.d.ts +31 -0
  753. package/dist/lib/tracing.d.ts.map +1 -0
  754. package/dist/lib/tracing.js +66 -0
  755. package/dist/lib/tracing.js.map +1 -0
  756. package/dist/lib/ttl-cache.d.ts +26 -0
  757. package/dist/lib/ttl-cache.d.ts.map +1 -0
  758. package/dist/lib/ttl-cache.js +61 -0
  759. package/dist/lib/ttl-cache.js.map +1 -0
  760. package/dist/lib/validator.d.ts +19 -0
  761. package/dist/lib/validator.d.ts.map +1 -0
  762. package/dist/lib/validator.js +32 -0
  763. package/dist/lib/validator.js.map +1 -0
  764. package/dist/lib/work-order/form.d.ts +40 -0
  765. package/dist/lib/work-order/form.d.ts.map +1 -0
  766. package/dist/lib/work-order/form.js +316 -0
  767. package/dist/lib/work-order/form.js.map +1 -0
  768. package/dist/lib/work-order/index.d.ts +20 -0
  769. package/dist/lib/work-order/index.d.ts.map +1 -0
  770. package/dist/lib/work-order/index.js +66 -0
  771. package/dist/lib/work-order/index.js.map +1 -0
  772. package/dist/middleware/api/audit.d.ts +9 -0
  773. package/dist/middleware/api/audit.d.ts.map +1 -0
  774. package/dist/middleware/api/audit.js +38 -0
  775. package/dist/middleware/api/audit.js.map +1 -0
  776. package/dist/middleware/api/auth.d.ts +29 -0
  777. package/dist/middleware/api/auth.d.ts.map +1 -0
  778. package/dist/middleware/api/auth.js +105 -0
  779. package/dist/middleware/api/auth.js.map +1 -0
  780. package/dist/middleware/api/console.d.ts +92 -0
  781. package/dist/middleware/api/console.d.ts.map +1 -0
  782. package/dist/middleware/api/console.js +446 -0
  783. package/dist/middleware/api/console.js.map +1 -0
  784. package/dist/middleware/api/errors.d.ts +48 -0
  785. package/dist/middleware/api/errors.d.ts.map +1 -0
  786. package/dist/middleware/api/errors.js +133 -0
  787. package/dist/middleware/api/errors.js.map +1 -0
  788. package/dist/middleware/api/idempotency.d.ts +23 -0
  789. package/dist/middleware/api/idempotency.d.ts.map +1 -0
  790. package/dist/middleware/api/idempotency.js +158 -0
  791. package/dist/middleware/api/idempotency.js.map +1 -0
  792. package/dist/middleware/api/keys.d.ts +14 -0
  793. package/dist/middleware/api/keys.d.ts.map +1 -0
  794. package/dist/middleware/api/keys.js +66 -0
  795. package/dist/middleware/api/keys.js.map +1 -0
  796. package/dist/middleware/api/membership.d.ts +32 -0
  797. package/dist/middleware/api/membership.d.ts.map +1 -0
  798. package/dist/middleware/api/membership.js +48 -0
  799. package/dist/middleware/api/membership.js.map +1 -0
  800. package/dist/middleware/api/oauth.d.ts +28 -0
  801. package/dist/middleware/api/oauth.d.ts.map +1 -0
  802. package/dist/middleware/api/oauth.js +109 -0
  803. package/dist/middleware/api/oauth.js.map +1 -0
  804. package/dist/middleware/api/rate-limit.d.ts +23 -0
  805. package/dist/middleware/api/rate-limit.d.ts.map +1 -0
  806. package/dist/middleware/api/rate-limit.js +70 -0
  807. package/dist/middleware/api/rate-limit.js.map +1 -0
  808. package/dist/middleware/api/types.d.ts +92 -0
  809. package/dist/middleware/api/types.d.ts.map +1 -0
  810. package/dist/middleware/api/types.js +7 -0
  811. package/dist/middleware/api/types.js.map +1 -0
  812. package/dist/middleware/api/wait.d.ts +21 -0
  813. package/dist/middleware/api/wait.d.ts.map +1 -0
  814. package/dist/middleware/api/wait.js +85 -0
  815. package/dist/middleware/api/wait.js.map +1 -0
  816. package/dist/middleware/capability.d.ts +32 -0
  817. package/dist/middleware/capability.d.ts.map +1 -0
  818. package/dist/middleware/capability.js +113 -0
  819. package/dist/middleware/capability.js.map +1 -0
  820. package/dist/middleware/database.d.ts +14 -0
  821. package/dist/middleware/database.d.ts.map +1 -0
  822. package/dist/middleware/database.js +18 -0
  823. package/dist/middleware/database.js.map +1 -0
  824. package/dist/middleware/error-handler.d.ts +13 -0
  825. package/dist/middleware/error-handler.d.ts.map +1 -0
  826. package/dist/middleware/error-handler.js +127 -0
  827. package/dist/middleware/error-handler.js.map +1 -0
  828. package/dist/middleware/observability.d.ts +32 -0
  829. package/dist/middleware/observability.d.ts.map +1 -0
  830. package/dist/middleware/observability.js +134 -0
  831. package/dist/middleware/observability.js.map +1 -0
  832. package/dist/middleware/rate-limit.d.ts +16 -0
  833. package/dist/middleware/rate-limit.d.ts.map +1 -0
  834. package/dist/middleware/rate-limit.js +56 -0
  835. package/dist/middleware/rate-limit.js.map +1 -0
  836. package/dist/middleware/ucan-auth.d.ts +39 -0
  837. package/dist/middleware/ucan-auth.d.ts.map +1 -0
  838. package/dist/middleware/ucan-auth.js +278 -0
  839. package/dist/middleware/ucan-auth.js.map +1 -0
  840. package/dist/networks.d.ts +34 -0
  841. package/dist/networks.d.ts.map +1 -0
  842. package/dist/networks.js +49 -0
  843. package/dist/networks.js.map +1 -0
  844. package/dist/oracle.d.ts +193 -0
  845. package/dist/oracle.d.ts.map +1 -0
  846. package/dist/oracle.js +245 -0
  847. package/dist/oracle.js.map +1 -0
  848. package/dist/routes/health.d.ts +16 -0
  849. package/dist/routes/health.d.ts.map +1 -0
  850. package/dist/routes/health.js +29 -0
  851. package/dist/routes/health.js.map +1 -0
  852. package/dist/routes/v1/admin.d.ts +18 -0
  853. package/dist/routes/v1/admin.d.ts.map +1 -0
  854. package/dist/routes/v1/admin.js +101 -0
  855. package/dist/routes/v1/admin.js.map +1 -0
  856. package/dist/routes/v1/api/admin-claims.d.ts +14 -0
  857. package/dist/routes/v1/api/admin-claims.d.ts.map +1 -0
  858. package/dist/routes/v1/api/admin-claims.js +82 -0
  859. package/dist/routes/v1/api/admin-claims.js.map +1 -0
  860. package/dist/routes/v1/api/admin-facilitator.d.ts +20 -0
  861. package/dist/routes/v1/api/admin-facilitator.d.ts.map +1 -0
  862. package/dist/routes/v1/api/admin-facilitator.js +64 -0
  863. package/dist/routes/v1/api/admin-facilitator.js.map +1 -0
  864. package/dist/routes/v1/api/admin.d.ts +9 -0
  865. package/dist/routes/v1/api/admin.d.ts.map +1 -0
  866. package/dist/routes/v1/api/admin.js +110 -0
  867. package/dist/routes/v1/api/admin.js.map +1 -0
  868. package/dist/routes/v1/api/audit.d.ts +8 -0
  869. package/dist/routes/v1/api/audit.d.ts.map +1 -0
  870. package/dist/routes/v1/api/audit.js +56 -0
  871. package/dist/routes/v1/api/audit.js.map +1 -0
  872. package/dist/routes/v1/api/batch.d.ts +17 -0
  873. package/dist/routes/v1/api/batch.d.ts.map +1 -0
  874. package/dist/routes/v1/api/batch.js +192 -0
  875. package/dist/routes/v1/api/batch.js.map +1 -0
  876. package/dist/routes/v1/api/claims-read.d.ts +43 -0
  877. package/dist/routes/v1/api/claims-read.d.ts.map +1 -0
  878. package/dist/routes/v1/api/claims-read.js +123 -0
  879. package/dist/routes/v1/api/claims-read.js.map +1 -0
  880. package/dist/routes/v1/api/claims.d.ts +131 -0
  881. package/dist/routes/v1/api/claims.d.ts.map +1 -0
  882. package/dist/routes/v1/api/claims.js +407 -0
  883. package/dist/routes/v1/api/claims.js.map +1 -0
  884. package/dist/routes/v1/api/collections-link.d.ts +14 -0
  885. package/dist/routes/v1/api/collections-link.d.ts.map +1 -0
  886. package/dist/routes/v1/api/collections-link.js +97 -0
  887. package/dist/routes/v1/api/collections-link.js.map +1 -0
  888. package/dist/routes/v1/api/export.d.ts +48 -0
  889. package/dist/routes/v1/api/export.d.ts.map +1 -0
  890. package/dist/routes/v1/api/export.js +251 -0
  891. package/dist/routes/v1/api/export.js.map +1 -0
  892. package/dist/routes/v1/api/index.d.ts +16 -0
  893. package/dist/routes/v1/api/index.d.ts.map +1 -0
  894. package/dist/routes/v1/api/index.js +68 -0
  895. package/dist/routes/v1/api/index.js.map +1 -0
  896. package/dist/routes/v1/api/keys.d.ts +9 -0
  897. package/dist/routes/v1/api/keys.d.ts.map +1 -0
  898. package/dist/routes/v1/api/keys.js +95 -0
  899. package/dist/routes/v1/api/keys.js.map +1 -0
  900. package/dist/routes/v1/api/me.d.ts +21 -0
  901. package/dist/routes/v1/api/me.d.ts.map +1 -0
  902. package/dist/routes/v1/api/me.js +122 -0
  903. package/dist/routes/v1/api/me.js.map +1 -0
  904. package/dist/routes/v1/api/members.d.ts +17 -0
  905. package/dist/routes/v1/api/members.d.ts.map +1 -0
  906. package/dist/routes/v1/api/members.js +406 -0
  907. package/dist/routes/v1/api/members.js.map +1 -0
  908. package/dist/routes/v1/api/meta.d.ts +12 -0
  909. package/dist/routes/v1/api/meta.d.ts.map +1 -0
  910. package/dist/routes/v1/api/meta.js +59 -0
  911. package/dist/routes/v1/api/meta.js.map +1 -0
  912. package/dist/routes/v1/api/openapi.gen.d.ts +2 -0
  913. package/dist/routes/v1/api/openapi.gen.d.ts.map +1 -0
  914. package/dist/routes/v1/api/openapi.gen.js +7 -0
  915. package/dist/routes/v1/api/openapi.gen.js.map +1 -0
  916. package/dist/routes/v1/api/protocols.d.ts +22 -0
  917. package/dist/routes/v1/api/protocols.d.ts.map +1 -0
  918. package/dist/routes/v1/api/protocols.js +153 -0
  919. package/dist/routes/v1/api/protocols.js.map +1 -0
  920. package/dist/routes/v1/api/review-billing.d.ts +18 -0
  921. package/dist/routes/v1/api/review-billing.d.ts.map +1 -0
  922. package/dist/routes/v1/api/review-billing.js +196 -0
  923. package/dist/routes/v1/api/review-billing.js.map +1 -0
  924. package/dist/routes/v1/api/review.d.ts +30 -0
  925. package/dist/routes/v1/api/review.d.ts.map +1 -0
  926. package/dist/routes/v1/api/review.js +302 -0
  927. package/dist/routes/v1/api/review.js.map +1 -0
  928. package/dist/routes/v1/api/sources.d.ts +10 -0
  929. package/dist/routes/v1/api/sources.d.ts.map +1 -0
  930. package/dist/routes/v1/api/sources.js +293 -0
  931. package/dist/routes/v1/api/sources.js.map +1 -0
  932. package/dist/routes/v1/api/uploads.d.ts +37 -0
  933. package/dist/routes/v1/api/uploads.d.ts.map +1 -0
  934. package/dist/routes/v1/api/uploads.js +414 -0
  935. package/dist/routes/v1/api/uploads.js.map +1 -0
  936. package/dist/routes/v1/api/views.d.ts +18 -0
  937. package/dist/routes/v1/api/views.d.ts.map +1 -0
  938. package/dist/routes/v1/api/views.js +95 -0
  939. package/dist/routes/v1/api/views.js.map +1 -0
  940. package/dist/routes/v1/api/webhooks.d.ts +14 -0
  941. package/dist/routes/v1/api/webhooks.d.ts.map +1 -0
  942. package/dist/routes/v1/api/webhooks.js +282 -0
  943. package/dist/routes/v1/api/webhooks.js.map +1 -0
  944. package/dist/routes/v1/api/work-orders.d.ts +45 -0
  945. package/dist/routes/v1/api/work-orders.d.ts.map +1 -0
  946. package/dist/routes/v1/api/work-orders.js +171 -0
  947. package/dist/routes/v1/api/work-orders.js.map +1 -0
  948. package/dist/routes/v1/claims.d.ts +21 -0
  949. package/dist/routes/v1/claims.d.ts.map +1 -0
  950. package/dist/routes/v1/claims.js +153 -0
  951. package/dist/routes/v1/claims.js.map +1 -0
  952. package/dist/routes/v1/collections.d.ts +45 -0
  953. package/dist/routes/v1/collections.d.ts.map +1 -0
  954. package/dist/routes/v1/collections.js +201 -0
  955. package/dist/routes/v1/collections.js.map +1 -0
  956. package/dist/routes/v1/index.d.ts +13 -0
  957. package/dist/routes/v1/index.d.ts.map +1 -0
  958. package/dist/routes/v1/index.js +41 -0
  959. package/dist/routes/v1/index.js.map +1 -0
  960. package/dist/routes/v1/info.d.ts +14 -0
  961. package/dist/routes/v1/info.d.ts.map +1 -0
  962. package/dist/routes/v1/info.js +75 -0
  963. package/dist/routes/v1/info.js.map +1 -0
  964. package/dist/routes/v1/mcp/index.d.ts +33 -0
  965. package/dist/routes/v1/mcp/index.d.ts.map +1 -0
  966. package/dist/routes/v1/mcp/index.js +252 -0
  967. package/dist/routes/v1/mcp/index.js.map +1 -0
  968. package/dist/routes/v1/mcp/oauth.d.ts +27 -0
  969. package/dist/routes/v1/mcp/oauth.d.ts.map +1 -0
  970. package/dist/routes/v1/mcp/oauth.js +500 -0
  971. package/dist/routes/v1/mcp/oauth.js.map +1 -0
  972. package/dist/routes/v1/mcp/tools.d.ts +71 -0
  973. package/dist/routes/v1/mcp/tools.d.ts.map +1 -0
  974. package/dist/routes/v1/mcp/tools.js +432 -0
  975. package/dist/routes/v1/mcp/tools.js.map +1 -0
  976. package/dist/routes/v1/mcp/ui.d.ts +45 -0
  977. package/dist/routes/v1/mcp/ui.d.ts.map +1 -0
  978. package/dist/routes/v1/mcp/ui.js +454 -0
  979. package/dist/routes/v1/mcp/ui.js.map +1 -0
  980. package/dist/routes/v1/oauth.d.ts +29 -0
  981. package/dist/routes/v1/oauth.d.ts.map +1 -0
  982. package/dist/routes/v1/oauth.js +256 -0
  983. package/dist/routes/v1/oauth.js.map +1 -0
  984. package/dist/routes/v1/reviewers.d.ts +22 -0
  985. package/dist/routes/v1/reviewers.d.ts.map +1 -0
  986. package/dist/routes/v1/reviewers.js +165 -0
  987. package/dist/routes/v1/reviewers.js.map +1 -0
  988. package/dist/routes/v1/reviews.d.ts +38 -0
  989. package/dist/routes/v1/reviews.d.ts.map +1 -0
  990. package/dist/routes/v1/reviews.js +234 -0
  991. package/dist/routes/v1/reviews.js.map +1 -0
  992. package/dist/routes/v1/shared.d.ts +586 -0
  993. package/dist/routes/v1/shared.d.ts.map +1 -0
  994. package/dist/routes/v1/shared.js +229 -0
  995. package/dist/routes/v1/shared.js.map +1 -0
  996. package/dist/routes/well-known.d.ts +15 -0
  997. package/dist/routes/well-known.d.ts.map +1 -0
  998. package/dist/routes/well-known.js +35 -0
  999. package/dist/routes/well-known.js.map +1 -0
  1000. package/dist/runtime.d.ts +100 -0
  1001. package/dist/runtime.d.ts.map +1 -0
  1002. package/dist/runtime.js +144 -0
  1003. package/dist/runtime.js.map +1 -0
  1004. package/dist/testing/fake-tools.d.ts +104 -0
  1005. package/dist/testing/fake-tools.d.ts.map +1 -0
  1006. package/dist/testing/fake-tools.js +213 -0
  1007. package/dist/testing/fake-tools.js.map +1 -0
  1008. package/dist/testing/index.d.ts +54 -0
  1009. package/dist/testing/index.d.ts.map +1 -0
  1010. package/dist/testing/index.js +104 -0
  1011. package/dist/testing/index.js.map +1 -0
  1012. package/dist/testing/samples.d.ts +70 -0
  1013. package/dist/testing/samples.d.ts.map +1 -0
  1014. package/dist/testing/samples.js +92 -0
  1015. package/dist/testing/samples.js.map +1 -0
  1016. package/dist/workflows/claim-ingest.d.ts +250 -0
  1017. package/dist/workflows/claim-ingest.d.ts.map +1 -0
  1018. package/dist/workflows/claim-ingest.js +1020 -0
  1019. package/dist/workflows/claim-ingest.js.map +1 -0
  1020. package/dist/workflows/claim-source.d.ts +25 -0
  1021. package/dist/workflows/claim-source.d.ts.map +1 -0
  1022. package/dist/workflows/claim-source.js +107 -0
  1023. package/dist/workflows/claim-source.js.map +1 -0
  1024. package/dist/workflows/review-complete.d.ts +82 -0
  1025. package/dist/workflows/review-complete.d.ts.map +1 -0
  1026. package/dist/workflows/review-complete.js +455 -0
  1027. package/dist/workflows/review-complete.js.map +1 -0
  1028. package/dist/workflows/steps.d.ts +125 -0
  1029. package/dist/workflows/steps.d.ts.map +1 -0
  1030. package/dist/workflows/steps.js +325 -0
  1031. package/dist/workflows/steps.js.map +1 -0
  1032. package/docs/api.md +2595 -0
  1033. package/docs/guide.md +1525 -0
  1034. package/migrations/0000_init.sql +108 -0
  1035. package/migrations/0001_review_attestation.sql +1 -0
  1036. package/migrations/0002_decisions_facts.sql +1 -0
  1037. package/migrations/0003_api_lane.sql +171 -0
  1038. package/migrations/0004_api_v1_1.sql +19 -0
  1039. package/migrations/0005_member_notify.sql +3 -0
  1040. package/migrations/0006_source_collections.sql +16 -0
  1041. package/migrations/0007_api_settlement.sql +27 -0
  1042. package/migrations/0008_review_extend.sql +1 -0
  1043. package/migrations/0009_card_refunds.sql +4 -0
  1044. package/migrations/0010_even_scorpion.sql +16 -0
  1045. package/migrations/0011_mcp_oauth.sql +27 -0
  1046. package/migrations/0012_mcp_standing.sql +21 -0
  1047. package/migrations/0013_unknown_krista_starr.sql +2 -0
  1048. package/migrations/0014_last_carnage.sql +14 -0
  1049. package/migrations/0015_company_authority.sql +26 -0
  1050. package/migrations/0016_owner_only_links.sql +6 -0
  1051. package/migrations/0017_organisations.sql +35 -0
  1052. package/migrations/0018_remove_app_signed.sql +4 -0
  1053. package/migrations/0019_submitted_via.sql +2 -0
  1054. package/migrations/0020_drop_decision_to_pay.sql +4 -0
  1055. package/migrations/0021_manual_erase.sql +25 -0
  1056. package/migrations/0022_errored_facts.sql +1 -0
  1057. package/migrations/0023_review_billing.sql +20 -0
  1058. package/migrations/0024_pending_task_details.sql +1 -0
  1059. package/migrations/meta/0000_snapshot.json +707 -0
  1060. package/migrations/meta/0001_snapshot.json +714 -0
  1061. package/migrations/meta/0002_snapshot.json +721 -0
  1062. package/migrations/meta/0003_snapshot.json +1845 -0
  1063. package/migrations/meta/0004_snapshot.json +1969 -0
  1064. package/migrations/meta/0005_snapshot.json +1991 -0
  1065. package/migrations/meta/0006_snapshot.json +2097 -0
  1066. package/migrations/meta/0007_snapshot.json +2128 -0
  1067. package/migrations/meta/0008_snapshot.json +2133 -0
  1068. package/migrations/meta/0009_snapshot.json +2161 -0
  1069. package/migrations/meta/0010_snapshot.json +2265 -0
  1070. package/migrations/meta/0011_snapshot.json +2448 -0
  1071. package/migrations/meta/0012_snapshot.json +2577 -0
  1072. package/migrations/meta/0013_snapshot.json +2594 -0
  1073. package/migrations/meta/0014_snapshot.json +2602 -0
  1074. package/migrations/meta/0015_snapshot.json +2778 -0
  1075. package/migrations/meta/0016_snapshot.json +2778 -0
  1076. package/migrations/meta/0017_snapshot.json +2792 -0
  1077. package/migrations/meta/0018_snapshot.json +2778 -0
  1078. package/migrations/meta/0019_snapshot.json +2792 -0
  1079. package/migrations/meta/0020_snapshot.json +2785 -0
  1080. package/migrations/meta/0021_snapshot.json +2762 -0
  1081. package/migrations/meta/0022_snapshot.json +2769 -0
  1082. package/migrations/meta/0023_snapshot.json +2900 -0
  1083. package/migrations/meta/0024_snapshot.json +2907 -0
  1084. package/migrations/meta/_journal.json +181 -0
  1085. package/openapi/decision-api.yaml +12204 -0
  1086. package/package.json +123 -4
  1087. package/skills/README.md +19 -0
  1088. package/skills/add-openhands-support/SKILL.md +113 -0
  1089. package/skills/create-collection/SKILL.md +199 -0
  1090. package/skills/create-collection/reference/claims-stack.md +106 -0
  1091. package/skills/create-collection/reference/collection.md +111 -0
  1092. package/skills/create-oracle/SKILL.md +400 -0
  1093. package/skills/create-rubric/SKILL.md +130 -0
  1094. package/skills/create-rubric/reference/format-cheatsheet.md +186 -0
  1095. package/skills/create-rubric/templates/claim-form.example.json +60 -0
  1096. package/skills/decision-api-client/SKILL.md +236 -0
  1097. package/skills/decision-api-oracle/SKILL.md +336 -0
  1098. package/skills/publish-protocol/SKILL.md +151 -0
  1099. package/skills/publish-protocol/reference/publishing.md +116 -0
  1100. package/skills/reference/engine-contract.md +222 -0
  1101. package/skills/write-facts/SKILL.md +221 -0
  1102. package/skills/write-facts/reference/examples/http-vendor.ts +88 -0
  1103. package/skills/write-facts/reference/examples/price-matches-agreement.ts +67 -0
  1104. package/skills/write-facts/reference/facts-api.md +232 -0
  1105. package/templates/project/.dev.vars.example +93 -0
  1106. package/templates/project/.editorconfig +9 -0
  1107. package/templates/project/CLAUDE.md +45 -0
  1108. package/templates/project/README.md +199 -0
  1109. package/templates/project/biome.json +37 -0
  1110. package/templates/project/gitignore +29 -0
  1111. package/templates/project/package.json +32 -0
  1112. package/templates/project/src/facts/index.ts +19 -0
  1113. package/templates/project/src/index.ts +25 -0
  1114. package/templates/project/test/api-lane.test.ts +57 -0
  1115. package/templates/project/test/facts.test.ts +14 -0
  1116. package/templates/project/tsconfig.json +25 -0
  1117. package/templates/project/vitest.config.ts +13 -0
  1118. package/templates/project/wrangler.jsonc +446 -0
@@ -0,0 +1,584 @@
1
+ /**
2
+ * Chain plumbing for the CLI's authoring commands (`oracle init`, `create-deed`,
3
+ * `create-collection`, `publish-protocol`, `submit-claim`, `delegation`). Everything here can sign
4
+ * REAL transactions and spend REAL funds — safety and clarity are the whole point, so this file
5
+ * owns the ONE confirm-or-dry-run gate every signing path goes through, and every endpoint it uses
6
+ * comes from `networks.ts` (so a typo can't send a mainnet tx to devnet's fee or vice versa).
7
+ *
8
+ * Deliberately NOT reusing `src/lib/ixo/*`: those are typed for the Worker's `deps.config`/
9
+ * `AppError`/`fetchClient` request lifecycle. These commands run as a plain bun/node program (plain
10
+ * `fetch`, dumb errors, chain failures surface raw).
11
+ */
12
+ import { createHash } from "node:crypto";
13
+ import process from "node:process";
14
+ import { cidForBytes } from "../../lib/hash.js";
15
+ import { NETWORKS } from "../../networks.js";
16
+ import { matrixPassword } from "./matrix-account.js";
17
+ /**
18
+ * `network` comes ONLY from the `--network` flag, NEVER from an env file's `NETWORK` var — an env
19
+ * file crafted for one network must never silently redirect a run to another. Omitting the flag is
20
+ * the safe default (devnet); every other network must be named explicitly on the command line.
21
+ */
22
+ export function resolveNetwork(flag) {
23
+ const name = flag ?? "devnet";
24
+ if (name !== "devnet" && name !== "testnet" && name !== "mainnet") {
25
+ fail(`unknown --network '${name}' (devnet|testnet|mainnet)`);
26
+ }
27
+ return name;
28
+ }
29
+ /**
30
+ * `process` is typed `any` in this project (the Worker runtime's global declarations win over
31
+ * @types/node's, which is fine for the Worker and unhelpful here), so the two paths that end the
32
+ * process name the signature they rely on: `exit` never returns.
33
+ */
34
+ const exit = process.exit;
35
+ /**
36
+ * An expected failure: one line, no stack, exit 1. Ends the PROCESS rather than returning a code to
37
+ * the dispatcher because it is called from deep inside a signing sequence — every caller in between
38
+ * would otherwise have to thread a failure back up through half-finished chain state.
39
+ */
40
+ export function fail(message) {
41
+ console.error(`\n✗ ${message}\n`);
42
+ exit(1);
43
+ }
44
+ export async function gqlFetch(blocksyncUrl, query, variables) {
45
+ const res = await fetch(blocksyncUrl, {
46
+ method: "POST",
47
+ headers: { "content-type": "application/json" },
48
+ body: JSON.stringify({ query, variables }),
49
+ });
50
+ if (!res.ok)
51
+ throw new Error(`blocksync returned ${res.status}: ${await res.text()}`);
52
+ const json = (await res.json());
53
+ if (json.errors)
54
+ throw new Error(`blocksync errors: ${JSON.stringify(json.errors)}`);
55
+ if (json.data === undefined)
56
+ throw new Error("blocksync returned no data");
57
+ return json.data;
58
+ }
59
+ const ENTITY_RESOLVE_QUERY = `
60
+ query EntityResolve($id: String!) {
61
+ entity(id: $id) { id owner type accounts linkedResource service linkedEntity linkedClaim }
62
+ }`;
63
+ /** One round trip: owner, entity type, the entity-module `admin` account, every LinkedResource,
64
+ * every service, every linkedEntity edge. */
65
+ export async function resolveEntity(blocksyncUrl, did) {
66
+ const data = await gqlFetch(blocksyncUrl, ENTITY_RESOLVE_QUERY, { id: did });
67
+ const e = data.entity;
68
+ return {
69
+ owner: e?.owner ?? null,
70
+ adminAccount: e?.accounts?.find((a) => a.name === "admin")?.address ?? null,
71
+ type: e?.type ?? null,
72
+ linkedResources: e?.linkedResource ?? [],
73
+ services: e?.service ?? [],
74
+ linkedEntities: e?.linkedEntity ?? [],
75
+ linkedClaims: e?.linkedClaim ?? [],
76
+ };
77
+ }
78
+ const COLLECTION_QUERY = `
79
+ query Collection($entity: String!, $protocol: String!) {
80
+ claimCollections(
81
+ filter: { entity: { equalTo: $entity }, protocol: { equalTo: $protocol } }
82
+ ) {
83
+ nodes { id admin protocol entity startDate endDate payments }
84
+ }
85
+ }`;
86
+ /** The (at most one) collection a deed holds for a protocol — how `create-collection` resumes every
87
+ * phase from `--entity` + `--protocol`, with no state file. Keyed on the PAIR: one protocol backs
88
+ * many deeds (each with its own collection), so `protocol` alone is not an identity. */
89
+ export async function resolveCollection(blocksyncUrl, entityDid, protocolDid) {
90
+ const data = await gqlFetch(blocksyncUrl, COLLECTION_QUERY, { entity: entityDid, protocol: protocolDid });
91
+ return data.claimCollections.nodes[0] ?? null;
92
+ }
93
+ const COLLECTION_BY_ID_QUERY = `
94
+ query CollectionById($id: String!) {
95
+ claimCollection(id: $id) { id admin protocol entity startDate endDate payments }
96
+ }`;
97
+ /** One collection by its numeric id — what a SUBMITTER starts from (`submit-claim`): the `entity`
98
+ * whose room the body goes to and the `admin` that `MsgSubmitClaim` names. */
99
+ export async function resolveCollectionById(blocksyncUrl, collectionId) {
100
+ const data = await gqlFetch(blocksyncUrl, COLLECTION_BY_ID_QUERY, { id: collectionId });
101
+ return data.claimCollection;
102
+ }
103
+ const OWNED_ORACLE_ENTITY_QUERY = `
104
+ query OwnedOracleEntity($owner: String!, $types: [String!]) {
105
+ entities(filter: { owner: { equalTo: $owner }, type: { in: $types } }) {
106
+ nodes { id type }
107
+ }
108
+ }`;
109
+ /** Every oracle entity a wallet address owns. NOT "the" oracle: one AuthHub session can own the
110
+ * entities of several oracles, so `oracle init` picks its own from this list by what binds an
111
+ * entity to THIS oracle (`resolveOracleEntity` there). `type in [...]` covers both the plain
112
+ * `oracle` entityType and the more specific `oracle/evaluation` one. */
113
+ export async function ownedOracleEntities(blocksyncUrl, ownerAddress) {
114
+ const data = await gqlFetch(blocksyncUrl, OWNED_ORACLE_ENTITY_QUERY, { owner: ownerAddress, types: ["oracle", "oracle/evaluation"] });
115
+ return data.entities.nodes;
116
+ }
117
+ // --- signing ------------------------------------------------------------------------------------
118
+ /** One flat fee for every step (1–3 msgs) — generous gas, never refused. */
119
+ export const STANDARD_FEE = {
120
+ amount: [{ denom: "uixo", amount: "150000" }],
121
+ gas: "1500000",
122
+ };
123
+ /**
124
+ * THE safety gate. Prints exactly what is about to be signed/sent, on which network, as whom — and
125
+ * REQUIRES `--yes` to proceed. Without it: print the plan and exit 0. Nothing is ever signed on the
126
+ * strength of this function alone; every chain write (and every other signing path — Matrix uploads,
127
+ * UCAN delegation minting) calls this immediately before the write.
128
+ *
129
+ * A dry run ends the PROCESS here: "stop, successfully, half way through a sequence" is not
130
+ * something a command's return value can say, and every caller in between is mid-sequence.
131
+ */
132
+ export function confirm(plan, yes, opts = {}) {
133
+ const print = opts.print ?? console.log;
134
+ print(`\n── ${plan.action} ──`);
135
+ print(` network : ${plan.network}`);
136
+ print(` signer : ${plan.signer}`);
137
+ for (const line of plan.lines)
138
+ print(` ${line}`);
139
+ if (plan.fee) {
140
+ const amount = plan.fee.amount.map((c) => `${c.amount}${c.denom}`).join(",");
141
+ print(` fee : ${amount} (gas ${plan.fee.gas})`);
142
+ }
143
+ if (!yes) {
144
+ print("\n DRY RUN — nothing signed, nothing broadcast. Re-run with --yes to execute.\n");
145
+ exit(0);
146
+ }
147
+ print(` --yes given — ${opts.proceeding ?? "signing and broadcasting…"}\n`);
148
+ }
149
+ /** Signs + broadcasts `msgs` as `signer`, returns the tx hash, throws with the raw log on failure. */
150
+ export async function broadcast(signer, msgs, memo, fee = STANDARD_FEE) {
151
+ const res = (await signer.client.signAndBroadcast(signer.address, msgs, fee, memo));
152
+ if (res.code !== 0)
153
+ throw new Error(`tx failed (code ${res.code}): ${res.rawLog}`);
154
+ return { hash: res.transactionHash, res };
155
+ }
156
+ // --- iid message builders -------------------------------------------------------------------------
157
+ /** `MsgAddService`. Async: `@ixo/impactxclient-sdk` is lazy-imported (heavy proto/crypto deps). */
158
+ export async function addServiceMsg(entityDid, service, signer) {
159
+ const { ixo } = await import("@ixo/impactxclient-sdk");
160
+ return {
161
+ typeUrl: "/ixo.iid.v1beta1.MsgAddService",
162
+ value: ixo.iid.v1beta1.MsgAddService.fromPartial({
163
+ id: entityDid,
164
+ serviceData: ixo.iid.v1beta1.Service.fromPartial(service),
165
+ signer,
166
+ }),
167
+ };
168
+ }
169
+ /**
170
+ * `MsgAddLinkedResource` — the one builder behind every anchored document (`#vct`/`#rub` from
171
+ * `publish-protocol`, `#orz`/`#pro` from `oracle init`). The caller passes the resource whole: every
172
+ * field is part of what the chain records permanently, so none of them gets a default here.
173
+ *
174
+ * Refused by the chain when the id already exists (`duplicated resource id`, x/iid/types/iid.go) —
175
+ * replacing one means `deleteLinkedResourceMsg` FIRST, same tx.
176
+ */
177
+ export async function addLinkedResourceMsg(entityDid, resource, signer) {
178
+ const { ixo } = await import("@ixo/impactxclient-sdk");
179
+ return {
180
+ typeUrl: "/ixo.iid.v1beta1.MsgAddLinkedResource",
181
+ value: ixo.iid.v1beta1.MsgAddLinkedResource.fromPartial({
182
+ id: entityDid,
183
+ linkedResource: ixo.iid.v1beta1.LinkedResource.fromPartial(resource),
184
+ signer,
185
+ }),
186
+ };
187
+ }
188
+ /**
189
+ * `MsgDeleteLinkedResource`. `resourceId` must be the id EXACTLY as the chain stores it — which is
190
+ * the UNEXPANDED `{id}#rub` literal (blocksync reports it that way, and the keeper matches
191
+ * `s.Id == resourceID` with no expansion). Pass the id straight off the resolved entity; never
192
+ * rebuild it from the DID.
193
+ */
194
+ export async function deleteLinkedResourceMsg(entityDid, resourceId, signer) {
195
+ const { ixo } = await import("@ixo/impactxclient-sdk");
196
+ return {
197
+ typeUrl: "/ixo.iid.v1beta1.MsgDeleteLinkedResource",
198
+ value: ixo.iid.v1beta1.MsgDeleteLinkedResource.fromPartial({
199
+ id: entityDid,
200
+ resourceId,
201
+ signer,
202
+ }),
203
+ };
204
+ }
205
+ /**
206
+ * `MsgDeleteService`. The counterpart of `addServiceMsg`, and only ever broadcast in the SAME tx as
207
+ * the add that replaces it — qiforge's `updateOracleDomain` (`src/utils/entity.ts:199-256`) is the
208
+ * same pair, because an entity between the two is an entity with no API endpoint at all. `serviceId`
209
+ * is the `{id}#frag` form the chain stores, not the expanded DID.
210
+ */
211
+ export async function deleteServiceMsg(entityDid, serviceId, signer) {
212
+ const { ixo } = await import("@ixo/impactxclient-sdk");
213
+ return {
214
+ typeUrl: "/ixo.iid.v1beta1.MsgDeleteService",
215
+ value: ixo.iid.v1beta1.MsgDeleteService.fromPartial({ id: entityDid, serviceId, signer }),
216
+ };
217
+ }
218
+ /** The AuthHub session as a `DocSigner` — the entity OWNER for every doc this CLI anchors. */
219
+ export function sessionDocSigner(signer) {
220
+ return {
221
+ did: signer.did,
222
+ edMnemonic: signer.session.edSigningMnemonic ??
223
+ fail("AuthHub session has no edSigningMnemonic — re-run login"),
224
+ };
225
+ }
226
+ /** The one Vault subtree this CLI writes, and the scope of every token it mints for it. */
227
+ const VAULT_SCOPE = "/eval-oracle";
228
+ /**
229
+ * Store a public document and return where it lives, by content address: the IXO Vault first
230
+ * (`POST {vfs}/api/fs/files?public=true` under a one-write UCAN from `signer`'s ed25519 key, into
231
+ * its own namespace — served to anyone at `{vfs}/public/cid/<cid>`), else IXO's IPFS gateway
232
+ * (`POST {gateway}/upload`, open — `{gateway}/ipfs/<cid>`). OpenHands 2f7857a (`chain/store.ts`
233
+ * `uploadDoc`) is the same two doors. Nothing is written to Matrix media any more (its
234
+ * unauthenticated reads may stop answering one day); reading it stays supported (`readLinkedDoc`).
235
+ * A Vault refusal is printed, never fatal: the gateway takes the doc.
236
+ *
237
+ * `cid` is the raw-sha256 CIDv1 of `bytes` (both stores address a ≤1 MiB file that way), checked
238
+ * against what the store answered. The caller still picks the resource's `proof` (CLAUDE.md):
239
+ * sha256 hex for `#vct`/`#rub`/`#orz`, this CID for `#pro`/`#dmn`/`#acard`.
240
+ */
241
+ export async function uploadDoc(network, signer, bytes, filename, contentType) {
242
+ const cid = await cidForBytes(bytes);
243
+ const { vfs, ipfsGateway } = NETWORKS[network];
244
+ const vault = vfs.replace(/\/+$/, "");
245
+ let refused;
246
+ try {
247
+ const path = `${VAULT_SCOPE}/${network}/${Date.now().toString(36)}-${filename}`;
248
+ const res = await fetch(`${vault}/api/fs/files?path=${encodeURIComponent(path)}&public=true`, {
249
+ method: "POST",
250
+ headers: {
251
+ authorization: `Bearer ${await vaultWriteToken(signer, vault)}`,
252
+ "content-type": contentType,
253
+ },
254
+ body: bytes,
255
+ });
256
+ if (res.ok) {
257
+ const stored = (await res.json()).cid;
258
+ if (stored === cid)
259
+ return { url: `${vault}/public/cid/${cid}`, cid };
260
+ refused = `stored as ${stored}, not ${cid}`;
261
+ }
262
+ else {
263
+ refused = `${res.status} ${(await res.text()).slice(0, 200)}`;
264
+ }
265
+ }
266
+ catch (err) {
267
+ refused = String(err);
268
+ }
269
+ console.error(`⚠ the Vault refused ${filename} for ${signer.did} (${refused}) — using the IPFS gateway`);
270
+ const gateway = ipfsGateway.replace(/\/+$/, "");
271
+ const res = await fetch(`${gateway}/upload`, {
272
+ method: "POST",
273
+ headers: { "content-type": contentType, "x-file-name": filename },
274
+ body: bytes,
275
+ });
276
+ if (!res.ok)
277
+ fail(`IPFS gateway upload ${filename}: ${res.status} ${await res.text()}`);
278
+ const stored = (await res.json()).cid;
279
+ if (stored !== cid)
280
+ fail(`IPFS gateway stored ${filename} as ${stored}, not ${cid}`);
281
+ return { url: `${gateway}/ipfs/${cid}`, cid };
282
+ }
283
+ /** A single-use `fs/write` UCAN for `signer`'s own `VAULT_SCOPE` subtree, addressed to the Vault's
284
+ * did:web — the nonce because the Vault refuses a token it has seen (Ed25519 is deterministic). */
285
+ async function vaultWriteToken(signer, vault) {
286
+ const ucan = await import("@ixo/ucan");
287
+ const { signer: key } = await ucan.signerFromMnemonic(signer.edMnemonic, signer.did);
288
+ const invocation = await ucan.createInvocation({
289
+ issuer: key,
290
+ audience: `did:web:${new URL(vault).host}`,
291
+ capability: { can: "fs/write", with: `ixo:filesystem${VAULT_SCOPE}` },
292
+ proofs: [],
293
+ expiration: Math.floor(Date.now() / 1000) + 300,
294
+ facts: [{ nonce: crypto.randomUUID() }],
295
+ });
296
+ return ucan.serializeInvocation(invocation);
297
+ }
298
+ /**
299
+ * `MsgAddLinkedEntity` — a ~10-line port of impacts-x-web's `helpers/signX.ts`
300
+ * (`generateAddLinkedEntityTrx`), the portal's own builder for this exact message. `oracle init`
301
+ * uses it to anchor the oracle→protocol `relationship: "protocol"` edge the marketplace query reads.
302
+ */
303
+ export async function addLinkedEntityMsg(entityDid, linkedEntity, signer) {
304
+ const { ixo } = await import("@ixo/impactxclient-sdk");
305
+ return {
306
+ typeUrl: "/ixo.iid.v1beta1.MsgAddLinkedEntity",
307
+ value: ixo.iid.v1beta1.MsgAddLinkedEntity.fromPartial({
308
+ id: entityDid,
309
+ linkedEntity: ixo.iid.v1beta1.LinkedEntity.fromPartial(linkedEntity),
310
+ signer,
311
+ }),
312
+ };
313
+ }
314
+ // --- misc ---------------------------------------------------------------------------------------
315
+ /** sha256 hex of bytes — the rubric/#vct proof convention. */
316
+ export async function sha256Hex(bytes) {
317
+ return createHash("sha256").update(bytes).digest("hex");
318
+ }
319
+ /**
320
+ * A Matrix access token for the AuthHub session's OWN Matrix user, minted the way the portal does on
321
+ * every AuthHub sign-in (impacts-x-web `hooks/useAuthHubLogin.ts` → `utils/matrix.ts`
322
+ * `generatePasswordFromMnemonic`): the hub hands back `matrixMnemonic` in the clear, never a token,
323
+ * and the account's password is `matrixPassword`'s derivation — the SAME one the oracle's own
324
+ * account is created with (matrix-account.ts), which is why it lives there and not here.
325
+ *
326
+ * It MUST be this user, not an oracle's bot token: the rooms-bot invites the UCAN issuer (the session
327
+ * DID) into a sourced room, and the claim-bot invite sets power levels — both need the entity
328
+ * OWNER's Matrix account (an oracle's token fails the join with `M_FORBIDDEN You are not invited to
329
+ * this room`). The homeserver is `NETWORKS[network].matrix`, the ONE endpoint source — asserted
330
+ * against the session's, so a session from another network fails here with a clear message instead
331
+ * of a 403 later.
332
+ */
333
+ export async function matrixLoginFromSession(signer) {
334
+ const { session } = signer;
335
+ const mnemonic = session.matrixMnemonic ?? fail("AuthHub session has no matrixMnemonic — re-run login");
336
+ const userId = session.matrixUserId ?? fail("AuthHub session has no matrixUserId — re-run login");
337
+ const homeserver = NETWORKS[signer.network].matrix.replace(/\/+$/, "");
338
+ const sessionHome = session.matrixHomeserver?.replace(/\/+$/, "");
339
+ if (sessionHome && sessionHome !== homeserver) {
340
+ fail(`AuthHub session's Matrix home ${sessionHome} is not ${signer.network}'s ${homeserver}`);
341
+ }
342
+ const password = matrixPassword(mnemonic);
343
+ const res = await fetch(`${homeserver}/_matrix/client/v3/login`, {
344
+ method: "POST",
345
+ headers: { "Content-Type": "application/json" },
346
+ body: JSON.stringify({
347
+ type: "m.login.password",
348
+ identifier: { type: "m.id.user", user: userId },
349
+ password,
350
+ initial_device_display_name: "decision-oracle CLI",
351
+ }),
352
+ });
353
+ if (!res.ok)
354
+ fail(`Matrix login as ${userId} failed: ${res.status} ${await res.text()}`);
355
+ const { access_token } = (await res.json());
356
+ return access_token;
357
+ }
358
+ // --- entities + their Matrix rooms (shared by publish-protocol and create-deed) ------------------
359
+ /** Pulls the first `did:ixo:entity:…` string out of a MsgCreateEntity tx's events. */
360
+ export function entityDidFromEvents(events) {
361
+ return events
362
+ ?.flatMap((e) => e.attributes)
363
+ .map((a) => {
364
+ try {
365
+ return JSON.parse(a.value);
366
+ }
367
+ catch {
368
+ return a.value;
369
+ }
370
+ })
371
+ .flatMap((v) => (typeof v === "object" && v !== null ? Object.values(v) : [v]))
372
+ .find((v) => typeof v === "string" && v.startsWith("did:ixo:entity:"));
373
+ }
374
+ /**
375
+ * `MsgCreateEntity` of the given `entityType` (`protocol/verifiableClaim`, `deed`, …), owned and
376
+ * controlled by the AuthHub session's DID. Plan-print (dry run) never needs the message built —
377
+ * only after the `--yes` gate returns do we touch `signer.getPubkey()` (session-mnemonic
378
+ * derivation), so a dry run stays wallet-free even for entity creation. See
379
+ * `PublishSigner.getPubkey`'s doc comment.
380
+ *
381
+ * `opts.linkedResources` is built only past the gate too (`org create` uploads its `#pro` there),
382
+ * and `opts.print` takes the plan and the result line where a caller's stdout must stay JSON.
383
+ */
384
+ export async function createEntity(signer, entityType, yes, opts = {}) {
385
+ const print = opts.print ?? console.log;
386
+ confirm({
387
+ network: signer.network,
388
+ signer: signer.address,
389
+ action: `MsgCreateEntity (${entityType})`,
390
+ lines: [
391
+ `owner: ${signer.did}`,
392
+ `relayerNode: ${NETWORKS[signer.network].relayerNodeDid}`,
393
+ ...(opts.lines ?? []),
394
+ ],
395
+ fee: STANDARD_FEE,
396
+ }, yes, { print });
397
+ const linkedResource = (await opts.linkedResources?.()) ?? [];
398
+ const { customMessages, ixo } = await import("@ixo/impactxclient-sdk");
399
+ const msg = {
400
+ typeUrl: "/ixo.entity.v1beta1.MsgCreateEntity",
401
+ value: ixo.entity.v1beta1.MsgCreateEntity.fromPartial({
402
+ entityType,
403
+ entityStatus: 0,
404
+ context: [],
405
+ verification: customMessages.iid.createIidVerificationMethods({
406
+ did: signer.did,
407
+ pubkey: await signer.getPubkey(),
408
+ address: signer.address,
409
+ controller: signer.did,
410
+ type: "secp",
411
+ }),
412
+ controller: [signer.did],
413
+ ownerAddress: signer.address,
414
+ ownerDid: signer.did,
415
+ relayerNode: NETWORKS[signer.network].relayerNodeDid,
416
+ linkedResource: linkedResource.map((r) => ixo.iid.v1beta1.LinkedResource.fromPartial(r)),
417
+ }),
418
+ };
419
+ const { hash, res } = await broadcast(signer, [msg], opts.memo ?? `create-entity: ${entityType}`);
420
+ const entityDid = entityDidFromEvents(res.events);
421
+ if (!entityDid)
422
+ fail(`entity created (tx ${hash}) but the DID could not be read from tx events`);
423
+ print(`✓ entity created: ${entityDid} (tx ${hash})`);
424
+ return entityDid;
425
+ }
426
+ /** The UCAN `with` each bot checks — the same resources the portal and qiforge mint for. */
427
+ const BOT_RESOURCES = {
428
+ stateBot: "ixo:matrix-state-bot",
429
+ roomsBot: "ixo:matrix-rooms-bot",
430
+ claimBot: "ixo:matrix-claims-bot",
431
+ };
432
+ /**
433
+ * The homeserver an entity names in its `MatrixHomeServer` service, else the network's own — and
434
+ * the bot hosts derived from it (`<bot>.bot.<homeserver host>`), exactly as the portal resolves them.
435
+ */
436
+ export async function matrixUrlsForDid(network, did) {
437
+ const { services } = await resolveEntity(NETWORKS[network].blocksync, did);
438
+ const endpoint = services
439
+ .find((s) => s.type === "MatrixHomeServer")
440
+ ?.serviceEndpoint.replace(/\s+/g, "");
441
+ const homeServer = (endpoint
442
+ ? /^https?:\/\//.test(endpoint)
443
+ ? endpoint
444
+ : `https://${endpoint}`
445
+ : NETWORKS[network].matrix).replace(/\/+$/, "");
446
+ const host = new URL(homeServer).hostname;
447
+ return {
448
+ homeServer,
449
+ homeServerCropped: host,
450
+ stateBot: `https://state.bot.${host}`,
451
+ roomsBot: `https://rooms.bot.${host}`,
452
+ claimBot: `https://claim.bot.${host}`,
453
+ };
454
+ }
455
+ /**
456
+ * The rooms/claim/state bots for this session, addressed by entity DID: every bot call carries a
457
+ * self-signed UCAN from the session's `edSigningMnemonic` (audience = the bot's own did.json, one
458
+ * token per bot for the run), and — when `matrixToken` is given — Matrix itself (join, invite,
459
+ * power levels) runs as the session's own user.
460
+ */
461
+ export async function matrixBots(signer, matrixToken) {
462
+ const edSigningMnemonic = signer.session.edSigningMnemonic ??
463
+ fail("AuthHub session has no edSigningMnemonic — re-run login");
464
+ const [sdk, ucanLib] = await Promise.all([import("@ixo/matrixclient-sdk"), import("@ixo/ucan")]);
465
+ const accessToken = matrixToken ? await matrixToken() : undefined;
466
+ const ucanSigner = ucanLib
467
+ .signerFromMnemonic(edSigningMnemonic, signer.did)
468
+ .then((s) => s.signer);
469
+ const tokens = new Map();
470
+ const urlsFor = (did) => matrixUrlsForDid(signer.network, did);
471
+ /** A UCAN for `bot` of `did`'s homeserver — minted once per bot per run (1h, the CLI is short-lived). */
472
+ async function ucan(did, bot) {
473
+ const botUrl = (await urlsFor(did))[bot];
474
+ let token = tokens.get(botUrl);
475
+ if (!token) {
476
+ token = (async () => {
477
+ const res = await fetch(`${botUrl}/.well-known/did.json`);
478
+ if (!res.ok)
479
+ throw new Error(`${botUrl}/.well-known/did.json returned ${res.status}`);
480
+ const { id } = (await res.json());
481
+ const invocation = await ucanLib.createInvocation({
482
+ issuer: await ucanSigner,
483
+ audience: id,
484
+ capability: { can: "*", with: BOT_RESOURCES[bot] },
485
+ proofs: [],
486
+ expiration: Math.floor(Date.now() / 1000) + 3600,
487
+ });
488
+ return ucanLib.serializeInvocation(invocation);
489
+ })();
490
+ tokens.set(botUrl, token);
491
+ // A failed did.json read is not remembered: the next call for this bot tries again.
492
+ token.catch(() => tokens.delete(botUrl));
493
+ }
494
+ return token;
495
+ }
496
+ return {
497
+ urls: urlsFor,
498
+ ucan,
499
+ /** The entity's room, by its alias `#<did with : → ->:<homeserver host>`. */
500
+ async roomId(did) {
501
+ const urls = await urlsFor(did);
502
+ const alias = `#${did.replaceAll(":", "-")}:${urls.homeServerCropped}`;
503
+ const { room_id } = await sdk
504
+ .createMatrixApiClient({ homeServerUrl: urls.homeServer })
505
+ .room.v1beta1.queryId(alias);
506
+ return room_id;
507
+ },
508
+ /** One room-state value through the state bot (`queryState`). */
509
+ async readState(did, roomId, key, path) {
510
+ const urls = await urlsFor(did);
511
+ const stateBot = sdk.createMatrixStateBotClient({
512
+ botUrl: urls.stateBot,
513
+ accessToken,
514
+ homeServerUrl: urls.homeServer,
515
+ });
516
+ return (await stateBot.state.v1beta1.queryState(roomId, key, path, await ucan(did, "stateBot"))).data;
517
+ },
518
+ /** Rooms-bot `sourceRoomAndJoin` (created iff missing), then the claim bot invited into it. */
519
+ async sourceRoom(did) {
520
+ const urls = await urlsFor(did);
521
+ const { roomId } = await sdk
522
+ .createMatrixRoomBotClient({
523
+ botUrl: urls.roomsBot,
524
+ accessToken: accessToken ?? "",
525
+ homeServerUrl: urls.homeServer,
526
+ })
527
+ .room.v1beta1.sourceRoomAndJoin(did, await ucan(did, "roomsBot"));
528
+ await sdk
529
+ .createMatrixClaimBotClient({
530
+ botUrl: urls.claimBot,
531
+ accessToken,
532
+ homeServerUrl: urls.homeServer,
533
+ })
534
+ .bot.v1beta1.invite(roomId);
535
+ return roomId;
536
+ },
537
+ /** A claim body saved into `collectionId` via the claim bot — the returned `data.cid` IS the claimId. */
538
+ async saveClaim(did, collectionId, claim) {
539
+ const urls = await urlsFor(did);
540
+ return sdk
541
+ .createMatrixClaimBotClient({
542
+ botUrl: urls.claimBot,
543
+ accessToken,
544
+ homeServerUrl: urls.homeServer,
545
+ })
546
+ .claim.v1beta1.saveClaim(collectionId, JSON.stringify(claim), await ucan(did, "claimBot"));
547
+ },
548
+ };
549
+ }
550
+ /**
551
+ * Source the entity's Matrix room (idempotent — created iff missing) and invite BOTH bots into it,
552
+ * the way the portal's `setupMatrixRoom` does (impacts-x-webapp `storage/matrix.ts`
553
+ * `sourceRoomAndJoin`): the claim bot, or every submission against the entity is
554
+ * IXO_ROOM_NOT_FOUND; and the state bot, or nothing can read or write the room's state — which is
555
+ * where a deed's claims-config doc lives (`create-deed`; without it the state-bot answers "You do
556
+ * not have permission to edit state"). Each invite also raises the bot's power level, so both run
557
+ * as the session's own Matrix user — the room's creator — which is why `matrixToken` must be
558
+ * `matrixLoginFromSession`'s.
559
+ */
560
+ export async function sourceEntityRoom(signer, entityDid, matrixToken, yes) {
561
+ confirm({
562
+ network: signer.network,
563
+ signer: signer.did,
564
+ action: "source Matrix room (rooms-bot) + invite the claim bot and the state bot",
565
+ lines: [
566
+ `entity: ${entityDid}`,
567
+ "mints a self-signed UCAN (the AuthHub session's edSigningMnemonic) to call the rooms-bot",
568
+ ],
569
+ }, yes);
570
+ const bots = await matrixBots(signer, matrixToken);
571
+ const roomId = await bots.sourceRoom(entityDid);
572
+ // `sourceRoom` invites only the claim bot; the state bot's invite is the same SDK call against
573
+ // the state bot's URL.
574
+ const { createMatrixStateBotClient } = await import("@ixo/matrixclient-sdk");
575
+ const urls = await bots.urls(entityDid);
576
+ await createMatrixStateBotClient({
577
+ botUrl: urls.stateBot,
578
+ accessToken: await matrixToken(),
579
+ homeServerUrl: urls.homeServer,
580
+ }).bot.v1beta1.invite(roomId);
581
+ console.log(`✓ room sourced for ${entityDid}: ${roomId} (claim bot + state bot invited)`);
582
+ return roomId;
583
+ }
584
+ //# sourceMappingURL=chain.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"chain.js","sourceRoot":"","sources":["../../../src/cli/lib/chain.ts"],"names":[],"mappings":"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"}