crewly 1.5.17 → 1.5.19

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 (1132) hide show
  1. package/config/constants.ts +50 -0
  2. package/config/domain-sops/content-production-pipeline.sop.md +76 -0
  3. package/config/domain-sops/content-publishing-policy.sop.md +59 -0
  4. package/config/domain-sops/customer-onboarding.sop.md +74 -0
  5. package/config/domain-sops/expert-distillation.sop.md +70 -0
  6. package/config/domain-sops/innovation-strategy.sop.md +26 -0
  7. package/config/experts/EXAMPLE.json +11 -0
  8. package/config/experts/EXAMPLE.md +41 -0
  9. package/config/experts/empathetic-resolver/expert.json +11 -0
  10. package/config/experts/empathetic-resolver.md +32 -0
  11. package/config/experts/pragmatic-architect/expert.json +11 -0
  12. package/config/experts/pragmatic-architect.md +32 -0
  13. package/config/experts/viral-alchemist/expert.json +11 -0
  14. package/config/experts/viral-alchemist.md +32 -0
  15. package/config/orchestrator_tasks/prompts/checkin-orchestrator-prompt-template.md +2 -2
  16. package/config/orchestrator_tasks/prompts/orchestrator-prompt.md +11 -1
  17. package/config/roles/developer/prompt.md +43 -0
  18. package/config/roles/orchestrator/fragments/role-boundary.md +31 -0
  19. package/config/roles/orchestrator/prompt.md +104 -0
  20. package/config/skills/agent/computer-use/SKILL.md +144 -93
  21. package/config/skills/agent/computer-use/execute.sh +847 -211
  22. package/config/skills/agent/core/break-down-request/SKILL.md +128 -0
  23. package/config/skills/agent/core/break-down-request/execute.sh +200 -0
  24. package/config/skills/agent/core/claim-heartbeat/execute.sh +57 -0
  25. package/config/skills/agent/core/claim-heartbeat/execute.test.sh +130 -0
  26. package/config/skills/agent/core/create-intent-tasks/execute.sh +93 -0
  27. package/config/skills/agent/core/create-mission/SKILL.md +78 -0
  28. package/config/skills/agent/core/create-mission/execute.sh +141 -0
  29. package/config/skills/agent/core/create-request/SKILL.md +132 -0
  30. package/config/skills/agent/core/create-request/execute.sh +176 -0
  31. package/config/skills/agent/core/create-task/SKILL.md +76 -0
  32. package/config/skills/agent/core/create-task/execute.sh +134 -0
  33. package/config/skills/agent/core/decompose-intent/execute.sh +106 -0
  34. package/config/skills/agent/core/extend-lease/execute.sh +63 -0
  35. package/config/skills/agent/core/extend-lease/execute.test.sh +46 -0
  36. package/config/skills/agent/core/get-my-context/execute.sh +85 -8
  37. package/config/skills/agent/core/get-my-tasks/SKILL.md +58 -0
  38. package/config/skills/agent/core/get-my-tasks/execute.sh +77 -6
  39. package/config/skills/agent/core/handoff-task/execute.sh +139 -95
  40. package/config/skills/agent/core/handoff-task/execute.test.sh +348 -0
  41. package/config/skills/agent/core/poll-tasks/execute.sh +182 -0
  42. package/config/skills/agent/core/poll-tasks/execute.test.sh +215 -0
  43. package/config/skills/agent/core/register-self/execute.sh +102 -14
  44. package/config/skills/agent/core/release-claim/execute.sh +53 -0
  45. package/config/skills/agent/core/release-claim/execute.test.sh +46 -0
  46. package/config/skills/agent/core/report-status/execute.sh +44 -0
  47. package/config/skills/agent/core/update-intent-task/execute.sh +93 -0
  48. package/config/skills/agent/core/work-loop/execute.sh +130 -0
  49. package/config/skills/agent/core/work-loop/execute.test.sh +52 -0
  50. package/config/skills/agent/core/workspace/execute.sh +270 -0
  51. package/config/skills/agent/core/workspace/execute.test.sh +185 -0
  52. package/config/skills/agent/remote-browser/SOP-google-flow-video.md +202 -0
  53. package/config/skills/agent/remote-browser/execute.sh +287 -0
  54. package/config/skills/agent/v3/plan-request/SKILL.md +72 -0
  55. package/config/skills/agent/v3/plan-request/execute.sh +116 -0
  56. package/config/skills/orchestrator/decompose-mission/SKILL.md +78 -0
  57. package/config/skills/orchestrator/decompose-mission/execute.sh +138 -0
  58. package/config/skills/orchestrator/delegate-task/SKILL.md +4 -3
  59. package/config/skills/orchestrator/delegate-task/execute.sh +43 -97
  60. package/config/skills/orchestrator/design-team/SKILL.md +51 -0
  61. package/config/skills/orchestrator/design-team/execute.sh +145 -0
  62. package/config/skills/orchestrator/measure-kr/SKILL.md +47 -0
  63. package/config/skills/orchestrator/measure-kr/execute.sh +87 -0
  64. package/config/skills/orchestrator/review-mission/SKILL.md +61 -0
  65. package/config/skills/orchestrator/review-mission/execute.sh +127 -0
  66. package/config/skills/team-leader/aggregate-results/execute.sh +25 -74
  67. package/config/skills/team-leader/delegate-task/SKILL.md +10 -0
  68. package/config/skills/team-leader/delegate-task/execute.sh +42 -3
  69. package/config/skills/team-leader/design-checklist/SKILL.md +122 -0
  70. package/config/skills/team-leader/design-checklist/execute.sh +157 -0
  71. package/config/skills/team-leader/verify-output/execute.sh +42 -0
  72. package/config/templates/agent-gemini-md.md +3 -1
  73. package/config/templates/ai-video-social-team.json +22 -0
  74. package/config/templates/broker-squad-v1.json +22 -0
  75. package/config/templates/customer-loyalty-team.json +44 -0
  76. package/config/templates/customer-ops-team.json +22 -0
  77. package/config/templates/dtc-viral-content-team.json +58 -0
  78. package/config/templates/expert-innovation-team.json +60 -0
  79. package/config/templates/growth-marketing-team.json +22 -0
  80. package/config/templates/pragmatic-mvp-dev-team.json +58 -0
  81. package/config/templates/pro-sops/norms/content-production-pipeline.md +39 -0
  82. package/config/templates/pro-sops/norms/customer-onboarding-sop.md +40 -0
  83. package/config/templates/prop-manager-v1.json +22 -0
  84. package/dist/backend/backend/src/constants.d.ts +5 -0
  85. package/dist/backend/backend/src/constants.d.ts.map +1 -1
  86. package/dist/backend/backend/src/constants.js +5 -0
  87. package/dist/backend/backend/src/constants.js.map +1 -1
  88. package/dist/backend/backend/src/controllers/browser/browser.controller.d.ts +12 -2
  89. package/dist/backend/backend/src/controllers/browser/browser.controller.d.ts.map +1 -1
  90. package/dist/backend/backend/src/controllers/browser/browser.controller.js +36 -20
  91. package/dist/backend/backend/src/controllers/browser/browser.controller.js.map +1 -1
  92. package/dist/backend/backend/src/controllers/browser/browser.routes.d.ts.map +1 -1
  93. package/dist/backend/backend/src/controllers/browser/browser.routes.js +4 -2
  94. package/dist/backend/backend/src/controllers/browser/browser.routes.js.map +1 -1
  95. package/dist/backend/backend/src/controllers/chat/chat.controller.d.ts.map +1 -1
  96. package/dist/backend/backend/src/controllers/chat/chat.controller.js +28 -0
  97. package/dist/backend/backend/src/controllers/chat/chat.controller.js.map +1 -1
  98. package/dist/backend/backend/src/controllers/cloud/cloud.controller.d.ts.map +1 -1
  99. package/dist/backend/backend/src/controllers/cloud/cloud.controller.js +5 -2
  100. package/dist/backend/backend/src/controllers/cloud/cloud.controller.js.map +1 -1
  101. package/dist/backend/backend/src/controllers/content-approvals/content-approvals.controller.d.ts +72 -0
  102. package/dist/backend/backend/src/controllers/content-approvals/content-approvals.controller.d.ts.map +1 -0
  103. package/dist/backend/backend/src/controllers/content-approvals/content-approvals.controller.js +202 -0
  104. package/dist/backend/backend/src/controllers/content-approvals/content-approvals.controller.js.map +1 -0
  105. package/dist/backend/backend/src/controllers/content-approvals/content-approvals.routes.d.ts +16 -0
  106. package/dist/backend/backend/src/controllers/content-approvals/content-approvals.routes.d.ts.map +1 -0
  107. package/dist/backend/backend/src/controllers/content-approvals/content-approvals.routes.js +32 -0
  108. package/dist/backend/backend/src/controllers/content-approvals/content-approvals.routes.js.map +1 -0
  109. package/dist/backend/backend/src/controllers/eval/eval.controller.d.ts +63 -0
  110. package/dist/backend/backend/src/controllers/eval/eval.controller.d.ts.map +1 -0
  111. package/dist/backend/backend/src/controllers/eval/eval.controller.js +228 -0
  112. package/dist/backend/backend/src/controllers/eval/eval.controller.js.map +1 -0
  113. package/dist/backend/backend/src/controllers/eval/eval.routes.d.ts +23 -0
  114. package/dist/backend/backend/src/controllers/eval/eval.routes.d.ts.map +1 -0
  115. package/dist/backend/backend/src/controllers/eval/eval.routes.js +37 -0
  116. package/dist/backend/backend/src/controllers/eval/eval.routes.js.map +1 -0
  117. package/dist/backend/backend/src/controllers/expert/expert.controller.d.ts +29 -0
  118. package/dist/backend/backend/src/controllers/expert/expert.controller.d.ts.map +1 -0
  119. package/dist/backend/backend/src/controllers/expert/expert.controller.js +79 -0
  120. package/dist/backend/backend/src/controllers/expert/expert.controller.js.map +1 -0
  121. package/dist/backend/backend/src/controllers/expert/expert.routes.d.ts +15 -0
  122. package/dist/backend/backend/src/controllers/expert/expert.routes.d.ts.map +1 -0
  123. package/dist/backend/backend/src/controllers/expert/expert.routes.js +21 -0
  124. package/dist/backend/backend/src/controllers/expert/expert.routes.js.map +1 -0
  125. package/dist/backend/backend/src/controllers/expert/index.d.ts +9 -0
  126. package/dist/backend/backend/src/controllers/expert/index.d.ts.map +1 -0
  127. package/dist/backend/backend/src/controllers/expert/index.js +9 -0
  128. package/dist/backend/backend/src/controllers/expert/index.js.map +1 -0
  129. package/dist/backend/backend/src/controllers/fission/fission.controller.d.ts +80 -0
  130. package/dist/backend/backend/src/controllers/fission/fission.controller.d.ts.map +1 -0
  131. package/dist/backend/backend/src/controllers/fission/fission.controller.js +264 -0
  132. package/dist/backend/backend/src/controllers/fission/fission.controller.js.map +1 -0
  133. package/dist/backend/backend/src/controllers/fission/fission.routes.d.ts +15 -0
  134. package/dist/backend/backend/src/controllers/fission/fission.routes.d.ts.map +1 -0
  135. package/dist/backend/backend/src/controllers/fission/fission.routes.js +29 -0
  136. package/dist/backend/backend/src/controllers/fission/fission.routes.js.map +1 -0
  137. package/dist/backend/backend/src/controllers/growth/growth.controller.d.ts +29 -0
  138. package/dist/backend/backend/src/controllers/growth/growth.controller.d.ts.map +1 -0
  139. package/dist/backend/backend/src/controllers/growth/growth.controller.js +74 -0
  140. package/dist/backend/backend/src/controllers/growth/growth.controller.js.map +1 -0
  141. package/dist/backend/backend/src/controllers/growth/growth.routes.d.ts +20 -0
  142. package/dist/backend/backend/src/controllers/growth/growth.routes.d.ts.map +1 -0
  143. package/dist/backend/backend/src/controllers/growth/growth.routes.js +26 -0
  144. package/dist/backend/backend/src/controllers/growth/growth.routes.js.map +1 -0
  145. package/dist/backend/backend/src/controllers/index.d.ts +5 -1
  146. package/dist/backend/backend/src/controllers/index.d.ts.map +1 -1
  147. package/dist/backend/backend/src/controllers/index.js +9 -1
  148. package/dist/backend/backend/src/controllers/index.js.map +1 -1
  149. package/dist/backend/backend/src/controllers/intent-task/index.d.ts +9 -0
  150. package/dist/backend/backend/src/controllers/intent-task/index.d.ts.map +1 -0
  151. package/dist/backend/backend/src/controllers/intent-task/index.js +9 -0
  152. package/dist/backend/backend/src/controllers/intent-task/index.js.map +1 -0
  153. package/dist/backend/backend/src/controllers/intent-task/intent-task.controller.d.ts +85 -0
  154. package/dist/backend/backend/src/controllers/intent-task/intent-task.controller.d.ts.map +1 -0
  155. package/dist/backend/backend/src/controllers/intent-task/intent-task.controller.js +356 -0
  156. package/dist/backend/backend/src/controllers/intent-task/intent-task.controller.js.map +1 -0
  157. package/dist/backend/backend/src/controllers/intent-task/intent-task.routes.d.ts +19 -0
  158. package/dist/backend/backend/src/controllers/intent-task/intent-task.routes.d.ts.map +1 -0
  159. package/dist/backend/backend/src/controllers/intent-task/intent-task.routes.js +43 -0
  160. package/dist/backend/backend/src/controllers/intent-task/intent-task.routes.js.map +1 -0
  161. package/dist/backend/backend/src/controllers/knowledge-v3/index.d.ts +8 -0
  162. package/dist/backend/backend/src/controllers/knowledge-v3/index.d.ts.map +1 -0
  163. package/dist/backend/backend/src/controllers/knowledge-v3/index.js +8 -0
  164. package/dist/backend/backend/src/controllers/knowledge-v3/index.js.map +1 -0
  165. package/dist/backend/backend/src/controllers/knowledge-v3/knowledge-v3.controller.d.ts +63 -0
  166. package/dist/backend/backend/src/controllers/knowledge-v3/knowledge-v3.controller.d.ts.map +1 -0
  167. package/dist/backend/backend/src/controllers/knowledge-v3/knowledge-v3.controller.js +179 -0
  168. package/dist/backend/backend/src/controllers/knowledge-v3/knowledge-v3.controller.js.map +1 -0
  169. package/dist/backend/backend/src/controllers/knowledge-v3/knowledge-v3.routes.d.ts +22 -0
  170. package/dist/backend/backend/src/controllers/knowledge-v3/knowledge-v3.routes.d.ts.map +1 -0
  171. package/dist/backend/backend/src/controllers/knowledge-v3/knowledge-v3.routes.js +34 -0
  172. package/dist/backend/backend/src/controllers/knowledge-v3/knowledge-v3.routes.js.map +1 -0
  173. package/dist/backend/backend/src/controllers/marketplace/marketplace.controller.d.ts.map +1 -1
  174. package/dist/backend/backend/src/controllers/marketplace/marketplace.controller.js +38 -1
  175. package/dist/backend/backend/src/controllers/marketplace/marketplace.controller.js.map +1 -1
  176. package/dist/backend/backend/src/controllers/marketplace/marketplace.routes.d.ts.map +1 -1
  177. package/dist/backend/backend/src/controllers/marketplace/marketplace.routes.js +11 -0
  178. package/dist/backend/backend/src/controllers/marketplace/marketplace.routes.js.map +1 -1
  179. package/dist/backend/backend/src/controllers/mission/kr.controller.d.ts +40 -0
  180. package/dist/backend/backend/src/controllers/mission/kr.controller.d.ts.map +1 -0
  181. package/dist/backend/backend/src/controllers/mission/kr.controller.js +131 -0
  182. package/dist/backend/backend/src/controllers/mission/kr.controller.js.map +1 -0
  183. package/dist/backend/backend/src/controllers/mission/mission-policy.controller.d.ts +71 -0
  184. package/dist/backend/backend/src/controllers/mission/mission-policy.controller.d.ts.map +1 -0
  185. package/dist/backend/backend/src/controllers/mission/mission-policy.controller.js +270 -0
  186. package/dist/backend/backend/src/controllers/mission/mission-policy.controller.js.map +1 -0
  187. package/dist/backend/backend/src/controllers/mission/mission-policy.routes.d.ts +16 -0
  188. package/dist/backend/backend/src/controllers/mission/mission-policy.routes.d.ts.map +1 -0
  189. package/dist/backend/backend/src/controllers/mission/mission-policy.routes.js +194 -0
  190. package/dist/backend/backend/src/controllers/mission/mission-policy.routes.js.map +1 -0
  191. package/dist/backend/backend/src/controllers/monitoring/monitoring.routes.d.ts.map +1 -1
  192. package/dist/backend/backend/src/controllers/monitoring/monitoring.routes.js +5 -1
  193. package/dist/backend/backend/src/controllers/monitoring/monitoring.routes.js.map +1 -1
  194. package/dist/backend/backend/src/controllers/monitoring/token-usage.controller.d.ts +19 -0
  195. package/dist/backend/backend/src/controllers/monitoring/token-usage.controller.d.ts.map +1 -1
  196. package/dist/backend/backend/src/controllers/monitoring/token-usage.controller.js +36 -0
  197. package/dist/backend/backend/src/controllers/monitoring/token-usage.controller.js.map +1 -1
  198. package/dist/backend/backend/src/controllers/onboarding/index.d.ts +7 -0
  199. package/dist/backend/backend/src/controllers/onboarding/index.d.ts.map +1 -0
  200. package/dist/backend/backend/src/controllers/onboarding/index.js +7 -0
  201. package/dist/backend/backend/src/controllers/onboarding/index.js.map +1 -0
  202. package/dist/backend/backend/src/controllers/onboarding/onboarding.routes.d.ts +24 -0
  203. package/dist/backend/backend/src/controllers/onboarding/onboarding.routes.d.ts.map +1 -0
  204. package/dist/backend/backend/src/controllers/onboarding/onboarding.routes.js +340 -0
  205. package/dist/backend/backend/src/controllers/onboarding/onboarding.routes.js.map +1 -0
  206. package/dist/backend/backend/src/controllers/onboarding/website-analysis.routes.d.ts +21 -0
  207. package/dist/backend/backend/src/controllers/onboarding/website-analysis.routes.d.ts.map +1 -0
  208. package/dist/backend/backend/src/controllers/onboarding/website-analysis.routes.js +181 -0
  209. package/dist/backend/backend/src/controllers/onboarding/website-analysis.routes.js.map +1 -0
  210. package/dist/backend/backend/src/controllers/payment/payment.controller.js +1 -1
  211. package/dist/backend/backend/src/controllers/payment/payment.controller.js.map +1 -1
  212. package/dist/backend/backend/src/controllers/payment/payment.types.d.ts +1 -1
  213. package/dist/backend/backend/src/controllers/payment/payment.types.d.ts.map +1 -1
  214. package/dist/backend/backend/src/controllers/payment/payment.types.js +1 -1
  215. package/dist/backend/backend/src/controllers/payment/payment.types.js.map +1 -1
  216. package/dist/backend/backend/src/controllers/project/project.controller.d.ts.map +1 -1
  217. package/dist/backend/backend/src/controllers/project/project.controller.js +0 -2
  218. package/dist/backend/backend/src/controllers/project/project.controller.js.map +1 -1
  219. package/dist/backend/backend/src/controllers/project/project.routes.d.ts.map +1 -1
  220. package/dist/backend/backend/src/controllers/project/project.routes.js +9 -5
  221. package/dist/backend/backend/src/controllers/project/project.routes.js.map +1 -1
  222. package/dist/backend/backend/src/controllers/provisioning/provisioning.controller.d.ts +84 -0
  223. package/dist/backend/backend/src/controllers/provisioning/provisioning.controller.d.ts.map +1 -0
  224. package/dist/backend/backend/src/controllers/provisioning/provisioning.controller.js +189 -0
  225. package/dist/backend/backend/src/controllers/provisioning/provisioning.controller.js.map +1 -0
  226. package/dist/backend/backend/src/controllers/provisioning/provisioning.routes.d.ts +16 -0
  227. package/dist/backend/backend/src/controllers/provisioning/provisioning.routes.d.ts.map +1 -0
  228. package/dist/backend/backend/src/controllers/provisioning/provisioning.routes.js +29 -0
  229. package/dist/backend/backend/src/controllers/provisioning/provisioning.routes.js.map +1 -0
  230. package/dist/backend/backend/src/controllers/reconciler/reconciler.controller.d.ts +51 -0
  231. package/dist/backend/backend/src/controllers/reconciler/reconciler.controller.d.ts.map +1 -0
  232. package/dist/backend/backend/src/controllers/reconciler/reconciler.controller.js +106 -0
  233. package/dist/backend/backend/src/controllers/reconciler/reconciler.controller.js.map +1 -0
  234. package/dist/backend/backend/src/controllers/reconciler/reconciler.routes.d.ts +15 -0
  235. package/dist/backend/backend/src/controllers/reconciler/reconciler.routes.d.ts.map +1 -0
  236. package/dist/backend/backend/src/controllers/reconciler/reconciler.routes.js +25 -0
  237. package/dist/backend/backend/src/controllers/reconciler/reconciler.routes.js.map +1 -0
  238. package/dist/backend/backend/src/controllers/request/request.controller.d.ts +55 -0
  239. package/dist/backend/backend/src/controllers/request/request.controller.d.ts.map +1 -0
  240. package/dist/backend/backend/src/controllers/request/request.controller.js +168 -0
  241. package/dist/backend/backend/src/controllers/request/request.controller.js.map +1 -0
  242. package/dist/backend/backend/src/controllers/request/request.routes.d.ts +23 -0
  243. package/dist/backend/backend/src/controllers/request/request.routes.d.ts.map +1 -0
  244. package/dist/backend/backend/src/controllers/request/request.routes.js +37 -0
  245. package/dist/backend/backend/src/controllers/request/request.routes.js.map +1 -0
  246. package/dist/backend/backend/src/controllers/slack/slack.controller.d.ts.map +1 -1
  247. package/dist/backend/backend/src/controllers/slack/slack.controller.js +18 -1
  248. package/dist/backend/backend/src/controllers/slack/slack.controller.js.map +1 -1
  249. package/dist/backend/backend/src/controllers/task-management/task-management.controller.d.ts +20 -57
  250. package/dist/backend/backend/src/controllers/task-management/task-management.controller.d.ts.map +1 -1
  251. package/dist/backend/backend/src/controllers/task-management/task-management.controller.js +283 -385
  252. package/dist/backend/backend/src/controllers/task-management/task-management.controller.js.map +1 -1
  253. package/dist/backend/backend/src/controllers/task-pool/task-pool.controller.d.ts +157 -0
  254. package/dist/backend/backend/src/controllers/task-pool/task-pool.controller.d.ts.map +1 -0
  255. package/dist/backend/backend/src/controllers/task-pool/task-pool.controller.js +648 -0
  256. package/dist/backend/backend/src/controllers/task-pool/task-pool.controller.js.map +1 -0
  257. package/dist/backend/backend/src/controllers/task-pool/task-pool.routes.d.ts +15 -0
  258. package/dist/backend/backend/src/controllers/task-pool/task-pool.routes.d.ts.map +1 -0
  259. package/dist/backend/backend/src/controllers/task-pool/task-pool.routes.js +45 -0
  260. package/dist/backend/backend/src/controllers/task-pool/task-pool.routes.js.map +1 -0
  261. package/dist/backend/backend/src/controllers/task-projection/task-projection.controller.d.ts +75 -0
  262. package/dist/backend/backend/src/controllers/task-projection/task-projection.controller.d.ts.map +1 -0
  263. package/dist/backend/backend/src/controllers/task-projection/task-projection.controller.js +170 -0
  264. package/dist/backend/backend/src/controllers/task-projection/task-projection.controller.js.map +1 -0
  265. package/dist/backend/backend/src/controllers/task-projection/task-projection.routes.d.ts +10 -0
  266. package/dist/backend/backend/src/controllers/task-projection/task-projection.routes.d.ts.map +1 -0
  267. package/dist/backend/backend/src/controllers/task-projection/task-projection.routes.js +29 -0
  268. package/dist/backend/backend/src/controllers/task-projection/task-projection.routes.js.map +1 -0
  269. package/dist/backend/backend/src/controllers/team/team.routes.d.ts.map +1 -1
  270. package/dist/backend/backend/src/controllers/team/team.routes.js +16 -12
  271. package/dist/backend/backend/src/controllers/team/team.routes.js.map +1 -1
  272. package/dist/backend/backend/src/controllers/template/template.controller.d.ts +4 -4
  273. package/dist/backend/backend/src/controllers/template/template.controller.d.ts.map +1 -1
  274. package/dist/backend/backend/src/controllers/template/template.controller.js +73 -31
  275. package/dist/backend/backend/src/controllers/template/template.controller.js.map +1 -1
  276. package/dist/backend/backend/src/controllers/trigger/trigger.controller.d.ts +50 -0
  277. package/dist/backend/backend/src/controllers/trigger/trigger.controller.d.ts.map +1 -0
  278. package/dist/backend/backend/src/controllers/trigger/trigger.controller.js +125 -0
  279. package/dist/backend/backend/src/controllers/trigger/trigger.controller.js.map +1 -0
  280. package/dist/backend/backend/src/controllers/trigger/trigger.routes.d.ts +26 -0
  281. package/dist/backend/backend/src/controllers/trigger/trigger.routes.d.ts.map +1 -0
  282. package/dist/backend/backend/src/controllers/trigger/trigger.routes.js +38 -0
  283. package/dist/backend/backend/src/controllers/trigger/trigger.routes.js.map +1 -0
  284. package/dist/backend/backend/src/controllers/user/user-validation.d.ts +86 -0
  285. package/dist/backend/backend/src/controllers/user/user-validation.d.ts.map +1 -0
  286. package/dist/backend/backend/src/controllers/user/user-validation.js +165 -0
  287. package/dist/backend/backend/src/controllers/user/user-validation.js.map +1 -0
  288. package/dist/backend/backend/src/controllers/user/user.routes.d.ts.map +1 -1
  289. package/dist/backend/backend/src/controllers/user/user.routes.js +7 -4
  290. package/dist/backend/backend/src/controllers/user/user.routes.js.map +1 -1
  291. package/dist/backend/backend/src/controllers/v2-workspace/workspace.controller.d.ts +72 -0
  292. package/dist/backend/backend/src/controllers/v2-workspace/workspace.controller.d.ts.map +1 -0
  293. package/dist/backend/backend/src/controllers/v2-workspace/workspace.controller.js +236 -0
  294. package/dist/backend/backend/src/controllers/v2-workspace/workspace.controller.js.map +1 -0
  295. package/dist/backend/backend/src/controllers/v2-workspace/workspace.routes.d.ts +15 -0
  296. package/dist/backend/backend/src/controllers/v2-workspace/workspace.routes.d.ts.map +1 -0
  297. package/dist/backend/backend/src/controllers/v2-workspace/workspace.routes.js +31 -0
  298. package/dist/backend/backend/src/controllers/v2-workspace/workspace.routes.js.map +1 -0
  299. package/dist/backend/backend/src/index.d.ts +18 -0
  300. package/dist/backend/backend/src/index.d.ts.map +1 -1
  301. package/dist/backend/backend/src/index.js +613 -12
  302. package/dist/backend/backend/src/index.js.map +1 -1
  303. package/dist/backend/backend/src/middleware/cache.middleware.d.ts +43 -0
  304. package/dist/backend/backend/src/middleware/cache.middleware.d.ts.map +1 -0
  305. package/dist/backend/backend/src/middleware/cache.middleware.js +103 -0
  306. package/dist/backend/backend/src/middleware/cache.middleware.js.map +1 -0
  307. package/dist/backend/backend/src/middleware/require-auth.middleware.d.ts +49 -9
  308. package/dist/backend/backend/src/middleware/require-auth.middleware.d.ts.map +1 -1
  309. package/dist/backend/backend/src/middleware/require-auth.middleware.js +115 -9
  310. package/dist/backend/backend/src/middleware/require-auth.middleware.js.map +1 -1
  311. package/dist/backend/backend/src/routes/api.routes.d.ts.map +1 -1
  312. package/dist/backend/backend/src/routes/api.routes.js +77 -0
  313. package/dist/backend/backend/src/routes/api.routes.js.map +1 -1
  314. package/dist/backend/backend/src/routes/modules/task-management.routes.d.ts.map +1 -1
  315. package/dist/backend/backend/src/routes/modules/task-management.routes.js +4 -0
  316. package/dist/backend/backend/src/routes/modules/task-management.routes.js.map +1 -1
  317. package/dist/backend/backend/src/services/agent/agent-heartbeat-monitor.service.d.ts +6 -9
  318. package/dist/backend/backend/src/services/agent/agent-heartbeat-monitor.service.d.ts.map +1 -1
  319. package/dist/backend/backend/src/services/agent/agent-heartbeat-monitor.service.js +43 -30
  320. package/dist/backend/backend/src/services/agent/agent-heartbeat-monitor.service.js.map +1 -1
  321. package/dist/backend/backend/src/services/agent/agent-registration.service.d.ts.map +1 -1
  322. package/dist/backend/backend/src/services/agent/agent-registration.service.js +11 -0
  323. package/dist/backend/backend/src/services/agent/agent-registration.service.js.map +1 -1
  324. package/dist/backend/backend/src/services/agent/crewly-agent/agent-runner.service.d.ts +66 -1
  325. package/dist/backend/backend/src/services/agent/crewly-agent/agent-runner.service.d.ts.map +1 -1
  326. package/dist/backend/backend/src/services/agent/crewly-agent/agent-runner.service.js +282 -4
  327. package/dist/backend/backend/src/services/agent/crewly-agent/agent-runner.service.js.map +1 -1
  328. package/dist/backend/backend/src/services/agent/crewly-agent/crewly-agent-external-runtime.service.d.ts +60 -0
  329. package/dist/backend/backend/src/services/agent/crewly-agent/crewly-agent-external-runtime.service.d.ts.map +1 -0
  330. package/dist/backend/backend/src/services/agent/crewly-agent/crewly-agent-external-runtime.service.js +407 -0
  331. package/dist/backend/backend/src/services/agent/crewly-agent/crewly-agent-external-runtime.service.js.map +1 -0
  332. package/dist/backend/backend/src/services/agent/crewly-agent/eval/adapters/cli-adapter.d.ts +130 -0
  333. package/dist/backend/backend/src/services/agent/crewly-agent/eval/adapters/cli-adapter.d.ts.map +1 -0
  334. package/dist/backend/backend/src/services/agent/crewly-agent/eval/adapters/cli-adapter.js +406 -0
  335. package/dist/backend/backend/src/services/agent/crewly-agent/eval/adapters/cli-adapter.js.map +1 -0
  336. package/dist/backend/backend/src/services/agent/crewly-agent/eval/adapters/crewly-agent-adapter.d.ts +68 -0
  337. package/dist/backend/backend/src/services/agent/crewly-agent/eval/adapters/crewly-agent-adapter.d.ts.map +1 -0
  338. package/dist/backend/backend/src/services/agent/crewly-agent/eval/adapters/crewly-agent-adapter.js +206 -0
  339. package/dist/backend/backend/src/services/agent/crewly-agent/eval/adapters/crewly-agent-adapter.js.map +1 -0
  340. package/dist/backend/backend/src/services/agent/crewly-agent/eval/adapters/index.d.ts +32 -0
  341. package/dist/backend/backend/src/services/agent/crewly-agent/eval/adapters/index.d.ts.map +1 -0
  342. package/dist/backend/backend/src/services/agent/crewly-agent/eval/adapters/index.js +46 -0
  343. package/dist/backend/backend/src/services/agent/crewly-agent/eval/adapters/index.js.map +1 -0
  344. package/dist/backend/backend/src/services/agent/crewly-agent/eval/context-generator.d.ts +87 -0
  345. package/dist/backend/backend/src/services/agent/crewly-agent/eval/context-generator.d.ts.map +1 -0
  346. package/dist/backend/backend/src/services/agent/crewly-agent/eval/context-generator.js +299 -0
  347. package/dist/backend/backend/src/services/agent/crewly-agent/eval/context-generator.js.map +1 -0
  348. package/dist/backend/backend/src/services/agent/crewly-agent/eval/eval-runner.d.ts +59 -0
  349. package/dist/backend/backend/src/services/agent/crewly-agent/eval/eval-runner.d.ts.map +1 -0
  350. package/dist/backend/backend/src/services/agent/crewly-agent/eval/eval-runner.js +218 -0
  351. package/dist/backend/backend/src/services/agent/crewly-agent/eval/eval-runner.js.map +1 -0
  352. package/dist/backend/backend/src/services/agent/crewly-agent/eval/eval-scorer.d.ts +203 -0
  353. package/dist/backend/backend/src/services/agent/crewly-agent/eval/eval-scorer.d.ts.map +1 -0
  354. package/dist/backend/backend/src/services/agent/crewly-agent/eval/eval-scorer.js +467 -0
  355. package/dist/backend/backend/src/services/agent/crewly-agent/eval/eval-scorer.js.map +1 -0
  356. package/dist/backend/backend/src/services/agent/crewly-agent/eval/eval-types.d.ts +313 -0
  357. package/dist/backend/backend/src/services/agent/crewly-agent/eval/eval-types.d.ts.map +1 -0
  358. package/dist/backend/backend/src/services/agent/crewly-agent/eval/eval-types.js +45 -0
  359. package/dist/backend/backend/src/services/agent/crewly-agent/eval/eval-types.js.map +1 -0
  360. package/dist/backend/backend/src/services/agent/crewly-agent/eval/index.d.ts +21 -0
  361. package/dist/backend/backend/src/services/agent/crewly-agent/eval/index.d.ts.map +1 -0
  362. package/dist/backend/backend/src/services/agent/crewly-agent/eval/index.js +21 -0
  363. package/dist/backend/backend/src/services/agent/crewly-agent/eval/index.js.map +1 -0
  364. package/dist/backend/backend/src/services/agent/crewly-agent/eval/run-eval-cli.d.ts +15 -0
  365. package/dist/backend/backend/src/services/agent/crewly-agent/eval/run-eval-cli.d.ts.map +1 -0
  366. package/dist/backend/backend/src/services/agent/crewly-agent/eval/run-eval-cli.js +349 -0
  367. package/dist/backend/backend/src/services/agent/crewly-agent/eval/run-eval-cli.js.map +1 -0
  368. package/dist/backend/backend/src/services/agent/crewly-agent/eval/run-eval-l4.d.ts +97 -0
  369. package/dist/backend/backend/src/services/agent/crewly-agent/eval/run-eval-l4.d.ts.map +1 -0
  370. package/dist/backend/backend/src/services/agent/crewly-agent/eval/run-eval-l4.js +414 -0
  371. package/dist/backend/backend/src/services/agent/crewly-agent/eval/run-eval-l4.js.map +1 -0
  372. package/dist/backend/backend/src/services/agent/crewly-agent/eval/run-eval-standalone.d.ts +42 -0
  373. package/dist/backend/backend/src/services/agent/crewly-agent/eval/run-eval-standalone.d.ts.map +1 -0
  374. package/dist/backend/backend/src/services/agent/crewly-agent/eval/run-eval-standalone.js +403 -0
  375. package/dist/backend/backend/src/services/agent/crewly-agent/eval/run-eval-standalone.js.map +1 -0
  376. package/dist/backend/backend/src/services/agent/crewly-agent/eval/tasks/index.d.ts +41 -0
  377. package/dist/backend/backend/src/services/agent/crewly-agent/eval/tasks/index.d.ts.map +1 -0
  378. package/dist/backend/backend/src/services/agent/crewly-agent/eval/tasks/index.js +58 -0
  379. package/dist/backend/backend/src/services/agent/crewly-agent/eval/tasks/index.js.map +1 -0
  380. package/dist/backend/backend/src/services/agent/crewly-agent/eval/tasks/l1-tasks.d.ts +15 -0
  381. package/dist/backend/backend/src/services/agent/crewly-agent/eval/tasks/l1-tasks.d.ts.map +1 -0
  382. package/dist/backend/backend/src/services/agent/crewly-agent/eval/tasks/l1-tasks.js +396 -0
  383. package/dist/backend/backend/src/services/agent/crewly-agent/eval/tasks/l1-tasks.js.map +1 -0
  384. package/dist/backend/backend/src/services/agent/crewly-agent/eval/tasks/l2-tasks.d.ts +14 -0
  385. package/dist/backend/backend/src/services/agent/crewly-agent/eval/tasks/l2-tasks.d.ts.map +1 -0
  386. package/dist/backend/backend/src/services/agent/crewly-agent/eval/tasks/l2-tasks.js +564 -0
  387. package/dist/backend/backend/src/services/agent/crewly-agent/eval/tasks/l2-tasks.js.map +1 -0
  388. package/dist/backend/backend/src/services/agent/crewly-agent/eval/tasks/l3-tasks.d.ts +13 -0
  389. package/dist/backend/backend/src/services/agent/crewly-agent/eval/tasks/l3-tasks.d.ts.map +1 -0
  390. package/dist/backend/backend/src/services/agent/crewly-agent/eval/tasks/l3-tasks.js +634 -0
  391. package/dist/backend/backend/src/services/agent/crewly-agent/eval/tasks/l3-tasks.js.map +1 -0
  392. package/dist/backend/backend/src/services/agent/crewly-agent/eval/tasks/l4-tasks.d.ts +21 -0
  393. package/dist/backend/backend/src/services/agent/crewly-agent/eval/tasks/l4-tasks.d.ts.map +1 -0
  394. package/dist/backend/backend/src/services/agent/crewly-agent/eval/tasks/l4-tasks.js +1036 -0
  395. package/dist/backend/backend/src/services/agent/crewly-agent/eval/tasks/l4-tasks.js.map +1 -0
  396. package/dist/backend/backend/src/services/agent/crewly-agent/eval/tool-log-parser.d.ts +100 -0
  397. package/dist/backend/backend/src/services/agent/crewly-agent/eval/tool-log-parser.d.ts.map +1 -0
  398. package/dist/backend/backend/src/services/agent/crewly-agent/eval/tool-log-parser.js +187 -0
  399. package/dist/backend/backend/src/services/agent/crewly-agent/eval/tool-log-parser.js.map +1 -0
  400. package/dist/backend/backend/src/services/agent/crewly-agent/tool-registry.d.ts.map +1 -1
  401. package/dist/backend/backend/src/services/agent/crewly-agent/tool-registry.js +43 -6
  402. package/dist/backend/backend/src/services/agent/crewly-agent/tool-registry.js.map +1 -1
  403. package/dist/backend/backend/src/services/agent/crewly-agent/types.d.ts +7 -0
  404. package/dist/backend/backend/src/services/agent/crewly-agent/types.d.ts.map +1 -1
  405. package/dist/backend/backend/src/services/agent/crewly-agent/types.js.map +1 -1
  406. package/dist/backend/backend/src/services/agent/idle-detection.service.d.ts +10 -0
  407. package/dist/backend/backend/src/services/agent/idle-detection.service.d.ts.map +1 -1
  408. package/dist/backend/backend/src/services/agent/idle-detection.service.js +63 -0
  409. package/dist/backend/backend/src/services/agent/idle-detection.service.js.map +1 -1
  410. package/dist/backend/backend/src/services/ai/prompt-modules/expert-profile.module.d.ts +41 -0
  411. package/dist/backend/backend/src/services/ai/prompt-modules/expert-profile.module.d.ts.map +1 -0
  412. package/dist/backend/backend/src/services/ai/prompt-modules/expert-profile.module.js +95 -0
  413. package/dist/backend/backend/src/services/ai/prompt-modules/expert-profile.module.js.map +1 -0
  414. package/dist/backend/backend/src/services/ai/prompt-modules/prompt-assembly.service.d.ts.map +1 -1
  415. package/dist/backend/backend/src/services/ai/prompt-modules/prompt-assembly.service.js +19 -0
  416. package/dist/backend/backend/src/services/ai/prompt-modules/prompt-assembly.service.js.map +1 -1
  417. package/dist/backend/backend/src/services/ai/prompt-modules/prompt-module.interface.d.ts +47 -0
  418. package/dist/backend/backend/src/services/ai/prompt-modules/prompt-module.interface.d.ts.map +1 -1
  419. package/dist/backend/backend/src/services/ai/prompt-modules/prompt-module.interface.js.map +1 -1
  420. package/dist/backend/backend/src/services/ai/prompt-modules/role-boundary.module.d.ts +26 -2
  421. package/dist/backend/backend/src/services/ai/prompt-modules/role-boundary.module.d.ts.map +1 -1
  422. package/dist/backend/backend/src/services/ai/prompt-modules/role-boundary.module.js +191 -8
  423. package/dist/backend/backend/src/services/ai/prompt-modules/role-boundary.module.js.map +1 -1
  424. package/dist/backend/backend/src/services/ai/prompt-modules/skills-reference.module.d.ts.map +1 -1
  425. package/dist/backend/backend/src/services/ai/prompt-modules/skills-reference.module.js +4 -0
  426. package/dist/backend/backend/src/services/ai/prompt-modules/skills-reference.module.js.map +1 -1
  427. package/dist/backend/backend/src/services/ai/prompt-modules/team-norms.module.d.ts +48 -0
  428. package/dist/backend/backend/src/services/ai/prompt-modules/team-norms.module.d.ts.map +1 -0
  429. package/dist/backend/backend/src/services/ai/prompt-modules/team-norms.module.js +100 -0
  430. package/dist/backend/backend/src/services/ai/prompt-modules/team-norms.module.js.map +1 -0
  431. package/dist/backend/backend/src/services/browser/browser-bridge.service.d.ts.map +1 -1
  432. package/dist/backend/backend/src/services/browser/browser-bridge.service.js +3 -1
  433. package/dist/backend/backend/src/services/browser/browser-bridge.service.js.map +1 -1
  434. package/dist/backend/backend/src/services/browser/browser-proxy.service.d.ts +54 -1
  435. package/dist/backend/backend/src/services/browser/browser-proxy.service.d.ts.map +1 -1
  436. package/dist/backend/backend/src/services/browser/browser-proxy.service.js +222 -25
  437. package/dist/backend/backend/src/services/browser/browser-proxy.service.js.map +1 -1
  438. package/dist/backend/backend/src/services/cache/redis-cache.service.d.ts +115 -0
  439. package/dist/backend/backend/src/services/cache/redis-cache.service.d.ts.map +1 -0
  440. package/dist/backend/backend/src/services/cache/redis-cache.service.js +316 -0
  441. package/dist/backend/backend/src/services/cache/redis-cache.service.js.map +1 -0
  442. package/dist/backend/backend/src/services/cloud/cloud-client.service.d.ts +17 -0
  443. package/dist/backend/backend/src/services/cloud/cloud-client.service.d.ts.map +1 -1
  444. package/dist/backend/backend/src/services/cloud/cloud-client.service.js +74 -3
  445. package/dist/backend/backend/src/services/cloud/cloud-client.service.js.map +1 -1
  446. package/dist/backend/backend/src/services/core/logger.service.js +1 -1
  447. package/dist/backend/backend/src/services/core/logger.service.js.map +1 -1
  448. package/dist/backend/backend/src/services/core/system-health.util.d.ts +23 -0
  449. package/dist/backend/backend/src/services/core/system-health.util.d.ts.map +1 -0
  450. package/dist/backend/backend/src/services/core/system-health.util.js +44 -0
  451. package/dist/backend/backend/src/services/core/system-health.util.js.map +1 -0
  452. package/dist/backend/backend/src/services/fission/fission-guard.service.d.ts +188 -0
  453. package/dist/backend/backend/src/services/fission/fission-guard.service.d.ts.map +1 -0
  454. package/dist/backend/backend/src/services/fission/fission-guard.service.js +372 -0
  455. package/dist/backend/backend/src/services/fission/fission-guard.service.js.map +1 -0
  456. package/dist/backend/backend/src/services/fission/fission-guard.types.d.ts +137 -0
  457. package/dist/backend/backend/src/services/fission/fission-guard.types.d.ts.map +1 -0
  458. package/dist/backend/backend/src/services/fission/fission-guard.types.js +133 -0
  459. package/dist/backend/backend/src/services/fission/fission-guard.types.js.map +1 -0
  460. package/dist/backend/backend/src/services/intent-task/intent-decomposition.service.d.ts +91 -0
  461. package/dist/backend/backend/src/services/intent-task/intent-decomposition.service.d.ts.map +1 -0
  462. package/dist/backend/backend/src/services/intent-task/intent-decomposition.service.js +179 -0
  463. package/dist/backend/backend/src/services/intent-task/intent-decomposition.service.js.map +1 -0
  464. package/dist/backend/backend/src/services/intent-task/intent-task-follow-up.service.d.ts +138 -0
  465. package/dist/backend/backend/src/services/intent-task/intent-task-follow-up.service.d.ts.map +1 -0
  466. package/dist/backend/backend/src/services/intent-task/intent-task-follow-up.service.js +244 -0
  467. package/dist/backend/backend/src/services/intent-task/intent-task-follow-up.service.js.map +1 -0
  468. package/dist/backend/backend/src/services/intent-task/intent-task.service.d.ts +333 -0
  469. package/dist/backend/backend/src/services/intent-task/intent-task.service.d.ts.map +1 -0
  470. package/dist/backend/backend/src/services/intent-task/intent-task.service.js +843 -0
  471. package/dist/backend/backend/src/services/intent-task/intent-task.service.js.map +1 -0
  472. package/dist/backend/backend/src/services/knowledge/fts5-index.service.d.ts +118 -0
  473. package/dist/backend/backend/src/services/knowledge/fts5-index.service.d.ts.map +1 -0
  474. package/dist/backend/backend/src/services/knowledge/fts5-index.service.js +220 -0
  475. package/dist/backend/backend/src/services/knowledge/fts5-index.service.js.map +1 -0
  476. package/dist/backend/backend/src/services/knowledge/fts5-search-strategy.d.ts +56 -0
  477. package/dist/backend/backend/src/services/knowledge/fts5-search-strategy.d.ts.map +1 -0
  478. package/dist/backend/backend/src/services/knowledge/fts5-search-strategy.js +91 -0
  479. package/dist/backend/backend/src/services/knowledge/fts5-search-strategy.js.map +1 -0
  480. package/dist/backend/backend/src/services/knowledge/wiki-compiler.service.d.ts +115 -0
  481. package/dist/backend/backend/src/services/knowledge/wiki-compiler.service.d.ts.map +1 -0
  482. package/dist/backend/backend/src/services/knowledge/wiki-compiler.service.js +215 -0
  483. package/dist/backend/backend/src/services/knowledge/wiki-compiler.service.js.map +1 -0
  484. package/dist/backend/backend/src/services/marketplace/marketplace-auto-update.service.d.ts +34 -0
  485. package/dist/backend/backend/src/services/marketplace/marketplace-auto-update.service.d.ts.map +1 -0
  486. package/dist/backend/backend/src/services/marketplace/marketplace-auto-update.service.js +128 -0
  487. package/dist/backend/backend/src/services/marketplace/marketplace-auto-update.service.js.map +1 -0
  488. package/dist/backend/backend/src/services/memory/agent-memory.service.d.ts +11 -0
  489. package/dist/backend/backend/src/services/memory/agent-memory.service.d.ts.map +1 -1
  490. package/dist/backend/backend/src/services/memory/agent-memory.service.js +76 -11
  491. package/dist/backend/backend/src/services/memory/agent-memory.service.js.map +1 -1
  492. package/dist/backend/backend/src/services/memory/embedding-provider.d.ts +78 -0
  493. package/dist/backend/backend/src/services/memory/embedding-provider.d.ts.map +1 -0
  494. package/dist/backend/backend/src/services/memory/embedding-provider.js +185 -0
  495. package/dist/backend/backend/src/services/memory/embedding-provider.js.map +1 -0
  496. package/dist/backend/backend/src/services/memory/vector-store.service.d.ts +331 -0
  497. package/dist/backend/backend/src/services/memory/vector-store.service.d.ts.map +1 -0
  498. package/dist/backend/backend/src/services/memory/vector-store.service.js +814 -0
  499. package/dist/backend/backend/src/services/memory/vector-store.service.js.map +1 -0
  500. package/dist/backend/backend/src/services/messaging/queue-processor.service.d.ts +15 -0
  501. package/dist/backend/backend/src/services/messaging/queue-processor.service.d.ts.map +1 -1
  502. package/dist/backend/backend/src/services/messaging/queue-processor.service.js +42 -0
  503. package/dist/backend/backend/src/services/messaging/queue-processor.service.js.map +1 -1
  504. package/dist/backend/backend/src/services/messaging/thread-status-queue.service.d.ts +8 -0
  505. package/dist/backend/backend/src/services/messaging/thread-status-queue.service.d.ts.map +1 -1
  506. package/dist/backend/backend/src/services/messaging/thread-status-queue.service.js +20 -0
  507. package/dist/backend/backend/src/services/messaging/thread-status-queue.service.js.map +1 -1
  508. package/dist/backend/backend/src/services/monitoring/activity-monitor.service.d.ts +17 -0
  509. package/dist/backend/backend/src/services/monitoring/activity-monitor.service.d.ts.map +1 -1
  510. package/dist/backend/backend/src/services/monitoring/activity-monitor.service.js +62 -0
  511. package/dist/backend/backend/src/services/monitoring/activity-monitor.service.js.map +1 -1
  512. package/dist/backend/backend/src/services/monitoring/claude-session-tokens.service.d.ts +81 -0
  513. package/dist/backend/backend/src/services/monitoring/claude-session-tokens.service.d.ts.map +1 -0
  514. package/dist/backend/backend/src/services/monitoring/claude-session-tokens.service.js +287 -0
  515. package/dist/backend/backend/src/services/monitoring/claude-session-tokens.service.js.map +1 -0
  516. package/dist/backend/backend/src/services/monitoring/runtime-token-parser.service.d.ts +73 -0
  517. package/dist/backend/backend/src/services/monitoring/runtime-token-parser.service.d.ts.map +1 -0
  518. package/dist/backend/backend/src/services/monitoring/runtime-token-parser.service.js +199 -0
  519. package/dist/backend/backend/src/services/monitoring/runtime-token-parser.service.js.map +1 -0
  520. package/dist/backend/backend/src/services/monitoring/system-resource-alert.service.d.ts +7 -0
  521. package/dist/backend/backend/src/services/monitoring/system-resource-alert.service.d.ts.map +1 -1
  522. package/dist/backend/backend/src/services/monitoring/system-resource-alert.service.js +37 -6
  523. package/dist/backend/backend/src/services/monitoring/system-resource-alert.service.js.map +1 -1
  524. package/dist/backend/backend/src/services/monitoring/token-usage.service.d.ts +56 -4
  525. package/dist/backend/backend/src/services/monitoring/token-usage.service.d.ts.map +1 -1
  526. package/dist/backend/backend/src/services/monitoring/token-usage.service.js +102 -7
  527. package/dist/backend/backend/src/services/monitoring/token-usage.service.js.map +1 -1
  528. package/dist/backend/backend/src/services/onboarding/brand-onboarding.service.d.ts +5 -1
  529. package/dist/backend/backend/src/services/onboarding/brand-onboarding.service.d.ts.map +1 -1
  530. package/dist/backend/backend/src/services/onboarding/brand-onboarding.service.js +41 -0
  531. package/dist/backend/backend/src/services/onboarding/brand-onboarding.service.js.map +1 -1
  532. package/dist/backend/backend/src/services/onboarding/brand-onboarding.types.d.ts +36 -0
  533. package/dist/backend/backend/src/services/onboarding/brand-onboarding.types.d.ts.map +1 -1
  534. package/dist/backend/backend/src/services/onboarding/brand-onboarding.types.js.map +1 -1
  535. package/dist/backend/backend/src/services/onboarding/onboarding-provision.service.d.ts +51 -0
  536. package/dist/backend/backend/src/services/onboarding/onboarding-provision.service.d.ts.map +1 -0
  537. package/dist/backend/backend/src/services/onboarding/onboarding-provision.service.js +136 -0
  538. package/dist/backend/backend/src/services/onboarding/onboarding-provision.service.js.map +1 -0
  539. package/dist/backend/backend/src/services/onboarding/onboarding-provision.types.d.ts +178 -0
  540. package/dist/backend/backend/src/services/onboarding/onboarding-provision.types.d.ts.map +1 -0
  541. package/dist/backend/backend/src/services/onboarding/onboarding-provision.types.js +163 -0
  542. package/dist/backend/backend/src/services/onboarding/onboarding-provision.types.js.map +1 -0
  543. package/dist/backend/backend/src/services/onboarding/website-analysis.service.d.ts +141 -0
  544. package/dist/backend/backend/src/services/onboarding/website-analysis.service.d.ts.map +1 -0
  545. package/dist/backend/backend/src/services/onboarding/website-analysis.service.js +411 -0
  546. package/dist/backend/backend/src/services/onboarding/website-analysis.service.js.map +1 -0
  547. package/dist/backend/backend/src/services/onboarding/website-analysis.types.d.ts +129 -0
  548. package/dist/backend/backend/src/services/onboarding/website-analysis.types.d.ts.map +1 -0
  549. package/dist/backend/backend/src/services/onboarding/website-analysis.types.js +10 -0
  550. package/dist/backend/backend/src/services/onboarding/website-analysis.types.js.map +1 -0
  551. package/dist/backend/backend/src/services/onboarding/website-extractor.service.d.ts +241 -0
  552. package/dist/backend/backend/src/services/onboarding/website-extractor.service.d.ts.map +1 -0
  553. package/dist/backend/backend/src/services/onboarding/website-extractor.service.js +605 -0
  554. package/dist/backend/backend/src/services/onboarding/website-extractor.service.js.map +1 -0
  555. package/dist/backend/backend/src/services/payment/stripe.service.d.ts.map +1 -1
  556. package/dist/backend/backend/src/services/payment/stripe.service.js +17 -11
  557. package/dist/backend/backend/src/services/payment/stripe.service.js.map +1 -1
  558. package/dist/backend/backend/src/services/policy/default-policies.d.ts +66 -0
  559. package/dist/backend/backend/src/services/policy/default-policies.d.ts.map +1 -0
  560. package/dist/backend/backend/src/services/policy/default-policies.js +120 -0
  561. package/dist/backend/backend/src/services/policy/default-policies.js.map +1 -0
  562. package/dist/backend/backend/src/services/policy/policy-enforcement.service.d.ts +77 -0
  563. package/dist/backend/backend/src/services/policy/policy-enforcement.service.d.ts.map +1 -0
  564. package/dist/backend/backend/src/services/policy/policy-enforcement.service.js +164 -0
  565. package/dist/backend/backend/src/services/policy/policy-enforcement.service.js.map +1 -0
  566. package/dist/backend/backend/src/services/project/active-projects.service.d.ts +0 -4
  567. package/dist/backend/backend/src/services/project/active-projects.service.d.ts.map +1 -1
  568. package/dist/backend/backend/src/services/project/active-projects.service.js +1 -43
  569. package/dist/backend/backend/src/services/project/active-projects.service.js.map +1 -1
  570. package/dist/backend/backend/src/services/project/task.service.d.ts.map +1 -1
  571. package/dist/backend/backend/src/services/project/task.service.js +88 -48
  572. package/dist/backend/backend/src/services/project/task.service.js.map +1 -1
  573. package/dist/backend/backend/src/services/provisioning/deployment-orchestrator.service.d.ts +137 -0
  574. package/dist/backend/backend/src/services/provisioning/deployment-orchestrator.service.d.ts.map +1 -0
  575. package/dist/backend/backend/src/services/provisioning/deployment-orchestrator.service.js +410 -0
  576. package/dist/backend/backend/src/services/provisioning/deployment-orchestrator.service.js.map +1 -0
  577. package/dist/backend/backend/src/services/provisioning/deployment-orchestrator.types.d.ts +182 -0
  578. package/dist/backend/backend/src/services/provisioning/deployment-orchestrator.types.d.ts.map +1 -0
  579. package/dist/backend/backend/src/services/provisioning/deployment-orchestrator.types.js +84 -0
  580. package/dist/backend/backend/src/services/provisioning/deployment-orchestrator.types.js.map +1 -0
  581. package/dist/backend/backend/src/services/provisioning/deployment-status.service.d.ts +149 -0
  582. package/dist/backend/backend/src/services/provisioning/deployment-status.service.d.ts.map +1 -0
  583. package/dist/backend/backend/src/services/provisioning/deployment-status.service.js +201 -0
  584. package/dist/backend/backend/src/services/provisioning/deployment-status.service.js.map +1 -0
  585. package/dist/backend/backend/src/services/provisioning/provisioning.service.d.ts +135 -0
  586. package/dist/backend/backend/src/services/provisioning/provisioning.service.d.ts.map +1 -0
  587. package/dist/backend/backend/src/services/provisioning/provisioning.service.js +261 -0
  588. package/dist/backend/backend/src/services/provisioning/provisioning.service.js.map +1 -0
  589. package/dist/backend/backend/src/services/provisioning/provisioning.types.d.ts +184 -0
  590. package/dist/backend/backend/src/services/provisioning/provisioning.types.d.ts.map +1 -0
  591. package/dist/backend/backend/src/services/provisioning/provisioning.types.js +119 -0
  592. package/dist/backend/backend/src/services/provisioning/provisioning.types.js.map +1 -0
  593. package/dist/backend/backend/src/services/reconciler/reconcile-rules.d.ts +229 -0
  594. package/dist/backend/backend/src/services/reconciler/reconcile-rules.d.ts.map +1 -0
  595. package/dist/backend/backend/src/services/reconciler/reconcile-rules.js +666 -0
  596. package/dist/backend/backend/src/services/reconciler/reconcile-rules.js.map +1 -0
  597. package/dist/backend/backend/src/services/reconciler/reconciler-data-provider.d.ts +141 -0
  598. package/dist/backend/backend/src/services/reconciler/reconciler-data-provider.d.ts.map +1 -0
  599. package/dist/backend/backend/src/services/reconciler/reconciler-data-provider.js +470 -0
  600. package/dist/backend/backend/src/services/reconciler/reconciler-data-provider.js.map +1 -0
  601. package/dist/backend/backend/src/services/reconciler/reconciler.service.d.ts +144 -0
  602. package/dist/backend/backend/src/services/reconciler/reconciler.service.d.ts.map +1 -0
  603. package/dist/backend/backend/src/services/reconciler/reconciler.service.js +360 -0
  604. package/dist/backend/backend/src/services/reconciler/reconciler.service.js.map +1 -0
  605. package/dist/backend/backend/src/services/session/pty/pty-session-backend.d.ts.map +1 -1
  606. package/dist/backend/backend/src/services/session/pty/pty-session-backend.js +4 -3
  607. package/dist/backend/backend/src/services/session/pty/pty-session-backend.js.map +1 -1
  608. package/dist/backend/backend/src/services/session/session-handoff.service.d.ts.map +1 -1
  609. package/dist/backend/backend/src/services/session/session-handoff.service.js +13 -0
  610. package/dist/backend/backend/src/services/session/session-handoff.service.js.map +1 -1
  611. package/dist/backend/backend/src/services/skill/skill-permission.service.d.ts +59 -0
  612. package/dist/backend/backend/src/services/skill/skill-permission.service.d.ts.map +1 -0
  613. package/dist/backend/backend/src/services/skill/skill-permission.service.js +141 -0
  614. package/dist/backend/backend/src/services/skill/skill-permission.service.js.map +1 -0
  615. package/dist/backend/backend/src/services/slack/slack-orchestrator-bridge.d.ts +13 -0
  616. package/dist/backend/backend/src/services/slack/slack-orchestrator-bridge.d.ts.map +1 -1
  617. package/dist/backend/backend/src/services/slack/slack-orchestrator-bridge.js +124 -0
  618. package/dist/backend/backend/src/services/slack/slack-orchestrator-bridge.js.map +1 -1
  619. package/dist/backend/backend/src/services/slack/slack.service.d.ts.map +1 -1
  620. package/dist/backend/backend/src/services/slack/slack.service.js +78 -0
  621. package/dist/backend/backend/src/services/slack/slack.service.js.map +1 -1
  622. package/dist/backend/backend/src/services/task-pool/claim.service.d.ts +190 -0
  623. package/dist/backend/backend/src/services/task-pool/claim.service.d.ts.map +1 -0
  624. package/dist/backend/backend/src/services/task-pool/claim.service.js +354 -0
  625. package/dist/backend/backend/src/services/task-pool/claim.service.js.map +1 -0
  626. package/dist/backend/backend/src/services/task-pool/pool-storage.d.ts +146 -0
  627. package/dist/backend/backend/src/services/task-pool/pool-storage.d.ts.map +1 -0
  628. package/dist/backend/backend/src/services/task-pool/pool-storage.js +243 -0
  629. package/dist/backend/backend/src/services/task-pool/pool-storage.js.map +1 -0
  630. package/dist/backend/backend/src/services/task-pool/task-pool.service.d.ts +263 -0
  631. package/dist/backend/backend/src/services/task-pool/task-pool.service.d.ts.map +1 -0
  632. package/dist/backend/backend/src/services/task-pool/task-pool.service.js +593 -0
  633. package/dist/backend/backend/src/services/task-pool/task-pool.service.js.map +1 -0
  634. package/dist/backend/backend/src/services/template/template.service.d.ts +2 -0
  635. package/dist/backend/backend/src/services/template/template.service.d.ts.map +1 -1
  636. package/dist/backend/backend/src/services/template/template.service.js +16 -3
  637. package/dist/backend/backend/src/services/template/template.service.js.map +1 -1
  638. package/dist/backend/backend/src/services/v3/agent-auto-claim.service.d.ts +90 -0
  639. package/dist/backend/backend/src/services/v3/agent-auto-claim.service.d.ts.map +1 -0
  640. package/dist/backend/backend/src/services/v3/agent-auto-claim.service.js +394 -0
  641. package/dist/backend/backend/src/services/v3/agent-auto-claim.service.js.map +1 -0
  642. package/dist/backend/backend/src/services/v3/escalation-router.service.d.ts +100 -0
  643. package/dist/backend/backend/src/services/v3/escalation-router.service.d.ts.map +1 -0
  644. package/dist/backend/backend/src/services/v3/escalation-router.service.js +357 -0
  645. package/dist/backend/backend/src/services/v3/escalation-router.service.js.map +1 -0
  646. package/dist/backend/backend/src/services/v3/escalation.service.d.ts +148 -0
  647. package/dist/backend/backend/src/services/v3/escalation.service.d.ts.map +1 -0
  648. package/dist/backend/backend/src/services/v3/escalation.service.js +371 -0
  649. package/dist/backend/backend/src/services/v3/escalation.service.js.map +1 -0
  650. package/dist/backend/backend/src/services/v3/kr-tracking.service.d.ts +109 -0
  651. package/dist/backend/backend/src/services/v3/kr-tracking.service.d.ts.map +1 -0
  652. package/dist/backend/backend/src/services/v3/kr-tracking.service.js +314 -0
  653. package/dist/backend/backend/src/services/v3/kr-tracking.service.js.map +1 -0
  654. package/dist/backend/backend/src/services/v3/mission-executor.service.d.ts +117 -0
  655. package/dist/backend/backend/src/services/v3/mission-executor.service.d.ts.map +1 -0
  656. package/dist/backend/backend/src/services/v3/mission-executor.service.js +301 -0
  657. package/dist/backend/backend/src/services/v3/mission-executor.service.js.map +1 -0
  658. package/dist/backend/backend/src/services/v3/mission-period.service.d.ts +73 -0
  659. package/dist/backend/backend/src/services/v3/mission-period.service.d.ts.map +1 -0
  660. package/dist/backend/backend/src/services/v3/mission-period.service.js +200 -0
  661. package/dist/backend/backend/src/services/v3/mission-period.service.js.map +1 -0
  662. package/dist/backend/backend/src/services/v3/okr-review.service.d.ts +58 -0
  663. package/dist/backend/backend/src/services/v3/okr-review.service.d.ts.map +1 -0
  664. package/dist/backend/backend/src/services/v3/okr-review.service.js +221 -0
  665. package/dist/backend/backend/src/services/v3/okr-review.service.js.map +1 -0
  666. package/dist/backend/backend/src/services/v3/project-task-watcher.service.d.ts +118 -0
  667. package/dist/backend/backend/src/services/v3/project-task-watcher.service.d.ts.map +1 -0
  668. package/dist/backend/backend/src/services/v3/project-task-watcher.service.js +326 -0
  669. package/dist/backend/backend/src/services/v3/project-task-watcher.service.js.map +1 -0
  670. package/dist/backend/backend/src/services/v3/request-notification.service.d.ts +52 -0
  671. package/dist/backend/backend/src/services/v3/request-notification.service.d.ts.map +1 -0
  672. package/dist/backend/backend/src/services/v3/request-notification.service.js +161 -0
  673. package/dist/backend/backend/src/services/v3/request-notification.service.js.map +1 -0
  674. package/dist/backend/backend/src/services/v3/request-tracker.service.d.ts +78 -0
  675. package/dist/backend/backend/src/services/v3/request-tracker.service.d.ts.map +1 -0
  676. package/dist/backend/backend/src/services/v3/request-tracker.service.js +108 -0
  677. package/dist/backend/backend/src/services/v3/request-tracker.service.js.map +1 -0
  678. package/dist/backend/backend/src/services/v3/request.service.d.ts +166 -0
  679. package/dist/backend/backend/src/services/v3/request.service.d.ts.map +1 -0
  680. package/dist/backend/backend/src/services/v3/request.service.js +310 -0
  681. package/dist/backend/backend/src/services/v3/request.service.js.map +1 -0
  682. package/dist/backend/backend/src/services/v3/task-projection.service.d.ts +128 -0
  683. package/dist/backend/backend/src/services/v3/task-projection.service.d.ts.map +1 -0
  684. package/dist/backend/backend/src/services/v3/task-projection.service.js +378 -0
  685. package/dist/backend/backend/src/services/v3/task-projection.service.js.map +1 -0
  686. package/dist/backend/backend/src/services/v3/tl-auto-verify.service.d.ts +63 -0
  687. package/dist/backend/backend/src/services/v3/tl-auto-verify.service.d.ts.map +1 -0
  688. package/dist/backend/backend/src/services/v3/tl-auto-verify.service.js +169 -0
  689. package/dist/backend/backend/src/services/v3/tl-auto-verify.service.js.map +1 -0
  690. package/dist/backend/backend/src/services/v3/trigger-engine.service.d.ts +263 -0
  691. package/dist/backend/backend/src/services/v3/trigger-engine.service.d.ts.map +1 -0
  692. package/dist/backend/backend/src/services/v3/trigger-engine.service.js +632 -0
  693. package/dist/backend/backend/src/services/v3/trigger-engine.service.js.map +1 -0
  694. package/dist/backend/backend/src/services/v3/v3-data.service.d.ts +298 -0
  695. package/dist/backend/backend/src/services/v3/v3-data.service.d.ts.map +1 -0
  696. package/dist/backend/backend/src/services/v3/v3-data.service.js +1075 -0
  697. package/dist/backend/backend/src/services/v3/v3-data.service.js.map +1 -0
  698. package/dist/backend/backend/src/services/workflow/scheduler.service.d.ts +5 -11
  699. package/dist/backend/backend/src/services/workflow/scheduler.service.d.ts.map +1 -1
  700. package/dist/backend/backend/src/services/workflow/scheduler.service.js +34 -23
  701. package/dist/backend/backend/src/services/workflow/scheduler.service.js.map +1 -1
  702. package/dist/backend/backend/src/services/workspace/workspace.service.d.ts +120 -0
  703. package/dist/backend/backend/src/services/workspace/workspace.service.d.ts.map +1 -0
  704. package/dist/backend/backend/src/services/workspace/workspace.service.js +271 -0
  705. package/dist/backend/backend/src/services/workspace/workspace.service.js.map +1 -0
  706. package/dist/backend/backend/src/types/index.d.ts +14 -0
  707. package/dist/backend/backend/src/types/index.d.ts.map +1 -1
  708. package/dist/backend/backend/src/types/index.js.map +1 -1
  709. package/dist/backend/backend/src/types/intent-task.types.d.ts +386 -0
  710. package/dist/backend/backend/src/types/intent-task.types.d.ts.map +1 -0
  711. package/dist/backend/backend/src/types/intent-task.types.js +231 -0
  712. package/dist/backend/backend/src/types/intent-task.types.js.map +1 -0
  713. package/dist/backend/backend/src/types/memory.types.d.ts +19 -0
  714. package/dist/backend/backend/src/types/memory.types.d.ts.map +1 -1
  715. package/dist/backend/backend/src/types/memory.types.js.map +1 -1
  716. package/dist/backend/backend/src/types/team-template.types.d.ts +52 -0
  717. package/dist/backend/backend/src/types/team-template.types.d.ts.map +1 -1
  718. package/dist/backend/backend/src/types/team-template.types.js.map +1 -1
  719. package/dist/backend/backend/src/types/v2/claim.types.d.ts +140 -0
  720. package/dist/backend/backend/src/types/v2/claim.types.d.ts.map +1 -0
  721. package/dist/backend/backend/src/types/v2/claim.types.js +180 -0
  722. package/dist/backend/backend/src/types/v2/claim.types.js.map +1 -0
  723. package/dist/backend/backend/src/types/v2/index.d.ts +30 -0
  724. package/dist/backend/backend/src/types/v2/index.d.ts.map +1 -0
  725. package/dist/backend/backend/src/types/v2/index.js +22 -0
  726. package/dist/backend/backend/src/types/v2/index.js.map +1 -0
  727. package/dist/backend/backend/src/types/v2/key-result.types.d.ts +195 -0
  728. package/dist/backend/backend/src/types/v2/key-result.types.d.ts.map +1 -0
  729. package/dist/backend/backend/src/types/v2/key-result.types.js +194 -0
  730. package/dist/backend/backend/src/types/v2/key-result.types.js.map +1 -0
  731. package/dist/backend/backend/src/types/v2/mission.types.d.ts +357 -0
  732. package/dist/backend/backend/src/types/v2/mission.types.d.ts.map +1 -0
  733. package/dist/backend/backend/src/types/v2/mission.types.js +416 -0
  734. package/dist/backend/backend/src/types/v2/mission.types.js.map +1 -0
  735. package/dist/backend/backend/src/types/v2/reconcile.types.d.ts +199 -0
  736. package/dist/backend/backend/src/types/v2/reconcile.types.d.ts.map +1 -0
  737. package/dist/backend/backend/src/types/v2/reconcile.types.js +121 -0
  738. package/dist/backend/backend/src/types/v2/reconcile.types.js.map +1 -0
  739. package/dist/backend/backend/src/types/v2/request.types.d.ts +188 -0
  740. package/dist/backend/backend/src/types/v2/request.types.d.ts.map +1 -0
  741. package/dist/backend/backend/src/types/v2/request.types.js +178 -0
  742. package/dist/backend/backend/src/types/v2/request.types.js.map +1 -0
  743. package/dist/backend/backend/src/types/v2/trigger.types.d.ts +185 -0
  744. package/dist/backend/backend/src/types/v2/trigger.types.d.ts.map +1 -0
  745. package/dist/backend/backend/src/types/v2/trigger.types.js +172 -0
  746. package/dist/backend/backend/src/types/v2/trigger.types.js.map +1 -0
  747. package/dist/backend/backend/src/types/v2/work-item.types.d.ts +323 -0
  748. package/dist/backend/backend/src/types/v2/work-item.types.d.ts.map +1 -0
  749. package/dist/backend/backend/src/types/v2/work-item.types.js +264 -0
  750. package/dist/backend/backend/src/types/v2/work-item.types.js.map +1 -0
  751. package/dist/backend/backend/src/types/v2/workspace.types.d.ts +157 -0
  752. package/dist/backend/backend/src/types/v2/workspace.types.d.ts.map +1 -0
  753. package/dist/backend/backend/src/types/v2/workspace.types.js +173 -0
  754. package/dist/backend/backend/src/types/v2/workspace.types.js.map +1 -0
  755. package/dist/backend/backend/src/types/v3/task-record.types.d.ts +98 -0
  756. package/dist/backend/backend/src/types/v3/task-record.types.d.ts.map +1 -0
  757. package/dist/backend/backend/src/types/v3/task-record.types.js +55 -0
  758. package/dist/backend/backend/src/types/v3/task-record.types.js.map +1 -0
  759. package/dist/backend/config/constants.d.ts +47 -0
  760. package/dist/backend/config/constants.d.ts.map +1 -1
  761. package/dist/backend/config/constants.js +49 -0
  762. package/dist/backend/config/constants.js.map +1 -1
  763. package/dist/cli/backend/src/constants.d.ts +5 -0
  764. package/dist/cli/backend/src/constants.d.ts.map +1 -1
  765. package/dist/cli/backend/src/constants.js +5 -0
  766. package/dist/cli/backend/src/constants.js.map +1 -1
  767. package/dist/cli/backend/src/services/ai/prompt-modules/prompt-module.interface.d.ts +47 -0
  768. package/dist/cli/backend/src/services/ai/prompt-modules/prompt-module.interface.d.ts.map +1 -1
  769. package/dist/cli/backend/src/services/ai/prompt-modules/prompt-module.interface.js.map +1 -1
  770. package/dist/cli/backend/src/services/core/logger.service.js +1 -1
  771. package/dist/cli/backend/src/services/core/logger.service.js.map +1 -1
  772. package/dist/cli/backend/src/services/knowledge/fts5-index.service.d.ts +118 -0
  773. package/dist/cli/backend/src/services/knowledge/fts5-index.service.d.ts.map +1 -0
  774. package/dist/cli/backend/src/services/knowledge/fts5-index.service.js +220 -0
  775. package/dist/cli/backend/src/services/knowledge/fts5-index.service.js.map +1 -0
  776. package/dist/cli/backend/src/services/knowledge/fts5-search-strategy.d.ts +56 -0
  777. package/dist/cli/backend/src/services/knowledge/fts5-search-strategy.d.ts.map +1 -0
  778. package/dist/cli/backend/src/services/knowledge/fts5-search-strategy.js +91 -0
  779. package/dist/cli/backend/src/services/knowledge/fts5-search-strategy.js.map +1 -0
  780. package/dist/cli/backend/src/services/knowledge/wiki-compiler.service.d.ts +115 -0
  781. package/dist/cli/backend/src/services/knowledge/wiki-compiler.service.d.ts.map +1 -0
  782. package/dist/cli/backend/src/services/knowledge/wiki-compiler.service.js +215 -0
  783. package/dist/cli/backend/src/services/knowledge/wiki-compiler.service.js.map +1 -0
  784. package/dist/cli/backend/src/services/memory/agent-memory.service.d.ts +11 -0
  785. package/dist/cli/backend/src/services/memory/agent-memory.service.d.ts.map +1 -1
  786. package/dist/cli/backend/src/services/memory/agent-memory.service.js +76 -11
  787. package/dist/cli/backend/src/services/memory/agent-memory.service.js.map +1 -1
  788. package/dist/cli/backend/src/services/memory/embedding-provider.d.ts +78 -0
  789. package/dist/cli/backend/src/services/memory/embedding-provider.d.ts.map +1 -0
  790. package/dist/cli/backend/src/services/memory/embedding-provider.js +179 -0
  791. package/dist/cli/backend/src/services/memory/embedding-provider.js.map +1 -0
  792. package/dist/cli/backend/src/services/memory/vector-store.service.d.ts +331 -0
  793. package/dist/cli/backend/src/services/memory/vector-store.service.d.ts.map +1 -0
  794. package/dist/cli/backend/src/services/memory/vector-store.service.js +814 -0
  795. package/dist/cli/backend/src/services/memory/vector-store.service.js.map +1 -0
  796. package/dist/cli/backend/src/services/task-pool/claim.service.d.ts +190 -0
  797. package/dist/cli/backend/src/services/task-pool/claim.service.d.ts.map +1 -0
  798. package/dist/cli/backend/src/services/task-pool/claim.service.js +354 -0
  799. package/dist/cli/backend/src/services/task-pool/claim.service.js.map +1 -0
  800. package/dist/cli/backend/src/services/task-pool/pool-storage.d.ts +146 -0
  801. package/dist/cli/backend/src/services/task-pool/pool-storage.d.ts.map +1 -0
  802. package/dist/cli/backend/src/services/task-pool/pool-storage.js +243 -0
  803. package/dist/cli/backend/src/services/task-pool/pool-storage.js.map +1 -0
  804. package/dist/cli/backend/src/services/task-pool/task-pool.service.d.ts +263 -0
  805. package/dist/cli/backend/src/services/task-pool/task-pool.service.d.ts.map +1 -0
  806. package/dist/cli/backend/src/services/task-pool/task-pool.service.js +605 -0
  807. package/dist/cli/backend/src/services/task-pool/task-pool.service.js.map +1 -0
  808. package/dist/cli/backend/src/types/index.d.ts +14 -0
  809. package/dist/cli/backend/src/types/index.d.ts.map +1 -1
  810. package/dist/cli/backend/src/types/index.js.map +1 -1
  811. package/dist/cli/backend/src/types/memory.types.d.ts +19 -0
  812. package/dist/cli/backend/src/types/memory.types.d.ts.map +1 -1
  813. package/dist/cli/backend/src/types/memory.types.js.map +1 -1
  814. package/dist/cli/backend/src/types/team-template.types.d.ts +220 -0
  815. package/dist/cli/backend/src/types/team-template.types.d.ts.map +1 -0
  816. package/dist/cli/backend/src/types/team-template.types.js +139 -0
  817. package/dist/cli/backend/src/types/team-template.types.js.map +1 -0
  818. package/dist/cli/backend/src/types/v2/claim.types.d.ts +143 -0
  819. package/dist/cli/backend/src/types/v2/claim.types.d.ts.map +1 -0
  820. package/dist/cli/backend/src/types/v2/claim.types.js +183 -0
  821. package/dist/cli/backend/src/types/v2/claim.types.js.map +1 -0
  822. package/dist/cli/backend/src/types/v2/work-item.types.d.ts +323 -0
  823. package/dist/cli/backend/src/types/v2/work-item.types.d.ts.map +1 -0
  824. package/dist/cli/backend/src/types/v2/work-item.types.js +271 -0
  825. package/dist/cli/backend/src/types/v2/work-item.types.js.map +1 -0
  826. package/dist/cli/config/constants.d.ts +47 -0
  827. package/dist/cli/config/constants.d.ts.map +1 -1
  828. package/dist/cli/config/constants.js +49 -0
  829. package/dist/cli/config/constants.js.map +1 -1
  830. package/frontend/dist/assets/index-e3de7a8c.css +33 -0
  831. package/frontend/dist/assets/index-f6bc685f.js +4924 -0
  832. package/frontend/dist/index.html +2 -2
  833. package/package.json +3 -1
  834. package/config/skills/agent/computer-use/lib/accessibility.sh +0 -292
  835. package/config/skills/agent/computer-use/lib/applescript.sh +0 -117
  836. package/config/skills/agent/computer-use/lib/discover.sh +0 -122
  837. package/config/skills/agent/computer-use/lib/playwright.sh +0 -153
  838. package/config/skills/agent/computer-use/lib/screenshot.sh +0 -61
  839. package/config/templates/cloud-deploy.json +0 -119
  840. package/config/templates/code-review-team/README.md +0 -176
  841. package/config/templates/code-review-team/team-config.json +0 -23
  842. package/config/templates/code-review-team.json +0 -62
  843. package/config/templates/content-generation-team/README.md +0 -128
  844. package/config/templates/content-generation-team/norms/publish-checklist.md +0 -64
  845. package/config/templates/content-generation-team/team-config.json +0 -28
  846. package/config/templates/content-generation-team.json +0 -67
  847. package/config/templates/dev-fullstack/norms/docker-deploy-cleanup.md +0 -28
  848. package/config/templates/dev-fullstack/template.json +0 -178
  849. package/config/templates/education-smb/README.md +0 -27
  850. package/config/templates/education-smb/goals.md +0 -16
  851. package/config/templates/education-smb/knowledge/docs/content-standards.md +0 -24
  852. package/config/templates/education-smb/knowledge/docs/education-industry-context.md +0 -13
  853. package/config/templates/education-smb/knowledge/index.json +0 -24
  854. package/config/templates/education-smb/learned-patterns.json +0 -16
  855. package/config/templates/education-smb/quality-gates.yaml +0 -66
  856. package/config/templates/education-smb/roles/analytics-specialist.md +0 -6
  857. package/config/templates/education-smb/roles/content-creator.md +0 -6
  858. package/config/templates/education-smb/roles/curriculum-designer.md +0 -6
  859. package/config/templates/education-smb/roles/engagement-manager.md +0 -6
  860. package/config/templates/education-smb/team.json +0 -40
  861. package/config/templates/education-smb/template.json +0 -35
  862. package/config/templates/education-smb/workflows/course-content-generation.yaml +0 -44
  863. package/config/templates/education-smb/workflows/reporting.yaml +0 -31
  864. package/config/templates/education-smb/workflows/student-communication.yaml +0 -44
  865. package/config/templates/education-smb/workflows.yaml +0 -40
  866. package/config/templates/insurance-smb/README.md +0 -28
  867. package/config/templates/insurance-smb/goals.md +0 -21
  868. package/config/templates/insurance-smb/knowledge/docs/compliance-checklist.md +0 -28
  869. package/config/templates/insurance-smb/knowledge/docs/insurance-industry-context.md +0 -23
  870. package/config/templates/insurance-smb/knowledge/index.json +0 -24
  871. package/config/templates/insurance-smb/learned-patterns.json +0 -16
  872. package/config/templates/insurance-smb/quality-gates.yaml +0 -54
  873. package/config/templates/insurance-smb/roles/claims-processor.md +0 -6
  874. package/config/templates/insurance-smb/roles/client-manager.md +0 -6
  875. package/config/templates/insurance-smb/roles/compliance-officer.md +0 -6
  876. package/config/templates/insurance-smb/roles/marketing-specialist.md +0 -6
  877. package/config/templates/insurance-smb/roles/policy-analyst.md +0 -6
  878. package/config/templates/insurance-smb/team.json +0 -48
  879. package/config/templates/insurance-smb/template.json +0 -35
  880. package/config/templates/insurance-smb/workflows/claims-processing.yaml +0 -48
  881. package/config/templates/insurance-smb/workflows.yaml +0 -43
  882. package/config/templates/marketing-team/README.md +0 -42
  883. package/config/templates/marketing-team/goals.md +0 -21
  884. package/config/templates/marketing-team/knowledge/docs/brand-voice-guide.md +0 -61
  885. package/config/templates/marketing-team/knowledge/docs/content-best-practices.md +0 -64
  886. package/config/templates/marketing-team/knowledge/index.json +0 -24
  887. package/config/templates/marketing-team/learned-patterns.json +0 -5
  888. package/config/templates/marketing-team/norms/brand-consistency.md +0 -40
  889. package/config/templates/marketing-team/norms/content-quality-checklist.md +0 -45
  890. package/config/templates/marketing-team/quality-gates.yaml +0 -47
  891. package/config/templates/marketing-team/roles/analyst.md +0 -63
  892. package/config/templates/marketing-team/roles/strategist.md +0 -26
  893. package/config/templates/marketing-team/roles/writer.md +0 -58
  894. package/config/templates/marketing-team/template.json +0 -90
  895. package/config/templates/marketing-team/workflows/weekly-content-cycle.yaml +0 -48
  896. package/config/templates/research-analysis/template.json +0 -133
  897. package/config/templates/security-audit-team.json +0 -67
  898. package/config/templates/social-media-ops/template.json +0 -129
  899. package/config/templates/social-media-ops-team/README.md +0 -145
  900. package/config/templates/social-media-ops-team/team-config.json +0 -21
  901. package/config/templates/social-media-ops-team.json +0 -67
  902. package/config/templates/video-production/template.json +0 -132
  903. package/dist/backend/backend/src/controllers/admin/admin.controller.d.ts +0 -69
  904. package/dist/backend/backend/src/controllers/admin/admin.controller.d.ts.map +0 -1
  905. package/dist/backend/backend/src/controllers/admin/admin.controller.js +0 -187
  906. package/dist/backend/backend/src/controllers/admin/admin.controller.js.map +0 -1
  907. package/dist/backend/backend/src/controllers/admin/admin.routes.d.ts +0 -22
  908. package/dist/backend/backend/src/controllers/admin/admin.routes.d.ts.map +0 -1
  909. package/dist/backend/backend/src/controllers/admin/admin.routes.js +0 -31
  910. package/dist/backend/backend/src/controllers/admin/admin.routes.js.map +0 -1
  911. package/dist/backend/backend/src/controllers/cloud/admin/admin-auth.middleware.d.ts +0 -23
  912. package/dist/backend/backend/src/controllers/cloud/admin/admin-auth.middleware.d.ts.map +0 -1
  913. package/dist/backend/backend/src/controllers/cloud/admin/admin-auth.middleware.js +0 -42
  914. package/dist/backend/backend/src/controllers/cloud/admin/admin-auth.middleware.js.map +0 -1
  915. package/dist/backend/backend/src/controllers/cloud/admin/admin.controller.d.ts +0 -56
  916. package/dist/backend/backend/src/controllers/cloud/admin/admin.controller.d.ts.map +0 -1
  917. package/dist/backend/backend/src/controllers/cloud/admin/admin.controller.js +0 -173
  918. package/dist/backend/backend/src/controllers/cloud/admin/admin.controller.js.map +0 -1
  919. package/dist/backend/backend/src/controllers/cloud/admin/admin.routes.d.ts +0 -22
  920. package/dist/backend/backend/src/controllers/cloud/admin/admin.routes.d.ts.map +0 -1
  921. package/dist/backend/backend/src/controllers/cloud/admin/admin.routes.js +0 -33
  922. package/dist/backend/backend/src/controllers/cloud/admin/admin.routes.js.map +0 -1
  923. package/dist/backend/backend/src/controllers/cloud/admin/index.d.ts +0 -7
  924. package/dist/backend/backend/src/controllers/cloud/admin/index.d.ts.map +0 -1
  925. package/dist/backend/backend/src/controllers/cloud/admin/index.js +0 -7
  926. package/dist/backend/backend/src/controllers/cloud/admin/index.js.map +0 -1
  927. package/dist/backend/backend/src/controllers/cloud/auth/auth.controller.d.ts +0 -81
  928. package/dist/backend/backend/src/controllers/cloud/auth/auth.controller.d.ts.map +0 -1
  929. package/dist/backend/backend/src/controllers/cloud/auth/auth.controller.js +0 -234
  930. package/dist/backend/backend/src/controllers/cloud/auth/auth.controller.js.map +0 -1
  931. package/dist/backend/backend/src/controllers/cloud/auth/auth.routes.d.ts +0 -25
  932. package/dist/backend/backend/src/controllers/cloud/auth/auth.routes.d.ts.map +0 -1
  933. package/dist/backend/backend/src/controllers/cloud/auth/auth.routes.js +0 -42
  934. package/dist/backend/backend/src/controllers/cloud/auth/auth.routes.js.map +0 -1
  935. package/dist/backend/backend/src/controllers/cloud/auth/google-auth.controller.d.ts +0 -40
  936. package/dist/backend/backend/src/controllers/cloud/auth/google-auth.controller.d.ts.map +0 -1
  937. package/dist/backend/backend/src/controllers/cloud/auth/google-auth.controller.js +0 -161
  938. package/dist/backend/backend/src/controllers/cloud/auth/google-auth.controller.js.map +0 -1
  939. package/dist/backend/backend/src/controllers/cloud/cloud-auth.controller.d.ts +0 -69
  940. package/dist/backend/backend/src/controllers/cloud/cloud-auth.controller.d.ts.map +0 -1
  941. package/dist/backend/backend/src/controllers/cloud/cloud-auth.controller.js +0 -165
  942. package/dist/backend/backend/src/controllers/cloud/cloud-auth.controller.js.map +0 -1
  943. package/dist/backend/backend/src/controllers/cloud/cloud-auth.routes.d.ts +0 -23
  944. package/dist/backend/backend/src/controllers/cloud/cloud-auth.routes.d.ts.map +0 -1
  945. package/dist/backend/backend/src/controllers/cloud/cloud-auth.routes.js +0 -32
  946. package/dist/backend/backend/src/controllers/cloud/cloud-auth.routes.js.map +0 -1
  947. package/dist/backend/backend/src/controllers/cloud/device.controller.d.ts +0 -34
  948. package/dist/backend/backend/src/controllers/cloud/device.controller.d.ts.map +0 -1
  949. package/dist/backend/backend/src/controllers/cloud/device.controller.js +0 -70
  950. package/dist/backend/backend/src/controllers/cloud/device.controller.js.map +0 -1
  951. package/dist/backend/backend/src/controllers/cloud/device.routes.d.ts +0 -23
  952. package/dist/backend/backend/src/controllers/cloud/device.routes.d.ts.map +0 -1
  953. package/dist/backend/backend/src/controllers/cloud/device.routes.js +0 -34
  954. package/dist/backend/backend/src/controllers/cloud/device.routes.js.map +0 -1
  955. package/dist/backend/backend/src/controllers/cloud/files/cloud-file.controller.d.ts +0 -42
  956. package/dist/backend/backend/src/controllers/cloud/files/cloud-file.controller.d.ts.map +0 -1
  957. package/dist/backend/backend/src/controllers/cloud/files/cloud-file.controller.js +0 -138
  958. package/dist/backend/backend/src/controllers/cloud/files/cloud-file.controller.js.map +0 -1
  959. package/dist/backend/backend/src/controllers/cloud/files/cloud-file.routes.d.ts +0 -23
  960. package/dist/backend/backend/src/controllers/cloud/files/cloud-file.routes.d.ts.map +0 -1
  961. package/dist/backend/backend/src/controllers/cloud/files/cloud-file.routes.js +0 -34
  962. package/dist/backend/backend/src/controllers/cloud/files/cloud-file.routes.js.map +0 -1
  963. package/dist/backend/backend/src/controllers/cloud/files/cloud-file.types.d.ts +0 -43
  964. package/dist/backend/backend/src/controllers/cloud/files/cloud-file.types.d.ts.map +0 -1
  965. package/dist/backend/backend/src/controllers/cloud/files/cloud-file.types.js +0 -9
  966. package/dist/backend/backend/src/controllers/cloud/files/cloud-file.types.js.map +0 -1
  967. package/dist/backend/backend/src/controllers/cloud/files/index.d.ts +0 -7
  968. package/dist/backend/backend/src/controllers/cloud/files/index.d.ts.map +0 -1
  969. package/dist/backend/backend/src/controllers/cloud/files/index.js +0 -7
  970. package/dist/backend/backend/src/controllers/cloud/files/index.js.map +0 -1
  971. package/dist/backend/backend/src/controllers/cloud/h5/h5-entry.controller.d.ts +0 -47
  972. package/dist/backend/backend/src/controllers/cloud/h5/h5-entry.controller.d.ts.map +0 -1
  973. package/dist/backend/backend/src/controllers/cloud/h5/h5-entry.controller.js +0 -131
  974. package/dist/backend/backend/src/controllers/cloud/h5/h5-entry.controller.js.map +0 -1
  975. package/dist/backend/backend/src/controllers/cloud/h5/h5-entry.routes.d.ts +0 -23
  976. package/dist/backend/backend/src/controllers/cloud/h5/h5-entry.routes.d.ts.map +0 -1
  977. package/dist/backend/backend/src/controllers/cloud/h5/h5-entry.routes.js +0 -30
  978. package/dist/backend/backend/src/controllers/cloud/h5/h5-entry.routes.js.map +0 -1
  979. package/dist/backend/backend/src/controllers/cloud/h5/h5-entry.types.d.ts +0 -81
  980. package/dist/backend/backend/src/controllers/cloud/h5/h5-entry.types.d.ts.map +0 -1
  981. package/dist/backend/backend/src/controllers/cloud/h5/h5-entry.types.js +0 -85
  982. package/dist/backend/backend/src/controllers/cloud/h5/h5-entry.types.js.map +0 -1
  983. package/dist/backend/backend/src/controllers/cloud/h5/index.d.ts +0 -7
  984. package/dist/backend/backend/src/controllers/cloud/h5/index.d.ts.map +0 -1
  985. package/dist/backend/backend/src/controllers/cloud/h5/index.js +0 -7
  986. package/dist/backend/backend/src/controllers/cloud/h5/index.js.map +0 -1
  987. package/dist/backend/backend/src/controllers/cloud/magic-moment/index.d.ts +0 -7
  988. package/dist/backend/backend/src/controllers/cloud/magic-moment/index.d.ts.map +0 -1
  989. package/dist/backend/backend/src/controllers/cloud/magic-moment/index.js +0 -7
  990. package/dist/backend/backend/src/controllers/cloud/magic-moment/index.js.map +0 -1
  991. package/dist/backend/backend/src/controllers/cloud/magic-moment/magic-moment.controller.d.ts +0 -45
  992. package/dist/backend/backend/src/controllers/cloud/magic-moment/magic-moment.controller.d.ts.map +0 -1
  993. package/dist/backend/backend/src/controllers/cloud/magic-moment/magic-moment.controller.js +0 -155
  994. package/dist/backend/backend/src/controllers/cloud/magic-moment/magic-moment.controller.js.map +0 -1
  995. package/dist/backend/backend/src/controllers/cloud/magic-moment/magic-moment.routes.d.ts +0 -25
  996. package/dist/backend/backend/src/controllers/cloud/magic-moment/magic-moment.routes.d.ts.map +0 -1
  997. package/dist/backend/backend/src/controllers/cloud/magic-moment/magic-moment.routes.js +0 -32
  998. package/dist/backend/backend/src/controllers/cloud/magic-moment/magic-moment.routes.js.map +0 -1
  999. package/dist/backend/backend/src/controllers/cloud/relay.controller.d.ts +0 -97
  1000. package/dist/backend/backend/src/controllers/cloud/relay.controller.d.ts.map +0 -1
  1001. package/dist/backend/backend/src/controllers/cloud/relay.controller.js +0 -317
  1002. package/dist/backend/backend/src/controllers/cloud/relay.controller.js.map +0 -1
  1003. package/dist/backend/backend/src/controllers/cloud/relay.routes.d.ts +0 -25
  1004. package/dist/backend/backend/src/controllers/cloud/relay.routes.d.ts.map +0 -1
  1005. package/dist/backend/backend/src/controllers/cloud/relay.routes.js +0 -35
  1006. package/dist/backend/backend/src/controllers/cloud/relay.routes.js.map +0 -1
  1007. package/dist/backend/backend/src/controllers/cloud/tasks/cloud-task.controller.d.ts +0 -49
  1008. package/dist/backend/backend/src/controllers/cloud/tasks/cloud-task.controller.d.ts.map +0 -1
  1009. package/dist/backend/backend/src/controllers/cloud/tasks/cloud-task.controller.js +0 -152
  1010. package/dist/backend/backend/src/controllers/cloud/tasks/cloud-task.controller.js.map +0 -1
  1011. package/dist/backend/backend/src/controllers/cloud/tasks/cloud-task.routes.d.ts +0 -24
  1012. package/dist/backend/backend/src/controllers/cloud/tasks/cloud-task.routes.d.ts.map +0 -1
  1013. package/dist/backend/backend/src/controllers/cloud/tasks/cloud-task.routes.js +0 -34
  1014. package/dist/backend/backend/src/controllers/cloud/tasks/cloud-task.routes.js.map +0 -1
  1015. package/dist/backend/backend/src/controllers/cloud/tasks/cloud-task.types.d.ts +0 -90
  1016. package/dist/backend/backend/src/controllers/cloud/tasks/cloud-task.types.d.ts.map +0 -1
  1017. package/dist/backend/backend/src/controllers/cloud/tasks/cloud-task.types.js +0 -48
  1018. package/dist/backend/backend/src/controllers/cloud/tasks/cloud-task.types.js.map +0 -1
  1019. package/dist/backend/backend/src/controllers/cloud/tasks/index.d.ts +0 -10
  1020. package/dist/backend/backend/src/controllers/cloud/tasks/index.d.ts.map +0 -1
  1021. package/dist/backend/backend/src/controllers/cloud/tasks/index.js +0 -10
  1022. package/dist/backend/backend/src/controllers/cloud/tasks/index.js.map +0 -1
  1023. package/dist/backend/backend/src/controllers/payment/index.d.ts +0 -7
  1024. package/dist/backend/backend/src/controllers/payment/index.d.ts.map +0 -1
  1025. package/dist/backend/backend/src/controllers/payment/index.js +0 -7
  1026. package/dist/backend/backend/src/controllers/payment/index.js.map +0 -1
  1027. package/dist/backend/backend/src/scripts/run-log-rotation.d.ts +0 -3
  1028. package/dist/backend/backend/src/scripts/run-log-rotation.d.ts.map +0 -1
  1029. package/dist/backend/backend/src/scripts/run-log-rotation.js +0 -31
  1030. package/dist/backend/backend/src/scripts/run-log-rotation.js.map +0 -1
  1031. package/dist/backend/backend/src/services/agent/openhands-runtime.service.d.ts +0 -70
  1032. package/dist/backend/backend/src/services/agent/openhands-runtime.service.d.ts.map +0 -1
  1033. package/dist/backend/backend/src/services/agent/openhands-runtime.service.js +0 -131
  1034. package/dist/backend/backend/src/services/agent/openhands-runtime.service.js.map +0 -1
  1035. package/dist/backend/backend/src/services/cloud/admin-seed.service.d.ts +0 -18
  1036. package/dist/backend/backend/src/services/cloud/admin-seed.service.d.ts.map +0 -1
  1037. package/dist/backend/backend/src/services/cloud/admin-seed.service.js +0 -50
  1038. package/dist/backend/backend/src/services/cloud/admin-seed.service.js.map +0 -1
  1039. package/dist/backend/backend/src/services/cloud/auth/auth.service.d.ts +0 -203
  1040. package/dist/backend/backend/src/services/cloud/auth/auth.service.d.ts.map +0 -1
  1041. package/dist/backend/backend/src/services/cloud/auth/auth.service.js +0 -494
  1042. package/dist/backend/backend/src/services/cloud/auth/auth.service.js.map +0 -1
  1043. package/dist/backend/backend/src/services/cloud/auth/auth.types.d.ts +0 -110
  1044. package/dist/backend/backend/src/services/cloud/auth/auth.types.d.ts.map +0 -1
  1045. package/dist/backend/backend/src/services/cloud/auth/auth.types.js +0 -54
  1046. package/dist/backend/backend/src/services/cloud/auth/auth.types.js.map +0 -1
  1047. package/dist/backend/backend/src/services/cloud/auth/jwt-auth.middleware.d.ts +0 -47
  1048. package/dist/backend/backend/src/services/cloud/auth/jwt-auth.middleware.d.ts.map +0 -1
  1049. package/dist/backend/backend/src/services/cloud/auth/jwt-auth.middleware.js +0 -116
  1050. package/dist/backend/backend/src/services/cloud/auth/jwt-auth.middleware.js.map +0 -1
  1051. package/dist/backend/backend/src/services/cloud/auth/require-user.middleware.d.ts +0 -25
  1052. package/dist/backend/backend/src/services/cloud/auth/require-user.middleware.d.ts.map +0 -1
  1053. package/dist/backend/backend/src/services/cloud/auth/require-user.middleware.js +0 -52
  1054. package/dist/backend/backend/src/services/cloud/auth/require-user.middleware.js.map +0 -1
  1055. package/dist/backend/backend/src/services/cloud/auth/supabase-auth.middleware.d.ts +0 -61
  1056. package/dist/backend/backend/src/services/cloud/auth/supabase-auth.middleware.d.ts.map +0 -1
  1057. package/dist/backend/backend/src/services/cloud/auth/supabase-auth.middleware.js +0 -203
  1058. package/dist/backend/backend/src/services/cloud/auth/supabase-auth.middleware.js.map +0 -1
  1059. package/dist/backend/backend/src/services/cloud/cloud-auth.service.d.ts +0 -136
  1060. package/dist/backend/backend/src/services/cloud/cloud-auth.service.d.ts.map +0 -1
  1061. package/dist/backend/backend/src/services/cloud/cloud-auth.service.js +0 -204
  1062. package/dist/backend/backend/src/services/cloud/cloud-auth.service.js.map +0 -1
  1063. package/dist/backend/backend/src/services/cloud/cloud-features.d.ts +0 -19
  1064. package/dist/backend/backend/src/services/cloud/cloud-features.d.ts.map +0 -1
  1065. package/dist/backend/backend/src/services/cloud/cloud-features.js +0 -23
  1066. package/dist/backend/backend/src/services/cloud/cloud-features.js.map +0 -1
  1067. package/dist/backend/backend/src/services/cloud/cloud-file.service.d.ts +0 -97
  1068. package/dist/backend/backend/src/services/cloud/cloud-file.service.d.ts.map +0 -1
  1069. package/dist/backend/backend/src/services/cloud/cloud-file.service.js +0 -184
  1070. package/dist/backend/backend/src/services/cloud/cloud-file.service.js.map +0 -1
  1071. package/dist/backend/backend/src/services/cloud/cloud-image-analysis.service.d.ts +0 -114
  1072. package/dist/backend/backend/src/services/cloud/cloud-image-analysis.service.d.ts.map +0 -1
  1073. package/dist/backend/backend/src/services/cloud/cloud-image-analysis.service.js +0 -196
  1074. package/dist/backend/backend/src/services/cloud/cloud-image-analysis.service.js.map +0 -1
  1075. package/dist/backend/backend/src/services/cloud/cloud-task-processor.service.d.ts +0 -118
  1076. package/dist/backend/backend/src/services/cloud/cloud-task-processor.service.d.ts.map +0 -1
  1077. package/dist/backend/backend/src/services/cloud/cloud-task-processor.service.js +0 -326
  1078. package/dist/backend/backend/src/services/cloud/cloud-task-processor.service.js.map +0 -1
  1079. package/dist/backend/backend/src/services/cloud/cloud-task.service.d.ts +0 -115
  1080. package/dist/backend/backend/src/services/cloud/cloud-task.service.d.ts.map +0 -1
  1081. package/dist/backend/backend/src/services/cloud/cloud-task.service.js +0 -265
  1082. package/dist/backend/backend/src/services/cloud/cloud-task.service.js.map +0 -1
  1083. package/dist/backend/backend/src/services/cloud/device-heartbeat.service.d.ts +0 -103
  1084. package/dist/backend/backend/src/services/cloud/device-heartbeat.service.d.ts.map +0 -1
  1085. package/dist/backend/backend/src/services/cloud/device-heartbeat.service.js +0 -143
  1086. package/dist/backend/backend/src/services/cloud/device-heartbeat.service.js.map +0 -1
  1087. package/dist/backend/backend/src/services/cloud/mongodb.service.d.ts +0 -45
  1088. package/dist/backend/backend/src/services/cloud/mongodb.service.d.ts.map +0 -1
  1089. package/dist/backend/backend/src/services/cloud/mongodb.service.js +0 -76
  1090. package/dist/backend/backend/src/services/cloud/mongodb.service.js.map +0 -1
  1091. package/dist/backend/backend/src/services/cloud/relay-client.service.d.ts +0 -245
  1092. package/dist/backend/backend/src/services/cloud/relay-client.service.d.ts.map +0 -1
  1093. package/dist/backend/backend/src/services/cloud/relay-client.service.js +0 -586
  1094. package/dist/backend/backend/src/services/cloud/relay-client.service.js.map +0 -1
  1095. package/dist/backend/backend/src/services/cloud/relay-crypto.service.d.ts +0 -87
  1096. package/dist/backend/backend/src/services/cloud/relay-crypto.service.d.ts.map +0 -1
  1097. package/dist/backend/backend/src/services/cloud/relay-crypto.service.js +0 -140
  1098. package/dist/backend/backend/src/services/cloud/relay-crypto.service.js.map +0 -1
  1099. package/dist/backend/backend/src/services/cloud/relay-server.service.d.ts +0 -181
  1100. package/dist/backend/backend/src/services/cloud/relay-server.service.d.ts.map +0 -1
  1101. package/dist/backend/backend/src/services/cloud/relay-server.service.js +0 -485
  1102. package/dist/backend/backend/src/services/cloud/relay-server.service.js.map +0 -1
  1103. package/dist/backend/backend/src/services/cloud/relay.types.d.ts +0 -195
  1104. package/dist/backend/backend/src/services/cloud/relay.types.d.ts.map +0 -1
  1105. package/dist/backend/backend/src/services/cloud/relay.types.js +0 -69
  1106. package/dist/backend/backend/src/services/cloud/relay.types.js.map +0 -1
  1107. package/dist/backend/backend/src/services/messaging/adapters/wechat-messenger.adapter.d.ts +0 -47
  1108. package/dist/backend/backend/src/services/messaging/adapters/wechat-messenger.adapter.d.ts.map +0 -1
  1109. package/dist/backend/backend/src/services/messaging/adapters/wechat-messenger.adapter.js +0 -69
  1110. package/dist/backend/backend/src/services/messaging/adapters/wechat-messenger.adapter.js.map +0 -1
  1111. package/dist/backend/backend/src/services/payment/magic-moment.service.d.ts +0 -69
  1112. package/dist/backend/backend/src/services/payment/magic-moment.service.d.ts.map +0 -1
  1113. package/dist/backend/backend/src/services/payment/magic-moment.service.js +0 -158
  1114. package/dist/backend/backend/src/services/payment/magic-moment.service.js.map +0 -1
  1115. package/dist/backend/backend/src/services/payment/magic-moment.types.d.ts +0 -95
  1116. package/dist/backend/backend/src/services/payment/magic-moment.types.d.ts.map +0 -1
  1117. package/dist/backend/backend/src/services/payment/magic-moment.types.js +0 -91
  1118. package/dist/backend/backend/src/services/payment/magic-moment.types.js.map +0 -1
  1119. package/dist/backend/backend/src/services/wechat/wechat-bridge.service.d.ts +0 -69
  1120. package/dist/backend/backend/src/services/wechat/wechat-bridge.service.d.ts.map +0 -1
  1121. package/dist/backend/backend/src/services/wechat/wechat-bridge.service.js +0 -133
  1122. package/dist/backend/backend/src/services/wechat/wechat-bridge.service.js.map +0 -1
  1123. package/dist/backend/backend/src/services/wechat/wechat.controller.d.ts +0 -51
  1124. package/dist/backend/backend/src/services/wechat/wechat.controller.d.ts.map +0 -1
  1125. package/dist/backend/backend/src/services/wechat/wechat.controller.js +0 -104
  1126. package/dist/backend/backend/src/services/wechat/wechat.controller.js.map +0 -1
  1127. package/dist/backend/backend/src/services/wechat/wechat.service.d.ts +0 -171
  1128. package/dist/backend/backend/src/services/wechat/wechat.service.d.ts.map +0 -1
  1129. package/dist/backend/backend/src/services/wechat/wechat.service.js +0 -411
  1130. package/dist/backend/backend/src/services/wechat/wechat.service.js.map +0 -1
  1131. package/frontend/dist/assets/index-a2db8a73.css +0 -33
  1132. package/frontend/dist/assets/index-d516a3cd.js +0 -5215
@@ -0,0 +1,1036 @@
1
+ /**
2
+ * L4 Evaluation Tasks — Runtime-Agnostic Collaboration & Self-Healing
3
+ *
4
+ * Redesigned to be runtime-agnostic: every runtime (Crewly Agent, Claude Code,
5
+ * Codex CLI, Gemini CLI) receives the same CONTEXT.md, the same bash skill
6
+ * shims, and the same fixtures. No Crewly-specific API calls in prompts.
7
+ *
8
+ * Task series:
9
+ * - **L4-C1..C5** — Collaboration tasks testing team coordination judgment
10
+ * - **L4-T1..T3** — Trap/resilience tasks testing self-healing ability
11
+ *
12
+ * Verification uses both native tool call records AND the tool log parser
13
+ * (`.crewly/.tool-log.jsonl`) written by skill shims, enabling universal
14
+ * scoring regardless of runtime.
15
+ *
16
+ * @module eval/tasks/l4-tasks
17
+ */
18
+ import * as fs from 'node:fs';
19
+ import * as path from 'node:path';
20
+ import { DEFAULT_TASK_TIMEOUT_MS, MAX_TASK_STEPS } from '../eval-types.js';
21
+ import { setupEvalWorkspace, DEFAULT_EVAL_TEAM, } from '../context-generator.js';
22
+ import { parseToolLog, getDelegationTargets, getMessageRecipients, mergeToolCallRecords, } from '../tool-log-parser.js';
23
+ // ---------------------------------------------------------------------------
24
+ // Helpers
25
+ // ---------------------------------------------------------------------------
26
+ /**
27
+ * Build an {@link EvalVerification} from standard and collaboration checks.
28
+ *
29
+ * @param checks - standard verification checks
30
+ * @param collaborationChecks - checks for D5 scoring
31
+ * @returns assembled verification result
32
+ */
33
+ function buildVerification(checks, collaborationChecks) {
34
+ const allChecks = [...checks, ...(collaborationChecks ?? [])];
35
+ return {
36
+ passed: allChecks.every((c) => c.passed),
37
+ checks,
38
+ collaborationChecks,
39
+ };
40
+ }
41
+ /**
42
+ * Check whether any tool call read a specific file (by substring match).
43
+ *
44
+ * Searches both native tool calls and skill log for file read activity.
45
+ *
46
+ * @param toolCalls - all recorded tool calls
47
+ * @param filePath - substring to match in tool args
48
+ * @returns true if any read-like tool call targeted the path
49
+ */
50
+ function readFile(toolCalls, filePath) {
51
+ return toolCalls.some((tc) => {
52
+ const name = tc.toolName.toLowerCase();
53
+ if (!name.includes('read') && !name.includes('cat') && !name.includes('bash'))
54
+ return false;
55
+ const argsStr = JSON.stringify(tc.args ?? {});
56
+ return argsStr.includes(filePath);
57
+ });
58
+ }
59
+ /**
60
+ * Check whether any tool call invoked a skill — via bash shim, skill log,
61
+ * OR native Crewly Agent API tool (e.g. `delegate_task` for "delegate-task").
62
+ *
63
+ * @param toolCalls - all recorded tool calls
64
+ * @param skillName - skill name (e.g. "delegate-task")
65
+ * @returns true if the skill was invoked by any method
66
+ */
67
+ function usedSkill(toolCalls, skillName) {
68
+ // Check skill log entries (prefixed with "skill:")
69
+ if (toolCalls.some((tc) => tc.toolName === `skill:${skillName}`))
70
+ return true;
71
+ // Check native API tool name (underscore variant: delegate-task → delegate_task)
72
+ const nativeName = skillName.replace(/-/g, '_');
73
+ if (toolCalls.some((tc) => tc.toolName === nativeName))
74
+ return true;
75
+ // Check native bash calls containing the skill script name
76
+ return toolCalls.some((tc) => {
77
+ if (!tc.toolName.toLowerCase().includes('bash'))
78
+ return false;
79
+ const argsStr = JSON.stringify(tc.args ?? {});
80
+ return argsStr.includes(`${skillName}.sh`) || argsStr.includes(skillName);
81
+ });
82
+ }
83
+ /**
84
+ * Merge native tool call records with skill log records from the workspace.
85
+ *
86
+ * @param workDir - eval workspace path
87
+ * @param toolCalls - native tool calls from the runtime adapter
88
+ * @returns combined tool call array
89
+ */
90
+ function getAllToolCalls(workDir, toolCalls) {
91
+ const skillRecords = parseToolLog(workDir);
92
+ return mergeToolCallRecords(toolCalls, skillRecords);
93
+ }
94
+ // ---------------------------------------------------------------------------
95
+ // L4-C1: Triage & Delegate Incoming Work
96
+ // ---------------------------------------------------------------------------
97
+ /**
98
+ * L4-C1: Analyze 3 pending tasks and delegate to available workers.
99
+ *
100
+ * Tests: reading team state, workload-aware delegation, handling
101
+ * inactive workers, multi-task triage decisions.
102
+ */
103
+ const L4_C1_TRIAGE_DELEGATE = {
104
+ id: 'L4-C1',
105
+ level: 'L4',
106
+ title: 'Triage & delegate incoming work',
107
+ prompt: 'Read CONTEXT.md for your team info and available skills. ' +
108
+ 'There are 3 new tasks in `.crewly/tasks/` (open status). ' +
109
+ 'Analyze each task, decide which team member should handle it based on ' +
110
+ 'their availability and role, and delegate using the delegate-task skill. ' +
111
+ 'One of your workers (Max) is inactive — handle that appropriately. ' +
112
+ 'Report your triage decisions via report-status.',
113
+ maxSteps: MAX_TASK_STEPS,
114
+ timeoutMs: DEFAULT_TASK_TIMEOUT_MS,
115
+ expectedTools: ['read_file', 'bash', 'write_file'],
116
+ tags: ['delegation', 'triage', 'collaboration'],
117
+ multiAgent: true,
118
+ async setup(workDir) {
119
+ await setupEvalWorkspace(workDir);
120
+ // 3 tasks with varying complexity
121
+ const tasks = [
122
+ {
123
+ id: 'task-frontend-bug',
124
+ title: 'Fix button alignment on dashboard',
125
+ priority: 'high',
126
+ description: 'The submit button is misaligned on mobile view. Fix CSS in Dashboard.tsx.',
127
+ },
128
+ {
129
+ id: 'task-backend-feature',
130
+ title: 'Add pagination to users API',
131
+ priority: 'medium',
132
+ description: 'Add limit/offset query params to GET /api/users. Update user.service.ts.',
133
+ },
134
+ {
135
+ id: 'task-write-tests',
136
+ title: 'Write tests for data.service.ts',
137
+ priority: 'low',
138
+ description: 'Add unit tests for createRecord and validateRecord in data.service.test.ts.',
139
+ },
140
+ ];
141
+ for (const t of tasks) {
142
+ fs.writeFileSync(path.join(workDir, '.crewly', 'tasks', `${t.id}.md`), `---\nid: ${t.id}\ntitle: ${t.title}\nstatus: open\nassignee: null\npriority: ${t.priority}\n---\n\n# ${t.title}\n\n${t.description}\n`);
143
+ }
144
+ },
145
+ async verify(workDir, toolCalls) {
146
+ const all = getAllToolCalls(workDir, toolCalls);
147
+ // Check delegation files exist
148
+ const taskDir = path.join(workDir, '.crewly', 'tasks');
149
+ const delegationFiles = fs.readdirSync(taskDir).filter((f) => f.includes('delegation'));
150
+ const hasDelegations = delegationFiles.length > 0;
151
+ // Check delegation targets — should be Leo (active), not Max (inactive)
152
+ const targets = getDelegationTargets(all);
153
+ const delegatedToActive = targets.length > 0 &&
154
+ targets.every((t) => !t.toLowerCase().includes('max'));
155
+ const delegatedToLeo = targets.some((t) => t.toLowerCase().includes('leo'));
156
+ // Check reports
157
+ const reportsDir = path.join(workDir, '.crewly', 'reports');
158
+ const hasReports = fs.existsSync(reportsDir) &&
159
+ fs.readdirSync(reportsDir).length > 0;
160
+ const checks = [
161
+ {
162
+ name: 'read_context',
163
+ passed: readFile(all, 'CONTEXT.md'),
164
+ message: 'Should read CONTEXT.md first',
165
+ },
166
+ {
167
+ name: 'read_task_files',
168
+ passed: readFile(all, 'task-'),
169
+ message: 'Should read task files',
170
+ },
171
+ {
172
+ name: 'used_delegate_skill',
173
+ passed: usedSkill(all, 'delegate-task'),
174
+ message: 'Should use delegate-task skill',
175
+ },
176
+ {
177
+ name: 'delegations_created',
178
+ passed: hasDelegations,
179
+ message: 'Should create delegation JSON files',
180
+ },
181
+ ];
182
+ const collaborationChecks = [
183
+ {
184
+ name: 'delegated_to_active_worker',
185
+ passed: delegatedToActive,
186
+ message: 'Should only delegate to active workers (not Max)',
187
+ },
188
+ {
189
+ name: 'delegated_to_leo',
190
+ passed: delegatedToLeo,
191
+ message: 'Should delegate to Leo (the active developer)',
192
+ },
193
+ {
194
+ name: 'report_status_called',
195
+ passed: hasReports || usedSkill(all, 'report-status'),
196
+ message: 'Should report triage decisions via report-status',
197
+ },
198
+ {
199
+ name: 'handled_inactive_worker',
200
+ passed: delegatedToActive,
201
+ message: 'Should handle Max being inactive (not assign to him)',
202
+ },
203
+ ];
204
+ return buildVerification(checks, collaborationChecks);
205
+ },
206
+ };
207
+ // ---------------------------------------------------------------------------
208
+ // L4-C2: Knowledge-Driven Implementation
209
+ // ---------------------------------------------------------------------------
210
+ /**
211
+ * L4-C2: Read project knowledge, apply patterns, record learnings.
212
+ *
213
+ * Tests: knowledge retrieval, pattern application, memory persistence.
214
+ */
215
+ const L4_C2_KNOWLEDGE_DRIVEN = {
216
+ id: 'L4-C2',
217
+ level: 'L4',
218
+ title: 'Knowledge-driven implementation',
219
+ prompt: 'Read CONTEXT.md. Check `.crewly/knowledge/project-patterns.md` for coding standards. ' +
220
+ 'Implement the task described in `.crewly/tasks/task-health-endpoint.md` following ' +
221
+ 'the documented patterns. After implementation, record what you learned in ' +
222
+ '`.crewly/knowledge/learnings.md`.',
223
+ maxSteps: MAX_TASK_STEPS,
224
+ timeoutMs: DEFAULT_TASK_TIMEOUT_MS,
225
+ expectedTools: ['read_file', 'write_file'],
226
+ tags: ['knowledge', 'pattern-application', 'collaboration'],
227
+ multiAgent: true,
228
+ async setup(workDir) {
229
+ await setupEvalWorkspace(workDir);
230
+ // Task file requesting a health endpoint
231
+ fs.writeFileSync(path.join(workDir, '.crewly', 'tasks', 'task-health-endpoint.md'), `---\nid: task-health\ntitle: Implement health endpoint\nstatus: open\nassignee: eval-tl-sam\npriority: high\n---\n\n# Implement Health Endpoint\n\nCreate a GET /health endpoint in \`src/controllers/health.controller.ts\`.\n\n## Requirements\n- Export a named function \`healthCheck\`\n- Accept (req, res) parameters\n- Return JSON: \`{ status: "ok", timestamp: Date.now() }\`\n- Follow patterns in \`.crewly/knowledge/project-patterns.md\`\n`);
232
+ },
233
+ async verify(workDir, toolCalls) {
234
+ const all = getAllToolCalls(workDir, toolCalls);
235
+ const controllerPath = path.join(workDir, 'src', 'controllers', 'health.controller.ts');
236
+ const controllerExists = fs.existsSync(controllerPath);
237
+ let hasNamedExport = false;
238
+ let hasReqRes = false;
239
+ let hasTryCatch = false;
240
+ let hasJsonResponse = false;
241
+ if (controllerExists) {
242
+ const content = fs.readFileSync(controllerPath, 'utf-8');
243
+ hasNamedExport = /export\s+(async\s+)?function/.test(content);
244
+ hasReqRes = content.includes('req') && content.includes('res');
245
+ hasTryCatch = content.includes('try') && content.includes('catch');
246
+ hasJsonResponse = content.includes('.json(') || content.includes('json');
247
+ }
248
+ const learningsPath = path.join(workDir, '.crewly', 'knowledge', 'learnings.md');
249
+ const learningsExists = fs.existsSync(learningsPath);
250
+ let learningsHasContent = false;
251
+ if (learningsExists) {
252
+ const content = fs.readFileSync(learningsPath, 'utf-8');
253
+ learningsHasContent = content.length > 50;
254
+ }
255
+ const checks = [
256
+ {
257
+ name: 'read_patterns',
258
+ passed: readFile(all, 'project-patterns'),
259
+ message: 'Should read patterns documentation before coding',
260
+ },
261
+ {
262
+ name: 'controller_created',
263
+ passed: controllerExists,
264
+ message: 'health.controller.ts should be created',
265
+ },
266
+ {
267
+ name: 'follows_named_export',
268
+ passed: hasNamedExport,
269
+ message: 'Should use named function export per pattern',
270
+ },
271
+ {
272
+ name: 'follows_req_res',
273
+ passed: hasReqRes,
274
+ message: 'Should accept req/res parameters per pattern',
275
+ },
276
+ ];
277
+ const collaborationChecks = [
278
+ {
279
+ name: 'follows_try_catch',
280
+ passed: hasTryCatch,
281
+ message: 'Should use try/catch per documented pattern',
282
+ },
283
+ {
284
+ name: 'follows_json_response',
285
+ passed: hasJsonResponse,
286
+ message: 'Should return JSON response per pattern',
287
+ },
288
+ {
289
+ name: 'persisted_learnings',
290
+ passed: learningsExists && learningsHasContent,
291
+ message: 'Should create learnings.md with meaningful content (>50 chars)',
292
+ },
293
+ ];
294
+ return buildVerification(checks, collaborationChecks);
295
+ },
296
+ };
297
+ // ---------------------------------------------------------------------------
298
+ // L4-C3: Fault Detection & Recovery
299
+ // ---------------------------------------------------------------------------
300
+ /**
301
+ * L4-C3: Detect an inactive worker with an in-progress task, recover.
302
+ *
303
+ * Tests: state reading, failure detection, reassignment, communication.
304
+ */
305
+ const L4_C3_FAULT_RECOVERY = {
306
+ id: 'L4-C3',
307
+ level: 'L4',
308
+ title: 'Fault detection & recovery',
309
+ prompt: 'Read CONTEXT.md. Worker Max was assigned to task-001 but has gone inactive. ' +
310
+ 'Investigate the situation: check team status, read the stuck task, and execute ' +
311
+ 'a recovery plan using the available skills. Ensure the work is not lost.',
312
+ maxSteps: MAX_TASK_STEPS,
313
+ timeoutMs: DEFAULT_TASK_TIMEOUT_MS,
314
+ expectedTools: ['read_file', 'bash', 'write_file'],
315
+ tags: ['fault-recovery', 'resilience', 'collaboration'],
316
+ multiAgent: true,
317
+ async setup(workDir) {
318
+ await setupEvalWorkspace(workDir);
319
+ // task-001 assigned to Max (inactive), status: in_progress
320
+ fs.writeFileSync(path.join(workDir, '.crewly', 'tasks', 'task-001.md'), `---\nid: task-001\ntitle: Implement user authentication\nstatus: in_progress\nassignee: eval-dev-max\npriority: high\n---\n\n# Implement User Authentication\n\nAdd JWT-based auth to the API. Max started this but went inactive.\n\n## Partial Progress\n- Created auth.service.ts skeleton\n- JWT token generation function stubbed\n`);
321
+ // Max's partial work
322
+ fs.writeFileSync(path.join(workDir, 'src', 'services', 'auth.service.ts'), `/**\n * Authentication service — PARTIAL IMPLEMENTATION by Max\n * Status: incomplete, worker went inactive\n */\n\nexport interface AuthToken {\n token: string;\n expiresAt: number;\n}\n\n// TODO: implement JWT signing\nexport function generateToken(userId: string): AuthToken {\n throw new Error('Not implemented');\n}\n`);
323
+ },
324
+ async verify(workDir, toolCalls) {
325
+ const all = getAllToolCalls(workDir, toolCalls);
326
+ // Check if agent detected Max is inactive
327
+ const readTeamConfig = readFile(all, 'team-config') ||
328
+ usedSkill(all, 'get-team-status');
329
+ // Check recovery actions
330
+ const usedHandleFailure = usedSkill(all, 'handle-failure');
331
+ const usedDelegate = usedSkill(all, 'delegate-task');
332
+ const recoveryAction = usedHandleFailure || usedDelegate;
333
+ // Check reassignment — should go to Leo
334
+ const targets = getDelegationTargets(all);
335
+ const reassignedToLeo = targets.some((t) => t.toLowerCase().includes('leo'));
336
+ // Check communication
337
+ const sentMessage = usedSkill(all, 'send-message');
338
+ const recipients = getMessageRecipients(all);
339
+ const messagedLeo = recipients.some((r) => r.toLowerCase().includes('leo'));
340
+ // Check partial work preserved
341
+ const authServicePath = path.join(workDir, 'src', 'services', 'auth.service.ts');
342
+ const partialWorkPreserved = fs.existsSync(authServicePath);
343
+ const checks = [
344
+ {
345
+ name: 'read_context',
346
+ passed: readFile(all, 'CONTEXT.md'),
347
+ message: 'Should read CONTEXT.md',
348
+ },
349
+ {
350
+ name: 'detected_inactive_worker',
351
+ passed: readTeamConfig,
352
+ message: 'Should check team status to detect Max is inactive',
353
+ },
354
+ {
355
+ name: 'read_stuck_task',
356
+ passed: readFile(all, 'task-001'),
357
+ message: 'Should read the stuck task',
358
+ },
359
+ ];
360
+ const collaborationChecks = [
361
+ {
362
+ name: 'recovery_action_taken',
363
+ passed: recoveryAction,
364
+ message: 'Should use handle-failure or delegate-task for recovery',
365
+ },
366
+ {
367
+ name: 'reassigned_to_leo',
368
+ passed: reassignedToLeo,
369
+ message: 'Should reassign to Leo (the active worker)',
370
+ },
371
+ {
372
+ name: 'preserved_partial_work',
373
+ passed: partialWorkPreserved,
374
+ message: 'Should not delete Max\'s partial implementation',
375
+ },
376
+ {
377
+ name: 'communicated_with_leo',
378
+ passed: sentMessage || messagedLeo,
379
+ message: 'Should send message to Leo about the reassignment',
380
+ },
381
+ ];
382
+ return buildVerification(checks, collaborationChecks);
383
+ },
384
+ };
385
+ // ---------------------------------------------------------------------------
386
+ // L4-C4: Multi-File Coordinated Feature
387
+ // ---------------------------------------------------------------------------
388
+ /**
389
+ * L4-C4: Implement a complete feature across service, controller, and test,
390
+ * then delegate a code review.
391
+ *
392
+ * Tests: pattern reading, multi-file consistency, cross-file imports, delegation.
393
+ */
394
+ const L4_C4_COORDINATED_FEATURE = {
395
+ id: 'L4-C4',
396
+ level: 'L4',
397
+ title: 'Multi-file coordinated feature',
398
+ prompt: 'Read CONTEXT.md. Read the existing `src/services/data.service.ts` to understand code patterns. ' +
399
+ 'Implement a complete "user" feature following the same patterns: ' +
400
+ '1. Create src/services/user.service.ts with UserRecord interface, createUser, and validateUser functions. ' +
401
+ '2. Create src/controllers/user.controller.ts that imports and uses the user service. ' +
402
+ '3. Create src/services/user.service.test.ts with tests for both functions. ' +
403
+ 'All files must be consistent with each other (imports match exports, types align). ' +
404
+ 'Then delegate a code review of your work to Leo using the delegate-task skill.',
405
+ maxSteps: MAX_TASK_STEPS,
406
+ timeoutMs: DEFAULT_TASK_TIMEOUT_MS,
407
+ expectedTools: ['read_file', 'write_file', 'bash'],
408
+ tags: ['multi-file', 'feature', 'coordination', 'collaboration'],
409
+ multiAgent: true,
410
+ async setup(workDir) {
411
+ await setupEvalWorkspace(workDir);
412
+ },
413
+ async verify(workDir, toolCalls) {
414
+ const all = getAllToolCalls(workDir, toolCalls);
415
+ const servicePath = path.join(workDir, 'src', 'services', 'user.service.ts');
416
+ const controllerPath = path.join(workDir, 'src', 'controllers', 'user.controller.ts');
417
+ const testPath = path.join(workDir, 'src', 'services', 'user.service.test.ts');
418
+ const serviceExists = fs.existsSync(servicePath);
419
+ const controllerExists = fs.existsSync(controllerPath);
420
+ const testExists = fs.existsSync(testPath);
421
+ let hasInterface = false;
422
+ let hasCreate = false;
423
+ let hasValidate = false;
424
+ let controllerImportsService = false;
425
+ let testImportsService = false;
426
+ if (serviceExists) {
427
+ const content = fs.readFileSync(servicePath, 'utf-8');
428
+ hasInterface = content.includes('UserRecord') || content.includes('interface');
429
+ hasCreate = content.includes('createUser');
430
+ hasValidate = content.includes('validateUser') || content.includes('validate');
431
+ }
432
+ if (controllerExists) {
433
+ const content = fs.readFileSync(controllerPath, 'utf-8');
434
+ controllerImportsService = content.includes('user.service') || content.includes('user-service');
435
+ }
436
+ if (testExists) {
437
+ const content = fs.readFileSync(testPath, 'utf-8');
438
+ testImportsService = content.includes('user.service') ||
439
+ content.includes('createUser') ||
440
+ content.includes('validateUser');
441
+ }
442
+ // Check delegation for code review
443
+ const delegatedReview = usedSkill(all, 'delegate-task');
444
+ const targets = getDelegationTargets(all);
445
+ const delegatedToLeo = targets.some((t) => t.toLowerCase().includes('leo'));
446
+ const checks = [
447
+ {
448
+ name: 'read_existing_pattern',
449
+ passed: readFile(all, 'data.service'),
450
+ message: 'Should read data.service.ts for patterns',
451
+ },
452
+ {
453
+ name: 'service_created',
454
+ passed: serviceExists,
455
+ message: 'user.service.ts should be created',
456
+ },
457
+ {
458
+ name: 'controller_created',
459
+ passed: controllerExists,
460
+ message: 'user.controller.ts should be created',
461
+ },
462
+ {
463
+ name: 'test_created',
464
+ passed: testExists,
465
+ message: 'user.service.test.ts should be created',
466
+ },
467
+ ];
468
+ const collaborationChecks = [
469
+ {
470
+ name: 'has_interface',
471
+ passed: hasInterface,
472
+ message: 'Service should define UserRecord interface',
473
+ },
474
+ {
475
+ name: 'has_create_function',
476
+ passed: hasCreate,
477
+ message: 'Service should export createUser function',
478
+ },
479
+ {
480
+ name: 'has_validate_function',
481
+ passed: hasValidate,
482
+ message: 'Service should export validateUser function',
483
+ },
484
+ {
485
+ name: 'cross_file_consistency',
486
+ passed: controllerImportsService && testImportsService,
487
+ message: 'Controller and test should import from user service',
488
+ },
489
+ {
490
+ name: 'delegated_review_to_leo',
491
+ passed: delegatedReview && delegatedToLeo,
492
+ message: 'Should delegate code review to Leo via delegate-task',
493
+ },
494
+ ];
495
+ return buildVerification(checks, collaborationChecks);
496
+ },
497
+ };
498
+ // ---------------------------------------------------------------------------
499
+ // L4-C5: Team Health Assessment & Reporting
500
+ // ---------------------------------------------------------------------------
501
+ /**
502
+ * L4-C5: Analyze team health, identify problems, produce structured report.
503
+ *
504
+ * Tests: status reading, analytical reasoning, structured output, recommendations.
505
+ */
506
+ const L4_C5_TEAM_HEALTH = {
507
+ id: 'L4-C5',
508
+ level: 'L4',
509
+ title: 'Team health assessment & reporting',
510
+ prompt: 'Read CONTEXT.md. Analyze the current state of your team and project. ' +
511
+ 'Check team member statuses, review all pending tasks, and produce a ' +
512
+ 'comprehensive health report at `.crewly/reports/team-health.json`. ' +
513
+ 'Use get-team-status to confirm live statuses. Make actionable recommendations.',
514
+ maxSteps: MAX_TASK_STEPS,
515
+ timeoutMs: DEFAULT_TASK_TIMEOUT_MS,
516
+ expectedTools: ['read_file', 'write_file', 'bash'],
517
+ tags: ['health-check', 'monitoring', 'reporting', 'collaboration'],
518
+ multiAgent: true,
519
+ async setup(workDir) {
520
+ await setupEvalWorkspace(workDir);
521
+ // Add a mix of tasks — one stale
522
+ const staleTime = new Date(Date.now() - 3 * 60 * 60 * 1000).toISOString();
523
+ fs.writeFileSync(path.join(workDir, '.crewly', 'tasks', 'task-stale.md'), `---\nid: task-stale\ntitle: Fix login bug\nstatus: in_progress\nassignee: eval-dev-max\npriority: high\nupdatedAt: ${staleTime}\n---\n\n# Fix Login Bug\n\nStarted 3 hours ago but no progress. Assigned to Max who is now inactive.\n`);
524
+ fs.writeFileSync(path.join(workDir, '.crewly', 'tasks', 'task-open-1.md'), `---\nid: task-open-1\ntitle: Add search feature\nstatus: open\nassignee: null\npriority: medium\n---\n\n# Add Search Feature\n\nUnassigned task waiting for delegation.\n`);
525
+ },
526
+ async verify(workDir, toolCalls) {
527
+ const all = getAllToolCalls(workDir, toolCalls);
528
+ // Check get-team-status was used
529
+ const usedGetStatus = usedSkill(all, 'get-team-status');
530
+ // Check report file
531
+ const reportPath = path.join(workDir, '.crewly', 'reports', 'team-health.json');
532
+ const reportExists = fs.existsSync(reportPath);
533
+ let validJson = false;
534
+ let hasActiveList = false;
535
+ let hasInactiveList = false;
536
+ let identifiedMaxInactive = false;
537
+ let hasRecommendations = false;
538
+ let hasHealthStatus = false;
539
+ let identifiedStaleTasks = false;
540
+ if (reportExists) {
541
+ try {
542
+ const report = JSON.parse(fs.readFileSync(reportPath, 'utf-8'));
543
+ validJson = true;
544
+ hasActiveList = Array.isArray(report.activeAgents) && report.activeAgents.length > 0;
545
+ hasInactiveList = Array.isArray(report.inactiveAgents) && report.inactiveAgents.length > 0;
546
+ identifiedMaxInactive = JSON.stringify(report.inactiveAgents ?? []).toLowerCase().includes('max');
547
+ hasRecommendations = Array.isArray(report.recommendations) && report.recommendations.length > 0;
548
+ hasHealthStatus = typeof report.overallHealth === 'string' && report.overallHealth.length > 0;
549
+ // Check if stale tasks identified
550
+ const reportStr = JSON.stringify(report).toLowerCase();
551
+ identifiedStaleTasks = reportStr.includes('stale') || reportStr.includes('stuck') ||
552
+ reportStr.includes('3 hour') || reportStr.includes('login');
553
+ }
554
+ catch { /* invalid JSON */ }
555
+ }
556
+ const checks = [
557
+ {
558
+ name: 'read_context',
559
+ passed: readFile(all, 'CONTEXT.md'),
560
+ message: 'Should read CONTEXT.md',
561
+ },
562
+ {
563
+ name: 'used_get_team_status',
564
+ passed: usedGetStatus,
565
+ message: 'Should use get-team-status skill',
566
+ },
567
+ {
568
+ name: 'report_created',
569
+ passed: reportExists,
570
+ message: 'team-health.json should be created',
571
+ },
572
+ {
573
+ name: 'valid_json_report',
574
+ passed: validJson,
575
+ message: 'Report should be valid JSON',
576
+ },
577
+ ];
578
+ const collaborationChecks = [
579
+ {
580
+ name: 'identified_inactive_member',
581
+ passed: identifiedMaxInactive,
582
+ message: 'Should identify Max as inactive',
583
+ },
584
+ {
585
+ name: 'identified_stale_tasks',
586
+ passed: identifiedStaleTasks,
587
+ message: 'Should identify stale/stuck tasks',
588
+ },
589
+ {
590
+ name: 'actionable_recommendations',
591
+ passed: hasRecommendations,
592
+ message: 'Should provide actionable recommendations',
593
+ },
594
+ {
595
+ name: 'overall_health_assessment',
596
+ passed: hasHealthStatus,
597
+ message: 'Should include overall health assessment',
598
+ },
599
+ ];
600
+ return buildVerification(checks, collaborationChecks);
601
+ },
602
+ };
603
+ // ---------------------------------------------------------------------------
604
+ // L4-T1: Broken Project Structure (Trap)
605
+ // ---------------------------------------------------------------------------
606
+ /**
607
+ * L4-T1: The prompt says `src/` but the actual code is in `source/`.
608
+ *
609
+ * The agent must discover the non-standard structure and adapt.
610
+ * This is NOT mentioned in the prompt — it's a trap.
611
+ */
612
+ const L4_T1_BROKEN_STRUCTURE = {
613
+ id: 'L4-T1',
614
+ level: 'L4',
615
+ title: 'Broken project structure (trap)',
616
+ prompt: 'Read CONTEXT.md. The team needs you to add a logging utility to this project. ' +
617
+ 'Create `src/utils/logger.ts` with a structured logger (log, warn, error methods), ' +
618
+ 'and `src/utils/logger.test.ts` with tests. Then run `npm test` to verify.',
619
+ maxSteps: MAX_TASK_STEPS,
620
+ timeoutMs: DEFAULT_TASK_TIMEOUT_MS,
621
+ expectedTools: ['read_file', 'write_file', 'bash'],
622
+ tags: ['trap', 'self-healing', 'resilience'],
623
+ multiAgent: true,
624
+ async setup(workDir) {
625
+ // Use custom setup — the trap is `source/` instead of `src/`
626
+ await setupEvalWorkspace(workDir, DEFAULT_EVAL_TEAM, { skipProjectFiles: true });
627
+ // Create `source/` directory (not `src/`)
628
+ fs.mkdirSync(path.join(workDir, 'source', 'services'), { recursive: true });
629
+ fs.mkdirSync(path.join(workDir, 'source', 'utils'), { recursive: true });
630
+ // Existing code in source/ (not src/)
631
+ fs.writeFileSync(path.join(workDir, 'source', 'services', 'data.service.ts'), `export function getData(): string[] {\n return ['item1', 'item2'];\n}\n`);
632
+ fs.writeFileSync(path.join(workDir, 'source', 'index.ts'), `export { getData } from './services/data.service.js';\n`);
633
+ // package.json references source/ not src/
634
+ fs.writeFileSync(path.join(workDir, 'package.json'), JSON.stringify({
635
+ name: 'eval-project',
636
+ version: '1.0.0',
637
+ type: 'module',
638
+ main: 'dist/index.js',
639
+ scripts: {
640
+ build: 'tsc --noEmit',
641
+ test: 'find source -name "*.test.ts" -exec echo "PASS:" {} \\; && echo "All tests passed" && exit 0',
642
+ },
643
+ }, null, 2));
644
+ // tsconfig points to source/
645
+ fs.writeFileSync(path.join(workDir, 'tsconfig.json'), JSON.stringify({
646
+ compilerOptions: {
647
+ target: 'ES2022',
648
+ module: 'ESNext',
649
+ moduleResolution: 'bundler',
650
+ strict: true,
651
+ outDir: './dist',
652
+ rootDir: './source',
653
+ },
654
+ include: ['source/**/*.ts'],
655
+ }, null, 2));
656
+ },
657
+ async verify(workDir, toolCalls) {
658
+ const all = getAllToolCalls(workDir, toolCalls);
659
+ // The agent should discover source/ instead of src/
660
+ // Either: (a) created in source/ to match project, or (b) fixed project to use src/
661
+ const loggerInSource = fs.existsSync(path.join(workDir, 'source', 'utils', 'logger.ts'));
662
+ const loggerInSrc = fs.existsSync(path.join(workDir, 'src', 'utils', 'logger.ts'));
663
+ const loggerCreated = loggerInSource || loggerInSrc;
664
+ const testInSource = fs.existsSync(path.join(workDir, 'source', 'utils', 'logger.test.ts'));
665
+ const testInSrc = fs.existsSync(path.join(workDir, 'src', 'utils', 'logger.test.ts'));
666
+ const testCreated = testInSource || testInSrc;
667
+ // Did agent discover the discrepancy?
668
+ const discoveredStructure = readFile(all, 'package.json') ||
669
+ readFile(all, 'tsconfig.json') ||
670
+ readFile(all, 'source/');
671
+ // If created in src/, check if project was fixed too
672
+ let adaptedCorrectly = false;
673
+ if (loggerInSource) {
674
+ // Adapted to existing structure — correct
675
+ adaptedCorrectly = true;
676
+ }
677
+ else if (loggerInSrc) {
678
+ // Created in src/ — only correct if tsconfig was updated too
679
+ const tsconfig = JSON.parse(fs.readFileSync(path.join(workDir, 'tsconfig.json'), 'utf-8'));
680
+ adaptedCorrectly = tsconfig.include?.some((p) => p.includes('src'));
681
+ }
682
+ // Check logger has required methods
683
+ let hasLogMethods = false;
684
+ const loggerPath = loggerInSource
685
+ ? path.join(workDir, 'source', 'utils', 'logger.ts')
686
+ : path.join(workDir, 'src', 'utils', 'logger.ts');
687
+ if (fs.existsSync(loggerPath)) {
688
+ const content = fs.readFileSync(loggerPath, 'utf-8');
689
+ hasLogMethods = content.includes('log') && content.includes('error');
690
+ }
691
+ // Check if npm test was attempted
692
+ const attemptedTest = all.some((tc) => {
693
+ const argsStr = JSON.stringify(tc.args ?? {});
694
+ return argsStr.includes('npm test') || argsStr.includes('npm run test');
695
+ });
696
+ const checks = [
697
+ {
698
+ name: 'logger_created',
699
+ passed: loggerCreated,
700
+ message: 'Logger file should be created',
701
+ },
702
+ {
703
+ name: 'test_created',
704
+ passed: testCreated,
705
+ message: 'Logger test file should be created',
706
+ },
707
+ {
708
+ name: 'has_log_methods',
709
+ passed: hasLogMethods,
710
+ message: 'Logger should have log and error methods',
711
+ },
712
+ ];
713
+ // Self-healing checks go into collaborationChecks — scored via D5/D6
714
+ const collaborationChecks = [
715
+ {
716
+ name: 'discovered_structure_discrepancy',
717
+ passed: discoveredStructure,
718
+ message: 'Should discover source/ vs src/ discrepancy (self-healing)',
719
+ },
720
+ {
721
+ name: 'adapted_to_correct_location',
722
+ passed: adaptedCorrectly,
723
+ message: 'Should place files in correct location or fix project config',
724
+ },
725
+ {
726
+ name: 'attempted_npm_test',
727
+ passed: attemptedTest,
728
+ message: 'Should attempt to run npm test to verify',
729
+ },
730
+ ];
731
+ return buildVerification(checks, collaborationChecks);
732
+ },
733
+ };
734
+ // ---------------------------------------------------------------------------
735
+ // L4-T2: Missing Dependencies & Broken Build (Trap)
736
+ // ---------------------------------------------------------------------------
737
+ /**
738
+ * L4-T2: Build is broken with multiple hidden issues.
739
+ *
740
+ * The agent must investigate, diagnose, and fix without being told what's wrong.
741
+ */
742
+ const L4_T2_BROKEN_BUILD = {
743
+ id: 'L4-T2',
744
+ level: 'L4',
745
+ title: 'Missing dependencies & broken build (trap)',
746
+ prompt: 'Read CONTEXT.md. A worker reported that the build is broken. ' +
747
+ 'Investigate, fix the issues, and verify the build passes. ' +
748
+ 'Then report the root causes via report-status.',
749
+ maxSteps: MAX_TASK_STEPS,
750
+ timeoutMs: DEFAULT_TASK_TIMEOUT_MS,
751
+ expectedTools: ['read_file', 'write_file', 'bash', 'edit_file'],
752
+ tags: ['trap', 'self-healing', 'debugging'],
753
+ multiAgent: true,
754
+ async setup(workDir) {
755
+ await setupEvalWorkspace(workDir, DEFAULT_EVAL_TEAM, { skipProjectFiles: true });
756
+ // Source files with intentional problems
757
+ fs.mkdirSync(path.join(workDir, 'src', 'services'), { recursive: true });
758
+ fs.mkdirSync(path.join(workDir, 'src', 'controllers'), { recursive: true });
759
+ // Problem 1: file imports from non-existent module
760
+ fs.writeFileSync(path.join(workDir, 'src', 'services', 'user.service.ts'), `import { hashPassword } from './missing-module.js';\n\nexport interface User {\n id: string;\n name: string;\n email: string;\n}\n\nexport function createUser(name: string, email: string): User {\n return { id: String(Date.now()), name, email };\n}\n\nexport function validateEmail(email: any): boolean {\n return email.includes('@');\n}\n`);
761
+ // Problem 2: uses `any` with strict mode on
762
+ fs.writeFileSync(path.join(workDir, 'src', 'controllers', 'user.controller.ts'), `import { createUser, validateEmail } from '../services/user.service.js';\n\nexport function handleCreateUser(req: any, res: any): void {\n try {\n const { name, email } = req.body;\n if (!validateEmail(email)) {\n res.status(400).json({ error: 'Invalid email' });\n return;\n }\n const user = createUser(name, email);\n res.json(user);\n } catch (err) {\n res.status(500).json({ error: 'Internal error' });\n }\n}\n`);
763
+ // Problem 3: circular import
764
+ fs.writeFileSync(path.join(workDir, 'src', 'index.ts'), `import { handleCreateUser } from './controllers/user.controller.js';\nimport { createUser } from './services/user.service.js';\n\nexport { handleCreateUser, createUser };\n`);
765
+ // package.json — no node_modules
766
+ fs.writeFileSync(path.join(workDir, 'package.json'), JSON.stringify({
767
+ name: 'eval-broken-build',
768
+ version: '1.0.0',
769
+ type: 'module',
770
+ dependencies: {
771
+ 'express': '4.21.0',
772
+ 'zod': '3.24.0',
773
+ },
774
+ scripts: {
775
+ build: 'tsc --noEmit',
776
+ test: 'echo "tests pass" && exit 0',
777
+ },
778
+ }, null, 2));
779
+ // tsconfig with strict: true
780
+ fs.writeFileSync(path.join(workDir, 'tsconfig.json'), JSON.stringify({
781
+ compilerOptions: {
782
+ target: 'ES2022',
783
+ module: 'ESNext',
784
+ moduleResolution: 'bundler',
785
+ strict: true,
786
+ noEmit: true,
787
+ esModuleInterop: true,
788
+ skipLibCheck: true,
789
+ },
790
+ include: ['src/**/*.ts'],
791
+ }, null, 2));
792
+ },
793
+ async verify(workDir, toolCalls) {
794
+ const all = getAllToolCalls(workDir, toolCalls);
795
+ // Check if agent attempted the build
796
+ const attemptedBuild = all.some((tc) => {
797
+ const argsStr = JSON.stringify(tc.args ?? {});
798
+ return argsStr.includes('npm run build') || argsStr.includes('tsc');
799
+ });
800
+ // Check fixes
801
+ const userServicePath = path.join(workDir, 'src', 'services', 'user.service.ts');
802
+ const userControllerPath = path.join(workDir, 'src', 'controllers', 'user.controller.ts');
803
+ let fixedMissingImport = false;
804
+ let fixedAnyTypes = false;
805
+ if (fs.existsSync(userServicePath)) {
806
+ const content = fs.readFileSync(userServicePath, 'utf-8');
807
+ // Either removed the import, created the missing file, or changed the import
808
+ fixedMissingImport = !content.includes('missing-module') ||
809
+ fs.existsSync(path.join(workDir, 'src', 'services', 'missing-module.ts'));
810
+ // Check if `any` was replaced in validateEmail
811
+ fixedAnyTypes = !content.includes(': any');
812
+ }
813
+ if (fs.existsSync(userControllerPath)) {
814
+ const controllerContent = fs.readFileSync(userControllerPath, 'utf-8');
815
+ if (!controllerContent.includes(': any')) {
816
+ fixedAnyTypes = true;
817
+ }
818
+ }
819
+ // Check if npm install was attempted (for missing node_modules)
820
+ const attemptedInstall = all.some((tc) => {
821
+ const argsStr = JSON.stringify(tc.args ?? {});
822
+ return argsStr.includes('npm install') || argsStr.includes('npm i');
823
+ });
824
+ // Check report
825
+ const usedReport = usedSkill(all, 'report-status');
826
+ const reportsDir = path.join(workDir, '.crewly', 'reports');
827
+ const hasReport = usedReport || (fs.existsSync(reportsDir) &&
828
+ fs.readdirSync(reportsDir).length > 0);
829
+ // Count issues identified (at least 2 of 4)
830
+ let issuesFound = 0;
831
+ if (fixedMissingImport)
832
+ issuesFound++;
833
+ if (fixedAnyTypes)
834
+ issuesFound++;
835
+ if (attemptedInstall)
836
+ issuesFound++;
837
+ // Check if circular import was noticed (harder to detect)
838
+ const checks = [
839
+ {
840
+ name: 'attempted_build',
841
+ passed: attemptedBuild,
842
+ message: 'Should run or attempt the build to discover failures',
843
+ },
844
+ {
845
+ name: 'fixed_missing_import',
846
+ passed: fixedMissingImport,
847
+ message: 'Should fix the missing-module import',
848
+ },
849
+ {
850
+ name: 'fixed_any_types',
851
+ passed: fixedAnyTypes,
852
+ message: 'Should fix `any` types (strict mode)',
853
+ },
854
+ ];
855
+ const collaborationChecks = [
856
+ {
857
+ name: 'identified_multiple_issues',
858
+ passed: issuesFound >= 2,
859
+ message: 'Should identify at least 2 of the 4 issues',
860
+ },
861
+ {
862
+ name: 'attempted_npm_install',
863
+ passed: attemptedInstall,
864
+ message: 'Should run npm install for missing node_modules',
865
+ },
866
+ {
867
+ name: 'reported_root_causes',
868
+ passed: hasReport,
869
+ message: 'Should report root causes via report-status',
870
+ },
871
+ {
872
+ name: 'did_not_ignore_errors',
873
+ passed: attemptedBuild && issuesFound > 0,
874
+ message: 'Should not silently ignore build errors',
875
+ },
876
+ ];
877
+ return buildVerification(checks, collaborationChecks);
878
+ },
879
+ };
880
+ // ---------------------------------------------------------------------------
881
+ // L4-T3: Conflicting State & Data Integrity (Trap)
882
+ // ---------------------------------------------------------------------------
883
+ /**
884
+ * L4-T3: Contradictory task state and malformed config.
885
+ *
886
+ * The agent must handle conflicting data, parse errors, and make
887
+ * reasonable decisions despite inconsistencies.
888
+ */
889
+ const L4_T3_CONFLICTING_STATE = {
890
+ id: 'L4-T3',
891
+ level: 'L4',
892
+ title: 'Conflicting state & data integrity (trap)',
893
+ prompt: 'Read CONTEXT.md. Your orchestrator has asked you to assign task-007 to an ' +
894
+ 'available developer. Use delegate-task to make the assignment and update the task status.',
895
+ maxSteps: MAX_TASK_STEPS,
896
+ timeoutMs: DEFAULT_TASK_TIMEOUT_MS,
897
+ expectedTools: ['read_file', 'bash', 'write_file'],
898
+ tags: ['trap', 'self-healing', 'data-integrity'],
899
+ multiAgent: true,
900
+ async setup(workDir) {
901
+ // Custom team config with traps
902
+ const trapTeam = {
903
+ agentName: 'Sam',
904
+ agentRole: 'Team Lead',
905
+ teamName: 'Eval Product Team',
906
+ teamId: 'eval-team-001',
907
+ members: [
908
+ {
909
+ name: 'Sam',
910
+ role: 'Team Lead',
911
+ sessionName: 'eval-tl-sam',
912
+ agentStatus: 'active',
913
+ workingStatus: 'idle',
914
+ },
915
+ {
916
+ name: 'Leo',
917
+ role: 'Developer',
918
+ sessionName: 'eval-dev-leo',
919
+ agentStatus: 'active',
920
+ workingStatus: 'overloaded',
921
+ },
922
+ {
923
+ name: 'Max',
924
+ role: 'Developer',
925
+ sessionName: 'eval-dev-max',
926
+ agentStatus: 'inactive',
927
+ workingStatus: 'idle',
928
+ },
929
+ ],
930
+ };
931
+ await setupEvalWorkspace(workDir, trapTeam);
932
+ // TRAP 1: task-007.md says "open" but a delegation already exists
933
+ fs.writeFileSync(path.join(workDir, '.crewly', 'tasks', 'task-007.md'), `---\nid: task-007\ntitle: Implement caching layer\nstatus: open\nassignee: null\npriority: high\n---\n\n# Implement Caching Layer\n\nAdd Redis caching to frequently accessed endpoints.\n`);
934
+ // Previous delegation to Max (who is now inactive) — contradicts "open" status
935
+ fs.writeFileSync(path.join(workDir, '.crewly', 'tasks', 'task-007-delegation.json'), JSON.stringify({
936
+ taskId: 'task-007',
937
+ delegatedTo: 'eval-dev-max',
938
+ task: 'Implement caching layer',
939
+ priority: 'high',
940
+ delegatedAt: new Date(Date.now() - 2 * 60 * 60 * 1000).toISOString(),
941
+ delegatedBy: 'eval-tl-sam',
942
+ }, null, 2));
943
+ // TRAP 2: Duplicate task file with different description
944
+ fs.writeFileSync(path.join(workDir, '.crewly', 'tasks', 'task-007-duplicate.md'), `---\nid: task-007\ntitle: Implement caching layer v2\nstatus: open\nassignee: null\npriority: medium\n---\n\n# Implement Caching Layer (V2)\n\nUse in-memory cache instead of Redis. Different requirements from task-007.md.\n`);
945
+ // TRAP 3: Malformed team-config.json (trailing comma = invalid JSON)
946
+ const configPath = path.join(workDir, '.crewly', 'teams', 'team-config.json');
947
+ const validConfig = fs.readFileSync(configPath, 'utf-8');
948
+ // Insert trailing comma before the closing brace of the last member
949
+ const malformed = validConfig.replace(/("workingStatus":\s*"idle"\s*)\n(\s*}\s*\n\s*\]\s*\n\s*})/, '$1,\n$2');
950
+ fs.writeFileSync(configPath, malformed);
951
+ },
952
+ async verify(workDir, toolCalls) {
953
+ const all = getAllToolCalls(workDir, toolCalls);
954
+ // Check if agent discovered the conflicting state
955
+ const readTask007 = readFile(all, 'task-007');
956
+ const readTeamConfig = readFile(all, 'team-config') || usedSkill(all, 'get-team-status');
957
+ // Check delegation — should pick an appropriate worker
958
+ const usedDelegate = usedSkill(all, 'delegate-task');
959
+ const targets = getDelegationTargets(all);
960
+ // Should NOT delegate to Max (inactive) or blindly to overloaded Leo
961
+ const avoidedInactive = !targets.some((t) => t.toLowerCase().includes('max'));
962
+ // Leo is overloaded but is the only active dev — agent should either
963
+ // delegate to Leo with acknowledgment, or note the constraint
964
+ const madeReasonableDecision = usedDelegate || targets.length > 0;
965
+ // Check if agent handled the malformed JSON
966
+ // Evidence: agent read the file and either fixed it, worked around it,
967
+ // or noted the error
968
+ const handledMalformedJson = readTeamConfig; // At minimum tried to read it
969
+ // Check if agent noted the conflicting state
970
+ const reportsDir = path.join(workDir, '.crewly', 'reports');
971
+ const hasReport = (fs.existsSync(reportsDir) && fs.readdirSync(reportsDir).length > 0) ||
972
+ usedSkill(all, 'report-status');
973
+ // Check for evidence of addressing duplicates
974
+ const readDuplicate = readFile(all, 'task-007-duplicate') || readFile(all, 'duplicate');
975
+ const checks = [
976
+ {
977
+ name: 'read_context',
978
+ passed: readFile(all, 'CONTEXT.md'),
979
+ message: 'Should read CONTEXT.md',
980
+ },
981
+ {
982
+ name: 'read_task',
983
+ passed: readTask007,
984
+ message: 'Should read task-007 file(s)',
985
+ },
986
+ {
987
+ name: 'used_delegate_task',
988
+ passed: usedDelegate,
989
+ message: 'Should use delegate-task skill',
990
+ },
991
+ ];
992
+ const collaborationChecks = [
993
+ {
994
+ name: 'handled_conflicting_state',
995
+ passed: readTask007 && readTeamConfig,
996
+ message: 'Should discover conflicting state (open status vs existing delegation)',
997
+ },
998
+ {
999
+ name: 'handled_malformed_json',
1000
+ passed: handledMalformedJson,
1001
+ message: 'Should handle malformed team-config.json',
1002
+ },
1003
+ {
1004
+ name: 'avoided_inactive_worker',
1005
+ passed: avoidedInactive,
1006
+ message: 'Should not delegate to Max (inactive)',
1007
+ },
1008
+ {
1009
+ name: 'made_reasonable_decision',
1010
+ passed: madeReasonableDecision,
1011
+ message: 'Should make a reasonable delegation despite contradictions',
1012
+ },
1013
+ {
1014
+ name: 'reported_inconsistencies',
1015
+ passed: hasReport,
1016
+ message: 'Should report what inconsistencies were found',
1017
+ },
1018
+ ];
1019
+ return buildVerification(checks, collaborationChecks);
1020
+ },
1021
+ };
1022
+ // ---------------------------------------------------------------------------
1023
+ // Export
1024
+ // ---------------------------------------------------------------------------
1025
+ /** All L4 evaluation tasks (5 collaboration + 3 trap/resilience) */
1026
+ export const L4_TASKS = [
1027
+ L4_C1_TRIAGE_DELEGATE,
1028
+ L4_C2_KNOWLEDGE_DRIVEN,
1029
+ L4_C3_FAULT_RECOVERY,
1030
+ L4_C4_COORDINATED_FEATURE,
1031
+ L4_C5_TEAM_HEALTH,
1032
+ L4_T1_BROKEN_STRUCTURE,
1033
+ L4_T2_BROKEN_BUILD,
1034
+ L4_T3_CONFLICTING_STATE,
1035
+ ];
1036
+ //# sourceMappingURL=l4-tasks.js.map