@nocobase/app-plugin-agents 0.1.0-beta.2 → 0.1.0-beta.4

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 (194) hide show
  1. package/CHANGELOG.md +123 -0
  2. package/README.md +30 -4
  3. package/dist/client/api/client.d.ts +3 -1
  4. package/dist/client/api/client.d.ts.map +1 -1
  5. package/dist/client/api/client.js +5 -1
  6. package/dist/client/api/client.js.map +1 -1
  7. package/dist/client/components/model-entries.d.ts +12 -3
  8. package/dist/client/components/model-entries.d.ts.map +1 -1
  9. package/dist/client/components/model-entries.js +41 -19
  10. package/dist/client/components/model-entries.js.map +1 -1
  11. package/dist/client/components/variables/variable-dialogs.d.ts +3 -2
  12. package/dist/client/components/variables/variable-dialogs.d.ts.map +1 -1
  13. package/dist/client/components/variables/variable-dialogs.js +18 -8
  14. package/dist/client/components/variables/variable-dialogs.js.map +1 -1
  15. package/dist/client/components/variables/variables-panel.d.ts.map +1 -1
  16. package/dist/client/components/variables/variables-panel.js +3 -1
  17. package/dist/client/components/variables/variables-panel.js.map +1 -1
  18. package/dist/client/lib/agents.d.ts +5 -0
  19. package/dist/client/lib/agents.d.ts.map +1 -1
  20. package/dist/client/lib/agents.js +22 -0
  21. package/dist/client/lib/agents.js.map +1 -1
  22. package/dist/client/lib/model-suggestions.d.ts +28 -0
  23. package/dist/client/lib/model-suggestions.d.ts.map +1 -0
  24. package/dist/client/lib/model-suggestions.js +44 -0
  25. package/dist/client/lib/model-suggestions.js.map +1 -0
  26. package/dist/client/locales/en-US.d.ts +14 -0
  27. package/dist/client/locales/en-US.d.ts.map +1 -1
  28. package/dist/client/locales/en-US.js +14 -0
  29. package/dist/client/locales/en-US.js.map +1 -1
  30. package/dist/client/locales/runtimes.en-US.d.ts +6 -0
  31. package/dist/client/locales/runtimes.en-US.d.ts.map +1 -1
  32. package/dist/client/locales/runtimes.en-US.js +6 -0
  33. package/dist/client/locales/runtimes.en-US.js.map +1 -1
  34. package/dist/client/locales/runtimes.zh-CN.d.ts.map +1 -1
  35. package/dist/client/locales/runtimes.zh-CN.js +6 -0
  36. package/dist/client/locales/runtimes.zh-CN.js.map +1 -1
  37. package/dist/client/locales/zh-CN.d.ts.map +1 -1
  38. package/dist/client/locales/zh-CN.js +14 -0
  39. package/dist/client/locales/zh-CN.js.map +1 -1
  40. package/dist/client/pages/agents/index.d.ts.map +1 -1
  41. package/dist/client/pages/agents/index.js +6 -6
  42. package/dist/client/pages/agents/index.js.map +1 -1
  43. package/dist/client/pages/runtimes/runner-sheet.js +11 -3
  44. package/dist/client/pages/runtimes/runner-sheet.js.map +1 -1
  45. package/dist/database/migrations/.manifest.json +20 -0
  46. package/dist/database/migrations/202610090002_ag_create_run_requests.d.ts +10 -0
  47. package/dist/database/migrations/202610090002_ag_create_run_requests.d.ts.map +1 -0
  48. package/dist/database/migrations/202610090002_ag_create_run_requests.js +105 -0
  49. package/dist/database/migrations/202610090002_ag_create_run_requests.js.map +1 -0
  50. package/dist/database/migrations/202610090003_ag_add_execution_history.d.ts +4 -0
  51. package/dist/database/migrations/202610090003_ag_add_execution_history.d.ts.map +1 -0
  52. package/dist/database/migrations/202610090003_ag_add_execution_history.js +17 -0
  53. package/dist/database/migrations/202610090003_ag_add_execution_history.js.map +1 -0
  54. package/dist/database/migrations/202610090004_ag_add_runner_workspace_usage.d.ts +9 -0
  55. package/dist/database/migrations/202610090004_ag_add_runner_workspace_usage.d.ts.map +1 -0
  56. package/dist/database/migrations/202610090004_ag_add_runner_workspace_usage.js +22 -0
  57. package/dist/database/migrations/202610090004_ag_add_runner_workspace_usage.js.map +1 -0
  58. package/dist/database/migrations/202610090005_ag_add_runner_variables.d.ts +10 -0
  59. package/dist/database/migrations/202610090005_ag_add_runner_variables.d.ts.map +1 -0
  60. package/dist/database/migrations/202610090005_ag_add_runner_variables.js +36 -0
  61. package/dist/database/migrations/202610090005_ag_add_runner_variables.js.map +1 -0
  62. package/dist/database/migrations/202610100001_ag_index_run_event_types.d.ts +4 -0
  63. package/dist/database/migrations/202610100001_ag_index_run_event_types.d.ts.map +1 -0
  64. package/dist/database/migrations/202610100001_ag_index_run_event_types.js +17 -0
  65. package/dist/database/migrations/202610100001_ag_index_run_event_types.js.map +1 -0
  66. package/dist/package.json +1 -1
  67. package/dist/server/composition.d.ts +6 -1
  68. package/dist/server/composition.d.ts.map +1 -1
  69. package/dist/server/composition.js +6 -1
  70. package/dist/server/composition.js.map +1 -1
  71. package/dist/server/core/agents/agent.service.d.ts.map +1 -1
  72. package/dist/server/core/agents/agent.service.js +4 -1
  73. package/dist/server/core/agents/agent.service.js.map +1 -1
  74. package/dist/server/core/consultations/consultation.service.d.ts.map +1 -1
  75. package/dist/server/core/consultations/consultation.service.js +5 -2
  76. package/dist/server/core/consultations/consultation.service.js.map +1 -1
  77. package/dist/server/core/conversations/conversation.service.d.ts.map +1 -1
  78. package/dist/server/core/conversations/conversation.service.js +5 -5
  79. package/dist/server/core/conversations/conversation.service.js.map +1 -1
  80. package/dist/server/core/runs/claim.d.ts +4 -1
  81. package/dist/server/core/runs/claim.d.ts.map +1 -1
  82. package/dist/server/core/runs/claim.js +46 -2
  83. package/dist/server/core/runs/claim.js.map +1 -1
  84. package/dist/server/core/runs/execution-view.d.ts +10 -0
  85. package/dist/server/core/runs/execution-view.d.ts.map +1 -0
  86. package/dist/server/core/runs/execution-view.js +25 -0
  87. package/dist/server/core/runs/execution-view.js.map +1 -0
  88. package/dist/server/core/runs/execution.d.ts +13 -0
  89. package/dist/server/core/runs/execution.d.ts.map +1 -0
  90. package/dist/server/core/runs/execution.js +85 -0
  91. package/dist/server/core/runs/execution.js.map +1 -0
  92. package/dist/server/core/runs/index.d.ts +4 -2
  93. package/dist/server/core/runs/index.d.ts.map +1 -1
  94. package/dist/server/core/runs/index.js +3 -1
  95. package/dist/server/core/runs/index.js.map +1 -1
  96. package/dist/server/core/runs/lifecycle.d.ts.map +1 -1
  97. package/dist/server/core/runs/lifecycle.js +29 -2
  98. package/dist/server/core/runs/lifecycle.js.map +1 -1
  99. package/dist/server/core/runs/ports.d.ts +20 -0
  100. package/dist/server/core/runs/ports.d.ts.map +1 -1
  101. package/dist/server/core/runs/ports.js.map +1 -1
  102. package/dist/server/core/runs/preview.d.ts.map +1 -1
  103. package/dist/server/core/runs/preview.js +2 -0
  104. package/dist/server/core/runs/preview.js.map +1 -1
  105. package/dist/server/core/runs/run-requests.d.ts +217 -0
  106. package/dist/server/core/runs/run-requests.d.ts.map +1 -0
  107. package/dist/server/core/runs/run-requests.js +471 -0
  108. package/dist/server/core/runs/run-requests.js.map +1 -0
  109. package/dist/server/core/runs/run.service.d.ts +62 -7
  110. package/dist/server/core/runs/run.service.d.ts.map +1 -1
  111. package/dist/server/core/runs/run.service.js +209 -38
  112. package/dist/server/core/runs/run.service.js.map +1 -1
  113. package/dist/server/core/runs/run.store.d.ts +7 -1
  114. package/dist/server/core/runs/run.store.d.ts.map +1 -1
  115. package/dist/server/core/runs/run.store.js +33 -0
  116. package/dist/server/core/runs/run.store.js.map +1 -1
  117. package/dist/server/core/runs/runner-view.d.ts +4 -3
  118. package/dist/server/core/runs/runner-view.d.ts.map +1 -1
  119. package/dist/server/core/runs/runner-view.js +7 -3
  120. package/dist/server/core/runs/runner-view.js.map +1 -1
  121. package/dist/server/core/runs/transitions.d.ts.map +1 -1
  122. package/dist/server/core/runs/transitions.js +3 -0
  123. package/dist/server/core/runs/transitions.js.map +1 -1
  124. package/dist/server/core/variables/variable.service.d.ts +18 -3
  125. package/dist/server/core/variables/variable.service.d.ts.map +1 -1
  126. package/dist/server/core/variables/variable.service.js +130 -38
  127. package/dist/server/core/variables/variable.service.js.map +1 -1
  128. package/dist/server/kernel/errors.d.ts +1 -1
  129. package/dist/server/kernel/errors.d.ts.map +1 -1
  130. package/dist/server/kernel/errors.js +1 -0
  131. package/dist/server/kernel/errors.js.map +1 -1
  132. package/dist/server/kernel/events.d.ts +23 -8
  133. package/dist/server/kernel/events.d.ts.map +1 -1
  134. package/dist/server/kernel/events.js.map +1 -1
  135. package/dist/server/routes/admin.d.ts.map +1 -1
  136. package/dist/server/routes/admin.js +36 -12
  137. package/dist/server/routes/admin.js.map +1 -1
  138. package/dist/server/routes/index.d.ts.map +1 -1
  139. package/dist/server/routes/index.js +5 -0
  140. package/dist/server/routes/index.js.map +1 -1
  141. package/dist/server/routes/run-requests.d.ts +6 -0
  142. package/dist/server/routes/run-requests.d.ts.map +1 -0
  143. package/dist/server/routes/run-requests.js +216 -0
  144. package/dist/server/routes/run-requests.js.map +1 -0
  145. package/dist/server/routes/runners/runner.d.ts.map +1 -1
  146. package/dist/server/routes/runners/runner.js +21 -3
  147. package/dist/server/routes/runners/runner.js.map +1 -1
  148. package/dist/server/routes/schemas.d.ts +29 -2
  149. package/dist/server/routes/schemas.d.ts.map +1 -1
  150. package/dist/server/routes/schemas.js +208 -2
  151. package/dist/server/routes/schemas.js.map +1 -1
  152. package/dist/server/runners/index.d.ts +1 -0
  153. package/dist/server/runners/index.d.ts.map +1 -1
  154. package/dist/server/runners/index.js +1 -0
  155. package/dist/server/runners/index.js.map +1 -1
  156. package/dist/server/runners/runner.service.d.ts +3 -3
  157. package/dist/server/runners/runner.service.d.ts.map +1 -1
  158. package/dist/server/runners/runner.service.js +13 -8
  159. package/dist/server/runners/runner.service.js.map +1 -1
  160. package/dist/server/runners/runner.store.d.ts +7 -1
  161. package/dist/server/runners/runner.store.d.ts.map +1 -1
  162. package/dist/server/runners/runner.store.js +69 -4
  163. package/dist/server/runners/runner.store.js.map +1 -1
  164. package/dist/server/runners/sweeper.d.ts +5 -0
  165. package/dist/server/runners/sweeper.d.ts.map +1 -1
  166. package/dist/server/runners/sweeper.js +4 -2
  167. package/dist/server/runners/sweeper.js.map +1 -1
  168. package/dist/server/runners/workspaces.d.ts +30 -0
  169. package/dist/server/runners/workspaces.d.ts.map +1 -0
  170. package/dist/server/runners/workspaces.js +135 -0
  171. package/dist/server/runners/workspaces.js.map +1 -0
  172. package/dist/server/tokens.d.ts +3 -2
  173. package/dist/server/tokens.d.ts.map +1 -1
  174. package/dist/server/tokens.js +1 -0
  175. package/dist/server/tokens.js.map +1 -1
  176. package/dist/server/vendor/just-bash.js +117 -117
  177. package/dist/shared/agents.d.ts +2 -0
  178. package/dist/shared/agents.d.ts.map +1 -1
  179. package/dist/shared/agents.js.map +1 -1
  180. package/dist/shared/runners.d.ts +47 -1
  181. package/dist/shared/runners.d.ts.map +1 -1
  182. package/dist/shared/runners.js.map +1 -1
  183. package/dist/shared/runs.d.ts +123 -0
  184. package/dist/shared/runs.d.ts.map +1 -1
  185. package/dist/shared/runs.js +15 -0
  186. package/dist/shared/runs.js.map +1 -1
  187. package/dist/shared/variables.d.ts +10 -0
  188. package/dist/shared/variables.d.ts.map +1 -1
  189. package/dist/shared/variables.js +5 -1
  190. package/dist/shared/variables.js.map +1 -1
  191. package/package.json +11 -11
  192. package/skills/nocobase-app-plugin-agents/references/extension-points.md +3 -2
  193. package/skills/nocobase-app-plugin-agents/references/runners.md +8 -0
  194. package/skills/nocobase-app-plugin-agents/references/verification-and-troubleshooting.md +4 -0
@@ -1 +1 @@
1
- {"version":3,"file":"run.service.d.ts","sourceRoot":"","sources":["../../../../server/core/runs/run.service.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AACH,OAAO,EAGL,KAAK,QAAQ,EAGb,KAAK,QAAQ,EACb,KAAK,YAAY,EACjB,KAAK,aAAa,EAClB,KAAK,OAAO,EACZ,KAAK,SAAS,EACf,MAAM,0BAA0B,CAAC;AAClC,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,4BAA4B,CAAC;AACzD,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,cAAc,CAAC;AAGvD,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,2BAA2B,CAAC;AAC1D,OAAO,KAAK,EACV,GAAG,EACH,SAAS,EACT,YAAY,EAEZ,QAAQ,EACR,aAAa,EACd,MAAM,yBAAyB,CAAC;AACjC,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,uBAAuB,CAAC;AAQnD,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,qBAAqB,CAAC;AACpD,OAAO,KAAK,EAAE,EAAE,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAC;AAEvD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAEvD,OAAO,EAAwB,KAAK,gBAAgB,EAAE,MAAM,iBAAiB,CAAC;AAsB9E,OAAO,EAAwB,KAAK,eAAe,EAAE,MAAM,YAAY,CAAC;AACxE,OAAO,EAAgB,KAAK,eAAe,EAAE,MAAM,eAAe,CAAC;AACnE,OAAO,EAAa,KAAK,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAGlE,eAAO,MAAM,cAAc,SAAS,CAAC;AAErC,MAAM,WAAW,QAAQ;IACvB,QAAQ,CAAC,IAAI,EAAE,YAAY,CAAC;IAC5B,QAAQ,CAAC,KAAK,EAAE,QAAQ,CAAC;IACzB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,OAAO,CAAC,EAAE,OAAO,CAAC;CAC5B;AAED,MAAM,WAAW,cAAc;IAC7B,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,OAAO,EAAE;QAAE,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAA;KAAE,CAAC;IACjE,oEAAoE;IACpE,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,CAAC;IAC9B,2DAA2D;IAC3D,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACrC,8GAA8G;IAC9G,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAC3B;;;OAGG;IACH,QAAQ,CAAC,MAAM,CAAC,EAAE,IAAI,GAAG,MAAM,CAAC;IAChC,+FAA+F;IAC/F,QAAQ,CAAC,QAAQ,CAAC,EAAE,SAAS,aAAa,EAAE,CAAC;IAC7C;;;OAGG;IACH,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,CAAC;IAC9B,uEAAuE;IACvE,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,CAAC;IAC9B,QAAQ,CAAC,KAAK,EAAE,QAAQ,CAAC;CAC1B;AAED,MAAM,WAAW,aAAa;IAC5B,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,yFAAyF;IACzF,QAAQ,CAAC,OAAO,EAAE,SAAS,GAAG,QAAQ,GAAG,UAAU,CAAC;IACpD,QAAQ,CAAC,MAAM,EAAE,SAAS,CAAC;IAC3B,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;CAC1B;AAED,MAAM,WAAW,SAAS;IACxB,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,CAAC;IAC9B,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,OAAO,CAAC,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,MAAM,CAAC,EAAE,SAAS,CAAC;IAC5B,kDAAkD;IAClD,QAAQ,CAAC,eAAe,CAAC,EAAE,MAAM,CAAC;IAClC,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC;IACxB,kFAAkF;IAClF,QAAQ,CAAC,MAAM,CAAC,EAAE;QAAE,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAA;KAAE,CAAC;CACvE;AAED,MAAM,WAAW,UAAU;IACzB,8GAA8G;IAC9G,OAAO,CAAC,OAAO,EAAE,cAAc,EAAE,KAAK,CAAC,EAAE,EAAE,GAAG,OAAO,CAAC,aAAa,CAAC,CAAC;IACrE,8CAA8C;IAC9C,QAAQ,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,QAAQ,EAAE,KAAK,CAAC,EAAE,EAAE,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;IACtE,0GAA0G;IAC1G,MAAM,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,EAAE,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC;IAClE;;;OAGG;IACH,cAAc,CACZ,OAAO,EAAE;QACP,+DAA+D;QAC/D,QAAQ,CAAC,OAAO,CAAC,EAAE;YAAE,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;YAAC,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAA;SAAE,CAAC;QAClE,QAAQ,CAAC,OAAO,CAAC,EAAE,MAAM,CAAC;QAC1B,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,CAAC;QAC9B,QAAQ,CAAC,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;QACjC,uDAAuD;QACvD,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC;KAC1B,EACD,KAAK,CAAC,EAAE,EAAE,GACT,OAAO,CAAC,GAAG,EAAE,CAAC,CAAC;IAClB,2GAA2G;IAC3G,KAAK,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC;IACrD,GAAG,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC;IACjC,MAAM,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,SAAS,CAAC,CAAC;IAC1C,IAAI,CAAC,MAAM,EAAE,SAAS,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC,CAAC;IACxC,+GAA+G;IAC/G,SAAS,CAAC,WAAW,EAAE,MAAM,EAAE,UAAU,EAAE,SAAS,MAAM,EAAE,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC,CAAC;IAC9E;;;;OAIG;IACH,QAAQ,CAAC,KAAK,EAAE,aAAa,GAAG,OAAO,CAAC,QAAQ,CAAC,CAAC;IAClD,MAAM,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,YAAY,CAAC,CAAC;IAC9E,qEAAqE;IACrE,iBAAiB,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,gBAAgB,CAAC,CAAC;IAC5D,IAAI,CAAC,QAAQ,EAAE,gBAAgB,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;IACnD,gFAAgF;IAChF,KAAK,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,QAAQ,CAAC,CAAC;IACxC,gGAAgG;IAChG,cAAc,CACZ,OAAO,EAAE;QAAE,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAA;KAAE,EACvD,QAAQ,EAAE,MAAM,GACf,OAAO,CAAC,IAAI,CAAC,CAAC;IACjB,kDAAkD;IAClD,OAAO,CACL,QAAQ,EAAE,gBAAgB,GACzB,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC;IAC9C,wHAAwH;IACxH,MAAM,CACJ,IAAI,EAAE,kBAAkB,EACxB,OAAO,EAAE;QAAE,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAA;KAAE,EACvD,OAAO,CAAC,EAAE,MAAM,GACf,OAAO,CAAC,GAAG,EAAE,CAAC,CAAC;IAClB,iFAAiF;IACjF,aAAa,CAAC,IAAI,EAAE,kBAAkB,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,QAAQ,EAAE,CAAC,CAAC;IAC5E,uHAAuH;IACvH,WAAW,CACT,IAAI,EAAE,kBAAkB,EACxB,OAAO,EAAE;QAAE,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAA;KAAE,EACvD,KAAK,EAAE,IAAI,GACV,OAAO,CACR;QACE,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;QACzB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;QACtB,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;KAC3C,EAAE,CACJ,CAAC;IACF,kGAAkG;IAClG,WAAW,CACT,IAAI,EAAE,kBAAkB,EACxB,GAAG,EAAE;QACH,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;QACzB,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;QAC7B,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;KAC5B,EACD,WAAW,EAAE,MAAM,GAClB,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAAC;CAC3B;AAED,MAAM,WAAW,cAAe,SAAQ,cAAc;IACpD,QAAQ,CAAC,EAAE,EAAE,QAAQ,CAAC;IACtB,QAAQ,CAAC,GAAG,EAAE,QAAQ,CAAC;IACvB,QAAQ,CAAC,KAAK,EAAE,KAAK,CAAC;IACtB,QAAQ,CAAC,MAAM,EAAE,IAAI,CAAC,YAAY,EAAE,WAAW,CAAC,CAAC;IACjD,QAAQ,CAAC,QAAQ,EAAE,eAAe,CAAC;IACnC,oEAAoE;IACpE,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,2DAA2D;IAC3D,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,0CAA0C;IAC1C,QAAQ,CAAC,OAAO,EAAE,eAAe,GAAG;QAClC,IAAI,CAAC,IAAI,EAAE,kBAAkB,EAAE,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAAC;KACpE,CAAC;CACH;AAUD,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,cAAc,GAAG,UAAU,CAkjBjE"}
1
+ {"version":3,"file":"run.service.d.ts","sourceRoot":"","sources":["../../../../server/core/runs/run.service.ts"],"names":[],"mappings":"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"}
@@ -11,6 +11,7 @@ import { ProtocolError, TERMINAL_RUN_STATUSES, } from '@nocobase/agent-protocol'
11
11
  import { conflict, forbidden, invalid, notFound, precondition, } from '../../kernel/errors.js';
12
12
  import { asJson, cleanList, jsonObject } from '../../kernel/values.js';
13
13
  import { findAgent, lockAgentForClaim } from '../agents/index.js';
14
+ import { createRunRequestService, insertRunRequest, } from './run-requests.js';
14
15
  import { authenticateRunToken } from './run-tokens.js';
15
16
  import { ACTIVE, eventsRepo, findRunRecord, inputsOnSince, inputsRepo, isActive, isTerminal, lastSummary, openRunsOn, pendingInputs, reposRepo, runsOfKey, runsRepo, toInput, toInputView, toRepo, toRun, usageRepo, } from './run.store.js';
16
17
  import { dialectOf, takesType } from './ports.js';
@@ -18,6 +19,19 @@ import { readWorkload } from './workload.js';
18
19
  import { finishRun } from './transitions.js';
19
20
  import { findBrief, requestReset } from './workspace.store.js';
20
21
  export const DEFAULT_THREAD = 'main';
22
+ /**
23
+ * The run work went into, for a caller that names no responsible (a conversation, a consultation): such work is never
24
+ * pending, so a pending result is a programming error.
25
+ */
26
+ export function queuedRun(result) {
27
+ if (result.outcome === 'pending')
28
+ throw new Error('Work that names no responsible was turned into a run request.');
29
+ return result;
30
+ }
31
+ /** Who a chain of work a run belongs to started with: who confirmed it, else who it was requested by. */
32
+ function chainSourceOf(run) {
33
+ return run.confirmedByUserId ?? run.requestedByUserId ?? run.actorUserId;
34
+ }
21
35
  /** A delay as the moment a run may be claimed, or null for now (and for any moment already past). */
22
36
  function fireAtOf(value, now) {
23
37
  if (value === undefined)
@@ -91,6 +105,8 @@ export function createRunService(deps) {
91
105
  subjectId: values.subject.id,
92
106
  threadScope: values.threadScope,
93
107
  actorUserId: values.actorUserId,
108
+ requestedByUserId: values.requestedByUserId,
109
+ confirmedByUserId: values.confirmedByUserId,
94
110
  ownerUserId: values.ownerUserId,
95
111
  requires: cleanList([...values.requires]),
96
112
  acceptsInput: false,
@@ -159,51 +175,198 @@ export function createRunService(deps) {
159
175
  }
160
176
  return [...totals.values()];
161
177
  }
178
+ /** Legacy runs have no snapshots; report their known primary-tool models without inventing attempt boundaries. */
179
+ async function readRuns(records) {
180
+ const runs = records.map(toRun);
181
+ const legacy = runs.filter((run) => run.executions?.length === 0 &&
182
+ (run.dispatchedAt !== null ||
183
+ run.tool !== null ||
184
+ run.modelService !== null));
185
+ if (legacy.length === 0)
186
+ return runs;
187
+ const usage = await usageRepo(tx.read()).findMany({
188
+ select: (select) => select.fields('runId', 'tool', 'model'),
189
+ distinct: ['runId', 'tool', 'model'],
190
+ filter: (f) => f.and([
191
+ f.string('model').ne(null),
192
+ f.or(legacy.map((run) => f.and([
193
+ f.string('runId').eq(run.id),
194
+ f.string('tool').eq(run.tool ?? 'online'),
195
+ ]))),
196
+ ]),
197
+ });
198
+ const models = new Map();
199
+ for (const row of usage)
200
+ if (row.model)
201
+ models.set(row.runId, [...(models.get(row.runId) ?? []), row.model]);
202
+ return runs.map((run) => run.executions?.length
203
+ ? run
204
+ : {
205
+ ...run,
206
+ actualModels: models.get(run.id) ?? [],
207
+ });
208
+ }
209
+ /**
210
+ * Queues `work` for `agent`: it joins the run working on its key while that run can still be told, else the run
211
+ * waiting for it, else starts a new run.
212
+ */
213
+ async function queue(unit, agent, work) {
214
+ // Serializes enqueues and claims for this agent, so a key never gets two waiting runs.
215
+ await lockAgentForClaim(unit.conn, agent.id, clock.now().toISOString());
216
+ const key = {
217
+ agentId: agent.id,
218
+ subjectKind: work.subject.kind,
219
+ subjectId: work.subject.id,
220
+ threadScope: work.threadScope,
221
+ };
222
+ // Only into work done as the same person: merged into another's run, it would borrow their identity, or wait
223
+ // for a runner that never takes it.
224
+ const open = await runsOfKey(unit.conn, key, ['queued', ...ACTIVE], work.actorUserId);
225
+ const working = open.find((run) => run.status === 'dispatched' ||
226
+ (run.status === 'running' && Boolean(run.acceptsInput)));
227
+ const waiting = open.find((run) => run.status === 'queued');
228
+ const target = working ?? waiting;
229
+ if (!working && waiting)
230
+ await hurry(unit, waiting, work.priority, work.fireAt);
231
+ if (target) {
232
+ const inputId = await insertInput(unit, target.id, work.input);
233
+ return {
234
+ runId: target.id,
235
+ outcome: working ? 'appended' : 'merged',
236
+ status: target.status,
237
+ inputId,
238
+ };
239
+ }
240
+ const runId = await createRun(unit, agent, {
241
+ subject: work.subject,
242
+ threadScope: work.threadScope,
243
+ actorUserId: work.actorUserId,
244
+ requestedByUserId: work.requestedByUserId,
245
+ confirmedByUserId: work.confirmedByUserId,
246
+ ownerUserId: work.ownerUserId,
247
+ priority: work.priority,
248
+ requires: work.requires,
249
+ retryOfRunId: null,
250
+ availableAt: work.fireAt,
251
+ ...(work.parentRunId ? { parentRunId: work.parentRunId } : {}),
252
+ ...(work.maxAttempts ? { maxAttempts: work.maxAttempts } : {}),
253
+ });
254
+ const inputId = await insertInput(unit, runId, work.input);
255
+ return { runId, outcome: 'created', status: 'queued', inputId };
256
+ }
257
+ /** The source of the chain of work a request belongs to (`EnqueueRequest.requestedByUserId`). */
258
+ async function sourceOf(unit, request) {
259
+ if (request.causedByRunId) {
260
+ const cause = await findRunRecord(unit.conn, request.causedByRunId);
261
+ if (!cause)
262
+ throw invalid('causedByRunId names no run.');
263
+ return chainSourceOf(cause);
264
+ }
265
+ const source = request.requestedByUserId ??
266
+ request.actorUserId ??
267
+ request.responsibleUserId;
268
+ if (!source)
269
+ throw invalid('Name who woke the agent: actorUserId, requestedByUserId or responsibleUserId.');
270
+ return source;
271
+ }
272
+ /** Refuses work run as `userId` when no runner they may use can run the agent now: it would only wait. */
273
+ async function requireRunnerFor(unit, agent, userId, requires) {
274
+ if (agent.type !== 'runner')
275
+ return;
276
+ // By the claim's own rules, the agent's variables included; the subject's are the claim's to check.
277
+ if (!(await deps.eligibility.canClaim(unit.conn, agent, {
278
+ actorUserId: userId,
279
+ requires: requires,
280
+ })))
281
+ throw precondition('NO_RUNNER_AVAILABLE', 'No runner you may use can run this agent now: connect one of your own, or ask the person who answers for this to confirm it.', { agentId: agent.id });
282
+ }
283
+ const requests = createRunRequestService({
284
+ tx,
285
+ ids,
286
+ clock,
287
+ people: deps.people,
288
+ currentResponsible: (unit, subject) => deps.subjects
289
+ .get(subject.kind)
290
+ ?.responsibleUserId?.(unit.conn, subject.id),
291
+ mayInvoke: (agent, userId) => deps.agents.mayInvoke(agent, userId),
292
+ requireInvocable,
293
+ requireRunnerFor,
294
+ direct: (unit, run) => queue(unit, run.agent, {
295
+ subject: run.subject,
296
+ threadScope: run.threadScope,
297
+ actorUserId: run.actorUserId,
298
+ requestedByUserId: run.requestedByUserId,
299
+ confirmedByUserId: run.confirmedByUserId,
300
+ ownerUserId: run.ownerUserId,
301
+ priority: run.priority,
302
+ // As it was asked: a moment already past when it is confirmed means now.
303
+ fireAt: fireAtOf(run.fireAt ?? undefined, clock.now()),
304
+ requires: run.requires,
305
+ ...(run.maxAttempts === null ? {} : { maxAttempts: run.maxAttempts }),
306
+ input: run.input,
307
+ }),
308
+ });
162
309
  return {
163
310
  enqueue: (request, outer) => tx.run(async (unit) => {
164
- const agent = await requireInvocable(unit, request.agentId, request.actorUserId);
165
- // Serializes enqueues and claims for this agent, so a key never gets two waiting runs.
166
- await lockAgentForClaim(unit.conn, agent.id, clock.now().toISOString());
167
- const key = {
168
- agentId: agent.id,
169
- subjectKind: request.subject.kind,
170
- subjectId: request.subject.id,
171
- threadScope: request.threadScope ?? DEFAULT_THREAD,
172
- };
173
- // Only into work done as the same person: merged into another's run, it would borrow their identity, or wait
174
- // for a runner that never takes it.
175
- const open = await runsOfKey(unit.conn, key, ['queued', ...ACTIVE], request.actorUserId);
176
- const working = open.find((run) => run.status === 'dispatched' ||
177
- (run.status === 'running' && Boolean(run.acceptsInput)));
178
- const waiting = open.find((run) => run.status === 'queued');
179
- const target = working ?? waiting;
180
- const fireAt = fireAtOf(request.fireAt, clock.now());
181
- if (!working && waiting)
182
- await hurry(unit, waiting, request.priority ?? 0, fireAt);
183
- if (target) {
184
- const inputId = await insertInput(unit, target.id, request.input);
311
+ const source = await sourceOf(unit, request);
312
+ const responsible = request.responsibleUserId ?? null;
313
+ const threadScope = request.threadScope ?? DEFAULT_THREAD;
314
+ const foreign = responsible !== null && source !== responsible;
315
+ if (foreign && (request.execution ?? 'auto') === 'auto') {
316
+ // A consultation's asker waits for its answer at once: it can never wait for someone's confirmation.
317
+ if (request.parentRunId)
318
+ throw invalid('A consultation cannot wait for confirmation: name no responsible for it.');
319
+ // Someone else's work waits for the responsible, who must be able to run it once they confirm it.
320
+ const agent = await requireInvocable(unit, request.agentId, source);
321
+ if (!deps.agents.mayInvoke(agent, responsible))
322
+ throw forbidden('The person who answers for this may not wake this agent.');
323
+ if (!takesType(deps.subjects.get(request.subject.kind), agent.type))
324
+ throw invalid(`A ${agent.type} agent cannot work on a ${request.subject.kind}.`, { reason: 'AGENT_TYPE_NOT_ALLOWED', agentType: agent.type });
325
+ const created = await insertRunRequest(unit, { ids, clock }, {
326
+ agentId: agent.id,
327
+ subject: request.subject,
328
+ threadScope,
329
+ responsibleUserId: responsible,
330
+ requestedByUserId: source,
331
+ ownerUserId: request.ownerUserId ?? null,
332
+ priority: request.priority ?? 0,
333
+ requires: request.requires ?? [],
334
+ fireAt: fireAtOf(request.fireAt, clock.now()),
335
+ maxAttempts: request.maxAttempts ?? null,
336
+ input: request.input,
337
+ });
185
338
  return {
186
- runId: target.id,
187
- outcome: working ? 'appended' : 'merged',
188
- status: target.status,
189
- inputId,
339
+ outcome: 'pending',
340
+ requestId: created.id,
341
+ status: 'pending',
342
+ runId: null,
343
+ inputId: null,
190
344
  };
191
345
  }
192
- const runId = await createRun(unit, agent, {
346
+ // As the responsible when they caused it; as the source when they run it as themselves (`mine`); as whoever
347
+ // woke the agent when nobody answers for the subject.
348
+ const actorUserId = foreign
349
+ ? source
350
+ : (responsible ?? request.actorUserId ?? source);
351
+ const agent = await requireInvocable(unit, request.agentId, actorUserId);
352
+ if (foreign)
353
+ await requireRunnerFor(unit, agent, actorUserId, request.requires ?? []);
354
+ return queue(unit, agent, {
193
355
  subject: request.subject,
194
- threadScope: key.threadScope,
195
- actorUserId: request.actorUserId,
356
+ threadScope,
357
+ actorUserId,
358
+ requestedByUserId: source,
359
+ confirmedByUserId: null,
196
360
  ownerUserId: request.ownerUserId ?? null,
197
361
  priority: request.priority ?? 0,
362
+ fireAt: fireAtOf(request.fireAt, clock.now()),
198
363
  requires: request.requires ?? [],
199
- retryOfRunId: null,
200
- availableAt: fireAt,
201
364
  ...(request.parentRunId ? { parentRunId: request.parentRunId } : {}),
202
365
  ...(request.maxAttempts ? { maxAttempts: request.maxAttempts } : {}),
366
+ input: request.input,
203
367
  });
204
- const inputId = await insertInput(unit, runId, request.input);
205
- return { runId, outcome: 'created', status: 'queued', inputId };
206
368
  }, outer),
369
+ requests,
207
370
  addInput: (runId, input, outer) => tx.run(async (unit) => {
208
371
  const run = await require(unit.conn, runId);
209
372
  if (isTerminal(run.status))
@@ -289,6 +452,8 @@ export function createRunService(deps) {
289
452
  subject: { kind: run.subjectKind, id: run.subjectId },
290
453
  threadScope: run.threadScope,
291
454
  actorUserId: byUserId,
455
+ requestedByUserId: byUserId,
456
+ confirmedByUserId: null,
292
457
  ownerUserId: run.ownerUserId,
293
458
  priority: Number(run.priority),
294
459
  requires: toRun(run).requires,
@@ -309,7 +474,7 @@ export function createRunService(deps) {
309
474
  });
310
475
  return toRun(await require(unit.conn, newId));
311
476
  }),
312
- get: async (runId) => toRun(await require(tx.read(), runId)),
477
+ get: async (runId) => (await readRuns([await require(tx.read(), runId)]))[0],
313
478
  async detail(runId) {
314
479
  const conn = tx.read();
315
480
  const run = await require(conn, runId);
@@ -327,7 +492,7 @@ export function createRunService(deps) {
327
492
  if (!names.has(child.agentId))
328
493
  names.set(child.agentId, (await findAgent(conn, child.agentId))?.name ?? null);
329
494
  return {
330
- ...toRun(run),
495
+ ...(await readRuns([run]))[0],
331
496
  inputs: inputs.map(toInputView),
332
497
  repos: repos.map(toRepo),
333
498
  usage: await usageOf(conn, runId),
@@ -370,7 +535,7 @@ export function createRunService(deps) {
370
535
  limit: Math.min(Math.max(filter.limit ?? 50, 1), 200),
371
536
  ...(filter.cursor ? { cursor: filter.cursor } : {}),
372
537
  });
373
- return records.map(toRun);
538
+ return readRuns(records);
374
539
  },
375
540
  async lastEnded(subjectKind, subjectIds) {
376
541
  if (subjectIds.length === 0)
@@ -392,16 +557,22 @@ export function createRunService(deps) {
392
557
  if (!newest.has(key))
393
558
  newest.set(key, record);
394
559
  }
395
- return [...newest.values()].map(toRun);
560
+ return readRuns([...newest.values()]);
396
561
  },
397
562
  workload(query) {
398
563
  return readWorkload(tx.read(), clock, deps.runners, query);
399
564
  },
400
- async events(runId, afterSeq, limit) {
565
+ async events(runId, afterSeq, limit, types) {
401
566
  const conn = tx.read();
402
567
  await require(conn, runId);
403
568
  const rows = await eventsRepo(conn).findMany({
404
- filter: (f) => f.and([f.string('runId').eq(runId), f.number('seq').gt(afterSeq)]),
569
+ filter: (f) => f.and([
570
+ f.string('runId').eq(runId),
571
+ f.number('seq').gt(afterSeq),
572
+ ...(types?.length
573
+ ? [f.or(types.map((type) => f.string('type').eq(type)))]
574
+ : []),
575
+ ]),
405
576
  sort: (sort) => sort.field('seq').asc(),
406
577
  limit: Math.min(Math.max(limit, 1), 1000),
407
578
  });
@@ -1 +1 @@
1
- {"version":3,"file":"run.service.js","sourceRoot":"","sources":["../../../../server/core/runs/run.service.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"run.service.js","sourceRoot":"","sources":["../../../../server/core/runs/run.service.ts"],"names":[],"mappings":"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"}
@@ -4,13 +4,14 @@
4
4
  */
5
5
  import type { RunInput, RunStatus } from '@nocobase/agent-protocol';
6
6
  import type { DatabaseConnection, Repository } from '@nocobase/db';
7
- import type { Run, RunInputRecord as RunInputView, RunRepo } from '../../../shared/runs.js';
7
+ import type { Run, RunExecutionSnapshot, RunInputRecord as RunInputView, RunRepo } from '../../../shared/runs.js';
8
8
  import { type JsonColumn } from '../../kernel/values.js';
9
9
  export interface RunRecord {
10
10
  readonly id: string;
11
11
  readonly agentId: string;
12
12
  readonly agentType: string;
13
13
  readonly runnerId: string | null;
14
+ readonly executionHistory?: JsonColumn;
14
15
  readonly tool?: string | null;
15
16
  readonly modelService?: string | null;
16
17
  readonly model?: string | null;
@@ -25,6 +26,9 @@ export interface RunRecord {
25
26
  readonly subjectId: string;
26
27
  readonly threadScope: string;
27
28
  readonly actorUserId: string;
29
+ /** Null only on a run older than the column that no backfill reached; read as the actor then. */
30
+ readonly requestedByUserId?: string | null;
31
+ readonly confirmedByUserId?: string | null;
28
32
  readonly ownerUserId: string | null;
29
33
  readonly requires: readonly unknown[];
30
34
  readonly acceptsInput: boolean;
@@ -132,6 +136,8 @@ export declare function reposRepo(conn: DatabaseConnection): Repository<RepoReco
132
136
  export declare function tokensRepo(conn: DatabaseConnection): Repository<TokenRecord>;
133
137
  export declare function sessionsRepo(conn: DatabaseConnection): Repository<SessionRecord>;
134
138
  export declare const ACTIVE: readonly RunStatus[];
139
+ /** JSON columns may be decoded by the driver or returned as strings. */
140
+ export declare function toExecutions(value: unknown): RunExecutionSnapshot[];
135
141
  export declare function isActive(status: RunStatus): boolean;
136
142
  export declare function isTerminal(status: RunStatus): boolean;
137
143
  export declare function toRun(record: RunRecord): Run;
@@ -1 +1 @@
1
- {"version":3,"file":"run.store.d.ts","sourceRoot":"","sources":["../../../../server/core/runs/run.store.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"run.store.d.ts","sourceRoot":"","sources":["../../../../server/core/runs/run.store.ts"],"names":[],"mappings":"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"}
@@ -21,6 +21,26 @@ export function sessionsRepo(conn) {
21
21
  return conn.repository('agSessions');
22
22
  }
23
23
  export const ACTIVE = ['dispatched', 'running'];
24
+ /** JSON columns may be decoded by the driver or returned as strings. */
25
+ export function toExecutions(value) {
26
+ if (typeof value === 'string') {
27
+ try {
28
+ return toExecutions(JSON.parse(value));
29
+ }
30
+ catch {
31
+ return [];
32
+ }
33
+ }
34
+ if (!Array.isArray(value))
35
+ return [];
36
+ return value.filter((item) => {
37
+ const record = jsonObject(item);
38
+ return (typeof record.attempt === 'number' &&
39
+ typeof record.runnerId === 'string' &&
40
+ Array.isArray(record.actualModels) &&
41
+ record.actualModels.every((model) => typeof model === 'string'));
42
+ });
43
+ }
24
44
  export function isActive(status) {
25
45
  return ACTIVE.includes(status);
26
46
  }
@@ -28,11 +48,22 @@ export function isTerminal(status) {
28
48
  return (status === 'completed' || status === 'failed' || status === 'cancelled');
29
49
  }
30
50
  export function toRun(record) {
51
+ const executions = toExecutions(record.executionHistory);
52
+ const latest = executions.at(-1);
31
53
  return {
32
54
  id: record.id,
33
55
  agentId: record.agentId,
34
56
  agentType: record.agentType === 'online' ? 'online' : 'runner',
35
57
  runnerId: record.runnerId,
58
+ executions,
59
+ runnerName: latest?.runnerName ?? null,
60
+ runnerOwnerUserId: latest?.runnerOwnerUserId ?? null,
61
+ runnerOwnerName: latest?.runnerOwnerName ?? null,
62
+ toolVersion: latest?.toolVersion ?? null,
63
+ actualModels: latest?.actualModels ?? [],
64
+ actualEffort: latest?.actualEffort ?? null,
65
+ actualEffortSource: latest?.actualEffortSource ?? null,
66
+ actualEffortAt: latest?.actualEffortAt ?? null,
36
67
  tool: record.tool ?? null,
37
68
  modelService: record.modelService ?? null,
38
69
  model: record.model ?? null,
@@ -46,6 +77,8 @@ export function toRun(record) {
46
77
  subject: { kind: record.subjectKind, id: record.subjectId },
47
78
  threadScope: record.threadScope,
48
79
  actorUserId: record.actorUserId,
80
+ requestedByUserId: record.requestedByUserId ?? record.actorUserId,
81
+ confirmedByUserId: record.confirmedByUserId ?? null,
49
82
  ownerUserId: record.ownerUserId,
50
83
  requires: stringArray(record.requires),
51
84
  acceptsInput: Boolean(record.acceptsInput),