crewly 1.20.195 → 1.20.196

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 (584) hide show
  1. package/config/constants.ts +68 -0
  2. package/config/hooks/agent-status/report.sh +31 -12
  3. package/config/hooks/subagent-guard/subagent.sh +25 -1
  4. package/config/roles/orchestrator/fragments/lifecycle.md +1 -1
  5. package/config/roles/orchestrator/prompt.md +3 -3
  6. package/config/skills/_common/lib.sh +28 -5
  7. package/config/skills/_common/lib.test.sh +32 -1
  8. package/config/skills/agent/core/create-intent-tasks/execute.sh +2 -0
  9. package/config/skills/agent/core/decompose-intent/execute.sh +2 -0
  10. package/config/skills/agent/core/experiment-card/SKILL.md +29 -1
  11. package/config/skills/agent/core/experiment-card/execute.sh +35 -1
  12. package/config/skills/agent/core/experiment-card/execute.test.sh +11 -0
  13. package/config/skills/agent/core/project-tickets/SKILL.md +35 -2
  14. package/config/skills/agent/core/project-tickets/execute.sh +59 -6
  15. package/config/skills/agent/core/project-tickets/execute.test.sh +24 -0
  16. package/config/skills/agent/core/send-message/execute.sh +16 -0
  17. package/config/skills/agent/core/send-message/execute.test.sh +10 -0
  18. package/config/skills/agent/core/trace-read/SKILL.md +117 -0
  19. package/config/skills/agent/core/trace-read/execute.sh +116 -0
  20. package/config/skills/agent/core/update-intent-task/execute.sh +2 -0
  21. package/config/skills/agent/marketing/submit-for-approval/execute.sh +3 -2
  22. package/config/skills/orchestrator/decompose-mission/execute.sh +2 -0
  23. package/config/skills/orchestrator/decompose-okr/execute.sh +1 -0
  24. package/config/skills/orchestrator/design-team/execute.sh +2 -0
  25. package/config/skills/orchestrator/measure-kr/execute.sh +2 -0
  26. package/config/skills/orchestrator/review-mission/execute.sh +2 -0
  27. package/config/skills/orchestrator/send-message/execute.sh +10 -2
  28. package/config/skills/orchestrator/send-message/execute.test.sh +9 -0
  29. package/config/skills/team-leader/design-checklist/execute.sh +2 -0
  30. package/dist/backend/backend/src/constants.d.ts +223 -5
  31. package/dist/backend/backend/src/constants.d.ts.map +1 -1
  32. package/dist/backend/backend/src/constants.js +206 -6
  33. package/dist/backend/backend/src/constants.js.map +1 -1
  34. package/dist/backend/backend/src/controllers/agent-hooks/agent-hooks.controller.d.ts +9 -3
  35. package/dist/backend/backend/src/controllers/agent-hooks/agent-hooks.controller.d.ts.map +1 -1
  36. package/dist/backend/backend/src/controllers/agent-hooks/agent-hooks.controller.js +38 -5
  37. package/dist/backend/backend/src/controllers/agent-hooks/agent-hooks.controller.js.map +1 -1
  38. package/dist/backend/backend/src/controllers/approvals/approvals.controller.d.ts +4 -9
  39. package/dist/backend/backend/src/controllers/approvals/approvals.controller.d.ts.map +1 -1
  40. package/dist/backend/backend/src/controllers/approvals/approvals.controller.js +6 -14
  41. package/dist/backend/backend/src/controllers/approvals/approvals.controller.js.map +1 -1
  42. package/dist/backend/backend/src/controllers/auth/owner-session.controller.d.ts +64 -0
  43. package/dist/backend/backend/src/controllers/auth/owner-session.controller.d.ts.map +1 -0
  44. package/dist/backend/backend/src/controllers/auth/owner-session.controller.js +164 -0
  45. package/dist/backend/backend/src/controllers/auth/owner-session.controller.js.map +1 -0
  46. package/dist/backend/backend/src/controllers/browser/browser.routes.d.ts.map +1 -1
  47. package/dist/backend/backend/src/controllers/browser/browser.routes.js +18 -5
  48. package/dist/backend/backend/src/controllers/browser/browser.routes.js.map +1 -1
  49. package/dist/backend/backend/src/controllers/canva/canva.routes.d.ts.map +1 -1
  50. package/dist/backend/backend/src/controllers/canva/canva.routes.js +8 -1
  51. package/dist/backend/backend/src/controllers/canva/canva.routes.js.map +1 -1
  52. package/dist/backend/backend/src/controllers/chat/chat.controller.d.ts.map +1 -1
  53. package/dist/backend/backend/src/controllers/chat/chat.controller.js +10 -1
  54. package/dist/backend/backend/src/controllers/chat/chat.controller.js.map +1 -1
  55. package/dist/backend/backend/src/controllers/cloud/cloud-device-pairing.controller.d.ts.map +1 -1
  56. package/dist/backend/backend/src/controllers/cloud/cloud-device-pairing.controller.js +3 -5
  57. package/dist/backend/backend/src/controllers/cloud/cloud-device-pairing.controller.js.map +1 -1
  58. package/dist/backend/backend/src/controllers/connector/connector.controller.d.ts +4 -2
  59. package/dist/backend/backend/src/controllers/connector/connector.controller.d.ts.map +1 -1
  60. package/dist/backend/backend/src/controllers/connector/connector.controller.js +17 -2
  61. package/dist/backend/backend/src/controllers/connector/connector.controller.js.map +1 -1
  62. package/dist/backend/backend/src/controllers/connector/grant-sharing.handler.d.ts.map +1 -1
  63. package/dist/backend/backend/src/controllers/connector/grant-sharing.handler.js +2 -3
  64. package/dist/backend/backend/src/controllers/connector/grant-sharing.handler.js.map +1 -1
  65. package/dist/backend/backend/src/controllers/decisions/decisions.controller.d.ts +4 -2
  66. package/dist/backend/backend/src/controllers/decisions/decisions.controller.d.ts.map +1 -1
  67. package/dist/backend/backend/src/controllers/decisions/decisions.controller.js +31 -20
  68. package/dist/backend/backend/src/controllers/decisions/decisions.controller.js.map +1 -1
  69. package/dist/backend/backend/src/controllers/desktop/desktop.controller.d.ts.map +1 -1
  70. package/dist/backend/backend/src/controllers/desktop/desktop.controller.js +16 -0
  71. package/dist/backend/backend/src/controllers/desktop/desktop.controller.js.map +1 -1
  72. package/dist/backend/backend/src/controllers/google/google.controller.d.ts.map +1 -1
  73. package/dist/backend/backend/src/controllers/google/google.controller.js +9 -5
  74. package/dist/backend/backend/src/controllers/google/google.controller.js.map +1 -1
  75. package/dist/backend/backend/src/controllers/google/google.routes.d.ts.map +1 -1
  76. package/dist/backend/backend/src/controllers/google/google.routes.js +16 -3
  77. package/dist/backend/backend/src/controllers/google/google.routes.js.map +1 -1
  78. package/dist/backend/backend/src/controllers/harness/harness.controller.d.ts.map +1 -1
  79. package/dist/backend/backend/src/controllers/harness/harness.controller.js +3 -5
  80. package/dist/backend/backend/src/controllers/harness/harness.controller.js.map +1 -1
  81. package/dist/backend/backend/src/controllers/microsoft/microsoft-todo.routes.d.ts.map +1 -1
  82. package/dist/backend/backend/src/controllers/microsoft/microsoft-todo.routes.js +8 -1
  83. package/dist/backend/backend/src/controllers/microsoft/microsoft-todo.routes.js.map +1 -1
  84. package/dist/backend/backend/src/controllers/mission/mission-policy.routes.js +1 -1
  85. package/dist/backend/backend/src/controllers/mission/mission-policy.routes.js.map +1 -1
  86. package/dist/backend/backend/src/controllers/owner-receipt/owner-receipt.controller.d.ts.map +1 -1
  87. package/dist/backend/backend/src/controllers/owner-receipt/owner-receipt.controller.js +3 -5
  88. package/dist/backend/backend/src/controllers/owner-receipt/owner-receipt.controller.js.map +1 -1
  89. package/dist/backend/backend/src/controllers/people/people.routes.d.ts.map +1 -1
  90. package/dist/backend/backend/src/controllers/people/people.routes.js +3 -5
  91. package/dist/backend/backend/src/controllers/people/people.routes.js.map +1 -1
  92. package/dist/backend/backend/src/controllers/project-tickets/project-tickets.controller.d.ts +35 -2
  93. package/dist/backend/backend/src/controllers/project-tickets/project-tickets.controller.d.ts.map +1 -1
  94. package/dist/backend/backend/src/controllers/project-tickets/project-tickets.controller.js +138 -4
  95. package/dist/backend/backend/src/controllers/project-tickets/project-tickets.controller.js.map +1 -1
  96. package/dist/backend/backend/src/controllers/project-tickets/project-tickets.routes.d.ts +2 -0
  97. package/dist/backend/backend/src/controllers/project-tickets/project-tickets.routes.d.ts.map +1 -1
  98. package/dist/backend/backend/src/controllers/project-tickets/project-tickets.routes.js +7 -1
  99. package/dist/backend/backend/src/controllers/project-tickets/project-tickets.routes.js.map +1 -1
  100. package/dist/backend/backend/src/controllers/request/open-items.controller.d.ts.map +1 -1
  101. package/dist/backend/backend/src/controllers/request/open-items.controller.js +2 -4
  102. package/dist/backend/backend/src/controllers/request/open-items.controller.js.map +1 -1
  103. package/dist/backend/backend/src/controllers/signal-digest/signal-digest.controller.js +1 -1
  104. package/dist/backend/backend/src/controllers/signal-digest/signal-digest.controller.js.map +1 -1
  105. package/dist/backend/backend/src/controllers/slack/slack.controller.d.ts.map +1 -1
  106. package/dist/backend/backend/src/controllers/slack/slack.controller.js +9 -0
  107. package/dist/backend/backend/src/controllers/slack/slack.controller.js.map +1 -1
  108. package/dist/backend/backend/src/controllers/system/runtime-fallback.controller.d.ts.map +1 -1
  109. package/dist/backend/backend/src/controllers/system/runtime-fallback.controller.js +11 -0
  110. package/dist/backend/backend/src/controllers/system/runtime-fallback.controller.js.map +1 -1
  111. package/dist/backend/backend/src/controllers/system/system-control.controller.d.ts +6 -4
  112. package/dist/backend/backend/src/controllers/system/system-control.controller.d.ts.map +1 -1
  113. package/dist/backend/backend/src/controllers/system/system-control.controller.js +20 -13
  114. package/dist/backend/backend/src/controllers/system/system-control.controller.js.map +1 -1
  115. package/dist/backend/backend/src/controllers/team/team.controller.d.ts.map +1 -1
  116. package/dist/backend/backend/src/controllers/team/team.controller.js +14 -7
  117. package/dist/backend/backend/src/controllers/team/team.controller.js.map +1 -1
  118. package/dist/backend/backend/src/controllers/tickets/tickets.controller.d.ts.map +1 -1
  119. package/dist/backend/backend/src/controllers/tickets/tickets.controller.js +5 -7
  120. package/dist/backend/backend/src/controllers/tickets/tickets.controller.js.map +1 -1
  121. package/dist/backend/backend/src/controllers/trace/trace.controller.d.ts +30 -4
  122. package/dist/backend/backend/src/controllers/trace/trace.controller.d.ts.map +1 -1
  123. package/dist/backend/backend/src/controllers/trace/trace.controller.js +278 -10
  124. package/dist/backend/backend/src/controllers/trace/trace.controller.js.map +1 -1
  125. package/dist/backend/backend/src/controllers/whatsapp/whatsapp-inbox.controller.d.ts +3 -3
  126. package/dist/backend/backend/src/controllers/whatsapp/whatsapp-inbox.controller.d.ts.map +1 -1
  127. package/dist/backend/backend/src/controllers/whatsapp/whatsapp-inbox.controller.js +4 -2
  128. package/dist/backend/backend/src/controllers/whatsapp/whatsapp-inbox.controller.js.map +1 -1
  129. package/dist/backend/backend/src/controllers/whatsapp/whatsapp.controller.d.ts.map +1 -1
  130. package/dist/backend/backend/src/controllers/whatsapp/whatsapp.controller.js +10 -2
  131. package/dist/backend/backend/src/controllers/whatsapp/whatsapp.controller.js.map +1 -1
  132. package/dist/backend/backend/src/index.d.ts +34 -0
  133. package/dist/backend/backend/src/index.d.ts.map +1 -1
  134. package/dist/backend/backend/src/index.js +313 -42
  135. package/dist/backend/backend/src/index.js.map +1 -1
  136. package/dist/backend/backend/src/middleware/agent-origin-correction.d.ts +31 -0
  137. package/dist/backend/backend/src/middleware/agent-origin-correction.d.ts.map +1 -0
  138. package/dist/backend/backend/src/middleware/agent-origin-correction.js +31 -0
  139. package/dist/backend/backend/src/middleware/agent-origin-correction.js.map +1 -0
  140. package/dist/backend/backend/src/middleware/agent-origin.middleware.d.ts +6 -0
  141. package/dist/backend/backend/src/middleware/agent-origin.middleware.d.ts.map +1 -1
  142. package/dist/backend/backend/src/middleware/agent-origin.middleware.js +4 -1
  143. package/dist/backend/backend/src/middleware/agent-origin.middleware.js.map +1 -1
  144. package/dist/backend/backend/src/middleware/api-token.middleware.d.ts +20 -17
  145. package/dist/backend/backend/src/middleware/api-token.middleware.d.ts.map +1 -1
  146. package/dist/backend/backend/src/middleware/api-token.middleware.js +27 -37
  147. package/dist/backend/backend/src/middleware/api-token.middleware.js.map +1 -1
  148. package/dist/backend/backend/src/middleware/caller-identity.middleware.d.ts +213 -0
  149. package/dist/backend/backend/src/middleware/caller-identity.middleware.d.ts.map +1 -0
  150. package/dist/backend/backend/src/middleware/caller-identity.middleware.js +481 -0
  151. package/dist/backend/backend/src/middleware/caller-identity.middleware.js.map +1 -0
  152. package/dist/backend/backend/src/middleware/caller-identity.testing.d.ts +67 -0
  153. package/dist/backend/backend/src/middleware/caller-identity.testing.d.ts.map +1 -0
  154. package/dist/backend/backend/src/middleware/caller-identity.testing.js +108 -0
  155. package/dist/backend/backend/src/middleware/caller-identity.testing.js.map +1 -0
  156. package/dist/backend/backend/src/services/agent/agent-registration.service.d.ts.map +1 -1
  157. package/dist/backend/backend/src/services/agent/agent-registration.service.js +12 -2
  158. package/dist/backend/backend/src/services/agent/agent-registration.service.js.map +1 -1
  159. package/dist/backend/backend/src/services/agent/control-plane-guard.service.d.ts +7 -5
  160. package/dist/backend/backend/src/services/agent/control-plane-guard.service.d.ts.map +1 -1
  161. package/dist/backend/backend/src/services/agent/control-plane-guard.service.js +19 -10
  162. package/dist/backend/backend/src/services/agent/control-plane-guard.service.js.map +1 -1
  163. package/dist/backend/backend/src/services/agent/crewly-agent/crewly-agent-external-runtime.service.d.ts.map +1 -1
  164. package/dist/backend/backend/src/services/agent/crewly-agent/crewly-agent-external-runtime.service.js +10 -1
  165. package/dist/backend/backend/src/services/agent/crewly-agent/crewly-agent-external-runtime.service.js.map +1 -1
  166. package/dist/backend/backend/src/services/agent/restore-filter.d.ts +5 -2
  167. package/dist/backend/backend/src/services/agent/restore-filter.d.ts.map +1 -1
  168. package/dist/backend/backend/src/services/agent/restore-filter.js +5 -2
  169. package/dist/backend/backend/src/services/agent/restore-filter.js.map +1 -1
  170. package/dist/backend/backend/src/services/agent/runtime-agent.service.abstract.d.ts.map +1 -1
  171. package/dist/backend/backend/src/services/agent/runtime-agent.service.abstract.js +4 -0
  172. package/dist/backend/backend/src/services/agent/runtime-agent.service.abstract.js.map +1 -1
  173. package/dist/backend/backend/src/services/agent/runtime-exit-monitor.service.d.ts +29 -0
  174. package/dist/backend/backend/src/services/agent/runtime-exit-monitor.service.d.ts.map +1 -1
  175. package/dist/backend/backend/src/services/agent/runtime-exit-monitor.service.js +77 -1
  176. package/dist/backend/backend/src/services/agent/runtime-exit-monitor.service.js.map +1 -1
  177. package/dist/backend/backend/src/services/ai/prompt-modules/skills-reference.module.d.ts.map +1 -1
  178. package/dist/backend/backend/src/services/ai/prompt-modules/skills-reference.module.js +1 -0
  179. package/dist/backend/backend/src/services/ai/prompt-modules/skills-reference.module.js.map +1 -1
  180. package/dist/backend/backend/src/services/chat/chat.service.d.ts +99 -2
  181. package/dist/backend/backend/src/services/chat/chat.service.d.ts.map +1 -1
  182. package/dist/backend/backend/src/services/chat/chat.service.js +265 -40
  183. package/dist/backend/backend/src/services/chat/chat.service.js.map +1 -1
  184. package/dist/backend/backend/src/services/chat-v2/chat-v2.dispatcher.service.d.ts +30 -5
  185. package/dist/backend/backend/src/services/chat-v2/chat-v2.dispatcher.service.d.ts.map +1 -1
  186. package/dist/backend/backend/src/services/chat-v2/chat-v2.dispatcher.service.js +34 -4
  187. package/dist/backend/backend/src/services/chat-v2/chat-v2.dispatcher.service.js.map +1 -1
  188. package/dist/backend/backend/src/services/chat-v2/sqlite/channel.store.d.ts +18 -11
  189. package/dist/backend/backend/src/services/chat-v2/sqlite/channel.store.d.ts.map +1 -1
  190. package/dist/backend/backend/src/services/chat-v2/sqlite/channel.store.js +19 -25
  191. package/dist/backend/backend/src/services/chat-v2/sqlite/channel.store.js.map +1 -1
  192. package/dist/backend/backend/src/services/chat-v2/sqlite/message.store.d.ts +7 -4
  193. package/dist/backend/backend/src/services/chat-v2/sqlite/message.store.d.ts.map +1 -1
  194. package/dist/backend/backend/src/services/chat-v2/sqlite/message.store.js +8 -4
  195. package/dist/backend/backend/src/services/chat-v2/sqlite/message.store.js.map +1 -1
  196. package/dist/backend/backend/src/services/chat-v2/types.d.ts +0 -1
  197. package/dist/backend/backend/src/services/chat-v2/types.d.ts.map +1 -1
  198. package/dist/backend/backend/src/services/chat-v2/types.js +0 -1
  199. package/dist/backend/backend/src/services/chat-v2/types.js.map +1 -1
  200. package/dist/backend/backend/src/services/cloud/mobile-api-relay.service.d.ts.map +1 -1
  201. package/dist/backend/backend/src/services/cloud/mobile-api-relay.service.js +5 -0
  202. package/dist/backend/backend/src/services/cloud/mobile-api-relay.service.js.map +1 -1
  203. package/dist/backend/backend/src/services/core/api-token.service.d.ts +28 -0
  204. package/dist/backend/backend/src/services/core/api-token.service.d.ts.map +1 -1
  205. package/dist/backend/backend/src/services/core/api-token.service.js +46 -0
  206. package/dist/backend/backend/src/services/core/api-token.service.js.map +1 -1
  207. package/dist/backend/backend/src/services/core/dashboard-build.d.ts +49 -0
  208. package/dist/backend/backend/src/services/core/dashboard-build.d.ts.map +1 -0
  209. package/dist/backend/backend/src/services/core/dashboard-build.js +68 -0
  210. package/dist/backend/backend/src/services/core/dashboard-build.js.map +1 -0
  211. package/dist/backend/backend/src/services/core/owner-auth.service.d.ts +127 -0
  212. package/dist/backend/backend/src/services/core/owner-auth.service.d.ts.map +1 -0
  213. package/dist/backend/backend/src/services/core/owner-auth.service.js +205 -0
  214. package/dist/backend/backend/src/services/core/owner-auth.service.js.map +1 -0
  215. package/dist/backend/backend/src/services/core/peer-process.service.d.ts +168 -0
  216. package/dist/backend/backend/src/services/core/peer-process.service.d.ts.map +1 -0
  217. package/dist/backend/backend/src/services/core/peer-process.service.js +352 -0
  218. package/dist/backend/backend/src/services/core/peer-process.service.js.map +1 -0
  219. package/dist/backend/backend/src/services/experiments/experiment.service.d.ts +97 -1
  220. package/dist/backend/backend/src/services/experiments/experiment.service.d.ts.map +1 -1
  221. package/dist/backend/backend/src/services/experiments/experiment.service.js +372 -1
  222. package/dist/backend/backend/src/services/experiments/experiment.service.js.map +1 -1
  223. package/dist/backend/backend/src/services/experiments/experiment.wiring.d.ts.map +1 -1
  224. package/dist/backend/backend/src/services/experiments/experiment.wiring.js +19 -2
  225. package/dist/backend/backend/src/services/experiments/experiment.wiring.js.map +1 -1
  226. package/dist/backend/backend/src/services/messaging/owner-message-watchdog.wiring.d.ts.map +1 -1
  227. package/dist/backend/backend/src/services/messaging/owner-message-watchdog.wiring.js +2 -1
  228. package/dist/backend/backend/src/services/messaging/owner-message-watchdog.wiring.js.map +1 -1
  229. package/dist/backend/backend/src/services/messaging/thread-status-queue.service.d.ts +0 -8
  230. package/dist/backend/backend/src/services/messaging/thread-status-queue.service.d.ts.map +1 -1
  231. package/dist/backend/backend/src/services/messaging/thread-status-queue.service.js +0 -18
  232. package/dist/backend/backend/src/services/messaging/thread-status-queue.service.js.map +1 -1
  233. package/dist/backend/backend/src/services/monitoring/activity-monitor.service.d.ts +19 -0
  234. package/dist/backend/backend/src/services/monitoring/activity-monitor.service.d.ts.map +1 -1
  235. package/dist/backend/backend/src/services/monitoring/activity-monitor.service.js +41 -5
  236. package/dist/backend/backend/src/services/monitoring/activity-monitor.service.js.map +1 -1
  237. package/dist/backend/backend/src/services/monitoring/agent-turn-state.d.ts +184 -0
  238. package/dist/backend/backend/src/services/monitoring/agent-turn-state.d.ts.map +1 -0
  239. package/dist/backend/backend/src/services/monitoring/agent-turn-state.js +391 -0
  240. package/dist/backend/backend/src/services/monitoring/agent-turn-state.js.map +1 -0
  241. package/dist/backend/backend/src/services/monitoring/claude-transcript-sync.service.d.ts +35 -1
  242. package/dist/backend/backend/src/services/monitoring/claude-transcript-sync.service.d.ts.map +1 -1
  243. package/dist/backend/backend/src/services/monitoring/claude-transcript-sync.service.js +138 -2
  244. package/dist/backend/backend/src/services/monitoring/claude-transcript-sync.service.js.map +1 -1
  245. package/dist/backend/backend/src/services/monitoring/claude-transcript-turn.d.ts +73 -0
  246. package/dist/backend/backend/src/services/monitoring/claude-transcript-turn.d.ts.map +1 -0
  247. package/dist/backend/backend/src/services/monitoring/claude-transcript-turn.js +258 -0
  248. package/dist/backend/backend/src/services/monitoring/claude-transcript-turn.js.map +1 -0
  249. package/dist/backend/backend/src/services/monitoring/deferred-idle-settle.d.ts +82 -0
  250. package/dist/backend/backend/src/services/monitoring/deferred-idle-settle.d.ts.map +1 -0
  251. package/dist/backend/backend/src/services/monitoring/deferred-idle-settle.js +141 -0
  252. package/dist/backend/backend/src/services/monitoring/deferred-idle-settle.js.map +1 -0
  253. package/dist/backend/backend/src/services/monitoring/system-resource-alert.service.d.ts +51 -1
  254. package/dist/backend/backend/src/services/monitoring/system-resource-alert.service.d.ts.map +1 -1
  255. package/dist/backend/backend/src/services/monitoring/system-resource-alert.service.js +118 -2
  256. package/dist/backend/backend/src/services/monitoring/system-resource-alert.service.js.map +1 -1
  257. package/dist/backend/backend/src/services/monitoring/transcript-cost-repair.d.ts +103 -0
  258. package/dist/backend/backend/src/services/monitoring/transcript-cost-repair.d.ts.map +1 -0
  259. package/dist/backend/backend/src/services/monitoring/transcript-cost-repair.js +86 -0
  260. package/dist/backend/backend/src/services/monitoring/transcript-cost-repair.js.map +1 -0
  261. package/dist/backend/backend/src/services/open-items/open-items.service.d.ts +57 -0
  262. package/dist/backend/backend/src/services/open-items/open-items.service.d.ts.map +1 -1
  263. package/dist/backend/backend/src/services/open-items/open-items.service.js +100 -4
  264. package/dist/backend/backend/src/services/open-items/open-items.service.js.map +1 -1
  265. package/dist/backend/backend/src/services/project-tickets/project-ticket-workflow.service.d.ts.map +1 -1
  266. package/dist/backend/backend/src/services/project-tickets/project-ticket-workflow.service.js +13 -0
  267. package/dist/backend/backend/src/services/project-tickets/project-ticket-workflow.service.js.map +1 -1
  268. package/dist/backend/backend/src/services/project-tickets/project-ticket.service.d.ts +36 -0
  269. package/dist/backend/backend/src/services/project-tickets/project-ticket.service.d.ts.map +1 -1
  270. package/dist/backend/backend/src/services/project-tickets/project-ticket.service.js +42 -3
  271. package/dist/backend/backend/src/services/project-tickets/project-ticket.service.js.map +1 -1
  272. package/dist/backend/backend/src/services/project-tickets/ticket-assignee-waker.d.ts.map +1 -1
  273. package/dist/backend/backend/src/services/project-tickets/ticket-assignee-waker.js +2 -1
  274. package/dist/backend/backend/src/services/project-tickets/ticket-assignee-waker.js.map +1 -1
  275. package/dist/backend/backend/src/services/project-tickets/ticket-autopilot-decision.d.ts.map +1 -1
  276. package/dist/backend/backend/src/services/project-tickets/ticket-autopilot-decision.js +3 -0
  277. package/dist/backend/backend/src/services/project-tickets/ticket-autopilot-decision.js.map +1 -1
  278. package/dist/backend/backend/src/services/project-tickets/ticket-autopilot-retro.d.ts +156 -0
  279. package/dist/backend/backend/src/services/project-tickets/ticket-autopilot-retro.d.ts.map +1 -0
  280. package/dist/backend/backend/src/services/project-tickets/ticket-autopilot-retro.js +308 -0
  281. package/dist/backend/backend/src/services/project-tickets/ticket-autopilot-retro.js.map +1 -0
  282. package/dist/backend/backend/src/services/project-tickets/ticket-autopilot-stats.d.ts +212 -0
  283. package/dist/backend/backend/src/services/project-tickets/ticket-autopilot-stats.d.ts.map +1 -0
  284. package/dist/backend/backend/src/services/project-tickets/ticket-autopilot-stats.js +515 -0
  285. package/dist/backend/backend/src/services/project-tickets/ticket-autopilot-stats.js.map +1 -0
  286. package/dist/backend/backend/src/services/project-tickets/ticket-autopilot-trace.d.ts +186 -0
  287. package/dist/backend/backend/src/services/project-tickets/ticket-autopilot-trace.d.ts.map +1 -0
  288. package/dist/backend/backend/src/services/project-tickets/ticket-autopilot-trace.js +341 -0
  289. package/dist/backend/backend/src/services/project-tickets/ticket-autopilot-trace.js.map +1 -0
  290. package/dist/backend/backend/src/services/project-tickets/ticket-autopilot.service.d.ts +309 -0
  291. package/dist/backend/backend/src/services/project-tickets/ticket-autopilot.service.d.ts.map +1 -1
  292. package/dist/backend/backend/src/services/project-tickets/ticket-autopilot.service.js +726 -1
  293. package/dist/backend/backend/src/services/project-tickets/ticket-autopilot.service.js.map +1 -1
  294. package/dist/backend/backend/src/services/restart/in-flight-turn-tracker.service.d.ts +34 -3
  295. package/dist/backend/backend/src/services/restart/in-flight-turn-tracker.service.d.ts.map +1 -1
  296. package/dist/backend/backend/src/services/restart/in-flight-turn-tracker.service.js +57 -2
  297. package/dist/backend/backend/src/services/restart/in-flight-turn-tracker.service.js.map +1 -1
  298. package/dist/backend/backend/src/services/restart/interrupted-turns.d.ts +61 -3
  299. package/dist/backend/backend/src/services/restart/interrupted-turns.d.ts.map +1 -1
  300. package/dist/backend/backend/src/services/restart/interrupted-turns.js +106 -9
  301. package/dist/backend/backend/src/services/restart/interrupted-turns.js.map +1 -1
  302. package/dist/backend/backend/src/services/restart/restart-drain.service.d.ts +22 -0
  303. package/dist/backend/backend/src/services/restart/restart-drain.service.d.ts.map +1 -1
  304. package/dist/backend/backend/src/services/restart/restart-drain.service.js +37 -5
  305. package/dist/backend/backend/src/services/restart/restart-drain.service.js.map +1 -1
  306. package/dist/backend/backend/src/services/restart/supervisor-stop-budget.d.ts +62 -0
  307. package/dist/backend/backend/src/services/restart/supervisor-stop-budget.d.ts.map +1 -0
  308. package/dist/backend/backend/src/services/restart/supervisor-stop-budget.js +126 -0
  309. package/dist/backend/backend/src/services/restart/supervisor-stop-budget.js.map +1 -0
  310. package/dist/backend/backend/src/services/restart/turn-probe.d.ts +17 -2
  311. package/dist/backend/backend/src/services/restart/turn-probe.d.ts.map +1 -1
  312. package/dist/backend/backend/src/services/restart/turn-probe.js +29 -4
  313. package/dist/backend/backend/src/services/restart/turn-probe.js.map +1 -1
  314. package/dist/backend/backend/src/services/runtime-fallback/runtime-fallback.service.d.ts.map +1 -1
  315. package/dist/backend/backend/src/services/runtime-fallback/runtime-fallback.service.js +4 -0
  316. package/dist/backend/backend/src/services/runtime-fallback/runtime-fallback.service.js.map +1 -1
  317. package/dist/backend/backend/src/services/slack/slack-auto-working.service.d.ts +29 -0
  318. package/dist/backend/backend/src/services/slack/slack-auto-working.service.d.ts.map +1 -1
  319. package/dist/backend/backend/src/services/slack/slack-auto-working.service.js +66 -3
  320. package/dist/backend/backend/src/services/slack/slack-auto-working.service.js.map +1 -1
  321. package/dist/backend/backend/src/services/slack/slack-team-channel.service.d.ts +79 -15
  322. package/dist/backend/backend/src/services/slack/slack-team-channel.service.d.ts.map +1 -1
  323. package/dist/backend/backend/src/services/slack/slack-team-channel.service.js +200 -41
  324. package/dist/backend/backend/src/services/slack/slack-team-channel.service.js.map +1 -1
  325. package/dist/backend/backend/src/services/slack/slack.service.d.ts +18 -0
  326. package/dist/backend/backend/src/services/slack/slack.service.d.ts.map +1 -1
  327. package/dist/backend/backend/src/services/slack/slack.service.js +32 -0
  328. package/dist/backend/backend/src/services/slack/slack.service.js.map +1 -1
  329. package/dist/backend/backend/src/services/trace/trace-analysis.service.d.ts +99 -0
  330. package/dist/backend/backend/src/services/trace/trace-analysis.service.d.ts.map +1 -0
  331. package/dist/backend/backend/src/services/trace/trace-analysis.service.js +148 -0
  332. package/dist/backend/backend/src/services/trace/trace-analysis.service.js.map +1 -0
  333. package/dist/backend/backend/src/services/trace/trace-context.service.d.ts +17 -0
  334. package/dist/backend/backend/src/services/trace/trace-context.service.d.ts.map +1 -1
  335. package/dist/backend/backend/src/services/trace/trace-context.service.js +58 -1
  336. package/dist/backend/backend/src/services/trace/trace-context.service.js.map +1 -1
  337. package/dist/backend/backend/src/services/trace/trace-http.middleware.d.ts +4 -0
  338. package/dist/backend/backend/src/services/trace/trace-http.middleware.d.ts.map +1 -1
  339. package/dist/backend/backend/src/services/trace/trace-http.middleware.js +32 -2
  340. package/dist/backend/backend/src/services/trace/trace-http.middleware.js.map +1 -1
  341. package/dist/backend/backend/src/services/trace/trace-metrics.d.ts +262 -0
  342. package/dist/backend/backend/src/services/trace/trace-metrics.d.ts.map +1 -0
  343. package/dist/backend/backend/src/services/trace/trace-metrics.js +810 -0
  344. package/dist/backend/backend/src/services/trace/trace-metrics.js.map +1 -0
  345. package/dist/backend/backend/src/services/trace/trace-recorder.d.ts +48 -0
  346. package/dist/backend/backend/src/services/trace/trace-recorder.d.ts.map +1 -1
  347. package/dist/backend/backend/src/services/trace/trace-recorder.js +121 -1
  348. package/dist/backend/backend/src/services/trace/trace-recorder.js.map +1 -1
  349. package/dist/backend/backend/src/services/trace/trace-store.d.ts +40 -1
  350. package/dist/backend/backend/src/services/trace/trace-store.d.ts.map +1 -1
  351. package/dist/backend/backend/src/services/trace/trace-store.js +126 -14
  352. package/dist/backend/backend/src/services/trace/trace-store.js.map +1 -1
  353. package/dist/backend/backend/src/services/trace/trace-summary.d.ts +77 -0
  354. package/dist/backend/backend/src/services/trace/trace-summary.d.ts.map +1 -0
  355. package/dist/backend/backend/src/services/trace/trace-summary.js +239 -0
  356. package/dist/backend/backend/src/services/trace/trace-summary.js.map +1 -0
  357. package/dist/backend/backend/src/services/trace/trace-timeline.d.ts +74 -0
  358. package/dist/backend/backend/src/services/trace/trace-timeline.d.ts.map +1 -0
  359. package/dist/backend/backend/src/services/trace/trace-timeline.js +162 -0
  360. package/dist/backend/backend/src/services/trace/trace-timeline.js.map +1 -0
  361. package/dist/backend/backend/src/services/trace/trace.types.d.ts +22 -3
  362. package/dist/backend/backend/src/services/trace/trace.types.d.ts.map +1 -1
  363. package/dist/backend/backend/src/services/trace/trace.types.js +20 -1
  364. package/dist/backend/backend/src/services/trace/trace.types.js.map +1 -1
  365. package/dist/backend/backend/src/services/v3/owner-receipt/owner-receipt-format-ask.d.ts +80 -0
  366. package/dist/backend/backend/src/services/v3/owner-receipt/owner-receipt-format-ask.d.ts.map +1 -0
  367. package/dist/backend/backend/src/services/v3/owner-receipt/owner-receipt-format-ask.js +184 -0
  368. package/dist/backend/backend/src/services/v3/owner-receipt/owner-receipt-format-ask.js.map +1 -0
  369. package/dist/backend/backend/src/services/v3/owner-receipt/owner-receipt.service.d.ts +7 -0
  370. package/dist/backend/backend/src/services/v3/owner-receipt/owner-receipt.service.d.ts.map +1 -1
  371. package/dist/backend/backend/src/services/v3/owner-receipt/owner-receipt.service.js +16 -0
  372. package/dist/backend/backend/src/services/v3/owner-receipt/owner-receipt.service.js.map +1 -1
  373. package/dist/backend/backend/src/services/v3/owner-receipt/owner-receipt.types.d.ts +16 -0
  374. package/dist/backend/backend/src/services/v3/owner-receipt/owner-receipt.types.d.ts.map +1 -1
  375. package/dist/backend/backend/src/services/v3/owner-receipt/owner-receipt.types.js.map +1 -1
  376. package/dist/backend/backend/src/services/v3/tl-auto-verify.service.d.ts.map +1 -1
  377. package/dist/backend/backend/src/services/v3/tl-auto-verify.service.js +2 -1
  378. package/dist/backend/backend/src/services/v3/tl-auto-verify.service.js.map +1 -1
  379. package/dist/backend/backend/src/services/v3/workitem-dispatch.subscriber.d.ts +8 -0
  380. package/dist/backend/backend/src/services/v3/workitem-dispatch.subscriber.d.ts.map +1 -1
  381. package/dist/backend/backend/src/services/v3/workitem-dispatch.subscriber.js +24 -2
  382. package/dist/backend/backend/src/services/v3/workitem-dispatch.subscriber.js.map +1 -1
  383. package/dist/backend/backend/src/services/whatsapp/whatsapp-draft-gate.d.ts +4 -3
  384. package/dist/backend/backend/src/services/whatsapp/whatsapp-draft-gate.d.ts.map +1 -1
  385. package/dist/backend/backend/src/services/whatsapp/whatsapp-draft-gate.js +3 -2
  386. package/dist/backend/backend/src/services/whatsapp/whatsapp-draft-gate.js.map +1 -1
  387. package/dist/backend/backend/src/services/wiki/wiki-ingest.service.d.ts +3 -1
  388. package/dist/backend/backend/src/services/wiki/wiki-ingest.service.d.ts.map +1 -1
  389. package/dist/backend/backend/src/services/wiki/wiki-ingest.service.js.map +1 -1
  390. package/dist/backend/backend/src/services/workflow/message-scheduler.service.d.ts.map +1 -1
  391. package/dist/backend/backend/src/services/workflow/message-scheduler.service.js +3 -0
  392. package/dist/backend/backend/src/services/workflow/message-scheduler.service.js.map +1 -1
  393. package/dist/backend/backend/src/services/workflow/scheduler.service.d.ts.map +1 -1
  394. package/dist/backend/backend/src/services/workflow/scheduler.service.js +3 -0
  395. package/dist/backend/backend/src/services/workflow/scheduler.service.js.map +1 -1
  396. package/dist/backend/backend/src/services/worktree/workitem-worktree.subscriber.d.ts.map +1 -1
  397. package/dist/backend/backend/src/services/worktree/workitem-worktree.subscriber.js +2 -1
  398. package/dist/backend/backend/src/services/worktree/workitem-worktree.subscriber.js.map +1 -1
  399. package/dist/backend/backend/src/types/decision.types.d.ts +3 -1
  400. package/dist/backend/backend/src/types/decision.types.d.ts.map +1 -1
  401. package/dist/backend/backend/src/types/experiment.types.d.ts +57 -0
  402. package/dist/backend/backend/src/types/experiment.types.d.ts.map +1 -1
  403. package/dist/backend/backend/src/types/experiment.types.js.map +1 -1
  404. package/dist/backend/backend/src/types/ticket-autopilot.types.d.ts +9 -0
  405. package/dist/backend/backend/src/types/ticket-autopilot.types.d.ts.map +1 -1
  406. package/dist/backend/backend/src/types/ticket-autopilot.types.js +14 -0
  407. package/dist/backend/backend/src/types/ticket-autopilot.types.js.map +1 -1
  408. package/dist/backend/backend/src/types/v2/open-item.types.d.ts +4 -0
  409. package/dist/backend/backend/src/types/v2/open-item.types.d.ts.map +1 -1
  410. package/dist/backend/backend/src/types/v2/work-item.types.d.ts +1 -1
  411. package/dist/backend/backend/src/types/v2/work-item.types.d.ts.map +1 -1
  412. package/dist/backend/backend/src/types/v2/work-item.types.js +1 -0
  413. package/dist/backend/backend/src/types/v2/work-item.types.js.map +1 -1
  414. package/dist/backend/backend/src/utils/agent-caller.utils.d.ts +44 -37
  415. package/dist/backend/backend/src/utils/agent-caller.utils.d.ts.map +1 -1
  416. package/dist/backend/backend/src/utils/agent-caller.utils.js +48 -42
  417. package/dist/backend/backend/src/utils/agent-caller.utils.js.map +1 -1
  418. package/dist/backend/backend/src/utils/secret-env.d.ts.map +1 -1
  419. package/dist/backend/backend/src/utils/secret-env.js +8 -1
  420. package/dist/backend/backend/src/utils/secret-env.js.map +1 -1
  421. package/dist/backend/build-info.json +2 -2
  422. package/dist/backend/config/constants.d.ts +67 -0
  423. package/dist/backend/config/constants.d.ts.map +1 -1
  424. package/dist/backend/config/constants.js +67 -0
  425. package/dist/backend/config/constants.js.map +1 -1
  426. package/dist/cli/backend/src/constants.d.ts +223 -5
  427. package/dist/cli/backend/src/constants.d.ts.map +1 -1
  428. package/dist/cli/backend/src/constants.js +206 -6
  429. package/dist/cli/backend/src/constants.js.map +1 -1
  430. package/dist/cli/backend/src/services/agent/agent-registration.service.d.ts.map +1 -1
  431. package/dist/cli/backend/src/services/agent/agent-registration.service.js +12 -2
  432. package/dist/cli/backend/src/services/agent/agent-registration.service.js.map +1 -1
  433. package/dist/cli/backend/src/services/agent/control-plane-guard.service.d.ts +7 -5
  434. package/dist/cli/backend/src/services/agent/control-plane-guard.service.d.ts.map +1 -1
  435. package/dist/cli/backend/src/services/agent/control-plane-guard.service.js +19 -10
  436. package/dist/cli/backend/src/services/agent/control-plane-guard.service.js.map +1 -1
  437. package/dist/cli/backend/src/services/agent/crewly-agent/crewly-agent-external-runtime.service.d.ts.map +1 -1
  438. package/dist/cli/backend/src/services/agent/crewly-agent/crewly-agent-external-runtime.service.js +10 -1
  439. package/dist/cli/backend/src/services/agent/crewly-agent/crewly-agent-external-runtime.service.js.map +1 -1
  440. package/dist/cli/backend/src/services/agent/runtime-agent.service.abstract.d.ts.map +1 -1
  441. package/dist/cli/backend/src/services/agent/runtime-agent.service.abstract.js +4 -0
  442. package/dist/cli/backend/src/services/agent/runtime-agent.service.abstract.js.map +1 -1
  443. package/dist/cli/backend/src/services/agent/runtime-exit-monitor.service.d.ts +29 -0
  444. package/dist/cli/backend/src/services/agent/runtime-exit-monitor.service.d.ts.map +1 -1
  445. package/dist/cli/backend/src/services/agent/runtime-exit-monitor.service.js +77 -1
  446. package/dist/cli/backend/src/services/agent/runtime-exit-monitor.service.js.map +1 -1
  447. package/dist/cli/backend/src/services/ai/prompt-modules/skills-reference.module.d.ts.map +1 -1
  448. package/dist/cli/backend/src/services/ai/prompt-modules/skills-reference.module.js +1 -0
  449. package/dist/cli/backend/src/services/ai/prompt-modules/skills-reference.module.js.map +1 -1
  450. package/dist/cli/backend/src/services/chat/chat.service.d.ts +99 -2
  451. package/dist/cli/backend/src/services/chat/chat.service.d.ts.map +1 -1
  452. package/dist/cli/backend/src/services/chat/chat.service.js +265 -40
  453. package/dist/cli/backend/src/services/chat/chat.service.js.map +1 -1
  454. package/dist/cli/backend/src/services/chat-v2/chat-v2.dispatcher.service.d.ts +30 -5
  455. package/dist/cli/backend/src/services/chat-v2/chat-v2.dispatcher.service.d.ts.map +1 -1
  456. package/dist/cli/backend/src/services/chat-v2/chat-v2.dispatcher.service.js +34 -4
  457. package/dist/cli/backend/src/services/chat-v2/chat-v2.dispatcher.service.js.map +1 -1
  458. package/dist/cli/backend/src/services/chat-v2/sqlite/channel.store.d.ts +18 -11
  459. package/dist/cli/backend/src/services/chat-v2/sqlite/channel.store.d.ts.map +1 -1
  460. package/dist/cli/backend/src/services/chat-v2/sqlite/channel.store.js +19 -25
  461. package/dist/cli/backend/src/services/chat-v2/sqlite/channel.store.js.map +1 -1
  462. package/dist/cli/backend/src/services/chat-v2/sqlite/message.store.d.ts +7 -4
  463. package/dist/cli/backend/src/services/chat-v2/sqlite/message.store.d.ts.map +1 -1
  464. package/dist/cli/backend/src/services/chat-v2/sqlite/message.store.js +8 -4
  465. package/dist/cli/backend/src/services/chat-v2/sqlite/message.store.js.map +1 -1
  466. package/dist/cli/backend/src/services/chat-v2/types.d.ts +0 -1
  467. package/dist/cli/backend/src/services/chat-v2/types.d.ts.map +1 -1
  468. package/dist/cli/backend/src/services/chat-v2/types.js +0 -1
  469. package/dist/cli/backend/src/services/chat-v2/types.js.map +1 -1
  470. package/dist/cli/backend/src/services/core/api-token.service.d.ts +28 -0
  471. package/dist/cli/backend/src/services/core/api-token.service.d.ts.map +1 -1
  472. package/dist/cli/backend/src/services/core/api-token.service.js +46 -0
  473. package/dist/cli/backend/src/services/core/api-token.service.js.map +1 -1
  474. package/dist/cli/backend/src/services/core/owner-auth.service.d.ts +127 -0
  475. package/dist/cli/backend/src/services/core/owner-auth.service.d.ts.map +1 -0
  476. package/dist/cli/backend/src/services/core/owner-auth.service.js +205 -0
  477. package/dist/cli/backend/src/services/core/owner-auth.service.js.map +1 -0
  478. package/dist/cli/backend/src/services/messaging/thread-status-queue.service.d.ts +0 -8
  479. package/dist/cli/backend/src/services/messaging/thread-status-queue.service.d.ts.map +1 -1
  480. package/dist/cli/backend/src/services/messaging/thread-status-queue.service.js +0 -18
  481. package/dist/cli/backend/src/services/messaging/thread-status-queue.service.js.map +1 -1
  482. package/dist/cli/backend/src/services/monitoring/activity-monitor.service.d.ts +19 -0
  483. package/dist/cli/backend/src/services/monitoring/activity-monitor.service.d.ts.map +1 -1
  484. package/dist/cli/backend/src/services/monitoring/activity-monitor.service.js +41 -5
  485. package/dist/cli/backend/src/services/monitoring/activity-monitor.service.js.map +1 -1
  486. package/dist/cli/backend/src/services/monitoring/agent-turn-state.d.ts +184 -0
  487. package/dist/cli/backend/src/services/monitoring/agent-turn-state.d.ts.map +1 -0
  488. package/dist/cli/backend/src/services/monitoring/agent-turn-state.js +391 -0
  489. package/dist/cli/backend/src/services/monitoring/agent-turn-state.js.map +1 -0
  490. package/dist/cli/backend/src/services/monitoring/claude-transcript-turn.d.ts +73 -0
  491. package/dist/cli/backend/src/services/monitoring/claude-transcript-turn.d.ts.map +1 -0
  492. package/dist/cli/backend/src/services/monitoring/claude-transcript-turn.js +258 -0
  493. package/dist/cli/backend/src/services/monitoring/claude-transcript-turn.js.map +1 -0
  494. package/dist/cli/backend/src/services/open-items/open-items.service.d.ts +57 -0
  495. package/dist/cli/backend/src/services/open-items/open-items.service.d.ts.map +1 -1
  496. package/dist/cli/backend/src/services/open-items/open-items.service.js +100 -4
  497. package/dist/cli/backend/src/services/open-items/open-items.service.js.map +1 -1
  498. package/dist/cli/backend/src/services/project-tickets/project-ticket.service.d.ts +36 -0
  499. package/dist/cli/backend/src/services/project-tickets/project-ticket.service.d.ts.map +1 -1
  500. package/dist/cli/backend/src/services/project-tickets/project-ticket.service.js +42 -3
  501. package/dist/cli/backend/src/services/project-tickets/project-ticket.service.js.map +1 -1
  502. package/dist/cli/backend/src/services/restart/in-flight-turn-tracker.service.d.ts +34 -3
  503. package/dist/cli/backend/src/services/restart/in-flight-turn-tracker.service.d.ts.map +1 -1
  504. package/dist/cli/backend/src/services/restart/in-flight-turn-tracker.service.js +57 -2
  505. package/dist/cli/backend/src/services/restart/in-flight-turn-tracker.service.js.map +1 -1
  506. package/dist/cli/backend/src/services/restart/restart-drain.service.d.ts +22 -0
  507. package/dist/cli/backend/src/services/restart/restart-drain.service.d.ts.map +1 -1
  508. package/dist/cli/backend/src/services/restart/restart-drain.service.js +37 -5
  509. package/dist/cli/backend/src/services/restart/restart-drain.service.js.map +1 -1
  510. package/dist/cli/backend/src/services/slack/slack-auto-working.service.d.ts +29 -0
  511. package/dist/cli/backend/src/services/slack/slack-auto-working.service.d.ts.map +1 -1
  512. package/dist/cli/backend/src/services/slack/slack-auto-working.service.js +66 -3
  513. package/dist/cli/backend/src/services/slack/slack-auto-working.service.js.map +1 -1
  514. package/dist/cli/backend/src/services/slack/slack-team-channel.service.d.ts +79 -15
  515. package/dist/cli/backend/src/services/slack/slack-team-channel.service.d.ts.map +1 -1
  516. package/dist/cli/backend/src/services/slack/slack-team-channel.service.js +200 -41
  517. package/dist/cli/backend/src/services/slack/slack-team-channel.service.js.map +1 -1
  518. package/dist/cli/backend/src/services/slack/slack.service.d.ts +18 -0
  519. package/dist/cli/backend/src/services/slack/slack.service.d.ts.map +1 -1
  520. package/dist/cli/backend/src/services/slack/slack.service.js +32 -0
  521. package/dist/cli/backend/src/services/slack/slack.service.js.map +1 -1
  522. package/dist/cli/backend/src/services/trace/trace-context.service.d.ts +17 -0
  523. package/dist/cli/backend/src/services/trace/trace-context.service.d.ts.map +1 -1
  524. package/dist/cli/backend/src/services/trace/trace-context.service.js +58 -1
  525. package/dist/cli/backend/src/services/trace/trace-context.service.js.map +1 -1
  526. package/dist/cli/backend/src/services/trace/trace-recorder.d.ts +48 -0
  527. package/dist/cli/backend/src/services/trace/trace-recorder.d.ts.map +1 -1
  528. package/dist/cli/backend/src/services/trace/trace-recorder.js +121 -1
  529. package/dist/cli/backend/src/services/trace/trace-recorder.js.map +1 -1
  530. package/dist/cli/backend/src/services/trace/trace-store.d.ts +40 -1
  531. package/dist/cli/backend/src/services/trace/trace-store.d.ts.map +1 -1
  532. package/dist/cli/backend/src/services/trace/trace-store.js +126 -14
  533. package/dist/cli/backend/src/services/trace/trace-store.js.map +1 -1
  534. package/dist/cli/backend/src/services/trace/trace.types.d.ts +22 -3
  535. package/dist/cli/backend/src/services/trace/trace.types.d.ts.map +1 -1
  536. package/dist/cli/backend/src/services/trace/trace.types.js +20 -1
  537. package/dist/cli/backend/src/services/trace/trace.types.js.map +1 -1
  538. package/dist/cli/backend/src/services/wiki/wiki-ingest.service.d.ts +3 -1
  539. package/dist/cli/backend/src/services/wiki/wiki-ingest.service.d.ts.map +1 -1
  540. package/dist/cli/backend/src/services/wiki/wiki-ingest.service.js.map +1 -1
  541. package/dist/cli/backend/src/types/decision.types.d.ts +3 -1
  542. package/dist/cli/backend/src/types/decision.types.d.ts.map +1 -1
  543. package/dist/cli/backend/src/types/ticket-autopilot.types.d.ts +9 -0
  544. package/dist/cli/backend/src/types/ticket-autopilot.types.d.ts.map +1 -1
  545. package/dist/cli/backend/src/types/ticket-autopilot.types.js +14 -0
  546. package/dist/cli/backend/src/types/ticket-autopilot.types.js.map +1 -1
  547. package/dist/cli/backend/src/types/v2/open-item.types.d.ts +4 -0
  548. package/dist/cli/backend/src/types/v2/open-item.types.d.ts.map +1 -1
  549. package/dist/cli/backend/src/types/v2/work-item.types.d.ts +1 -1
  550. package/dist/cli/backend/src/types/v2/work-item.types.d.ts.map +1 -1
  551. package/dist/cli/backend/src/types/v2/work-item.types.js +1 -0
  552. package/dist/cli/backend/src/types/v2/work-item.types.js.map +1 -1
  553. package/dist/cli/backend/src/utils/secret-env.d.ts.map +1 -1
  554. package/dist/cli/backend/src/utils/secret-env.js +8 -1
  555. package/dist/cli/backend/src/utils/secret-env.js.map +1 -1
  556. package/dist/cli/cli/src/commands/service.d.ts +12 -0
  557. package/dist/cli/cli/src/commands/service.d.ts.map +1 -1
  558. package/dist/cli/cli/src/commands/service.js +36 -2
  559. package/dist/cli/cli/src/commands/service.js.map +1 -1
  560. package/dist/cli/cli/src/index.js +4 -0
  561. package/dist/cli/cli/src/index.js.map +1 -1
  562. package/dist/cli/cli/src/utils/owner-token-fetch.d.ts +41 -0
  563. package/dist/cli/cli/src/utils/owner-token-fetch.d.ts.map +1 -0
  564. package/dist/cli/cli/src/utils/owner-token-fetch.js +83 -0
  565. package/dist/cli/cli/src/utils/owner-token-fetch.js.map +1 -0
  566. package/dist/cli/cli/src/utils/safe-shutdown.d.ts +13 -3
  567. package/dist/cli/cli/src/utils/safe-shutdown.d.ts.map +1 -1
  568. package/dist/cli/cli/src/utils/safe-shutdown.js +26 -4
  569. package/dist/cli/cli/src/utils/safe-shutdown.js.map +1 -1
  570. package/dist/cli/config/constants.d.ts +67 -0
  571. package/dist/cli/config/constants.d.ts.map +1 -1
  572. package/dist/cli/config/constants.js +67 -0
  573. package/dist/cli/config/constants.js.map +1 -1
  574. package/frontend/dist/assets/index-bfa0e2e8.css +42 -0
  575. package/frontend/dist/assets/{index-800118ca.js → index-edfa8e04.js} +285 -285
  576. package/frontend/dist/index.html +2 -2
  577. package/package.json +1 -1
  578. package/packages/crewly-agent/src/runtime/api-client.test.ts +42 -0
  579. package/packages/crewly-agent/src/runtime/api-client.ts +6 -0
  580. package/dist/backend/backend/src/services/v3/request-notification.service.d.ts +0 -52
  581. package/dist/backend/backend/src/services/v3/request-notification.service.d.ts.map +0 -1
  582. package/dist/backend/backend/src/services/v3/request-notification.service.js +0 -161
  583. package/dist/backend/backend/src/services/v3/request-notification.service.js.map +0 -1
  584. package/frontend/dist/assets/index-5e967795.css +0 -42
@@ -1 +1 @@
1
- {"version":3,"file":"tickets.controller.js","sourceRoot":"","sources":["../../../../../../backend/src/controllers/tickets/tickets.controller.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"tickets.controller.js","sourceRoot":"","sources":["../../../../../../backend/src/controllers/tickets/tickets.controller.ts"],"names":[],"mappings":"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"}
@@ -1,9 +1,14 @@
1
1
  /**
2
2
  * Run traces API (specs/2026-10-03-run-traces.md, issue #983).
3
3
  *
4
- * - `GET /api/traces?since=<ISO>&type=<rootKind>&limit=` — traces, most recently active first
4
+ * - `GET /api/traces?since=<ISO>&type=<rootKind>&limit=&metrics=0|1&autopilotProject=&day=&label=` — traces, most
5
+ * recently active first, each with a metrics summary unless `metrics=0` (#984; then at most METRICS_LIST_MAX rows);
6
+ * the tag filters select autopilot runs and labelled tickets (specs/2026-10-03-autopilot-experiments.md)
5
7
  * - `GET /api/traces/by-ref?workItemId=|ticketId=|requestId=|decisionId=|experimentId=` — the trace of an entity
6
8
  * - `GET /api/traces/:id?offset=&limit=` — `{ root, events, total, offset, limit, truncated }`
9
+ * - `GET /api/traces/:id/metrics?stallMinutes=` — autonomy metrics (#984)
10
+ * - `GET /api/traces/:id/timeline?stallMinutes=` — events grouped by turn and agent, with stalls (#984)
11
+ * - `GET /api/traces/:id/summary?maxChars=&stallMinutes=` — the compact text `trace-read` prints (#984)
7
12
  * - `POST /api/traces` `{ kind: 'goal'|'experiment', summary, refs? }` — start a goal / experiment root
8
13
  *
9
14
  * @module controllers/trace/trace.controller
@@ -12,17 +17,38 @@ import { Router, type Request, type Response } from 'express';
12
17
  /**
13
18
  * GET /api/traces
14
19
  *
15
- * @param req - Query: since (ISO), type (root kind), limit
20
+ * @param req - Query: since (ISO), type (root kind), limit, metrics (0 to leave them out), stallMinutes
16
21
  * @param res - `{ success, data: { traces, writeFailures } }`
17
22
  */
18
- export declare function listTraces(req: Request, res: Response): void;
23
+ export declare function listTraces(req: Request, res: Response): Promise<void>;
24
+ /**
25
+ * GET /api/traces/:id/metrics
26
+ *
27
+ * @param req - Params: id; query: stallMinutes
28
+ * @param res - `{ success, data: TraceMetrics }`
29
+ */
30
+ export declare function getTraceMetrics(req: Request, res: Response): Promise<void>;
31
+ /**
32
+ * GET /api/traces/:id/timeline
33
+ *
34
+ * @param req - Params: id; query: stallMinutes
35
+ * @param res - `{ success, data: { root, metrics, groups, truncated } }`
36
+ */
37
+ export declare function getTraceTimeline(req: Request, res: Response): Promise<void>;
38
+ /**
39
+ * GET /api/traces/:id/summary
40
+ *
41
+ * @param req - Params: id; query: maxChars, stallMinutes
42
+ * @param res - `{ success, data: { traceId, text, links, metrics } }`
43
+ */
44
+ export declare function getTraceSummary(req: Request, res: Response): Promise<void>;
19
45
  /**
20
46
  * GET /api/traces/by-ref
21
47
  *
22
48
  * @param req - Query: one of workItemId, ticketId, requestId, decisionId, experimentId
23
49
  * @param res - `{ success, data: { traceId, root } }`, 400 without a ref, 404 when unknown
24
50
  */
25
- export declare function traceByRef(req: Request, res: Response): void;
51
+ export declare function traceByRef(req: Request, res: Response): Promise<void>;
26
52
  /**
27
53
  * GET /api/traces/:id
28
54
  *
@@ -1 +1 @@
1
- {"version":3,"file":"trace.controller.d.ts","sourceRoot":"","sources":["../../../../../../backend/src/controllers/trace/trace.controller.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,OAAO,EAAE,MAAM,EAAE,KAAK,OAAO,EAAE,KAAK,QAAQ,EAAE,MAAM,SAAS,CAAC;AAwC9D;;;;;GAKG;AACH,wBAAgB,UAAU,CAAC,GAAG,EAAE,OAAO,EAAE,GAAG,EAAE,QAAQ,GAAG,IAAI,CAoB5D;AAED;;;;;GAKG;AACH,wBAAgB,UAAU,CAAC,GAAG,EAAE,OAAO,EAAE,GAAG,EAAE,QAAQ,GAAG,IAAI,CAmB5D;AAED;;;;;GAKG;AACH,wBAAsB,QAAQ,CAAC,GAAG,EAAE,OAAO,EAAE,GAAG,EAAE,QAAQ,GAAG,OAAO,CAAC,IAAI,CAAC,CAgBzE;AAED;;;;;;GAMG;AACH,wBAAgB,UAAU,CAAC,GAAG,EAAE,OAAO,EAAE,GAAG,EAAE,QAAQ,GAAG,IAAI,CAwB5D;AAED;;;;GAIG;AACH,wBAAgB,iBAAiB,IAAI,MAAM,CAS1C"}
1
+ {"version":3,"file":"trace.controller.d.ts","sourceRoot":"","sources":["../../../../../../backend/src/controllers/trace/trace.controller.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,EAAE,MAAM,EAAE,KAAK,OAAO,EAAE,KAAK,QAAQ,EAAE,MAAM,SAAS,CAAC;AAmK9D;;;;;GAKG;AACH,wBAAsB,UAAU,CAAC,GAAG,EAAE,OAAO,EAAE,GAAG,EAAE,QAAQ,GAAG,OAAO,CAAC,IAAI,CAAC,CA0D3E;AAuBD;;;;;GAKG;AACH,wBAAsB,eAAe,CAAC,GAAG,EAAE,OAAO,EAAE,GAAG,EAAE,QAAQ,GAAG,OAAO,CAAC,IAAI,CAAC,CAUhF;AAED;;;;;GAKG;AACH,wBAAsB,gBAAgB,CAAC,GAAG,EAAE,OAAO,EAAE,GAAG,EAAE,QAAQ,GAAG,OAAO,CAAC,IAAI,CAAC,CAUjF;AAED;;;;;GAKG;AACH,wBAAsB,eAAe,CAAC,GAAG,EAAE,OAAO,EAAE,GAAG,EAAE,QAAQ,GAAG,OAAO,CAAC,IAAI,CAAC,CAWhF;AAED;;;;;GAKG;AACH,wBAAsB,UAAU,CAAC,GAAG,EAAE,OAAO,EAAE,GAAG,EAAE,QAAQ,GAAG,OAAO,CAAC,IAAI,CAAC,CAqB3E;AAED;;;;;GAKG;AACH,wBAAsB,QAAQ,CAAC,GAAG,EAAE,OAAO,EAAE,GAAG,EAAE,QAAQ,GAAG,OAAO,CAAC,IAAI,CAAC,CAiBzE;AAED;;;;;;GAMG;AACH,wBAAgB,UAAU,CAAC,GAAG,EAAE,OAAO,EAAE,GAAG,EAAE,QAAQ,GAAG,IAAI,CAwB5D;AAED;;;;GAIG;AACH,wBAAgB,iBAAiB,IAAI,MAAM,CAoB1C"}
@@ -1,9 +1,14 @@
1
1
  /**
2
2
  * Run traces API (specs/2026-10-03-run-traces.md, issue #983).
3
3
  *
4
- * - `GET /api/traces?since=<ISO>&type=<rootKind>&limit=` — traces, most recently active first
4
+ * - `GET /api/traces?since=<ISO>&type=<rootKind>&limit=&metrics=0|1&autopilotProject=&day=&label=` — traces, most
5
+ * recently active first, each with a metrics summary unless `metrics=0` (#984; then at most METRICS_LIST_MAX rows);
6
+ * the tag filters select autopilot runs and labelled tickets (specs/2026-10-03-autopilot-experiments.md)
5
7
  * - `GET /api/traces/by-ref?workItemId=|ticketId=|requestId=|decisionId=|experimentId=` — the trace of an entity
6
8
  * - `GET /api/traces/:id?offset=&limit=` — `{ root, events, total, offset, limit, truncated }`
9
+ * - `GET /api/traces/:id/metrics?stallMinutes=` — autonomy metrics (#984)
10
+ * - `GET /api/traces/:id/timeline?stallMinutes=` — events grouped by turn and agent, with stalls (#984)
11
+ * - `GET /api/traces/:id/summary?maxChars=&stallMinutes=` — the compact text `trace-read` prints (#984)
7
12
  * - `POST /api/traces` `{ kind: 'goal'|'experiment', summary, refs? }` — start a goal / experiment root
8
13
  *
9
14
  * @module controllers/trace/trace.controller
@@ -13,7 +18,10 @@ import { TRACE_CONSTANTS } from '../../constants.js';
13
18
  import { readAgentSessionHeader } from '../../utils/agent-caller.utils.js';
14
19
  import { getTraceStore } from '../../services/trace/trace-store.js';
15
20
  import { startGoalTrace } from '../../services/trace/trace-recorder.js';
16
- import { isTraceId, isTraceRootKind } from '../../services/trace/trace.types.js';
21
+ import { getTraceAnalysis } from '../../services/trace/trace-analysis.service.js';
22
+ import { isOwnerCaller, ownerAuthRequiredBody } from '../../middleware/caller-identity.middleware.js';
23
+ import { ORCHESTRATOR_SESSION_NAME } from '../../constants.js';
24
+ import { isTraceId, isTraceRootKind, TRACE_ROOT_KINDS } from '../../services/trace/trace.types.js';
17
25
  /** Query parameter → index ref kind, in lookup order. */
18
26
  const REF_PARAMS = [
19
27
  ['workItemId', 'workItem'],
@@ -45,13 +53,137 @@ function queryInt(value, fallback) {
45
53
  return fallback;
46
54
  return Number(s);
47
55
  }
56
+ /**
57
+ * `?stallMinutes=` as a positive number.
58
+ *
59
+ * @param value - Raw query value
60
+ * @returns Minutes, undefined when absent, or null when malformed
61
+ */
62
+ function queryStallMinutes(value) {
63
+ const s = queryString(value);
64
+ if (!s)
65
+ return undefined;
66
+ const n = Number(s);
67
+ return /^\d+(\.\d+)?$/.test(s) && n > 0 ? n : null;
68
+ }
69
+ /**
70
+ * Who is calling, without answering: `{}` for an owner credential,
71
+ * `{ session }` for an agent, null for neither.
72
+ *
73
+ * @param req - Request
74
+ * @returns Caller or null
75
+ */
76
+ function callerOf(req) {
77
+ if (isOwnerCaller(req))
78
+ return {};
79
+ const session = readAgentSessionHeader(req);
80
+ return session ? { session } : null;
81
+ }
82
+ /**
83
+ * Who is calling; answers 401 itself for neither an owner nor an agent.
84
+ *
85
+ * @param req - Request
86
+ * @param res - Response
87
+ * @returns Caller, or null when a 401 was sent
88
+ */
89
+ function callerOrDeny(req, res) {
90
+ const caller = callerOf(req);
91
+ if (!caller)
92
+ res.status(401).json(ownerAuthRequiredBody(req));
93
+ return caller;
94
+ }
95
+ /**
96
+ * Whether a caller may read a project's autopilot traces: the owner and the
97
+ * orchestrator always (no project lookup, so a deleted or renamed project's
98
+ * traces stay readable), else anyone on a team that works on the project —
99
+ * the rule decision cards use for tickets (specs/2026-10-03-autopilot-experiments.md).
100
+ *
101
+ * @param caller - Caller
102
+ * @param projectId - Tagged project
103
+ * @param cache - Per-request results by project
104
+ * @returns True when allowed
105
+ */
106
+ async function mayReadProject(caller, projectId, cache) {
107
+ if (!caller.session || caller.session === ORCHESTRATOR_SESSION_NAME)
108
+ return true;
109
+ const hit = cache?.get(projectId);
110
+ if (hit !== undefined)
111
+ return hit;
112
+ let ok = false;
113
+ try {
114
+ const { ticketAutopilot } = await import('../project-tickets/project-tickets.controller.js');
115
+ ok = await ticketAutopilot().canReadProjectTraces(projectId, caller);
116
+ }
117
+ catch {
118
+ ok = false;
119
+ }
120
+ cache?.set(projectId, ok);
121
+ return ok;
122
+ }
123
+ /**
124
+ * Whether an agent took part in a trace (its actor, the session an event is
125
+ * about, or the root's actor): the ticket's assignee, the agents of a reused
126
+ * Request trace.
127
+ *
128
+ * @param session - Agent session
129
+ * @param traceId - Trace
130
+ * @returns True when it appears in the trace
131
+ */
132
+ async function tookPart(session, traceId) {
133
+ const full = await getTraceStore().readAll(traceId);
134
+ if (!full)
135
+ return false;
136
+ if (full.root.actor.session === session)
137
+ return true;
138
+ return full.events.some((e) => e.actor.session === session || e.refs.session === session);
139
+ }
140
+ /**
141
+ * Whether a caller may read one trace. Untagged traces: everyone, as before.
142
+ * Autopilot-tagged traces: the owner, the orchestrator, members of the
143
+ * project's teams, and any agent that took part in the trace.
144
+ *
145
+ * @param caller - Caller (null = no credential)
146
+ * @param entry - Index entry
147
+ * @param cache - Per-request project results
148
+ * @returns True when allowed
149
+ */
150
+ async function mayReadTrace(caller, entry, cache) {
151
+ const projectId = entry.tags?.autopilot?.projectId;
152
+ if (!projectId)
153
+ return true;
154
+ if (!caller)
155
+ return false;
156
+ if (await mayReadProject(caller, projectId, cache))
157
+ return true;
158
+ return !!caller.session && (await tookPart(caller.session, entry.traceId));
159
+ }
160
+ /**
161
+ * The gate of `/api/traces/:id…`: answers 401 / 403 itself.
162
+ *
163
+ * @param req - Request
164
+ * @param res - Response
165
+ * @param id - Trace id
166
+ * @returns True when the caller may read it (or it is not an autopilot trace)
167
+ */
168
+ async function allowTraceRead(req, res, id) {
169
+ const entry = getTraceStore().getEntry(id);
170
+ if (!entry?.tags?.autopilot)
171
+ return true;
172
+ const caller = callerOrDeny(req, res);
173
+ if (!caller)
174
+ return false;
175
+ if (await mayReadTrace(caller, entry))
176
+ return true;
177
+ res.status(403).json({ success: false, error: 'This autopilot trace belongs to a project you do not work on' });
178
+ return false;
179
+ }
48
180
  /**
49
181
  * GET /api/traces
50
182
  *
51
- * @param req - Query: since (ISO), type (root kind), limit
183
+ * @param req - Query: since (ISO), type (root kind), limit, metrics (0 to leave them out), stallMinutes
52
184
  * @param res - `{ success, data: { traces, writeFailures } }`
53
185
  */
54
- export function listTraces(req, res) {
186
+ export async function listTraces(req, res) {
55
187
  const sinceRaw = queryString(req.query.since);
56
188
  const since = sinceRaw ? new Date(sinceRaw) : undefined;
57
189
  if (since && Number.isNaN(since.getTime())) {
@@ -60,25 +192,146 @@ export function listTraces(req, res) {
60
192
  }
61
193
  const type = queryString(req.query.type);
62
194
  if (type && !isTraceRootKind(type)) {
63
- res.status(400).json({ success: false, error: 'type must be one of request, goal, experiment, owner_message' });
195
+ res.status(400).json({ success: false, error: `type must be one of ${TRACE_ROOT_KINDS.join(', ')}` });
196
+ return;
197
+ }
198
+ const day = queryString(req.query.day);
199
+ if (day && !/^\d{4}-\d{2}-\d{2}$/.test(day)) {
200
+ res.status(400).json({ success: false, error: 'day must be a date YYYY-MM-DD' });
201
+ return;
202
+ }
203
+ const autopilotProjectId = queryString(req.query.autopilotProject);
204
+ const label = queryString(req.query.label);
205
+ const caller = callerOf(req);
206
+ const projects = new Map();
207
+ if (autopilotProjectId) {
208
+ if (!callerOrDeny(req, res))
209
+ return;
210
+ if (!(await mayReadProject(caller, autopilotProjectId, projects))) {
211
+ res.status(403).json({ success: false, error: 'Only the owner, the orchestrator or a member of the project can read its autopilot traces' });
212
+ return;
213
+ }
214
+ }
215
+ else if (label || day) {
216
+ // Tag filters across projects: the owner or the orchestrator only.
217
+ if (!callerOrDeny(req, res))
218
+ return;
219
+ if (caller?.session && caller.session !== ORCHESTRATOR_SESSION_NAME) {
220
+ res.status(403).json({ success: false, error: 'Filtering by label or day across projects is for the owner or the orchestrator; add autopilotProject' });
221
+ return;
222
+ }
223
+ }
224
+ const stallMinutes = queryStallMinutes(req.query.stallMinutes);
225
+ if (stallMinutes === null) {
226
+ res.status(400).json({ success: false, error: 'stallMinutes must be a positive number' });
64
227
  return;
65
228
  }
66
229
  const store = getTraceStore();
67
- const traces = store.list({
230
+ const withMetrics = queryString(req.query.metrics) !== '0';
231
+ const requested = queryInt(req.query.limit, TRACE_CONSTANTS.DEFAULT_LIST_LIMIT);
232
+ const entries = store.list({
68
233
  ...(since ? { since } : {}),
69
234
  ...(type && isTraceRootKind(type) ? { rootKind: type } : {}),
70
- limit: queryInt(req.query.limit, TRACE_CONSTANTS.DEFAULT_LIST_LIMIT),
235
+ ...(autopilotProjectId ? { autopilotProjectId } : {}),
236
+ ...(day ? { day } : {}),
237
+ ...(label ? { label } : {}),
238
+ // Each row with metrics may read a whole trace file: cap those lists.
239
+ limit: withMetrics ? Math.min(requested, TRACE_CONSTANTS.METRICS_LIST_MAX) : requested,
71
240
  });
241
+ // Autopilot-tagged rows the caller may not read are left out; untagged rows are unchanged.
242
+ const visible = [];
243
+ for (const entry of entries)
244
+ if (await mayReadTrace(caller, entry, projects))
245
+ visible.push(entry);
246
+ const traces = withMetrics ? await getTraceAnalysis().withMetrics(visible, stallMinutes) : visible;
72
247
  // writeFailures: trace writes lost since the backend started (disk full, permissions).
73
248
  res.json({ success: true, data: { traces, writeFailures: store.writeFailures } });
74
249
  }
250
+ /**
251
+ * Validate `:id` and `?stallMinutes=`; answers 400 itself.
252
+ *
253
+ * @param req - Request
254
+ * @param res - Response
255
+ * @returns The id and minutes, or null when a 400 was sent
256
+ */
257
+ function analysisParams(req, res) {
258
+ const id = req.params.id;
259
+ if (!isTraceId(id)) {
260
+ res.status(400).json({ success: false, error: 'Not a trace id (tr-YYYYMMDD-xxxxxxxx)' });
261
+ return null;
262
+ }
263
+ const stallMinutes = queryStallMinutes(req.query.stallMinutes);
264
+ if (stallMinutes === null) {
265
+ res.status(400).json({ success: false, error: 'stallMinutes must be a positive number' });
266
+ return null;
267
+ }
268
+ return { id, ...(stallMinutes !== undefined ? { stallMinutes } : {}) };
269
+ }
270
+ /**
271
+ * GET /api/traces/:id/metrics
272
+ *
273
+ * @param req - Params: id; query: stallMinutes
274
+ * @param res - `{ success, data: TraceMetrics }`
275
+ */
276
+ export async function getTraceMetrics(req, res) {
277
+ const p = analysisParams(req, res);
278
+ if (!p)
279
+ return;
280
+ if (!(await allowTraceRead(req, res, p.id)))
281
+ return;
282
+ const metrics = await getTraceAnalysis().metrics(p.id, p.stallMinutes);
283
+ if (!metrics) {
284
+ res.status(404).json({ success: false, error: `Trace ${p.id} not found` });
285
+ return;
286
+ }
287
+ res.json({ success: true, data: metrics });
288
+ }
289
+ /**
290
+ * GET /api/traces/:id/timeline
291
+ *
292
+ * @param req - Params: id; query: stallMinutes
293
+ * @param res - `{ success, data: { root, metrics, groups, truncated } }`
294
+ */
295
+ export async function getTraceTimeline(req, res) {
296
+ const p = analysisParams(req, res);
297
+ if (!p)
298
+ return;
299
+ if (!(await allowTraceRead(req, res, p.id)))
300
+ return;
301
+ const timeline = await getTraceAnalysis().timeline(p.id, p.stallMinutes);
302
+ if (!timeline) {
303
+ res.status(404).json({ success: false, error: `Trace ${p.id} not found` });
304
+ return;
305
+ }
306
+ res.json({ success: true, data: timeline });
307
+ }
308
+ /**
309
+ * GET /api/traces/:id/summary
310
+ *
311
+ * @param req - Params: id; query: maxChars, stallMinutes
312
+ * @param res - `{ success, data: { traceId, text, links, metrics } }`
313
+ */
314
+ export async function getTraceSummary(req, res) {
315
+ const p = analysisParams(req, res);
316
+ if (!p)
317
+ return;
318
+ if (!(await allowTraceRead(req, res, p.id)))
319
+ return;
320
+ const maxChars = queryInt(req.query.maxChars, TRACE_CONSTANTS.READ_DEFAULT_CHARS);
321
+ const summary = await getTraceAnalysis().summary(p.id, maxChars, p.stallMinutes);
322
+ if (!summary) {
323
+ res.status(404).json({ success: false, error: `Trace ${p.id} not found` });
324
+ return;
325
+ }
326
+ res.json({ success: true, data: summary });
327
+ }
75
328
  /**
76
329
  * GET /api/traces/by-ref
77
330
  *
78
331
  * @param req - Query: one of workItemId, ticketId, requestId, decisionId, experimentId
79
332
  * @param res - `{ success, data: { traceId, root } }`, 400 without a ref, 404 when unknown
80
333
  */
81
- export function traceByRef(req, res) {
334
+ export async function traceByRef(req, res) {
82
335
  const store = getTraceStore();
83
336
  let asked = false;
84
337
  for (const [param, kind] of REF_PARAMS) {
@@ -89,7 +342,9 @@ export function traceByRef(req, res) {
89
342
  const traceId = store.traceByRef(kind, id);
90
343
  const entry = traceId ? store.getEntry(traceId) : null;
91
344
  if (entry) {
92
- res.json({ success: true, data: { traceId: entry.traceId, root: entry.root } });
345
+ // An autopilot trace the caller may not read: the id only (reading it is gated), no summary.
346
+ const root = (await mayReadTrace(callerOf(req), entry)) ? entry.root : { ...entry.root, summary: '' };
347
+ res.json({ success: true, data: { traceId: entry.traceId, root } });
93
348
  return;
94
349
  }
95
350
  }
@@ -111,6 +366,8 @@ export async function getTrace(req, res) {
111
366
  res.status(400).json({ success: false, error: 'Not a trace id (tr-YYYYMMDD-xxxxxxxx)' });
112
367
  return;
113
368
  }
369
+ if (!(await allowTraceRead(req, res, id)))
370
+ return;
114
371
  const page = await getTraceStore().read(id, queryInt(req.query.offset, 0), queryInt(req.query.limit, TRACE_CONSTANTS.DEFAULT_PAGE_SIZE));
115
372
  if (!page) {
116
373
  res.status(404).json({ success: false, error: `Trace ${id} not found` });
@@ -158,9 +415,20 @@ export function startTrace(req, res) {
158
415
  */
159
416
  export function createTraceRouter() {
160
417
  const router = Router();
161
- router.get('/', listTraces);
418
+ router.get('/', (req, res, next) => {
419
+ listTraces(req, res).catch(next);
420
+ });
162
421
  router.get('/by-ref', traceByRef);
163
422
  router.post('/', startTrace);
423
+ router.get('/:id/metrics', (req, res, next) => {
424
+ getTraceMetrics(req, res).catch(next);
425
+ });
426
+ router.get('/:id/timeline', (req, res, next) => {
427
+ getTraceTimeline(req, res).catch(next);
428
+ });
429
+ router.get('/:id/summary', (req, res, next) => {
430
+ getTraceSummary(req, res).catch(next);
431
+ });
164
432
  router.get('/:id', (req, res, next) => {
165
433
  getTrace(req, res).catch(next);
166
434
  });
@@ -1 +1 @@
1
- {"version":3,"file":"trace.controller.js","sourceRoot":"","sources":["../../../../../../backend/src/controllers/trace/trace.controller.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"trace.controller.js","sourceRoot":"","sources":["../../../../../../backend/src/controllers/trace/trace.controller.ts"],"names":[],"mappings":"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"}
@@ -41,9 +41,9 @@ export interface WhatsAppInboxDeps {
41
41
  /** Clock */
42
42
  now: () => number;
43
43
  /**
44
- * Whether a request with no X-Agent-Session really is the owner: it must
45
- * carry the API token (dashboard; the portal / phone relay adds it). An
46
- * agent leaving out its session header is not the owner.
44
+ * Whether the caller holds an owner credential (#999): the dashboard
45
+ * session, the portal / phone relay, or the API token. An agent leaving
46
+ * out its session header is not the owner.
47
47
  */
48
48
  isOwnerRequest: (req: Request) => boolean;
49
49
  }
@@ -1 +1 @@
1
- {"version":3,"file":"whatsapp-inbox.controller.d.ts","sourceRoot":"","sources":["../../../../../../backend/src/controllers/whatsapp/whatsapp-inbox.controller.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;GAqBG;AAGH,OAAO,EAAE,MAAM,EAAE,OAAO,EAA0B,MAAM,SAAS,CAAC;AAIlE,OAAO,EAAyB,KAAK,kBAAkB,EAAE,MAAM,iDAAiD,CAAC;AAQjH,OAAO,KAAK,EAAsC,uBAAuB,EAAE,MAAM,+BAA+B,CAAC;AAIjH,yDAAyD;AACzD,MAAM,WAAW,mBAAmB;IAClC,sCAAsC;IACtC,WAAW,IAAI,OAAO,CAAC;IACvB,4BAA4B;IAC5B,WAAW,CAAC,GAAG,EAAE,uBAAuB,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;CAC1D;AAED,kDAAkD;AAClD,MAAM,WAAW,iBAAiB;IAChC,kBAAkB;IAClB,QAAQ,EAAE,MAAM,kBAAkB,CAAC;IACnC,oBAAoB;IACpB,SAAS,EAAE,MAAM,mBAAmB,CAAC;IACrC,2EAA2E;IAC3E,qBAAqB,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,KAAK,MAAM,EAAE,CAAC;IACpE,YAAY;IACZ,GAAG,EAAE,MAAM,MAAM,CAAC;IAClB;;;;OAIG;IACH,cAAc,EAAE,CAAC,GAAG,EAAE,OAAO,KAAK,OAAO,CAAC;CAC3C;AAWD;;;;;;;GAOG;AACH,wBAAgB,UAAU,CAAC,GAAG,EAAE,OAAO,EAAE,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,MAAM,CAIzE;AAED;;;;;GAKG;AACH,wBAAgB,SAAS,CAAC,GAAG,EAAE,OAAO,GAAG,OAAO,CAE/C;AAyBD;;;;;GAKG;AACH,wBAAgB,yBAAyB,CAAC,SAAS,GAAE,OAAO,CAAC,iBAAiB,CAAM,GAAG,MAAM,CA4N5F"}
1
+ {"version":3,"file":"whatsapp-inbox.controller.d.ts","sourceRoot":"","sources":["../../../../../../backend/src/controllers/whatsapp/whatsapp-inbox.controller.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;GAqBG;AAEH,OAAO,EAAE,MAAM,EAAE,OAAO,EAA0B,MAAM,SAAS,CAAC;AAKlE,OAAO,EAAyB,KAAK,kBAAkB,EAAE,MAAM,iDAAiD,CAAC;AAQjH,OAAO,KAAK,EAAsC,uBAAuB,EAAE,MAAM,+BAA+B,CAAC;AAIjH,yDAAyD;AACzD,MAAM,WAAW,mBAAmB;IAClC,sCAAsC;IACtC,WAAW,IAAI,OAAO,CAAC;IACvB,4BAA4B;IAC5B,WAAW,CAAC,GAAG,EAAE,uBAAuB,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;CAC1D;AAED,kDAAkD;AAClD,MAAM,WAAW,iBAAiB;IAChC,kBAAkB;IAClB,QAAQ,EAAE,MAAM,kBAAkB,CAAC;IACnC,oBAAoB;IACpB,SAAS,EAAE,MAAM,mBAAmB,CAAC;IACrC,2EAA2E;IAC3E,qBAAqB,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,KAAK,MAAM,EAAE,CAAC;IACpE,YAAY;IACZ,GAAG,EAAE,MAAM,MAAM,CAAC;IAClB;;;;OAIG;IACH,cAAc,EAAE,CAAC,GAAG,EAAE,OAAO,KAAK,OAAO,CAAC;CAC3C;AAWD;;;;;;;GAOG;AACH,wBAAgB,UAAU,CAAC,GAAG,EAAE,OAAO,EAAE,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,MAAM,CAIzE;AAED;;;;;GAKG;AACH,wBAAgB,SAAS,CAAC,GAAG,EAAE,OAAO,GAAG,OAAO,CAE/C;AAyBD;;;;;GAKG;AACH,wBAAgB,yBAAyB,CAAC,SAAS,GAAE,OAAO,CAAC,iBAAiB,CAAM,GAAG,MAAM,CA8N5F"}
@@ -20,10 +20,10 @@
20
20
  *
21
21
  * @module controllers/whatsapp/whatsapp-inbox
22
22
  */
23
- import { hasValidApiToken } from '../../middleware/api-token.middleware.js';
24
23
  import { Router } from 'express';
25
24
  import { WHATSAPP_CONSTANTS } from '../../constants.js';
26
25
  import { readAgentSessionHeader } from '../../utils/agent-caller.utils.js';
26
+ import { isOwnerCaller } from '../../middleware/caller-identity.middleware.js';
27
27
  import { LoggerService } from '../../services/core/logger.service.js';
28
28
  import { getWhatsAppInboxStore } from '../../services/whatsapp/whatsapp-inbox.store.js';
29
29
  import { getWhatsAppService } from '../../services/whatsapp/whatsapp.service.js';
@@ -36,7 +36,7 @@ const DEFAULT_DEPS = {
36
36
  getSender: getWhatsAppService,
37
37
  getOwnerMessagesSince: (sinceMs, limit) => getChatV2Service().getRecentOwnerMessageContents(sinceMs, limit),
38
38
  now: () => Date.now(),
39
- isOwnerRequest: (req) => hasValidApiToken(req, false),
39
+ isOwnerRequest: (req) => isOwnerCaller(req),
40
40
  };
41
41
  /**
42
42
  * Parse a `limit` query value, clamped to `[1, max]`.
@@ -253,6 +253,8 @@ export function createWhatsAppInboxRouter(overrides = {}) {
253
253
  fail(res, 409, E.DRAFT_NOT_PENDING, `Draft ${draft.code} is ${draft.status}; it cannot be sent`, { status: draft.status });
254
254
  return;
255
255
  }
256
+ // The owner (an owner credential, #999) sends with the click; an agent
257
+ // needs the owner's 「发 <code>」; anyone else is refused.
256
258
  const agentSession = readAgentSessionHeader(req);
257
259
  if (!agentSession && !deps.isOwnerRequest(req)) {
258
260
  logger.warn('Draft send refused — no agent session and no owner token', { code: draft.code });