@taico/taico 0.2.0 → 0.2.11

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 (492) hide show
  1. package/README.md +31 -77
  2. package/dist/agent-runs/agent-run.entity.d.ts +0 -2
  3. package/dist/agent-runs/agent-run.entity.js +0 -7
  4. package/dist/agent-runs/agent-run.entity.js.map +1 -1
  5. package/dist/agent-runs/agent-runs.controller.d.ts +1 -1
  6. package/dist/agent-runs/agent-runs.controller.js +4 -7
  7. package/dist/agent-runs/agent-runs.controller.js.map +1 -1
  8. package/dist/agent-runs/agent-runs.scopes.d.ts +1 -1
  9. package/dist/agent-runs/agent-runs.service.js +1 -2
  10. package/dist/agent-runs/agent-runs.service.js.map +1 -1
  11. package/dist/agents/agent-execution-tokens.controller.d.ts +4 -1
  12. package/dist/agents/agent-execution-tokens.controller.js +22 -4
  13. package/dist/agents/agent-execution-tokens.controller.js.map +1 -1
  14. package/dist/agents/agent-template.catalog.d.ts +4 -0
  15. package/dist/agents/agent-template.catalog.js +153 -0
  16. package/dist/agents/agent-template.catalog.js.map +1 -0
  17. package/dist/agents/agent-tool-permission-scope.entity.d.ts +11 -0
  18. package/dist/agents/agent-tool-permission-scope.entity.js +65 -0
  19. package/dist/agents/agent-tool-permission-scope.entity.js.map +1 -0
  20. package/dist/agents/agent-tool-permission.entity.d.ts +12 -0
  21. package/dist/agents/agent-tool-permission.entity.js +60 -0
  22. package/dist/agents/agent-tool-permission.entity.js.map +1 -0
  23. package/dist/agents/agent-tool-permissions.controller.d.ts +11 -0
  24. package/dist/agents/agent-tool-permissions.controller.js +87 -0
  25. package/dist/agents/agent-tool-permissions.controller.js.map +1 -0
  26. package/dist/agents/agent-tool-permissions.service.d.ts +19 -0
  27. package/dist/agents/agent-tool-permissions.service.js +194 -0
  28. package/dist/agents/agent-tool-permissions.service.js.map +1 -0
  29. package/dist/agents/agent.entity.d.ts +3 -1
  30. package/dist/agents/agent.entity.js +6 -0
  31. package/dist/agents/agent.entity.js.map +1 -1
  32. package/dist/agents/agents.controller.d.ts +2 -0
  33. package/dist/agents/agents.controller.js +12 -0
  34. package/dist/agents/agents.controller.js.map +1 -1
  35. package/dist/agents/agents.module.js +13 -2
  36. package/dist/agents/agents.module.js.map +1 -1
  37. package/dist/agents/agents.scopes.d.ts +1 -1
  38. package/dist/agents/agents.service.d.ts +2 -0
  39. package/dist/agents/agents.service.js +4 -0
  40. package/dist/agents/agents.service.js.map +1 -1
  41. package/dist/agents/dto/agent-response.dto.d.ts +1 -1
  42. package/dist/agents/dto/agent-template-catalog-response.dto.d.ts +33 -0
  43. package/dist/agents/dto/agent-template-catalog-response.dto.js +205 -0
  44. package/dist/agents/dto/agent-template-catalog-response.dto.js.map +1 -0
  45. package/dist/agents/dto/agent-tool-permission-params.dto.d.ts +3 -0
  46. package/dist/agents/dto/agent-tool-permission-params.dto.js +27 -0
  47. package/dist/agents/dto/agent-tool-permission-params.dto.js.map +1 -0
  48. package/dist/agents/dto/agent-tool-permission-response.dto.d.ts +20 -0
  49. package/dist/agents/dto/agent-tool-permission-response.dto.js +119 -0
  50. package/dist/agents/dto/agent-tool-permission-response.dto.js.map +1 -0
  51. package/dist/agents/dto/create-agent.dto.d.ts +1 -1
  52. package/dist/agents/dto/patch-agent.dto.d.ts +1 -1
  53. package/dist/agents/dto/request-agent-execution-token.dto.d.ts +1 -1
  54. package/dist/agents/dto/request-agent-execution-token.dto.js +3 -2
  55. package/dist/agents/dto/request-agent-execution-token.dto.js.map +1 -1
  56. package/dist/agents/dto/service/agent-tool-permissions.service.types.d.ts +17 -0
  57. package/dist/{executions/dto/service/execution-claim.service.types.js → agents/dto/service/agent-tool-permissions.service.types.js} +1 -1
  58. package/dist/agents/dto/service/agent-tool-permissions.service.types.js.map +1 -0
  59. package/dist/agents/dto/service/agents.service.types.d.ts +1 -1
  60. package/dist/agents/dto/upsert-agent-tool-permission.dto.d.ts +3 -0
  61. package/dist/agents/dto/upsert-agent-tool-permission.dto.js +30 -0
  62. package/dist/agents/dto/upsert-agent-tool-permission.dto.js.map +1 -0
  63. package/dist/agents/errors/agents.errors.d.ts +8 -0
  64. package/dist/agents/errors/agents.errors.js +15 -1
  65. package/dist/agents/errors/agents.errors.js.map +1 -1
  66. package/dist/app-init/agent/claude-dev.agent.d.ts +1 -1
  67. package/dist/app-init/agent/claude-dev.agent.js +1 -1
  68. package/dist/app-init/agent/claude-dev.agent.js.map +1 -1
  69. package/dist/app-init/agent/code-reviewer.agent.d.ts +1 -1
  70. package/dist/app-init/agent/code-reviewer.agent.js +4 -1
  71. package/dist/app-init/agent/code-reviewer.agent.js.map +1 -1
  72. package/dist/app-init/agent/codex-dev.agent.d.ts +1 -1
  73. package/dist/app-init/agent/codex-dev.agent.js +6 -3
  74. package/dist/app-init/agent/codex-dev.agent.js.map +1 -1
  75. package/dist/app-init/agent/gemini-assistant.agent.d.ts +1 -1
  76. package/dist/app-init/agent/gemini-assistant.agent.js +3 -1
  77. package/dist/app-init/agent/gemini-assistant.agent.js.map +1 -1
  78. package/dist/app-init/agent/taico.agent.d.ts +1 -1
  79. package/dist/app-init/agent/taico.agent.js +1 -1
  80. package/dist/app-init/agent/taico.agent.js.map +1 -1
  81. package/dist/app-init/app-init.runner.d.ts +14 -14
  82. package/dist/app-init/app-init.runner.js +11 -11
  83. package/dist/app-init/app-init.runner.js.map +1 -1
  84. package/dist/app-init/mcp/chrome-devtools.mcp.d.ts +2 -0
  85. package/dist/app-init/mcp/chrome-devtools.mcp.js +14 -0
  86. package/dist/app-init/mcp/chrome-devtools.mcp.js.map +1 -0
  87. package/dist/app-init/mcp/context.mcp.d.ts +3 -3
  88. package/dist/app-init/mcp/context.mcp.js +12 -9
  89. package/dist/app-init/mcp/context.mcp.js.map +1 -1
  90. package/dist/app-init/mcp/elen.mcp.d.ts +1 -1
  91. package/dist/app-init/mcp/internal-worker-auth.mcp.d.ts +2 -2
  92. package/dist/app-init/mcp/internal-worker-auth.mcp.js +12 -9
  93. package/dist/app-init/mcp/internal-worker-auth.mcp.js.map +1 -1
  94. package/dist/app-init/mcp/playwright.mcp.d.ts +1 -1
  95. package/dist/app-init/mcp/playwright.mcp.js +1 -1
  96. package/dist/app-init/mcp/playwright.mcp.js.map +1 -1
  97. package/dist/app-init/mcp/tasks.mcp.d.ts +3 -3
  98. package/dist/app-init/mcp/tasks.mcp.js +12 -9
  99. package/dist/app-init/mcp/tasks.mcp.js.map +1 -1
  100. package/dist/app-init/models/models.d.ts +10 -0
  101. package/dist/app-init/models/models.js +29 -0
  102. package/dist/app-init/models/models.js.map +1 -0
  103. package/dist/app-init/prompts/prompts.d.ts +5 -0
  104. package/dist/app-init/{agent → prompts}/prompts.js +20 -4
  105. package/dist/app-init/prompts/prompts.js.map +1 -0
  106. package/dist/app-init/user/admin.user.d.ts +2 -2
  107. package/dist/app-init/user/dev.user.d.ts +2 -2
  108. package/dist/app.module.js +14 -2
  109. package/dist/app.module.js.map +1 -1
  110. package/dist/auth/core/scopes/mcp.scopes.d.ts +1 -1
  111. package/dist/auth/core/scopes/user.scopes.d.ts +1 -1
  112. package/dist/auth/core/types/access-token-claims.type.d.ts +1 -1
  113. package/dist/auth/guards/context/auth-context.types.d.ts +1 -1
  114. package/dist/auth/guards/guards/ws-access-token-guard.js +4 -1
  115. package/dist/auth/guards/guards/ws-access-token-guard.js.map +1 -1
  116. package/dist/auth-journeys/entities/auth-journey.entity.d.ts +1 -1
  117. package/dist/authorization-server/authorization.service.d.ts +1 -1
  118. package/dist/authorization-server/client-registration.service.d.ts +2 -2
  119. package/dist/authorization-server/dto/service/authorization.service.types.d.ts +1 -1
  120. package/dist/authorization-server/dto/user-response.dto.d.ts +2 -1
  121. package/dist/authorization-server/dto/user-response.dto.js +7 -5
  122. package/dist/authorization-server/dto/user-response.dto.js.map +1 -1
  123. package/dist/authorization-server/token-exchange.service.d.ts +1 -1
  124. package/dist/authorization-server/web-auth.controller.d.ts +1 -1
  125. package/dist/authorization-server/web-auth.controller.js +4 -4
  126. package/dist/authorization-server/web-auth.controller.js.map +1 -1
  127. package/dist/authorization-server/web-auth.service.d.ts +3 -3
  128. package/dist/chat-providers/chat-providers.scopes.d.ts +1 -1
  129. package/dist/config/cli-env.d.ts +1 -0
  130. package/dist/config/cli-env.js +14 -0
  131. package/dist/config/cli-env.js.map +1 -0
  132. package/dist/config/env.config.js +13 -3
  133. package/dist/config/env.config.js.map +1 -1
  134. package/dist/context/block.entity.d.ts +1 -1
  135. package/dist/context/context.controller.d.ts +8 -0
  136. package/dist/context/context.controller.js +72 -0
  137. package/dist/context/context.controller.js.map +1 -1
  138. package/dist/context/context.mcp.gateway.d.ts +4 -4
  139. package/dist/context/context.scopes.d.ts +1 -1
  140. package/dist/context/context.service.d.ts +16 -0
  141. package/dist/context/context.service.js +219 -1
  142. package/dist/context/context.service.js.map +1 -1
  143. package/dist/context/dto/import-blocks-response.dto.d.ts +3 -0
  144. package/dist/context/dto/import-blocks-response.dto.js +25 -0
  145. package/dist/context/dto/import-blocks-response.dto.js.map +1 -0
  146. package/dist/context/errors/context.errors.d.ts +8 -0
  147. package/dist/context/errors/context.errors.js +15 -1
  148. package/dist/context/errors/context.errors.js.map +1 -1
  149. package/dist/discovery/discovery.service.js +3 -3
  150. package/dist/discovery/discovery.service.js.map +1 -1
  151. package/dist/errors/http/error-catalog.js +12 -0
  152. package/dist/errors/http/error-catalog.js.map +1 -1
  153. package/dist/{executions-v2 → executions}/active/active-execution-context-resolver.service.js +2 -2
  154. package/dist/executions/active/active-execution-context-resolver.service.js.map +1 -0
  155. package/dist/{executions-v2 → executions}/active/active-task-execution.controller.d.ts +3 -0
  156. package/dist/{executions-v2 → executions}/active/active-task-execution.controller.js +63 -6
  157. package/dist/executions/active/active-task-execution.controller.js.map +1 -0
  158. package/dist/{executions-v2 → executions}/active/active-task-execution.entity.d.ts +2 -0
  159. package/dist/{executions-v2 → executions}/active/active-task-execution.entity.js +11 -1
  160. package/dist/executions/active/active-task-execution.entity.js.map +1 -0
  161. package/dist/{executions-v2 → executions}/active/active-task-execution.service.d.ts +12 -1
  162. package/dist/{executions-v2 → executions}/active/active-task-execution.service.js +77 -8
  163. package/dist/executions/active/active-task-execution.service.js.map +1 -0
  164. package/dist/{executions-v2 → executions}/active/dto/http/active-task-execution-response.dto.d.ts +2 -0
  165. package/dist/{executions-v2 → executions}/active/dto/http/active-task-execution-response.dto.js +20 -0
  166. package/dist/executions/active/dto/http/active-task-execution-response.dto.js.map +1 -0
  167. package/dist/executions/active/dto/http/stop-active-task-execution.dto.js.map +1 -0
  168. package/dist/executions/active/dto/http/update-runner-session-id.dto.d.ts +3 -0
  169. package/dist/executions/active/dto/http/update-runner-session-id.dto.js +29 -0
  170. package/dist/executions/active/dto/http/update-runner-session-id.dto.js.map +1 -0
  171. package/dist/executions/errors/executions.errors.d.ts +8 -16
  172. package/dist/executions/errors/executions.errors.js +16 -26
  173. package/dist/executions/errors/executions.errors.js.map +1 -1
  174. package/dist/{executions-v2 → executions}/events/execution-activity.events.js +1 -1
  175. package/dist/executions/events/execution-activity.events.js.map +1 -0
  176. package/dist/{executions-v2 → executions}/execution-activity.service.d.ts +10 -0
  177. package/dist/{executions-v2 → executions}/execution-activity.service.js +27 -5
  178. package/dist/executions/execution-activity.service.js.map +1 -0
  179. package/dist/{executions-v2/executions-v2-worker.gateway.d.ts → executions/executions-worker.gateway.d.ts} +22 -4
  180. package/dist/executions/executions-worker.gateway.js +288 -0
  181. package/dist/executions/executions-worker.gateway.js.map +1 -0
  182. package/dist/executions/executions.module.js +51 -35
  183. package/dist/executions/executions.module.js.map +1 -1
  184. package/dist/{executions-v2 → executions}/history/dto/http/task-execution-history-response.dto.d.ts +2 -0
  185. package/dist/{executions-v2 → executions}/history/dto/http/task-execution-history-response.dto.js +20 -0
  186. package/dist/executions/history/dto/http/task-execution-history-response.dto.js.map +1 -0
  187. package/dist/executions/history/task-execution-history-error-code.enum.js.map +1 -0
  188. package/dist/executions/history/task-execution-history-status.enum.js.map +1 -0
  189. package/dist/{executions-v2 → executions}/history/task-execution-history.controller.js +3 -3
  190. package/dist/executions/history/task-execution-history.controller.js.map +1 -0
  191. package/dist/{executions-v2 → executions}/history/task-execution-history.entity.d.ts +2 -0
  192. package/dist/{executions-v2 → executions}/history/task-execution-history.entity.js +11 -1
  193. package/dist/executions/history/task-execution-history.entity.js.map +1 -0
  194. package/dist/executions/history/task-execution-history.service.js.map +1 -0
  195. package/dist/executions/queue/dto/http/task-execution-queue-entry-response.dto.js.map +1 -0
  196. package/dist/{executions-v2 → executions}/queue/task-execution-queue.controller.js +7 -7
  197. package/dist/executions/queue/task-execution-queue.controller.js.map +1 -0
  198. package/dist/executions/queue/task-execution-queue.entity.js.map +1 -0
  199. package/dist/executions/queue/task-execution-queue.service.js.map +1 -0
  200. package/dist/{executions-v2 → executions}/readiness/readiness-candidate.repository.d.ts +1 -0
  201. package/dist/{executions-v2 → executions}/readiness/readiness-candidate.repository.js +22 -11
  202. package/dist/executions/readiness/readiness-candidate.repository.js.map +1 -0
  203. package/dist/executions/readiness/task-eligibility-event-source.service.js.map +1 -0
  204. package/dist/executions/readiness/task-eligibility-scheduler.service.js.map +1 -0
  205. package/dist/{executions-v2 → executions}/readiness/task-execution-queue-populator.service.js +9 -12
  206. package/dist/executions/readiness/task-execution-queue-populator.service.js.map +1 -0
  207. package/dist/{executions-v2 → executions}/staleness/stale-active-task-execution-detector.service.js +1 -1
  208. package/dist/executions/staleness/stale-active-task-execution-detector.service.js.map +1 -0
  209. package/dist/executions/staleness/stale-active-task-execution-pruner.service.js.map +1 -0
  210. package/dist/{executions-v2 → executions}/staleness/stale-active-task-execution-scheduler.service.js +1 -1
  211. package/dist/executions/staleness/stale-active-task-execution-scheduler.service.js.map +1 -0
  212. package/dist/executions/task-activity-projection.service.js.map +1 -0
  213. package/dist/executions/workers.scopes.d.ts +9 -1
  214. package/dist/executions/workers.scopes.js +8 -0
  215. package/dist/executions/workers.scopes.js.map +1 -1
  216. package/dist/identity-provider/enums/index.d.ts +1 -0
  217. package/dist/identity-provider/enums/index.js +3 -1
  218. package/dist/identity-provider/enums/index.js.map +1 -1
  219. package/dist/identity-provider/enums/onboarding-display-mode.enum.d.ts +5 -0
  220. package/dist/identity-provider/enums/onboarding-display-mode.enum.js +10 -0
  221. package/dist/identity-provider/enums/onboarding-display-mode.enum.js.map +1 -0
  222. package/dist/identity-provider/identity-provider.service.d.ts +1 -0
  223. package/dist/identity-provider/identity-provider.service.js +6 -1
  224. package/dist/identity-provider/identity-provider.service.js.map +1 -1
  225. package/dist/identity-provider/user.entity.d.ts +2 -1
  226. package/dist/identity-provider/user.entity.js +9 -4
  227. package/dist/identity-provider/user.entity.js.map +1 -1
  228. package/dist/main.d.ts +1 -1
  229. package/dist/main.js +8 -4
  230. package/dist/main.js.map +1 -1
  231. package/dist/mcp-registry/entities/mcp-scope.entity.d.ts +2 -0
  232. package/dist/mcp-registry/entities/mcp-scope.entity.js +6 -0
  233. package/dist/mcp-registry/entities/mcp-scope.entity.js.map +1 -1
  234. package/dist/mcp-registry/entities/mcp-server.entity.d.ts +2 -0
  235. package/dist/mcp-registry/entities/mcp-server.entity.js +6 -0
  236. package/dist/mcp-registry/entities/mcp-server.entity.js.map +1 -1
  237. package/dist/mcp-registry/errors/mcp-registry.errors.js +1 -1
  238. package/dist/mcp-registry/errors/mcp-registry.errors.js.map +1 -1
  239. package/dist/mcp-registry/mcp-registry.scopes.d.ts +1 -1
  240. package/dist/mcp-registry/mcp-registry.service.d.ts +1 -1
  241. package/dist/mcp-registry/mcp-registry.service.js +5 -1
  242. package/dist/mcp-registry/mcp-registry.service.js.map +1 -1
  243. package/dist/meta/meta.scopes.d.ts +1 -1
  244. package/dist/meta/tag.entity.d.ts +1 -1
  245. package/dist/migrations/1742000000000-AddAgentToolPermissions.d.ts +5 -0
  246. package/dist/migrations/1742000000000-AddAgentToolPermissions.js +44 -0
  247. package/dist/migrations/1742000000000-AddAgentToolPermissions.js.map +1 -0
  248. package/dist/migrations/1742100000000-AddExecutionEnrichmentFieldsV2.d.ts +6 -0
  249. package/dist/migrations/1742100000000-AddExecutionEnrichmentFieldsV2.js +44 -0
  250. package/dist/migrations/1742100000000-AddExecutionEnrichmentFieldsV2.js.map +1 -0
  251. package/dist/migrations/1742200000000-RenameExecutionTables.d.ts +5 -0
  252. package/dist/migrations/1742200000000-RenameExecutionTables.js +27 -0
  253. package/dist/migrations/1742200000000-RenameExecutionTables.js.map +1 -0
  254. package/dist/migrations/1742300000000-AddWorkersTable.d.ts +5 -0
  255. package/dist/migrations/1742300000000-AddWorkersTable.js +34 -0
  256. package/dist/migrations/1742300000000-AddWorkersTable.js.map +1 -0
  257. package/dist/migrations/1742400000000-RenameHasSeenWalkthroughToOnboardingDisplayMode.d.ts +6 -0
  258. package/dist/migrations/1742400000000-RenameHasSeenWalkthroughToOnboardingDisplayMode.js +78 -0
  259. package/dist/migrations/1742400000000-RenameHasSeenWalkthroughToOnboardingDisplayMode.js.map +1 -0
  260. package/dist/public/assets/index-Bh1qbaci.css +1 -0
  261. package/dist/public/assets/index-D558s7Ot.js +73 -0
  262. package/dist/public/beta/assets/index-BaBvl20K.css +1 -0
  263. package/dist/public/beta/assets/index-rfhzPvbf.js +94 -0
  264. package/dist/public/beta/index.html +2 -2
  265. package/dist/public/index.html +2 -2
  266. package/dist/secrets/secrets.scopes.d.ts +1 -1
  267. package/dist/tasks/tasks.mcp.gateway.d.ts +4 -4
  268. package/dist/tasks/tasks.module.js +2 -2
  269. package/dist/tasks/tasks.module.js.map +1 -1
  270. package/dist/tasks/tasks.scopes.d.ts +1 -1
  271. package/dist/tasks/tasks.service.d.ts +2 -2
  272. package/dist/tasks/tasks.service.js +1 -1
  273. package/dist/tasks/tasks.service.js.map +1 -1
  274. package/dist/threads/chat.service.d.ts +4 -4
  275. package/dist/threads/thread-state-reconciler.service.d.ts +3 -3
  276. package/dist/threads/threads.scopes.d.ts +1 -1
  277. package/dist/tsconfig.tsbuildinfo +1 -1
  278. package/dist/walkthrough/dto/walkthrough-status-response.dto.d.ts +12 -0
  279. package/dist/walkthrough/dto/walkthrough-status-response.dto.js +66 -0
  280. package/dist/walkthrough/dto/walkthrough-status-response.dto.js.map +1 -0
  281. package/dist/walkthrough/walkthrough.controller.d.ts +11 -0
  282. package/dist/walkthrough/walkthrough.controller.js +76 -0
  283. package/dist/walkthrough/walkthrough.controller.js.map +1 -0
  284. package/dist/walkthrough/walkthrough.module.d.ts +2 -0
  285. package/dist/walkthrough/walkthrough.module.js +43 -0
  286. package/dist/walkthrough/walkthrough.module.js.map +1 -0
  287. package/dist/walkthrough/walkthrough.service.d.ts +31 -0
  288. package/dist/walkthrough/walkthrough.service.js +110 -0
  289. package/dist/walkthrough/walkthrough.service.js.map +1 -0
  290. package/dist/workers/dto/http/worker-response.dto.d.ts +11 -0
  291. package/dist/workers/dto/http/worker-response.dto.js +58 -0
  292. package/dist/workers/dto/http/worker-response.dto.js.map +1 -0
  293. package/dist/workers/dto/service/workers.service.types.d.ts +6 -0
  294. package/dist/{worker/auth/worker-auth.types.js → workers/dto/service/workers.service.types.js} +1 -1
  295. package/dist/workers/dto/service/workers.service.types.js.map +1 -0
  296. package/dist/workers/events/workers.events.d.ts +14 -0
  297. package/dist/workers/events/workers.events.js +21 -0
  298. package/dist/workers/events/workers.events.js.map +1 -0
  299. package/dist/workers/worker.entity.d.ts +12 -0
  300. package/dist/workers/worker.entity.js +62 -0
  301. package/dist/workers/worker.entity.js.map +1 -0
  302. package/dist/workers/workers.controller.d.ts +7 -0
  303. package/dist/workers/workers.controller.js +51 -0
  304. package/dist/workers/workers.controller.js.map +1 -0
  305. package/dist/workers/workers.gateway.d.ts +18 -0
  306. package/dist/workers/workers.gateway.js +94 -0
  307. package/dist/workers/workers.gateway.js.map +1 -0
  308. package/dist/workers/workers.module.d.ts +2 -0
  309. package/dist/workers/workers.module.js +31 -0
  310. package/dist/workers/workers.module.js.map +1 -0
  311. package/dist/workers/workers.service.d.ts +11 -0
  312. package/dist/workers/workers.service.js +67 -0
  313. package/dist/workers/workers.service.js.map +1 -0
  314. package/package.json +6 -5
  315. package/dist/app-init/agent/prompts.d.ts +0 -4
  316. package/dist/app-init/agent/prompts.js.map +0 -1
  317. package/dist/app-init/agent/qwen3-coder-next.d.ts +0 -2
  318. package/dist/app-init/agent/qwen3-coder-next.js +0 -22
  319. package/dist/app-init/agent/qwen3-coder-next.js.map +0 -1
  320. package/dist/executions/dto/http/execution-list-response.dto.d.ts +0 -8
  321. package/dist/executions/dto/http/execution-list-response.dto.js +0 -58
  322. package/dist/executions/dto/http/execution-list-response.dto.js.map +0 -1
  323. package/dist/executions/dto/http/execution-response.dto.d.ts +0 -24
  324. package/dist/executions/dto/http/execution-response.dto.js +0 -225
  325. package/dist/executions/dto/http/execution-response.dto.js.map +0 -1
  326. package/dist/executions/dto/http/list-executions-query.dto.d.ts +0 -8
  327. package/dist/executions/dto/http/list-executions-query.dto.js +0 -79
  328. package/dist/executions/dto/http/list-executions-query.dto.js.map +0 -1
  329. package/dist/executions/dto/service/execution-claim.service.types.d.ts +0 -27
  330. package/dist/executions/dto/service/execution-claim.service.types.js.map +0 -1
  331. package/dist/executions/dto/service/executions.service.types.d.ts +0 -35
  332. package/dist/executions/dto/service/executions.service.types.js +0 -3
  333. package/dist/executions/dto/service/executions.service.types.js.map +0 -1
  334. package/dist/executions/enums/index.d.ts +0 -2
  335. package/dist/executions/enums/index.js +0 -8
  336. package/dist/executions/enums/index.js.map +0 -1
  337. package/dist/executions/enums/task-execution-status.enum.d.ts +0 -10
  338. package/dist/executions/enums/task-execution-status.enum.js +0 -15
  339. package/dist/executions/enums/task-execution-status.enum.js.map +0 -1
  340. package/dist/executions/enums/worker-session-status.enum.d.ts +0 -6
  341. package/dist/executions/enums/worker-session-status.enum.js +0 -11
  342. package/dist/executions/enums/worker-session-status.enum.js.map +0 -1
  343. package/dist/executions/events/executions.events.d.ts +0 -25
  344. package/dist/executions/events/executions.events.js +0 -39
  345. package/dist/executions/events/executions.events.js.map +0 -1
  346. package/dist/executions/execution-claim.service.d.ts +0 -17
  347. package/dist/executions/execution-claim.service.js +0 -368
  348. package/dist/executions/execution-claim.service.js.map +0 -1
  349. package/dist/executions/execution-context-resolver.service.d.ts +0 -21
  350. package/dist/executions/execution-context-resolver.service.js +0 -119
  351. package/dist/executions/execution-context-resolver.service.js.map +0 -1
  352. package/dist/executions/execution-reconciler.service.d.ts +0 -24
  353. package/dist/executions/execution-reconciler.service.js +0 -345
  354. package/dist/executions/execution-reconciler.service.js.map +0 -1
  355. package/dist/executions/executions.controller.d.ts +0 -8
  356. package/dist/executions/executions.controller.js +0 -70
  357. package/dist/executions/executions.controller.js.map +0 -1
  358. package/dist/executions/executions.gateway.d.ts +0 -21
  359. package/dist/executions/executions.gateway.js +0 -167
  360. package/dist/executions/executions.gateway.js.map +0 -1
  361. package/dist/executions/executions.service.d.ts +0 -15
  362. package/dist/executions/executions.service.js +0 -119
  363. package/dist/executions/executions.service.js.map +0 -1
  364. package/dist/executions/task-execution.entity.d.ts +0 -25
  365. package/dist/executions/task-execution.entity.js +0 -130
  366. package/dist/executions/task-execution.entity.js.map +0 -1
  367. package/dist/executions/worker-session.entity.d.ts +0 -19
  368. package/dist/executions/worker-session.entity.js +0 -103
  369. package/dist/executions/worker-session.entity.js.map +0 -1
  370. package/dist/executions/worker-session.service.d.ts +0 -24
  371. package/dist/executions/worker-session.service.js +0 -115
  372. package/dist/executions/worker-session.service.js.map +0 -1
  373. package/dist/executions/workers.gateway.d.ts +0 -25
  374. package/dist/executions/workers.gateway.js +0 -355
  375. package/dist/executions/workers.gateway.js.map +0 -1
  376. package/dist/executions-v2/active/active-execution-context-resolver.service.js.map +0 -1
  377. package/dist/executions-v2/active/active-task-execution.controller.js.map +0 -1
  378. package/dist/executions-v2/active/active-task-execution.entity.js.map +0 -1
  379. package/dist/executions-v2/active/active-task-execution.service.js.map +0 -1
  380. package/dist/executions-v2/active/dto/http/active-task-execution-response.dto.js.map +0 -1
  381. package/dist/executions-v2/active/dto/http/stop-active-task-execution.dto.js.map +0 -1
  382. package/dist/executions-v2/errors/executions-v2.errors.d.ts +0 -13
  383. package/dist/executions-v2/errors/executions-v2.errors.js +0 -31
  384. package/dist/executions-v2/errors/executions-v2.errors.js.map +0 -1
  385. package/dist/executions-v2/events/execution-activity.events.js.map +0 -1
  386. package/dist/executions-v2/execution-activity.service.js.map +0 -1
  387. package/dist/executions-v2/executions-v2-worker.gateway.js +0 -149
  388. package/dist/executions-v2/executions-v2-worker.gateway.js.map +0 -1
  389. package/dist/executions-v2/executions-v2.module.d.ts +0 -2
  390. package/dist/executions-v2/executions-v2.module.js +0 -78
  391. package/dist/executions-v2/executions-v2.module.js.map +0 -1
  392. package/dist/executions-v2/history/dto/http/task-execution-history-response.dto.js.map +0 -1
  393. package/dist/executions-v2/history/task-execution-history-error-code.enum.js.map +0 -1
  394. package/dist/executions-v2/history/task-execution-history-status.enum.js.map +0 -1
  395. package/dist/executions-v2/history/task-execution-history.controller.js.map +0 -1
  396. package/dist/executions-v2/history/task-execution-history.entity.js.map +0 -1
  397. package/dist/executions-v2/history/task-execution-history.service.js.map +0 -1
  398. package/dist/executions-v2/queue/dto/http/task-execution-queue-entry-response.dto.js.map +0 -1
  399. package/dist/executions-v2/queue/task-execution-queue.controller.js.map +0 -1
  400. package/dist/executions-v2/queue/task-execution-queue.entity.js.map +0 -1
  401. package/dist/executions-v2/queue/task-execution-queue.service.js.map +0 -1
  402. package/dist/executions-v2/readiness/readiness-candidate.repository.js.map +0 -1
  403. package/dist/executions-v2/readiness/task-eligibility-event-source.service.js.map +0 -1
  404. package/dist/executions-v2/readiness/task-eligibility-scheduler.service.js.map +0 -1
  405. package/dist/executions-v2/readiness/task-execution-queue-populator.service.js.map +0 -1
  406. package/dist/executions-v2/staleness/stale-active-task-execution-detector.service.js.map +0 -1
  407. package/dist/executions-v2/staleness/stale-active-task-execution-pruner.service.js.map +0 -1
  408. package/dist/executions-v2/staleness/stale-active-task-execution-scheduler.service.js.map +0 -1
  409. package/dist/executions-v2/task-activity-projection.service.js.map +0 -1
  410. package/dist/public/assets/index-BYBolBql.css +0 -1
  411. package/dist/public/assets/index-Cr1iblrK.js +0 -73
  412. package/dist/public/beta/assets/index-DCkmROA6.js +0 -85
  413. package/dist/public/beta/assets/index-DIzh0pTC.css +0 -1
  414. package/dist/worker/auth/callback-server.d.ts +0 -6
  415. package/dist/worker/auth/callback-server.js +0 -50
  416. package/dist/worker/auth/callback-server.js.map +0 -1
  417. package/dist/worker/auth/credentials-store.d.ts +0 -4
  418. package/dist/worker/auth/credentials-store.js +0 -23
  419. package/dist/worker/auth/credentials-store.js.map +0 -1
  420. package/dist/worker/auth/oauth-client.d.ts +0 -4
  421. package/dist/worker/auth/oauth-client.js +0 -116
  422. package/dist/worker/auth/oauth-client.js.map +0 -1
  423. package/dist/worker/auth/worker-auth-client.d.ts +0 -9
  424. package/dist/worker/auth/worker-auth-client.js +0 -35
  425. package/dist/worker/auth/worker-auth-client.js.map +0 -1
  426. package/dist/worker/auth/worker-auth.types.d.ts +0 -30
  427. package/dist/worker/auth/worker-auth.types.js.map +0 -1
  428. package/dist/worker/execution-orchestrator.d.ts +0 -25
  429. package/dist/worker/execution-orchestrator.js +0 -186
  430. package/dist/worker/execution-orchestrator.js.map +0 -1
  431. package/dist/worker/formatters/claude-message-formatter.d.ts +0 -13
  432. package/dist/worker/formatters/claude-message-formatter.js +0 -90
  433. package/dist/worker/formatters/claude-message-formatter.js.map +0 -1
  434. package/dist/worker/formatters/opencode-message-formatter.d.ts +0 -6
  435. package/dist/worker/formatters/opencode-message-formatter.js +0 -51
  436. package/dist/worker/formatters/opencode-message-formatter.js.map +0 -1
  437. package/dist/worker/helpers/ensure-repo.d.ts +0 -1
  438. package/dist/worker/helpers/ensure-repo.js +0 -37
  439. package/dist/worker/helpers/ensure-repo.js.map +0 -1
  440. package/dist/worker/helpers/prepare-workspace.d.ts +0 -1
  441. package/dist/worker/helpers/prepare-workspace.js +0 -24
  442. package/dist/worker/helpers/prepare-workspace.js.map +0 -1
  443. package/dist/worker/helpers/session-store.d.ts +0 -2
  444. package/dist/worker/helpers/session-store.js +0 -47
  445. package/dist/worker/helpers/session-store.js.map +0 -1
  446. package/dist/worker/runners/agent-runner.types.d.ts +0 -28
  447. package/dist/worker/runners/agent-runner.types.js +0 -3
  448. package/dist/worker/runners/agent-runner.types.js.map +0 -1
  449. package/dist/worker/runners/base-agent-runner.d.ts +0 -10
  450. package/dist/worker/runners/base-agent-runner.js +0 -41
  451. package/dist/worker/runners/base-agent-runner.js.map +0 -1
  452. package/dist/worker/runners/claude-agent-runner.d.ts +0 -9
  453. package/dist/worker/runners/claude-agent-runner.js +0 -79
  454. package/dist/worker/runners/claude-agent-runner.js.map +0 -1
  455. package/dist/worker/runners/opencode-agent-runner.d.ts +0 -18
  456. package/dist/worker/runners/opencode-agent-runner.js +0 -170
  457. package/dist/worker/runners/opencode-agent-runner.js.map +0 -1
  458. package/dist/worker/worker-gateway-client.d.ts +0 -45
  459. package/dist/worker/worker-gateway-client.js +0 -332
  460. package/dist/worker/worker-gateway-client.js.map +0 -1
  461. package/dist/worker/worker-mode.d.ts +0 -6
  462. package/dist/worker/worker-mode.js +0 -40
  463. package/dist/worker/worker-mode.js.map +0 -1
  464. /package/dist/{executions-v2 → executions}/active/active-execution-context-resolver.service.d.ts +0 -0
  465. /package/dist/{executions-v2 → executions}/active/dto/http/stop-active-task-execution.dto.d.ts +0 -0
  466. /package/dist/{executions-v2 → executions}/active/dto/http/stop-active-task-execution.dto.js +0 -0
  467. /package/dist/{executions-v2 → executions}/events/execution-activity.events.d.ts +0 -0
  468. /package/dist/{executions-v2 → executions}/history/task-execution-history-error-code.enum.d.ts +0 -0
  469. /package/dist/{executions-v2 → executions}/history/task-execution-history-error-code.enum.js +0 -0
  470. /package/dist/{executions-v2 → executions}/history/task-execution-history-status.enum.d.ts +0 -0
  471. /package/dist/{executions-v2 → executions}/history/task-execution-history-status.enum.js +0 -0
  472. /package/dist/{executions-v2 → executions}/history/task-execution-history.controller.d.ts +0 -0
  473. /package/dist/{executions-v2 → executions}/history/task-execution-history.service.d.ts +0 -0
  474. /package/dist/{executions-v2 → executions}/history/task-execution-history.service.js +0 -0
  475. /package/dist/{executions-v2 → executions}/queue/dto/http/task-execution-queue-entry-response.dto.d.ts +0 -0
  476. /package/dist/{executions-v2 → executions}/queue/dto/http/task-execution-queue-entry-response.dto.js +0 -0
  477. /package/dist/{executions-v2 → executions}/queue/task-execution-queue.controller.d.ts +0 -0
  478. /package/dist/{executions-v2 → executions}/queue/task-execution-queue.entity.d.ts +0 -0
  479. /package/dist/{executions-v2 → executions}/queue/task-execution-queue.entity.js +0 -0
  480. /package/dist/{executions-v2 → executions}/queue/task-execution-queue.service.d.ts +0 -0
  481. /package/dist/{executions-v2 → executions}/queue/task-execution-queue.service.js +0 -0
  482. /package/dist/{executions-v2 → executions}/readiness/task-eligibility-event-source.service.d.ts +0 -0
  483. /package/dist/{executions-v2 → executions}/readiness/task-eligibility-event-source.service.js +0 -0
  484. /package/dist/{executions-v2 → executions}/readiness/task-eligibility-scheduler.service.d.ts +0 -0
  485. /package/dist/{executions-v2 → executions}/readiness/task-eligibility-scheduler.service.js +0 -0
  486. /package/dist/{executions-v2 → executions}/readiness/task-execution-queue-populator.service.d.ts +0 -0
  487. /package/dist/{executions-v2 → executions}/staleness/stale-active-task-execution-detector.service.d.ts +0 -0
  488. /package/dist/{executions-v2 → executions}/staleness/stale-active-task-execution-pruner.service.d.ts +0 -0
  489. /package/dist/{executions-v2 → executions}/staleness/stale-active-task-execution-pruner.service.js +0 -0
  490. /package/dist/{executions-v2 → executions}/staleness/stale-active-task-execution-scheduler.service.d.ts +0 -0
  491. /package/dist/{executions-v2 → executions}/task-activity-projection.service.d.ts +0 -0
  492. /package/dist/{executions-v2 → executions}/task-activity-projection.service.js +0 -0
@@ -0,0 +1,29 @@
1
+ "use strict";
2
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
3
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
4
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
5
+ 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;
6
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
7
+ };
8
+ var __metadata = (this && this.__metadata) || function (k, v) {
9
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
10
+ };
11
+ Object.defineProperty(exports, "__esModule", { value: true });
12
+ exports.UpdateRunnerSessionIdDto = void 0;
13
+ const swagger_1 = require("@nestjs/swagger");
14
+ const class_validator_1 = require("class-validator");
15
+ class UpdateRunnerSessionIdDto {
16
+ sessionId;
17
+ }
18
+ exports.UpdateRunnerSessionIdDto = UpdateRunnerSessionIdDto;
19
+ __decorate([
20
+ (0, swagger_1.ApiProperty)({
21
+ description: 'Agent runtime session identifier for this execution',
22
+ example: 'session_01JZ0SMM85FBFA8Y82M8VREY2A',
23
+ maxLength: 255,
24
+ }),
25
+ (0, class_validator_1.IsString)(),
26
+ (0, class_validator_1.MaxLength)(255),
27
+ __metadata("design:type", String)
28
+ ], UpdateRunnerSessionIdDto.prototype, "sessionId", void 0);
29
+ //# sourceMappingURL=update-runner-session-id.dto.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"update-runner-session-id.dto.js","sourceRoot":"","sources":["../../../../../src/executions/active/dto/http/update-runner-session-id.dto.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,6CAA8C;AAC9C,qDAAsD;AAEtD,MAAa,wBAAwB;IAQnC,SAAS,CAAU;CACpB;AATD,4DASC;AADC;IAPC,IAAA,qBAAW,EAAC;QACX,WAAW,EAAE,qDAAqD;QAClE,OAAO,EAAE,oCAAoC;QAC7C,SAAS,EAAE,GAAG;KACf,CAAC;IACD,IAAA,0BAAQ,GAAE;IACV,IAAA,2BAAS,EAAC,GAAG,CAAC;;2DACI"}
@@ -1,21 +1,13 @@
1
- export declare const ExecutionsErrorCodes: {
2
- readonly TASK_EXECUTION_NOT_FOUND: "TASK_EXECUTION_NOT_FOUND";
3
- readonly TASK_EXECUTION_NOT_CLAIMABLE: "TASK_EXECUTION_NOT_CLAIMABLE";
4
- readonly TASK_EXECUTION_ALREADY_CLAIMED: "TASK_EXECUTION_ALREADY_CLAIMED";
5
- };
6
- type ExecutionsErrorCode = (typeof ExecutionsErrorCodes)[keyof typeof ExecutionsErrorCodes];
7
- export declare abstract class ExecutionsDomainError extends Error {
8
- readonly code: ExecutionsErrorCode;
1
+ export declare abstract class ExecutionsError extends Error {
9
2
  readonly context?: Record<string, unknown> | undefined;
10
- constructor(message: string, code: ExecutionsErrorCode, context?: Record<string, unknown> | undefined);
3
+ constructor(message: string, context?: Record<string, unknown> | undefined);
11
4
  }
12
- export declare class TaskExecutionNotFoundError extends ExecutionsDomainError {
13
- constructor(executionId: string);
5
+ export declare class TaskExecutionQueueEntryNotFoundError extends ExecutionsError {
6
+ constructor(taskId: string);
14
7
  }
15
- export declare class TaskExecutionNotClaimableError extends ExecutionsDomainError {
16
- constructor(executionId: string, reason: string);
8
+ export declare class TaskAlreadyClaimedError extends ExecutionsError {
9
+ constructor(taskId: string);
17
10
  }
18
- export declare class TaskExecutionAlreadyClaimedError extends ExecutionsDomainError {
19
- constructor(executionId: string, workerSessionId: string | null);
11
+ export declare class ActiveTaskExecutionNotFoundError extends ExecutionsError {
12
+ constructor(executionId: string);
20
13
  }
21
- export {};
@@ -1,41 +1,31 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.TaskExecutionAlreadyClaimedError = exports.TaskExecutionNotClaimableError = exports.TaskExecutionNotFoundError = exports.ExecutionsDomainError = exports.ExecutionsErrorCodes = void 0;
4
- const errors_1 = require("@taico/errors");
5
- exports.ExecutionsErrorCodes = {
6
- TASK_EXECUTION_NOT_FOUND: errors_1.ErrorCodes.TASK_EXECUTION_NOT_FOUND,
7
- TASK_EXECUTION_NOT_CLAIMABLE: errors_1.ErrorCodes.TASK_EXECUTION_NOT_CLAIMABLE,
8
- TASK_EXECUTION_ALREADY_CLAIMED: errors_1.ErrorCodes.TASK_EXECUTION_ALREADY_CLAIMED,
9
- };
10
- class ExecutionsDomainError extends Error {
11
- code;
3
+ exports.ActiveTaskExecutionNotFoundError = exports.TaskAlreadyClaimedError = exports.TaskExecutionQueueEntryNotFoundError = exports.ExecutionsError = void 0;
4
+ class ExecutionsError extends Error {
12
5
  context;
13
- constructor(message, code, context) {
6
+ constructor(message, context) {
14
7
  super(message);
15
- this.code = code;
16
8
  this.context = context;
17
9
  this.name = this.constructor.name;
18
10
  }
19
11
  }
20
- exports.ExecutionsDomainError = ExecutionsDomainError;
21
- class TaskExecutionNotFoundError extends ExecutionsDomainError {
22
- constructor(executionId) {
23
- super('Task execution not found.', exports.ExecutionsErrorCodes.TASK_EXECUTION_NOT_FOUND, {
24
- executionId,
25
- });
12
+ exports.ExecutionsError = ExecutionsError;
13
+ class TaskExecutionQueueEntryNotFoundError extends ExecutionsError {
14
+ constructor(taskId) {
15
+ super('Task is not present in the execution queue.', { taskId });
26
16
  }
27
17
  }
28
- exports.TaskExecutionNotFoundError = TaskExecutionNotFoundError;
29
- class TaskExecutionNotClaimableError extends ExecutionsDomainError {
30
- constructor(executionId, reason) {
31
- super('Task execution is not claimable.', exports.ExecutionsErrorCodes.TASK_EXECUTION_NOT_CLAIMABLE, { executionId, reason });
18
+ exports.TaskExecutionQueueEntryNotFoundError = TaskExecutionQueueEntryNotFoundError;
19
+ class TaskAlreadyClaimedError extends ExecutionsError {
20
+ constructor(taskId) {
21
+ super('Task already has an active execution.', { taskId });
32
22
  }
33
23
  }
34
- exports.TaskExecutionNotClaimableError = TaskExecutionNotClaimableError;
35
- class TaskExecutionAlreadyClaimedError extends ExecutionsDomainError {
36
- constructor(executionId, workerSessionId) {
37
- super('Task execution is already claimed by another worker.', exports.ExecutionsErrorCodes.TASK_EXECUTION_ALREADY_CLAIMED, { executionId, workerSessionId });
24
+ exports.TaskAlreadyClaimedError = TaskAlreadyClaimedError;
25
+ class ActiveTaskExecutionNotFoundError extends ExecutionsError {
26
+ constructor(executionId) {
27
+ super('Active execution was not found.', { executionId });
38
28
  }
39
29
  }
40
- exports.TaskExecutionAlreadyClaimedError = TaskExecutionAlreadyClaimedError;
30
+ exports.ActiveTaskExecutionNotFoundError = ActiveTaskExecutionNotFoundError;
41
31
  //# sourceMappingURL=executions.errors.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"executions.errors.js","sourceRoot":"","sources":["../../../src/executions/errors/executions.errors.ts"],"names":[],"mappings":";;;AAAA,0CAA2C;AAG9B,QAAA,oBAAoB,GAAG;IAClC,wBAAwB,EAAE,mBAAU,CAAC,wBAAwB;IAC7D,4BAA4B,EAAE,mBAAU,CAAC,4BAA4B;IACrE,8BAA8B,EAAE,mBAAU,CAAC,8BAA8B;CACjE,CAAC;AASX,MAAsB,qBAAsB,SAAQ,KAAK;IAG5C;IACA;IAHX,YACE,OAAe,EACN,IAAyB,EACzB,OAAiC;QAE1C,KAAK,CAAC,OAAO,CAAC,CAAC;QAHN,SAAI,GAAJ,IAAI,CAAqB;QACzB,YAAO,GAAP,OAAO,CAA0B;QAG1C,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC;IACpC,CAAC;CACF;AATD,sDASC;AAED,MAAa,0BAA2B,SAAQ,qBAAqB;IACnE,YAAY,WAAmB;QAC7B,KAAK,CAAC,2BAA2B,EAAE,4BAAoB,CAAC,wBAAwB,EAAE;YAChF,WAAW;SACZ,CAAC,CAAC;IACL,CAAC;CACF;AAND,gEAMC;AAED,MAAa,8BAA+B,SAAQ,qBAAqB;IACvE,YAAY,WAAmB,EAAE,MAAc;QAC7C,KAAK,CACH,kCAAkC,EAClC,4BAAoB,CAAC,4BAA4B,EACjD,EAAE,WAAW,EAAE,MAAM,EAAE,CACxB,CAAC;IACJ,CAAC;CACF;AARD,wEAQC;AAED,MAAa,gCAAiC,SAAQ,qBAAqB;IACzE,YAAY,WAAmB,EAAE,eAA8B;QAC7D,KAAK,CACH,sDAAsD,EACtD,4BAAoB,CAAC,8BAA8B,EACnD,EAAE,WAAW,EAAE,eAAe,EAAE,CACjC,CAAC;IACJ,CAAC;CACF;AARD,4EAQC"}
1
+ {"version":3,"file":"executions.errors.js","sourceRoot":"","sources":["../../../src/executions/errors/executions.errors.ts"],"names":[],"mappings":";;;AAAA,MAAsB,eAAgB,SAAQ,KAAK;IACX;IAAtC,YAAY,OAAe,EAAW,OAAiC;QACrE,KAAK,CAAC,OAAO,CAAC,CAAC;QADqB,YAAO,GAAP,OAAO,CAA0B;QAErE,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC;IACpC,CAAC;CACF;AALD,0CAKC;AAED,MAAa,oCAAqC,SAAQ,eAAe;IACvE,YAAY,MAAc;QACxB,KAAK,CAAC,6CAA6C,EAAE,EAAE,MAAM,EAAE,CAAC,CAAC;IACnE,CAAC;CACF;AAJD,oFAIC;AAED,MAAa,uBAAwB,SAAQ,eAAe;IAC1D,YAAY,MAAc;QACxB,KAAK,CAAC,uCAAuC,EAAE,EAAE,MAAM,EAAE,CAAC,CAAC;IAC7D,CAAC;CACF;AAJD,0DAIC;AAED,MAAa,gCAAiC,SAAQ,eAAe;IACnE,YAAY,WAAmB;QAC7B,KAAK,CAAC,iCAAiC,EAAE,EAAE,WAAW,EAAE,CAAC,CAAC;IAC5D,CAAC;CACF;AAJD,4EAIC"}
@@ -4,7 +4,7 @@ exports.ExecutionActivityEvent = void 0;
4
4
  class ExecutionActivityEvent {
5
5
  actor;
6
6
  payload;
7
- static INTERNAL = Symbol('executions-v2.ExecutionActivityEvent');
7
+ static INTERNAL = Symbol('executions.ExecutionActivityEvent');
8
8
  occurredAt = new Date();
9
9
  constructor(actor, payload) {
10
10
  this.actor = actor;
@@ -0,0 +1 @@
1
+ {"version":3,"file":"execution-activity.events.js","sourceRoot":"","sources":["../../../src/executions/events/execution-activity.events.ts"],"names":[],"mappings":";;;AAUA,MAAa,sBAAsB;IAMf;IACA;IANlB,MAAM,CAAU,QAAQ,GAAG,MAAM,CAAC,mCAAmC,CAAC,CAAC;IAE9D,UAAU,GAAS,IAAI,IAAI,EAAE,CAAC;IAEvC,YACkB,KAAqB,EACrB,OAAiC;QADjC,UAAK,GAAL,KAAK,CAAgB;QACrB,YAAO,GAAP,OAAO,CAA0B;IAChD,CAAC;;AARN,wDASC"}
@@ -8,6 +8,14 @@ export type PublishExecutionActivityInput = {
8
8
  ts?: number;
9
9
  runnerSessionId?: string | null;
10
10
  };
11
+ export type PublishSystemExecutionActivityInput = {
12
+ executionId: string;
13
+ taskId: string;
14
+ agentActorId: string;
15
+ kind: string;
16
+ message?: string;
17
+ ts?: number;
18
+ };
11
19
  export type TouchExecutionHeartbeatInput = {
12
20
  executionId: string;
13
21
  };
@@ -16,5 +24,7 @@ export declare class ExecutionActivityService {
16
24
  private readonly eventEmitter;
17
25
  constructor(activeTaskExecutionRepository: Repository<ActiveTaskExecutionEntity>, eventEmitter: EventEmitter2);
18
26
  publishActivity(input: PublishExecutionActivityInput): Promise<void>;
27
+ publishSystemActivity(input: PublishSystemExecutionActivityInput): void;
19
28
  touchHeartbeat(input: TouchExecutionHeartbeatInput): Promise<boolean>;
29
+ private emitExecutionActivity;
20
30
  }
@@ -18,7 +18,7 @@ const event_emitter_1 = require("@nestjs/event-emitter");
18
18
  const typeorm_1 = require("@nestjs/typeorm");
19
19
  const typeorm_2 = require("typeorm");
20
20
  const active_task_execution_entity_1 = require("./active/active-task-execution.entity");
21
- const executions_v2_errors_1 = require("./errors/executions-v2.errors");
21
+ const executions_errors_1 = require("./errors/executions.errors");
22
22
  const execution_activity_events_1 = require("./events/execution-activity.events");
23
23
  let ExecutionActivityService = class ExecutionActivityService {
24
24
  activeTaskExecutionRepository;
@@ -32,17 +32,28 @@ let ExecutionActivityService = class ExecutionActivityService {
32
32
  where: { id: input.executionId },
33
33
  });
34
34
  if (!execution) {
35
- throw new executions_v2_errors_1.ActiveTaskExecutionNotFoundError(input.executionId);
35
+ throw new executions_errors_1.ActiveTaskExecutionNotFoundError(input.executionId);
36
36
  }
37
- this.eventEmitter.emit(execution_activity_events_1.ExecutionActivityEvent.INTERNAL, new execution_activity_events_1.ExecutionActivityEvent({ id: execution.agentActorId }, {
37
+ this.emitExecutionActivity({
38
38
  executionId: execution.id,
39
39
  taskId: execution.taskId,
40
40
  agentActorId: execution.agentActorId,
41
41
  kind: input.kind ?? 'worker.activity',
42
42
  message: input.message,
43
- ts: input.ts ?? Date.now(),
43
+ ts: input.ts,
44
44
  runnerSessionId: input.runnerSessionId ?? null,
45
- }));
45
+ });
46
+ }
47
+ publishSystemActivity(input) {
48
+ this.emitExecutionActivity({
49
+ executionId: input.executionId,
50
+ taskId: input.taskId,
51
+ agentActorId: input.agentActorId,
52
+ kind: input.kind,
53
+ message: input.message,
54
+ ts: input.ts,
55
+ runnerSessionId: null,
56
+ });
46
57
  }
47
58
  async touchHeartbeat(input) {
48
59
  return this.activeTaskExecutionRepository
@@ -57,6 +68,17 @@ let ExecutionActivityService = class ExecutionActivityService {
57
68
  .execute()
58
69
  .then((result) => (result.affected ?? 0) > 0);
59
70
  }
71
+ emitExecutionActivity(input) {
72
+ this.eventEmitter.emit(execution_activity_events_1.ExecutionActivityEvent.INTERNAL, new execution_activity_events_1.ExecutionActivityEvent({ id: input.agentActorId }, {
73
+ executionId: input.executionId,
74
+ taskId: input.taskId,
75
+ agentActorId: input.agentActorId,
76
+ kind: input.kind,
77
+ message: input.message,
78
+ ts: input.ts ?? Date.now(),
79
+ runnerSessionId: input.runnerSessionId ?? null,
80
+ }));
81
+ }
60
82
  };
61
83
  exports.ExecutionActivityService = ExecutionActivityService;
62
84
  exports.ExecutionActivityService = ExecutionActivityService = __decorate([
@@ -0,0 +1 @@
1
+ {"version":3,"file":"execution-activity.service.js","sourceRoot":"","sources":["../../src/executions/execution-activity.service.ts"],"names":[],"mappings":"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"}
@@ -1,13 +1,18 @@
1
1
  import { OnGatewayConnection, OnGatewayDisconnect, OnGatewayInit } from '@nestjs/websockets';
2
- import { Socket } from 'socket.io';
2
+ import { Server, Socket } from 'socket.io';
3
3
  import { type PostExecutionHeartbeatPayload, type PostExecutionActivityPayload } from '@taico/events';
4
4
  import { ExecutionActivityService } from './execution-activity.service';
5
- export declare class ExecutionsV2WorkerGateway implements OnGatewayInit, OnGatewayConnection, OnGatewayDisconnect {
5
+ import { WorkersService } from '../workers/workers.service';
6
+ import { AccessTokenValidationService } from '../auth/guards/validation/access-token-validation.service';
7
+ export declare class ExecutionsWorkerGateway implements OnGatewayInit, OnGatewayConnection, OnGatewayDisconnect {
6
8
  private readonly executionActivityService;
9
+ private readonly workersService;
10
+ private readonly accessTokenValidationService;
7
11
  private readonly logger;
8
12
  private readonly socketExpiryTimers;
9
- constructor(executionActivityService: ExecutionActivityService);
10
- afterInit(): void;
13
+ private readonly harnessReportRequestedSocketIds;
14
+ constructor(executionActivityService: ExecutionActivityService, workersService: WorkersService, accessTokenValidationService: AccessTokenValidationService);
15
+ afterInit(server: Server): void;
11
16
  handleConnection(client: Socket): void;
12
17
  handleDisconnect(client: Socket): void;
13
18
  postExecutionActivity(client: Socket, body: PostExecutionActivityPayload): Promise<{
@@ -24,6 +29,19 @@ export declare class ExecutionsV2WorkerGateway implements OnGatewayInit, OnGatew
24
29
  ok: boolean;
25
30
  error?: undefined;
26
31
  }>;
32
+ postWorkerHeartbeat(client: Socket): Promise<{
33
+ ok: boolean;
34
+ error?: undefined;
35
+ } | {
36
+ ok: boolean;
37
+ error: string;
38
+ }>;
27
39
  private scheduleTokenExpiryDisconnect;
28
40
  private clearTokenExpiryDisconnect;
41
+ private recordWorkerSeen;
42
+ private recordAuthenticatedWorkerSeen;
43
+ private getOauthClientId;
44
+ private requestWorkerHarnessesReport;
45
+ private authenticateWorkerSocket;
46
+ private getSocketToken;
29
47
  }
@@ -0,0 +1,288 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
19
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
20
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
21
+ 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;
22
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
23
+ };
24
+ var __importStar = (this && this.__importStar) || (function () {
25
+ var ownKeys = function(o) {
26
+ ownKeys = Object.getOwnPropertyNames || function (o) {
27
+ var ar = [];
28
+ for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
29
+ return ar;
30
+ };
31
+ return ownKeys(o);
32
+ };
33
+ return function (mod) {
34
+ if (mod && mod.__esModule) return mod;
35
+ var result = {};
36
+ if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
37
+ __setModuleDefault(result, mod);
38
+ return result;
39
+ };
40
+ })();
41
+ var __metadata = (this && this.__metadata) || function (k, v) {
42
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
43
+ };
44
+ var __param = (this && this.__param) || function (paramIndex, decorator) {
45
+ return function (target, key) { decorator(target, key, paramIndex); }
46
+ };
47
+ var ExecutionsWorkerGateway_1;
48
+ Object.defineProperty(exports, "__esModule", { value: true });
49
+ exports.ExecutionsWorkerGateway = void 0;
50
+ const websockets_1 = require("@nestjs/websockets");
51
+ const common_1 = require("@nestjs/common");
52
+ const socket_io_1 = require("socket.io");
53
+ const cookie = __importStar(require("cookie"));
54
+ const events_1 = require("@taico/events");
55
+ const ws_access_token_guard_1 = require("../auth/guards/guards/ws-access-token-guard");
56
+ const ws_scopes_guard_1 = require("../auth/guards/guards/ws-scopes.guard");
57
+ const require_scopes_decorator_1 = require("../auth/guards/decorators/require-scopes.decorator");
58
+ const workers_scopes_1 = require("./workers.scopes");
59
+ const execution_activity_service_1 = require("./execution-activity.service");
60
+ const executions_errors_1 = require("./errors/executions.errors");
61
+ const workers_service_1 = require("../workers/workers.service");
62
+ const access_token_validation_service_1 = require("../auth/guards/validation/access-token-validation.service");
63
+ const token_header_extractor_1 = require("../auth/guards/extractors/token-header.extractor");
64
+ const token_cookie_extractor_1 = require("../auth/guards/extractors/token-cookie.extractor");
65
+ const SOCKET_AUTH_EXPIRY_SKEW_MS = 1_000;
66
+ let ExecutionsWorkerGateway = ExecutionsWorkerGateway_1 = class ExecutionsWorkerGateway {
67
+ executionActivityService;
68
+ workersService;
69
+ accessTokenValidationService;
70
+ logger = new common_1.Logger(ExecutionsWorkerGateway_1.name);
71
+ socketExpiryTimers = new Map();
72
+ harnessReportRequestedSocketIds = new Set();
73
+ constructor(executionActivityService, workersService, accessTokenValidationService) {
74
+ this.executionActivityService = executionActivityService;
75
+ this.workersService = workersService;
76
+ this.accessTokenValidationService = accessTokenValidationService;
77
+ }
78
+ afterInit(server) {
79
+ server.use((client, next) => {
80
+ void this.authenticateWorkerSocket(client)
81
+ .then(() => next())
82
+ .catch((error) => {
83
+ this.logger.warn({
84
+ message: 'Worker socket authentication failed',
85
+ socketId: client.id,
86
+ error: error instanceof Error ? error.message : String(error),
87
+ });
88
+ next(new Error('unauthorized'));
89
+ });
90
+ });
91
+ this.logger.log('Executions worker WebSocket Gateway initialized');
92
+ }
93
+ handleConnection(client) {
94
+ this.logger.log(`Worker client connected: ${client.id}`);
95
+ void this.recordAuthenticatedWorkerSeen(client).catch((error) => {
96
+ this.logger.warn({
97
+ message: 'Failed to record worker connection liveness',
98
+ socketId: client.id,
99
+ error: error instanceof Error ? error.message : String(error),
100
+ });
101
+ });
102
+ }
103
+ handleDisconnect(client) {
104
+ this.logger.log(`Worker client disconnected: ${client.id}`);
105
+ this.clearTokenExpiryDisconnect(client.id);
106
+ this.harnessReportRequestedSocketIds.delete(client.id);
107
+ }
108
+ async postExecutionActivity(client, body) {
109
+ if (!body?.executionId) {
110
+ return { ok: false, error: 'executionId required' };
111
+ }
112
+ try {
113
+ await this.executionActivityService.publishActivity({
114
+ executionId: body.executionId,
115
+ kind: body.kind,
116
+ message: body.message,
117
+ ts: body.ts,
118
+ runnerSessionId: body.runnerSessionId,
119
+ });
120
+ return { ok: true };
121
+ }
122
+ catch (error) {
123
+ if (error instanceof executions_errors_1.ActiveTaskExecutionNotFoundError) {
124
+ return { ok: false, error: error.message };
125
+ }
126
+ this.logger.error({
127
+ message: 'Failed to forward execution activity',
128
+ socketId: client.id,
129
+ executionId: body.executionId,
130
+ error: error instanceof Error ? error.message : String(error),
131
+ });
132
+ return { ok: false, error: 'internal error' };
133
+ }
134
+ }
135
+ async postExecutionHeartbeat(client, body) {
136
+ if (!body?.executionId) {
137
+ return { ok: false, error: 'executionId required' };
138
+ }
139
+ try {
140
+ await this.executionActivityService.touchHeartbeat({
141
+ executionId: body.executionId,
142
+ });
143
+ await this.recordAuthenticatedWorkerSeen(client);
144
+ return { ok: true };
145
+ }
146
+ catch (error) {
147
+ this.logger.error({
148
+ message: 'Failed to process execution heartbeat',
149
+ socketId: client.id,
150
+ executionId: body.executionId,
151
+ error: error instanceof Error ? error.message : String(error),
152
+ });
153
+ return { ok: false, error: 'internal error' };
154
+ }
155
+ }
156
+ async postWorkerHeartbeat(client) {
157
+ try {
158
+ await this.recordAuthenticatedWorkerSeen(client);
159
+ return { ok: true };
160
+ }
161
+ catch (error) {
162
+ this.logger.error({
163
+ message: 'Failed to process worker heartbeat',
164
+ socketId: client.id,
165
+ error: error instanceof Error ? error.message : String(error),
166
+ });
167
+ return { ok: false, error: 'internal error' };
168
+ }
169
+ }
170
+ scheduleTokenExpiryDisconnect(client) {
171
+ this.clearTokenExpiryDisconnect(client.id);
172
+ const auth = client.data.auth;
173
+ const expSeconds = auth?.claims?.exp;
174
+ if (!expSeconds) {
175
+ return;
176
+ }
177
+ const disconnectAtMs = expSeconds * 1000 - SOCKET_AUTH_EXPIRY_SKEW_MS;
178
+ const delayMs = disconnectAtMs - Date.now();
179
+ if (delayMs <= 0) {
180
+ client.disconnect(true);
181
+ return;
182
+ }
183
+ const timer = setTimeout(() => {
184
+ this.logger.log(`Disconnecting worker socket ${client.id} because its auth token expired`);
185
+ client.disconnect(true);
186
+ }, delayMs);
187
+ this.socketExpiryTimers.set(client.id, timer);
188
+ }
189
+ clearTokenExpiryDisconnect(socketId) {
190
+ const timer = this.socketExpiryTimers.get(socketId);
191
+ if (!timer) {
192
+ return;
193
+ }
194
+ clearTimeout(timer);
195
+ this.socketExpiryTimers.delete(socketId);
196
+ }
197
+ async recordWorkerSeen(client) {
198
+ const oauthClientId = this.getOauthClientId(client);
199
+ if (!oauthClientId) {
200
+ return false;
201
+ }
202
+ await this.workersService.recordWorkerSeen({ oauthClientId });
203
+ return true;
204
+ }
205
+ async recordAuthenticatedWorkerSeen(client) {
206
+ if (!(await this.recordWorkerSeen(client))) {
207
+ return;
208
+ }
209
+ this.scheduleTokenExpiryDisconnect(client);
210
+ this.requestWorkerHarnessesReport(client);
211
+ }
212
+ getOauthClientId(client) {
213
+ const auth = client.data.auth;
214
+ const oauthClientId = auth?.claims?.client_id;
215
+ if (!oauthClientId) {
216
+ this.logger.warn(`Worker socket ${client.id} is missing client_id in auth claims`);
217
+ return null;
218
+ }
219
+ return oauthClientId;
220
+ }
221
+ requestWorkerHarnessesReport(client) {
222
+ if (this.harnessReportRequestedSocketIds.has(client.id)) {
223
+ return;
224
+ }
225
+ this.harnessReportRequestedSocketIds.add(client.id);
226
+ client.emit(events_1.ExecutionWireEvents.WORKER_HARNESSES_REPORT_REQUESTED);
227
+ }
228
+ async authenticateWorkerSocket(client) {
229
+ const token = this.getSocketToken(client);
230
+ if (!token) {
231
+ throw new Error('missing token');
232
+ }
233
+ const claims = await this.accessTokenValidationService.validateAccessToken(token);
234
+ if (!claims.scope.includes(workers_scopes_1.WorkersScopes.CONNECT.id)) {
235
+ throw new Error(`missing required scope ${workers_scopes_1.WorkersScopes.CONNECT.id}`);
236
+ }
237
+ const authContext = {
238
+ token,
239
+ claims,
240
+ scopes: claims.scope,
241
+ subject: claims.sub,
242
+ };
243
+ client.data.auth = authContext;
244
+ }
245
+ getSocketToken(client) {
246
+ return (client.handshake.auth?.token ||
247
+ (0, token_header_extractor_1.tokenFromHeaders)(client.handshake.headers) ||
248
+ (0, token_cookie_extractor_1.tokenFromCookies)(cookie.parse(client.handshake.headers.cookie || '')));
249
+ }
250
+ };
251
+ exports.ExecutionsWorkerGateway = ExecutionsWorkerGateway;
252
+ __decorate([
253
+ (0, websockets_1.SubscribeMessage)(events_1.ExecutionWireEvents.EXECUTION_ACTIVITY_POST),
254
+ __param(0, (0, websockets_1.ConnectedSocket)()),
255
+ __param(1, (0, websockets_1.MessageBody)()),
256
+ __metadata("design:type", Function),
257
+ __metadata("design:paramtypes", [socket_io_1.Socket, Object]),
258
+ __metadata("design:returntype", Promise)
259
+ ], ExecutionsWorkerGateway.prototype, "postExecutionActivity", null);
260
+ __decorate([
261
+ (0, websockets_1.SubscribeMessage)(events_1.ExecutionWireEvents.EXECUTION_HEARTBEAT_POST),
262
+ __param(0, (0, websockets_1.ConnectedSocket)()),
263
+ __param(1, (0, websockets_1.MessageBody)()),
264
+ __metadata("design:type", Function),
265
+ __metadata("design:paramtypes", [socket_io_1.Socket, Object]),
266
+ __metadata("design:returntype", Promise)
267
+ ], ExecutionsWorkerGateway.prototype, "postExecutionHeartbeat", null);
268
+ __decorate([
269
+ (0, websockets_1.SubscribeMessage)(events_1.ExecutionWireEvents.WORKER_HEARTBEAT_POST),
270
+ __param(0, (0, websockets_1.ConnectedSocket)()),
271
+ __metadata("design:type", Function),
272
+ __metadata("design:paramtypes", [socket_io_1.Socket]),
273
+ __metadata("design:returntype", Promise)
274
+ ], ExecutionsWorkerGateway.prototype, "postWorkerHeartbeat", null);
275
+ exports.ExecutionsWorkerGateway = ExecutionsWorkerGateway = ExecutionsWorkerGateway_1 = __decorate([
276
+ (0, common_1.UseGuards)(ws_access_token_guard_1.WsAccessTokenGuard, ws_scopes_guard_1.WsScopesGuard),
277
+ (0, require_scopes_decorator_1.RequireScopes)(workers_scopes_1.WorkersScopes.CONNECT.id),
278
+ (0, websockets_1.WebSocketGateway)({
279
+ cors: {
280
+ origin: '*',
281
+ },
282
+ namespace: '/executions/worker',
283
+ }),
284
+ __metadata("design:paramtypes", [execution_activity_service_1.ExecutionActivityService,
285
+ workers_service_1.WorkersService,
286
+ access_token_validation_service_1.AccessTokenValidationService])
287
+ ], ExecutionsWorkerGateway);
288
+ //# sourceMappingURL=executions-worker.gateway.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"executions-worker.gateway.js","sourceRoot":"","sources":["../../src/executions/executions-worker.gateway.ts"],"names":[],"mappings":"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"}