@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,502 @@
1
+ import { cancelRun, continueRun, fleetHealth, getFanMembers, getRun, getRunEvent, listRuns, listSchedules, retryRun, runValues, scheduleAction, signalRun, workers, } from './handlers.js';
2
+ import { RUN_STATUSES } from './run-filter.js';
3
+ /*
4
+ * The dev-tools registration contract, version 1, declared here STRUCTURALLY: the hub is bound at
5
+ * `'agora.devTools'` by `@adonis-agora/agent/mcp_provider` when the app has it, and this package never
6
+ * imports the agent (it stays an optional, undeclared peer). Same shapes as `@adonis-agora/agent/dev-tools`.
7
+ */
8
+ /** The container binding the dev-tools hub lives at. */
9
+ export const DEV_TOOLS_BINDING = 'agora.devTools';
10
+ /** List tools default to this many rows. */
11
+ const DEFAULT_LIMIT = 20;
12
+ /** List tools return at most this many rows. */
13
+ const MAX_LIMIT = 100;
14
+ /** A blob field (run input/output/error, a step's input/output/error) is cut to this many bytes. */
15
+ export const DEV_TOOL_FIELD_BYTES = 4 * 1024;
16
+ const BLOB_FIELDS = ['input', 'output', 'error'];
17
+ /** Thrown from a tool to answer an MCP error result (the agent turns it into `isError`). */
18
+ class DevToolError extends Error {
19
+ }
20
+ /** Call a console handler with a synthetic request; any non-2xx answer becomes a tool error. */
21
+ async function call(handler, deps, req) {
22
+ const response = await handler(deps, { params: {}, query: {}, ...req });
23
+ if (response.status >= 200 && response.status < 300)
24
+ return response.body;
25
+ const body = response.body;
26
+ const message = typeof body?.error === 'string' ? body.error : `HTTP ${response.status}`;
27
+ throw new DevToolError(message);
28
+ }
29
+ function str(input, key) {
30
+ const value = input[key];
31
+ return typeof value === 'string' && value !== '' ? value : undefined;
32
+ }
33
+ function required(input, key) {
34
+ const value = str(input, key);
35
+ if (value === undefined)
36
+ throw new DevToolError(`${key} is required`);
37
+ return value;
38
+ }
39
+ function limitOf(input) {
40
+ const raw = input.limit;
41
+ const n = typeof raw === 'number' && Number.isFinite(raw) ? Math.trunc(raw) : DEFAULT_LIMIT;
42
+ return Math.min(Math.max(n, 1), MAX_LIMIT);
43
+ }
44
+ /** The run filters every listing tool shares, as the console's query string spells them. */
45
+ const RUN_FILTER_PROPERTIES = {
46
+ status: {
47
+ type: 'array',
48
+ items: { type: 'string' },
49
+ description: `Run statuses (any of): ${RUN_STATUSES.join(', ')}.`,
50
+ },
51
+ workflow: { type: 'string', description: 'Workflow name.' },
52
+ tag: { type: 'string', description: 'A tag the run carries.' },
53
+ namespace: { type: 'string', description: 'Worker namespace the run belongs to.' },
54
+ createdAfter: { type: 'string', description: 'Only runs created at or after (ISO date).' },
55
+ createdBefore: { type: 'string', description: 'Only runs created at or before (ISO date).' },
56
+ };
57
+ /** The tool's run filters as the console's `filter[...]` envelope (`{ filter: { status: [...] } }`). */
58
+ function runFilterQuery(input) {
59
+ const filter = {};
60
+ for (const key of Object.keys(RUN_FILTER_PROPERTIES)) {
61
+ const value = input[key];
62
+ if (Array.isArray(value) ? value.length > 0 : value !== undefined && value !== '') {
63
+ filter[key] = Array.isArray(value) ? value.map(String) : String(value);
64
+ }
65
+ }
66
+ return Object.keys(filter).length > 0 ? { filter } : {};
67
+ }
68
+ /** The page after `page`, or `null` on the last one. */
69
+ function nextOf(body) {
70
+ return body.meta.currentPage < body.meta.lastPage ? body.meta.currentPage + 1 : null;
71
+ }
72
+ function pageOf(input) {
73
+ return typeof input.page === 'number' && input.page >= 1 ? Math.trunc(input.page) : 1;
74
+ }
75
+ /** Cut one value to {@link DEV_TOOL_FIELD_BYTES} of JSON, ending with `…(truncated, N bytes)`. */
76
+ export function truncateBlob(value, maxBytes = DEV_TOOL_FIELD_BYTES) {
77
+ if (value === undefined || value === null)
78
+ return value;
79
+ const text = typeof value === 'string' ? value : JSON.stringify(value);
80
+ if (text === undefined)
81
+ return value;
82
+ const size = Buffer.byteLength(text, 'utf8');
83
+ if (size <= maxBytes)
84
+ return value;
85
+ let cut = Buffer.from(text, 'utf8').subarray(0, maxBytes).toString('utf8');
86
+ // A cut through a multi-byte character leaves a replacement char: drop it.
87
+ if (cut.endsWith('�'))
88
+ cut = cut.slice(0, -1);
89
+ return `${cut}…(truncated, ${size} bytes)`;
90
+ }
91
+ function truncateBlobs(row) {
92
+ if (typeof row !== 'object' || row === null || Array.isArray(row))
93
+ return row;
94
+ const out = { ...row };
95
+ for (const key of BLOB_FIELDS)
96
+ if (key in out)
97
+ out[key] = truncateBlob(out[key]);
98
+ return out;
99
+ }
100
+ /** Read a dotted path (`run.input`, `timeline.2.output`) out of a run detail. */
101
+ function pick(body, path) {
102
+ let cursor = body;
103
+ for (const part of path.split('.')) {
104
+ if (cursor === null || typeof cursor !== 'object')
105
+ return undefined;
106
+ if (!Object.hasOwn(cursor, part))
107
+ return undefined;
108
+ cursor = cursor[part];
109
+ }
110
+ return cursor;
111
+ }
112
+ /** Whether the port answers `method` (capability, not access). Errors resolving it hide the tool. */
113
+ function supports(options, method) {
114
+ return async () => {
115
+ try {
116
+ const { engine } = await options.deps();
117
+ return typeof engine[method] === 'function';
118
+ }
119
+ catch {
120
+ return false;
121
+ }
122
+ };
123
+ }
124
+ /**
125
+ * The durable console's developer tools: the same handlers (and so the same `redact` hooks) the
126
+ * console's JSON API runs, under `durable_*` names. Reads are listed by default; the actions (retry,
127
+ * cancel, continue, signal, schedule control) only when the app opts in on the dev endpoint.
128
+ */
129
+ export function durableDevTools(options) {
130
+ const audited = (tool, target, caller) => {
131
+ try {
132
+ options.audit?.({ actor: `mcp:${caller.id}`, tool, target });
133
+ }
134
+ catch {
135
+ /* auditing must never break the action */
136
+ }
137
+ };
138
+ return [
139
+ {
140
+ name: 'durable_list_runs',
141
+ kind: 'read',
142
+ description: 'List workflow runs, newest first, as the durable console shows them: id, workflow, status, namespace, tags, created/updated times, recovery attempts and what a suspended run is waiting on. Filters: status, workflow, tag, namespace, created range. Paged: pass `next` back as `page`. Returns { items, next }.',
143
+ input: {
144
+ type: 'object',
145
+ properties: {
146
+ ...RUN_FILTER_PROPERTIES,
147
+ page: { type: 'integer', minimum: 1, description: '1-based page (default 1).' },
148
+ limit: {
149
+ type: 'integer',
150
+ minimum: 1,
151
+ maximum: MAX_LIMIT,
152
+ description: 'Rows (default 20).',
153
+ },
154
+ },
155
+ },
156
+ run: async (input, tc) => {
157
+ const body = (await call(listRuns, await options.deps(tc.ctx), {
158
+ query: {
159
+ ...runFilterQuery(input),
160
+ page: String(pageOf(input)),
161
+ size: String(limitOf(input)),
162
+ },
163
+ }));
164
+ return { items: body.data, next: nextOf(body) };
165
+ },
166
+ },
167
+ {
168
+ name: 'durable_get_run',
169
+ kind: 'read',
170
+ description: "One run's detail: the run (input, output, error), its step timeline, children, summarized fans and lifecycle links. Input, output and error fields over 4 KB are cut; pass `field` (e.g. `run.input`, `timeline.3.output`) to read one in full. `full: true` lists every member of wide fans.",
171
+ input: {
172
+ type: 'object',
173
+ properties: {
174
+ id: { type: 'string', description: 'Run id.' },
175
+ full: { type: 'boolean', description: 'Every fan member instead of fan summaries.' },
176
+ field: {
177
+ type: 'string',
178
+ description: 'A dotted path to return in full instead of the detail, e.g. `run.output`.',
179
+ },
180
+ },
181
+ required: ['id'],
182
+ },
183
+ run: async (input, tc) => {
184
+ const id = required(input, 'id');
185
+ const body = (await call(getRun, await options.deps(tc.ctx), {
186
+ params: { id },
187
+ query: input.full === true ? { full: 'true' } : {},
188
+ }));
189
+ const field = str(input, 'field');
190
+ if (field !== undefined) {
191
+ const value = pick(body, field);
192
+ if (value === undefined)
193
+ throw new DevToolError(`run ${id} has no field "${field}"`);
194
+ return { id, field, value };
195
+ }
196
+ const timeline = Array.isArray(body.timeline) ? body.timeline.map(truncateBlobs) : [];
197
+ const fans = Array.isArray(body.fans)
198
+ ? body.fans.map((fan) => ({
199
+ ...fan,
200
+ failures: Array.isArray(fan.failures) ? fan.failures.map(truncateBlobs) : [],
201
+ }))
202
+ : undefined;
203
+ return {
204
+ ...body,
205
+ run: truncateBlobs(body.run),
206
+ timeline,
207
+ ...(fans ? { fans } : {}),
208
+ };
209
+ },
210
+ },
211
+ {
212
+ name: 'durable_list_fan_members',
213
+ kind: 'read',
214
+ description: "One page of a wide fan's member steps (a fan `durable_get_run` summarized), in order. Paged: pass `next` back as `page`. Returns { items, next, total }.",
215
+ input: {
216
+ type: 'object',
217
+ properties: {
218
+ id: { type: 'string', description: 'Run id.' },
219
+ group: { type: 'string', description: 'The fan group, from the run detail `fans`.' },
220
+ failed: { type: 'boolean', description: 'Only failed members.' },
221
+ page: { type: 'integer', minimum: 1, description: '1-based page (default 1).' },
222
+ limit: {
223
+ type: 'integer',
224
+ minimum: 1,
225
+ maximum: MAX_LIMIT,
226
+ description: 'Rows (default 20).',
227
+ },
228
+ },
229
+ required: ['id', 'group'],
230
+ },
231
+ run: async (input, tc) => {
232
+ const body = (await call(getFanMembers, await options.deps(tc.ctx), {
233
+ params: { id: required(input, 'id'), group: required(input, 'group') },
234
+ query: {
235
+ page: String(pageOf(input)),
236
+ size: String(limitOf(input)),
237
+ ...(input.failed === true ? { filter: { status: 'failed' } } : {}),
238
+ },
239
+ }));
240
+ return {
241
+ items: body.data.map(truncateBlobs),
242
+ next: nextOf(body),
243
+ total: body.meta.total,
244
+ };
245
+ },
246
+ },
247
+ {
248
+ name: 'durable_count_runs_by',
249
+ kind: 'read',
250
+ description: "Count runs by one field (status, workflow, namespace, tag, `attr` for search-attribute keys, `attr.<key>` for one key's values) over the runs matching the filters. Returns { field, values: [{ value, count }] }.",
251
+ input: {
252
+ type: 'object',
253
+ properties: {
254
+ field: {
255
+ type: 'string',
256
+ description: 'status | workflow | namespace | tag | attr | attr.<key>',
257
+ },
258
+ ...RUN_FILTER_PROPERTIES,
259
+ limit: {
260
+ type: 'integer',
261
+ minimum: 1,
262
+ maximum: MAX_LIMIT,
263
+ description: 'Values (default 20).',
264
+ },
265
+ },
266
+ required: ['field'],
267
+ },
268
+ run: async (input, tc) => {
269
+ const field = required(input, 'field');
270
+ const values = await call(runValues, await options.deps(tc.ctx), {
271
+ query: { ...runFilterQuery(input), field, limit: String(limitOf(input)) },
272
+ });
273
+ return { field, values };
274
+ },
275
+ },
276
+ {
277
+ name: 'durable_get_health',
278
+ kind: 'read',
279
+ description: 'Fleet health: per worker group, the queue backlog and live workers (stalled = backlog with no worker), how many runs are pending, dead or blocked, and the protocol-compatibility panel when available.',
280
+ input: { type: 'object', properties: {} },
281
+ run: async (_input, tc) => {
282
+ const { groups, runs } = await fleetHealth(await options.deps(tc.ctx));
283
+ let compatBody;
284
+ if (options.compat) {
285
+ try {
286
+ compatBody = await options.compat();
287
+ }
288
+ catch {
289
+ compatBody = undefined;
290
+ }
291
+ }
292
+ return {
293
+ groups,
294
+ ...(runs ? { runs } : {}),
295
+ ...(compatBody !== undefined ? { compat: compatBody } : {}),
296
+ };
297
+ },
298
+ },
299
+ {
300
+ name: 'durable_list_workers',
301
+ kind: 'read',
302
+ description: "Worker groups with every live worker's heartbeat (instance id, last beat, namespace) and the queue depth.",
303
+ input: { type: 'object', properties: {} },
304
+ run: async (_input, tc) => {
305
+ const body = (await call(async (d) => workers(d), await options.deps(tc.ctx), {}));
306
+ return { items: body.data };
307
+ },
308
+ },
309
+ {
310
+ name: 'durable_list_schedules',
311
+ kind: 'read',
312
+ description: 'Cron/interval schedules: key, workflow, cron or interval, paused (and whether by a runtime override), last and next fire, and the current window run status. Paged: pass `next` back as `page`. Returns { items, next }.',
313
+ input: {
314
+ type: 'object',
315
+ properties: {
316
+ page: { type: 'integer', minimum: 1, description: '1-based page (default 1).' },
317
+ limit: {
318
+ type: 'integer',
319
+ minimum: 1,
320
+ maximum: MAX_LIMIT,
321
+ description: 'Rows (default 20).',
322
+ },
323
+ },
324
+ },
325
+ available: supports(options, 'listSchedules'),
326
+ run: async (input, tc) => {
327
+ const body = (await call(listSchedules, await options.deps(tc.ctx), {
328
+ query: { page: String(pageOf(input)), size: String(limitOf(input)) },
329
+ }));
330
+ return { items: body.data, next: nextOf(body) };
331
+ },
332
+ },
333
+ {
334
+ name: 'durable_get_run_event',
335
+ kind: 'read',
336
+ description: 'The latest value a run published for `key` with ctx.setEvent (a live query, no side effect). Cut to 4 KB.',
337
+ input: {
338
+ type: 'object',
339
+ properties: {
340
+ id: { type: 'string', description: 'Run id.' },
341
+ key: { type: 'string', description: 'The event key.' },
342
+ },
343
+ required: ['id', 'key'],
344
+ },
345
+ available: supports(options, 'getEvent'),
346
+ run: async (input, tc) => {
347
+ const body = (await call(getRunEvent, await options.deps(tc.ctx), {
348
+ params: { id: required(input, 'id'), key: required(input, 'key') },
349
+ }));
350
+ return 'value' in body ? { ...body, value: truncateBlob(body.value) } : body;
351
+ },
352
+ },
353
+ {
354
+ name: 'durable_retry_run',
355
+ kind: 'action',
356
+ description: 'Re-enqueue a failed or stuck run: completed steps replay from their checkpoints. Returns the run status after enqueueing.',
357
+ input: {
358
+ type: 'object',
359
+ properties: { id: { type: 'string', description: 'Run id.' } },
360
+ required: ['id'],
361
+ },
362
+ run: async (input, tc) => {
363
+ const id = required(input, 'id');
364
+ audited('durable_retry_run', id, tc.caller);
365
+ return call(retryRun, await options.deps(tc.ctx), { params: { id } });
366
+ },
367
+ },
368
+ {
369
+ name: 'durable_cancel_run',
370
+ kind: 'action',
371
+ destructive: true,
372
+ description: 'Cancel a run. `compensate: true` also runs the saga undo of its completed steps. Returns the run status.',
373
+ input: {
374
+ type: 'object',
375
+ properties: {
376
+ id: { type: 'string', description: 'Run id.' },
377
+ compensate: { type: 'boolean', description: 'Run the compensations (saga undo).' },
378
+ },
379
+ required: ['id'],
380
+ },
381
+ run: async (input, tc) => {
382
+ const id = required(input, 'id');
383
+ audited('durable_cancel_run', id, tc.caller);
384
+ return call(cancelRun, await options.deps(tc.ctx), {
385
+ params: { id },
386
+ body: { compensate: input.compensate === true },
387
+ });
388
+ },
389
+ },
390
+ {
391
+ name: 'durable_continue_run',
392
+ kind: 'action',
393
+ description: 'Resume a run paused at a ctx.breakpoint(). Errors when it is not paused at one.',
394
+ input: {
395
+ type: 'object',
396
+ properties: { id: { type: 'string', description: 'Run id.' } },
397
+ required: ['id'],
398
+ },
399
+ run: async (input, tc) => {
400
+ const id = required(input, 'id');
401
+ audited('durable_continue_run', id, tc.caller);
402
+ return call(continueRun, await options.deps(tc.ctx), { params: { id } });
403
+ },
404
+ },
405
+ {
406
+ name: 'durable_signal_run',
407
+ kind: 'action',
408
+ description: 'Deliver a signal to a run waiting on `token` (ctx.waitForSignal). `payload` is a JSON string. Refused when the run is not waiting on that token, unless `force: true`; the error lists the tokens it waits on.',
409
+ input: {
410
+ type: 'object',
411
+ properties: {
412
+ id: { type: 'string', description: 'Run id.' },
413
+ token: { type: 'string', description: 'The signal token the run waits on.' },
414
+ payload: { type: 'string', description: 'The payload, as JSON (omit for none).' },
415
+ force: { type: 'boolean', description: 'Buffer it even if the run is not waiting yet.' },
416
+ },
417
+ required: ['id', 'token'],
418
+ },
419
+ available: supports(options, 'signal'),
420
+ run: async (input, tc) => {
421
+ const id = required(input, 'id');
422
+ const token = required(input, 'token');
423
+ let payload;
424
+ const raw = str(input, 'payload');
425
+ if (raw !== undefined) {
426
+ try {
427
+ payload = JSON.parse(raw);
428
+ }
429
+ catch {
430
+ throw new DevToolError('payload must be valid JSON');
431
+ }
432
+ }
433
+ audited('durable_signal_run', id, tc.caller);
434
+ return call(signalRun, await options.deps(tc.ctx), {
435
+ params: { id },
436
+ body: {
437
+ token,
438
+ ...(payload !== undefined ? { payload } : {}),
439
+ force: input.force === true,
440
+ },
441
+ });
442
+ },
443
+ },
444
+ {
445
+ name: 'durable_trigger_schedule',
446
+ kind: 'action',
447
+ description: "Fire a schedule's current window now (idempotent: the window's run id is fixed). Returns the run status.",
448
+ input: {
449
+ type: 'object',
450
+ properties: { key: { type: 'string', description: 'Schedule key.' } },
451
+ required: ['key'],
452
+ },
453
+ available: supports(options, 'triggerSchedule'),
454
+ run: async (input, tc) => {
455
+ const key = required(input, 'key');
456
+ audited('durable_trigger_schedule', key, tc.caller);
457
+ return call(scheduleAction, await options.deps(tc.ctx), {
458
+ params: { key, action: 'trigger' },
459
+ });
460
+ },
461
+ },
462
+ {
463
+ name: 'durable_pause_schedule',
464
+ kind: 'action',
465
+ description: 'Pause a schedule fleet-wide (`paused: false` resumes it). A runtime override: the next deploy goes back to the config.',
466
+ input: {
467
+ type: 'object',
468
+ properties: {
469
+ key: { type: 'string', description: 'Schedule key.' },
470
+ paused: { type: 'boolean', description: 'true pauses (default), false resumes.' },
471
+ },
472
+ required: ['key'],
473
+ },
474
+ available: supports(options, 'setSchedulePaused'),
475
+ run: async (input, tc) => {
476
+ const key = required(input, 'key');
477
+ const action = input.paused === false ? 'resume' : 'pause';
478
+ audited('durable_pause_schedule', key, tc.caller);
479
+ return call(scheduleAction, await options.deps(tc.ctx), { params: { key, action } });
480
+ },
481
+ },
482
+ ];
483
+ }
484
+ /**
485
+ * Register the durable console's tools into the app's dev-tools hub, when one is bound (the app
486
+ * registered `@adonis-agora/agent/mcp_provider`). Returns whether it registered.
487
+ */
488
+ export async function registerDurableDevTools(container, options) {
489
+ if (!container.hasBinding(DEV_TOOLS_BINDING))
490
+ return false;
491
+ const hub = (await container.make(DEV_TOOLS_BINDING));
492
+ if (hub?.version !== 1 || typeof hub.register !== 'function')
493
+ return false;
494
+ hub.register({
495
+ lib: 'durable',
496
+ title: 'Durable workflows',
497
+ authorize: options.authorize,
498
+ tools: durableDevTools(options),
499
+ });
500
+ return true;
501
+ }
502
+ //# sourceMappingURL=dev_tools.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"dev_tools.js","sourceRoot":"","sources":["../../../src/dashboard/dev_tools.ts"],"names":[],"mappings":"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"}
@@ -33,7 +33,7 @@ export interface RecordedBlock {
33
33
  * - `controlPlaneDescriptor()` is the CP side the events were negotiated against.
34
34
  *
35
35
  * Bounded by an LRU-ish cap on the per-run map (oldest evicted) so a long-lived control plane never
36
- * grows this without bound. Store-role only: a `tenant` pod owns no engine to subscribe to, so its
36
+ * grows this without bound. Store-topology only: a `tenant` pod owns no engine to subscribe to, so its
37
37
  * panel shows `blocked` runs (reason from `run.error.message`) without the enriched delta.
38
38
  */
39
39
  export declare class BlockedDiagnosticsRecorder {
@@ -10,7 +10,7 @@
10
10
  * - `controlPlaneDescriptor()` is the CP side the events were negotiated against.
11
11
  *
12
12
  * Bounded by an LRU-ish cap on the per-run map (oldest evicted) so a long-lived control plane never
13
- * grows this without bound. Store-role only: a `tenant` pod owns no engine to subscribe to, so its
13
+ * grows this without bound. Store-topology only: a `tenant` pod owns no engine to subscribe to, so its
14
14
  * panel shows `blocked` runs (reason from `run.error.message`) without the enriched delta.
15
15
  */
16
16
  export class BlockedDiagnosticsRecorder {
@@ -4,7 +4,7 @@ import type { RepublishLifecycleResult, RepublishLifecycleTarget, WorkflowLifecy
4
4
  import type { RunGateway } from '../run-gateway/interface.js';
5
5
  import type { DashboardEngine } from './handlers.js';
6
6
  /**
7
- * The slice of {@link import('../engine.js').WorkflowEngine} a store role's {@link
7
+ * The slice of {@link import('../engine.js').WorkflowEngine} a store topology's {@link
8
8
  * storeDashboardEngine} delegates to. Declared structurally (not by importing the concrete class) so
9
9
  * this module depends only on the verbs it forwards — mirrors `run-gateway/store-run-gateway.ts`'s
10
10
  * `RunGatewayEngine` pattern. The real `WorkflowEngine` is structurally assignable to this (every
@@ -79,7 +79,7 @@ export declare function storeDashboardEngine(engine: StoreEngineLike): Dashboard
79
79
  * - `requeue` → the gateway's `redispatchPending` (the operator recovery verb; the extra
80
80
  * `redispatched` count on the result is a harmless superset of `RunResult`);
81
81
  * - `subscribe(runId, onEvent)` → the gateway's own per-run `subscribe` (already scoped, no filtering
82
- * needed here — unlike the store-role adapter above).
82
+ * needed here — unlike the store-topology adapter above).
83
83
  *
84
84
  * `getRunChildren` (parent→child fan-out) rides the P4 read surface too (a `getRunChildren`
85
85
  * `RunRequestKind` verb), so a store-less tenant pod's run detail view lists children round-tripped over
@@ -94,23 +94,23 @@ export declare function storeDashboardEngine(engine: StoreEngineLike): Dashboard
94
94
  * and the list rows carry no `waiting` stamp.
95
95
  */
96
96
  export declare function gatewayDashboardEngine(gateway: RunGateway): DashboardEngine;
97
- /** The minimal container surface {@link dashboardEngineForRole} resolves bindings through. */
97
+ /** The minimal container surface {@link dashboardEngineForTopology} resolves bindings through. */
98
98
  export interface DashboardContainer {
99
99
  make(key: unknown): Promise<unknown>;
100
100
  }
101
101
  /**
102
- * Resolve the dashboard's read/control port for the active durable `role` (design §5) — the single seam
102
+ * Resolve the dashboard's read/control port for the active durable `topology` (design §5) — the single seam
103
103
  * that makes the dashboard store-agnostic:
104
104
  *
105
105
  * - **`tenant`** (store-less): resolve the {@link DURABLE_RUN_GATEWAY} token (a `ProxyRunGateway`) and
106
106
  * adapt it — the engine binding is deliberately ABSENT on a tenant pod (structural isolation), so we
107
107
  * MUST NOT reach for `WorkflowEngine` here;
108
- * - **store roles** (`standalone`/`control-plane`): resolve the concrete `WorkflowEngine` and adapt it
108
+ * - **store topologies** (`standalone`/`control-plane`): resolve the concrete `WorkflowEngine` and adapt it
109
109
  * via {@link storeDashboardEngine} — every verb still forwards 1:1, just through an explicit wrapper
110
110
  * instead of a raw cast (see that function's doc for why).
111
111
  *
112
112
  * `engineToken` is injected (rather than imported) so the module doesn't hard-depend on the engine class
113
113
  * for the tenant path — the tenant branch never touches it.
114
114
  */
115
- export declare function dashboardEngineForRole(role: 'standalone' | 'control-plane' | 'tenant', container: DashboardContainer, engineToken: unknown): Promise<DashboardEngine>;
115
+ export declare function dashboardEngineForTopology(durableTopology: 'standalone' | 'control-plane' | 'tenant', container: DashboardContainer, engineToken: unknown): Promise<DashboardEngine>;
116
116
  //# sourceMappingURL=gateway-adapter.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"gateway-adapter.d.ts","sourceRoot":"","sources":["../../../src/dashboard/gateway-adapter.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"gateway-adapter.d.ts","sourceRoot":"","sources":["../../../src/dashboard/gateway-adapter.ts"],"names":[],"mappings":"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"}
@@ -94,7 +94,7 @@ export function storeDashboardEngine(engine) {
94
94
  * - `requeue` → the gateway's `redispatchPending` (the operator recovery verb; the extra
95
95
  * `redispatched` count on the result is a harmless superset of `RunResult`);
96
96
  * - `subscribe(runId, onEvent)` → the gateway's own per-run `subscribe` (already scoped, no filtering
97
- * needed here — unlike the store-role adapter above).
97
+ * needed here — unlike the store-topology adapter above).
98
98
  *
99
99
  * `getRunChildren` (parent→child fan-out) rides the P4 read surface too (a `getRunChildren`
100
100
  * `RunRequestKind` verb), so a store-less tenant pod's run detail view lists children round-tripped over
@@ -183,21 +183,21 @@ async function orOlder(work, older) {
183
183
  }
184
184
  }
185
185
  /**
186
- * Resolve the dashboard's read/control port for the active durable `role` (design §5) — the single seam
186
+ * Resolve the dashboard's read/control port for the active durable `topology` (design §5) — the single seam
187
187
  * that makes the dashboard store-agnostic:
188
188
  *
189
189
  * - **`tenant`** (store-less): resolve the {@link DURABLE_RUN_GATEWAY} token (a `ProxyRunGateway`) and
190
190
  * adapt it — the engine binding is deliberately ABSENT on a tenant pod (structural isolation), so we
191
191
  * MUST NOT reach for `WorkflowEngine` here;
192
- * - **store roles** (`standalone`/`control-plane`): resolve the concrete `WorkflowEngine` and adapt it
192
+ * - **store topologies** (`standalone`/`control-plane`): resolve the concrete `WorkflowEngine` and adapt it
193
193
  * via {@link storeDashboardEngine} — every verb still forwards 1:1, just through an explicit wrapper
194
194
  * instead of a raw cast (see that function's doc for why).
195
195
  *
196
196
  * `engineToken` is injected (rather than imported) so the module doesn't hard-depend on the engine class
197
197
  * for the tenant path — the tenant branch never touches it.
198
198
  */
199
- export async function dashboardEngineForRole(role, container, engineToken) {
200
- if (role === 'tenant') {
199
+ export async function dashboardEngineForTopology(durableTopology, container, engineToken) {
200
+ if (durableTopology === 'tenant') {
201
201
  const gateway = (await container.make(DURABLE_RUN_GATEWAY));
202
202
  return gatewayDashboardEngine(gateway);
203
203
  }