crewly 1.6.5 → 1.7.0

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 (267) hide show
  1. package/config/roles/auditor/prompt.md +24 -0
  2. package/config/roles/developer/prompt.md +2 -1
  3. package/config/roles/orchestrator/prompt.md +74 -2
  4. package/config/roles/team-leader/prompt.md +6 -0
  5. package/config/skills/agent/core/create-request/SKILL.md +1 -1
  6. package/config/skills/agent/core/create-request/execute.sh +29 -2
  7. package/config/skills/agent/core/create-request/execute.test.sh +168 -0
  8. package/config/skills/agent/core/report-status/SKILL.md +8 -1
  9. package/config/skills/agent/core/report-status/execute.sh +23 -1
  10. package/config/skills/orchestrator/heartbeat/execute.sh +48 -6
  11. package/config/sops/common/mid-flight-milestone-surface.md +128 -0
  12. package/config/sops/common/owner-facing-communication.md +46 -2
  13. package/config/sops/developer/git-workflow.md +33 -0
  14. package/dist/backend/backend/src/constants.d.ts +12 -0
  15. package/dist/backend/backend/src/constants.d.ts.map +1 -1
  16. package/dist/backend/backend/src/constants.js +12 -0
  17. package/dist/backend/backend/src/constants.js.map +1 -1
  18. package/dist/backend/backend/src/controllers/browser/browser.controller.js +2 -2
  19. package/dist/backend/backend/src/controllers/browser/browser.controller.js.map +1 -1
  20. package/dist/backend/backend/src/controllers/chat/chat.controller.d.ts.map +1 -1
  21. package/dist/backend/backend/src/controllers/chat/chat.controller.js +6 -0
  22. package/dist/backend/backend/src/controllers/chat/chat.controller.js.map +1 -1
  23. package/dist/backend/backend/src/controllers/chat-v2/chat-v2.controller.d.ts +73 -0
  24. package/dist/backend/backend/src/controllers/chat-v2/chat-v2.controller.d.ts.map +1 -1
  25. package/dist/backend/backend/src/controllers/chat-v2/chat-v2.controller.js +128 -0
  26. package/dist/backend/backend/src/controllers/chat-v2/chat-v2.controller.js.map +1 -1
  27. package/dist/backend/backend/src/controllers/chat-v2/chat-v2.routes.d.ts +3 -0
  28. package/dist/backend/backend/src/controllers/chat-v2/chat-v2.routes.d.ts.map +1 -1
  29. package/dist/backend/backend/src/controllers/chat-v2/chat-v2.routes.js +8 -0
  30. package/dist/backend/backend/src/controllers/chat-v2/chat-v2.routes.js.map +1 -1
  31. package/dist/backend/backend/src/controllers/session/session.controller.d.ts.map +1 -1
  32. package/dist/backend/backend/src/controllers/session/session.controller.js +50 -8
  33. package/dist/backend/backend/src/controllers/session/session.controller.js.map +1 -1
  34. package/dist/backend/backend/src/controllers/slack/slack.controller.d.ts.map +1 -1
  35. package/dist/backend/backend/src/controllers/slack/slack.controller.js +215 -94
  36. package/dist/backend/backend/src/controllers/slack/slack.controller.js.map +1 -1
  37. package/dist/backend/backend/src/index.d.ts +1 -0
  38. package/dist/backend/backend/src/index.d.ts.map +1 -1
  39. package/dist/backend/backend/src/index.js +185 -36
  40. package/dist/backend/backend/src/index.js.map +1 -1
  41. package/dist/backend/backend/src/routes/api.routes.d.ts.map +1 -1
  42. package/dist/backend/backend/src/routes/api.routes.js +11 -1
  43. package/dist/backend/backend/src/routes/api.routes.js.map +1 -1
  44. package/dist/backend/backend/src/services/agent/agent-registration.service.d.ts +42 -0
  45. package/dist/backend/backend/src/services/agent/agent-registration.service.d.ts.map +1 -1
  46. package/dist/backend/backend/src/services/agent/agent-registration.service.js +218 -6
  47. package/dist/backend/backend/src/services/agent/agent-registration.service.js.map +1 -1
  48. package/dist/backend/backend/src/services/agent/crewly-agent/agent-runner.service.d.ts +61 -1
  49. package/dist/backend/backend/src/services/agent/crewly-agent/agent-runner.service.d.ts.map +1 -1
  50. package/dist/backend/backend/src/services/agent/crewly-agent/agent-runner.service.js +117 -9
  51. package/dist/backend/backend/src/services/agent/crewly-agent/agent-runner.service.js.map +1 -1
  52. package/dist/backend/backend/src/services/agent/idle-detection.service.d.ts +33 -0
  53. package/dist/backend/backend/src/services/agent/idle-detection.service.d.ts.map +1 -1
  54. package/dist/backend/backend/src/services/agent/idle-detection.service.js +108 -4
  55. package/dist/backend/backend/src/services/agent/idle-detection.service.js.map +1 -1
  56. package/dist/backend/backend/src/services/browser/browser-proxy.service.d.ts +1 -1
  57. package/dist/backend/backend/src/services/browser/browser-proxy.service.d.ts.map +1 -1
  58. package/dist/backend/backend/src/services/browser/browser-proxy.service.js +40 -2
  59. package/dist/backend/backend/src/services/browser/browser-proxy.service.js.map +1 -1
  60. package/dist/backend/backend/src/services/chat/chat.service.d.ts +48 -331
  61. package/dist/backend/backend/src/services/chat/chat.service.d.ts.map +1 -1
  62. package/dist/backend/backend/src/services/chat/chat.service.js +261 -712
  63. package/dist/backend/backend/src/services/chat/chat.service.js.map +1 -1
  64. package/dist/backend/backend/src/services/chat-v2/chat-v2.dispatcher.service.d.ts +82 -1
  65. package/dist/backend/backend/src/services/chat-v2/chat-v2.dispatcher.service.d.ts.map +1 -1
  66. package/dist/backend/backend/src/services/chat-v2/chat-v2.dispatcher.service.js +120 -2
  67. package/dist/backend/backend/src/services/chat-v2/chat-v2.dispatcher.service.js.map +1 -1
  68. package/dist/backend/backend/src/services/chat-v2/chat-v2.providers.d.ts +114 -0
  69. package/dist/backend/backend/src/services/chat-v2/chat-v2.providers.d.ts.map +1 -0
  70. package/dist/backend/backend/src/services/chat-v2/chat-v2.providers.js +182 -0
  71. package/dist/backend/backend/src/services/chat-v2/chat-v2.providers.js.map +1 -0
  72. package/dist/backend/backend/src/services/chat-v2/chat-v2.relay-adapter.service.d.ts +188 -0
  73. package/dist/backend/backend/src/services/chat-v2/chat-v2.relay-adapter.service.d.ts.map +1 -0
  74. package/dist/backend/backend/src/services/chat-v2/chat-v2.relay-adapter.service.js +434 -0
  75. package/dist/backend/backend/src/services/chat-v2/chat-v2.relay-adapter.service.js.map +1 -0
  76. package/dist/backend/backend/src/services/chat-v2/chat-v2.service.d.ts +401 -5
  77. package/dist/backend/backend/src/services/chat-v2/chat-v2.service.d.ts.map +1 -1
  78. package/dist/backend/backend/src/services/chat-v2/chat-v2.service.js +619 -3
  79. package/dist/backend/backend/src/services/chat-v2/chat-v2.service.js.map +1 -1
  80. package/dist/backend/backend/src/services/chat-v2/legacy-dto.utils.d.ts +93 -0
  81. package/dist/backend/backend/src/services/chat-v2/legacy-dto.utils.d.ts.map +1 -0
  82. package/dist/backend/backend/src/services/chat-v2/legacy-dto.utils.js +138 -0
  83. package/dist/backend/backend/src/services/chat-v2/legacy-dto.utils.js.map +1 -0
  84. package/dist/backend/backend/src/services/chat-v2/sqlite/channel.store.d.ts +46 -0
  85. package/dist/backend/backend/src/services/chat-v2/sqlite/channel.store.d.ts.map +1 -1
  86. package/dist/backend/backend/src/services/chat-v2/sqlite/channel.store.js +75 -0
  87. package/dist/backend/backend/src/services/chat-v2/sqlite/channel.store.js.map +1 -1
  88. package/dist/backend/backend/src/services/chat-v2/sqlite/chat-db.d.ts +10 -2
  89. package/dist/backend/backend/src/services/chat-v2/sqlite/chat-db.d.ts.map +1 -1
  90. package/dist/backend/backend/src/services/chat-v2/sqlite/chat-db.js +178 -10
  91. package/dist/backend/backend/src/services/chat-v2/sqlite/chat-db.js.map +1 -1
  92. package/dist/backend/backend/src/services/chat-v2/sqlite/message.store.d.ts +37 -0
  93. package/dist/backend/backend/src/services/chat-v2/sqlite/message.store.d.ts.map +1 -1
  94. package/dist/backend/backend/src/services/chat-v2/sqlite/message.store.js +71 -0
  95. package/dist/backend/backend/src/services/chat-v2/sqlite/message.store.js.map +1 -1
  96. package/dist/backend/backend/src/services/chat-v2/types.d.ts +33 -1
  97. package/dist/backend/backend/src/services/chat-v2/types.d.ts.map +1 -1
  98. package/dist/backend/backend/src/services/chat-v2/types.js +1 -1
  99. package/dist/backend/backend/src/services/chat-v2/types.js.map +1 -1
  100. package/dist/backend/backend/src/services/cloud/cloud-sync.service.d.ts +22 -0
  101. package/dist/backend/backend/src/services/cloud/cloud-sync.service.d.ts.map +1 -1
  102. package/dist/backend/backend/src/services/cloud/cloud-sync.service.js +71 -1
  103. package/dist/backend/backend/src/services/cloud/cloud-sync.service.js.map +1 -1
  104. package/dist/backend/backend/src/services/cloud/cloud-sync.types.d.ts +102 -1
  105. package/dist/backend/backend/src/services/cloud/cloud-sync.types.d.ts.map +1 -1
  106. package/dist/backend/backend/src/services/cloud/cloud-sync.types.js +61 -0
  107. package/dist/backend/backend/src/services/cloud/cloud-sync.types.js.map +1 -1
  108. package/dist/backend/backend/src/services/cloud/device-auto-discovery.service.d.ts +21 -3
  109. package/dist/backend/backend/src/services/cloud/device-auto-discovery.service.d.ts.map +1 -1
  110. package/dist/backend/backend/src/services/cloud/device-auto-discovery.service.js +47 -13
  111. package/dist/backend/backend/src/services/cloud/device-auto-discovery.service.js.map +1 -1
  112. package/dist/backend/backend/src/services/core/system-health.util.d.ts +25 -4
  113. package/dist/backend/backend/src/services/core/system-health.util.d.ts.map +1 -1
  114. package/dist/backend/backend/src/services/core/system-health.util.js +30 -5
  115. package/dist/backend/backend/src/services/core/system-health.util.js.map +1 -1
  116. package/dist/backend/backend/src/services/event-bus/event-bus.service.d.ts.map +1 -1
  117. package/dist/backend/backend/src/services/event-bus/event-bus.service.js +22 -11
  118. package/dist/backend/backend/src/services/event-bus/event-bus.service.js.map +1 -1
  119. package/dist/backend/backend/src/services/memory/memory.service.d.ts.map +1 -1
  120. package/dist/backend/backend/src/services/memory/memory.service.js +35 -3
  121. package/dist/backend/backend/src/services/memory/memory.service.js.map +1 -1
  122. package/dist/backend/backend/src/services/messaging/message-replay.service.d.ts +2 -4
  123. package/dist/backend/backend/src/services/messaging/message-replay.service.d.ts.map +1 -1
  124. package/dist/backend/backend/src/services/messaging/message-replay.service.js +22 -12
  125. package/dist/backend/backend/src/services/messaging/message-replay.service.js.map +1 -1
  126. package/dist/backend/backend/src/services/messaging/queue-processor.service.d.ts.map +1 -1
  127. package/dist/backend/backend/src/services/messaging/queue-processor.service.js +25 -5
  128. package/dist/backend/backend/src/services/messaging/queue-processor.service.js.map +1 -1
  129. package/dist/backend/backend/src/services/monitoring/system-resource-alert.service.d.ts.map +1 -1
  130. package/dist/backend/backend/src/services/monitoring/system-resource-alert.service.js +13 -3
  131. package/dist/backend/backend/src/services/monitoring/system-resource-alert.service.js.map +1 -1
  132. package/dist/backend/backend/src/services/notification/milestone-notification.subscriber.d.ts +99 -0
  133. package/dist/backend/backend/src/services/notification/milestone-notification.subscriber.d.ts.map +1 -0
  134. package/dist/backend/backend/src/services/notification/milestone-notification.subscriber.js +225 -0
  135. package/dist/backend/backend/src/services/notification/milestone-notification.subscriber.js.map +1 -0
  136. package/dist/backend/backend/src/services/reconciler/reconcile-rules.d.ts +39 -18
  137. package/dist/backend/backend/src/services/reconciler/reconcile-rules.d.ts.map +1 -1
  138. package/dist/backend/backend/src/services/reconciler/reconcile-rules.js +60 -32
  139. package/dist/backend/backend/src/services/reconciler/reconcile-rules.js.map +1 -1
  140. package/dist/backend/backend/src/services/reconciler/reconciler-data-provider.d.ts +134 -0
  141. package/dist/backend/backend/src/services/reconciler/reconciler-data-provider.d.ts.map +1 -1
  142. package/dist/backend/backend/src/services/reconciler/reconciler-data-provider.js +416 -13
  143. package/dist/backend/backend/src/services/reconciler/reconciler-data-provider.js.map +1 -1
  144. package/dist/backend/backend/src/services/reconciler/reconciler.service.d.ts.map +1 -1
  145. package/dist/backend/backend/src/services/reconciler/reconciler.service.js +73 -7
  146. package/dist/backend/backend/src/services/reconciler/reconciler.service.js.map +1 -1
  147. package/dist/backend/backend/src/services/session/session-handoff.service.d.ts.map +1 -1
  148. package/dist/backend/backend/src/services/session/session-handoff.service.js +30 -4
  149. package/dist/backend/backend/src/services/session/session-handoff.service.js.map +1 -1
  150. package/dist/backend/backend/src/services/skill/skill-executor.service.d.ts.map +1 -1
  151. package/dist/backend/backend/src/services/skill/skill-executor.service.js +13 -1
  152. package/dist/backend/backend/src/services/skill/skill-executor.service.js.map +1 -1
  153. package/dist/backend/backend/src/services/slack/notify-reconciliation.service.d.ts.map +1 -1
  154. package/dist/backend/backend/src/services/slack/notify-reconciliation.service.js +9 -6
  155. package/dist/backend/backend/src/services/slack/notify-reconciliation.service.js.map +1 -1
  156. package/dist/backend/backend/src/services/slack/slack-orchestrator-bridge.d.ts +21 -2
  157. package/dist/backend/backend/src/services/slack/slack-orchestrator-bridge.d.ts.map +1 -1
  158. package/dist/backend/backend/src/services/slack/slack-orchestrator-bridge.js +120 -46
  159. package/dist/backend/backend/src/services/slack/slack-orchestrator-bridge.js.map +1 -1
  160. package/dist/backend/backend/src/services/slack/slack.service.d.ts.map +1 -1
  161. package/dist/backend/backend/src/services/slack/slack.service.js +49 -0
  162. package/dist/backend/backend/src/services/slack/slack.service.js.map +1 -1
  163. package/dist/backend/backend/src/services/task-pool/task-pool.service.d.ts +33 -2
  164. package/dist/backend/backend/src/services/task-pool/task-pool.service.d.ts.map +1 -1
  165. package/dist/backend/backend/src/services/task-pool/task-pool.service.js +160 -8
  166. package/dist/backend/backend/src/services/task-pool/task-pool.service.js.map +1 -1
  167. package/dist/backend/backend/src/services/v3/cascade-request-status.d.ts.map +1 -1
  168. package/dist/backend/backend/src/services/v3/cascade-request-status.js +55 -2
  169. package/dist/backend/backend/src/services/v3/cascade-request-status.js.map +1 -1
  170. package/dist/backend/backend/src/services/v3/mission-executor.service.d.ts.map +1 -1
  171. package/dist/backend/backend/src/services/v3/mission-executor.service.js +9 -1
  172. package/dist/backend/backend/src/services/v3/mission-executor.service.js.map +1 -1
  173. package/dist/backend/backend/src/services/v3/request-decompose.subscriber.d.ts.map +1 -1
  174. package/dist/backend/backend/src/services/v3/request-decompose.subscriber.js +28 -3
  175. package/dist/backend/backend/src/services/v3/request-decompose.subscriber.js.map +1 -1
  176. package/dist/backend/backend/src/services/v3/request-sla.subscriber.d.ts.map +1 -1
  177. package/dist/backend/backend/src/services/v3/request-sla.subscriber.js +5 -2
  178. package/dist/backend/backend/src/services/v3/request-sla.subscriber.js.map +1 -1
  179. package/dist/backend/backend/src/services/v3/request-status-update.subscriber.d.ts.map +1 -1
  180. package/dist/backend/backend/src/services/v3/request-status-update.subscriber.js +57 -15
  181. package/dist/backend/backend/src/services/v3/request-status-update.subscriber.js.map +1 -1
  182. package/dist/backend/backend/src/services/v3/trigger-engine.service.d.ts +39 -0
  183. package/dist/backend/backend/src/services/v3/trigger-engine.service.d.ts.map +1 -1
  184. package/dist/backend/backend/src/services/v3/trigger-engine.service.js +81 -0
  185. package/dist/backend/backend/src/services/v3/trigger-engine.service.js.map +1 -1
  186. package/dist/backend/backend/src/services/v3/workitem-dispatch.subscriber.d.ts +17 -1
  187. package/dist/backend/backend/src/services/v3/workitem-dispatch.subscriber.d.ts.map +1 -1
  188. package/dist/backend/backend/src/services/v3/workitem-dispatch.subscriber.js +22 -3
  189. package/dist/backend/backend/src/services/v3/workitem-dispatch.subscriber.js.map +1 -1
  190. package/dist/backend/backend/src/services/whatsapp/whatsapp-orchestrator-bridge.d.ts +1 -1
  191. package/dist/backend/backend/src/services/whatsapp/whatsapp-orchestrator-bridge.d.ts.map +1 -1
  192. package/dist/backend/backend/src/services/whatsapp/whatsapp-orchestrator-bridge.js +26 -10
  193. package/dist/backend/backend/src/services/whatsapp/whatsapp-orchestrator-bridge.js.map +1 -1
  194. package/dist/backend/backend/src/services/workflow/cron-task.service.d.ts.map +1 -1
  195. package/dist/backend/backend/src/services/workflow/cron-task.service.js +68 -5
  196. package/dist/backend/backend/src/services/workflow/cron-task.service.js.map +1 -1
  197. package/dist/backend/backend/src/services/workflow/team-identifier-resolver.d.ts +44 -0
  198. package/dist/backend/backend/src/services/workflow/team-identifier-resolver.d.ts.map +1 -0
  199. package/dist/backend/backend/src/services/workflow/team-identifier-resolver.js +57 -0
  200. package/dist/backend/backend/src/services/workflow/team-identifier-resolver.js.map +1 -0
  201. package/dist/backend/backend/src/types/credential.types.d.ts +17 -1
  202. package/dist/backend/backend/src/types/credential.types.d.ts.map +1 -1
  203. package/dist/backend/backend/src/types/credential.types.js +15 -5
  204. package/dist/backend/backend/src/types/credential.types.js.map +1 -1
  205. package/dist/backend/backend/src/types/cron-task.types.d.ts +17 -0
  206. package/dist/backend/backend/src/types/cron-task.types.d.ts.map +1 -1
  207. package/dist/backend/backend/src/types/event-bus.types.d.ts +1 -1
  208. package/dist/backend/backend/src/types/event-bus.types.d.ts.map +1 -1
  209. package/dist/backend/backend/src/types/event-bus.types.js +12 -0
  210. package/dist/backend/backend/src/types/event-bus.types.js.map +1 -1
  211. package/dist/backend/backend/src/types/intent-task.types.d.ts +10 -13
  212. package/dist/backend/backend/src/types/intent-task.types.d.ts.map +1 -1
  213. package/dist/backend/backend/src/types/intent-task.types.js +4 -1
  214. package/dist/backend/backend/src/types/intent-task.types.js.map +1 -1
  215. package/dist/backend/backend/src/types/v2/work-item.types.d.ts +23 -0
  216. package/dist/backend/backend/src/types/v2/work-item.types.d.ts.map +1 -1
  217. package/dist/backend/backend/src/types/v2/work-item.types.js.map +1 -1
  218. package/dist/backend/backend/src/utils/team.utils.d.ts +3 -1
  219. package/dist/backend/backend/src/utils/team.utils.d.ts.map +1 -1
  220. package/dist/backend/backend/src/utils/team.utils.js +26 -5
  221. package/dist/backend/backend/src/utils/team.utils.js.map +1 -1
  222. package/dist/backend/backend/src/websocket/chat-v2.gateway.d.ts +23 -0
  223. package/dist/backend/backend/src/websocket/chat-v2.gateway.d.ts.map +1 -1
  224. package/dist/backend/backend/src/websocket/chat-v2.gateway.js +56 -7
  225. package/dist/backend/backend/src/websocket/chat-v2.gateway.js.map +1 -1
  226. package/dist/backend/backend/src/websocket/chat.gateway.d.ts +19 -4
  227. package/dist/backend/backend/src/websocket/chat.gateway.d.ts.map +1 -1
  228. package/dist/backend/backend/src/websocket/chat.gateway.js +78 -63
  229. package/dist/backend/backend/src/websocket/chat.gateway.js.map +1 -1
  230. package/dist/backend/backend/src/websocket/terminal.gateway.d.ts.map +1 -1
  231. package/dist/backend/backend/src/websocket/terminal.gateway.js +10 -2
  232. package/dist/backend/backend/src/websocket/terminal.gateway.js.map +1 -1
  233. package/dist/cli/backend/src/constants.d.ts +12 -0
  234. package/dist/cli/backend/src/constants.d.ts.map +1 -1
  235. package/dist/cli/backend/src/constants.js +12 -0
  236. package/dist/cli/backend/src/constants.js.map +1 -1
  237. package/dist/cli/backend/src/services/event-bus/event-bus.service.d.ts.map +1 -1
  238. package/dist/cli/backend/src/services/event-bus/event-bus.service.js +22 -11
  239. package/dist/cli/backend/src/services/event-bus/event-bus.service.js.map +1 -1
  240. package/dist/cli/backend/src/services/memory/memory.service.d.ts.map +1 -1
  241. package/dist/cli/backend/src/services/memory/memory.service.js +35 -3
  242. package/dist/cli/backend/src/services/memory/memory.service.js.map +1 -1
  243. package/dist/cli/backend/src/services/skill/skill-executor.service.d.ts.map +1 -1
  244. package/dist/cli/backend/src/services/skill/skill-executor.service.js +13 -1
  245. package/dist/cli/backend/src/services/skill/skill-executor.service.js.map +1 -1
  246. package/dist/cli/backend/src/services/task-pool/task-pool.service.d.ts +33 -2
  247. package/dist/cli/backend/src/services/task-pool/task-pool.service.d.ts.map +1 -1
  248. package/dist/cli/backend/src/services/task-pool/task-pool.service.js +160 -8
  249. package/dist/cli/backend/src/services/task-pool/task-pool.service.js.map +1 -1
  250. package/dist/cli/backend/src/types/credential.types.d.ts +17 -1
  251. package/dist/cli/backend/src/types/credential.types.d.ts.map +1 -1
  252. package/dist/cli/backend/src/types/credential.types.js +15 -5
  253. package/dist/cli/backend/src/types/credential.types.js.map +1 -1
  254. package/dist/cli/backend/src/types/event-bus.types.d.ts +1 -1
  255. package/dist/cli/backend/src/types/event-bus.types.d.ts.map +1 -1
  256. package/dist/cli/backend/src/types/event-bus.types.js +12 -0
  257. package/dist/cli/backend/src/types/event-bus.types.js.map +1 -1
  258. package/dist/cli/backend/src/types/v2/work-item.types.d.ts +23 -0
  259. package/dist/cli/backend/src/types/v2/work-item.types.d.ts.map +1 -1
  260. package/dist/cli/backend/src/types/v2/work-item.types.js.map +1 -1
  261. package/dist/cli/cli/src/commands/start.js +73 -12
  262. package/dist/cli/cli/src/commands/start.js.map +1 -1
  263. package/frontend/dist/assets/index-b279da34.js +4926 -0
  264. package/frontend/dist/assets/{index-b7e59b2b.css → index-c07e04c0.css} +2 -2
  265. package/frontend/dist/index.html +2 -2
  266. package/package.json +1 -1
  267. package/frontend/dist/assets/index-698305f3.js +0 -5228
@@ -141,28 +141,39 @@ export declare function cascadeCancelChildren(cancelledIds: Set<string>, allWork
141
141
  * Detects WorkItems that have been in 'queued' status for too long
142
142
  * without being picked up. These may indicate assignment problems.
143
143
  *
144
- * **F-CYCLE7-3 fix (2026-05-07):** Previously emitted `queued queued`
145
- * which is *not* a valid transition per the canonical
146
- * {@link WORK_ITEM_TRANSITIONS} table every emitted correction was
147
- * rejected by `StorageService` with `Invalid status transition: queued
148
- * queued`, generating reconciler-error noise that hid real signal. The
149
- * comment "Don't change status, just flag for audit" assumed an
150
- * audit-only path that doesn't exist: `applyCorrection()` always calls
151
- * `pool.updateItemStatus()` which validates against the transition
152
- * table.
144
+ * **2026-05-16 policy change DO NOT auto-cancel stale queued WIs.**
145
+ * The earlier behavior emitted `queued cancelled` corrections whenever
146
+ * a WI sat queued for more than `staleThresholdMs` (default 1h). On
147
+ * 2026-05-16 a real user request (Steve's X-article analysis dispatched
148
+ * to inactive Atlas) was destroyed by this rule: the WI sat queued
149
+ * because the target agent was dead, the 60-min timer expired before
150
+ * orc could re-wake Atlas, and the WI was silently cancelled. Cancelling
151
+ * was *masking* the underlying bugs (wake-gate ordering race, idle
152
+ * agents holding the floor under memory pressure) instead of surfacing
153
+ * them. PR #585's eviction-under-pressure is the right mechanism to
154
+ * actually make progress on stale queued WIs — wake their target rather
155
+ * than kill the work.
153
156
  *
154
- * **Canonical state machine** (`backend/src/types/v2/work-item.types.ts`):
155
- * `queued` one of `{ running, proposed, scheduled, cancelled }`.
157
+ * This function now returns ONLY `staleIds` for observability (so
158
+ * callers can log/escalate the stuck condition); no corrections are
159
+ * emitted, so applying the returned (empty) corrections is a no-op. The
160
+ * `corrections` field is preserved for API compatibility with
161
+ * `runPruningPass` which spreads it into the aggregate list.
156
162
  *
157
- * `'expired'` is *not* a valid `WorkItemStatus` (see `WORK_ITEM_STATUSES`),
158
- * despite earlier reconciler briefs occasionally suggesting it. Of the
159
- * canonical options, `cancelled` is the only terminal status reachable
160
- * from `queued`, and is the correct semantic for "queued > threshold,
161
- * never picked up work was abandoned."
163
+ * Historical context preserved:
164
+ * - F-CYCLE7-3 (2026-05-07) was an earlier fix that switched the
165
+ * emitted correction from `queued→queued` (invalid transition) to
166
+ * `queued→cancelled` (valid but destructive). The destructive flip
167
+ * is what we're now reverting; the transition-table-validity lesson
168
+ * still applies to other rules that DO emit corrections.
169
+ * - Canonical state machine (`work-item.types.ts`): `queued` → one of
170
+ * `{ running, proposed, scheduled, cancelled }`.
162
171
  *
163
172
  * @param workItems - All WorkItems to check
164
173
  * @param staleThresholdMs - How long in queued before considered stale (default: 1h)
165
- * @returns Corrections for stale queued WorkItems (transition: queued → cancelled)
174
+ * @returns `{ corrections: [], staleIds }` observability-only. The
175
+ * `corrections` array is always empty; iterate `staleIds` for the
176
+ * list of WIs that have been queued past `staleThresholdMs`.
166
177
  */
167
178
  export declare function detectStaleQueuedWorkItems(workItems: WorkItem[], staleThresholdMs?: number): {
168
179
  corrections: ReconcileCorrection[];
@@ -178,8 +189,18 @@ export interface PruningResult {
178
189
  orphanCancelledCount: number;
179
190
  /** WorkItems cancelled due to deep cascade */
180
191
  cascadeCancelledCount: number;
181
- /** WorkItems flagged as stale in queue */
192
+ /**
193
+ * WorkItems still queued past `staleThresholdMs`. Surfaced for
194
+ * observability ONLY — no longer auto-cancelled (policy change
195
+ * 2026-05-16; see {@link detectStaleQueuedWorkItems} banner).
196
+ */
182
197
  staleQueuedCount: number;
198
+ /**
199
+ * IDs of the still-queued WIs that exceeded the staleness threshold.
200
+ * Callers (the reconciler service) log these so the stuck condition
201
+ * is visible without destroying the work. Empty when none are stale.
202
+ */
203
+ staleQueuedIds: string[];
183
204
  /** Total corrections from pruning */
184
205
  totalCorrections: ReconcileCorrection[];
185
206
  }
@@ -1 +1 @@
1
- {"version":3,"file":"reconcile-rules.d.ts","sourceRoot":"","sources":["../../../../../../backend/src/services/reconciler/reconcile-rules.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"reconcile-rules.d.ts","sourceRoot":"","sources":["../../../../../../backend/src/services/reconciler/reconcile-rules.ts"],"names":[],"mappings":"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"}
@@ -438,31 +438,41 @@ export function cascadeCancelChildren(cancelledIds, allWorkItems) {
438
438
  * Detects WorkItems that have been in 'queued' status for too long
439
439
  * without being picked up. These may indicate assignment problems.
440
440
  *
441
- * **F-CYCLE7-3 fix (2026-05-07):** Previously emitted `queued queued`
442
- * which is *not* a valid transition per the canonical
443
- * {@link WORK_ITEM_TRANSITIONS} table every emitted correction was
444
- * rejected by `StorageService` with `Invalid status transition: queued
445
- * queued`, generating reconciler-error noise that hid real signal. The
446
- * comment "Don't change status, just flag for audit" assumed an
447
- * audit-only path that doesn't exist: `applyCorrection()` always calls
448
- * `pool.updateItemStatus()` which validates against the transition
449
- * table.
450
- *
451
- * **Canonical state machine** (`backend/src/types/v2/work-item.types.ts`):
452
- * `queued` one of `{ running, proposed, scheduled, cancelled }`.
453
- *
454
- * `'expired'` is *not* a valid `WorkItemStatus` (see `WORK_ITEM_STATUSES`),
455
- * despite earlier reconciler briefs occasionally suggesting it. Of the
456
- * canonical options, `cancelled` is the only terminal status reachable
457
- * from `queued`, and is the correct semantic for "queued > threshold,
458
- * never picked up work was abandoned."
441
+ * **2026-05-16 policy change DO NOT auto-cancel stale queued WIs.**
442
+ * The earlier behavior emitted `queued cancelled` corrections whenever
443
+ * a WI sat queued for more than `staleThresholdMs` (default 1h). On
444
+ * 2026-05-16 a real user request (Steve's X-article analysis dispatched
445
+ * to inactive Atlas) was destroyed by this rule: the WI sat queued
446
+ * because the target agent was dead, the 60-min timer expired before
447
+ * orc could re-wake Atlas, and the WI was silently cancelled. Cancelling
448
+ * was *masking* the underlying bugs (wake-gate ordering race, idle
449
+ * agents holding the floor under memory pressure) instead of surfacing
450
+ * them. PR #585's eviction-under-pressure is the right mechanism to
451
+ * actually make progress on stale queued WIs — wake their target rather
452
+ * than kill the work.
453
+ *
454
+ * This function now returns ONLY `staleIds` for observability (so
455
+ * callers can log/escalate the stuck condition); no corrections are
456
+ * emitted, so applying the returned (empty) corrections is a no-op. The
457
+ * `corrections` field is preserved for API compatibility with
458
+ * `runPruningPass` which spreads it into the aggregate list.
459
+ *
460
+ * Historical context preserved:
461
+ * - F-CYCLE7-3 (2026-05-07) was an earlier fix that switched the
462
+ * emitted correction from `queued→queued` (invalid transition) to
463
+ * `queued→cancelled` (valid but destructive). The destructive flip
464
+ * is what we're now reverting; the transition-table-validity lesson
465
+ * still applies to other rules that DO emit corrections.
466
+ * - Canonical state machine (`work-item.types.ts`): `queued` → one of
467
+ * `{ running, proposed, scheduled, cancelled }`.
459
468
  *
460
469
  * @param workItems - All WorkItems to check
461
470
  * @param staleThresholdMs - How long in queued before considered stale (default: 1h)
462
- * @returns Corrections for stale queued WorkItems (transition: queued → cancelled)
471
+ * @returns `{ corrections: [], staleIds }` observability-only. The
472
+ * `corrections` array is always empty; iterate `staleIds` for the
473
+ * list of WIs that have been queued past `staleThresholdMs`.
463
474
  */
464
475
  export function detectStaleQueuedWorkItems(workItems, staleThresholdMs = 60 * 60 * 1000) {
465
- const corrections = [];
466
476
  const staleIds = [];
467
477
  const now = Date.now();
468
478
  for (const wi of workItems) {
@@ -471,20 +481,12 @@ export function detectStaleQueuedWorkItems(workItems, staleThresholdMs = 60 * 60
471
481
  const createdAt = new Date(wi.createdAt).getTime();
472
482
  const waitTime = now - createdAt;
473
483
  if (waitTime > staleThresholdMs) {
474
- corrections.push(createCorrection({
475
- entityType: 'work_item',
476
- entityId: wi.id,
477
- previousState: 'queued',
478
- // queued → cancelled is the canonical valid transition for an
479
- // abandoned-in-queue WorkItem. See WORK_ITEM_TRANSITIONS.
480
- newState: 'cancelled',
481
- reason: `WorkItem has been queued for ${Math.round(waitTime / 60000)} minutes without pickup`,
482
- evidence: `Created at ${wi.createdAt}, waiting for ${Math.round(waitTime / 60000)}m (threshold: ${Math.round(staleThresholdMs / 60000)}m)`,
483
- }));
484
484
  staleIds.push(wi.id);
485
485
  }
486
486
  }
487
- return { corrections, staleIds };
487
+ // No corrections staleIds is observability-only. See the JSDoc
488
+ // banner above for why we no longer auto-cancel.
489
+ return { corrections: [], staleIds };
488
490
  }
489
491
  /**
490
492
  * Runs a complete pruning pass — combines TTL, orphan, cascade, and stale detection.
@@ -524,10 +526,14 @@ export function runPruningPass(allWorkItems, ttlMs = 24 * 60 * 60 * 1000, staleT
524
526
  orphanCancelledCount: orphans.orphanIds.length,
525
527
  cascadeCancelledCount: cascade.cascadedIds.length,
526
528
  staleQueuedCount: stale.staleIds.length,
529
+ staleQueuedIds: stale.staleIds,
527
530
  totalCorrections: [
528
531
  ...ttl.corrections,
529
532
  ...orphans.corrections,
530
533
  ...cascade.corrections,
534
+ // stale.corrections is intentionally always empty per the
535
+ // 2026-05-16 policy change — the spread is kept for the
536
+ // unlikely case that the policy is ever reverted.
531
537
  ...stale.corrections,
532
538
  ],
533
539
  };
@@ -603,6 +609,16 @@ export function detectUnclaimedTasks(workItems, agentHealthMap, unclaimedThresho
603
609
  const waitTime = now - createdAt;
604
610
  if (hasActiveAgent && waitTime < effectiveThreshold)
605
611
  continue;
612
+ // 2026-05-17 — never auto-wake for untargeted WIs. If a WorkItem
613
+ // doesn't name a `target`, the reconciler used to pick the
614
+ // "highest-score" wakable agent by skill match (developer-role +
615
+ // tag-keyword overlap). That meant a stale unassigned delegate WI
616
+ // queued days ago could spin a fresh agent back to life on every
617
+ // restart, racking up RAM with no actual work the agent could do
618
+ // (the WI is unowned). Strict policy: only wake when the WI
619
+ // explicitly names an offline target via `wi.target`.
620
+ if (!wi.target)
621
+ continue;
606
622
  // Score each wakable agent for this WorkItem
607
623
  const bestAgent = selectBestAgent(wi, wakableAgents, waitTime, agentsToWake);
608
624
  if (!bestAgent)
@@ -645,8 +661,20 @@ export function detectUnclaimedTasks(workItems, agentHealthMap, unclaimedThresho
645
661
  * @returns Best agent with score, or null if no suitable agent
646
662
  */
647
663
  export function selectBestAgent(workItem, agents, waitTimeMs, excludeAgents = new Set()) {
664
+ // 2026-05-17 — when a WorkItem has an explicit `target`, ONLY consider
665
+ // waking that exact agent. The previous "best-score across all agents"
666
+ // behaviour quietly substituted a different agent when the named target
667
+ // was offline (e.g. a queued `respond_to_user` WI for `crewly-orc` would
668
+ // wake Quinn / Reed / Victor based on skill score). That defeats the
669
+ // intent of the WI's target field — Quinn cannot respond to a Slack
670
+ // message addressed to orc. Honouring `target` strictly means: if the
671
+ // target isn't currently wakable, the WI stays queued and only its
672
+ // owning agent will pick it up when it comes back online.
673
+ const candidates = workItem.target
674
+ ? agents.filter((a) => a.sessionName === workItem.target)
675
+ : agents;
648
676
  let bestResult = null;
649
- for (const agent of agents) {
677
+ for (const agent of candidates) {
650
678
  if (excludeAgents.has(agent.sessionName))
651
679
  continue;
652
680
  const breakdown = computeAgentScore(workItem, agent, waitTimeMs);
@@ -1 +1 @@
1
- {"version":3,"file":"reconcile-rules.js","sourceRoot":"","sources":["../../../../../../backend/src/services/reconciler/reconcile-rules.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"reconcile-rules.js","sourceRoot":"","sources":["../../../../../../backend/src/services/reconciler/reconcile-rules.ts"],"names":[],"mappings":"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"}
@@ -13,6 +13,44 @@
13
13
  import type { ReconcilerDataProvider } from './reconciler.service.js';
14
14
  import type { AgentHealth } from './reconcile-rules.js';
15
15
  import type { WorkItem, Request, TaskClaim, ReconcileCorrection, WakeAction } from '../../types/v2/index.js';
16
+ import type { EventBusService } from '../event-bus/event-bus.service.js';
17
+ /**
18
+ * Cap on concurrent active agents while the system is under memory
19
+ * pressure. Named `WAKE_FLOOR` for historical reasons — the value
20
+ * acts as a CEILING on wake actions under pressure, not a guaranteed
21
+ * floor. The reconciler does not proactively bring the active count
22
+ * up to this value; it only permits wakes when `activeCount < N` and
23
+ * blocks them otherwise.
24
+ *
25
+ * Behaviour:
26
+ * - `activeCount < N` AND memory pressure → wake allowed (keeps the
27
+ * system minimally productive instead of fully wedged).
28
+ * - `activeCount >= N` AND memory pressure → wake blocked (prevents
29
+ * an OOM cascade by capping additional spawns during a crisis).
30
+ * - No memory pressure → this gate is not consulted.
31
+ *
32
+ * History: an earlier implementation blocked EVERY wake under memory
33
+ * pressure, which wedged the system on 2026-05-13 (6+ hours, free RAM
34
+ * 16-33 MB, queued WIs piling up). On 2026-05-14 the system stalled
35
+ * again — this gate worked as designed, but `IdleDetectionService`
36
+ * silently stopped releasing idle agents, so `activeCount` stayed
37
+ * above N for ~20 hours. The cap itself is not the bug; the absence
38
+ * of forward progress when the cap is held is. See the heartbeat
39
+ * additions in `idle-detection.service.ts`.
40
+ */
41
+ export declare const WAKE_FLOOR_UNDER_PRESSURE = 3;
42
+ /**
43
+ * Minimal slice of `AgentRegistrationService` the provider needs for the
44
+ * memory-pressure eviction path. Declared narrowly so test fixtures can
45
+ * stub a single method without simulating the full registration surface.
46
+ */
47
+ export interface IAgentRegistrationServiceLike {
48
+ terminateAgentSession(sessionName: string, role?: string): Promise<{
49
+ success: boolean;
50
+ message?: string;
51
+ error?: string;
52
+ }>;
53
+ }
16
54
  /**
17
55
  * Production-ready ReconcilerDataProvider that connects to live services.
18
56
  *
@@ -30,7 +68,30 @@ import type { WorkItem, Request, TaskClaim, ReconcileCorrection, WakeAction } fr
30
68
  export declare class LiveReconcilerDataProvider implements ReconcilerDataProvider {
31
69
  private readonly logger;
32
70
  private readonly storage;
71
+ private eventBus;
72
+ private agentRegistration;
73
+ private consecutivePressureSkips;
74
+ private lastPressureNotifiedAt;
33
75
  constructor();
76
+ /**
77
+ * Inject the EventBus used to broadcast `system:memory_pressure` to
78
+ * orc. Optional — when not set, the reconciler still functions but
79
+ * no user-facing notification is emitted. Called once from the
80
+ * server bootstrap after both services are constructed.
81
+ *
82
+ * @param eventBus - The EventBusService singleton wired in `index.ts`
83
+ */
84
+ setEventBus(eventBus: EventBusService): void;
85
+ /**
86
+ * Inject the AgentRegistrationService so the memory-pressure eviction
87
+ * path can terminate idle agents (the same primitive
88
+ * `IdleDetectionService` uses). Optional — when not wired, eviction
89
+ * is disabled and the reconciler falls back to the prior skip-on-floor
90
+ * behaviour.
91
+ *
92
+ * @param svc - AgentRegistrationService instance from the bootstrap
93
+ */
94
+ setAgentRegistrationService(svc: IAgentRegistrationServiceLike): void;
34
95
  /**
35
96
  * Returns all non-terminal WorkItems from the Task Pool.
36
97
  * Non-terminal means items that are not 'done' or 'cancelled'.
@@ -132,6 +193,79 @@ export declare class LiveReconcilerDataProvider implements ReconcilerDataProvide
132
193
  * @param action - The wake action to execute
133
194
  * @returns True if the wake was initiated successfully
134
195
  */
196
+ /**
197
+ * Count agent sessions currently in an alive state. Used by the
198
+ * memory-pressure gate in {@link executeWakeAction} to decide whether
199
+ * a new wake would push us past the concurrency floor.
200
+ *
201
+ * Counts `'active'`, `'started'`, and `'starting'` — anything that
202
+ * has a live process consuming RAM. `started` and `starting` cover
203
+ * in-flight wakes from prior reconciler ticks that haven't fully
204
+ * promoted to active yet. `suspended` / `inactive` are NOT alive and
205
+ * don't contribute (suspended drops the runtime; inactive never had
206
+ * one).
207
+ *
208
+ * @returns The number of agent sessions currently alive
209
+ */
210
+ private countActiveAgentSessions;
211
+ /**
212
+ * Broadcast `system:memory_pressure` to the EventBus when wake actions
213
+ * have been skipped enough consecutive times to indicate a sustained
214
+ * stall. Throttled so a long pressure episode emits at most one event
215
+ * per `MEMORY_PRESSURE_REFIRE_MS` window — orc only needs to surface
216
+ * the condition once per stuck period, not on every reconciler tick.
217
+ *
218
+ * The 2026-05-14 incident skipped wakes ~4,200 times across 20 hours
219
+ * with zero user-visible signal. After this change, orc receives a
220
+ * critical event within ~50 seconds of the stall starting and every
221
+ * ~5 minutes thereafter until pressure clears.
222
+ *
223
+ * @param stats - Snapshot of memory stats at the skip moment
224
+ * @param activeCount - Current active agent count (already computed)
225
+ */
226
+ private maybeBroadcastMemoryPressure;
227
+ /**
228
+ * Reset the memory-pressure broadcast state. Called on every wake
229
+ * that runs without pressure so the next sustained episode re-fires
230
+ * the first-time threshold instead of being silenced by stale state.
231
+ */
232
+ private resetMemoryPressureBroadcast;
233
+ /**
234
+ * Find one idle, evictable agent that can be terminated to free a wake
235
+ * slot under memory pressure.
236
+ *
237
+ * An agent is "evictable" when ALL of the following hold:
238
+ * - `agentStatus === 'active'` (no point evicting an already-dead one)
239
+ * - `workingStatus === 'idle'` (don't kill a mid-task agent)
240
+ * - role is NOT in `ALWAYS_ON_ROLES` (orchestrator, auditor)
241
+ * - no non-terminal WorkItem in the pool targets this sessionName
242
+ * (otherwise eviction would orphan that WI just like Atlas's)
243
+ * - sessionName !== `incomingAgent` (don't evict ourselves)
244
+ *
245
+ * Among eligible agents, returns the longest-idle one (oldest
246
+ * `updatedAt`). This biases towards freeing agents that have been sitting
247
+ * quietly without work — the freshest idle agent might be about to claim
248
+ * something via the auto-claim path.
249
+ *
250
+ * @param incomingAgent - sessionName of the agent we want to wake;
251
+ * excluded from the eviction pool so we never recommend evicting the
252
+ * very agent we're trying to wake.
253
+ * @returns Eviction candidate metadata, or `null` if no agent qualifies.
254
+ */
255
+ private findEvictableIdleAgent;
256
+ /**
257
+ * Terminate an evicted agent so the wake slot is freed.
258
+ *
259
+ * Uses the same `terminateAgentSession` + `updateAgentStatus(..,
260
+ * 'idle_exit_pressure')` pair that `IdleDetectionService` uses for the
261
+ * regular auto-stop path, just with a different dropoutReason so the
262
+ * pressure-driven evictions are distinguishable in audit logs.
263
+ *
264
+ * @param victim - Eviction candidate returned by `findEvictableIdleAgent`
265
+ * @returns `true` if the agent was terminated AND marked inactive;
266
+ * `false` if either step failed (the caller falls back to skip).
267
+ */
268
+ private evictIdleAgent;
135
269
  executeWakeAction(action: WakeAction): Promise<boolean>;
136
270
  /**
137
271
  * Backfill token usage on completed WorkItems that still show 0 tokens.
@@ -1 +1 @@
1
- {"version":3,"file":"reconciler-data-provider.d.ts","sourceRoot":"","sources":["../../../../../../backend/src/services/reconciler/reconciler-data-provider.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAEH,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,yBAAyB,CAAC;AACtE,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AACxD,OAAO,KAAK,EACV,QAAQ,EACR,OAAO,EACP,SAAS,EACT,mBAAmB,EACnB,UAAU,EACX,MAAM,yBAAyB,CAAC;AAkFjC;;;;;;;;;;;;;GAaG;AACH,qBAAa,0BAA2B,YAAW,sBAAsB;IACvE,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAkB;IACzC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAiB;;IAOzC;;;;;OAKG;IACG,kBAAkB,IAAI,OAAO,CAAC,QAAQ,EAAE,CAAC;IAe/C;;;;;OAKG;IACG,sBAAsB,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,QAAQ,EAAE,CAAC;IAcpE;;;;;;;;OAQG;IACG,iBAAiB,IAAI,OAAO,CAAC,OAAO,EAAE,CAAC;IAgB7C;;;;;;;;;;;OAWG;IACG,eAAe,IAAI,OAAO,CAAC,SAAS,EAAE,CAAC;IA6B7C;;;;;;;OAOG;IACG,iBAAiB,IAAI,OAAO,CAAC,GAAG,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC;IAoF5D;;;;OAIG;IACG,eAAe,CAAC,UAAU,EAAE,mBAAmB,GAAG,OAAO,CAAC,IAAI,CAAC;IAkCrE;;;;;OAKG;IACG,aAAa,CAAC,UAAU,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IActE;;;;OAIG;IACG,eAAe,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAaxD;;;;OAIG;IACG,iBAAiB,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAavD;;;;;OAKG;IACG,qBAAqB,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAc3E;;;;;;;;;;;OAWG;IACG,qBAAqB,IAAI,OAAO,CAAC,QAAQ,EAAE,CAAC;IAwBlD;;;;;;;;;OASG;IACG,iBAAiB,CAAC,MAAM,EAAE,UAAU,GAAG,OAAO,CAAC,OAAO,CAAC;IAoF7D;;;;;;;;OAQG;IACG,kBAAkB,IAAI,OAAO,CAAC,MAAM,CAAC;IA8C3C;;;;;OAKG;IACH,OAAO,CAAC,cAAc;CAkBvB"}
1
+ {"version":3,"file":"reconciler-data-provider.d.ts","sourceRoot":"","sources":["../../../../../../backend/src/services/reconciler/reconciler-data-provider.ts"],"names":[],"mappings":"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"}