@adonis-agora/durable 1.0.0-rc.2 → 1.0.0-rc.21

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 (398) hide show
  1. package/CHANGELOG.md +204 -0
  2. package/dist/assets/spa/assets/index-BgoNV3TR.css +1 -0
  3. package/dist/assets/spa/assets/index-DzXygyDm.js +57 -0
  4. package/dist/assets/spa/assets/index-DzXygyDm.js.map +1 -0
  5. package/dist/assets/spa/assets/jetbrains-mono-latin-400-normal-6-qcROiO.woff +0 -0
  6. package/dist/assets/spa/assets/jetbrains-mono-latin-400-normal-V6pRDFza.woff2 +0 -0
  7. package/dist/assets/spa/assets/jetbrains-mono-latin-500-normal-BWZEU5yA.woff2 +0 -0
  8. package/dist/assets/spa/assets/jetbrains-mono-latin-500-normal-CJOVTJB7.woff +0 -0
  9. package/dist/assets/spa/assets/jetbrains-mono-latin-600-normal-BfsvjouI.woff +0 -0
  10. package/dist/assets/spa/assets/jetbrains-mono-latin-600-normal-C8RAYTDA.woff2 +0 -0
  11. package/dist/assets/spa/assets/sora-latin-400-normal-CRt88UEn.woff2 +0 -0
  12. package/dist/assets/spa/assets/sora-latin-400-normal-OW7qkl5a.woff +0 -0
  13. package/dist/assets/spa/assets/sora-latin-500-normal-01eiPEn0.woff2 +0 -0
  14. package/dist/assets/spa/assets/sora-latin-500-normal-w58xtEt9.woff +0 -0
  15. package/dist/assets/spa/assets/sora-latin-600-normal-1_7fyUAY.woff +0 -0
  16. package/dist/assets/spa/assets/sora-latin-600-normal-Cdg4DaK0.woff2 +0 -0
  17. package/dist/assets/spa/assets/sora-latin-700-normal-9waGdLWo.woff2 +0 -0
  18. package/dist/assets/spa/assets/sora-latin-700-normal-BKPfQAnC.woff +0 -0
  19. package/dist/assets/spa/index.html +2 -8
  20. package/dist/commands/agora_doctor.d.ts +23 -0
  21. package/dist/commands/agora_doctor.d.ts.map +1 -0
  22. package/dist/commands/agora_doctor.js +110 -0
  23. package/dist/commands/agora_doctor.js.map +1 -0
  24. package/dist/commands/durable_doctor.d.ts +8 -0
  25. package/dist/commands/durable_doctor.d.ts.map +1 -0
  26. package/dist/commands/durable_doctor.js +8 -0
  27. package/dist/commands/durable_doctor.js.map +1 -0
  28. package/dist/commands/durable_worker.d.ts +3 -3
  29. package/dist/commands/durable_worker.js +7 -7
  30. package/dist/commands/durable_worker.js.map +1 -1
  31. package/dist/commands/health.d.ts +12 -0
  32. package/dist/commands/health.d.ts.map +1 -0
  33. package/dist/commands/health.js +34 -0
  34. package/dist/commands/health.js.map +1 -0
  35. package/dist/commands/lifecycle_republish.d.ts +8 -9
  36. package/dist/commands/lifecycle_republish.d.ts.map +1 -1
  37. package/dist/commands/lifecycle_republish.js +29 -16
  38. package/dist/commands/lifecycle_republish.js.map +1 -1
  39. package/dist/commands/main.d.ts +25 -5
  40. package/dist/commands/main.d.ts.map +1 -1
  41. package/dist/commands/main.js +54 -7
  42. package/dist/commands/main.js.map +1 -1
  43. package/dist/commands/runs.d.ts +9 -16
  44. package/dist/commands/runs.d.ts.map +1 -1
  45. package/dist/commands/runs.js +60 -47
  46. package/dist/commands/runs.js.map +1 -1
  47. package/dist/commands/runs_bulk.d.ts +17 -0
  48. package/dist/commands/runs_bulk.d.ts.map +1 -0
  49. package/dist/commands/runs_bulk.js +76 -0
  50. package/dist/commands/runs_bulk.js.map +1 -0
  51. package/dist/commands/runs_cancel.d.ts +15 -0
  52. package/dist/commands/runs_cancel.d.ts.map +1 -0
  53. package/dist/commands/runs_cancel.js +39 -0
  54. package/dist/commands/runs_cancel.js.map +1 -0
  55. package/dist/commands/runs_continue.d.ts +12 -0
  56. package/dist/commands/runs_continue.d.ts.map +1 -0
  57. package/dist/commands/runs_continue.js +28 -0
  58. package/dist/commands/runs_continue.js.map +1 -0
  59. package/dist/commands/runs_event.d.ts +13 -0
  60. package/dist/commands/runs_event.d.ts.map +1 -0
  61. package/dist/commands/runs_event.js +28 -0
  62. package/dist/commands/runs_event.js.map +1 -0
  63. package/dist/commands/runs_fan.d.ts +16 -0
  64. package/dist/commands/runs_fan.d.ts.map +1 -0
  65. package/dist/commands/runs_fan.js +58 -0
  66. package/dist/commands/runs_fan.js.map +1 -0
  67. package/dist/commands/runs_redispatch.d.ts +14 -0
  68. package/dist/commands/runs_redispatch.d.ts.map +1 -0
  69. package/dist/commands/runs_redispatch.js +35 -0
  70. package/dist/commands/runs_redispatch.js.map +1 -0
  71. package/dist/commands/runs_replay.d.ts +14 -0
  72. package/dist/commands/runs_replay.d.ts.map +1 -0
  73. package/dist/commands/runs_replay.js +38 -0
  74. package/dist/commands/runs_replay.js.map +1 -0
  75. package/dist/commands/runs_retry.d.ts +13 -0
  76. package/dist/commands/runs_retry.d.ts.map +1 -0
  77. package/dist/commands/runs_retry.js +29 -0
  78. package/dist/commands/runs_retry.js.map +1 -0
  79. package/dist/commands/runs_show.d.ts +14 -0
  80. package/dist/commands/runs_show.d.ts.map +1 -0
  81. package/dist/commands/runs_show.js +96 -0
  82. package/dist/commands/runs_show.js.map +1 -0
  83. package/dist/commands/runs_signal.d.ts +17 -0
  84. package/dist/commands/runs_signal.d.ts.map +1 -0
  85. package/dist/commands/runs_signal.js +49 -0
  86. package/dist/commands/runs_signal.js.map +1 -0
  87. package/dist/commands/runs_update.d.ts +15 -0
  88. package/dist/commands/runs_update.d.ts.map +1 -0
  89. package/dist/commands/runs_update.js +39 -0
  90. package/dist/commands/runs_update.js.map +1 -0
  91. package/dist/commands/runs_values.d.ts +15 -0
  92. package/dist/commands/runs_values.d.ts.map +1 -0
  93. package/dist/commands/runs_values.js +45 -0
  94. package/dist/commands/runs_values.js.map +1 -0
  95. package/dist/commands/schedules.d.ts +18 -0
  96. package/dist/commands/schedules.d.ts.map +1 -0
  97. package/dist/commands/schedules.js +70 -0
  98. package/dist/commands/schedules.js.map +1 -0
  99. package/dist/commands/schedules_pause.d.ts +16 -0
  100. package/dist/commands/schedules_pause.d.ts.map +1 -0
  101. package/dist/commands/schedules_pause.js +40 -0
  102. package/dist/commands/schedules_pause.js.map +1 -0
  103. package/dist/commands/schedules_resume.d.ts +8 -0
  104. package/dist/commands/schedules_resume.d.ts.map +1 -0
  105. package/dist/commands/schedules_resume.js +8 -0
  106. package/dist/commands/schedules_resume.js.map +1 -0
  107. package/dist/commands/schedules_trigger.d.ts +13 -0
  108. package/dist/commands/schedules_trigger.d.ts.map +1 -0
  109. package/dist/commands/schedules_trigger.js +32 -0
  110. package/dist/commands/schedules_trigger.js.map +1 -0
  111. package/dist/commands/tasks_complete.d.ts +15 -0
  112. package/dist/commands/tasks_complete.d.ts.map +1 -0
  113. package/dist/commands/tasks_complete.js +41 -0
  114. package/dist/commands/tasks_complete.js.map +1 -0
  115. package/dist/commands/tasks_fail.d.ts +16 -0
  116. package/dist/commands/tasks_fail.d.ts.map +1 -0
  117. package/dist/commands/tasks_fail.js +47 -0
  118. package/dist/commands/tasks_fail.js.map +1 -0
  119. package/dist/commands/workers.d.ts +11 -0
  120. package/dist/commands/workers.d.ts.map +1 -0
  121. package/dist/commands/workers.js +35 -0
  122. package/dist/commands/workers.js.map +1 -0
  123. package/dist/commands/workflows_lifecycle.d.ts +12 -0
  124. package/dist/commands/workflows_lifecycle.d.ts.map +1 -0
  125. package/dist/commands/workflows_lifecycle.js +37 -0
  126. package/dist/commands/workflows_lifecycle.js.map +1 -0
  127. package/dist/configure.d.ts +2 -2
  128. package/dist/configure.js +2 -2
  129. package/dist/providers/dashboard_provider.d.ts +57 -54
  130. package/dist/providers/dashboard_provider.d.ts.map +1 -1
  131. package/dist/providers/dashboard_provider.js +399 -288
  132. package/dist/providers/dashboard_provider.js.map +1 -1
  133. package/dist/providers/durable_provider.d.ts.map +1 -1
  134. package/dist/providers/durable_provider.js +67 -37
  135. package/dist/providers/durable_provider.js.map +1 -1
  136. package/dist/src/commands/console_command.d.ts +82 -0
  137. package/dist/src/commands/console_command.d.ts.map +1 -0
  138. package/dist/src/commands/console_command.js +238 -0
  139. package/dist/src/commands/console_command.js.map +1 -0
  140. package/dist/src/commands/runs.js +2 -2
  141. package/dist/src/commands/runs.js.map +1 -1
  142. package/dist/src/concurrency.d.ts.map +1 -1
  143. package/dist/src/concurrency.js +1 -0
  144. package/dist/src/concurrency.js.map +1 -1
  145. package/dist/src/config_types.d.ts +79 -26
  146. package/dist/src/config_types.d.ts.map +1 -1
  147. package/dist/src/dashboard/access_denied_page.d.ts +5 -7
  148. package/dist/src/dashboard/access_denied_page.d.ts.map +1 -1
  149. package/dist/src/dashboard/access_denied_page.js +2 -6
  150. package/dist/src/dashboard/access_denied_page.js.map +1 -1
  151. package/dist/src/dashboard/audit.d.ts +14 -0
  152. package/dist/src/dashboard/audit.d.ts.map +1 -0
  153. package/dist/src/dashboard/audit.js +36 -0
  154. package/dist/src/dashboard/audit.js.map +1 -0
  155. package/dist/src/dashboard/console_authorize.d.ts +98 -0
  156. package/dist/src/dashboard/console_authorize.d.ts.map +1 -0
  157. package/dist/src/dashboard/console_authorize.js +163 -0
  158. package/dist/src/dashboard/console_authorize.js.map +1 -0
  159. package/dist/src/dashboard/console_shell.d.ts +45 -0
  160. package/dist/src/dashboard/console_shell.d.ts.map +1 -0
  161. package/dist/src/dashboard/console_shell.js +125 -0
  162. package/dist/src/dashboard/console_shell.js.map +1 -0
  163. package/dist/src/dashboard/console_switcher.d.ts +132 -0
  164. package/dist/src/dashboard/console_switcher.d.ts.map +1 -0
  165. package/dist/src/dashboard/console_switcher.js +201 -0
  166. package/dist/src/dashboard/console_switcher.js.map +1 -0
  167. package/dist/src/dashboard/define_config.d.ts +68 -81
  168. package/dist/src/dashboard/define_config.d.ts.map +1 -1
  169. package/dist/src/dashboard/define_config.js +18 -112
  170. package/dist/src/dashboard/define_config.js.map +1 -1
  171. package/dist/src/dashboard/dev_tools.d.ts +102 -0
  172. package/dist/src/dashboard/dev_tools.d.ts.map +1 -0
  173. package/dist/src/dashboard/dev_tools.js +502 -0
  174. package/dist/src/dashboard/dev_tools.js.map +1 -0
  175. package/dist/src/dashboard/diagnostics-recorder.d.ts +1 -1
  176. package/dist/src/dashboard/diagnostics-recorder.js +1 -1
  177. package/dist/src/dashboard/gateway-adapter.d.ts +6 -6
  178. package/dist/src/dashboard/gateway-adapter.d.ts.map +1 -1
  179. package/dist/src/dashboard/gateway-adapter.js +5 -5
  180. package/dist/src/dashboard/gateway-adapter.js.map +1 -1
  181. package/dist/src/dashboard/handlers.d.ts +48 -39
  182. package/dist/src/dashboard/handlers.d.ts.map +1 -1
  183. package/dist/src/dashboard/handlers.js +181 -83
  184. package/dist/src/dashboard/handlers.js.map +1 -1
  185. package/dist/src/dashboard/index.d.ts +12 -9
  186. package/dist/src/dashboard/index.d.ts.map +1 -1
  187. package/dist/src/dashboard/index.js +10 -7
  188. package/dist/src/dashboard/index.js.map +1 -1
  189. package/dist/src/dashboard/list-filters.d.ts +27 -0
  190. package/dist/src/dashboard/list-filters.d.ts.map +1 -0
  191. package/dist/src/dashboard/list-filters.js +69 -0
  192. package/dist/src/dashboard/list-filters.js.map +1 -0
  193. package/dist/src/dashboard/openapi.d.ts.map +1 -1
  194. package/dist/src/dashboard/openapi.js +127 -52
  195. package/dist/src/dashboard/openapi.js.map +1 -1
  196. package/dist/src/dashboard/run-filter.d.ts +18 -15
  197. package/dist/src/dashboard/run-filter.d.ts.map +1 -1
  198. package/dist/src/dashboard/run-filter.js +30 -22
  199. package/dist/src/dashboard/run-filter.js.map +1 -1
  200. package/dist/src/dashboard/spa.d.ts +26 -1
  201. package/dist/src/dashboard/spa.d.ts.map +1 -1
  202. package/dist/src/dashboard/spa.js +9 -2
  203. package/dist/src/dashboard/spa.js.map +1 -1
  204. package/dist/src/dashboard/tenant_scope.d.ts +38 -0
  205. package/dist/src/dashboard/tenant_scope.d.ts.map +1 -0
  206. package/dist/src/dashboard/tenant_scope.js +166 -0
  207. package/dist/src/dashboard/tenant_scope.js.map +1 -0
  208. package/dist/src/define_config.d.ts +27 -12
  209. package/dist/src/define_config.d.ts.map +1 -1
  210. package/dist/src/define_config.js +9 -4
  211. package/dist/src/define_config.js.map +1 -1
  212. package/dist/src/diagnostics/index.d.ts +11 -0
  213. package/dist/src/diagnostics/index.d.ts.map +1 -0
  214. package/dist/src/diagnostics/index.js +6 -0
  215. package/dist/src/diagnostics/index.js.map +1 -0
  216. package/dist/src/diagnostics/transport.d.ts +71 -0
  217. package/dist/src/diagnostics/transport.d.ts.map +1 -0
  218. package/dist/src/diagnostics/transport.js +188 -0
  219. package/dist/src/diagnostics/transport.js.map +1 -0
  220. package/dist/src/diagnostics-bridge.d.ts +2 -1
  221. package/dist/src/diagnostics-bridge.d.ts.map +1 -1
  222. package/dist/src/diagnostics-bridge.js +7 -1
  223. package/dist/src/diagnostics-bridge.js.map +1 -1
  224. package/dist/src/doctor/agora_doctor.d.ts +116 -0
  225. package/dist/src/doctor/agora_doctor.d.ts.map +1 -0
  226. package/dist/src/doctor/agora_doctor.js +685 -0
  227. package/dist/src/doctor/agora_doctor.js.map +1 -0
  228. package/dist/src/doctor/checks.d.ts +28 -0
  229. package/dist/src/doctor/checks.d.ts.map +1 -0
  230. package/dist/src/doctor/checks.js +288 -0
  231. package/dist/src/doctor/checks.js.map +1 -0
  232. package/dist/src/doctor/index.d.ts +9 -0
  233. package/dist/src/doctor/index.d.ts.map +1 -0
  234. package/dist/src/doctor/index.js +16 -0
  235. package/dist/src/doctor/index.js.map +1 -0
  236. package/dist/src/engine.d.ts +55 -9
  237. package/dist/src/engine.d.ts.map +1 -1
  238. package/dist/src/engine.js +333 -84
  239. package/dist/src/engine.js.map +1 -1
  240. package/dist/src/errors.d.ts +9 -0
  241. package/dist/src/errors.d.ts.map +1 -1
  242. package/dist/src/errors.js +13 -0
  243. package/dist/src/errors.js.map +1 -1
  244. package/dist/src/event-trigger-bridge.d.ts +5 -14
  245. package/dist/src/event-trigger-bridge.d.ts.map +1 -1
  246. package/dist/src/event-trigger-bridge.js +11 -99
  247. package/dist/src/event-trigger-bridge.js.map +1 -1
  248. package/dist/src/index.d.ts +8 -5
  249. package/dist/src/index.d.ts.map +1 -1
  250. package/dist/src/index.js +6 -4
  251. package/dist/src/index.js.map +1 -1
  252. package/dist/src/interfaces.d.ts +53 -9
  253. package/dist/src/interfaces.d.ts.map +1 -1
  254. package/dist/src/interfaces.js +8 -0
  255. package/dist/src/interfaces.js.map +1 -1
  256. package/dist/src/origin.js +3 -3
  257. package/dist/src/role_bindings.d.ts +8 -8
  258. package/dist/src/role_bindings.js +8 -8
  259. package/dist/src/run-gateway/interface.d.ts +4 -3
  260. package/dist/src/run-gateway/interface.d.ts.map +1 -1
  261. package/dist/src/run-gateway/proxy-run-gateway.d.ts +4 -2
  262. package/dist/src/run-gateway/proxy-run-gateway.d.ts.map +1 -1
  263. package/dist/src/run-gateway/proxy-run-gateway.js +21 -6
  264. package/dist/src/run-gateway/proxy-run-gateway.js.map +1 -1
  265. package/dist/src/run-gateway/run-request-responder.d.ts +6 -1
  266. package/dist/src/run-gateway/run-request-responder.d.ts.map +1 -1
  267. package/dist/src/run-gateway/run-request-responder.js +30 -3
  268. package/dist/src/run-gateway/run-request-responder.js.map +1 -1
  269. package/dist/src/run-gateway/store-run-gateway.d.ts +4 -4
  270. package/dist/src/run-gateway/store-run-gateway.d.ts.map +1 -1
  271. package/dist/src/run-gateway/store-run-gateway.js +4 -4
  272. package/dist/src/run-gateway/store-run-gateway.js.map +1 -1
  273. package/dist/src/run-gateway/tenant-auth.d.ts +19 -1
  274. package/dist/src/run-gateway/tenant-auth.d.ts.map +1 -1
  275. package/dist/src/run-gateway/tenant-auth.js +133 -0
  276. package/dist/src/run-gateway/tenant-auth.js.map +1 -1
  277. package/dist/src/run-gateway/tenant-scoped-gateway.d.ts +10 -0
  278. package/dist/src/run-gateway/tenant-scoped-gateway.d.ts.map +1 -0
  279. package/dist/src/run-gateway/tenant-scoped-gateway.js +107 -0
  280. package/dist/src/run-gateway/tenant-scoped-gateway.js.map +1 -0
  281. package/dist/src/run-value-facets.d.ts +1 -1
  282. package/dist/src/run-value-facets.d.ts.map +1 -1
  283. package/dist/src/run-value-facets.js +5 -1
  284. package/dist/src/run-value-facets.js.map +1 -1
  285. package/dist/src/scheduler.d.ts.map +1 -1
  286. package/dist/src/scheduler.js +2 -1
  287. package/dist/src/scheduler.js.map +1 -1
  288. package/dist/src/schedules.d.ts +16 -1
  289. package/dist/src/schedules.d.ts.map +1 -1
  290. package/dist/src/schedules.js +29 -4
  291. package/dist/src/schedules.js.map +1 -1
  292. package/dist/src/services/main.d.ts +3 -3
  293. package/dist/src/services/main.js +6 -6
  294. package/dist/src/services/main.js.map +1 -1
  295. package/dist/src/singleton-admission.d.ts.map +1 -1
  296. package/dist/src/singleton-admission.js +2 -0
  297. package/dist/src/singleton-admission.js.map +1 -1
  298. package/dist/src/singleton-gate.d.ts +1 -1
  299. package/dist/src/singleton-gate.d.ts.map +1 -1
  300. package/dist/src/singleton-gate.js +4 -3
  301. package/dist/src/singleton-gate.js.map +1 -1
  302. package/dist/src/sql-schema.d.ts +54 -0
  303. package/dist/src/sql-schema.d.ts.map +1 -0
  304. package/dist/src/sql-schema.js +145 -0
  305. package/dist/src/sql-schema.js.map +1 -0
  306. package/dist/src/stores/factory.d.ts +6 -0
  307. package/dist/src/stores/factory.d.ts.map +1 -1
  308. package/dist/src/stores/factory.js +3 -0
  309. package/dist/src/stores/factory.js.map +1 -1
  310. package/dist/src/stores/lucid-mappers.d.ts +3 -0
  311. package/dist/src/stores/lucid-mappers.d.ts.map +1 -1
  312. package/dist/src/stores/lucid-mappers.js +12 -0
  313. package/dist/src/stores/lucid-mappers.js.map +1 -1
  314. package/dist/src/stores/lucid-pg-hot-path.d.ts +6 -2
  315. package/dist/src/stores/lucid-pg-hot-path.d.ts.map +1 -1
  316. package/dist/src/stores/lucid-pg-hot-path.js +7 -3
  317. package/dist/src/stores/lucid-pg-hot-path.js.map +1 -1
  318. package/dist/src/stores/lucid-schema.d.ts +18 -4
  319. package/dist/src/stores/lucid-schema.d.ts.map +1 -1
  320. package/dist/src/stores/lucid-schema.js +106 -61
  321. package/dist/src/stores/lucid-schema.js.map +1 -1
  322. package/dist/src/stores/lucid.d.ts +42 -2
  323. package/dist/src/stores/lucid.d.ts.map +1 -1
  324. package/dist/src/stores/lucid.js +450 -231
  325. package/dist/src/stores/lucid.js.map +1 -1
  326. package/dist/src/tenancy.d.ts +104 -0
  327. package/dist/src/tenancy.d.ts.map +1 -0
  328. package/dist/src/tenancy.js +91 -0
  329. package/dist/src/tenancy.js.map +1 -0
  330. package/dist/src/testing/in-memory-state-store.d.ts.map +1 -1
  331. package/dist/src/testing/in-memory-state-store.js +9 -3
  332. package/dist/src/testing/in-memory-state-store.js.map +1 -1
  333. package/dist/src/testing-kit/state-store-conformance.d.ts.map +1 -1
  334. package/dist/src/testing-kit/state-store-conformance.js +59 -0
  335. package/dist/src/testing-kit/state-store-conformance.js.map +1 -1
  336. package/dist/src/testing-kit/transport-conformance.d.ts.map +1 -1
  337. package/dist/src/testing-kit/transport-conformance.js +5 -1
  338. package/dist/src/testing-kit/transport-conformance.js.map +1 -1
  339. package/dist/src/transports/bullmq/bullmq-transport.d.ts +1 -1
  340. package/dist/src/transports/bullmq/bullmq-transport.d.ts.map +1 -1
  341. package/dist/src/transports/bullmq/bullmq-transport.js +14 -3
  342. package/dist/src/transports/bullmq/bullmq-transport.js.map +1 -1
  343. package/dist/src/transports/db-schema.d.ts +13 -5
  344. package/dist/src/transports/db-schema.d.ts.map +1 -1
  345. package/dist/src/transports/db-schema.js +52 -27
  346. package/dist/src/transports/db-schema.js.map +1 -1
  347. package/dist/src/transports/db.d.ts +6 -0
  348. package/dist/src/transports/db.d.ts.map +1 -1
  349. package/dist/src/transports/db.js +91 -42
  350. package/dist/src/transports/db.js.map +1 -1
  351. package/dist/src/transports/factory.d.ts +16 -0
  352. package/dist/src/transports/factory.d.ts.map +1 -1
  353. package/dist/src/transports/factory.js +6 -1
  354. package/dist/src/transports/factory.js.map +1 -1
  355. package/dist/src/transports/queue.d.ts +2 -2
  356. package/dist/src/transports/queue.d.ts.map +1 -1
  357. package/dist/src/transports/queue.js +49 -8
  358. package/dist/src/transports/queue.js.map +1 -1
  359. package/dist/src/transports/worker-keys-db.d.ts +5 -0
  360. package/dist/src/transports/worker-keys-db.d.ts.map +1 -1
  361. package/dist/src/transports/worker-keys-db.js +10 -8
  362. package/dist/src/transports/worker-keys-db.js.map +1 -1
  363. package/dist/src/workflow-discovery.d.ts +1 -1
  364. package/dist/src/workflow-discovery.d.ts.map +1 -1
  365. package/dist/src/workflow-discovery.js +4 -7
  366. package/dist/src/workflow-discovery.js.map +1 -1
  367. package/dist/src/workflow-events.d.ts +20 -51
  368. package/dist/src/workflow-events.d.ts.map +1 -1
  369. package/dist/src/workflow-events.js +12 -30
  370. package/dist/src/workflow-events.js.map +1 -1
  371. package/dist/src/workflow-ref.d.ts +1 -1
  372. package/dist/stubs/config/durable_dashboard.stub +9 -29
  373. package/dist/stubs/database/migrations/create_durable_tables.stub +12 -2
  374. package/dist/stubs/database/migrations/create_durable_transport_messages.stub +34 -5
  375. package/dist/stubs/database/migrations/create_durable_transport_tables.stub +30 -8
  376. package/dist/stubs/database/migrations/create_durable_transport_worker_keys.stub +24 -2
  377. package/package.json +25 -7
  378. package/skills/durable-cluster/SKILL.md +43 -23
  379. package/skills/durable-reliability/SKILL.md +13 -7
  380. package/dist/assets/spa/assets/index-70hGzOnT.css +0 -1
  381. package/dist/assets/spa/assets/index-CJjMAUau.js +0 -16
  382. package/dist/assets/spa/assets/index-CJjMAUau.js.map +0 -1
  383. package/dist/commands/retry.d.ts +0 -16
  384. package/dist/commands/retry.d.ts.map +0 -1
  385. package/dist/commands/retry.js +0 -34
  386. package/dist/commands/retry.js.map +0 -1
  387. package/dist/src/dashboard/auth.d.ts +0 -134
  388. package/dist/src/dashboard/auth.d.ts.map +0 -1
  389. package/dist/src/dashboard/auth.js +0 -156
  390. package/dist/src/dashboard/auth.js.map +0 -1
  391. package/dist/src/dashboard/login_page.d.ts +0 -36
  392. package/dist/src/dashboard/login_page.d.ts.map +0 -1
  393. package/dist/src/dashboard/login_page.js +0 -158
  394. package/dist/src/dashboard/login_page.js.map +0 -1
  395. package/dist/src/dashboard/session_cookie.d.ts +0 -45
  396. package/dist/src/dashboard/session_cookie.d.ts.map +0 -1
  397. package/dist/src/dashboard/session_cookie.js +0 -97
  398. package/dist/src/dashboard/session_cookie.js.map +0 -1
@@ -0,0 +1,82 @@
1
+ import { BaseCommand } from '@adonisjs/core/ace';
2
+ import type { CommandOptions } from '@adonisjs/core/types/ace';
3
+ import type { ApiRequest, ApiResponse, Deps } from '../dashboard/handlers.js';
4
+ import { WorkflowEngine } from '../engine.js';
5
+ /** A refusal the command reports on stderr with exit code 1 (bad flags, a refused confirmation). */
6
+ export declare class CliRefusal extends Error {
7
+ }
8
+ /**
9
+ * The base of the `durable:*` operator commands: they run the console's own JSON handlers
10
+ * (`src/dashboard/handlers.ts`) over the same read/control port, so a command validates, scopes and
11
+ * answers exactly like the console and the developer tools. Adds `--json`, `--tenant`, the console
12
+ * audit (actor `cli:<os user>`) and the `--force` confirmation for destructive actions.
13
+ */
14
+ export declare abstract class DurableConsoleCommand extends BaseCommand {
15
+ static options: CommandOptions;
16
+ json: boolean;
17
+ tenant?: string;
18
+ /** Whether a confirmation can be asked on this terminal. Tests set it. */
19
+ protected interactive: boolean;
20
+ /** The command's work; throw {@link CliRefusal} to refuse with exit code 1. */
21
+ protected abstract perform(): Promise<void>;
22
+ run(): Promise<void>;
23
+ /**
24
+ * The console's read/control port for this process: the engine (or a tenant pod's gateway), read
25
+ * across every tenant, or confined to `--tenant`. The console's `redact` hooks apply.
26
+ */
27
+ protected deps(): Promise<Deps>;
28
+ /** Run one console handler; a non-2xx answer becomes a {@link CliRefusal} with its message. */
29
+ protected call<T = Record<string, unknown>>(handler: (deps: Deps, req: ApiRequest) => Promise<ApiResponse>, req?: Partial<ApiRequest>, deps?: Deps): Promise<T>;
30
+ /**
31
+ * Record one action through the console's audit (the host's `audit` hook, else the log line), as
32
+ * `cli:<os user>`, `CLI`, `<command> <target>`. Called before the action, like a console POST.
33
+ */
34
+ protected audit(target: string): void;
35
+ /** Ask before a destructive action; `--force` skips it, and without a terminal it is required. */
36
+ protected confirm(force: boolean | undefined, question: string): Promise<void>;
37
+ /** Print a value as one JSON document. */
38
+ protected printJson(value: unknown): void;
39
+ }
40
+ /** Parse a `--payload`-style flag as JSON, or `undefined` when absent. */
41
+ export declare function jsonFlag(name: string, raw: string | undefined): unknown;
42
+ /** Split repeated and comma-separated flag values into one list. */
43
+ export declare function listFlag(raw: string | string[] | undefined): string[];
44
+ /** A plain-text table. */
45
+ export declare function renderTable(headers: string[], rows: string[][]): string;
46
+ /** A cell for a possibly-missing value. */
47
+ export declare function cell(value: unknown): string;
48
+ /** Epoch ms or ISO string as an ISO string (`-` when absent). */
49
+ export declare function isoCell(value: unknown): string;
50
+ /** The `page X of Y (N total)` footer of an offset page. */
51
+ export declare function pageFooter(meta: {
52
+ currentPage: number;
53
+ lastPage: number;
54
+ total: number;
55
+ }): string;
56
+ /**
57
+ * A {@link DurableConsoleCommand} that takes the console's run filter (`filter[...]` on the wire):
58
+ * `--status`, `--workflow`, `--tag`, `--namespace`, `--origin`, `--attr`, `--created-after`,
59
+ * `--created-before`. Several values (repeated, or comma separated) match any of them.
60
+ */
61
+ export declare abstract class RunFilterCommand extends DurableConsoleCommand {
62
+ status?: string[];
63
+ workflow?: string[];
64
+ tag?: string[];
65
+ namespace?: string[];
66
+ origin?: string;
67
+ attr?: string[];
68
+ createdAfter?: string;
69
+ createdBefore?: string;
70
+ /** The flags as the console's `filter[...]` envelope (`{ filter: { status: [...] } }`). */
71
+ protected runFilter(): Record<string, unknown>;
72
+ }
73
+ /**
74
+ * A {@link DurableConsoleCommand} over the schedules. A one-off process runs no worker loop, so it
75
+ * first adopts the set `durable:work` ticks (`config.schedules` merged with colocated `static
76
+ * schedule`s), and the console's schedule handlers see the same keys.
77
+ */
78
+ export declare abstract class ScheduleCommand extends DurableConsoleCommand {
79
+ /** This process's engine, with the worker's schedule set adopted; `undefined` on a tenant pod. */
80
+ protected scheduleEngine(): Promise<WorkflowEngine | undefined>;
81
+ }
82
+ //# sourceMappingURL=console_command.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"console_command.d.ts","sourceRoot":"","sources":["../../../src/commands/console_command.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,238 @@
1
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
2
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
3
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
4
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
5
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
6
+ };
7
+ import { BaseCommand, flags } from '@adonisjs/core/ace';
8
+ import { cliActor, recordConsoleAudit } from '../dashboard/audit.js';
9
+ import { dashboardEngineForTopology } from '../dashboard/gateway-adapter.js';
10
+ import { scopedDashboardEngine } from '../dashboard/tenant_scope.js';
11
+ import { WorkflowEngine } from '../engine.js';
12
+ import { resolveSchedules } from '../scheduler.js';
13
+ import { tenancyEnabled, tenancySlot } from '../tenancy.js';
14
+ import { mergeSchedules } from './worker.js';
15
+ /** A refusal the command reports on stderr with exit code 1 (bad flags, a refused confirmation). */
16
+ export class CliRefusal extends Error {
17
+ }
18
+ /**
19
+ * The base of the `durable:*` operator commands: they run the console's own JSON handlers
20
+ * (`src/dashboard/handlers.ts`) over the same read/control port, so a command validates, scopes and
21
+ * answers exactly like the console and the developer tools. Adds `--json`, `--tenant`, the console
22
+ * audit (actor `cli:<os user>`) and the `--force` confirmation for destructive actions.
23
+ */
24
+ export class DurableConsoleCommand extends BaseCommand {
25
+ static options = { startApp: true };
26
+ /** Whether a confirmation can be asked on this terminal. Tests set it. */
27
+ interactive = process.stdin.isTTY === true;
28
+ async run() {
29
+ try {
30
+ await this.perform();
31
+ }
32
+ catch (error) {
33
+ if (!(error instanceof CliRefusal))
34
+ throw error;
35
+ this.logger.error(error.message);
36
+ this.exitCode = 1;
37
+ }
38
+ }
39
+ /**
40
+ * The console's read/control port for this process: the engine (or a tenant pod's gateway), read
41
+ * across every tenant, or confined to `--tenant`. The console's `redact` hooks apply.
42
+ */
43
+ async deps() {
44
+ const durable = this.app.config.get('durable', {});
45
+ const base = await dashboardEngineForTopology(durable.topology ?? 'standalone', this.app.container, WorkflowEngine);
46
+ const slot = tenancyEnabled(durable.tenancy) ? tenancySlot() : undefined;
47
+ const tenant = this.tenant?.trim() || undefined;
48
+ if (tenant !== undefined && !slot) {
49
+ throw new CliRefusal('--tenant needs tenancy on (config/durable.ts `tenancy`).');
50
+ }
51
+ const engine = slot
52
+ ? scopedDashboardEngine(base, tenant !== undefined ? [tenant] : undefined, (fn) => slot.allTenants(fn))
53
+ : base;
54
+ const redact = this.app.config.get('durable_dashboard', {}).redact;
55
+ return { engine, ...(redact ? { redact } : {}) };
56
+ }
57
+ /** Run one console handler; a non-2xx answer becomes a {@link CliRefusal} with its message. */
58
+ async call(handler, req = {}, deps) {
59
+ const response = await handler(deps ?? (await this.deps()), {
60
+ params: {},
61
+ query: {},
62
+ ...req,
63
+ });
64
+ if (response.status >= 200 && response.status < 300)
65
+ return response.body;
66
+ const body = response.body;
67
+ let message = typeof body?.error === 'string' ? body.error : `failed (${response.status})`;
68
+ if (Array.isArray(body?.waitingOn) && body.waitingOn.length > 0) {
69
+ message += ` — waiting on: ${body.waitingOn.join(', ')}`;
70
+ }
71
+ throw new CliRefusal(message);
72
+ }
73
+ /**
74
+ * Record one action through the console's audit (the host's `audit` hook, else the log line), as
75
+ * `cli:<os user>`, `CLI`, `<command> <target>`. Called before the action, like a console POST.
76
+ */
77
+ audit(target) {
78
+ const sink = this.app.config.get('durable_dashboard', {}).audit;
79
+ recordConsoleAudit(sink, () => this.app.container.make('logger'), {
80
+ at: new Date(),
81
+ actor: cliActor(),
82
+ method: 'CLI',
83
+ path: `${this.constructor.commandName} ${target}`.trim(),
84
+ });
85
+ }
86
+ /** Ask before a destructive action; `--force` skips it, and without a terminal it is required. */
87
+ async confirm(force, question) {
88
+ if (force === true)
89
+ return;
90
+ if (!this.interactive) {
91
+ throw new CliRefusal(`${question} Refused: no terminal to confirm on, pass --force.`);
92
+ }
93
+ const yes = await this.prompt.confirm(question, { name: 'confirm' });
94
+ if (!yes)
95
+ throw new CliRefusal('Aborted.');
96
+ }
97
+ /** Print a value as one JSON document. */
98
+ printJson(value) {
99
+ this.logger.log(JSON.stringify(value, null, 2));
100
+ }
101
+ }
102
+ __decorate([
103
+ flags.boolean({ description: 'Print JSON instead of a table' })
104
+ ], DurableConsoleCommand.prototype, "json", void 0);
105
+ __decorate([
106
+ flags.string({ description: 'Only this tenant (organization) id, when tenancy is on' })
107
+ ], DurableConsoleCommand.prototype, "tenant", void 0);
108
+ /** Parse a `--payload`-style flag as JSON, or `undefined` when absent. */
109
+ export function jsonFlag(name, raw) {
110
+ if (raw === undefined)
111
+ return undefined;
112
+ try {
113
+ return JSON.parse(raw);
114
+ }
115
+ catch {
116
+ throw new CliRefusal(`--${name} must be valid JSON.`);
117
+ }
118
+ }
119
+ /** Split repeated and comma-separated flag values into one list. */
120
+ export function listFlag(raw) {
121
+ const values = Array.isArray(raw) ? raw : raw === undefined ? [] : [raw];
122
+ return values
123
+ .flatMap((v) => v.split(','))
124
+ .map((v) => v.trim())
125
+ .filter(Boolean);
126
+ }
127
+ /** A plain-text table. */
128
+ export function renderTable(headers, rows) {
129
+ const widths = headers.map((h, i) => Math.max(h.length, ...rows.map((r) => (r[i] ?? '').length)));
130
+ const fmt = (cells) => cells
131
+ .map((c, i) => c.padEnd(widths[i] ?? 0))
132
+ .join(' ')
133
+ .trimEnd();
134
+ return [fmt(headers), ...rows.map(fmt)].join('\n');
135
+ }
136
+ /** A cell for a possibly-missing value. */
137
+ export function cell(value) {
138
+ if (value === undefined || value === null || value === '')
139
+ return '-';
140
+ if (typeof value === 'string')
141
+ return value;
142
+ if (typeof value === 'number' || typeof value === 'boolean')
143
+ return String(value);
144
+ return JSON.stringify(value);
145
+ }
146
+ /** Epoch ms or ISO string as an ISO string (`-` when absent). */
147
+ export function isoCell(value) {
148
+ if (typeof value === 'number')
149
+ return new Date(value).toISOString();
150
+ return cell(value);
151
+ }
152
+ /** The `page X of Y (N total)` footer of an offset page. */
153
+ export function pageFooter(meta) {
154
+ return `page ${meta.currentPage} of ${Math.max(meta.lastPage, 1)} (${meta.total} total)`;
155
+ }
156
+ /**
157
+ * A {@link DurableConsoleCommand} that takes the console's run filter (`filter[...]` on the wire):
158
+ * `--status`, `--workflow`, `--tag`, `--namespace`, `--origin`, `--attr`, `--created-after`,
159
+ * `--created-before`. Several values (repeated, or comma separated) match any of them.
160
+ */
161
+ export class RunFilterCommand extends DurableConsoleCommand {
162
+ /** The flags as the console's `filter[...]` envelope (`{ filter: { status: [...] } }`). */
163
+ runFilter() {
164
+ const filter = {};
165
+ const lists = {
166
+ status: this.status,
167
+ workflow: this.workflow,
168
+ tag: this.tag,
169
+ namespace: this.namespace,
170
+ };
171
+ for (const [key, raw] of Object.entries(lists)) {
172
+ const values = listFlag(raw);
173
+ if (values.length > 0)
174
+ filter[key] = values;
175
+ }
176
+ const attrs = (this.attr ?? []).map((a) => a.trim()).filter(Boolean);
177
+ if (attrs.length > 0)
178
+ filter.attr = attrs;
179
+ for (const [key, value] of Object.entries({
180
+ origin: this.origin,
181
+ createdAfter: this.createdAfter,
182
+ createdBefore: this.createdBefore,
183
+ })) {
184
+ if (value !== undefined && value !== '')
185
+ filter[key] = value;
186
+ }
187
+ for (const key of ['createdAfter', 'createdBefore']) {
188
+ const value = filter[key];
189
+ if (typeof value === 'string' && Number.isNaN(new Date(value).getTime())) {
190
+ throw new CliRefusal(`--${key === 'createdAfter' ? 'created-after' : 'created-before'} is not a date: ${value}`);
191
+ }
192
+ }
193
+ return Object.keys(filter).length > 0 ? { filter } : {};
194
+ }
195
+ }
196
+ __decorate([
197
+ flags.array({
198
+ description: 'Run status (pending|running|suspended|blocked|cancelling|completed|failed|cancelled|dead); several match any',
199
+ })
200
+ ], RunFilterCommand.prototype, "status", void 0);
201
+ __decorate([
202
+ flags.array({ description: 'Workflow name; several match any' })
203
+ ], RunFilterCommand.prototype, "workflow", void 0);
204
+ __decorate([
205
+ flags.array({ description: 'A tag the run carries; several match any' })
206
+ ], RunFilterCommand.prototype, "tag", void 0);
207
+ __decorate([
208
+ flags.array({ description: 'Worker namespace; several match any' })
209
+ ], RunFilterCommand.prototype, "namespace", void 0);
210
+ __decorate([
211
+ flags.string({ description: 'Origin attribution' })
212
+ ], RunFilterCommand.prototype, "origin", void 0);
213
+ __decorate([
214
+ flags.array({ description: 'Search attribute predicate key:op:value (tier:eq:pro); ANDed' })
215
+ ], RunFilterCommand.prototype, "attr", void 0);
216
+ __decorate([
217
+ flags.string({ description: 'Only runs created at or after this ISO date/time' })
218
+ ], RunFilterCommand.prototype, "createdAfter", void 0);
219
+ __decorate([
220
+ flags.string({ description: 'Only runs created at or before this ISO date/time' })
221
+ ], RunFilterCommand.prototype, "createdBefore", void 0);
222
+ /**
223
+ * A {@link DurableConsoleCommand} over the schedules. A one-off process runs no worker loop, so it
224
+ * first adopts the set `durable:work` ticks (`config.schedules` merged with colocated `static
225
+ * schedule`s), and the console's schedule handlers see the same keys.
226
+ */
227
+ export class ScheduleCommand extends DurableConsoleCommand {
228
+ /** This process's engine, with the worker's schedule set adopted; `undefined` on a tenant pod. */
229
+ async scheduleEngine() {
230
+ const durable = this.app.config.get('durable', {});
231
+ if ((durable.topology ?? 'standalone') === 'tenant')
232
+ return undefined;
233
+ const engine = await this.app.container.make(WorkflowEngine);
234
+ engine.adoptSchedules(mergeSchedules(await resolveSchedules(durable.schedules ?? []), engine.discoveredSchedules));
235
+ return engine;
236
+ }
237
+ }
238
+ //# sourceMappingURL=console_command.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"console_command.js","sourceRoot":"","sources":["../../../src/commands/console_command.ts"],"names":[],"mappings":"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"}
@@ -94,7 +94,7 @@ async function oldestPendingRemoteStep(source, runId, now) {
94
94
  */
95
95
  export async function attachLiveness(source, runs, now = Date.now()) {
96
96
  return Promise.all(runs.map(async (run) => {
97
- const stalePending = run.status === 'running' || run.status === 'suspended'
97
+ const stalePending = run.status === 'running' || run.status === 'suspended' || run.status === 'cancelling'
98
98
  ? await oldestPendingRemoteStep(source, run.id, now)
99
99
  : null;
100
100
  return {
@@ -131,7 +131,7 @@ export function parseDurationMs(input) {
131
131
  * re-drives one). */
132
132
  export function staleHint(runId) {
133
133
  return (`Run ${runId} looks stranded (pending remote step exceeds the threshold). Recover it with ` +
134
- `\`engine.redispatchPending('${runId}')\` or \`node ace durable:retry ${runId}\`.`);
134
+ `\`node ace durable:runs:redispatch ${runId}\` (re-send a lost step) or \`node ace durable:runs:retry ${runId}\`.`);
135
135
  }
136
136
  /** Render a runs list as a plain-text table for the terminal. Additive over the original
137
137
  * RUN/WORKFLOW/STATUS/UPDATED columns: RECOVERY (blank unless `recoveryAttempts > 0`) and PENDING
@@ -1 +1 @@
1
- {"version":3,"file":"runs.js","sourceRoot":"","sources":["../../../src/commands/runs.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"runs.js","sourceRoot":"","sources":["../../../src/commands/runs.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"concurrency.d.ts","sourceRoot":"","sources":["../../src/concurrency.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,QAAQ,EAAE,SAAS,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAEvE;;;;;;;;GAQG;AACH,MAAM,WAAW,gBAAgB;IAC/B,+FAA+F;IAC/F,GAAG,EAAE,MAAM,CAAC;IACZ,gFAAgF;IAChF,KAAK,EAAE,MAAM,CAAC;IACd;;;;OAIG;IACH,aAAa,CAAC,EAAE,SAAS,EAAE,GAAG,SAAS,CAAC;CACzC;AAED;;;;GAIG;AACH,MAAM,WAAW,iBAAiB;IAChC,6FAA6F;IAC7F,GAAG,EAAE,CAAC,KAAK,EAAE,OAAO,KAAK,MAAM,GAAG,SAAS,CAAC;IAC5C,gGAAgG;IAChG,KAAK,EAAE,MAAM,GAAG,CAAC,CAAC,GAAG,EAAE,MAAM,KAAK,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC;IAC5D,gFAAgF;IAChF,aAAa,CAAC,EAAE,SAAS,EAAE,GAAG,SAAS,CAAC;CACzC;AAED,wFAAwF;AACxF,eAAO,MAAM,4BAA4B,EAAE,SAAS,SAAS,EAK5D,CAAC;AAEF,mGAAmG;AACnG,wBAAgB,cAAc,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAElD;AAED,uGAAuG;AACvG,wBAAsB,kBAAkB,CACtC,QAAQ,EAAE,gBAAgB,GAAG,SAAS,EACtC,MAAM,EAAE,iBAAiB,GAAG,SAAS,EACrC,KAAK,EAAE,OAAO,GACb,OAAO,CAAC,gBAAgB,GAAG,SAAS,CAAC,CAOvC;AAED,oGAAoG;AACpG,wBAAsB,SAAS,CAC7B,KAAK,EAAE,UAAU,EACjB,KAAK,EAAE,IAAI,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,CAAC,GACrC,OAAO,CAAC,MAAM,CAAC,CAGjB;AAED;;;;;;;;;GASG;AACH,wBAAsB,iBAAiB,CACrC,KAAK,EAAE,UAAU,EACjB,QAAQ,EAAE,MAAM,EAChB,KAAK,EAAE,gBAAgB,GACtB,OAAO,CAAC,IAAI,CAAC,CAWf"}
1
+ {"version":3,"file":"concurrency.d.ts","sourceRoot":"","sources":["../../src/concurrency.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,QAAQ,EAAE,SAAS,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAEvE;;;;;;;;GAQG;AACH,MAAM,WAAW,gBAAgB;IAC/B,+FAA+F;IAC/F,GAAG,EAAE,MAAM,CAAC;IACZ,gFAAgF;IAChF,KAAK,EAAE,MAAM,CAAC;IACd;;;;OAIG;IACH,aAAa,CAAC,EAAE,SAAS,EAAE,GAAG,SAAS,CAAC;CACzC;AAED;;;;GAIG;AACH,MAAM,WAAW,iBAAiB;IAChC,6FAA6F;IAC7F,GAAG,EAAE,CAAC,KAAK,EAAE,OAAO,KAAK,MAAM,GAAG,SAAS,CAAC;IAC5C,gGAAgG;IAChG,KAAK,EAAE,MAAM,GAAG,CAAC,CAAC,GAAG,EAAE,MAAM,KAAK,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC;IAC5D,gFAAgF;IAChF,aAAa,CAAC,EAAE,SAAS,EAAE,GAAG,SAAS,CAAC;CACzC;AAED,wFAAwF;AACxF,eAAO,MAAM,4BAA4B,EAAE,SAAS,SAAS,EAM5D,CAAC;AAEF,mGAAmG;AACnG,wBAAgB,cAAc,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAElD;AAED,uGAAuG;AACvG,wBAAsB,kBAAkB,CACtC,QAAQ,EAAE,gBAAgB,GAAG,SAAS,EACtC,MAAM,EAAE,iBAAiB,GAAG,SAAS,EACrC,KAAK,EAAE,OAAO,GACb,OAAO,CAAC,gBAAgB,GAAG,SAAS,CAAC,CAOvC;AAED,oGAAoG;AACpG,wBAAsB,SAAS,CAC7B,KAAK,EAAE,UAAU,EACjB,KAAK,EAAE,IAAI,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,CAAC,GACrC,OAAO,CAAC,MAAM,CAAC,CAGjB;AAED;;;;;;;;;GASG;AACH,wBAAsB,iBAAiB,CACrC,KAAK,EAAE,UAAU,EACjB,QAAQ,EAAE,MAAM,EAChB,KAAK,EAAE,gBAAgB,GACtB,OAAO,CAAC,IAAI,CAAC,CAWf"}
@@ -5,6 +5,7 @@ export const DEFAULT_CONCURRENCY_STATUSES = [
5
5
  'running',
6
6
  'suspended',
7
7
  'blocked',
8
+ 'cancelling',
8
9
  ];
9
10
  /** The tag a quota-bearing run carries, so its siblings can be counted by one tag+status query. */
10
11
  export function concurrencyTag(key) {
@@ -1 +1 @@
1
- {"version":3,"file":"concurrency.js","sourceRoot":"","sources":["../../src/concurrency.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,qBAAqB,EAAE,MAAM,aAAa,CAAC;AAuCpD,wFAAwF;AACxF,MAAM,CAAC,MAAM,4BAA4B,GAAyB;IAChE,SAAS;IACT,SAAS;IACT,WAAW;IACX,SAAS;CACV,CAAC;AAEF,mGAAmG;AACnG,MAAM,UAAU,cAAc,CAAC,GAAW;IACxC,OAAO,eAAe,GAAG,EAAE,CAAC;AAC9B,CAAC;AAED,uGAAuG;AACvG,MAAM,CAAC,KAAK,UAAU,kBAAkB,CACtC,QAAsC,EACtC,MAAqC,EACrC,KAAc;IAEd,IAAI,QAAQ;QAAE,OAAO,QAAQ,CAAC;IAC9B,IAAI,CAAC,MAAM;QAAE,OAAO,SAAS,CAAC;IAC9B,MAAM,GAAG,GAAG,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;IAC9B,IAAI,GAAG,KAAK,SAAS;QAAE,OAAO,SAAS,CAAC;IACxC,MAAM,KAAK,GAAG,OAAO,MAAM,CAAC,KAAK,KAAK,UAAU,CAAC,CAAC,CAAC,MAAM,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC;IAC1F,OAAO,EAAE,GAAG,EAAE,KAAK,EAAE,aAAa,EAAE,MAAM,CAAC,aAAa,EAAE,CAAC;AAC7D,CAAC;AAED,oGAAoG;AACpG,MAAM,CAAC,KAAK,UAAU,SAAS,CAC7B,KAAiB,EACjB,KAAsC;IAEtC,IAAI,KAAK,CAAC,SAAS;QAAE,OAAO,KAAK,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;IACnD,OAAO,CAAC,MAAM,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC;AAC9C,CAAC;AAED;;;;;;;;;GASG;AACH,MAAM,CAAC,KAAK,UAAU,iBAAiB,CACrC,KAAiB,EACjB,QAAgB,EAChB,KAAuB;IAEvB,MAAM,MAAM,GACV,KAAK,CAAC,KAAK,IAAI,CAAC;QACd,CAAC,CAAC,CAAC;QACH,CAAC,CAAC,MAAM,SAAS,CAAC,KAAK,EAAE;YACrB,GAAG,EAAE,cAAc,CAAC,KAAK,CAAC,GAAG,CAAC;YAC9B,QAAQ,EAAE,CAAC,GAAG,CAAC,KAAK,CAAC,aAAa,IAAI,4BAA4B,CAAC,CAAC;SACrE,CAAC,CAAC;IACT,IAAI,KAAK,CAAC,KAAK,IAAI,CAAC,IAAI,MAAM,IAAI,KAAK,CAAC,KAAK,EAAE,CAAC;QAC9C,MAAM,IAAI,qBAAqB,CAAC,QAAQ,EAAE,KAAK,CAAC,GAAG,EAAE,KAAK,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;IAC5E,CAAC;AACH,CAAC"}
1
+ {"version":3,"file":"concurrency.js","sourceRoot":"","sources":["../../src/concurrency.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,qBAAqB,EAAE,MAAM,aAAa,CAAC;AAuCpD,wFAAwF;AACxF,MAAM,CAAC,MAAM,4BAA4B,GAAyB;IAChE,SAAS;IACT,SAAS;IACT,WAAW;IACX,SAAS;IACT,YAAY;CACb,CAAC;AAEF,mGAAmG;AACnG,MAAM,UAAU,cAAc,CAAC,GAAW;IACxC,OAAO,eAAe,GAAG,EAAE,CAAC;AAC9B,CAAC;AAED,uGAAuG;AACvG,MAAM,CAAC,KAAK,UAAU,kBAAkB,CACtC,QAAsC,EACtC,MAAqC,EACrC,KAAc;IAEd,IAAI,QAAQ;QAAE,OAAO,QAAQ,CAAC;IAC9B,IAAI,CAAC,MAAM;QAAE,OAAO,SAAS,CAAC;IAC9B,MAAM,GAAG,GAAG,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;IAC9B,IAAI,GAAG,KAAK,SAAS;QAAE,OAAO,SAAS,CAAC;IACxC,MAAM,KAAK,GAAG,OAAO,MAAM,CAAC,KAAK,KAAK,UAAU,CAAC,CAAC,CAAC,MAAM,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC;IAC1F,OAAO,EAAE,GAAG,EAAE,KAAK,EAAE,aAAa,EAAE,MAAM,CAAC,aAAa,EAAE,CAAC;AAC7D,CAAC;AAED,oGAAoG;AACpG,MAAM,CAAC,KAAK,UAAU,SAAS,CAC7B,KAAiB,EACjB,KAAsC;IAEtC,IAAI,KAAK,CAAC,SAAS;QAAE,OAAO,KAAK,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;IACnD,OAAO,CAAC,MAAM,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC;AAC9C,CAAC;AAED;;;;;;;;;GASG;AACH,MAAM,CAAC,KAAK,UAAU,iBAAiB,CACrC,KAAiB,EACjB,QAAgB,EAChB,KAAuB;IAEvB,MAAM,MAAM,GACV,KAAK,CAAC,KAAK,IAAI,CAAC;QACd,CAAC,CAAC,CAAC;QACH,CAAC,CAAC,MAAM,SAAS,CAAC,KAAK,EAAE;YACrB,GAAG,EAAE,cAAc,CAAC,KAAK,CAAC,GAAG,CAAC;YAC9B,QAAQ,EAAE,CAAC,GAAG,CAAC,KAAK,CAAC,aAAa,IAAI,4BAA4B,CAAC,CAAC;SACrE,CAAC,CAAC;IACT,IAAI,KAAK,CAAC,KAAK,IAAI,CAAC,IAAI,MAAM,IAAI,KAAK,CAAC,KAAK,EAAE,CAAC;QAC9C,MAAM,IAAI,qBAAqB,CAAC,QAAQ,EAAE,KAAK,CAAC,GAAG,EAAE,KAAK,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;IAC5E,CAAC;AACH,CAAC"}
@@ -1,19 +1,18 @@
1
1
  import type { BaseDurableConfig } from './define_config.js';
2
2
  /**
3
- * Role-discriminated config members for `config/durable.ts` (see
3
+ * Topology-discriminated config members for `config/durable.ts` (see
4
4
  * `docs/superpowers/specs/2026-07-17-store-less-cluster-design.md` §5). The engine's topology is
5
- * selected explicitly by `role` — never inferred — and TypeScript narrows the accepted shape on the
6
- * `role` literal so an invalid combination (a store-less `tenant` pod that names a store) is a
5
+ * selected explicitly by `topology` — never inferred — and TypeScript narrows the accepted shape on the
6
+ * `topology` literal so an invalid combination (a store-less `tenant` pod that names a store) is a
7
7
  * **compile error**, not a runtime assertion.
8
8
  *
9
9
  * These members are additive over {@link BaseDurableConfig} (today's field-for-field config): every
10
- * existing field stays available on every role, so a config written before roles existed keeps
10
+ * existing field stays available on every topology, so a config that omits `topology` keeps
11
11
  * type-checking and behaving identically (it lands on {@link StandaloneConfig}, the default).
12
12
  */
13
13
  /**
14
14
  * The identity a {@link TenantVerifier} derives from a tenant's signed claim — the trust output the
15
15
  * `RunRequestResponder` uses to force `namespace`/ownership on a store-less pod's requests (spec §9).
16
- * Types only for this wave; the verification logic lands in a later wave.
17
16
  */
18
17
  export interface VerifiedTenant {
19
18
  /** The tenant/partition the token authenticates as — the responder trusts THIS, never the body. */
@@ -21,33 +20,83 @@ export interface VerifiedTenant {
21
20
  /** Capabilities the token grants, if the issuer scopes them. */
22
21
  capabilities?: string[] | undefined;
23
22
  }
23
+ /** What a tenant verifier receives for each incoming request. */
24
+ export interface TenantVerifierInput {
25
+ /** The token presented on the request (absent when a pod runs token-less on prefix isolation alone). */
26
+ token?: string | undefined;
27
+ /** The tenant the request *claims* to be — advisory only; the verifier derives the real one. */
28
+ tenant?: string | undefined;
29
+ }
24
30
  /**
25
31
  * Verifies a tenant's signed claim on the **responder** side (a `control-plane`), returning the
26
32
  * {@link VerifiedTenant} it authenticates as — or `null`/throwing to reject a tampered/invalid token.
27
33
  * A control-plane *verifies* tokens; it does not *carry* one (that is {@link TenantConfig.tenant}).
28
- * Typed here so the config compiles; the actual signature check is a later wave (spec §9).
34
+ * The function form of `verifyTenant` (what `hmacTenantVerifier` returns).
29
35
  */
30
- export type TenantVerifier = (input: {
31
- /** The signed token presented on the request (absent when a pod runs token-less on prefix isolation alone). */
32
- token?: string | undefined;
33
- /** The tenant the request *claims* to be — advisory only; the verifier derives the real one. */
34
- tenant?: string | undefined;
35
- }) => VerifiedTenant | null | Promise<VerifiedTenant | null>;
36
+ export type TenantVerifier = (input: TenantVerifierInput) => VerifiedTenant | null | Promise<VerifiedTenant | null>;
36
37
  /**
37
- * Single-process engine: a control-plane **plus an embedded worker** (spec §3). The default role, so
38
- * a config with no `role` lands here — reproducing today's single-process behavior byte-for-byte.
38
+ * The class form of `verifyTenant`, for a verifier in its own file. Runs on the control plane for every
39
+ * request a tenant process sends.
40
+ */
41
+ export interface TenantVerifierContract {
42
+ /**
43
+ * Turn the wire token into the tenant it authenticates as. Return `null` (or throw) to reject:
44
+ * the request is answered `unauthorized` and never touches a run. The returned `tenant` is trusted
45
+ * as-is, so derive it from the verified token, never from `input.tenant`.
46
+ */
47
+ verify(input: TenantVerifierInput): VerifiedTenant | null | Promise<VerifiedTenant | null>;
48
+ }
49
+ /**
50
+ * The class form of `tenant.token`, for a credentials source in its own file. Runs on the tenant
51
+ * process before every wire request.
52
+ */
53
+ export interface TenantCredentialsContract {
54
+ /**
55
+ * The token to present on the next request, sent as-is in the wire `tenant` field. Called once per
56
+ * request, so cache the token here and refresh it before it expires. A throw (or an empty string)
57
+ * fails that request with the error; the next request calls `token()` again.
58
+ */
59
+ token(): string | Promise<string>;
60
+ }
61
+ /** A class implementing a contract; constructor params are for `@inject()`. */
62
+ export type ContractClass<T> = new (...args: any[]) => T;
63
+ /**
64
+ * The `verifyTenant` option, in the same forms as a console `authorize`: an inline function (e.g.
65
+ * `hmacTenantVerifier(secret)`), a class implementing {@link TenantVerifierContract} (built through the
66
+ * container once, so `@inject()` works), a lazy import of a module whose default export is such a class
67
+ * (`() => import('#tenants/verifier')`, imported once), or an object implementing the contract.
68
+ */
69
+ export type TenantVerifierOption = TenantVerifier | TenantVerifierContract | ContractClass<TenantVerifierContract> | (() => Promise<{
70
+ default: ContractClass<TenantVerifierContract> | TenantVerifierContract;
71
+ }>);
72
+ /**
73
+ * The `tenant.token` option: a string, a function called before every request, a class implementing
74
+ * {@link TenantCredentialsContract} (built through the container once), a lazy import of a module whose
75
+ * default export is such a class, or an object implementing the contract.
76
+ */
77
+ export type TenantTokenOption = string | (() => string | Promise<string>) | TenantCredentialsContract | ContractClass<TenantCredentialsContract> | (() => Promise<{
78
+ default: ContractClass<TenantCredentialsContract> | TenantCredentialsContract;
79
+ }>);
80
+ /**
81
+ * The resolved `tenant.token` the wire layer uses: a string, or a function called before each request
82
+ * whose result travels as-is in the request's `tenant` field.
83
+ */
84
+ export type TenantTokenSource = string | (() => string | Promise<string>);
85
+ /**
86
+ * Single-process engine: a control-plane **plus an embedded worker** (spec §3). The default topology, so
87
+ * a config with no `topology` lands here — reproducing today's single-process behavior byte-for-byte.
39
88
  * `store`/`transport` stay optional (omitting them selects the in-memory store/transport — the
40
- * zero-infra default), unlike the coordinator roles.
89
+ * zero-infra default), unlike the coordinator topologies.
41
90
  */
42
91
  export interface StandaloneConfig extends BaseDurableConfig {
43
- /** Optional here so a config with no `role` still type-checks and defaults to `'standalone'`. */
44
- role?: 'standalone';
92
+ /** Optional here so a config with no `topology` still type-checks and defaults to `'standalone'`. */
93
+ topology?: 'standalone';
45
94
  /**
46
95
  * Verifier for tenant tokens on incoming `RunRequest`/`StartRunMessage`s, as on a `control-plane`. A
47
96
  * standalone engine on a transport that carries the store-less protocol (`bullmq`, `queue`, `db`) also
48
97
  * answers tenant pods; without a verifier the wire `tenant` claim is trusted verbatim.
49
98
  */
50
- verifyTenant?: TenantVerifier;
99
+ verifyTenant?: TenantVerifierOption;
51
100
  }
52
101
  /**
53
102
  * Pure coordinator (spec §3): owns the store, dispatches/recovers/times-out/responds, but runs **no**
@@ -55,26 +104,26 @@ export interface StandaloneConfig extends BaseDurableConfig {
55
104
  * transport, so both are required here.
56
105
  */
57
106
  export interface ControlPlaneConfig extends BaseDurableConfig {
58
- role: 'control-plane';
107
+ topology: 'control-plane';
59
108
  /** A coordinator owns durable state — required (a key of {@link BaseDurableConfig.stores}). */
60
109
  store: string;
61
110
  /** Required — the broker the coordinator dispatches over (a key of {@link BaseDurableConfig.transports}). */
62
111
  transport: string;
63
112
  /**
64
113
  * Responder-side verifier for tenant tokens on incoming `RunRequest`/`StartRunMessage` (spec §9).
65
- * The control-plane *verifies* a token and derives the tenant from it; it does not carry one. Typed
66
- * only for this wave — the verification logic is a later wave.
114
+ * The control-plane *verifies* a token and derives the tenant from it; it does not carry one. A
115
+ * function, a class implementing {@link TenantVerifierContract}, or a lazy import of one.
67
116
  */
68
- verifyTenant?: TenantVerifier;
117
+ verifyTenant?: TenantVerifierOption;
69
118
  }
70
119
  /**
71
120
  * Store-less "thin" pod (spec §3): a worker (`durable:worker`) or an api/dashboard pod. It NEVER owns
72
121
  * a store — everything round-trips over the wire via the `ProxyRunGateway`. That isolation is a
73
- * **compile-time fact**: `store`/`stores` are `never`, so `defineConfig({ role: 'tenant', store })`
122
+ * **compile-time fact**: `store`/`stores` are `never`, so `defineConfig({ topology: 'tenant', store })`
74
123
  * fails to type-check.
75
124
  */
76
125
  export interface TenantConfig extends BaseDurableConfig {
77
- role: 'tenant';
126
+ topology: 'tenant';
78
127
  /**
79
128
  * FORBIDDEN — a store-less pod may not name a store. `never` makes any `store` value a compile
80
129
  * error, so tenant isolation is enforced by the type system, not a runtime `if (this.store)`.
@@ -86,9 +135,13 @@ export interface TenantConfig extends BaseDurableConfig {
86
135
  transport: string;
87
136
  /** Required — which tenant this pod is; suffixes its `<name>@<tenant>` routing tokens (spec §6.1). */
88
137
  partition: string;
89
- /** The pod's signed claim, presented on every wire request (verified by the control-plane, spec §9). */
138
+ /**
139
+ * The pod's signed claim, presented on every wire request (verified by the control-plane, spec §9).
140
+ * A string, a function called before each request (e.g. an OAuth access token that refreshes
141
+ * itself), a class implementing {@link TenantCredentialsContract}, or a lazy import of one.
142
+ */
90
143
  tenant?: {
91
- token?: string;
144
+ token?: TenantTokenOption | undefined;
92
145
  };
93
146
  /** Extra advertised features beyond registered handler names (spec §7 capability negotiation). */
94
147
  capabilities?: string[];
@@ -1 +1 @@
1
- {"version":3,"file":"config_types.d.ts","sourceRoot":"","sources":["../../src/config_types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,oBAAoB,CAAC;AAE5D;;;;;;;;;;GAUG;AAEH;;;;GAIG;AACH,MAAM,WAAW,cAAc;IAC7B,mGAAmG;IACnG,MAAM,EAAE,MAAM,CAAC;IACf,gEAAgE;IAChE,YAAY,CAAC,EAAE,MAAM,EAAE,GAAG,SAAS,CAAC;CACrC;AAED;;;;;GAKG;AACH,MAAM,MAAM,cAAc,GAAG,CAAC,KAAK,EAAE;IACnC,+GAA+G;IAC/G,KAAK,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC3B,gGAAgG;IAChG,MAAM,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;CAC7B,KAAK,cAAc,GAAG,IAAI,GAAG,OAAO,CAAC,cAAc,GAAG,IAAI,CAAC,CAAC;AAE7D;;;;;GAKG;AACH,MAAM,WAAW,gBAAiB,SAAQ,iBAAiB;IACzD,iGAAiG;IACjG,IAAI,CAAC,EAAE,YAAY,CAAC;IACpB;;;;OAIG;IACH,YAAY,CAAC,EAAE,cAAc,CAAC;CAC/B;AAED;;;;GAIG;AACH,MAAM,WAAW,kBAAmB,SAAQ,iBAAiB;IAC3D,IAAI,EAAE,eAAe,CAAC;IACtB,+FAA+F;IAC/F,KAAK,EAAE,MAAM,CAAC;IACd,6GAA6G;IAC7G,SAAS,EAAE,MAAM,CAAC;IAClB;;;;OAIG;IACH,YAAY,CAAC,EAAE,cAAc,CAAC;CAC/B;AAED;;;;;GAKG;AACH,MAAM,WAAW,YAAa,SAAQ,iBAAiB;IACrD,IAAI,EAAE,QAAQ,CAAC;IACf;;;OAGG;IACH,KAAK,CAAC,EAAE,KAAK,CAAC;IACd,6DAA6D;IAC7D,MAAM,CAAC,EAAE,KAAK,CAAC;IACf,mEAAmE;IACnE,SAAS,EAAE,MAAM,CAAC;IAClB,sGAAsG;IACtG,SAAS,EAAE,MAAM,CAAC;IAClB,wGAAwG;IACxG,MAAM,CAAC,EAAE;QAAE,KAAK,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;IAC5B,kGAAkG;IAClG,YAAY,CAAC,EAAE,MAAM,EAAE,CAAC;IACxB,8FAA8F;IAC9F,gBAAgB,CAAC,EAAE,MAAM,CAAC;CAC3B"}
1
+ {"version":3,"file":"config_types.d.ts","sourceRoot":"","sources":["../../src/config_types.ts"],"names":[],"mappings":"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"}