@aeolus-fleet/core 0.26.1 → 0.27.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 (364) hide show
  1. package/README.md +1 -1
  2. package/dist/adapters/http/request-credentials.d.ts +2 -9
  3. package/dist/adapters/http/request-credentials.js +8 -1
  4. package/dist/adapters/http/request-credentials.js.map +1 -1
  5. package/dist/adapters/http/server.js +2 -1
  6. package/dist/adapters/http/server.js.map +1 -1
  7. package/dist/adapters/mcp/mcp-endpoint.js +11 -1
  8. package/dist/adapters/mcp/mcp-endpoint.js.map +1 -1
  9. package/dist/adapters/prisma/generated/browser.d.ts +14 -0
  10. package/dist/adapters/prisma/generated/client.d.ts +14 -0
  11. package/dist/adapters/prisma/generated/commonInputTypes.d.ts +30 -0
  12. package/dist/adapters/prisma/generated/enums.d.ts +10 -0
  13. package/dist/adapters/prisma/generated/enums.js +10 -1
  14. package/dist/adapters/prisma/generated/enums.js.map +1 -1
  15. package/dist/adapters/prisma/generated/internal/class.d.ts +22 -0
  16. package/dist/adapters/prisma/generated/internal/class.js +4 -4
  17. package/dist/adapters/prisma/generated/internal/class.js.map +1 -1
  18. package/dist/adapters/prisma/generated/internal/prismaNamespace.d.ts +186 -1
  19. package/dist/adapters/prisma/generated/internal/prismaNamespace.js +27 -2
  20. package/dist/adapters/prisma/generated/internal/prismaNamespace.js.map +1 -1
  21. package/dist/adapters/prisma/generated/internal/prismaNamespaceBrowser.d.ts +27 -0
  22. package/dist/adapters/prisma/generated/internal/prismaNamespaceBrowser.js +27 -2
  23. package/dist/adapters/prisma/generated/internal/prismaNamespaceBrowser.js.map +1 -1
  24. package/dist/adapters/prisma/generated/models/Delivery.d.ts +71 -1
  25. package/dist/adapters/prisma/generated/models/Fleet.d.ts +558 -0
  26. package/dist/adapters/prisma/generated/models/Lease.d.ts +172 -1
  27. package/dist/adapters/prisma/generated/models/NetworkSettings.d.ts +185 -21
  28. package/dist/adapters/prisma/generated/models/PluginConnection.d.ts +1180 -0
  29. package/dist/adapters/prisma/generated/models/PluginConnection.js +2 -0
  30. package/dist/adapters/prisma/generated/models/PluginConnection.js.map +1 -0
  31. package/dist/adapters/prisma/generated/models/ReachRefusal.d.ts +71 -1
  32. package/dist/adapters/prisma/generated/models/ScopeNamespace.d.ts +1220 -0
  33. package/dist/adapters/prisma/generated/models/ScopeNamespace.js +2 -0
  34. package/dist/adapters/prisma/generated/models/ScopeNamespace.js.map +1 -0
  35. package/dist/adapters/prisma/generated/models/Ship.d.ts +1269 -51
  36. package/dist/adapters/prisma/generated/models.d.ts +2 -0
  37. package/dist/adapters/prisma/health.js +27 -7
  38. package/dist/adapters/prisma/health.js.map +1 -1
  39. package/dist/adapters/prisma/history.js +18 -72
  40. package/dist/adapters/prisma/history.js.map +1 -1
  41. package/dist/adapters/prisma/messaging.js +31 -35
  42. package/dist/adapters/prisma/messaging.js.map +1 -1
  43. package/dist/adapters/prisma/network.js +45 -15
  44. package/dist/adapters/prisma/network.js.map +1 -1
  45. package/dist/adapters/prisma/overdue.js +4 -3
  46. package/dist/adapters/prisma/overdue.js.map +1 -1
  47. package/dist/adapters/prisma/plugin-connections.d.ts +4 -0
  48. package/dist/adapters/prisma/plugin-connections.js +20 -0
  49. package/dist/adapters/prisma/plugin-connections.js.map +1 -0
  50. package/dist/adapters/prisma/registry.js +68 -13
  51. package/dist/adapters/prisma/registry.js.map +1 -1
  52. package/dist/adapters/prisma/rows.d.ts +3 -0
  53. package/dist/adapters/prisma/rows.js +22 -7
  54. package/dist/adapters/prisma/rows.js.map +1 -1
  55. package/dist/adapters/prisma/scope-namespaces.d.ts +4 -0
  56. package/dist/adapters/prisma/scope-namespaces.js +39 -0
  57. package/dist/adapters/prisma/scope-namespaces.js.map +1 -0
  58. package/dist/adapters/prisma/unit-of-work.d.ts +3 -1
  59. package/dist/adapters/prisma/unit-of-work.js +4 -0
  60. package/dist/adapters/prisma/unit-of-work.js.map +1 -1
  61. package/dist/adapters/rest/rest-api.js +2 -2
  62. package/dist/adapters/rest/rest-api.js.map +1 -1
  63. package/dist/adapters/trpc/console.d.ts +1 -1
  64. package/dist/adapters/trpc/console.js +6 -4
  65. package/dist/adapters/trpc/console.js.map +1 -1
  66. package/dist/adapters/trpc/context.d.ts +28 -4
  67. package/dist/adapters/trpc/fleet.d.ts +243 -90
  68. package/dist/adapters/trpc/fleet.js +146 -57
  69. package/dist/adapters/trpc/fleet.js.map +1 -1
  70. package/dist/adapters/trpc/router.d.ts +366 -86
  71. package/dist/adapters/trpc/ship-contract.js +5 -0
  72. package/dist/adapters/trpc/ship-contract.js.map +1 -1
  73. package/dist/adapters/trpc/ship-protocol.js +7 -5
  74. package/dist/adapters/trpc/ship-protocol.js.map +1 -1
  75. package/dist/adapters/trpc/ship.d.ts +156 -3
  76. package/dist/adapters/trpc/ship.js +89 -8
  77. package/dist/adapters/trpc/ship.js.map +1 -1
  78. package/dist/adapters/trpc/trpc.d.ts +13 -9
  79. package/dist/adapters/trpc/trpc.js +90 -26
  80. package/dist/adapters/trpc/trpc.js.map +1 -1
  81. package/dist/domain/messaging/check-inbox.d.ts +5 -5
  82. package/dist/domain/messaging/check-inbox.js +9 -7
  83. package/dist/domain/messaging/check-inbox.js.map +1 -1
  84. package/dist/domain/messaging/delivery.d.ts +8 -2
  85. package/dist/domain/messaging/delivery.js +14 -9
  86. package/dist/domain/messaging/delivery.js.map +1 -1
  87. package/dist/domain/messaging/dismiss-delivery.d.ts +9 -4
  88. package/dist/domain/messaging/dismiss-delivery.js +26 -19
  89. package/dist/domain/messaging/dismiss-delivery.js.map +1 -1
  90. package/dist/domain/messaging/hand-over-delivery.d.ts +1 -0
  91. package/dist/domain/messaging/hand-over-delivery.js +1 -0
  92. package/dist/domain/messaging/hand-over-delivery.js.map +1 -1
  93. package/dist/domain/messaging/message.d.ts +11 -5
  94. package/dist/domain/messaging/message.js +11 -4
  95. package/dist/domain/messaging/message.js.map +1 -1
  96. package/dist/domain/messaging/overdue.d.ts +2 -0
  97. package/dist/domain/messaging/overdue.js +3 -0
  98. package/dist/domain/messaging/overdue.js.map +1 -1
  99. package/dist/domain/messaging/ping-ship.d.ts +3 -3
  100. package/dist/domain/messaging/ping-ship.js +6 -2
  101. package/dist/domain/messaging/ping-ship.js.map +1 -1
  102. package/dist/domain/messaging/ports.d.ts +11 -3
  103. package/dist/domain/messaging/push-receive-deliveries.d.ts +4 -1
  104. package/dist/domain/messaging/push-receive-deliveries.js +5 -3
  105. package/dist/domain/messaging/push-receive-deliveries.js.map +1 -1
  106. package/dist/domain/messaging/receive-deliveries.d.ts +23 -0
  107. package/dist/domain/messaging/receive-deliveries.js +6 -3
  108. package/dist/domain/messaging/receive-deliveries.js.map +1 -1
  109. package/dist/domain/messaging/receive-reply.d.ts +32 -0
  110. package/dist/domain/messaging/receive-reply.js +25 -0
  111. package/dist/domain/messaging/receive-reply.js.map +1 -0
  112. package/dist/domain/messaging/resend-delivery.d.ts +5 -2
  113. package/dist/domain/messaging/resend-delivery.js +8 -4
  114. package/dist/domain/messaging/resend-delivery.js.map +1 -1
  115. package/dist/domain/messaging/send-message.d.ts +9 -2
  116. package/dist/domain/messaging/send-message.js +12 -2
  117. package/dist/domain/messaging/send-message.js.map +1 -1
  118. package/dist/domain/messaging/send-request.d.ts +3 -1
  119. package/dist/domain/messaging/send-request.js +4 -2
  120. package/dist/domain/messaging/send-request.js.map +1 -1
  121. package/dist/domain/registry/assign-label.d.ts +2 -1
  122. package/dist/domain/registry/assign-label.js +3 -2
  123. package/dist/domain/registry/assign-label.js.map +1 -1
  124. package/dist/domain/registry/check-reach.d.ts +69 -6
  125. package/dist/domain/registry/check-reach.js +109 -12
  126. package/dist/domain/registry/check-reach.js.map +1 -1
  127. package/dist/domain/registry/commission-ship.d.ts +21 -8
  128. package/dist/domain/registry/commission-ship.js +55 -10
  129. package/dist/domain/registry/commission-ship.js.map +1 -1
  130. package/dist/domain/registry/connect-plugin.d.ts +30 -0
  131. package/dist/domain/registry/connect-plugin.js +35 -0
  132. package/dist/domain/registry/connect-plugin.js.map +1 -0
  133. package/dist/domain/registry/crew-request.d.ts +1 -1
  134. package/dist/domain/registry/declare-scopes.d.ts +38 -0
  135. package/dist/domain/registry/declare-scopes.js +34 -0
  136. package/dist/domain/registry/declare-scopes.js.map +1 -0
  137. package/dist/domain/registry/declared-network-rules.d.ts +2 -1
  138. package/dist/domain/registry/declared-network-rules.js +11 -5
  139. package/dist/domain/registry/declared-network-rules.js.map +1 -1
  140. package/dist/domain/registry/discover.d.ts +29 -0
  141. package/dist/domain/registry/discover.js +54 -0
  142. package/dist/domain/registry/discover.js.map +1 -0
  143. package/dist/domain/registry/explain-reach.d.ts +13 -12
  144. package/dist/domain/registry/explain-reach.js +35 -12
  145. package/dist/domain/registry/explain-reach.js.map +1 -1
  146. package/dist/domain/registry/get-ship.d.ts +11 -3
  147. package/dist/domain/registry/get-ship.js +8 -2
  148. package/dist/domain/registry/get-ship.js.map +1 -1
  149. package/dist/domain/registry/get-starting-prompt.d.ts +18 -2
  150. package/dist/domain/registry/get-starting-prompt.js +7 -7
  151. package/dist/domain/registry/get-starting-prompt.js.map +1 -1
  152. package/dist/domain/registry/grant-scopes.d.ts +34 -0
  153. package/dist/domain/registry/grant-scopes.js +35 -0
  154. package/dist/domain/registry/grant-scopes.js.map +1 -0
  155. package/dist/domain/registry/label.d.ts +12 -7
  156. package/dist/domain/registry/label.js +21 -4
  157. package/dist/domain/registry/label.js.map +1 -1
  158. package/dist/domain/registry/leases.d.ts +6 -3
  159. package/dist/domain/registry/leases.js +7 -5
  160. package/dist/domain/registry/leases.js.map +1 -1
  161. package/dist/domain/registry/list-fleet.d.ts +19 -6
  162. package/dist/domain/registry/list-fleet.js +18 -3
  163. package/dist/domain/registry/list-fleet.js.map +1 -1
  164. package/dist/domain/registry/list-scopes.d.ts +24 -0
  165. package/dist/domain/registry/list-scopes.js +22 -0
  166. package/dist/domain/registry/list-scopes.js.map +1 -0
  167. package/dist/domain/registry/managed-or-assigned.d.ts +25 -0
  168. package/dist/domain/registry/managed-or-assigned.js +23 -0
  169. package/dist/domain/registry/managed-or-assigned.js.map +1 -0
  170. package/dist/domain/registry/named-namespaces.d.ts +19 -0
  171. package/dist/domain/registry/named-namespaces.js +19 -0
  172. package/dist/domain/registry/named-namespaces.js.map +1 -0
  173. package/dist/domain/registry/network-settings.d.ts +95 -24
  174. package/dist/domain/registry/network-settings.js +146 -46
  175. package/dist/domain/registry/network-settings.js.map +1 -1
  176. package/dist/domain/registry/plugin-connection.d.ts +48 -0
  177. package/dist/domain/registry/plugin-connection.js +35 -0
  178. package/dist/domain/registry/plugin-connection.js.map +1 -0
  179. package/dist/domain/registry/ports.d.ts +75 -1
  180. package/dist/domain/registry/public.d.ts +3 -2
  181. package/dist/domain/registry/public.js +3 -2
  182. package/dist/domain/registry/public.js.map +1 -1
  183. package/dist/domain/registry/reach-refusal.d.ts +12 -4
  184. package/dist/domain/registry/read-assigned-crew-requests.d.ts +12 -3
  185. package/dist/domain/registry/read-assigned-crew-requests.js +8 -8
  186. package/dist/domain/registry/read-assigned-crew-requests.js.map +1 -1
  187. package/dist/domain/registry/read-built-in-rules.d.ts +20 -0
  188. package/dist/domain/registry/read-built-in-rules.js +24 -0
  189. package/dist/domain/registry/read-built-in-rules.js.map +1 -0
  190. package/dist/domain/registry/read-clear-requests.d.ts +5 -3
  191. package/dist/domain/registry/read-clear-requests.js +7 -5
  192. package/dist/domain/registry/read-clear-requests.js.map +1 -1
  193. package/dist/domain/registry/read-network-plugin.d.ts +23 -0
  194. package/dist/domain/registry/read-network-plugin.js +15 -0
  195. package/dist/domain/registry/read-network-plugin.js.map +1 -0
  196. package/dist/domain/registry/read-on-behalf.d.ts +20 -0
  197. package/dist/domain/registry/read-on-behalf.js +31 -0
  198. package/dist/domain/registry/read-on-behalf.js.map +1 -0
  199. package/dist/domain/registry/read-reach.d.ts +64 -0
  200. package/dist/domain/registry/read-reach.js +83 -0
  201. package/dist/domain/registry/read-reach.js.map +1 -0
  202. package/dist/domain/registry/recrew-ship.d.ts +3 -2
  203. package/dist/domain/registry/recrew-ship.js +8 -1
  204. package/dist/domain/registry/recrew-ship.js.map +1 -1
  205. package/dist/domain/registry/release-ship.d.ts +10 -5
  206. package/dist/domain/registry/release-ship.js +11 -8
  207. package/dist/domain/registry/release-ship.js.map +1 -1
  208. package/dist/domain/registry/remove-crew-request.d.ts +4 -3
  209. package/dist/domain/registry/remove-crew-request.js +6 -1
  210. package/dist/domain/registry/remove-crew-request.js.map +1 -1
  211. package/dist/domain/registry/rename-ship.d.ts +7 -5
  212. package/dist/domain/registry/rename-ship.js +9 -3
  213. package/dist/domain/registry/rename-ship.js.map +1 -1
  214. package/dist/domain/registry/request-crew.d.ts +5 -4
  215. package/dist/domain/registry/request-crew.js +6 -1
  216. package/dist/domain/registry/request-crew.js.map +1 -1
  217. package/dist/domain/registry/request-worktree-clear.d.ts +3 -2
  218. package/dist/domain/registry/request-worktree-clear.js +6 -1
  219. package/dist/domain/registry/request-worktree-clear.js.map +1 -1
  220. package/dist/domain/registry/retire-ship.d.ts +17 -7
  221. package/dist/domain/registry/retire-ship.js +48 -5
  222. package/dist/domain/registry/retire-ship.js.map +1 -1
  223. package/dist/domain/registry/scope-grant.d.ts +53 -0
  224. package/dist/domain/registry/scope-grant.js +74 -0
  225. package/dist/domain/registry/scope-grant.js.map +1 -0
  226. package/dist/domain/registry/scope-namespace.d.ts +68 -0
  227. package/dist/domain/registry/scope-namespace.js +82 -0
  228. package/dist/domain/registry/scope-namespace.js.map +1 -0
  229. package/dist/domain/registry/set-built-in-rule.d.ts +28 -0
  230. package/dist/domain/registry/set-built-in-rule.js +33 -0
  231. package/dist/domain/registry/set-built-in-rule.js.map +1 -0
  232. package/dist/domain/registry/set-network-rules.d.ts +3 -3
  233. package/dist/domain/registry/set-network-rules.js +2 -2
  234. package/dist/domain/registry/set-owner.d.ts +30 -0
  235. package/dist/domain/registry/set-owner.js +37 -0
  236. package/dist/domain/registry/set-owner.js.map +1 -0
  237. package/dist/domain/registry/set-statement.d.ts +27 -0
  238. package/dist/domain/registry/set-statement.js +28 -0
  239. package/dist/domain/registry/set-statement.js.map +1 -0
  240. package/dist/domain/registry/ship.d.ts +74 -10
  241. package/dist/domain/registry/ship.js +128 -10
  242. package/dist/domain/registry/ship.js.map +1 -1
  243. package/dist/domain/registry/statement.d.ts +32 -0
  244. package/dist/domain/registry/statement.js +39 -0
  245. package/dist/domain/registry/statement.js.map +1 -0
  246. package/dist/domain/registry/unassign-label.js +1 -1
  247. package/dist/domain/registry/unassign-label.js.map +1 -1
  248. package/dist/domain/registry/whoami.d.ts +5 -1
  249. package/dist/domain/registry/whoami.js +7 -4
  250. package/dist/domain/registry/whoami.js.map +1 -1
  251. package/dist/domain/shared/caller.d.ts +5 -2
  252. package/dist/domain/shared/caller.js.map +1 -1
  253. package/dist/domain/shared/delivery-way.d.ts +9 -5
  254. package/dist/domain/shared/delivery-way.js +17 -5
  255. package/dist/domain/shared/delivery-way.js.map +1 -1
  256. package/dist/domain/shared/errors.d.ts +1 -1
  257. package/dist/domain/shared/errors.js.map +1 -1
  258. package/dist/domain/shared/events-read.d.ts +16 -0
  259. package/dist/domain/shared/events-read.js +15 -0
  260. package/dist/domain/shared/events-read.js.map +1 -0
  261. package/dist/domain/shared/follow-fleet.d.ts +8 -2
  262. package/dist/domain/shared/follow-fleet.js +14 -4
  263. package/dist/domain/shared/follow-fleet.js.map +1 -1
  264. package/dist/domain/shared/health.d.ts +11 -2
  265. package/dist/domain/shared/health.js +11 -3
  266. package/dist/domain/shared/health.js.map +1 -1
  267. package/dist/domain/shared/history.d.ts +11 -42
  268. package/dist/domain/shared/history.js +9 -0
  269. package/dist/domain/shared/history.js.map +1 -1
  270. package/dist/domain/shared/read-fleet-events.d.ts +8 -2
  271. package/dist/domain/shared/read-fleet-events.js +10 -4
  272. package/dist/domain/shared/read-fleet-events.js.map +1 -1
  273. package/dist/domain/shared/read-health.d.ts +5 -1
  274. package/dist/domain/shared/read-health.js +13 -2
  275. package/dist/domain/shared/read-health.js.map +1 -1
  276. package/dist/domain/shared/read-inbox.d.ts +6 -3
  277. package/dist/domain/shared/read-inbox.js +14 -4
  278. package/dist/domain/shared/read-inbox.js.map +1 -1
  279. package/dist/domain/shared/read-message.d.ts +6 -2
  280. package/dist/domain/shared/read-message.js +6 -2
  281. package/dist/domain/shared/read-message.js.map +1 -1
  282. package/dist/domain/shared/read-needs-attention.d.ts +4 -1
  283. package/dist/domain/shared/read-needs-attention.js +8 -3
  284. package/dist/domain/shared/read-needs-attention.js.map +1 -1
  285. package/dist/domain/shared/read-sent-message.d.ts +31 -0
  286. package/dist/domain/shared/read-sent-message.js +28 -0
  287. package/dist/domain/shared/read-sent-message.js.map +1 -0
  288. package/dist/domain/shared/read-ship-messages.d.ts +6 -2
  289. package/dist/domain/shared/read-ship-messages.js +7 -2
  290. package/dist/domain/shared/read-ship-messages.js.map +1 -1
  291. package/dist/domain/shared/read-ship-timeline.d.ts +5 -2
  292. package/dist/domain/shared/read-ship-timeline.js +11 -6
  293. package/dist/domain/shared/read-ship-timeline.js.map +1 -1
  294. package/dist/domain/shared/read-ship-way.d.ts +11 -4
  295. package/dist/domain/shared/read-ship-way.js +9 -2
  296. package/dist/domain/shared/read-ship-way.js.map +1 -1
  297. package/dist/domain/shared/stuck.d.ts +10 -1
  298. package/dist/domain/shared/stuck.js +5 -3
  299. package/dist/domain/shared/stuck.js.map +1 -1
  300. package/dist/testing/container-images.d.ts +14 -0
  301. package/dist/testing/container-images.js +18 -0
  302. package/dist/testing/container-images.js.map +1 -0
  303. package/dist/testing/database.d.ts +14 -0
  304. package/dist/testing/database.js +48 -0
  305. package/dist/testing/database.js.map +1 -0
  306. package/dist/testing/fleet.d.ts +13 -0
  307. package/dist/testing/fleet.js +17 -0
  308. package/dist/testing/fleet.js.map +1 -0
  309. package/dist/testing/index.d.ts +12 -0
  310. package/dist/testing/index.js +12 -0
  311. package/dist/testing/index.js.map +1 -0
  312. package/dist/testing/keys.d.ts +1 -0
  313. package/dist/testing/keys.js +7 -0
  314. package/dist/testing/keys.js.map +1 -0
  315. package/dist/testing/migrate-lock.d.ts +12 -0
  316. package/dist/testing/migrate-lock.js +51 -0
  317. package/dist/testing/migrate-lock.js.map +1 -0
  318. package/dist/testing/migrated-template.d.ts +12 -0
  319. package/dist/testing/migrated-template.js +29 -0
  320. package/dist/testing/migrated-template.js.map +1 -0
  321. package/dist/testing/postgres-container.d.ts +16 -0
  322. package/dist/testing/postgres-container.js +30 -0
  323. package/dist/testing/postgres-container.js.map +1 -0
  324. package/dist/testing/postgres-global-setup.d.ts +15 -0
  325. package/dist/testing/postgres-global-setup.js +20 -0
  326. package/dist/testing/postgres-global-setup.js.map +1 -0
  327. package/dist/testing/prisma-cli.d.ts +5 -0
  328. package/dist/testing/prisma-cli.js +15 -0
  329. package/dist/testing/prisma-cli.js.map +1 -0
  330. package/dist/testing/result.d.ts +5 -0
  331. package/dist/testing/result.js +15 -0
  332. package/dist/testing/result.js.map +1 -0
  333. package/dist/wiring.d.ts +26 -4
  334. package/dist/wiring.js +51 -18
  335. package/dist/wiring.js.map +1 -1
  336. package/package.json +28 -2
  337. package/src/adapters/prisma/migrations/20261018100000_force_scope/migration.sql +8 -0
  338. package/src/adapters/prisma/migrations/20261018110000_forced_delivery/migration.sql +4 -0
  339. package/src/adapters/prisma/migrations/20261018120000_person_and_app_ships/migration.sql +3 -0
  340. package/src/adapters/prisma/migrations/20261018130000_owners/migration.sql +14 -0
  341. package/src/adapters/prisma/migrations/20261018140000_owners_on_reach_refusals/migration.sql +14 -0
  342. package/src/adapters/prisma/migrations/20261018150000_network_verbs/migration.sql +9 -0
  343. package/src/adapters/prisma/migrations/20261018160000_built_in_rules/migration.sql +13 -0
  344. package/src/adapters/prisma/migrations/20261018170000_network_rules_a_list/migration.sql +5 -0
  345. package/src/adapters/prisma/migrations/20261018180000_verb_on_reach_refusals/migration.sql +4 -0
  346. package/src/adapters/prisma/migrations/20261018200000_lease_statements/migration.sql +3 -0
  347. package/src/adapters/prisma/migrations/20261018210000_declare_and_grant_scopes/migration.sql +8 -0
  348. package/src/adapters/prisma/migrations/20261018220000_plugin_scopes/migration.sql +14 -0
  349. package/src/adapters/prisma/migrations/20261018230000_scope_namespaces/migration.sql +20 -0
  350. package/src/adapters/prisma/migrations/20261018240000_trierarch_plugin_crew_run/migration.sql +44 -0
  351. package/src/adapters/prisma/migrations/20261018250000_scope_catalogue/migration.sql +67 -0
  352. package/src/adapters/prisma/migrations/20261019090000_reach_refusal_asked_by/migration.sql +2 -0
  353. package/src/adapters/prisma/migrations/20261019100000_on_behalf_scope/migration.sql +61 -0
  354. package/src/adapters/prisma/migrations/20261019110000_events_fleet_id_occurred_at/migration.sql +2 -0
  355. package/src/adapters/prisma/migrations/20261019130000_plugin_connections/migration.sql +54 -0
  356. package/src/adapters/prisma/migrations/20261019150000_network_plugin_registered_at/migration.sql +23 -0
  357. package/src/adapters/prisma/migrations/20261019160000_lease_waker/migration.sql +4 -0
  358. package/src/adapters/prisma/schema.prisma +81 -7
  359. package/dist/domain/shared/read-no-ship-can-take.d.ts +0 -13
  360. package/dist/domain/shared/read-no-ship-can-take.js +0 -12
  361. package/dist/domain/shared/read-no-ship-can-take.js.map +0 -1
  362. package/dist/domain/shared/read-overdue.d.ts +0 -13
  363. package/dist/domain/shared/read-overdue.js +0 -12
  364. package/dist/domain/shared/read-overdue.js.map +0 -1
@@ -94,8 +94,13 @@ const FLEET_ACTIONS = [
94
94
  'setNetworkRules',
95
95
  'registerNetworkPlugin',
96
96
  'unregisterNetworkPlugin',
97
+ 'networkPlugin',
98
+ 'setBuiltInRule',
97
99
  'declareNetworkRules',
98
100
  'declaredNetworkRules',
101
+ 'scopes',
102
+ 'declareScopes',
103
+ 'grantScopes',
99
104
  ];
100
105
  /** One procedure as a door offers it, under its tool name and REST route. */
101
106
  function callOf(procedure, at) {
@@ -1 +1 @@
1
- {"version":3,"file":"ship-contract.js","sourceRoot":"","sources":["../../../src/adapters/trpc/ship-contract.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ship-contract.js","sourceRoot":"","sources":["../../../src/adapters/trpc/ship-contract.ts"],"names":[],"mappings":"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"}
@@ -14,15 +14,17 @@ export const SHIP_PROTOCOL = [
14
14
  '2. Loop: receive, then ack each delivery. Act only if the ack succeeded. On a pushed ship, where your messages come into your turn by themselves, never receive or ack: they are acknowledged before you see them.',
15
15
  '3. To answer, send to its senderName with inReplyTo set to its messageId.',
16
16
  `4. ${NO_TERMINAL_QUESTIONS} Every other question goes to the sender of your task, never through your harness's interactive question tools: a question waiting there blocks your session.`,
17
- `5. A question for argo is a message of content type ${QUESTION_CONTENT_TYPE}. Its payload is JSON: {"id":"<a new uuid>","title":"...","context":"...","options":[{"key":1,"label":"...","detail":"..."}],"pick":{"option":1,"why":"..."}}, with the options numbered from 1 and pick the option you would choose. argo answers with a reply to it (inReplyTo) of content type ${ANSWER_CONTENT_TYPE}, payload {"questionId":"<its uuid>","option":<a key>,"note":"..."} or a note alone. Until then you can withdraw it: send argo ${WITHDRAWAL_CONTENT_TYPE}, payload {"questionId":"<its uuid>"}. Or replace it: send argo ${REPLACEMENT_CONTENT_TYPE}, payload {"questionId":"<its uuid>","question":<the new question, with a new uuid>}.`,
17
+ `5. A question for your owner goes to your owner's ship, as whoami names it (argo when argo owns your ship), as a message of content type ${QUESTION_CONTENT_TYPE}. Its payload is JSON: {"id":"<a new uuid>","title":"...","context":"...","options":[{"key":1,"label":"...","detail":"..."}],"pick":{"option":1,"why":"..."}}, with the options numbered from 1 and pick the option you would choose. Your owner answers with a reply to it (inReplyTo) of content type ${ANSWER_CONTENT_TYPE}, payload {"questionId":"<its uuid>","option":<a key>,"note":"..."} or a note alone. Until then you can withdraw it: send the ship you asked ${WITHDRAWAL_CONTENT_TYPE}, payload {"questionId":"<its uuid>"}. Or replace it: send the ship you asked ${REPLACEMENT_CONTENT_TYPE}, payload {"questionId":"<its uuid>","question":<the new question, with a new uuid>}.`,
18
18
  `6. A message to argo opens with its headline: one line of at most ${String(ARGO_HEADLINE_MAX_LENGTH)} characters that names ships, never their ids. Then a blank line and the body. Send it as ${MARKDOWN_CONTENT_TYPE} when it holds lists or links.`,
19
19
  '7. Every send states the model you are running now.',
20
20
  '8. If the content is over 64 KB, send where it lives (a path, a URL, a PR link), not the content itself.',
21
21
  `9. A ping (${PING_CONTENT_TYPE}): call pong with its deliveryId instead of ack. Don't act on it and don't reply.`,
22
22
  '10. Report your status when it changes.',
23
- '11. While you wait for an answer, keep receiving. An empty receive only means nothing has arrived yet.',
24
- '12. When your work is done and you expect no answer, end your turn. Anything that arrives later waits for you.',
25
- '13. Deregister only when this session ends for good, never between tasks.',
26
- '14. LEASE_ENDED while passing your crew token: your ship was released. Stop calling the fleet and say so.',
23
+ '11. Once crewed, state what your ship is and offers with setStatement: a summary and capabilities. State it again when that changes; it goes when your lease ends.',
24
+ '12. To find which ships and types you can send to now, and what each offers, call discover.',
25
+ '13. While you wait for an answer, keep receiving. An empty receive only means nothing has arrived yet.',
26
+ '14. When your work is done and you expect no answer, end your turn. Anything that arrives later waits for you.',
27
+ '15. Deregister only when this session ends for good, never between tasks.',
28
+ '16. LEASE_ENDED while passing your crew token: your ship was released. Stop calling the fleet and say so.',
27
29
  ].join('\n');
28
30
  //# sourceMappingURL=ship-protocol.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"ship-protocol.js","sourceRoot":"","sources":["../../../src/adapters/trpc/ship-protocol.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,mBAAmB,EACnB,wBAAwB,EACxB,qBAAqB,EACrB,qBAAqB,EACrB,iBAAiB,EACjB,qBAAqB,EACrB,wBAAwB,EACxB,uBAAuB,GACxB,MAAM,sBAAsB,CAAC;AAE9B;;;;;;;GAOG;AACH,MAAM,CAAC,MAAM,aAAa,GAAG;IAC3B,8DAA8D;IAC9D,EAAE;IACF,sVAAsV;IACtV,oNAAoN;IACpN,2EAA2E;IAC3E,MAAM,qBAAqB,+JAA+J;IAC1L,uDAAuD,qBAAqB,qSAAqS,mBAAmB,kIAAkI,uBAAuB,mEAAmE,wBAAwB,uFAAuF;IAC/sB,qEAAqE,MAAM,CAAC,wBAAwB,CAAC,6FAA6F,qBAAqB,gCAAgC;IACvP,qDAAqD;IACrD,0GAA0G;IAC1G,cAAc,iBAAiB,mFAAmF;IAClH,yCAAyC;IACzC,wGAAwG;IACxG,gHAAgH;IAChH,2EAA2E;IAC3E,2GAA2G;CAC5G,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC"}
1
+ {"version":3,"file":"ship-protocol.js","sourceRoot":"","sources":["../../../src/adapters/trpc/ship-protocol.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,mBAAmB,EACnB,wBAAwB,EACxB,qBAAqB,EACrB,qBAAqB,EACrB,iBAAiB,EACjB,qBAAqB,EACrB,wBAAwB,EACxB,uBAAuB,GACxB,MAAM,sBAAsB,CAAC;AAE9B;;;;;;;GAOG;AACH,MAAM,CAAC,MAAM,aAAa,GAAG;IAC3B,8DAA8D;IAC9D,EAAE;IACF,sVAAsV;IACtV,oNAAoN;IACpN,2EAA2E;IAC3E,MAAM,qBAAqB,+JAA+J;IAC1L,4IAA4I,qBAAqB,2SAA2S,mBAAmB,gJAAgJ,uBAAuB,iFAAiF,wBAAwB,uFAAuF;IACt0B,qEAAqE,MAAM,CAAC,wBAAwB,CAAC,6FAA6F,qBAAqB,gCAAgC;IACvP,qDAAqD;IACrD,0GAA0G;IAC1G,cAAc,iBAAiB,mFAAmF;IAClH,yCAAyC;IACzC,oKAAoK;IACpK,6FAA6F;IAC7F,wGAAwG;IACxG,gHAAgH;IAChH,2EAA2E;IAC3E,2GAA2G;CAC5G,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC"}
@@ -58,6 +58,8 @@ export declare const shipRouter: import("@trpc/server").TRPCBuiltRouter<{
58
58
  fleetId: `flt_${string}`;
59
59
  name: string;
60
60
  type: string;
61
+ ownerShipId: `shp_${string}` | null;
62
+ ownerName: string | null;
61
63
  };
62
64
  meta: import("./trpc.js").ProcedureMeta;
63
65
  }>;
@@ -84,6 +86,7 @@ export declare const shipRouter: import("@trpc/server").TRPCBuiltRouter<{
84
86
  contentType?: string | undefined;
85
87
  model?: string | undefined;
86
88
  inReplyTo?: unknown;
89
+ isForced?: boolean | undefined;
87
90
  };
88
91
  output: {
89
92
  messageId: `msg_${string}`;
@@ -91,8 +94,9 @@ export declare const shipRouter: import("@trpc/server").TRPCBuiltRouter<{
91
94
  meta: import("./trpc.js").ProcedureMeta;
92
95
  }>;
93
96
  /**
94
- * Hands the crew up to `max` deliveries, 1 to 10, one by default: its own
95
- * in flight first, then the oldest pending for its ship or its type. Waits
97
+ * Hands the crew up to `max` deliveries, 1 to 10, one by default: forced
98
+ * ones first (decision 0040), then its own in flight, then the oldest
99
+ * pending for its ship or its type. Waits
96
100
  * about 25 seconds when none is there, then answers with none. A mutation:
97
101
  * every delivery it returns is claimed.
98
102
  */
@@ -120,6 +124,41 @@ export declare const shipRouter: import("@trpc/server").TRPCBuiltRouter<{
120
124
  inReplyTo: `msg_${string}` | null;
121
125
  sentAt: string;
122
126
  attempts: number;
127
+ isForced: boolean;
128
+ }[];
129
+ };
130
+ meta: import("./trpc.js").ProcedureMeta;
131
+ }>;
132
+ /**
133
+ * Receives the reply to one message the crew names, for a crew with many
134
+ * requests open that waits on one of them: as receive does, one delivery
135
+ * at most.
136
+ */
137
+ receiveReply: import("@trpc/server").TRPCMutationProcedure<{
138
+ input: {
139
+ messageId: unknown;
140
+ };
141
+ output: {
142
+ deliveries: {
143
+ deliveryId: `dlv_${string}`;
144
+ messageId: `msg_${string}`;
145
+ senderShipId: `shp_${string}`;
146
+ senderName: string;
147
+ senderType: string;
148
+ recipient: {
149
+ kind: "ship";
150
+ shipId: `shp_${string}`;
151
+ } | {
152
+ kind: "type";
153
+ type: string;
154
+ };
155
+ payload: string;
156
+ contentType: string;
157
+ model: string | null;
158
+ inReplyTo: `msg_${string}` | null;
159
+ sentAt: string;
160
+ attempts: number;
161
+ isForced: boolean;
123
162
  }[];
124
163
  };
125
164
  meta: import("./trpc.js").ProcedureMeta;
@@ -127,13 +166,15 @@ export declare const shipRouter: import("@trpc/server").TRPCBuiltRouter<{
127
166
  /**
128
167
  * The computer side's receive (decision 0040), for the trierarch or the
129
168
  * plugin watcher, never the agent: takes up to `max` deliveries as
130
- * received, counting no attempt, its own in flight first, and makes the
169
+ * received, counting no attempt, forced ones first, then its own in
170
+ * flight, and makes the
131
171
  * lease pushed until it ends. Waits as receive does. A mutation: every
132
172
  * delivery it returns is the crew's.
133
173
  */
134
174
  pushReceive: import("@trpc/server").TRPCMutationProcedure<{
135
175
  input: {
136
176
  max?: number | undefined;
177
+ waker?: "trierarch" | "pluginWatcher" | "personApp" | "gateway" | "adapter" | undefined;
137
178
  } | undefined;
138
179
  output: {
139
180
  deliveries: {
@@ -154,6 +195,7 @@ export declare const shipRouter: import("@trpc/server").TRPCBuiltRouter<{
154
195
  model: string | null;
155
196
  inReplyTo: `msg_${string}` | null;
156
197
  sentAt: string;
198
+ isForced: boolean;
157
199
  attempts: number;
158
200
  state: "received" | "handed";
159
201
  handOverNumber: number | null;
@@ -171,6 +213,7 @@ export declare const shipRouter: import("@trpc/server").TRPCBuiltRouter<{
171
213
  deliveryId: unknown;
172
214
  handOverNumber: number;
173
215
  isOnceMore?: boolean | undefined;
216
+ channel?: string | undefined;
174
217
  };
175
218
  output: {
176
219
  state: "handed" | "acknowledged" | "undeliverable";
@@ -270,6 +313,115 @@ export declare const shipRouter: import("@trpc/server").TRPCBuiltRouter<{
270
313
  };
271
314
  meta: import("./trpc.js").ProcedureMeta;
272
315
  }>;
316
+ /**
317
+ * The crew states what its ship is and offers (decision 0047), whole. No
318
+ * scope beyond being the crew. Its shape is common's, parsed here.
319
+ */
320
+ setStatement: import("@trpc/server").TRPCMutationProcedure<{
321
+ input: {
322
+ summary: string;
323
+ capabilities: {
324
+ name: string;
325
+ title?: string | undefined;
326
+ description?: string | undefined;
327
+ inputSchema?: Record<string, import("zod").JSONType> | undefined;
328
+ outputSchema?: Record<string, import("zod").JSONType> | undefined;
329
+ inputModes?: string[] | undefined;
330
+ outputModes?: string[] | undefined;
331
+ waitMs?: number | undefined;
332
+ deadlineMs?: number | undefined;
333
+ repeatable?: boolean | undefined;
334
+ annotations?: {
335
+ title?: string | undefined;
336
+ readOnlyHint?: boolean | undefined;
337
+ destructiveHint?: boolean | undefined;
338
+ idempotentHint?: boolean | undefined;
339
+ openWorldHint?: boolean | undefined;
340
+ } | undefined;
341
+ }[];
342
+ };
343
+ output: {
344
+ version: number;
345
+ };
346
+ meta: import("./trpc.js").ProcedureMeta;
347
+ }>;
348
+ /**
349
+ * The ships and types the caller may send to now, with each ship's
350
+ * statement (decision 0047). Needs messages:send; records nothing.
351
+ */
352
+ discover: import("@trpc/server").TRPCQueryProcedure<{
353
+ input: void;
354
+ output: {
355
+ ships: {
356
+ id: `shp_${string}`;
357
+ name: string;
358
+ type: string;
359
+ kind: "operator" | "agent" | "viewer" | "person" | "app";
360
+ status: "retired" | "awaitingCrew" | "crewed";
361
+ statement: {
362
+ by: "crew";
363
+ version: number;
364
+ summary: string;
365
+ capabilities: {
366
+ name: string;
367
+ title?: string | undefined;
368
+ description?: string | undefined;
369
+ inputSchema?: Record<string, import("zod").JSONType> | undefined;
370
+ outputSchema?: Record<string, import("zod").JSONType> | undefined;
371
+ inputModes?: string[] | undefined;
372
+ outputModes?: string[] | undefined;
373
+ waitMs?: number | undefined;
374
+ deadlineMs?: number | undefined;
375
+ repeatable?: boolean | undefined;
376
+ annotations?: {
377
+ title?: string | undefined;
378
+ readOnlyHint?: boolean | undefined;
379
+ destructiveHint?: boolean | undefined;
380
+ idempotentHint?: boolean | undefined;
381
+ openWorldHint?: boolean | undefined;
382
+ } | undefined;
383
+ }[];
384
+ } | {
385
+ by: "commission";
386
+ note: string;
387
+ } | null;
388
+ }[];
389
+ types: {
390
+ type: string;
391
+ reachable: number;
392
+ }[];
393
+ };
394
+ meta: import("./trpc.js").ProcedureMeta;
395
+ }>;
396
+ /**
397
+ * Where the delivery of a message the caller sent stands, and since when
398
+ * (interop 3.5). Needs messages:send; its own messages only, and no payload.
399
+ */
400
+ sentMessage: import("@trpc/server").TRPCQueryProcedure<{
401
+ input: {
402
+ messageId: unknown;
403
+ };
404
+ output: {
405
+ messageId: `msg_${string}`;
406
+ sentAt: string;
407
+ recipient: {
408
+ kind: "ship";
409
+ ship: {
410
+ id: `shp_${string}`;
411
+ name: string;
412
+ };
413
+ } | {
414
+ kind: "type";
415
+ type: string;
416
+ };
417
+ delivery: {
418
+ deliveryId: `dlv_${string}`;
419
+ state: "pending" | "received" | "handed" | "acknowledged" | "handled" | "notHandled" | "undeliverable" | "dismissed" | "abandoned";
420
+ since: string;
421
+ };
422
+ };
423
+ meta: import("./trpc.js").ProcedureMeta;
424
+ }>;
273
425
  /**
274
426
  * How many deliveries wait for the crew: what its next receive would hand
275
427
  * it. Claims nothing. With waitSeconds (0 to 25) it waits while none does.
@@ -281,6 +433,7 @@ export declare const shipRouter: import("@trpc/server").TRPCBuiltRouter<{
281
433
  } | undefined;
282
434
  output: {
283
435
  waiting: number;
436
+ forced: number;
284
437
  };
285
438
  meta: import("./trpc.js").ProcedureMeta;
286
439
  }>;
@@ -1,4 +1,4 @@
1
- import { ackInputSchema, ackOutputSchema, deregisterOutputSchema, handedInputSchema, handedOutputSchema, handledInputSchema, handledOutputSchema, inboxInputSchema, inboxOutputSchema, notHandledInputSchema, notHandledOutputSchema, PING_CONTENT_TYPE, pongInputSchema, pongOutputSchema, pushReceiveOutputSchema, reportInputSchema, reportLogOutputSchema, reportOutputSchema, turnInputSchema, turnOutputSchema, receiveInputSchema, receiveOutputSchema, registerInputSchema, registerOutputSchema, sendInputSchema, sendOutputSchema, whoamiOutputSchema, } from '@aeolus-fleet/common';
1
+ import { ackInputSchema, ackOutputSchema, deregisterOutputSchema, handedInputSchema, handedOutputSchema, handledInputSchema, handledOutputSchema, inboxInputSchema, inboxOutputSchema, notHandledInputSchema, notHandledOutputSchema, PING_CONTENT_TYPE, pongInputSchema, pongOutputSchema, pushReceiveInputSchema, pushReceiveOutputSchema, reportInputSchema, reportLogOutputSchema, reportOutputSchema, setStatementInputSchema, setStatementOutputSchema, discoverOutputSchema, sentMessageInputSchema, sentMessageOutputSchema, turnInputSchema, turnOutputSchema, receiveInputSchema, receiveReplyInputSchema, receiveOutputSchema, registerInputSchema, registerOutputSchema, sendInputSchema, sendOutputSchema, whoamiOutputSchema, } from '@aeolus-fleet/common';
2
2
  import { TRPCError } from '@trpc/server';
3
3
  import { authenticatedProcedure, crewProcedure, okOrThrow, publicProcedure, router, scopedCrewProcedure, scopedProcedure, } from './trpc.js';
4
4
  /**
@@ -73,6 +73,8 @@ export const shipRouter = router({
73
73
  'Code that runs no model, such as a script, states its package or name and the version it runs, such as nightly-report@1.4.0.',
74
74
  'idempotencyKey is a new unique string for every message. Reuse one only to retry the same send after an error or a lost answer:',
75
75
  'the retry answers with the original messageId instead of sending twice, and a different send with a used key is refused (CONFLICT).',
76
+ 'isForced: true sends a forced message, one to act on now: its delivery comes before every other in the recipient\'s receive.',
77
+ 'It needs the messages:force scope (FORBIDDEN without it).',
76
78
  ].join(' '),
77
79
  requiredOfCrews: ['model'],
78
80
  })
@@ -80,8 +82,9 @@ export const shipRouter = router({
80
82
  .output(sendOutputSchema)
81
83
  .mutation(async ({ ctx, input }) => okOrThrow(await ctx.useCases.sendMessage(ctx.caller, input))),
82
84
  /**
83
- * Hands the crew up to `max` deliveries, 1 to 10, one by default: its own
84
- * in flight first, then the oldest pending for its ship or its type. Waits
85
+ * Hands the crew up to `max` deliveries, 1 to 10, one by default: forced
86
+ * ones first (decision 0040), then its own in flight, then the oldest
87
+ * pending for its ship or its type. Waits
85
88
  * about 25 seconds when none is there, then answers with none. A mutation:
86
89
  * every delivery it returns is claimed.
87
90
  */
@@ -90,6 +93,7 @@ export const shipRouter = router({
90
93
  description: [
91
94
  'Hands you your next deliveries, up to max (1 to 10, one when left out), each with its message and its sender:',
92
95
  'senderShipId, senderName (the name to answer to) and senderType.',
96
+ 'A forced message, one to act on now, comes before every other.',
93
97
  'With none there it waits about 25 seconds, then answers with none.',
94
98
  'Until you ack it a delivery stays yours: your next receive hands it to you again,',
95
99
  'and after four receives without an ack it goes to the operator as undeliverable.',
@@ -102,10 +106,32 @@ export const shipRouter = router({
102
106
  const { deliveries } = okOrThrow(await ctx.useCases.receiveDeliveries(ctx.crew, { max: input?.max }));
103
107
  return { deliveries: deliveries.map((delivery) => ({ ...delivery, sentAt: delivery.sentAt.toISOString() })) };
104
108
  }),
109
+ /**
110
+ * Receives the reply to one message the crew names, for a crew with many
111
+ * requests open that waits on one of them: as receive does, one delivery
112
+ * at most.
113
+ */
114
+ receiveReply: scopedCrewProcedure('messages:receive')
115
+ .meta({
116
+ description: [
117
+ 'Hands you the reply to one message: the oldest delivery whose message names messageId as its inReplyTo, with its message and its sender, as receive hands one.',
118
+ 'Use it when you sent several requests and wait for the answer to one. Your other deliveries stay where they are.',
119
+ 'With none there it waits about 25 seconds, then answers with none.',
120
+ 'Until you ack it the reply stays yours: the next receiveReply or receive hands it to you again,',
121
+ 'and after four without an ack it goes to the operator as undeliverable.',
122
+ ].join(' '),
123
+ })
124
+ .input(receiveReplyInputSchema)
125
+ .output(receiveOutputSchema)
126
+ .mutation(async ({ ctx, input }) => {
127
+ const { deliveries } = okOrThrow(await ctx.useCases.receiveReply(ctx.crew, input));
128
+ return { deliveries: deliveries.map((delivery) => ({ ...delivery, sentAt: delivery.sentAt.toISOString() })) };
129
+ }),
105
130
  /**
106
131
  * The computer side's receive (decision 0040), for the trierarch or the
107
132
  * plugin watcher, never the agent: takes up to `max` deliveries as
108
- * received, counting no attempt, its own in flight first, and makes the
133
+ * received, counting no attempt, forced ones first, then its own in
134
+ * flight, and makes the
109
135
  * lease pushed until it ends. Waits as receive does. A mutation: every
110
136
  * delivery it returns is the crew's.
111
137
  */
@@ -114,15 +140,16 @@ export const shipRouter = router({
114
140
  description: [
115
141
  'For the trierarch or the plugin watcher, not the agent: takes your next deliveries for the computer side, up to max (1 to 10, one when left out),',
116
142
  'each with its message, its sender, its state and its last hand-over number. A pending one becomes received: yours, with no attempt counted.',
117
- 'Your own received or handed ones come first again, unchanged, so a restart loses nothing. With none there it waits about 25 seconds, then answers with none.',
143
+ 'Forced deliveries come first; then your own received or handed ones again, unchanged, so a restart loses nothing. With none there it waits about 25 seconds, then answers with none.',
118
144
  'From your first pushReceive until your lease ends, the agent\'s plain receive answers nothing.',
145
+ 'Your first pushReceive may state waker, what wakes the ship: trierarch, pluginWatcher, personApp, gateway or adapter; the lease keeps the first one, and the ship\'s page shows it.',
119
146
  'Report each hand-over to the agent with handed.',
120
147
  ].join(' '),
121
148
  })
122
- .input(receiveInputSchema)
149
+ .input(pushReceiveInputSchema)
123
150
  .output(pushReceiveOutputSchema)
124
151
  .mutation(async ({ ctx, input }) => {
125
- const { deliveries } = okOrThrow(await ctx.useCases.pushReceiveDeliveries(ctx.crew, { max: input?.max }));
152
+ const { deliveries } = okOrThrow(await ctx.useCases.pushReceiveDeliveries(ctx.crew, { max: input?.max, ...(input?.waker === undefined ? {} : { waker: input.waker }) }));
126
153
  return { deliveries: deliveries.map((delivery) => ({ ...delivery, sentAt: delivery.sentAt.toISOString() })) };
127
154
  }),
128
155
  /**
@@ -138,6 +165,7 @@ export const shipRouter = router({
138
165
  'It answers the state: handed, acknowledged when the agent already confirmed it, or undeliverable at the fifth attempt, when nothing may be handed.',
139
166
  'When a confirmed (acknowledged) message\'s turn died, hand it once more with isOnceMore: true and your next number:',
140
167
  'it stays acknowledged and counts no attempt. A message is handed once more only once.',
168
+ 'channel names how you handed it over, such as tmux, watcher, email or tools/call (1 to 32 of a-z, 0-9, /, . and -); the delivery\'s history shows it.',
141
169
  ].join(' '),
142
170
  })
143
171
  .input(handedInputSchema)
@@ -169,7 +197,8 @@ export const shipRouter = router({
169
197
  description: [
170
198
  'For the plugin hooks or the trierarch, not the agent: says the turn a confirmed message was handed once more to died too, so it is not handled.',
171
199
  'Pass its deliveryId (dlv_...). The operator sees it in Needs attention, to resend or dismiss. Again is fine.',
172
- 'A delivery never handed once more is refused.',
200
+ 'A delivery never handed once more is refused, except one handed and not confirmed that you judged unsafe to hand again,',
201
+ 'such as an outside call that may have run: report it with the reason, which is then required.',
173
202
  ].join(' '),
174
203
  })
175
204
  .input(notHandledInputSchema)
@@ -269,6 +298,58 @@ export const shipRouter = router({
269
298
  const { report, previousCrew } = okOrThrow(await ctx.useCases.reportLog(ctx.crew));
270
299
  return { report: reportOutputOf(report), previousCrew: reportOutputOf(previousCrew) };
271
300
  }),
301
+ /**
302
+ * The crew states what its ship is and offers (decision 0047), whole. No
303
+ * scope beyond being the crew. Its shape is common's, parsed here.
304
+ */
305
+ setStatement: crewProcedure
306
+ .meta({
307
+ description: [
308
+ 'States what your ship is and offers, for the ships that can send to it: a summary (at most 1000 characters) and capabilities,',
309
+ "each with MCP's tool fields name (1 to 128 letters, digits, _, - or .), title, description, inputSchema and outputSchema (JSON Schemas),",
310
+ "and A2A's inputModes and outputModes: the media types to send it and that come back, the first the one to use.",
311
+ "For calls through the gateway each may also state waitMs (0 to 120000, how long a call may be held for the reply), deadlineMs (up to 7 days, when a call fails),",
312
+ "repeatable (whether a call that died unconfirmed may be handed again) and MCP's tool annotations; core acts on none of them.",
313
+ 'Set whole, at most 64 KB as JSON; the same statement again changes nothing. It is kept with your lease and goes when it ends,',
314
+ 'so state it once crewed and again when it changes. Answers its version (decision 0047).',
315
+ ].join(' '),
316
+ })
317
+ .input(setStatementInputSchema)
318
+ .output(setStatementOutputSchema)
319
+ .mutation(async ({ ctx, input }) => okOrThrow(await ctx.useCases.setStatement(ctx.crew, input))),
320
+ /**
321
+ * The ships and types the caller may send to now, with each ship's
322
+ * statement (decision 0047). Needs messages:send; records nothing.
323
+ */
324
+ discover: scopedProcedure('messages:send')
325
+ .meta({
326
+ description: [
327
+ 'Needs messages:send. Answers the ships you may send to now, as a send would be checked, each with its id, name, type, kind, status and statement,',
328
+ "and each type with how many of its ships you reach. A statement is its crew's (by crew, with its version) while one is stated,",
329
+ 'else the note it was commissioned with (by commission), else null. You, the viewer and retired ships are left out.',
330
+ 'It answers ships, never rules, and records nothing (decision 0047).',
331
+ ].join(' '),
332
+ })
333
+ .output(discoverOutputSchema)
334
+ .query(async ({ ctx }) => okOrThrow(await ctx.useCases.discover(ctx.caller))),
335
+ /**
336
+ * Where the delivery of a message the caller sent stands, and since when
337
+ * (interop 3.5). Needs messages:send; its own messages only, and no payload.
338
+ */
339
+ sentMessage: scopedProcedure('messages:send')
340
+ .meta({
341
+ description: [
342
+ 'Needs messages:send. For a message you sent, by its messageId: where its delivery stands (its state: pending, received, handed, acknowledged,',
343
+ 'handled, notHandled, undeliverable, dismissed or abandoned) and since when, with its recipient by name or type. No payload comes back.',
344
+ 'A message another ship sent, or one the fleet does not have, is refused as MESSAGE_NOT_FOUND.',
345
+ ].join(' '),
346
+ })
347
+ .input(sentMessageInputSchema)
348
+ .output(sentMessageOutputSchema)
349
+ .query(async ({ ctx, input }) => {
350
+ const sent = okOrThrow(await ctx.useCases.sentMessage(ctx.caller, input));
351
+ return { ...sent, sentAt: sent.sentAt.toISOString(), delivery: { ...sent.delivery, since: sent.delivery.since.toISOString() } };
352
+ }),
272
353
  /**
273
354
  * How many deliveries wait for the crew: what its next receive would hand
274
355
  * it. Claims nothing. With waitSeconds (0 to 25) it waits while none does.
@@ -1 +1 @@
1
- {"version":3,"file":"ship.js","sourceRoot":"","sources":["../../../src/adapters/trpc/ship.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,cAAc,EACd,eAAe,EACf,sBAAsB,EACtB,iBAAiB,EACjB,kBAAkB,EAClB,kBAAkB,EAClB,mBAAmB,EACnB,gBAAgB,EAChB,iBAAiB,EACjB,qBAAqB,EACrB,sBAAsB,EACtB,iBAAiB,EACjB,eAAe,EACf,gBAAgB,EAChB,uBAAuB,EACvB,iBAAiB,EACjB,qBAAqB,EACrB,kBAAkB,EAClB,eAAe,EACf,gBAAgB,EAChB,kBAAkB,EAClB,mBAAmB,EACnB,mBAAmB,EACnB,oBAAoB,EACpB,eAAe,EACf,gBAAgB,EAChB,kBAAkB,GAEnB,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAIzC,OAAO,EACL,sBAAsB,EACtB,aAAa,EACb,SAAS,EACT,eAAe,EACf,MAAM,EACN,mBAAmB,EACnB,eAAe,GAChB,MAAM,WAAW,CAAC;AAEnB;;;;;;;;;;;GAWG;AACH,MAAM,CAAC,MAAM,UAAU,GAAG,MAAM,CAAC;IAC/B;;;;;;OAMG;IACH,QAAQ,EAAE,eAAe;SACtB,IAAI,CAAC;QACJ,WAAW,EAAE;YACX,+FAA+F;YAC/F,sHAAsH;YACtH,6FAA6F;YAC7F,sDAAsD;YACtD,gHAAgH;SACjH,CAAC,IAAI,CAAC,GAAG,CAAC;KACZ,CAAC;SACD,GAAG,CAAC,CAAC,EAAE,GAAG,EAAE,IAAI,EAAE,EAAE,EAAE;QACrB,IAAI,CAAC,GAAG,CAAC,gBAAgB,CAAC,OAAO,CAAC,GAAG,CAAC,SAAS,CAAC,EAAE,CAAC;YACjD,MAAM,IAAI,SAAS,CAAC,EAAE,IAAI,EAAE,mBAAmB,EAAE,OAAO,EAAE,mDAAmD,EAAE,CAAC,CAAC;QACnH,CAAC;QACD,OAAO,IAAI,EAAE,CAAC;IAChB,CAAC,CAAC;SACD,KAAK,CAAC,mBAAmB,CAAC;SAC1B,MAAM,CAAC,oBAAoB,CAAC;SAC5B,QAAQ,CAAC,KAAK,EAAE,EAAE,GAAG,EAAE,KAAK,EAAE,EAAE,EAAE;QACjC,MAAM,OAAO,GAAG,MAAM,GAAG,CAAC,QAAQ,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;QACpD,IAAI,CAAC,OAAO,CAAC,IAAI,IAAI,OAAO,CAAC,KAAK,CAAC,IAAI,KAAK,yBAAyB,EAAE,CAAC;YACtE,GAAG,CAAC,gBAAgB,CAAC,KAAK,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;QAC5C,CAAC;QACD,OAAO,SAAS,CAAC,OAAO,CAAC,CAAC;IAC5B,CAAC,CAAC;IAEJ,oFAAoF;IACpF,MAAM,EAAE,sBAAsB;SAC3B,IAAI,CAAC;QACJ,WAAW,EACT,mHAAmH;KACtH,CAAC;SACD,MAAM,CAAC,kBAAkB,CAAC;SAC1B,KAAK,CAAC,KAAK,EAAE,EAAE,GAAG,EAAE,EAAE,EAAE,CAAC,SAAS,CAAC,MAAM,GAAG,CAAC,QAAQ,CAAC,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC;IAE7E;;;;;OAKG;IACH,IAAI,EAAE,eAAe,CAAC,eAAe,CAAC;SACnC,IAAI,CAAC;QACJ,WAAW,EAAE;YACX,gGAAgG;YAChG,0EAA0E;YAC1E,oIAAoI;YACpI,8DAA8D;YAC9D,4GAA4G;YAC5G,0GAA0G;YAC1G,qDAAqD;YACrD,gNAAgN;YAChN,8HAA8H;YAC9H,iIAAiI;YACjI,qIAAqI;SACtI,CAAC,IAAI,CAAC,GAAG,CAAC;QACX,eAAe,EAAE,CAAC,OAAO,CAAC;KAC3B,CAAC;SACD,KAAK,CAAC,eAAe,CAAC;SACtB,MAAM,CAAC,gBAAgB,CAAC;SACxB,QAAQ,CAAC,KAAK,EAAE,EAAE,GAAG,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC,SAAS,CAAC,MAAM,GAAG,CAAC,QAAQ,CAAC,WAAW,CAAC,GAAG,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC,CAAC;IAEnG;;;;;OAKG;IACH,OAAO,EAAE,mBAAmB,CAAC,kBAAkB,CAAC;SAC7C,IAAI,CAAC;QACJ,WAAW,EAAE;YACX,+GAA+G;YAC/G,kEAAkE;YAClE,oEAAoE;YACpE,mFAAmF;YACnF,kFAAkF;YAClF,qEAAqE;SACtE,CAAC,IAAI,CAAC,GAAG,CAAC;KACZ,CAAC;SACD,KAAK,CAAC,kBAAkB,CAAC;SACzB,MAAM,CAAC,mBAAmB,CAAC;SAC3B,QAAQ,CAAC,KAAK,EAAE,EAAE,GAAG,EAAE,KAAK,EAAE,EAAE,EAAE;QACjC,MAAM,EAAE,UAAU,EAAE,GAAG,SAAS,CAAC,MAAM,GAAG,CAAC,QAAQ,CAAC,iBAAiB,CAAC,GAAG,CAAC,IAAI,EAAE,EAAE,GAAG,EAAE,KAAK,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC;QACtG,OAAO,EAAE,UAAU,EAAE,UAAU,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC,EAAE,GAAG,QAAQ,EAAE,MAAM,EAAE,QAAQ,CAAC,MAAM,CAAC,WAAW,EAAE,EAAE,CAAC,CAAC,EAAE,CAAC;IAChH,CAAC,CAAC;IAEJ;;;;;;OAMG;IACH,WAAW,EAAE,mBAAmB,CAAC,kBAAkB,CAAC;SACjD,IAAI,CAAC;QACJ,WAAW,EAAE;YACX,mJAAmJ;YACnJ,6IAA6I;YAC7I,8JAA8J;YAC9J,gGAAgG;YAChG,iDAAiD;SAClD,CAAC,IAAI,CAAC,GAAG,CAAC;KACZ,CAAC;SACD,KAAK,CAAC,kBAAkB,CAAC;SACzB,MAAM,CAAC,uBAAuB,CAAC;SAC/B,QAAQ,CAAC,KAAK,EAAE,EAAE,GAAG,EAAE,KAAK,EAAE,EAAE,EAAE;QACjC,MAAM,EAAE,UAAU,EAAE,GAAG,SAAS,CAAC,MAAM,GAAG,CAAC,QAAQ,CAAC,qBAAqB,CAAC,GAAG,CAAC,IAAI,EAAE,EAAE,GAAG,EAAE,KAAK,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC;QAC1G,OAAO,EAAE,UAAU,EAAE,UAAU,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC,EAAE,GAAG,QAAQ,EAAE,MAAM,EAAE,QAAQ,CAAC,MAAM,CAAC,WAAW,EAAE,EAAE,CAAC,CAAC,EAAE,CAAC;IAChH,CAAC,CAAC;IAEJ;;;;OAIG;IACH,MAAM,EAAE,mBAAmB,CAAC,kBAAkB,CAAC;SAC5C,IAAI,CAAC;QACJ,WAAW,EAAE;YACX,kKAAkK;YAClK,4JAA4J;YAC5J,oJAAoJ;YACpJ,qHAAqH;YACrH,uFAAuF;SACxF,CAAC,IAAI,CAAC,GAAG,CAAC;KACZ,CAAC;SACD,KAAK,CAAC,iBAAiB,CAAC;SACxB,MAAM,CAAC,kBAAkB,CAAC;SAC1B,QAAQ,CAAC,KAAK,EAAE,EAAE,GAAG,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC,SAAS,CAAC,MAAM,GAAG,CAAC,QAAQ,CAAC,gBAAgB,CAAC,GAAG,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC,CAAC;IAEtG;;;OAGG;IACH,OAAO,EAAE,mBAAmB,CAAC,kBAAkB,CAAC;SAC7C,IAAI,CAAC;QACJ,WAAW,EAAE;YACX,2IAA2I;YAC3I,0IAA0I;SAC3I,CAAC,IAAI,CAAC,GAAG,CAAC;KACZ,CAAC;SACD,KAAK,CAAC,kBAAkB,CAAC;SACzB,MAAM,CAAC,mBAAmB,CAAC;SAC3B,QAAQ,CAAC,KAAK,EAAE,EAAE,GAAG,EAAE,KAAK,EAAE,EAAE,EAAE;QACjC,SAAS,CAAC,MAAM,GAAG,CAAC,QAAQ,CAAC,aAAa,CAAC,GAAG,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC,CAAC;QAC7D,OAAO,EAAE,CAAC;IACZ,CAAC,CAAC;IAEJ;;;OAGG;IACH,UAAU,EAAE,mBAAmB,CAAC,kBAAkB,CAAC;SAChD,IAAI,CAAC;QACJ,WAAW,EAAE;YACX,iJAAiJ;YACjJ,8GAA8G;YAC9G,+CAA+C;SAChD,CAAC,IAAI,CAAC,GAAG,CAAC;KACZ,CAAC;SACD,KAAK,CAAC,qBAAqB,CAAC;SAC5B,MAAM,CAAC,sBAAsB,CAAC;SAC9B,QAAQ,CAAC,KAAK,EAAE,EAAE,GAAG,EAAE,KAAK,EAAE,EAAE,EAAE;QACjC,SAAS,CAAC,MAAM,GAAG,CAAC,QAAQ,CAAC,gBAAgB,CAAC,GAAG,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC,CAAC;QAChE,OAAO,EAAE,CAAC;IACZ,CAAC,CAAC;IAEJ,2FAA2F;IAC3F,GAAG,EAAE,mBAAmB,CAAC,kBAAkB,CAAC;SACzC,IAAI,CAAC;QACJ,WAAW,EAAE;YACX,iHAAiH;YACjH,mFAAmF;YACnF,gDAAgD;SACjD,CAAC,IAAI,CAAC,GAAG,CAAC;KACZ,CAAC;SACD,KAAK,CAAC,cAAc,CAAC;SACrB,MAAM,CAAC,eAAe,CAAC;SACvB,QAAQ,CAAC,KAAK,EAAE,EAAE,GAAG,EAAE,KAAK,EAAE,EAAE,EAAE;QACjC,SAAS,CAAC,MAAM,GAAG,CAAC,QAAQ,CAAC,mBAAmB,CAAC,GAAG,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC,CAAC;QACnE,OAAO,EAAE,CAAC;IACZ,CAAC,CAAC;IAEJ;;;OAGG;IACH,IAAI,EAAE,mBAAmB,CAAC,kBAAkB,CAAC;SAC1C,IAAI,CAAC;QACJ,WAAW,EAAE;YACX,mDAAmD,iBAAiB,GAAG;YACvE,mIAAmI;YACnI,sGAAsG;SACvG,CAAC,IAAI,CAAC,GAAG,CAAC;KACZ,CAAC;SACD,KAAK,CAAC,eAAe,CAAC;SACtB,MAAM,CAAC,gBAAgB,CAAC;SACxB,QAAQ,CAAC,KAAK,EAAE,EAAE,GAAG,EAAE,KAAK,EAAE,EAAE,EAAE;QACjC,SAAS,CAAC,MAAM,GAAG,CAAC,QAAQ,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC,CAAC;QAC1D,OAAO,EAAE,CAAC;IACZ,CAAC,CAAC;IAEJ;;;;OAIG;IACH,MAAM,EAAE,aAAa;SAClB,IAAI,CAAC;QACJ,WAAW,EAAE;YACX,gIAAgI;YAChI,4EAA4E;YAC5E,6GAA6G;YAC7G,uHAAuH;YACvH,8EAA8E;YAC9E,4GAA4G;SAC7G,CAAC,IAAI,CAAC,GAAG,CAAC;QACX,OAAO,EAAE,EAAE,KAAK,EAAE,SAAS,EAAE,IAAI,EAAE,iBAAiB,EAAE;KACvD,CAAC;SACD,KAAK,CAAC,iBAAiB,CAAC;SACxB,MAAM,CAAC,kBAAkB,CAAC;SAC1B,QAAQ,CAAC,KAAK,EAAE,EAAE,GAAG,EAAE,KAAK,EAAE,EAAE,EAAE;QACjC,SAAS,CAAC,MAAM,GAAG,CAAC,QAAQ,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC,CAAC;QACtD,OAAO,EAAE,CAAC;IACZ,CAAC,CAAC;IAEJ;;;OAGG;IACH,IAAI,EAAE,aAAa;SAChB,IAAI,CAAC;QACJ,WAAW,EAAE;YACX,iIAAiI;YACjI,kJAAkJ;YAClJ,sCAAsC;SACvC,CAAC,IAAI,CAAC,GAAG,CAAC;QACX,OAAO,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,EAAE,EAAE,0BAA0B,EAAE;KAC1D,CAAC;SACD,KAAK,CAAC,eAAe,CAAC;SACtB,MAAM,CAAC,gBAAgB,CAAC;SACxB,QAAQ,CAAC,KAAK,EAAE,EAAE,GAAG,EAAE,KAAK,EAAE,EAAE,EAAE;QACjC,SAAS,CAAC,MAAM,GAAG,CAAC,QAAQ,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,EAAE,EAAE,IAAI,EAAE,KAAK,CAAC,IAAI,EAAE,EAAE,EAAE,IAAI,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;QACjG,OAAO,EAAE,CAAC;IACZ,CAAC,CAAC;IAEJ;;;OAGG;IACH,SAAS,EAAE,aAAa;SACrB,IAAI,CAAC;QACJ,WAAW,EAAE;YACX,kIAAkI;YAClI,mFAAmF;SACpF,CAAC,IAAI,CAAC,GAAG,CAAC;KACZ,CAAC;SACD,MAAM,CAAC,qBAAqB,CAAC;SAC7B,KAAK,CAAC,KAAK,EAAE,EAAE,GAAG,EAAE,EAAE,EAAE;QACvB,MAAM,EAAE,MAAM,EAAE,YAAY,EAAE,GAAG,SAAS,CAAC,MAAM,GAAG,CAAC,QAAQ,CAAC,SAAS,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC;QACnF,OAAO,EAAE,MAAM,EAAE,cAAc,CAAC,MAAM,CAAC,EAAE,YAAY,EAAE,cAAc,CAAC,YAAY,CAAC,EAAE,CAAC;IACxF,CAAC,CAAC;IAEJ;;;;OAIG;IACH,KAAK,EAAE,mBAAmB,CAAC,kBAAkB,CAAC;SAC3C,IAAI,CAAC;QACJ,WAAW,EAAE;YACX,2HAA2H;YAC3H,iDAAiD;YACjD,0FAA0F;SAC3F,CAAC,IAAI,CAAC,GAAG,CAAC;KACZ,CAAC;SACD,KAAK,CAAC,gBAAgB,CAAC;SACvB,MAAM,CAAC,iBAAiB,CAAC;SACzB,QAAQ,CAAC,KAAK,EAAE,EAAE,GAAG,EAAE,KAAK,EAAE,EAAE,EAAE,CACjC,SAAS,CAAC,MAAM,GAAG,CAAC,QAAQ,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,EAAE,EAAE,WAAW,EAAE,KAAK,EAAE,WAAW,EAAE,CAAC,CAAC,CACxF;IAEH;;;;OAIG;IACH,UAAU,EAAE,aAAa;SACtB,IAAI,CAAC;QACJ,WAAW,EAAE;YACX,kFAAkF;YAClF,uFAAuF;YACvF,wFAAwF;SACzF,CAAC,IAAI,CAAC,GAAG,CAAC;KACZ,CAAC;SACD,MAAM,CAAC,sBAAsB,CAAC;SAC9B,QAAQ,CAAC,KAAK,EAAE,EAAE,GAAG,EAAE,EAAE,EAAE;QAC1B,SAAS,CAAC,MAAM,GAAG,CAAC,QAAQ,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC;QACnD,OAAO,EAAE,CAAC;IACZ,CAAC,CAAC;CACL,CAAC,CAAC;AAEH,iEAAiE;AACjE,SAAS,cAAc,CAAC,MAAyB;IAC/C,OAAO,MAAM,IAAI,EAAE,GAAG,MAAM,EAAE,UAAU,EAAE,MAAM,CAAC,UAAU,CAAC,WAAW,EAAE,EAAE,CAAC;AAC9E,CAAC"}
1
+ {"version":3,"file":"ship.js","sourceRoot":"","sources":["../../../src/adapters/trpc/ship.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- import type { Scope } from '@aeolus-fleet/common';
1
+ import { type Scope } from '@aeolus-fleet/common';
2
2
  import { type Caller, type Crew } from '../../domain/shared/caller.js';
3
3
  import type { DomainError } from '../../domain/shared/errors.js';
4
4
  import type { Result } from '../../domain/shared/result.js';
@@ -98,15 +98,19 @@ export declare const consoleProcedure: import("@trpc/server").TRPCProcedureBuild
98
98
  */
99
99
  export declare function refuseIfSignedInElsewhere(ctx: Context, sessionToken: string): Promise<void>;
100
100
  /**
101
- * Refuses a live subscription whose caller no longer holds: its console
102
- * session ended, or its crew's lease did. A subscription outlives the call
103
- * that opened it, so it asks again each time it has news.
101
+ * The caller of a live subscription as it stands now, read from the server
102
+ * again: refused once its console session or its crew's lease ended, or once
103
+ * it lost the scope the subscription needs; a plugin reading on behalf of a
104
+ * ship reads as that ship again, so a revoked fleet:on-behalf ends it too
105
+ * (decision 0046). A subscription outlives the call that opened it, so it
106
+ * asks again each time it has news.
104
107
  */
105
- export declare function checkCallerStillHolds(ctx: Context): Promise<void>;
108
+ export declare function callerStillHolding(ctx: Context, scope: Scope): Promise<Caller>;
106
109
  /**
107
110
  * A procedure for any caller, whatever its scopes: the base of every scoped
108
111
  * procedure, and `whoami`, which tells a caller about itself. The caller comes
109
- * from the server, never from the request.
112
+ * from the server, never from the request. Only a fleet:read read takes the
113
+ * `Aeolus-On-Behalf-Of` header (decision 0034); any other call refuses it.
110
114
  */
111
115
  export declare const authenticatedProcedure: import("@trpc/server").TRPCProcedureBuilder<Context, ProcedureMeta, {
112
116
  caller: Caller;
@@ -118,8 +122,8 @@ export declare const authenticatedProcedure: import("@trpc/server").TRPCProcedur
118
122
  * so it is refused here.
119
123
  */
120
124
  export declare const crewProcedure: import("@trpc/server").TRPCProcedureBuilder<Context, ProcedureMeta, {
121
- crew: Crew;
122
125
  caller: Crew;
126
+ crew: Crew;
123
127
  }, import("@trpc/server").TRPCUnsetMarker, import("@trpc/server").TRPCUnsetMarker, import("@trpc/server").TRPCUnsetMarker, import("@trpc/server").TRPCUnsetMarker, false>;
124
128
  /**
125
129
  * A crew procedure that also needs the given scope: receiving and
@@ -127,8 +131,8 @@ export declare const crewProcedure: import("@trpc/server").TRPCProcedureBuilder<
127
131
  * comes with its own procedures.
128
132
  */
129
133
  export declare function scopedCrewProcedure(scope: Scope): import("@trpc/server").TRPCProcedureBuilder<Context, ProcedureMeta, {
130
- crew: Crew;
131
134
  caller: Crew;
135
+ crew: Crew;
132
136
  }, import("@trpc/server").TRPCUnsetMarker, import("@trpc/server").TRPCUnsetMarker, import("@trpc/server").TRPCUnsetMarker, import("@trpc/server").TRPCUnsetMarker, false>;
133
137
  /**
134
138
  * A procedure that needs the given scope. The caller and its scopes come from
@@ -151,7 +155,7 @@ export declare function anyScopeProcedure(...scopes: [Scope, Scope, ...Scope[]])
151
155
  * crews argo under the lease it holds; the use case refuses any ship but argo.
152
156
  */
153
157
  export declare function scopedCrewCallerProcedure(...scopes: Scope[]): import("@trpc/server").TRPCProcedureBuilder<Context, ProcedureMeta, {
154
- crew: Crew;
155
158
  caller: Caller;
159
+ crew: Crew;
156
160
  }, import("@trpc/server").TRPCUnsetMarker, import("@trpc/server").TRPCUnsetMarker, import("@trpc/server").TRPCUnsetMarker, import("@trpc/server").TRPCUnsetMarker, false>;
157
161
  export {};