@astrosheep/keiyaku 4.5.28 → 4.6.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 (425) hide show
  1. package/build/integrations/marketplace/plugins/keiyaku/skills/keiyaku/SKILL.md +0 -13
  2. package/build/integrations/marketplace/plugins/keiyaku/skills/keiyaku-akuma/SKILL.md +47 -78
  3. package/build/integrations/marketplace/plugins/keiyaku/skills/keiyaku-akuma/references/automation.md +54 -41
  4. package/build/integrations/marketplace/plugins/keiyaku/skills/keiyaku-babysit/SKILL.md +10 -0
  5. package/build/integrations/marketplace/plugins/keiyaku/skills/keiyaku-bind/SKILL.md +27 -9
  6. package/build/integrations/marketplace/plugins/keiyaku/skills/keiyaku-workflow/SKILL.md +68 -71
  7. package/build/src/akuma/akuma-call.d.ts +53 -0
  8. package/build/src/akuma/akuma-call.js +113 -0
  9. package/build/src/akuma/akuma-instance.d.ts +20 -19
  10. package/build/src/akuma/akuma-instance.js +65 -177
  11. package/build/src/akuma/akuma-observe.d.ts +3 -21
  12. package/build/src/akuma/akuma-observe.js +7 -25
  13. package/build/src/akuma/{akuma-handle.d.ts → akuma-owner.d.ts} +60 -25
  14. package/build/src/akuma/{akuma-handle.js → akuma-owner.js} +43 -29
  15. package/build/src/akuma/akuma-selection-execution.d.ts +51 -0
  16. package/build/src/akuma/akuma-selection-execution.js +134 -0
  17. package/build/src/akuma/{fleet-execution.d.ts → akuma-wait.d.ts} +24 -32
  18. package/build/src/akuma/akuma-wait.js +113 -0
  19. package/build/src/akuma/akuma.d.ts +35 -97
  20. package/build/src/akuma/akuma.js +148 -35
  21. package/build/src/akuma/archetype.d.ts +18 -6
  22. package/build/src/akuma/archetype.js +52 -34
  23. package/build/src/akuma/body.d.ts +79 -61
  24. package/build/src/akuma/body.js +101 -50
  25. package/build/src/akuma/call-initial-tell.d.ts +164 -0
  26. package/build/src/akuma/call-initial-tell.js +62 -0
  27. package/build/src/akuma/call-input.d.ts +0 -3
  28. package/build/src/akuma/call-input.js +0 -7
  29. package/build/src/akuma/call-request.d.ts +247 -38
  30. package/build/src/akuma/call-request.js +77 -92
  31. package/build/src/akuma/coordinate.d.ts +15 -5
  32. package/build/src/akuma/coordinate.js +12 -22
  33. package/build/src/akuma/dispatch-association.d.ts +1 -1
  34. package/build/src/akuma/dispatch-association.js +1 -10
  35. package/build/src/akuma/heart/activity-schema.d.ts +325 -0
  36. package/build/src/akuma/heart/activity-schema.js +53 -0
  37. package/build/src/akuma/heart/facts.d.ts +3 -9
  38. package/build/src/akuma/heart/index.d.ts +3 -1
  39. package/build/src/akuma/heart/index.js +4 -1
  40. package/build/src/akuma/heart/rows.d.ts +49 -2
  41. package/build/src/akuma/heart/rows.js +16 -2
  42. package/build/src/akuma/heart/soul.d.ts +1 -0
  43. package/build/src/akuma/heart/soul.js +7 -10
  44. package/build/src/akuma/heart/tells.d.ts +1 -0
  45. package/build/src/akuma/heart/tells.js +18 -0
  46. package/build/src/akuma/identity.d.ts +10 -7
  47. package/build/src/akuma/identity.js +23 -0
  48. package/build/src/akuma/index.d.ts +10 -8
  49. package/build/src/akuma/index.js +2 -2
  50. package/build/src/akuma/nuke.d.ts +3 -0
  51. package/build/src/akuma/nuke.js +13 -7
  52. package/build/src/akuma/projection-read.js +1 -2
  53. package/build/src/akuma/projection.d.ts +0 -5
  54. package/build/src/akuma/projection.js +22 -43
  55. package/build/src/akuma/provider-recipe.d.ts +58 -23
  56. package/build/src/akuma/provider-recipe.js +62 -103
  57. package/build/src/akuma/provider.d.ts +7 -78
  58. package/build/src/akuma/provider.js +11 -219
  59. package/build/src/akuma/providers/acp/config.d.ts +2 -0
  60. package/build/src/akuma/providers/acp/config.js +26 -1
  61. package/build/src/akuma/providers/acp/core.d.ts +7 -0
  62. package/build/src/akuma/providers/acp/core.js +49 -18
  63. package/build/src/akuma/providers/acp/index.js +14 -17
  64. package/build/src/akuma/providers/claude/index.js +2 -14
  65. package/build/src/akuma/providers/codex-app-server/index.js +0 -22
  66. package/build/src/akuma/providers/grok-build/index.js +44 -24
  67. package/build/src/akuma/providers/index.d.ts +3 -3
  68. package/build/src/akuma/providers/index.js +2 -13
  69. package/build/src/akuma/providers/opencode-sdk/event-stream.d.ts +28 -0
  70. package/build/src/akuma/providers/opencode-sdk/event-stream.js +92 -0
  71. package/build/src/akuma/providers/opencode-sdk/events.d.ts +0 -1
  72. package/build/src/akuma/providers/opencode-sdk/index.js +200 -74
  73. package/build/src/akuma/providers/opencode-sdk/session.d.ts +41 -1
  74. package/build/src/akuma/providers/opencode-sdk/session.js +69 -2
  75. package/build/src/akuma/providers/pi/events.js +5 -2
  76. package/build/src/akuma/providers/pi/index.js +70 -24
  77. package/build/src/akuma/publication.d.ts +84 -3
  78. package/build/src/akuma/publication.js +145 -2
  79. package/build/src/akuma/read-pool.d.ts +2 -0
  80. package/build/src/akuma/read-pool.js +15 -0
  81. package/build/src/akuma/request-rendezvous.js +10 -0
  82. package/build/src/akuma/request-serve.js +7 -0
  83. package/build/src/akuma/request-wire.d.ts +14 -26
  84. package/build/src/akuma/request-wire.js +4 -0
  85. package/build/src/akuma/requests.d.ts +0 -3
  86. package/build/src/akuma/requests.js +0 -24
  87. package/build/src/akuma/{fleet-observation.d.ts → selection-observation.d.ts} +61 -52
  88. package/build/src/akuma/selection-observation.js +65 -0
  89. package/build/src/akuma/{fleet-owner-port.d.ts → selection-owner-port.d.ts} +3 -3
  90. package/build/src/akuma/{fleet-owner-port.js → selection-owner-port.js} +11 -17
  91. package/build/src/akuma/{fleet-request.d.ts → selection-request.d.ts} +42 -82
  92. package/build/src/akuma/{fleet-request.js → selection-request.js} +92 -136
  93. package/build/src/akuma/turn-drive.d.ts +3 -0
  94. package/build/src/akuma/turn-drive.js +75 -16
  95. package/build/src/akuma-body.js +91 -56
  96. package/build/src/body/amend.d.ts +5 -0
  97. package/build/src/body/amend.js +26 -50
  98. package/build/src/body/arc.d.ts +4 -2
  99. package/build/src/body/arc.js +19 -26
  100. package/build/src/body/criteria.d.ts +6 -0
  101. package/build/src/body/criteria.js +37 -0
  102. package/build/src/body/decode.js +5 -42
  103. package/build/src/body/region.d.ts +5 -0
  104. package/build/src/body/region.js +45 -2
  105. package/build/src/body/render.js +2 -4
  106. package/build/src/cli/activity.d.ts +26 -0
  107. package/build/src/cli/activity.js +75 -0
  108. package/build/src/cli/actor.d.ts +3 -1
  109. package/build/src/cli/actor.js +15 -2
  110. package/build/src/cli/commands/akuma-grammar.d.ts +75 -0
  111. package/build/src/cli/commands/akuma-grammar.js +414 -0
  112. package/build/src/cli/commands/akuma.d.ts +5 -69
  113. package/build/src/cli/commands/akuma.js +352 -312
  114. package/build/src/cli/commands/amend.d.ts +4 -5
  115. package/build/src/cli/commands/amend.js +1 -2
  116. package/build/src/cli/commands/bind.d.ts +4 -5
  117. package/build/src/cli/commands/bind.js +5 -9
  118. package/build/src/cli/commands/contract-grammar.d.ts +112 -0
  119. package/build/src/cli/commands/contract-grammar.js +282 -0
  120. package/build/src/cli/commands/contract-help.d.ts +28 -30
  121. package/build/src/cli/commands/contract-help.js +69 -96
  122. package/build/src/cli/commands/contract.d.ts +18 -97
  123. package/build/src/cli/commands/contract.js +620 -237
  124. package/build/src/cli/commands/install.d.ts +1 -1
  125. package/build/src/cli/commands/install.js +2 -2
  126. package/build/src/cli/commands/task-grammar.d.ts +19 -0
  127. package/build/src/cli/commands/task-grammar.js +438 -0
  128. package/build/src/cli/commands/task-query.js +23 -104
  129. package/build/src/cli/commands/task.d.ts +5 -20
  130. package/build/src/cli/commands/task.js +415 -333
  131. package/build/src/cli/coordinates.d.ts +10 -0
  132. package/build/src/cli/coordinates.js +20 -0
  133. package/build/src/cli/draft.d.ts +7 -1
  134. package/build/src/cli/main.js +10 -1
  135. package/build/src/cli/parse.d.ts +8 -9
  136. package/build/src/cli/parse.js +63 -61
  137. package/build/src/cli/render/akuma-activity.d.ts +88 -39
  138. package/build/src/cli/render/akuma-activity.js +465 -263
  139. package/build/src/cli/render/akuma-tool.d.ts +15 -5
  140. package/build/src/cli/render/akuma-tool.js +40 -27
  141. package/build/src/cli/render/akuma.d.ts +40 -24
  142. package/build/src/cli/render/akuma.js +108 -205
  143. package/build/src/cli/render/audit.d.ts +6 -2
  144. package/build/src/cli/render/audit.js +61 -30
  145. package/build/src/cli/render/catalog.d.ts +11 -2
  146. package/build/src/cli/render/catalog.js +75 -94
  147. package/build/src/cli/render/contract-history.d.ts +3 -1
  148. package/build/src/cli/render/contract-history.js +215 -22
  149. package/build/src/cli/render/contract-observation.d.ts +10 -5
  150. package/build/src/cli/render/contract-observation.js +29 -46
  151. package/build/src/cli/render/contract.d.ts +10 -3
  152. package/build/src/cli/render/contract.js +255 -106
  153. package/build/src/cli/render/effects.d.ts +26 -0
  154. package/build/src/cli/render/effects.js +41 -0
  155. package/build/src/cli/render/execution-progress.d.ts +18 -6
  156. package/build/src/cli/render/execution-progress.js +34 -31
  157. package/build/src/cli/render/kanshi-akuma.d.ts +1 -2
  158. package/build/src/cli/render/kanshi-akuma.js +5 -26
  159. package/build/src/cli/render/kanshi.js +108 -129
  160. package/build/src/cli/render/marks.d.ts +13 -0
  161. package/build/src/cli/render/marks.js +74 -0
  162. package/build/src/cli/render/nuke.js +18 -7
  163. package/build/src/cli/render/receipt.d.ts +10 -4
  164. package/build/src/cli/render/receipt.js +126 -46
  165. package/build/src/cli/render/reconcile.d.ts +5 -0
  166. package/build/src/cli/render/reconcile.js +152 -0
  167. package/build/src/cli/render/refusal.d.ts +21 -4
  168. package/build/src/cli/render/refusal.js +61 -34
  169. package/build/src/cli/render/region.js +3 -2
  170. package/build/src/cli/render/settings.js +4 -14
  171. package/build/src/cli/render/task.d.ts +37 -6
  172. package/build/src/cli/render/task.js +162 -158
  173. package/build/src/cli/render/terminal.d.ts +25 -1
  174. package/build/src/cli/render/terminal.js +105 -18
  175. package/build/src/cli/runtime.d.ts +32 -8
  176. package/build/src/cli/runtime.js +161 -163
  177. package/build/src/cli/selectors.d.ts +5 -2
  178. package/build/src/cli/selectors.js +11 -3
  179. package/build/src/cli/streams.d.ts +11 -0
  180. package/build/src/cli/streams.js +32 -0
  181. package/build/src/cli/usage.d.ts +2 -0
  182. package/build/src/cli/usage.js +12 -8
  183. package/build/src/contract-guidance.js +3 -7
  184. package/build/src/contract-worktree.d.ts +20 -28
  185. package/build/src/contract-worktree.js +18 -70
  186. package/build/src/coordination/durable-file.d.ts +2 -2
  187. package/build/src/coordination/durable-file.js +0 -27
  188. package/build/src/core/facts/codec.d.ts +1 -2
  189. package/build/src/core/facts/codec.js +6 -7
  190. package/build/src/core/facts/gate.d.ts +0 -1
  191. package/build/src/core/facts/gate.js +0 -82
  192. package/build/src/core/facts/types.d.ts +1 -2
  193. package/build/src/core/verbs/abandon.d.ts +2 -6
  194. package/build/src/core/verbs/abandon.js +0 -16
  195. package/build/src/core/verbs/amend.d.ts +0 -1
  196. package/build/src/core/verbs/amend.js +0 -20
  197. package/build/src/core/verbs/arc.d.ts +7 -8
  198. package/build/src/core/verbs/arc.js +2 -19
  199. package/build/src/core/verbs/attestation.d.ts +2 -6
  200. package/build/src/core/verbs/attestation.js +0 -16
  201. package/build/src/core/verbs/bind.d.ts +0 -1
  202. package/build/src/core/verbs/bind.js +0 -16
  203. package/build/src/core/verbs/deliver.d.ts +0 -1
  204. package/build/src/core/verbs/deliver.js +0 -16
  205. package/build/src/core/verbs/placement.d.ts +2 -1
  206. package/build/src/core/verbs/placement.js +10 -59
  207. package/build/src/git/admission.d.ts +6 -4
  208. package/build/src/git/admission.js +4 -0
  209. package/build/src/git/hooks.d.ts +55 -30
  210. package/build/src/git/hooks.js +30 -3
  211. package/build/src/git/identity.d.ts +6 -0
  212. package/build/src/git/identity.js +47 -0
  213. package/build/src/git/integration.d.ts +31 -13
  214. package/build/src/git/integration.js +32 -1
  215. package/build/src/git/nuke.d.ts +10 -1
  216. package/build/src/git/nuke.js +31 -11
  217. package/build/src/git/observe.js +2 -15
  218. package/build/src/git/private-state-seat.d.ts +6 -7
  219. package/build/src/git/private-state-seat.js +8 -6
  220. package/build/src/git/read-observation.d.ts +6 -1
  221. package/build/src/git/read-observation.js +81 -46
  222. package/build/src/git/reconcile.d.ts +117 -40
  223. package/build/src/git/reconcile.js +169 -40
  224. package/build/src/git/scratch.d.ts +7 -4
  225. package/build/src/git/scratch.js +28 -6
  226. package/build/src/git/target-placement.d.ts +53 -38
  227. package/build/src/git/target-placement.js +69 -54
  228. package/build/src/git/tender.d.ts +37 -28
  229. package/build/src/git/tender.js +39 -0
  230. package/build/src/git/terminal-reconcile.js +21 -23
  231. package/build/src/git/terminal-seal.d.ts +8 -6
  232. package/build/src/git/terminal-seal.js +10 -0
  233. package/build/src/git/workspace.d.ts +29 -15
  234. package/build/src/git/workspace.js +28 -2
  235. package/build/src/identity/normalize.js +19 -6
  236. package/build/src/index.d.ts +78 -6
  237. package/build/src/index.js +52 -3
  238. package/build/src/kanshi/read.d.ts +3 -3
  239. package/build/src/kanshi/read.js +21 -21
  240. package/build/src/kanshi/report.d.ts +9 -8
  241. package/build/src/kanshi/roster.d.ts +2 -0
  242. package/build/src/kanshi/roster.js +2 -0
  243. package/build/src/kanshi/select.js +7 -3
  244. package/build/src/library/address.d.ts +3 -7
  245. package/build/src/library/address.js +7 -7
  246. package/build/src/library/akuma-creation.d.ts +35 -33
  247. package/build/src/library/akuma-creation.js +184 -167
  248. package/build/src/library/akumas.d.ts +40 -0
  249. package/build/src/library/akumas.js +84 -0
  250. package/build/src/library/bind.d.ts +107 -13
  251. package/build/src/library/bind.js +29 -23
  252. package/build/src/library/continuation.d.ts +556 -28
  253. package/build/src/library/continuation.js +29 -54
  254. package/build/src/library/contract-composition.d.ts +40 -0
  255. package/build/src/library/contract-composition.js +105 -0
  256. package/build/src/library/contract-creation.d.ts +7 -0
  257. package/build/src/library/contract-creation.js +192 -0
  258. package/build/src/library/contract-execution.d.ts +29 -40
  259. package/build/src/library/contract-execution.js +503 -128
  260. package/build/src/library/contract-operations.d.ts +275 -134
  261. package/build/src/library/contract-operations.js +83 -92
  262. package/build/src/library/contract-outcomes.d.ts +71 -0
  263. package/build/src/library/contract-outcomes.js +32 -0
  264. package/build/src/library/contract-settings.d.ts +25 -0
  265. package/build/src/library/contract-settings.js +135 -0
  266. package/build/src/library/contract-types.d.ts +24 -38
  267. package/build/src/library/delivery.d.ts +530 -10
  268. package/build/src/library/delivery.js +20 -45
  269. package/build/src/library/input.d.ts +3 -1
  270. package/build/src/library/input.js +11 -16
  271. package/build/src/library/invocation.d.ts +87 -0
  272. package/build/src/library/invocation.js +290 -0
  273. package/build/src/library/keiyaku.d.ts +44 -437
  274. package/build/src/library/keiyaku.js +132 -20
  275. package/build/src/library/nuke.d.ts +2 -11
  276. package/build/src/library/nuke.js +70 -57
  277. package/build/src/library/outcome.d.ts +13196 -0
  278. package/build/src/library/outcome.js +487 -0
  279. package/build/src/library/reconcile.d.ts +96 -24
  280. package/build/src/library/reconcile.js +102 -42
  281. package/build/src/library/refusal.d.ts +470 -42
  282. package/build/src/library/refusal.js +55 -143
  283. package/build/src/library/region.d.ts +15 -7
  284. package/build/src/library/region.js +23 -3
  285. package/build/src/library/repo.d.ts +2 -12
  286. package/build/src/library/repo.js +1 -22
  287. package/build/src/library/selection.d.ts +121 -0
  288. package/build/src/library/{fleet.js → selection.js} +177 -160
  289. package/build/src/plugin/public.d.ts +2 -0
  290. package/build/src/protocol/abandon.d.ts +2 -2
  291. package/build/src/protocol/abandon.js +1 -0
  292. package/build/src/protocol/amend.js +1 -0
  293. package/build/src/protocol/arc.d.ts +6 -4
  294. package/build/src/protocol/attempt.d.ts +4 -2
  295. package/build/src/protocol/attempt.js +10 -0
  296. package/build/src/protocol/audit.d.ts +255 -52
  297. package/build/src/protocol/audit.js +63 -5
  298. package/build/src/protocol/bind.d.ts +18 -17
  299. package/build/src/protocol/bind.js +9 -28
  300. package/build/src/protocol/completion.d.ts +256 -22
  301. package/build/src/protocol/completion.js +100 -12
  302. package/build/src/protocol/deliver.d.ts +34 -23
  303. package/build/src/protocol/deliver.js +39 -25
  304. package/build/src/protocol/execution-observation.d.ts +36 -37
  305. package/build/src/protocol/execution-observation.js +7 -9
  306. package/build/src/protocol/intent.d.ts +101 -30
  307. package/build/src/protocol/intent.js +74 -1
  308. package/build/src/protocol/operations.d.ts +570 -64
  309. package/build/src/protocol/operations.js +189 -9
  310. package/build/src/protocol/outcome.d.ts +2 -1
  311. package/build/src/protocol/placement.d.ts +2 -2
  312. package/build/src/protocol/placement.js +3 -1
  313. package/build/src/protocol/progress.d.ts +108 -65
  314. package/build/src/protocol/progress.js +82 -132
  315. package/build/src/protocol/read/status.d.ts +4 -3
  316. package/build/src/protocol/read/status.js +6 -5
  317. package/build/src/protocol/reconcile.d.ts +3 -3
  318. package/build/src/protocol/reconcile.js +4 -0
  319. package/build/src/protocol/reintegrate.d.ts +2 -2
  320. package/build/src/protocol/review.d.ts +30 -12
  321. package/build/src/protocol/review.js +15 -24
  322. package/build/src/protocol/run.d.ts +34 -5
  323. package/build/src/protocol/run.js +24 -12
  324. package/build/src/runtime/proc/windows-launch.exe +0 -0
  325. package/build/src/settings.d.ts +0 -10
  326. package/build/src/settings.js +0 -76
  327. package/build/src/settlement/holder.d.ts +1 -1
  328. package/build/src/settlement/settle.d.ts +25 -16
  329. package/build/src/settlement/settle.js +80 -20
  330. package/build/src/task/board.d.ts +3 -1
  331. package/build/src/task/board.js +13 -17
  332. package/build/src/task/catalog.d.ts +0 -4
  333. package/build/src/task/catalog.js +0 -15
  334. package/build/src/task/compose-language.d.ts +19 -9
  335. package/build/src/task/compose-language.js +30 -20
  336. package/build/src/task/compose.d.ts +7 -37
  337. package/build/src/task/compose.js +20 -2
  338. package/build/src/task/created-observation.d.ts +0 -1
  339. package/build/src/task/created-observation.js +1 -4
  340. package/build/src/task/document.d.ts +12 -2
  341. package/build/src/task/document.js +4 -0
  342. package/build/src/task/identity.d.ts +4 -1
  343. package/build/src/task/identity.js +21 -17
  344. package/build/src/task/index.d.ts +36 -16
  345. package/build/src/task/index.js +103 -96
  346. package/build/src/task/lifecycle-operations.d.ts +1 -1
  347. package/build/src/task/mutation-result.d.ts +647 -586
  348. package/build/src/task/mutation-result.js +79 -46
  349. package/build/src/task/mutation.d.ts +298 -270
  350. package/build/src/task/mutation.js +93 -110
  351. package/build/src/task/operation-types.d.ts +6 -49
  352. package/build/src/task/operations.d.ts +2 -1
  353. package/build/src/task/operations.js +35 -12
  354. package/build/src/task/query.d.ts +9 -3
  355. package/build/src/task/query.js +42 -16
  356. package/build/src/task/store.d.ts +2 -1
  357. package/build/src/task/store.js +10 -14
  358. package/build/src/verification/declaration.d.ts +0 -1
  359. package/build/src/verification/declaration.js +1 -18
  360. package/build/src/verification/execution.d.ts +6 -2
  361. package/build/src/verification/observation.d.ts +1 -1
  362. package/package.json +2 -14
  363. package/build/src/akuma/akuma-product-symbols.d.ts +0 -1
  364. package/build/src/akuma/akuma-product-symbols.js +0 -1
  365. package/build/src/akuma/akuma-product.d.ts +0 -62
  366. package/build/src/akuma/akuma-product.js +0 -293
  367. package/build/src/akuma/fleet-execution.js +0 -181
  368. package/build/src/akuma/fleet-observation.js +0 -91
  369. package/build/src/cli/accepted.d.ts +0 -24
  370. package/build/src/cli/accepted.js +0 -167
  371. package/build/src/cli/commands/akuma-invoke.d.ts +0 -114
  372. package/build/src/cli/commands/akuma-invoke.js +0 -402
  373. package/build/src/cli/commands/contract-invoke.d.ts +0 -34
  374. package/build/src/cli/commands/contract-invoke.js +0 -259
  375. package/build/src/cli/commands/nuke.d.ts +0 -10
  376. package/build/src/cli/commands/nuke.js +0 -20
  377. package/build/src/cli/commands/status-set.d.ts +0 -4
  378. package/build/src/cli/commands/status-set.js +0 -52
  379. package/build/src/cli/commands/task-invoke.d.ts +0 -49
  380. package/build/src/cli/commands/task-invoke.js +0 -306
  381. package/build/src/cli/invoke.d.ts +0 -27
  382. package/build/src/cli/invoke.js +0 -484
  383. package/build/src/cli/render/board.d.ts +0 -3
  384. package/build/src/cli/render/board.js +0 -25
  385. package/build/src/cli/render/status-set.d.ts +0 -5
  386. package/build/src/cli/render/status-set.js +0 -19
  387. package/build/src/cli/render/text.d.ts +0 -3
  388. package/build/src/cli/render/text.js +0 -33
  389. package/build/src/cli/result.d.ts +0 -240
  390. package/build/src/cli/result.js +0 -1
  391. package/build/src/git/result-codec.d.ts +0 -29
  392. package/build/src/git/result-codec.js +0 -309
  393. package/build/src/kanshi/fleet.d.ts +0 -6
  394. package/build/src/kanshi/fleet.js +0 -27
  395. package/build/src/library/audit.d.ts +0 -29
  396. package/build/src/library/audit.js +0 -41
  397. package/build/src/library/catalog.d.ts +0 -68
  398. package/build/src/library/catalog.js +0 -130
  399. package/build/src/library/composition.d.ts +0 -403
  400. package/build/src/library/composition.js +0 -29
  401. package/build/src/library/configuration.d.ts +0 -4
  402. package/build/src/library/configuration.js +0 -2
  403. package/build/src/library/contract-bind.d.ts +0 -31
  404. package/build/src/library/contract-bind.js +0 -140
  405. package/build/src/library/contract-forwarding.d.ts +0 -55
  406. package/build/src/library/contract-forwarding.js +0 -67
  407. package/build/src/library/contract-handle.d.ts +0 -45
  408. package/build/src/library/contract-handle.js +0 -373
  409. package/build/src/library/contract.d.ts +0 -53
  410. package/build/src/library/contract.js +0 -91
  411. package/build/src/library/execution-result.d.ts +0 -243
  412. package/build/src/library/execution-result.js +0 -101
  413. package/build/src/library/execution.d.ts +0 -8
  414. package/build/src/library/execution.js +0 -102
  415. package/build/src/library/fleet.d.ts +0 -83
  416. package/build/src/library/mutation.d.ts +0 -501
  417. package/build/src/library/mutation.js +0 -248
  418. package/build/src/library/result-codec.d.ts +0 -2
  419. package/build/src/library/result-codec.js +0 -12
  420. package/build/src/protocol/result-codec.d.ts +0 -23
  421. package/build/src/protocol/result-codec.js +0 -488
  422. package/build/src/settlement/result-codec.d.ts +0 -2
  423. package/build/src/settlement/result-codec.js +0 -56
  424. package/build/src/task/public.d.ts +0 -2
  425. package/build/src/task/public.js +0 -1
@@ -1,181 +0,0 @@
1
- import { AkumaDecodeError, AkumaProviderError } from "./akuma-errors.js";
2
- import { AkumaNotBornError, defaultWaitComplete } from "./akuma.js";
3
- import { createAkumaProduct } from "./akuma-product.js";
4
- import { readLiveStatus, waitForObservation } from "./akuma-observe.js";
5
- import { NO_DISPATCH_ASSOCIATION } from "./dispatch-association.js";
6
- import { EMPTY_CREATED_TASK_OBSERVATION } from "../task/created-observation.js";
7
- import { fleetResultSchemas, parseAkumaObservation, } from "./fleet-observation.js";
8
- function source(path) {
9
- return createAkumaProduct(path);
10
- }
11
- function observationDiagnostic(error) {
12
- return error instanceof Error ? error.message : String(error);
13
- }
14
- const SHARED_ORDINARY_BUDGET = 30;
15
- function akumaOnlyObservation(status) {
16
- return parseAkumaObservation({
17
- status,
18
- contract: NO_DISPATCH_ASSOCIATION,
19
- createdTasks: EMPTY_CREATED_TASK_OBSERVATION,
20
- });
21
- }
22
- async function observeWaitRound(path, ids, signal) {
23
- signal?.throwIfAborted();
24
- if (ids.length <= 1) {
25
- const observations = await Promise.all(ids.map(async (id) => await readLiveStatus(path, id, { aperture: "monitoring" })));
26
- return { observations, unobserved: [] };
27
- }
28
- let remaining = SHARED_ORDINARY_BUDGET;
29
- const observations = [];
30
- const unobserved = [];
31
- for (const id of ids) {
32
- signal?.throwIfAborted();
33
- try {
34
- const observed = await readLiveStatus(path, id, { aperture: "monitoring", ordinaryBudget: remaining });
35
- observations.push(observed);
36
- remaining -= observed.ordinarySelected;
37
- }
38
- catch (error) {
39
- if (error instanceof AkumaNotBornError)
40
- throw error;
41
- unobserved.push({ id, diagnostic: observationDiagnostic(error) });
42
- }
43
- }
44
- return { observations, unobserved };
45
- }
46
- function roundComplete(round, completion) {
47
- const settled = round.observations.map((observation) => defaultWaitComplete(observation.status));
48
- return (settled.length > 0 &&
49
- (completion === "any" ? settled.some(Boolean) : round.unobserved.length === 0 && settled.every(Boolean)));
50
- }
51
- /** Canonical ids in the caller's selection order, appending any id the caller never named. */
52
- function selectionOrderedIds(ids, order) {
53
- const present = new Set(ids);
54
- const seen = new Set();
55
- const ordered = [];
56
- for (const id of order) {
57
- if (present.has(id) && !seen.has(id)) {
58
- seen.add(id);
59
- ordered.push(id);
60
- }
61
- }
62
- for (const id of ids) {
63
- if (!seen.has(id)) {
64
- seen.add(id);
65
- ordered.push(id);
66
- }
67
- }
68
- return ordered;
69
- }
70
- export async function executeWaitAkuma(input) {
71
- // Identity facts are read once per observed Akuma, not once per 100ms round.
72
- const facts = new Map();
73
- if (input.onSelected !== undefined) {
74
- for (const id of input.ids) {
75
- input.signal?.throwIfAborted();
76
- const known = input.identity === undefined ? undefined : await input.identity(id);
77
- facts.set(id, known ?? { contract: NO_DISPATCH_ASSOCIATION });
78
- }
79
- const ordered = input.selectionOrder === undefined ? input.ids : selectionOrderedIds(input.ids, input.selectionOrder);
80
- input.onSelected(ordered.map((id) => ({ id, ...facts.get(id) })));
81
- }
82
- const observeRound = async (round) => {
83
- if (input.observe === undefined)
84
- return;
85
- const observed = [];
86
- for (const observation of round.observations) {
87
- input.signal?.throwIfAborted();
88
- const { status, rows } = observation;
89
- let known = facts.get(status.id);
90
- if (known === undefined && input.identity !== undefined) {
91
- known = await input.identity(status.id);
92
- facts.set(status.id, known);
93
- }
94
- if (known === undefined) {
95
- observed.push({ status, rows, contract: NO_DISPATCH_ASSOCIATION });
96
- continue;
97
- }
98
- observed.push({ status, rows, ...known });
99
- }
100
- input.observe(observed);
101
- };
102
- const waited = await waitForObservation({
103
- ...(input.timeoutMs === undefined ? {} : { timeoutMs: input.timeoutMs }),
104
- ...(input.signal === undefined ? {} : { signal: input.signal }),
105
- observe: async () => await observeWaitRound(input.path, input.ids, input.signal),
106
- complete: (round) => roundComplete(round, input.completion),
107
- onObserve: async (round) => await observeRound(round),
108
- });
109
- return fleetResultSchemas.wait.parse({
110
- mode: input.completion,
111
- reason: waited.reason,
112
- observations: waited.value.observations.map((observation) => akumaOnlyObservation(observation.status)),
113
- unobserved: waited.value.unobserved,
114
- });
115
- }
116
- export async function executeTellAkuma(input) {
117
- input.signal?.throwIfAborted();
118
- const handle = source(input.path).selectHandle({ id: input.id });
119
- const tell = await handle.tell(input.body, input.tellId, input.recordedAt, undefined, {
120
- ...(input.initiator === undefined ? {} : { initiator: input.initiator }),
121
- ...(input.signal === undefined ? {} : { signal: input.signal }),
122
- });
123
- input.signal?.throwIfAborted();
124
- return fleetResultSchemas.tell.parse({
125
- akuma: input.id,
126
- tell,
127
- });
128
- }
129
- function tellWaitObservation(observed) {
130
- if (observed.outcome === null)
131
- return observed.reason === "deadline" ? { reason: "deadline" } : { reason: "unanswered" };
132
- if (observed.outcome.kind === "answered")
133
- return { reason: "answered", answer: observed.outcome.answerJson ?? observed.outcome.answer };
134
- if (observed.outcome.kind === "failed")
135
- return { reason: "failed", diagnostic: observed.outcome.diagnostic };
136
- throw new AkumaDecodeError(observed.outcome.diagnostic, observed.outcome.answer);
137
- }
138
- export async function executeTellWaitAkuma(input) {
139
- input.signal?.throwIfAborted();
140
- const handle = source(input.path).selectHandle({ id: input.id });
141
- const admission = input.interrupt === true
142
- ? await handle.admitInterrupt(input.body, {
143
- ...(input.tellId === undefined ? {} : { tellId: input.tellId }),
144
- ...(input.schemaJson === undefined ? {} : { schemaJson: input.schemaJson }),
145
- ...(input.initiator === undefined ? {} : { initiator: input.initiator }),
146
- ...(input.signal === undefined ? {} : { signal: input.signal }),
147
- })
148
- : await handle.admitTell(input.body, input.tellId, input.recordedAt, undefined, {
149
- ...(input.schemaJson === undefined ? {} : { schemaJson: input.schemaJson }),
150
- ...(input.initiator === undefined ? {} : { initiator: input.initiator }),
151
- ...(input.signal === undefined ? {} : { signal: input.signal }),
152
- });
153
- if (admission.kind === "unavailable")
154
- throw new AkumaProviderError(`Tell interrupt unavailable: ${admission.evidence}`);
155
- if (admission.kind === "not-born")
156
- throw new AkumaNotBornError(input.id);
157
- await input.onObserve?.admitted?.(await handle.admittedReceipt(admission.tell.id), input.id);
158
- // The wake runs behind the window; a settled wake is preferred, otherwise the
159
- // receipt reports the admitted Tell as it stands when the window closes.
160
- let settled;
161
- void admission.wake.then((receipt) => {
162
- settled = receipt;
163
- }, () => undefined);
164
- const observed = await handle.tellOutcome(admission.tell.id, {
165
- timeoutMs: input.timeoutMs,
166
- ...(input.signal === undefined ? {} : { signal: input.signal }),
167
- ...(input.onObserve?.observe === undefined ? {} : { observe: input.onObserve.observe }),
168
- });
169
- const observation = tellWaitObservation(observed);
170
- const tell = settled ?? (await handle.admittedReceipt(admission.tell.id));
171
- return fleetResultSchemas.tellWait.parse({ akuma: input.id, tell, observation });
172
- }
173
- export async function executeKillAkuma(input) {
174
- input.signal?.throwIfAborted();
175
- const handles = input.ids.map((id) => source(input.path).selectHandle({ id }));
176
- const evidence = await Promise.all(handles.map(async (handle) => await handle.kill(input.signal === undefined ? {} : { signal: input.signal })));
177
- input.signal?.throwIfAborted();
178
- return fleetResultSchemas.kill.parse({
179
- results: input.ids.map((id, index) => ({ id, evidence: evidence[index] })),
180
- });
181
- }
@@ -1,91 +0,0 @@
1
- import { akumaIdSchema, akumaStatusSchema } from "./akuma.js";
2
- import { tellRowSchema } from "./projection.js";
3
- import { dispatchAssociationSchema } from "./dispatch-association.js";
4
- import { createdTaskObservationSchema } from "../task/created-observation.js";
5
- import { z } from "zod";
6
- const nonblankTextSchema = z.string().refine((value) => value.trim() !== "");
7
- const killEvidenceSchema = z.enum([
8
- "killed",
9
- "already-killed",
10
- "already-stopped",
11
- "hung",
12
- "untidy",
13
- "unavailable",
14
- ]);
15
- const akumaObservationSchema = z
16
- .object({
17
- status: akumaStatusSchema,
18
- contract: dispatchAssociationSchema,
19
- createdTasks: createdTaskObservationSchema,
20
- })
21
- .strict();
22
- const runLogReferenceSchema = z
23
- .object({ path: z.string(), from: z.number().int().nonnegative(), to: z.number().int().nonnegative() })
24
- .strict();
25
- const failedTellWakeSchema = z
26
- .object({
27
- kind: z.literal("failed"),
28
- diagnostic: z.string(),
29
- child: z
30
- .object({ code: z.number().int().nullable(), signal: z.string().nullable(), log: runLogReferenceSchema })
31
- .strict()
32
- .optional(),
33
- })
34
- .strict()
35
- .transform(({ child, ...wake }) => (child === undefined ? wake : { ...wake, child }));
36
- const tellWakeSchema = z.union([
37
- z.object({ kind: z.literal("told") }).strict(),
38
- z.object({ kind: z.literal("held") }).strict(),
39
- z.object({ kind: z.literal("pursuing"), bodySequence: z.number().int().nonnegative() }).strict(),
40
- failedTellWakeSchema,
41
- ]);
42
- const tellResultSchema = z
43
- .object({
44
- admission: z.object({ fact: z.literal("recorded"), tellId: nonblankTextSchema }).strict(),
45
- row: tellRowSchema,
46
- wake: tellWakeSchema,
47
- })
48
- .strict();
49
- const akumaUnobservedSchema = z.object({ id: akumaIdSchema, diagnostic: z.string() }).strict();
50
- const akumaKillResultItemSchema = z.object({ id: akumaIdSchema, evidence: killEvidenceSchema }).strict();
51
- const akumaWaitResultSchema = z
52
- .object({
53
- mode: z.enum(["any", "all"]),
54
- reason: z.enum(["completed", "deadline"]),
55
- observations: z.array(akumaObservationSchema),
56
- unobserved: z.array(akumaUnobservedSchema),
57
- })
58
- .strict();
59
- const akumaKillResultSchema = z.object({ results: z.array(akumaKillResultItemSchema) }).strict();
60
- const akumaTellResultSchema = z.object({ akuma: akumaIdSchema, tell: tellResultSchema }).strict();
61
- const tellWaitObservationSchema = z.union([
62
- z.object({ reason: z.literal("answered"), answer: z.unknown() }).strict(),
63
- z.object({ reason: z.literal("failed"), diagnostic: z.string() }).strict(),
64
- z.object({ reason: z.literal("unanswered") }).strict(),
65
- z.object({ reason: z.literal("deadline") }).strict(),
66
- ]);
67
- const akumaTellWaitResultSchema = z
68
- .object({ akuma: akumaIdSchema, tell: tellResultSchema, observation: tellWaitObservationSchema })
69
- .strict();
70
- export function parseAkumaObservation(value) {
71
- return akumaObservationSchema.parse(value);
72
- }
73
- export function isWaitResult(value) {
74
- return akumaWaitResultSchema.safeParse(value).success;
75
- }
76
- export function isKillResult(value) {
77
- return akumaKillResultSchema.safeParse(value).success;
78
- }
79
- export function isTellResult(value) {
80
- return akumaTellResultSchema.safeParse(value).success;
81
- }
82
- export function isTellWaitResult(value) {
83
- return akumaTellWaitResultSchema.safeParse(value).success;
84
- }
85
- export const fleetResultSchemas = {
86
- wait: akumaWaitResultSchema,
87
- tell: akumaTellResultSchema,
88
- tellWait: akumaTellWaitResultSchema,
89
- kill: akumaKillResultSchema,
90
- killEvidence: killEvidenceSchema,
91
- };
@@ -1,24 +0,0 @@
1
- import { type AmendResult, type AuditReport, type BindResult, type ContractId, type Delivery, type MutationResult, type Review } from "../index.js";
2
- import type { AcceptedAbandonResult, AcceptedAmendResult, AcceptedArcResult, AcceptedAuditResult, AcceptedBindResult, AcceptedDeliverResult, AcceptedResult, AcceptedReviewResult, InvocationResult } from "./result.js";
3
- type MutationObservation = Pick<MutationResult<unknown>, "facts" | "head" | "lags" | "settlementLags" | "recoverySnapshot" | "cleanup" | "executionStops">;
4
- type MutationCallOptions = Readonly<{
5
- coordinate?: ContractId;
6
- projectRefusal?: (refusal: unknown) => unknown;
7
- }>;
8
- export declare function acceptedBind(result: BindResult, coordinates: Readonly<{
9
- target?: string;
10
- }>): AcceptedBindResult;
11
- export declare function acceptedAmend(result: AmendResult, coordinate: ContractId): AcceptedAmendResult;
12
- export declare function acceptedDeliver(result: MutationResult<Delivery>, coordinate: ContractId): AcceptedDeliverResult;
13
- export declare function acceptedReview(result: MutationResult<Review>, coordinate: ContractId): AcceptedReviewResult;
14
- export declare function acceptedArc(result: MutationResult<void>, coordinate: ContractId): AcceptedArcResult;
15
- export declare function acceptedAbandon(result: MutationResult<void>, coordinate: ContractId): AcceptedAbandonResult;
16
- export declare function acceptedAudit(result: MutationResult<AuditReport>, coordinate: ContractId): AcceptedAuditResult;
17
- export declare function resultFromMutationCall<const Verb extends AcceptedResult["verb"], Result extends MutationObservation>(verb: Verb, call: () => Promise<Result>, project: (result: Result) => Extract<AcceptedResult, {
18
- verb: NoInfer<Verb>;
19
- }>, options?: MutationCallOptions): Promise<Extract<AcceptedResult, {
20
- verb: Verb;
21
- }> | Extract<InvocationResult, {
22
- kind: "refused" | "retry";
23
- }>>;
24
- export {};
@@ -1,167 +0,0 @@
1
- import { executionReceipt, KeiyakuRefused, KeiyakuRetry, } from "../index.js";
2
- function acceptedFacts(result) {
3
- return result.facts.map((fact) => fact.kind === "reintegrated"
4
- ? { contract: fact.contract, entry: fact.entry, kind: fact.kind, data: fact.data }
5
- : { contract: fact.contract, entry: fact.entry, kind: fact.kind });
6
- }
7
- function attestationFor(facts, gate, coordinate) {
8
- return facts.findLast((fact) => fact.contract === coordinate && fact.kind === "attestation" && fact.data.gate === gate);
9
- }
10
- function acceptedEnvelope(result, coordinate) {
11
- const contract = coordinate ?? result.facts[0]?.contract;
12
- if (contract === undefined)
13
- throw new Error("accepted mutation is missing its contract identity");
14
- const firstLag = result.lags[0];
15
- return {
16
- kind: "accepted",
17
- contract,
18
- head: result.head,
19
- facts: acceptedFacts(result),
20
- settlementLags: result.settlementLags,
21
- ...(result.recoverySnapshot === undefined ? {} : { recoverySnapshot: result.recoverySnapshot }),
22
- ...(result.lags.length === 0 || firstLag === undefined ? {} : { lag: [firstLag, ...result.lags.slice(1)] }),
23
- ...(result.cleanup.length === 0 ? {} : { cleanup: result.cleanup }),
24
- ...(result.executionStops.length === 0 ? {} : { executionStops: result.executionStops }),
25
- };
26
- }
27
- /**
28
- * The completed placement's movement identity — the reference it advanced and the head it advanced from — is part
29
- * of the public accepted shape, so a receipt states the movement without rebuilding it from facts or folded state.
30
- */
31
- function acceptedCompletion(completion) {
32
- if (completion === undefined)
33
- return undefined;
34
- return {
35
- integration: completion.integration,
36
- ...(completion.predecessor === undefined ? {} : { predecessor: completion.predecessor }),
37
- ...(completion.target === undefined ? {} : { target: completion.target }),
38
- ...(completion.verification === undefined ? {} : { verification: completion.verification }),
39
- };
40
- }
41
- function acceptedRegion(result) {
42
- if (result.overlapFailure !== undefined)
43
- return { overlapFailure: result.overlapFailure };
44
- return { overlaps: result.overlaps };
45
- }
46
- function acceptedAmendRegion(result) {
47
- if (result.overlapFailure !== undefined)
48
- return { overlapFailure: result.overlapFailure };
49
- if (result.overlaps !== undefined)
50
- return { overlaps: result.overlaps };
51
- return {};
52
- }
53
- export function acceptedBind(result, coordinates) {
54
- return {
55
- ...acceptedEnvelope(result, undefined),
56
- verb: "bind",
57
- ...(result.workspace === undefined ? {} : { workspace: result.workspace }),
58
- target: coordinates.target ?? null,
59
- ...(result.warnings === undefined ? {} : { warnings: result.warnings }),
60
- ...acceptedRegion(result),
61
- };
62
- }
63
- export function acceptedAmend(result, coordinate) {
64
- return {
65
- ...acceptedEnvelope(result, coordinate),
66
- verb: "amend",
67
- diff: result.documentDiff,
68
- ...acceptedAmendRegion(result),
69
- };
70
- }
71
- export function acceptedDeliver(result, coordinate) {
72
- const value = result.value;
73
- const attestation = attestationFor(result.facts, "verified", coordinate);
74
- const completion = acceptedCompletion(value.completion);
75
- const verificationVerdict = value.completion?.verification?.verdict ?? attestation?.data.verdict ?? value.verificationReuse?.verdict;
76
- return {
77
- ...acceptedEnvelope(result, coordinate),
78
- verb: "deliver",
79
- tenderSnapshot: value.tenderSnapshot,
80
- integration: { changeId: value.integration.changeId },
81
- ...(value.leading === undefined ? {} : { leading: value.leading }),
82
- ...(completion === undefined ? {} : { completion }),
83
- ...(verificationVerdict === undefined ? {} : { verificationVerdict }),
84
- ...(value.verification === undefined ? {} : { verification: value.verification }),
85
- ...(value.verificationReuse === undefined ? {} : { verificationReuse: value.verificationReuse }),
86
- ...(value.verificationSummary === undefined ? {} : { verificationSummary: value.verificationSummary }),
87
- ...(value.placement === undefined ? {} : { placement: value.placement }),
88
- ...(value.continuation === undefined ? {} : { continuation: value.continuation }),
89
- };
90
- }
91
- export function acceptedReview(result, coordinate) {
92
- const value = result.value;
93
- const reviewAttestation = attestationFor(result.facts, "reviewed", coordinate);
94
- if (reviewAttestation === undefined)
95
- throw new Error("accepted review is missing its attestation fact");
96
- const verificationAttestation = attestationFor(result.facts, "verified", coordinate);
97
- const completion = acceptedCompletion(value.completion);
98
- const verificationVerdict = value.completion?.verification?.verdict ??
99
- verificationAttestation?.data.verdict ??
100
- value.verificationReuse?.verdict;
101
- return {
102
- ...acceptedEnvelope(result, coordinate),
103
- verb: "review",
104
- verdict: reviewAttestation.data.verdict,
105
- ...(completion === undefined ? {} : { completion }),
106
- ...(verificationVerdict === undefined ? {} : { verificationVerdict }),
107
- ...(value.verification === undefined ? {} : { verification: value.verification }),
108
- ...(value.verificationReuse === undefined ? {} : { verificationReuse: value.verificationReuse }),
109
- ...(value.verificationSummary === undefined ? {} : { verificationSummary: value.verificationSummary }),
110
- ...(value.placement === undefined ? {} : { placement: value.placement }),
111
- ...(value.continuation === undefined ? {} : { continuation: value.continuation }),
112
- ...(value.workspace === undefined ? {} : { workspace: value.workspace }),
113
- };
114
- }
115
- export function acceptedArc(result, coordinate) {
116
- const arc = result.facts.find((fact) => fact.kind === "arc");
117
- if (arc === undefined)
118
- throw new Error("accepted arc is missing its arc fact");
119
- return {
120
- ...acceptedEnvelope(result, coordinate),
121
- verb: "arc",
122
- chapter: { seq: arc.data.seq, title: arc.data.title },
123
- };
124
- }
125
- export function acceptedAbandon(result, coordinate) {
126
- const abandoned = result.facts.find((fact) => fact.kind === "abandoned");
127
- if (abandoned === undefined)
128
- throw new Error("accepted abandon is missing its abandoned fact");
129
- return {
130
- ...acceptedEnvelope(result, coordinate),
131
- verb: "abandon",
132
- ...(abandoned.data.note === undefined ? {} : { note: abandoned.data.note }),
133
- };
134
- }
135
- export function acceptedAudit(result, coordinate) {
136
- return {
137
- ...acceptedEnvelope(result, coordinate),
138
- verb: "audit",
139
- report: result.value,
140
- };
141
- }
142
- export async function resultFromMutationCall(verb, call, project, options = {}) {
143
- try {
144
- return project(await call());
145
- }
146
- catch (error) {
147
- if (executionReceipt(error) !== undefined)
148
- throw error;
149
- if (error instanceof KeiyakuRefused) {
150
- return {
151
- kind: "refused",
152
- verb,
153
- ...(options.coordinate === undefined ? {} : { contract: options.coordinate }),
154
- refusal: options.projectRefusal === undefined ? error.refusal : options.projectRefusal(error.refusal),
155
- };
156
- }
157
- if (error instanceof KeiyakuRetry) {
158
- return {
159
- kind: "retry",
160
- verb,
161
- ...(options.coordinate === undefined ? {} : { contract: options.coordinate }),
162
- detail: error.reason,
163
- };
164
- }
165
- throw error;
166
- }
167
- }
@@ -1,114 +0,0 @@
1
- import { type AkuId } from "../../akuma/identity.js";
2
- import { type ActivityHistory } from "../../akuma/akuma.js";
3
- import { Keiyaku, type AkumaKillResult, type AkumaHistoryResult, type AkumaObservation, type AkumaTellResult, type AkumaWaitResult, type CallResult, type ForkResult, type Keiyaku as KeiyakuContract, type Repo } from "../../index.js";
4
- import { type WaitSelectedIdentity } from "../render/akuma-activity.js";
5
- import type { Settings } from "../../settings.js";
6
- import type { WorldRoot } from "../../world.js";
7
- import type { InvokedAkumaCommand } from "./akuma.js";
8
- import { type ExecutionContext } from "../../akuma/requests.js";
9
- import type { AkumaTellWaitResult } from "../../akuma/fleet-observation.js";
10
- export type AkumaInvocationResult = Readonly<{
11
- kind: "akuma";
12
- action: "call";
13
- result: CallResult;
14
- world: WorldRoot;
15
- schemaAnswer?: unknown;
16
- streamed?: boolean;
17
- }> | Readonly<{
18
- kind: "akuma";
19
- action: "status";
20
- status: AkumaObservation;
21
- alias?: string;
22
- }> | Readonly<{
23
- kind: "akuma";
24
- action: "wait";
25
- result: AkumaWaitResult;
26
- alias?: string;
27
- streamed?: boolean;
28
- /** The moment this invocation began waiting, so a non-streamed scoreboard asserts real waiting. */
29
- startedAt?: number;
30
- /** The frozen selected set, so a non-streamed render names each target as the caller selected it. */
31
- selection?: readonly WaitSelectedIdentity[];
32
- }> | Readonly<{
33
- kind: "akuma";
34
- action: "tell";
35
- mode: "ordinary";
36
- result: AkumaTellResult;
37
- body: string;
38
- alias?: string;
39
- }> | Readonly<{
40
- kind: "akuma";
41
- action: "tell";
42
- mode: "schema";
43
- result: unknown;
44
- body: string;
45
- alias?: string;
46
- }> | Readonly<{
47
- kind: "akuma";
48
- action: "tell";
49
- mode: "wait";
50
- result: AkumaTellWaitResult;
51
- body: string;
52
- alias?: string;
53
- }> | Readonly<{
54
- kind: "akuma";
55
- action: "tell";
56
- mode: "interrupt";
57
- result: Awaited<ReturnType<typeof Keiyaku.interrupt>>;
58
- body: string;
59
- alias?: string;
60
- }> | Readonly<{
61
- kind: "akuma";
62
- action: "history";
63
- akuma: AkuId;
64
- mode: "page";
65
- history: ActivityHistory;
66
- historyResult: AkumaHistoryResult;
67
- alias?: string;
68
- }> | Readonly<{
69
- kind: "akuma";
70
- action: "history";
71
- akuma: AkuId;
72
- mode: "last";
73
- answer: string;
74
- historyResult: AkumaHistoryResult;
75
- alias?: string;
76
- }> | Readonly<{
77
- kind: "akuma";
78
- action: "history";
79
- akuma: AkuId;
80
- mode: "no-answer";
81
- historyResult: AkumaHistoryResult;
82
- alias?: string;
83
- }> | Readonly<{
84
- kind: "akuma";
85
- action: "history";
86
- akuma: AkuId;
87
- mode: "exact";
88
- historyResult: AkumaHistoryResult;
89
- alias?: string;
90
- }> | Readonly<{
91
- kind: "akuma";
92
- action: "fork";
93
- receipt: ForkResult;
94
- }> | Readonly<{
95
- kind: "akuma";
96
- action: "kill";
97
- result: AkumaKillResult;
98
- alias?: string;
99
- }>;
100
- type InvokeInput = Readonly<{
101
- path: WorldRoot;
102
- executionCwd?: string;
103
- home?: string;
104
- settings?: Settings;
105
- contract?: KeiyakuContract;
106
- repo?: Repo;
107
- environment: NodeJS.ProcessEnv;
108
- readStdin(): Promise<string>;
109
- execution?: ExecutionContext;
110
- signal?: AbortSignal;
111
- }>;
112
- export declare function invokeAkuma(command: InvokedAkumaCommand, input: InvokeInput): Promise<AkumaInvocationResult>;
113
- export declare function invokeAkumaStatus(path: WorldRoot, akuma: string, alias?: string, repo?: Repo): Promise<AkumaInvocationResult>;
114
- export {};