@mndrk/agx 2.0.26 → 2.0.32

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 (831) hide show
  1. package/README.md +4 -6
  2. package/cloud-runtime/standalone/.next/BUILD_ID +1 -1
  3. package/cloud-runtime/standalone/.next/app-path-routes-manifest.json +6 -0
  4. package/cloud-runtime/standalone/.next/build-manifest.json +4 -4
  5. package/cloud-runtime/standalone/.next/prerender-manifest.json +3 -3
  6. package/cloud-runtime/standalone/.next/required-server-files.json +4 -4
  7. package/cloud-runtime/standalone/.next/routes-manifest.json +45 -0
  8. package/cloud-runtime/standalone/.next/server/app/_global-error/page/build-manifest.json +2 -2
  9. package/cloud-runtime/standalone/.next/server/app/_global-error.html +2 -2
  10. package/cloud-runtime/standalone/.next/server/app/_global-error.rsc +1 -1
  11. package/cloud-runtime/standalone/.next/server/app/_global-error.segments/__PAGE__.segment.rsc +1 -1
  12. package/cloud-runtime/standalone/.next/server/app/_global-error.segments/_full.segment.rsc +1 -1
  13. package/cloud-runtime/standalone/.next/server/app/_global-error.segments/_head.segment.rsc +1 -1
  14. package/cloud-runtime/standalone/.next/server/app/_global-error.segments/_index.segment.rsc +1 -1
  15. package/cloud-runtime/standalone/.next/server/app/_global-error.segments/_tree.segment.rsc +1 -1
  16. package/cloud-runtime/standalone/.next/server/app/_not-found/page/build-manifest.json +2 -2
  17. package/cloud-runtime/standalone/.next/server/app/_not-found/page_client-reference-manifest.js +1 -1
  18. package/cloud-runtime/standalone/.next/server/app/_not-found.html +2 -2
  19. package/cloud-runtime/standalone/.next/server/app/_not-found.rsc +2 -2
  20. package/cloud-runtime/standalone/.next/server/app/_not-found.segments/_full.segment.rsc +2 -2
  21. package/cloud-runtime/standalone/.next/server/app/_not-found.segments/_head.segment.rsc +1 -1
  22. package/cloud-runtime/standalone/.next/server/app/_not-found.segments/_index.segment.rsc +2 -2
  23. package/cloud-runtime/standalone/.next/server/app/_not-found.segments/_not-found/__PAGE__.segment.rsc +1 -1
  24. package/cloud-runtime/standalone/.next/server/app/_not-found.segments/_not-found.segment.rsc +1 -1
  25. package/cloud-runtime/standalone/.next/server/app/_not-found.segments/_tree.segment.rsc +2 -2
  26. package/cloud-runtime/standalone/.next/server/app/agents/[id]/page/build-manifest.json +2 -2
  27. package/cloud-runtime/standalone/.next/server/app/agents/[id]/page.js.nft.json +1 -1
  28. package/cloud-runtime/standalone/.next/server/app/agents/[id]/page_client-reference-manifest.js +1 -1
  29. package/cloud-runtime/standalone/.next/server/app/agents/page/build-manifest.json +2 -2
  30. package/cloud-runtime/standalone/.next/server/app/agents/page.js.nft.json +1 -1
  31. package/cloud-runtime/standalone/.next/server/app/agents/page_client-reference-manifest.js +1 -1
  32. package/cloud-runtime/standalone/.next/server/app/agents.html +2 -2
  33. package/cloud-runtime/standalone/.next/server/app/agents.rsc +3 -3
  34. package/cloud-runtime/standalone/.next/server/app/agents.segments/_full.segment.rsc +3 -3
  35. package/cloud-runtime/standalone/.next/server/app/agents.segments/_head.segment.rsc +1 -1
  36. package/cloud-runtime/standalone/.next/server/app/agents.segments/_index.segment.rsc +2 -2
  37. package/cloud-runtime/standalone/.next/server/app/agents.segments/_tree.segment.rsc +2 -2
  38. package/cloud-runtime/standalone/.next/server/app/agents.segments/agents/__PAGE__.segment.rsc +2 -2
  39. package/cloud-runtime/standalone/.next/server/app/agents.segments/agents.segment.rsc +1 -1
  40. package/cloud-runtime/standalone/.next/server/app/api/agent-specs/route.js +2 -2
  41. package/cloud-runtime/standalone/.next/server/app/api/agent-specs/route.js.nft.json +1 -1
  42. package/cloud-runtime/standalone/.next/server/app/api/agents/[id]/profile/route.js +2 -2
  43. package/cloud-runtime/standalone/.next/server/app/api/agents/[id]/profile/route.js.nft.json +1 -1
  44. package/cloud-runtime/standalone/.next/server/app/api/agents/export/route.js +2 -2
  45. package/cloud-runtime/standalone/.next/server/app/api/agents/export/route.js.nft.json +1 -1
  46. package/cloud-runtime/standalone/.next/server/app/api/automations/create/route.js +4 -3
  47. package/cloud-runtime/standalone/.next/server/app/api/automations/create/route.js.nft.json +1 -1
  48. package/cloud-runtime/standalone/.next/server/app/api/automations/route.js +3 -3
  49. package/cloud-runtime/standalone/.next/server/app/api/automations/route.js.nft.json +1 -1
  50. package/cloud-runtime/standalone/.next/server/app/api/chat/route.js +7 -4
  51. package/cloud-runtime/standalone/.next/server/app/api/chat/route.js.nft.json +1 -1
  52. package/cloud-runtime/standalone/.next/server/app/api/chat-runs/[id]/route/app-paths-manifest.json +3 -0
  53. package/cloud-runtime/standalone/.next/server/app/api/chat-runs/[id]/route/build-manifest.json +11 -0
  54. package/cloud-runtime/standalone/.next/server/app/api/chat-runs/[id]/route/server-reference-manifest.json +4 -0
  55. package/cloud-runtime/standalone/.next/server/app/api/chat-runs/[id]/route.js +8 -0
  56. package/cloud-runtime/standalone/.next/server/app/api/chat-runs/[id]/route.js.map +5 -0
  57. package/cloud-runtime/standalone/.next/server/app/api/chat-runs/[id]/route.js.nft.json +1 -0
  58. package/cloud-runtime/standalone/.next/server/app/api/chat-runs/[id]/route_client-reference-manifest.js +2 -0
  59. package/cloud-runtime/standalone/.next/server/app/api/chat-runs/[id]/signal/route/app-paths-manifest.json +3 -0
  60. package/cloud-runtime/standalone/.next/server/app/api/chat-runs/[id]/signal/route/build-manifest.json +11 -0
  61. package/cloud-runtime/standalone/.next/server/app/api/chat-runs/[id]/signal/route/server-reference-manifest.json +4 -0
  62. package/cloud-runtime/standalone/.next/server/app/api/chat-runs/[id]/signal/route.js +7 -0
  63. package/cloud-runtime/standalone/.next/server/app/api/chat-runs/[id]/signal/route.js.map +5 -0
  64. package/cloud-runtime/standalone/.next/server/app/api/chat-runs/[id]/signal/route.js.nft.json +1 -0
  65. package/cloud-runtime/standalone/.next/server/app/api/chat-runs/[id]/signal/route_client-reference-manifest.js +2 -0
  66. package/cloud-runtime/standalone/.next/server/app/api/chat-runs/route/app-paths-manifest.json +3 -0
  67. package/cloud-runtime/standalone/.next/server/app/api/chat-runs/route/build-manifest.json +11 -0
  68. package/cloud-runtime/standalone/.next/server/app/api/chat-runs/route/server-reference-manifest.json +4 -0
  69. package/cloud-runtime/standalone/.next/server/app/api/chat-runs/route.js +8 -0
  70. package/cloud-runtime/standalone/.next/server/app/api/chat-runs/route.js.map +5 -0
  71. package/cloud-runtime/standalone/.next/server/app/api/chat-runs/route.js.nft.json +1 -0
  72. package/cloud-runtime/standalone/.next/server/app/api/chat-runs/route_client-reference-manifest.js +2 -0
  73. package/cloud-runtime/standalone/.next/server/app/api/file-search/route.js.nft.json +1 -1
  74. package/cloud-runtime/standalone/.next/server/app/api/graphs/[graphId]/nodes/[nodeId]/route.js +2 -2
  75. package/cloud-runtime/standalone/.next/server/app/api/graphs/[graphId]/nodes/[nodeId]/route.js.nft.json +1 -1
  76. package/cloud-runtime/standalone/.next/server/app/api/health/route.js +5 -4
  77. package/cloud-runtime/standalone/.next/server/app/api/health/route.js.nft.json +1 -1
  78. package/cloud-runtime/standalone/.next/server/app/api/history/route.js.nft.json +1 -1
  79. package/cloud-runtime/standalone/.next/server/app/api/history/status/route.js.nft.json +1 -1
  80. package/cloud-runtime/standalone/.next/server/app/api/learnings/route.js +5 -4
  81. package/cloud-runtime/standalone/.next/server/app/api/learnings/route.js.nft.json +1 -1
  82. package/cloud-runtime/standalone/.next/server/app/api/logs/route.js.nft.json +1 -1
  83. package/cloud-runtime/standalone/.next/server/app/api/logs/stream/route.js +2 -2
  84. package/cloud-runtime/standalone/.next/server/app/api/logs/stream/route.js.nft.json +1 -1
  85. package/cloud-runtime/standalone/.next/server/app/api/memories/route.js +2 -2
  86. package/cloud-runtime/standalone/.next/server/app/api/memories/route.js.nft.json +1 -1
  87. package/cloud-runtime/standalone/.next/server/app/api/messages/[id]/route.js.nft.json +1 -1
  88. package/cloud-runtime/standalone/.next/server/app/api/migrate/teams-to-projects/route.js +2 -2
  89. package/cloud-runtime/standalone/.next/server/app/api/migrate/teams-to-projects/route.js.nft.json +1 -1
  90. package/cloud-runtime/standalone/.next/server/app/api/migrate/workspaces-to-projects/route.js +2 -2
  91. package/cloud-runtime/standalone/.next/server/app/api/migrate/workspaces-to-projects/route.js.nft.json +1 -1
  92. package/cloud-runtime/standalone/.next/server/app/api/orchestrator/tasks/[taskId]/cancel/route.js +3 -3
  93. package/cloud-runtime/standalone/.next/server/app/api/orchestrator/tasks/[taskId]/cancel/route.js.nft.json +1 -1
  94. package/cloud-runtime/standalone/.next/server/app/api/orchestrator/tasks/[taskId]/signal/route.js +3 -3
  95. package/cloud-runtime/standalone/.next/server/app/api/orchestrator/tasks/[taskId]/signal/route.js.nft.json +1 -1
  96. package/cloud-runtime/standalone/.next/server/app/api/orchestrator/tasks/[taskId]/start/route.js +5 -4
  97. package/cloud-runtime/standalone/.next/server/app/api/orchestrator/tasks/[taskId]/start/route.js.nft.json +1 -1
  98. package/cloud-runtime/standalone/.next/server/app/api/orchestrator/tasks/[taskId]/status/route.js +4 -3
  99. package/cloud-runtime/standalone/.next/server/app/api/orchestrator/tasks/[taskId]/status/route.js.nft.json +1 -1
  100. package/cloud-runtime/standalone/.next/server/app/api/participants/route.js +3 -3
  101. package/cloud-runtime/standalone/.next/server/app/api/participants/route.js.nft.json +1 -1
  102. package/cloud-runtime/standalone/.next/server/app/api/projects/[id]/agents/route.js +3 -3
  103. package/cloud-runtime/standalone/.next/server/app/api/projects/[id]/agents/route.js.nft.json +1 -1
  104. package/cloud-runtime/standalone/.next/server/app/api/projects/[id]/memory/route.js +4 -4
  105. package/cloud-runtime/standalone/.next/server/app/api/projects/[id]/memory/route.js.nft.json +1 -1
  106. package/cloud-runtime/standalone/.next/server/app/api/projects/[id]/migrate-v1/route.js +4 -4
  107. package/cloud-runtime/standalone/.next/server/app/api/projects/[id]/migrate-v1/route.js.nft.json +1 -1
  108. package/cloud-runtime/standalone/.next/server/app/api/projects/[id]/migrate-v2/route.js +4 -4
  109. package/cloud-runtime/standalone/.next/server/app/api/projects/[id]/migrate-v2/route.js.nft.json +1 -1
  110. package/cloud-runtime/standalone/.next/server/app/api/projects/[id]/route.js +4 -3
  111. package/cloud-runtime/standalone/.next/server/app/api/projects/[id]/route.js.nft.json +1 -1
  112. package/cloud-runtime/standalone/.next/server/app/api/projects/[id]/skills/route.js +3 -3
  113. package/cloud-runtime/standalone/.next/server/app/api/projects/[id]/skills/route.js.nft.json +1 -1
  114. package/cloud-runtime/standalone/.next/server/app/api/projects/[id]/threads/route.js +3 -3
  115. package/cloud-runtime/standalone/.next/server/app/api/projects/[id]/threads/route.js.nft.json +1 -1
  116. package/cloud-runtime/standalone/.next/server/app/api/projects/[id]/variables/route.js +3 -3
  117. package/cloud-runtime/standalone/.next/server/app/api/projects/[id]/variables/route.js.nft.json +1 -1
  118. package/cloud-runtime/standalone/.next/server/app/api/projects/route.js +4 -3
  119. package/cloud-runtime/standalone/.next/server/app/api/projects/route.js.nft.json +1 -1
  120. package/cloud-runtime/standalone/.next/server/app/api/providers/route.js +1 -1
  121. package/cloud-runtime/standalone/.next/server/app/api/providers/route.js.nft.json +1 -1
  122. package/cloud-runtime/standalone/.next/server/app/api/queue/complete/route.js +3 -3
  123. package/cloud-runtime/standalone/.next/server/app/api/queue/complete/route.js.nft.json +1 -1
  124. package/cloud-runtime/standalone/.next/server/app/api/queue/route.js +5 -4
  125. package/cloud-runtime/standalone/.next/server/app/api/queue/route.js.nft.json +1 -1
  126. package/cloud-runtime/standalone/.next/server/app/api/reactions/route.js.nft.json +1 -1
  127. package/cloud-runtime/standalone/.next/server/app/api/repos/[id]/knowledge/route.js +3 -3
  128. package/cloud-runtime/standalone/.next/server/app/api/repos/[id]/knowledge/route.js.nft.json +1 -1
  129. package/cloud-runtime/standalone/.next/server/app/api/schedules/debug/route.js +5 -4
  130. package/cloud-runtime/standalone/.next/server/app/api/schedules/debug/route.js.nft.json +1 -1
  131. package/cloud-runtime/standalone/.next/server/app/api/schedules/poll/route.js +4 -3
  132. package/cloud-runtime/standalone/.next/server/app/api/schedules/poll/route.js.nft.json +1 -1
  133. package/cloud-runtime/standalone/.next/server/app/api/schedules/route.js +4 -3
  134. package/cloud-runtime/standalone/.next/server/app/api/schedules/route.js.nft.json +1 -1
  135. package/cloud-runtime/standalone/.next/server/app/api/search/route.js.nft.json +1 -1
  136. package/cloud-runtime/standalone/.next/server/app/api/status/route.js +1 -1
  137. package/cloud-runtime/standalone/.next/server/app/api/status/route.js.nft.json +1 -1
  138. package/cloud-runtime/standalone/.next/server/app/api/summarize/route.js +3 -3
  139. package/cloud-runtime/standalone/.next/server/app/api/summarize/route.js.nft.json +1 -1
  140. package/cloud-runtime/standalone/.next/server/app/api/system/db-status/route.js.nft.json +1 -1
  141. package/cloud-runtime/standalone/.next/server/app/api/task-drafts/route.js.nft.json +1 -1
  142. package/cloud-runtime/standalone/.next/server/app/api/tasks/[id]/comments/[commentId]/route.js +6 -5
  143. package/cloud-runtime/standalone/.next/server/app/api/tasks/[id]/comments/[commentId]/route.js.nft.json +1 -1
  144. package/cloud-runtime/standalone/.next/server/app/api/tasks/[id]/comments/route.js +6 -5
  145. package/cloud-runtime/standalone/.next/server/app/api/tasks/[id]/comments/route.js.nft.json +1 -1
  146. package/cloud-runtime/standalone/.next/server/app/api/tasks/[id]/costs/route.js +5 -4
  147. package/cloud-runtime/standalone/.next/server/app/api/tasks/[id]/costs/route.js.nft.json +1 -1
  148. package/cloud-runtime/standalone/.next/server/app/api/tasks/[id]/dependencies/route.js +4 -3
  149. package/cloud-runtime/standalone/.next/server/app/api/tasks/[id]/dependencies/route.js.nft.json +1 -1
  150. package/cloud-runtime/standalone/.next/server/app/api/tasks/[id]/graph/events/route.js +4 -4
  151. package/cloud-runtime/standalone/.next/server/app/api/tasks/[id]/graph/events/route.js.nft.json +1 -1
  152. package/cloud-runtime/standalone/.next/server/app/api/tasks/[id]/graph/history/route.js +5 -5
  153. package/cloud-runtime/standalone/.next/server/app/api/tasks/[id]/graph/history/route.js.nft.json +1 -1
  154. package/cloud-runtime/standalone/.next/server/app/api/tasks/[id]/graph/metrics/route.js +5 -5
  155. package/cloud-runtime/standalone/.next/server/app/api/tasks/[id]/graph/metrics/route.js.nft.json +1 -1
  156. package/cloud-runtime/standalone/.next/server/app/api/tasks/[id]/graph/pause/route.js +2 -2
  157. package/cloud-runtime/standalone/.next/server/app/api/tasks/[id]/graph/pause/route.js.nft.json +1 -1
  158. package/cloud-runtime/standalone/.next/server/app/api/tasks/[id]/graph/replan/route.js +5 -5
  159. package/cloud-runtime/standalone/.next/server/app/api/tasks/[id]/graph/replan/route.js.nft.json +1 -1
  160. package/cloud-runtime/standalone/.next/server/app/api/tasks/[id]/graph/restart/route.js +4 -3
  161. package/cloud-runtime/standalone/.next/server/app/api/tasks/[id]/graph/restart/route.js.nft.json +1 -1
  162. package/cloud-runtime/standalone/.next/server/app/api/tasks/[id]/graph/resume/route.js +4 -3
  163. package/cloud-runtime/standalone/.next/server/app/api/tasks/[id]/graph/resume/route.js.nft.json +1 -1
  164. package/cloud-runtime/standalone/.next/server/app/api/tasks/[id]/graph/rollback/route.js +4 -4
  165. package/cloud-runtime/standalone/.next/server/app/api/tasks/[id]/graph/rollback/route.js.nft.json +1 -1
  166. package/cloud-runtime/standalone/.next/server/app/api/tasks/[id]/graph/route.js +5 -5
  167. package/cloud-runtime/standalone/.next/server/app/api/tasks/[id]/graph/route.js.nft.json +1 -1
  168. package/cloud-runtime/standalone/.next/server/app/api/tasks/[id]/graph/schedule/route.js +6 -5
  169. package/cloud-runtime/standalone/.next/server/app/api/tasks/[id]/graph/schedule/route.js.nft.json +1 -1
  170. package/cloud-runtime/standalone/.next/server/app/api/tasks/[id]/graph/start/route.js +4 -3
  171. package/cloud-runtime/standalone/.next/server/app/api/tasks/[id]/graph/start/route.js.nft.json +1 -1
  172. package/cloud-runtime/standalone/.next/server/app/api/tasks/[id]/graph/stop/route.js +2 -2
  173. package/cloud-runtime/standalone/.next/server/app/api/tasks/[id]/graph/stop/route.js.nft.json +1 -1
  174. package/cloud-runtime/standalone/.next/server/app/api/tasks/[id]/heartbeat/route.js +2 -2
  175. package/cloud-runtime/standalone/.next/server/app/api/tasks/[id]/heartbeat/route.js.nft.json +1 -1
  176. package/cloud-runtime/standalone/.next/server/app/api/tasks/[id]/history/route.js +5 -4
  177. package/cloud-runtime/standalone/.next/server/app/api/tasks/[id]/history/route.js.nft.json +1 -1
  178. package/cloud-runtime/standalone/.next/server/app/api/tasks/[id]/logs/route.js +4 -3
  179. package/cloud-runtime/standalone/.next/server/app/api/tasks/[id]/logs/route.js.nft.json +1 -1
  180. package/cloud-runtime/standalone/.next/server/app/api/tasks/[id]/logs/stream/route.js +2 -2
  181. package/cloud-runtime/standalone/.next/server/app/api/tasks/[id]/logs/stream/route.js.nft.json +1 -1
  182. package/cloud-runtime/standalone/.next/server/app/api/tasks/[id]/nodes/[nodeId]/comments/route.js +3 -3
  183. package/cloud-runtime/standalone/.next/server/app/api/tasks/[id]/nodes/[nodeId]/comments/route.js.nft.json +1 -1
  184. package/cloud-runtime/standalone/.next/server/app/api/tasks/[id]/nodes/[nodeId]/complete/route.js +7 -6
  185. package/cloud-runtime/standalone/.next/server/app/api/tasks/[id]/nodes/[nodeId]/complete/route.js.nft.json +1 -1
  186. package/cloud-runtime/standalone/.next/server/app/api/tasks/[id]/nodes/[nodeId]/fail/route.js +7 -6
  187. package/cloud-runtime/standalone/.next/server/app/api/tasks/[id]/nodes/[nodeId]/fail/route.js.nft.json +1 -1
  188. package/cloud-runtime/standalone/.next/server/app/api/tasks/[id]/nodes/[nodeId]/resume/route.js +6 -5
  189. package/cloud-runtime/standalone/.next/server/app/api/tasks/[id]/nodes/[nodeId]/resume/route.js.nft.json +1 -1
  190. package/cloud-runtime/standalone/.next/server/app/api/tasks/[id]/nodes/[nodeId]/start/route.js +6 -5
  191. package/cloud-runtime/standalone/.next/server/app/api/tasks/[id]/nodes/[nodeId]/start/route.js.nft.json +1 -1
  192. package/cloud-runtime/standalone/.next/server/app/api/tasks/[id]/nodes/[nodeId]/stop/route.js +7 -6
  193. package/cloud-runtime/standalone/.next/server/app/api/tasks/[id]/nodes/[nodeId]/stop/route.js.nft.json +1 -1
  194. package/cloud-runtime/standalone/.next/server/app/api/tasks/[id]/nodes/[nodeId]/verify/route.js +8 -6
  195. package/cloud-runtime/standalone/.next/server/app/api/tasks/[id]/nodes/[nodeId]/verify/route.js.nft.json +1 -1
  196. package/cloud-runtime/standalone/.next/server/app/api/tasks/[id]/route.js +4 -3
  197. package/cloud-runtime/standalone/.next/server/app/api/tasks/[id]/route.js.nft.json +1 -1
  198. package/cloud-runtime/standalone/.next/server/app/api/tasks/assign-orphans/route.js +5 -4
  199. package/cloud-runtime/standalone/.next/server/app/api/tasks/assign-orphans/route.js.nft.json +1 -1
  200. package/cloud-runtime/standalone/.next/server/app/api/tasks/extract/route.js +3 -3
  201. package/cloud-runtime/standalone/.next/server/app/api/tasks/extract/route.js.nft.json +1 -1
  202. package/cloud-runtime/standalone/.next/server/app/api/tasks/route.js +5 -4
  203. package/cloud-runtime/standalone/.next/server/app/api/tasks/route.js.nft.json +1 -1
  204. package/cloud-runtime/standalone/.next/server/app/api/tasks/stream/route.js +2 -2
  205. package/cloud-runtime/standalone/.next/server/app/api/tasks/stream/route.js.nft.json +1 -1
  206. package/cloud-runtime/standalone/.next/server/app/api/threads/knowledge/route/app-paths-manifest.json +3 -0
  207. package/cloud-runtime/standalone/.next/server/app/api/threads/knowledge/route/build-manifest.json +11 -0
  208. package/cloud-runtime/standalone/.next/server/app/api/threads/knowledge/route/server-reference-manifest.json +4 -0
  209. package/cloud-runtime/standalone/.next/server/app/api/threads/knowledge/route.js +10 -0
  210. package/cloud-runtime/standalone/.next/server/app/api/threads/knowledge/route.js.map +5 -0
  211. package/cloud-runtime/standalone/.next/server/app/api/threads/knowledge/route.js.nft.json +1 -0
  212. package/cloud-runtime/standalone/.next/server/app/api/threads/knowledge/route_client-reference-manifest.js +2 -0
  213. package/cloud-runtime/standalone/.next/server/app/api/threads/route.js +5 -2
  214. package/cloud-runtime/standalone/.next/server/app/api/threads/route.js.nft.json +1 -1
  215. package/cloud-runtime/standalone/.next/server/app/api/user-settings/route.js +5 -4
  216. package/cloud-runtime/standalone/.next/server/app/api/user-settings/route.js.nft.json +1 -1
  217. package/cloud-runtime/standalone/.next/server/app/automations/page/build-manifest.json +2 -2
  218. package/cloud-runtime/standalone/.next/server/app/automations/page.js.nft.json +1 -1
  219. package/cloud-runtime/standalone/.next/server/app/automations/page_client-reference-manifest.js +1 -1
  220. package/cloud-runtime/standalone/.next/server/app/automations.html +2 -2
  221. package/cloud-runtime/standalone/.next/server/app/automations.rsc +3 -3
  222. package/cloud-runtime/standalone/.next/server/app/automations.segments/_full.segment.rsc +3 -3
  223. package/cloud-runtime/standalone/.next/server/app/automations.segments/_head.segment.rsc +1 -1
  224. package/cloud-runtime/standalone/.next/server/app/automations.segments/_index.segment.rsc +2 -2
  225. package/cloud-runtime/standalone/.next/server/app/automations.segments/_tree.segment.rsc +2 -2
  226. package/cloud-runtime/standalone/.next/server/app/automations.segments/automations/__PAGE__.segment.rsc +2 -2
  227. package/cloud-runtime/standalone/.next/server/app/automations.segments/automations.segment.rsc +1 -1
  228. package/cloud-runtime/standalone/.next/server/app/board/page/build-manifest.json +2 -2
  229. package/cloud-runtime/standalone/.next/server/app/board/page_client-reference-manifest.js +1 -1
  230. package/cloud-runtime/standalone/.next/server/app/board.html +2 -2
  231. package/cloud-runtime/standalone/.next/server/app/board.rsc +2 -2
  232. package/cloud-runtime/standalone/.next/server/app/board.segments/_full.segment.rsc +2 -2
  233. package/cloud-runtime/standalone/.next/server/app/board.segments/_head.segment.rsc +1 -1
  234. package/cloud-runtime/standalone/.next/server/app/board.segments/_index.segment.rsc +2 -2
  235. package/cloud-runtime/standalone/.next/server/app/board.segments/_tree.segment.rsc +2 -2
  236. package/cloud-runtime/standalone/.next/server/app/board.segments/board/__PAGE__.segment.rsc +1 -1
  237. package/cloud-runtime/standalone/.next/server/app/board.segments/board.segment.rsc +1 -1
  238. package/cloud-runtime/standalone/.next/server/app/execution-graph/page/build-manifest.json +2 -2
  239. package/cloud-runtime/standalone/.next/server/app/execution-graph/page.js.nft.json +1 -1
  240. package/cloud-runtime/standalone/.next/server/app/execution-graph/page_client-reference-manifest.js +1 -1
  241. package/cloud-runtime/standalone/.next/server/app/execution-graph.html +2 -2
  242. package/cloud-runtime/standalone/.next/server/app/execution-graph.rsc +3 -3
  243. package/cloud-runtime/standalone/.next/server/app/execution-graph.segments/_full.segment.rsc +3 -3
  244. package/cloud-runtime/standalone/.next/server/app/execution-graph.segments/_head.segment.rsc +1 -1
  245. package/cloud-runtime/standalone/.next/server/app/execution-graph.segments/_index.segment.rsc +2 -2
  246. package/cloud-runtime/standalone/.next/server/app/execution-graph.segments/_tree.segment.rsc +2 -2
  247. package/cloud-runtime/standalone/.next/server/app/execution-graph.segments/execution-graph/__PAGE__.segment.rsc +2 -2
  248. package/cloud-runtime/standalone/.next/server/app/execution-graph.segments/execution-graph.segment.rsc +1 -1
  249. package/cloud-runtime/standalone/.next/server/app/index.html +2 -2
  250. package/cloud-runtime/standalone/.next/server/app/index.rsc +3 -3
  251. package/cloud-runtime/standalone/.next/server/app/index.segments/__PAGE__.segment.rsc +2 -2
  252. package/cloud-runtime/standalone/.next/server/app/index.segments/_full.segment.rsc +3 -3
  253. package/cloud-runtime/standalone/.next/server/app/index.segments/_head.segment.rsc +1 -1
  254. package/cloud-runtime/standalone/.next/server/app/index.segments/_index.segment.rsc +2 -2
  255. package/cloud-runtime/standalone/.next/server/app/index.segments/_tree.segment.rsc +2 -2
  256. package/cloud-runtime/standalone/.next/server/app/page/build-manifest.json +2 -2
  257. package/cloud-runtime/standalone/.next/server/app/page.js.nft.json +1 -1
  258. package/cloud-runtime/standalone/.next/server/app/page_client-reference-manifest.js +1 -1
  259. package/cloud-runtime/standalone/.next/server/app/projects/[slug]/graph/[taskId]/page/build-manifest.json +2 -2
  260. package/cloud-runtime/standalone/.next/server/app/projects/[slug]/graph/[taskId]/page.js.nft.json +1 -1
  261. package/cloud-runtime/standalone/.next/server/app/projects/[slug]/graph/[taskId]/page_client-reference-manifest.js +1 -1
  262. package/cloud-runtime/standalone/.next/server/app/projects/[slug]/knowledge/page/app-paths-manifest.json +3 -0
  263. package/cloud-runtime/standalone/.next/server/app/projects/[slug]/knowledge/page/build-manifest.json +18 -0
  264. package/cloud-runtime/standalone/.next/server/app/projects/[slug]/knowledge/page/next-font-manifest.json +11 -0
  265. package/cloud-runtime/standalone/.next/server/app/projects/[slug]/knowledge/page/react-loadable-manifest.json +1 -0
  266. package/cloud-runtime/standalone/.next/server/app/projects/[slug]/knowledge/page/server-reference-manifest.json +4 -0
  267. package/cloud-runtime/standalone/.next/server/app/projects/[slug]/knowledge/page.js +16 -0
  268. package/cloud-runtime/standalone/.next/server/app/projects/[slug]/knowledge/page.js.map +5 -0
  269. package/cloud-runtime/standalone/.next/server/app/projects/[slug]/knowledge/page.js.nft.json +1 -0
  270. package/cloud-runtime/standalone/.next/server/app/projects/[slug]/knowledge/page_client-reference-manifest.js +2 -0
  271. package/cloud-runtime/standalone/.next/server/app/projects/[slug]/page/build-manifest.json +2 -2
  272. package/cloud-runtime/standalone/.next/server/app/projects/[slug]/page.js.nft.json +1 -1
  273. package/cloud-runtime/standalone/.next/server/app/projects/[slug]/page_client-reference-manifest.js +1 -1
  274. package/cloud-runtime/standalone/.next/server/app/projects/[slug]/thread/[threadId]/page/app-paths-manifest.json +3 -0
  275. package/cloud-runtime/standalone/.next/server/app/projects/[slug]/thread/[threadId]/page/build-manifest.json +18 -0
  276. package/cloud-runtime/standalone/.next/server/app/projects/[slug]/thread/[threadId]/page/next-font-manifest.json +11 -0
  277. package/cloud-runtime/standalone/.next/server/app/projects/[slug]/thread/[threadId]/page/react-loadable-manifest.json +1 -0
  278. package/cloud-runtime/standalone/.next/server/app/projects/[slug]/thread/[threadId]/page/server-reference-manifest.json +4 -0
  279. package/cloud-runtime/standalone/.next/server/app/projects/[slug]/thread/[threadId]/page.js +16 -0
  280. package/cloud-runtime/standalone/.next/server/app/projects/[slug]/thread/[threadId]/page.js.map +5 -0
  281. package/cloud-runtime/standalone/.next/server/app/projects/[slug]/thread/[threadId]/page.js.nft.json +1 -0
  282. package/cloud-runtime/standalone/.next/server/app/projects/[slug]/thread/[threadId]/page_client-reference-manifest.js +2 -0
  283. package/cloud-runtime/standalone/.next/server/app/projects/orphans/page/build-manifest.json +2 -2
  284. package/cloud-runtime/standalone/.next/server/app/projects/orphans/page.js.nft.json +1 -1
  285. package/cloud-runtime/standalone/.next/server/app/projects/orphans/page_client-reference-manifest.js +1 -1
  286. package/cloud-runtime/standalone/.next/server/app/projects/orphans.html +2 -2
  287. package/cloud-runtime/standalone/.next/server/app/projects/orphans.rsc +3 -3
  288. package/cloud-runtime/standalone/.next/server/app/projects/orphans.segments/_full.segment.rsc +3 -3
  289. package/cloud-runtime/standalone/.next/server/app/projects/orphans.segments/_head.segment.rsc +1 -1
  290. package/cloud-runtime/standalone/.next/server/app/projects/orphans.segments/_index.segment.rsc +2 -2
  291. package/cloud-runtime/standalone/.next/server/app/projects/orphans.segments/_tree.segment.rsc +2 -2
  292. package/cloud-runtime/standalone/.next/server/app/projects/orphans.segments/projects/orphans/__PAGE__.segment.rsc +2 -2
  293. package/cloud-runtime/standalone/.next/server/app/projects/orphans.segments/projects/orphans.segment.rsc +1 -1
  294. package/cloud-runtime/standalone/.next/server/app/projects/orphans.segments/projects.segment.rsc +1 -1
  295. package/cloud-runtime/standalone/.next/server/app/projects/page/build-manifest.json +2 -2
  296. package/cloud-runtime/standalone/.next/server/app/projects/page_client-reference-manifest.js +1 -1
  297. package/cloud-runtime/standalone/.next/server/app/projects.html +2 -2
  298. package/cloud-runtime/standalone/.next/server/app/projects.rsc +3 -3
  299. package/cloud-runtime/standalone/.next/server/app/projects.segments/_full.segment.rsc +3 -3
  300. package/cloud-runtime/standalone/.next/server/app/projects.segments/_head.segment.rsc +1 -1
  301. package/cloud-runtime/standalone/.next/server/app/projects.segments/_index.segment.rsc +2 -2
  302. package/cloud-runtime/standalone/.next/server/app/projects.segments/_tree.segment.rsc +2 -2
  303. package/cloud-runtime/standalone/.next/server/app/projects.segments/projects/__PAGE__.segment.rsc +2 -2
  304. package/cloud-runtime/standalone/.next/server/app/projects.segments/projects.segment.rsc +1 -1
  305. package/cloud-runtime/standalone/.next/server/app/settings/page/build-manifest.json +2 -2
  306. package/cloud-runtime/standalone/.next/server/app/settings/page_client-reference-manifest.js +1 -1
  307. package/cloud-runtime/standalone/.next/server/app/settings.html +2 -2
  308. package/cloud-runtime/standalone/.next/server/app/settings.rsc +2 -2
  309. package/cloud-runtime/standalone/.next/server/app/settings.segments/_full.segment.rsc +2 -2
  310. package/cloud-runtime/standalone/.next/server/app/settings.segments/_head.segment.rsc +1 -1
  311. package/cloud-runtime/standalone/.next/server/app/settings.segments/_index.segment.rsc +2 -2
  312. package/cloud-runtime/standalone/.next/server/app/settings.segments/_tree.segment.rsc +2 -2
  313. package/cloud-runtime/standalone/.next/server/app/settings.segments/settings/__PAGE__.segment.rsc +1 -1
  314. package/cloud-runtime/standalone/.next/server/app/settings.segments/settings.segment.rsc +1 -1
  315. package/cloud-runtime/standalone/.next/server/app/status/page/build-manifest.json +2 -2
  316. package/cloud-runtime/standalone/.next/server/app/status/page.js.nft.json +1 -1
  317. package/cloud-runtime/standalone/.next/server/app/status/page_client-reference-manifest.js +1 -1
  318. package/cloud-runtime/standalone/.next/server/app/status.html +2 -2
  319. package/cloud-runtime/standalone/.next/server/app/status.rsc +3 -3
  320. package/cloud-runtime/standalone/.next/server/app/status.segments/_full.segment.rsc +3 -3
  321. package/cloud-runtime/standalone/.next/server/app/status.segments/_head.segment.rsc +1 -1
  322. package/cloud-runtime/standalone/.next/server/app/status.segments/_index.segment.rsc +2 -2
  323. package/cloud-runtime/standalone/.next/server/app/status.segments/_tree.segment.rsc +2 -2
  324. package/cloud-runtime/standalone/.next/server/app/status.segments/status/__PAGE__.segment.rsc +2 -2
  325. package/cloud-runtime/standalone/.next/server/app/status.segments/status.segment.rsc +1 -1
  326. package/cloud-runtime/standalone/.next/server/app/thread/[id]/page/build-manifest.json +2 -2
  327. package/cloud-runtime/standalone/.next/server/app/thread/[id]/page.js.nft.json +1 -1
  328. package/cloud-runtime/standalone/.next/server/app/thread/[id]/page_client-reference-manifest.js +1 -1
  329. package/cloud-runtime/standalone/.next/server/app/welcome/page/build-manifest.json +2 -2
  330. package/cloud-runtime/standalone/.next/server/app/welcome/page.js.nft.json +1 -1
  331. package/cloud-runtime/standalone/.next/server/app/welcome/page_client-reference-manifest.js +1 -1
  332. package/cloud-runtime/standalone/.next/server/app/welcome.html +2 -2
  333. package/cloud-runtime/standalone/.next/server/app/welcome.rsc +3 -3
  334. package/cloud-runtime/standalone/.next/server/app/welcome.segments/_full.segment.rsc +3 -3
  335. package/cloud-runtime/standalone/.next/server/app/welcome.segments/_head.segment.rsc +1 -1
  336. package/cloud-runtime/standalone/.next/server/app/welcome.segments/_index.segment.rsc +2 -2
  337. package/cloud-runtime/standalone/.next/server/app/welcome.segments/_tree.segment.rsc +2 -2
  338. package/cloud-runtime/standalone/.next/server/app/welcome.segments/welcome/__PAGE__.segment.rsc +2 -2
  339. package/cloud-runtime/standalone/.next/server/app/welcome.segments/welcome.segment.rsc +1 -1
  340. package/cloud-runtime/standalone/.next/server/app-paths-manifest.json +6 -0
  341. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__017f03c3._.js +13 -0
  342. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__0925dd01._.js +46 -0
  343. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__10940c29._.js +3 -0
  344. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__12afd8a3._.js +3 -0
  345. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__12c7e188._.js +29 -0
  346. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__16dd1fd7._.js +13 -0
  347. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__17c2d68f._.js +52 -0
  348. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__1dd062c1._.js +1 -1
  349. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__20b3baea._.js +55 -0
  350. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__2388b2b3._.js +3 -0
  351. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__241a8bcf._.js +1 -1
  352. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__254e942f._.js +20 -0
  353. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__29ce9c60._.js +3 -0
  354. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__2e596cc8._.js +4 -4
  355. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__3198c5c8._.js +2 -2
  356. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__36d9edbd._.js +14 -14
  357. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__399b2ca9._.js +3 -0
  358. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__4761dc17._.js +8 -0
  359. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__4b1a512c._.js +52 -0
  360. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__4c50f159._.js +4 -4
  361. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__4c8624cc._.js +3 -0
  362. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__4d318eb0._.js +146 -0
  363. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__507a4363._.js +4 -0
  364. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__50ddd3ce._.js +3 -0
  365. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__543ba6c4._.js +5 -1
  366. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__59b5d4e5._.js +1 -1
  367. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__5ca87ba0._.js +3 -0
  368. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__5d359afa._.js +46 -0
  369. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__666f8712._.js +3 -0
  370. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__6c187704._.js +3 -0
  371. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__6c26221d._.js +7 -0
  372. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__6e59b27c._.js +3 -0
  373. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__74b97f0a._.js +1 -1
  374. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__75bff965._.js +46 -0
  375. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__7be8f159._.js +8 -8
  376. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__80655727._.js +3 -0
  377. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__86f7d27b._.js +3 -0
  378. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__94fa1edc._.js +46 -0
  379. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__98535eb3._.js +3 -0
  380. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__9dfaaf72._.js +52 -0
  381. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__a189593a._.js +3 -0
  382. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__ac3c2f7f._.js +52 -0
  383. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__b40c7aab._.js +1 -1
  384. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__b4d05543._.js +1 -1
  385. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__bfcedb7c._.js +52 -0
  386. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__c08bef05._.js +3 -0
  387. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__c5634f17._.js +112 -0
  388. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__c5b8ceb7._.js +3 -0
  389. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__ccfcbcd5._.js +42 -0
  390. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__ceb02db8._.js +3 -0
  391. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__da20a0aa._.js +1 -1
  392. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__dede3dcd._.js +75 -0
  393. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__e122cae2._.js +3 -0
  394. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__e1e7dd1e._.js +25 -0
  395. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__e446cb39._.js +3 -0
  396. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__e6ad07c3._.js +1 -1
  397. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__f4b70b67._.js +46 -0
  398. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__f5a2358a._.js +7 -0
  399. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__f5b93200._.js +3 -0
  400. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__fa0ebee3._.js +13 -0
  401. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__fcd3e3b8._.js +15 -0
  402. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__fce2cdce._.js +3 -0
  403. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__ff9c61da._.js +3 -0
  404. package/cloud-runtime/standalone/.next/server/chunks/_05fa3b89._.js +46 -0
  405. package/cloud-runtime/standalone/.next/server/chunks/_0a767dfe._.js +3 -0
  406. package/cloud-runtime/standalone/.next/server/chunks/_2f3e5ac1._.js +6 -0
  407. package/cloud-runtime/standalone/.next/server/chunks/_3e0d34cc._.js +97 -0
  408. package/cloud-runtime/standalone/.next/server/chunks/_4190f170._.js +46 -0
  409. package/cloud-runtime/standalone/.next/server/chunks/{[root-of-the-server]__a104cda8._.js → _42e9c8d5._.js} +7 -7
  410. package/cloud-runtime/standalone/.next/server/chunks/_5ca51127._.js +54 -0
  411. package/cloud-runtime/standalone/.next/server/chunks/_66e1ddec._.js +57 -0
  412. package/cloud-runtime/standalone/.next/server/chunks/_6bb93816._.js +6 -0
  413. package/cloud-runtime/standalone/.next/server/chunks/_7011db4f._.js +3 -0
  414. package/cloud-runtime/standalone/.next/server/chunks/_8b9fde82._.js +97 -0
  415. package/cloud-runtime/standalone/.next/server/chunks/_95ac98db._.js +49 -0
  416. package/cloud-runtime/standalone/.next/server/chunks/_994414cd._.js +54 -0
  417. package/cloud-runtime/standalone/.next/server/chunks/_99b78daf._.js +46 -0
  418. package/cloud-runtime/standalone/.next/server/chunks/_a877d34f._.js +6 -0
  419. package/cloud-runtime/standalone/.next/server/chunks/_affbdbb0._.js +46 -0
  420. package/cloud-runtime/standalone/.next/server/chunks/_c31ca6ab._.js +3 -0
  421. package/cloud-runtime/standalone/.next/server/chunks/_d225c04f._.js +1 -1
  422. package/cloud-runtime/standalone/.next/server/chunks/_ee99a36b._.js +6 -0
  423. package/cloud-runtime/standalone/.next/server/chunks/_efc73784._.js +46 -0
  424. package/cloud-runtime/standalone/.next/server/chunks/_fba13a4a._.js +6 -0
  425. package/cloud-runtime/standalone/.next/server/chunks/_next-internal_server_app_api_chat-runs_[id]_route_actions_033ac330.js +3 -0
  426. package/cloud-runtime/standalone/.next/server/chunks/_next-internal_server_app_api_chat-runs_[id]_signal_route_actions_4b56f1cd.js +3 -0
  427. package/cloud-runtime/standalone/.next/server/chunks/_next-internal_server_app_api_chat-runs_route_actions_0c8cd01c.js +3 -0
  428. package/cloud-runtime/standalone/.next/server/chunks/_next-internal_server_app_api_threads_knowledge_route_actions_c139bcf7.js +3 -0
  429. package/cloud-runtime/standalone/.next/server/chunks/lib_09aac4e7._.js +57 -0
  430. package/cloud-runtime/standalone/.next/server/chunks/lib_cli-runner_ts_dfcf3fda._.js +18 -0
  431. package/cloud-runtime/standalone/.next/server/chunks/lib_db_ts_e06c6085._.js +1 -1
  432. package/cloud-runtime/standalone/.next/server/chunks/lib_ea45fe73._.js +68 -23
  433. package/cloud-runtime/standalone/.next/server/chunks/lib_history-store_ts_2e721df2._.js +74 -30
  434. package/cloud-runtime/standalone/.next/server/chunks/lib_history-store_ts_74d1c060._.js +70 -31
  435. package/cloud-runtime/standalone/.next/server/chunks/lib_sqlite-query-adapter_ts_3ea4d849._.js +87 -17
  436. package/cloud-runtime/standalone/.next/server/chunks/lib_sqlite-query-adapter_ts_b0b1a9b2._.js +294 -0
  437. package/cloud-runtime/standalone/.next/server/chunks/node_modules_next_dist_esm_build_templates_app-route_0f808fa3.js +3 -0
  438. package/cloud-runtime/standalone/.next/server/chunks/node_modules_next_dist_esm_build_templates_app-route_2bdede98.js +3 -0
  439. package/cloud-runtime/standalone/.next/server/chunks/node_modules_next_dist_esm_build_templates_app-route_371d0bff.js +50 -43
  440. package/cloud-runtime/standalone/.next/server/chunks/node_modules_next_dist_esm_build_templates_app-route_3d31fed0.js +3 -0
  441. package/cloud-runtime/standalone/.next/server/chunks/node_modules_next_dist_esm_build_templates_app-route_57a073eb.js +3 -0
  442. package/cloud-runtime/standalone/.next/server/chunks/node_modules_next_dist_esm_build_templates_app-route_69b6b2e1.js +3 -0
  443. package/cloud-runtime/standalone/.next/server/chunks/node_modules_next_dist_esm_build_templates_app-route_7f8022ab.js +3 -0
  444. package/cloud-runtime/standalone/.next/server/chunks/node_modules_next_dist_esm_build_templates_app-route_84e28f38.js +3 -0
  445. package/cloud-runtime/standalone/.next/server/chunks/node_modules_next_dist_esm_build_templates_app-route_8ec90680.js +3 -0
  446. package/cloud-runtime/standalone/.next/server/chunks/node_modules_next_dist_esm_build_templates_app-route_a590fcd6.js +3 -0
  447. package/cloud-runtime/standalone/.next/server/chunks/node_modules_next_dist_esm_build_templates_app-route_cc6c687d.js +3 -0
  448. package/cloud-runtime/standalone/.next/server/chunks/src_graph_14067235._.js +46 -0
  449. package/cloud-runtime/standalone/.next/server/chunks/src_graph_api-route-utils_ts_b7225a0e._.js +1 -1
  450. package/cloud-runtime/standalone/.next/server/chunks/src_graph_b63e2d39._.js +46 -0
  451. package/cloud-runtime/standalone/.next/server/chunks/src_graph_executor_ts_55c06268._.js +3 -3
  452. package/cloud-runtime/standalone/.next/server/chunks/src_graph_executor_ts_a8bc8d58._.js +1 -1
  453. package/cloud-runtime/standalone/.next/server/chunks/ssr/[root-of-the-server]__1322ced8._.js +3 -0
  454. package/cloud-runtime/standalone/.next/server/chunks/ssr/[root-of-the-server]__47caef59._.js +1 -1
  455. package/cloud-runtime/standalone/.next/server/chunks/ssr/[root-of-the-server]__6e83bf83._.js +3 -0
  456. package/cloud-runtime/standalone/.next/server/chunks/ssr/[root-of-the-server]__783669c3._.js +3 -0
  457. package/cloud-runtime/standalone/.next/server/chunks/ssr/[root-of-the-server]__8973b16a._.js +3 -0
  458. package/cloud-runtime/standalone/.next/server/chunks/ssr/[root-of-the-server]__9166c1d6._.js +3 -0
  459. package/cloud-runtime/standalone/.next/server/chunks/ssr/[root-of-the-server]__a0a1cb74._.js +3 -0
  460. package/cloud-runtime/standalone/.next/server/chunks/ssr/[root-of-the-server]__a8a8afdc._.js +3 -0
  461. package/cloud-runtime/standalone/.next/server/chunks/ssr/[root-of-the-server]__fca7df40._.js +3 -0
  462. package/cloud-runtime/standalone/.next/server/chunks/ssr/{_27f9c020._.js → _0061ebd8._.js} +2 -2
  463. package/cloud-runtime/standalone/.next/server/chunks/ssr/_064370bc._.js +3 -0
  464. package/cloud-runtime/standalone/.next/server/chunks/ssr/_0f4e70b1._.js +3 -0
  465. package/cloud-runtime/standalone/.next/server/chunks/ssr/_16c45024._.js +3 -0
  466. package/cloud-runtime/standalone/.next/server/chunks/ssr/{_27cb3359._.js → _5b2b8a85._.js} +2 -2
  467. package/cloud-runtime/standalone/.next/server/chunks/ssr/{_a696e9b3._.js → _68ac991e._.js} +2 -2
  468. package/cloud-runtime/standalone/.next/server/chunks/ssr/_6de3f1de._.js +3 -0
  469. package/cloud-runtime/standalone/.next/server/chunks/ssr/{_c838f593._.js → _6fc3736e._.js} +2 -2
  470. package/cloud-runtime/standalone/.next/server/chunks/ssr/_85ca101b._.js +8 -0
  471. package/cloud-runtime/standalone/.next/server/chunks/ssr/_a0cc0fe7._.js +3 -0
  472. package/cloud-runtime/standalone/.next/server/chunks/ssr/_a10eb951._.js +4 -0
  473. package/cloud-runtime/standalone/.next/server/chunks/ssr/_cb4d8a23._.js +4 -0
  474. package/cloud-runtime/standalone/.next/server/chunks/ssr/{_6a367524._.js → _ccb409c5._.js} +2 -2
  475. package/cloud-runtime/standalone/.next/server/chunks/ssr/_cd5e154b._.js +1 -1
  476. package/cloud-runtime/standalone/.next/server/chunks/ssr/{_d021529a._.js → _fb292eed._.js} +2 -2
  477. package/cloud-runtime/standalone/.next/server/chunks/ssr/{_4b5d7c9b._.js → _ff5799d6._.js} +2 -2
  478. package/cloud-runtime/standalone/.next/server/chunks/ssr/_next-internal_server_app_projects_[slug]_knowledge_page_actions_1037c40a.js +3 -0
  479. package/cloud-runtime/standalone/.next/server/chunks/ssr/app_execution-graph_page_tsx_f854185a._.js +2 -2
  480. package/cloud-runtime/standalone/.next/server/chunks/ssr/app_projects_[slug]_graph_[taskId]_page_tsx_d8b1d582._.js +1 -1
  481. package/cloud-runtime/standalone/.next/server/chunks/ssr/app_projects_[slug]_knowledge_page_tsx_e2a55cbd._.js +3 -0
  482. package/cloud-runtime/standalone/.next/server/chunks/ssr/app_welcome_page_tsx_6c79bc59._.js +3 -0
  483. package/cloud-runtime/standalone/.next/server/chunks/ssr/ce889_server_app_projects_[slug]_thread_[threadId]_page_actions_660a8857.js +3 -0
  484. package/cloud-runtime/standalone/.next/server/chunks/ssr/components_chat-ui_bfeda794._.js +5 -5
  485. package/cloud-runtime/standalone/.next/server/chunks/ssr/components_thread_WorkspaceSidebar_tsx_e660301b._.js +1 -1
  486. package/cloud-runtime/standalone/.next/server/chunks/ssr/node_modules_lucide-react_dist_esm_e70f9321._.js +3 -0
  487. package/cloud-runtime/standalone/.next/server/chunks/ssr/node_modules_lucide-react_dist_esm_icons_678fa868._.js +3 -0
  488. package/cloud-runtime/standalone/.next/server/functions-config-manifest.json +4 -0
  489. package/cloud-runtime/standalone/.next/server/middleware-build-manifest.js +2 -2
  490. package/cloud-runtime/standalone/.next/server/middleware-manifest.json +5 -5
  491. package/cloud-runtime/standalone/.next/server/next-font-manifest.js +1 -1
  492. package/cloud-runtime/standalone/.next/server/next-font-manifest.json +8 -0
  493. package/cloud-runtime/standalone/.next/server/pages/404.html +2 -2
  494. package/cloud-runtime/standalone/.next/server/pages/500.html +2 -2
  495. package/cloud-runtime/standalone/.next/server/server-reference-manifest.js +1 -1
  496. package/cloud-runtime/standalone/.next/server/server-reference-manifest.json +1 -1
  497. package/cloud-runtime/standalone/.next/static/chunks/{b5bd2eb6e0c7f71a.js → 010aff7b601302de.js} +3 -3
  498. package/cloud-runtime/standalone/.next/static/chunks/0c467f54bc78a380.js +1 -0
  499. package/cloud-runtime/standalone/.next/static/chunks/1f415d0ce7ebbd08.js +8 -0
  500. package/cloud-runtime/standalone/.next/static/chunks/24a6ee21f430da93.js +1 -0
  501. package/cloud-runtime/standalone/.next/static/chunks/27129bea5b512ce8.js +1 -0
  502. package/cloud-runtime/standalone/.next/static/chunks/{e44264686aa5ecbf.js → 4200b512bdc226bc.js} +1 -1
  503. package/cloud-runtime/standalone/.next/static/chunks/463edf3533d27a56.js +1 -0
  504. package/cloud-runtime/standalone/.next/static/chunks/486bf7ff282b91a6.js +5 -0
  505. package/cloud-runtime/standalone/.next/static/chunks/{616d66dbec9e4b8b.js → 58025a80caa3629d.js} +1 -1
  506. package/cloud-runtime/standalone/.next/static/chunks/5cb0c885b085ea6c.js +1 -0
  507. package/cloud-runtime/standalone/.next/static/chunks/60c054bb8b2cffa6.css +1 -0
  508. package/cloud-runtime/standalone/.next/static/chunks/{45b4d0ee5c92d45b.js → 6fbe08eab578c7d3.js} +1 -1
  509. package/cloud-runtime/standalone/.next/static/chunks/7e2edf97bd6c0874.js +1 -0
  510. package/cloud-runtime/standalone/.next/static/chunks/8249f202d33d0d95.js +1 -0
  511. package/cloud-runtime/standalone/.next/static/chunks/{b4e298542d366e31.js → 87f099ea02aa419d.js} +1 -1
  512. package/cloud-runtime/standalone/.next/static/chunks/8d15ced2dc70090a.js +1 -0
  513. package/cloud-runtime/standalone/.next/static/chunks/9f8f719c4aa25e3d.js +1 -0
  514. package/cloud-runtime/standalone/.next/static/chunks/a66e1891e808a664.js +1 -0
  515. package/cloud-runtime/standalone/.next/static/chunks/{3344004561eabdf8.js → bc3cad3c821b169b.js} +1 -1
  516. package/cloud-runtime/standalone/.next/static/chunks/bc727d3d9993e9be.js +1 -0
  517. package/cloud-runtime/standalone/.next/static/chunks/cd308f61797939cd.js +6 -0
  518. package/cloud-runtime/standalone/.next/static/chunks/d5d6be8239e57c56.js +1 -0
  519. package/cloud-runtime/standalone/.next/static/chunks/{ee5f1457fbc593e1.js → dfff51033c303fc7.js} +1 -1
  520. package/cloud-runtime/standalone/.next/static/chunks/e62d5fa120fdf21f.js +1 -0
  521. package/cloud-runtime/standalone/.next/static/chunks/{turbopack-5b5918f610666d2d.js → turbopack-97e846241a3a64af.js} +1 -1
  522. package/cloud-runtime/standalone/README.md +3 -3
  523. package/cloud-runtime/standalone/app/api/chat/route.ts +38 -28
  524. package/cloud-runtime/standalone/app/api/chat-runs/[id]/route.ts +19 -0
  525. package/cloud-runtime/standalone/app/api/chat-runs/[id]/signal/route.ts +32 -0
  526. package/cloud-runtime/standalone/app/api/chat-runs/route.ts +37 -0
  527. package/cloud-runtime/standalone/app/api/history/route.ts +6 -0
  528. package/cloud-runtime/standalone/app/api/projects/[id]/memory/route.ts +17 -0
  529. package/cloud-runtime/standalone/app/api/providers/route.ts +9 -13
  530. package/cloud-runtime/standalone/app/api/schedules/debug/route.ts +23 -3
  531. package/cloud-runtime/standalone/app/api/schedules/poll/route.ts +5 -3
  532. package/cloud-runtime/standalone/app/api/schedules/route.ts +12 -17
  533. package/cloud-runtime/standalone/app/api/status/route.ts +6 -5
  534. package/cloud-runtime/standalone/app/api/threads/knowledge/route.ts +91 -0
  535. package/cloud-runtime/standalone/app/api/threads/route.ts +18 -1
  536. package/cloud-runtime/standalone/app/globals.css +1 -4
  537. package/cloud-runtime/standalone/app/projects/[slug]/graph/[taskId]/page.tsx +0 -21
  538. package/cloud-runtime/standalone/app/projects/[slug]/knowledge/page.tsx +608 -0
  539. package/cloud-runtime/standalone/app/projects/[slug]/layout.tsx +18 -2
  540. package/cloud-runtime/standalone/app/projects/[slug]/page.tsx +1 -455
  541. package/cloud-runtime/standalone/app/projects/[slug]/thread/[threadId]/page.tsx +14 -0
  542. package/cloud-runtime/standalone/app/welcome/page.tsx +329 -107
  543. package/cloud-runtime/standalone/components/ActionToolbar.tsx +3 -3
  544. package/cloud-runtime/standalone/components/ConfirmDialog.tsx +133 -0
  545. package/cloud-runtime/standalone/components/IconButton.tsx +3 -3
  546. package/cloud-runtime/standalone/components/ProjectModal.tsx +2 -2
  547. package/cloud-runtime/standalone/components/chat-ui/ChatContainer.tsx +415 -76
  548. package/cloud-runtime/standalone/components/chat-ui/Composer.tsx +149 -97
  549. package/cloud-runtime/standalone/components/chat-ui/ThreadView.tsx +73 -34
  550. package/cloud-runtime/standalone/components/thread/WorkspaceSidebar.tsx +51 -23
  551. package/cloud-runtime/standalone/hooks/useComposerHistory.ts +130 -0
  552. package/cloud-runtime/standalone/hooks/useGroupChat.ts +24 -1
  553. package/cloud-runtime/standalone/hooks/useProcessPolling.ts +69 -6
  554. package/cloud-runtime/standalone/lib/history-store.ts +532 -38
  555. package/cloud-runtime/standalone/lib/knowledge-notes.ts +251 -0
  556. package/cloud-runtime/standalone/lib/knowledge-store.ts +233 -0
  557. package/cloud-runtime/standalone/lib/memory-extractor.ts +76 -60
  558. package/cloud-runtime/standalone/lib/mesh-core/journal.ts +30 -0
  559. package/cloud-runtime/standalone/lib/mesh-core/self.ts +94 -0
  560. package/cloud-runtime/standalone/lib/orchestrator/chat-activities.ts +60 -0
  561. package/cloud-runtime/standalone/lib/orchestrator/chat-processor.ts +168 -0
  562. package/cloud-runtime/standalone/lib/orchestrator/chat-types.ts +29 -0
  563. package/cloud-runtime/standalone/lib/orchestrator/runtime.ts +20 -0
  564. package/cloud-runtime/standalone/lib/provider-clis.ts +63 -0
  565. package/cloud-runtime/standalone/lib/queue/boss.ts +2 -1
  566. package/cloud-runtime/standalone/lib/repo-knowledge.ts +19 -2
  567. package/cloud-runtime/standalone/lib/sqlite-query-adapter.ts +78 -0
  568. package/cloud-runtime/standalone/lib/stream-multiplexer.ts +101 -14
  569. package/cloud-runtime/standalone/lib/task-context.ts +7 -4
  570. package/cloud-runtime/standalone/lib/thread-knowledge-runs.ts +227 -0
  571. package/cloud-runtime/standalone/lib/thread-knowledge.ts +419 -0
  572. package/cloud-runtime/standalone/node_modules/@img/{sharp-libvips-darwin-arm64 → sharp-libvips-linux-x64}/README.md +2 -2
  573. package/cloud-runtime/standalone/node_modules/@img/{sharp-libvips-darwin-arm64 → sharp-libvips-linux-x64}/lib/glib-2.0/include/glibconfig.h +9 -8
  574. package/cloud-runtime/standalone/node_modules/@img/{sharp-libvips-darwin-arm64/lib/libvips-cpp.8.17.3.dylib → sharp-libvips-linux-x64/lib/libvips-cpp.so.8.17.3} +0 -0
  575. package/cloud-runtime/standalone/node_modules/@img/{sharp-libvips-darwin-arm64 → sharp-libvips-linux-x64}/package.json +11 -5
  576. package/cloud-runtime/standalone/node_modules/@img/sharp-libvips-linuxmusl-x64/README.md +46 -0
  577. package/cloud-runtime/standalone/node_modules/@img/sharp-libvips-linuxmusl-x64/lib/glib-2.0/include/glibconfig.h +221 -0
  578. package/cloud-runtime/standalone/node_modules/@img/sharp-libvips-linuxmusl-x64/lib/index.js +1 -0
  579. package/cloud-runtime/standalone/node_modules/@img/sharp-libvips-linuxmusl-x64/lib/libvips-cpp.so.8.17.3 +0 -0
  580. package/cloud-runtime/standalone/node_modules/@img/sharp-libvips-linuxmusl-x64/package.json +42 -0
  581. package/cloud-runtime/standalone/node_modules/@img/sharp-libvips-linuxmusl-x64/versions.json +30 -0
  582. package/cloud-runtime/standalone/node_modules/@img/sharp-linux-x64/lib/sharp-linux-x64.node +0 -0
  583. package/cloud-runtime/standalone/node_modules/@img/{sharp-darwin-arm64 → sharp-linux-x64}/package.json +13 -7
  584. package/cloud-runtime/standalone/node_modules/@img/sharp-linuxmusl-x64/lib/sharp-linuxmusl-x64.node +0 -0
  585. package/cloud-runtime/standalone/node_modules/@img/sharp-linuxmusl-x64/package.json +46 -0
  586. package/cloud-runtime/standalone/node_modules/better-sqlite3/build/Release/better_sqlite3.node +0 -0
  587. package/cloud-runtime/standalone/node_modules/better-sqlite3-90e2652d1716b047/build/Release/better_sqlite3.node +0 -0
  588. package/cloud-runtime/standalone/package-lock.json +13 -0
  589. package/cloud-runtime/standalone/package.json +1 -0
  590. package/cloud-runtime/standalone/server.js +1 -1
  591. package/cloud-runtime/standalone/src/graph/api-schemas.ts +2 -2
  592. package/cloud-runtime/standalone/src/graph/executor.ts +9 -7
  593. package/cloud-runtime/standalone/src/graph/function-executor.ts +4 -1
  594. package/cloud-runtime/standalone/src/graph/internal-function-dispatcher.ts +174 -0
  595. package/cloud-runtime/standalone/src/graph/types.ts +3 -3
  596. package/cloud-runtime/standalone/src/graph/work-dispatcher.ts +5 -1
  597. package/cloud-runtime/standalone/tsconfig.json +3 -1
  598. package/cloud-runtime/standalone/worker/index.js +2930 -137
  599. package/cloud-runtime/standalone/worker/index.ts +8 -1
  600. package/package.json +1 -1
  601. package/cloud-runtime/standalone/.next/server/chunks/[externals]_child_process_964038fc._.js +0 -3
  602. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__03a1bf91._.js +0 -6
  603. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__065c5114._.js +0 -3
  604. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__07dce481._.js +0 -3
  605. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__09f46c85._.js +0 -46
  606. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__149bcf6d._.js +0 -115
  607. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__14bad16e._.js +0 -3
  608. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__14e3bf74._.js +0 -3
  609. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__1632828c._.js +0 -46
  610. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__24b8ccd3._.js +0 -52
  611. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__284e1cbe._.js +0 -3
  612. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__28d6e806._.js +0 -3
  613. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__2bcb75a7._.js +0 -3
  614. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__32e5f341._.js +0 -4
  615. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__3b4a126a._.js +0 -46
  616. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__3c7464e8._.js +0 -46
  617. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__3d82dc78._.js +0 -46
  618. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__406bdd54._.js +0 -46
  619. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__40d6458a._.js +0 -3
  620. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__47ca4946._.js +0 -3
  621. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__49fb4a12._.js +0 -3
  622. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__5327e395._.js +0 -46
  623. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__55d75c3a._.js +0 -7
  624. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__592e81f9._.js +0 -13
  625. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__5a6a194c._.js +0 -52
  626. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__5af16b4f._.js +0 -3
  627. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__60ba5058._.js +0 -3
  628. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__6716441c._.js +0 -3
  629. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__673aedc6._.js +0 -3
  630. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__6a44c891._.js +0 -3
  631. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__6b680112._.js +0 -55
  632. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__7312fad4._.js +0 -46
  633. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__7456196c._.js +0 -52
  634. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__74d26856._.js +0 -3
  635. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__772c6fae._.js +0 -3
  636. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__787ba54b._.js +0 -3
  637. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__79157eef._.js +0 -3
  638. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__82d76712._.js +0 -3
  639. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__8311f060._.js +0 -6
  640. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__84e90655._.js +0 -46
  641. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__90a887dc._.js +0 -3
  642. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__9345d703._.js +0 -3
  643. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__98294450._.js +0 -3
  644. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__985f0d9f._.js +0 -51
  645. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__9b32295e._.js +0 -3
  646. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__a64d978e._.js +0 -6
  647. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__babcd1af._.js +0 -13
  648. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__c16f03fb._.js +0 -13
  649. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__c2767ca5._.js +0 -3
  650. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__c72c6d4a._.js +0 -25
  651. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__ca851b15._.js +0 -3
  652. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__d25227df._.js +0 -29
  653. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__e06820c3._.js +0 -6
  654. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__e429a0bc._.js +0 -3
  655. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__e4397d43._.js +0 -7
  656. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__ec8735f4._.js +0 -3
  657. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__ef09ab99._.js +0 -13
  658. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__f366a937._.js +0 -46
  659. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__fdaa8a27._.js +0 -3
  660. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__fddde532._.js +0 -3
  661. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__ff53f445._.js +0 -3
  662. package/cloud-runtime/standalone/.next/server/chunks/_1111d342._.js +0 -101
  663. package/cloud-runtime/standalone/.next/server/chunks/_4b60ba15._.js +0 -49
  664. package/cloud-runtime/standalone/.next/server/chunks/_54252651._.js +0 -49
  665. package/cloud-runtime/standalone/.next/server/chunks/_818a89c4._.js +0 -46
  666. package/cloud-runtime/standalone/.next/server/chunks/_a4a21d4f._.js +0 -3
  667. package/cloud-runtime/standalone/.next/server/chunks/_a759d52b._.js +0 -3
  668. package/cloud-runtime/standalone/.next/server/chunks/_e6b28eae._.js +0 -46
  669. package/cloud-runtime/standalone/.next/server/chunks/_e868e7c1._.js +0 -46
  670. package/cloud-runtime/standalone/.next/server/chunks/lib_23509137._.js +0 -196
  671. package/cloud-runtime/standalone/.next/server/chunks/lib_3273d5f9._.js +0 -196
  672. package/cloud-runtime/standalone/.next/server/chunks/lib_50ba0b4c._.js +0 -63
  673. package/cloud-runtime/standalone/.next/server/chunks/node_modules_next_dist_esm_build_templates_app-route_33963d95.js +0 -3
  674. package/cloud-runtime/standalone/.next/server/chunks/node_modules_next_dist_esm_build_templates_app-route_56c5acb3.js +0 -3
  675. package/cloud-runtime/standalone/.next/server/chunks/node_modules_next_dist_esm_build_templates_app-route_888b3578.js +0 -3
  676. package/cloud-runtime/standalone/.next/server/chunks/src_graph_e3bb4da8._.js +0 -46
  677. package/cloud-runtime/standalone/.next/server/chunks/ssr/[root-of-the-server]__113d6767._.js +0 -3
  678. package/cloud-runtime/standalone/.next/server/chunks/ssr/[root-of-the-server]__6a9d3855._.js +0 -3
  679. package/cloud-runtime/standalone/.next/server/chunks/ssr/[root-of-the-server]__942ca438._.js +0 -3
  680. package/cloud-runtime/standalone/.next/server/chunks/ssr/[root-of-the-server]__ce3b51aa._.js +0 -3
  681. package/cloud-runtime/standalone/.next/server/chunks/ssr/_1ec61dee._.js +0 -3
  682. package/cloud-runtime/standalone/.next/server/chunks/ssr/_27904584._.js +0 -3
  683. package/cloud-runtime/standalone/.next/server/chunks/ssr/_43472af3._.js +0 -3
  684. package/cloud-runtime/standalone/.next/server/chunks/ssr/_94effa0f._.js +0 -3
  685. package/cloud-runtime/standalone/.next/server/chunks/ssr/_d458d1eb._.js +0 -3
  686. package/cloud-runtime/standalone/.next/server/chunks/ssr/_fbced30b._.js +0 -3
  687. package/cloud-runtime/standalone/.next/server/chunks/ssr/app_projects_[slug]_page_tsx_e0fabf6e._.js +0 -8
  688. package/cloud-runtime/standalone/.next/server/chunks/ssr/node_modules_lucide-react_dist_esm_a8f86889._.js +0 -3
  689. package/cloud-runtime/standalone/.next/server/chunks/ssr/node_modules_lucide-react_dist_esm_icons_play_6595a532.js +0 -3
  690. package/cloud-runtime/standalone/.next/static/chunks/1184bf1bfdf97666.js +0 -1
  691. package/cloud-runtime/standalone/.next/static/chunks/4c01a5f19f9e775e.js +0 -8
  692. package/cloud-runtime/standalone/.next/static/chunks/5ace4b4f4475962a.js +0 -1
  693. package/cloud-runtime/standalone/.next/static/chunks/6509f7fecbf44493.js +0 -1
  694. package/cloud-runtime/standalone/.next/static/chunks/661090206d8bae9b.css +0 -1
  695. package/cloud-runtime/standalone/.next/static/chunks/6dbf5940e30fa9c7.js +0 -1
  696. package/cloud-runtime/standalone/.next/static/chunks/7e91f395ace1dd2c.js +0 -1
  697. package/cloud-runtime/standalone/.next/static/chunks/7f13efe9329d3f97.js +0 -1
  698. package/cloud-runtime/standalone/.next/static/chunks/80219bbddcf65109.js +0 -1
  699. package/cloud-runtime/standalone/.next/static/chunks/86ace6febb11ad71.js +0 -1
  700. package/cloud-runtime/standalone/.next/static/chunks/b079c677d9b39f98.js +0 -5
  701. package/cloud-runtime/standalone/.next/static/chunks/b88352740262931f.js +0 -6
  702. package/cloud-runtime/standalone/.next/static/chunks/c5609fd2abb65850.js +0 -1
  703. package/cloud-runtime/standalone/.next/static/chunks/d95cd010361834be.js +0 -1
  704. package/cloud-runtime/standalone/.next/static/chunks/f7bbf5cfcfed8ba9.js +0 -1
  705. package/cloud-runtime/standalone/coverage/clover.xml +0 -1208
  706. package/cloud-runtime/standalone/coverage/coverage-final.json +0 -29
  707. package/cloud-runtime/standalone/coverage/lcov-report/app/api/audit/index.html +0 -116
  708. package/cloud-runtime/standalone/coverage/lcov-report/app/api/audit/route.ts.html +0 -208
  709. package/cloud-runtime/standalone/coverage/lcov-report/app/api/auth/[...nextauth]/index.html +0 -116
  710. package/cloud-runtime/standalone/coverage/lcov-report/app/api/auth/[...nextauth]/route.ts.html +0 -166
  711. package/cloud-runtime/standalone/coverage/lcov-report/app/api/auth/daemon-secret/index.html +0 -116
  712. package/cloud-runtime/standalone/coverage/lcov-report/app/api/auth/daemon-secret/route.ts.html +0 -532
  713. package/cloud-runtime/standalone/coverage/lcov-report/app/api/auth/status/index.html +0 -116
  714. package/cloud-runtime/standalone/coverage/lcov-report/app/api/auth/status/route.ts.html +0 -178
  715. package/cloud-runtime/standalone/coverage/lcov-report/app/api/learnings/index.html +0 -116
  716. package/cloud-runtime/standalone/coverage/lcov-report/app/api/learnings/route.ts.html +0 -262
  717. package/cloud-runtime/standalone/coverage/lcov-report/app/api/logs/stream/index.html +0 -116
  718. package/cloud-runtime/standalone/coverage/lcov-report/app/api/logs/stream/route.ts.html +0 -448
  719. package/cloud-runtime/standalone/coverage/lcov-report/app/api/queue/complete/index.html +0 -116
  720. package/cloud-runtime/standalone/coverage/lcov-report/app/api/queue/complete/route.ts.html +0 -331
  721. package/cloud-runtime/standalone/coverage/lcov-report/app/api/queue/index.html +0 -116
  722. package/cloud-runtime/standalone/coverage/lcov-report/app/api/queue/route.ts.html +0 -505
  723. package/cloud-runtime/standalone/coverage/lcov-report/app/api/stage-prompts/index.html +0 -116
  724. package/cloud-runtime/standalone/coverage/lcov-report/app/api/stage-prompts/route.ts.html +0 -412
  725. package/cloud-runtime/standalone/coverage/lcov-report/app/api/tasks/[id]/advance/index.html +0 -116
  726. package/cloud-runtime/standalone/coverage/lcov-report/app/api/tasks/[id]/advance/route.ts.html +0 -304
  727. package/cloud-runtime/standalone/coverage/lcov-report/app/api/tasks/[id]/index.html +0 -116
  728. package/cloud-runtime/standalone/coverage/lcov-report/app/api/tasks/[id]/logs/index.html +0 -116
  729. package/cloud-runtime/standalone/coverage/lcov-report/app/api/tasks/[id]/logs/route.ts.html +0 -202
  730. package/cloud-runtime/standalone/coverage/lcov-report/app/api/tasks/[id]/route.ts.html +0 -373
  731. package/cloud-runtime/standalone/coverage/lcov-report/app/api/tasks/index.html +0 -116
  732. package/cloud-runtime/standalone/coverage/lcov-report/app/api/tasks/route.ts.html +0 -499
  733. package/cloud-runtime/standalone/coverage/lcov-report/app/api/tasks/stream/index.html +0 -116
  734. package/cloud-runtime/standalone/coverage/lcov-report/app/api/tasks/stream/route.ts.html +0 -349
  735. package/cloud-runtime/standalone/coverage/lcov-report/base.css +0 -224
  736. package/cloud-runtime/standalone/coverage/lcov-report/block-navigation.js +0 -87
  737. package/cloud-runtime/standalone/coverage/lcov-report/components/AuthProvider.tsx.html +0 -259
  738. package/cloud-runtime/standalone/coverage/lcov-report/components/ChatInterface.tsx.html +0 -1228
  739. package/cloud-runtime/standalone/coverage/lcov-report/components/KanbanBoard.tsx.html +0 -1024
  740. package/cloud-runtime/standalone/coverage/lcov-report/components/Layout.tsx.html +0 -211
  741. package/cloud-runtime/standalone/coverage/lcov-report/components/LearningsPanel.tsx.html +0 -535
  742. package/cloud-runtime/standalone/coverage/lcov-report/components/LogTimeline.tsx.html +0 -415
  743. package/cloud-runtime/standalone/coverage/lcov-report/components/SortableTaskCard.tsx.html +0 -358
  744. package/cloud-runtime/standalone/coverage/lcov-report/components/StagePills.tsx.html +0 -439
  745. package/cloud-runtime/standalone/coverage/lcov-report/components/TaskCard.tsx.html +0 -514
  746. package/cloud-runtime/standalone/coverage/lcov-report/components/TaskCardOverlay.tsx.html +0 -256
  747. package/cloud-runtime/standalone/coverage/lcov-report/components/TaskDetail.tsx.html +0 -622
  748. package/cloud-runtime/standalone/coverage/lcov-report/components/TaskList.tsx.html +0 -253
  749. package/cloud-runtime/standalone/coverage/lcov-report/components/index.html +0 -281
  750. package/cloud-runtime/standalone/coverage/lcov-report/favicon.png +0 -0
  751. package/cloud-runtime/standalone/coverage/lcov-report/hooks/index.html +0 -116
  752. package/cloud-runtime/standalone/coverage/lcov-report/hooks/useTasks.ts.html +0 -1042
  753. package/cloud-runtime/standalone/coverage/lcov-report/index.html +0 -341
  754. package/cloud-runtime/standalone/coverage/lcov-report/lib/auth-client.ts.html +0 -202
  755. package/cloud-runtime/standalone/coverage/lcov-report/lib/auth-server.ts.html +0 -172
  756. package/cloud-runtime/standalone/coverage/lcov-report/lib/auth.ts.html +0 -265
  757. package/cloud-runtime/standalone/coverage/lcov-report/lib/db.ts.html +0 -1252
  758. package/cloud-runtime/standalone/coverage/lcov-report/lib/index.html +0 -131
  759. package/cloud-runtime/standalone/coverage/lcov-report/lib/orchestrator.ts.html +0 -409
  760. package/cloud-runtime/standalone/coverage/lcov-report/lib/security.ts.html +0 -1165
  761. package/cloud-runtime/standalone/coverage/lcov-report/lib/supabase-server.ts.html +0 -175
  762. package/cloud-runtime/standalone/coverage/lcov-report/lib/supabase.ts.html +0 -157
  763. package/cloud-runtime/standalone/coverage/lcov-report/prettify.css +0 -1
  764. package/cloud-runtime/standalone/coverage/lcov-report/prettify.js +0 -2
  765. package/cloud-runtime/standalone/coverage/lcov-report/sort-arrow-sprite.png +0 -0
  766. package/cloud-runtime/standalone/coverage/lcov-report/sorter.js +0 -210
  767. package/cloud-runtime/standalone/coverage/lcov.info +0 -2386
  768. package/cloud-runtime/standalone/docs/LIMITS.md +0 -63
  769. package/cloud-runtime/standalone/docs/architecture/ADR-001-hybrid-to-full-sqlite.md +0 -345
  770. package/cloud-runtime/standalone/docs/baseline/baseline-report.json +0 -1009
  771. package/cloud-runtime/standalone/docs/baseline/critical-queries.md +0 -105
  772. package/cloud-runtime/standalone/docs/baseline/lock-metrics.json +0 -21
  773. package/cloud-runtime/standalone/docs/baseline/read-latency.json +0 -146
  774. package/cloud-runtime/standalone/docs/baseline/restore-time.json +0 -10
  775. package/cloud-runtime/standalone/docs/baseline/write-metrics.json +0 -803
  776. package/cloud-runtime/standalone/docs/decisions/sqlite-migration-adr.md +0 -327
  777. package/cloud-runtime/standalone/docs/error-code-mapping.md +0 -74
  778. package/cloud-runtime/standalone/docs/migration-plan.md +0 -120
  779. package/cloud-runtime/standalone/docs/migration-spec.md +0 -345
  780. package/cloud-runtime/standalone/docs/pg-sqlite-compatibility-matrix.md +0 -554
  781. package/cloud-runtime/standalone/docs/project-agent-migration-status.md +0 -229
  782. package/cloud-runtime/standalone/docs/runbook-shadow-read.md +0 -66
  783. package/cloud-runtime/standalone/docs/runbook.md +0 -155
  784. package/cloud-runtime/standalone/docs/specs/cli-postgres-removal.md +0 -69
  785. package/cloud-runtime/standalone/docs/specs/thread-mentions.md +0 -53
  786. package/cloud-runtime/standalone/docs/ux/GlobalChatFlow.storyboard +0 -23
  787. package/cloud-runtime/standalone/docs/ux/assistant-chat-cli.md +0 -32
  788. package/cloud-runtime/standalone/mcp/dist/constants.js +0 -66
  789. package/cloud-runtime/standalone/mcp/dist/db.js +0 -220
  790. package/cloud-runtime/standalone/mcp/dist/index.js +0 -7
  791. package/cloud-runtime/standalone/mcp/dist/security.js +0 -18
  792. package/cloud-runtime/standalone/mcp/dist/server.js +0 -240
  793. package/cloud-runtime/standalone/mcp/dist/task-context.js +0 -287
  794. package/cloud-runtime/standalone/mcp/dist/test-client.js +0 -82
  795. package/cloud-runtime/standalone/mcp/dist/tools/audit.js +0 -69
  796. package/cloud-runtime/standalone/mcp/dist/tools/learnings.js +0 -88
  797. package/cloud-runtime/standalone/mcp/dist/tools/queue.js +0 -312
  798. package/cloud-runtime/standalone/mcp/dist/tools/tasks.js +0 -244
  799. package/cloud-runtime/standalone/mcp/dist/types.js +0 -74
  800. package/cloud-runtime/standalone/node_modules/@img/sharp-darwin-arm64/lib/sharp-darwin-arm64.node +0 -0
  801. package/cloud-runtime/standalone/notes/comments-context-demo.md +0 -141
  802. package/cloud-runtime/standalone/notes/comments-context-plan.md +0 -119
  803. package/cloud-runtime/standalone/notes/context-audit.md +0 -21
  804. package/cloud-runtime/standalone/notes/project-layer-plan.md +0 -30
  805. package/cloud-runtime/standalone/notes/project-layer.md +0 -123
  806. package/cloud-runtime/standalone/notes/temporal-migration-design.md +0 -199
  807. package/cloud-runtime/standalone/playwright-report/data/00d55996f37c1506b90144c85493dd85032c13e5.png +0 -0
  808. package/cloud-runtime/standalone/playwright-report/data/0b9d409e57237ae111d7ba258d3dfe64dc368456.png +0 -0
  809. package/cloud-runtime/standalone/playwright-report/data/b33d5e80a15bd1deda4415b9d318ef73f581c950.png +0 -0
  810. package/cloud-runtime/standalone/playwright-report/data/b55684161aa440d0614595e13c91338f0420abbb.md +0 -131
  811. package/cloud-runtime/standalone/playwright-report/data/b9913957ae07e7565c38ddd71215be79b1ceb017.png +0 -0
  812. package/cloud-runtime/standalone/playwright-report/data/c3538be8ebbebc9fe4a7df8f12f04483af4a0d91.png +0 -0
  813. package/cloud-runtime/standalone/playwright-report/data/fe638f64ff5e36f1c30325564565662d3f57da87.md +0 -180
  814. package/cloud-runtime/standalone/playwright-report/index.html +0 -85
  815. package/cloud-runtime/standalone/test-results/auth-Authentication-Flow-S-aff25-sion-across-page-navigation-chromium/test-failed-1.png +0 -0
  816. package/cloud-runtime/standalone/test-results/comments-Task-comments-add-4dc59-nd-persists-it-for-the-task-chromium/error-context.md +0 -131
  817. package/cloud-runtime/standalone/test-results/comments-Task-comments-add-4dc59-nd-persists-it-for-the-task-chromium/test-failed-1.png +0 -0
  818. package/cloud-runtime/standalone/test-results/kanban-Kanban-Board-Stage--4082a-er-planning-after-ideation--chromium/error-context.md +0 -180
  819. package/cloud-runtime/standalone/test-results/kanban-Kanban-Board-Stage--4082a-er-planning-after-ideation--chromium/test-failed-1.png +0 -0
  820. package/cloud-runtime/standalone/test-results/kanban-Kanban-Board-Stage-Columns-displays-all-9-SDLC-stages-chromium/error-context.md +0 -180
  821. package/cloud-runtime/standalone/test-results/kanban-Kanban-Board-Stage-Columns-displays-all-9-SDLC-stages-chromium/test-failed-1.png +0 -0
  822. package/cloud-runtime/standalone/test-results/kanban-Kanban-Board-Task-D-b6d98-ys-tasks-in-correct-columns-chromium/error-context.md +0 -180
  823. package/cloud-runtime/standalone/test-results/kanban-Kanban-Board-Task-D-b6d98-ys-tasks-in-correct-columns-chromium/test-failed-1.png +0 -0
  824. package/cloud-runtime/standalone/test-results/kanban-Kanban-Board-Task-Display-shows-task-count-per-column-chromium/test-failed-1.png +0 -0
  825. package/cloud-runtime/standalone/test-results/kanban-Task-Lifecycle-can-advance-task-through-all-stages-chromium/test-failed-1.png +0 -0
  826. package/cloud-runtime/standalone/tsconfig.tsbuildinfo +0 -1
  827. /package/cloud-runtime/standalone/.next/static/{AB08MY3MKLsqeJYL8OZ2g → i_9nSHyb52FGkCbRgv7EJ}/_buildManifest.js +0 -0
  828. /package/cloud-runtime/standalone/.next/static/{AB08MY3MKLsqeJYL8OZ2g → i_9nSHyb52FGkCbRgv7EJ}/_clientMiddlewareManifest.json +0 -0
  829. /package/cloud-runtime/standalone/.next/static/{AB08MY3MKLsqeJYL8OZ2g → i_9nSHyb52FGkCbRgv7EJ}/_ssgManifest.js +0 -0
  830. /package/cloud-runtime/standalone/node_modules/@img/{sharp-libvips-darwin-arm64 → sharp-libvips-linux-x64}/lib/index.js +0 -0
  831. /package/cloud-runtime/standalone/node_modules/@img/{sharp-libvips-darwin-arm64 → sharp-libvips-linux-x64}/versions.json +0 -0
@@ -1,1024 +0,0 @@
1
-
2
- <!doctype html>
3
- <html lang="en">
4
-
5
- <head>
6
- <title>Code coverage report for components/KanbanBoard.tsx</title>
7
- <meta charset="utf-8" />
8
- <link rel="stylesheet" href="../prettify.css" />
9
- <link rel="stylesheet" href="../base.css" />
10
- <link rel="shortcut icon" type="image/x-icon" href="../favicon.png" />
11
- <meta name="viewport" content="width=device-width, initial-scale=1" />
12
- <style type='text/css'>
13
- .coverage-summary .sorter {
14
- background-image: url(../sort-arrow-sprite.png);
15
- }
16
- </style>
17
- </head>
18
-
19
- <body>
20
- <div class='wrapper'>
21
- <div class='pad1'>
22
- <h1><a href="../index.html">All files</a> / <a href="index.html">components</a> KanbanBoard.tsx</h1>
23
- <div class='clearfix'>
24
-
25
- <div class='fl pad1y space-right2'>
26
- <span class="strong">22.72% </span>
27
- <span class="quiet">Statements</span>
28
- <span class='fraction'>25/110</span>
29
- </div>
30
-
31
-
32
- <div class='fl pad1y space-right2'>
33
- <span class="strong">15.71% </span>
34
- <span class="quiet">Branches</span>
35
- <span class='fraction'>11/70</span>
36
- </div>
37
-
38
-
39
- <div class='fl pad1y space-right2'>
40
- <span class="strong">35.71% </span>
41
- <span class="quiet">Functions</span>
42
- <span class='fraction'>10/28</span>
43
- </div>
44
-
45
-
46
- <div class='fl pad1y space-right2'>
47
- <span class="strong">26.37% </span>
48
- <span class="quiet">Lines</span>
49
- <span class='fraction'>24/91</span>
50
- </div>
51
-
52
-
53
- </div>
54
- <p class="quiet">
55
- Press <em>n</em> or <em>j</em> to go to the next uncovered block, <em>b</em>, <em>p</em> or <em>k</em> for the previous block.
56
- </p>
57
- <template id="filterTemplate">
58
- <div class="quiet">
59
- Filter:
60
- <input type="search" id="fileSearch">
61
- </div>
62
- </template>
63
- </div>
64
- <div class='status-line low'></div>
65
- <pre><table class="coverage">
66
- <tr><td class="line-count quiet"><a name='L1'></a><a href='#L1'>1</a>
67
- <a name='L2'></a><a href='#L2'>2</a>
68
- <a name='L3'></a><a href='#L3'>3</a>
69
- <a name='L4'></a><a href='#L4'>4</a>
70
- <a name='L5'></a><a href='#L5'>5</a>
71
- <a name='L6'></a><a href='#L6'>6</a>
72
- <a name='L7'></a><a href='#L7'>7</a>
73
- <a name='L8'></a><a href='#L8'>8</a>
74
- <a name='L9'></a><a href='#L9'>9</a>
75
- <a name='L10'></a><a href='#L10'>10</a>
76
- <a name='L11'></a><a href='#L11'>11</a>
77
- <a name='L12'></a><a href='#L12'>12</a>
78
- <a name='L13'></a><a href='#L13'>13</a>
79
- <a name='L14'></a><a href='#L14'>14</a>
80
- <a name='L15'></a><a href='#L15'>15</a>
81
- <a name='L16'></a><a href='#L16'>16</a>
82
- <a name='L17'></a><a href='#L17'>17</a>
83
- <a name='L18'></a><a href='#L18'>18</a>
84
- <a name='L19'></a><a href='#L19'>19</a>
85
- <a name='L20'></a><a href='#L20'>20</a>
86
- <a name='L21'></a><a href='#L21'>21</a>
87
- <a name='L22'></a><a href='#L22'>22</a>
88
- <a name='L23'></a><a href='#L23'>23</a>
89
- <a name='L24'></a><a href='#L24'>24</a>
90
- <a name='L25'></a><a href='#L25'>25</a>
91
- <a name='L26'></a><a href='#L26'>26</a>
92
- <a name='L27'></a><a href='#L27'>27</a>
93
- <a name='L28'></a><a href='#L28'>28</a>
94
- <a name='L29'></a><a href='#L29'>29</a>
95
- <a name='L30'></a><a href='#L30'>30</a>
96
- <a name='L31'></a><a href='#L31'>31</a>
97
- <a name='L32'></a><a href='#L32'>32</a>
98
- <a name='L33'></a><a href='#L33'>33</a>
99
- <a name='L34'></a><a href='#L34'>34</a>
100
- <a name='L35'></a><a href='#L35'>35</a>
101
- <a name='L36'></a><a href='#L36'>36</a>
102
- <a name='L37'></a><a href='#L37'>37</a>
103
- <a name='L38'></a><a href='#L38'>38</a>
104
- <a name='L39'></a><a href='#L39'>39</a>
105
- <a name='L40'></a><a href='#L40'>40</a>
106
- <a name='L41'></a><a href='#L41'>41</a>
107
- <a name='L42'></a><a href='#L42'>42</a>
108
- <a name='L43'></a><a href='#L43'>43</a>
109
- <a name='L44'></a><a href='#L44'>44</a>
110
- <a name='L45'></a><a href='#L45'>45</a>
111
- <a name='L46'></a><a href='#L46'>46</a>
112
- <a name='L47'></a><a href='#L47'>47</a>
113
- <a name='L48'></a><a href='#L48'>48</a>
114
- <a name='L49'></a><a href='#L49'>49</a>
115
- <a name='L50'></a><a href='#L50'>50</a>
116
- <a name='L51'></a><a href='#L51'>51</a>
117
- <a name='L52'></a><a href='#L52'>52</a>
118
- <a name='L53'></a><a href='#L53'>53</a>
119
- <a name='L54'></a><a href='#L54'>54</a>
120
- <a name='L55'></a><a href='#L55'>55</a>
121
- <a name='L56'></a><a href='#L56'>56</a>
122
- <a name='L57'></a><a href='#L57'>57</a>
123
- <a name='L58'></a><a href='#L58'>58</a>
124
- <a name='L59'></a><a href='#L59'>59</a>
125
- <a name='L60'></a><a href='#L60'>60</a>
126
- <a name='L61'></a><a href='#L61'>61</a>
127
- <a name='L62'></a><a href='#L62'>62</a>
128
- <a name='L63'></a><a href='#L63'>63</a>
129
- <a name='L64'></a><a href='#L64'>64</a>
130
- <a name='L65'></a><a href='#L65'>65</a>
131
- <a name='L66'></a><a href='#L66'>66</a>
132
- <a name='L67'></a><a href='#L67'>67</a>
133
- <a name='L68'></a><a href='#L68'>68</a>
134
- <a name='L69'></a><a href='#L69'>69</a>
135
- <a name='L70'></a><a href='#L70'>70</a>
136
- <a name='L71'></a><a href='#L71'>71</a>
137
- <a name='L72'></a><a href='#L72'>72</a>
138
- <a name='L73'></a><a href='#L73'>73</a>
139
- <a name='L74'></a><a href='#L74'>74</a>
140
- <a name='L75'></a><a href='#L75'>75</a>
141
- <a name='L76'></a><a href='#L76'>76</a>
142
- <a name='L77'></a><a href='#L77'>77</a>
143
- <a name='L78'></a><a href='#L78'>78</a>
144
- <a name='L79'></a><a href='#L79'>79</a>
145
- <a name='L80'></a><a href='#L80'>80</a>
146
- <a name='L81'></a><a href='#L81'>81</a>
147
- <a name='L82'></a><a href='#L82'>82</a>
148
- <a name='L83'></a><a href='#L83'>83</a>
149
- <a name='L84'></a><a href='#L84'>84</a>
150
- <a name='L85'></a><a href='#L85'>85</a>
151
- <a name='L86'></a><a href='#L86'>86</a>
152
- <a name='L87'></a><a href='#L87'>87</a>
153
- <a name='L88'></a><a href='#L88'>88</a>
154
- <a name='L89'></a><a href='#L89'>89</a>
155
- <a name='L90'></a><a href='#L90'>90</a>
156
- <a name='L91'></a><a href='#L91'>91</a>
157
- <a name='L92'></a><a href='#L92'>92</a>
158
- <a name='L93'></a><a href='#L93'>93</a>
159
- <a name='L94'></a><a href='#L94'>94</a>
160
- <a name='L95'></a><a href='#L95'>95</a>
161
- <a name='L96'></a><a href='#L96'>96</a>
162
- <a name='L97'></a><a href='#L97'>97</a>
163
- <a name='L98'></a><a href='#L98'>98</a>
164
- <a name='L99'></a><a href='#L99'>99</a>
165
- <a name='L100'></a><a href='#L100'>100</a>
166
- <a name='L101'></a><a href='#L101'>101</a>
167
- <a name='L102'></a><a href='#L102'>102</a>
168
- <a name='L103'></a><a href='#L103'>103</a>
169
- <a name='L104'></a><a href='#L104'>104</a>
170
- <a name='L105'></a><a href='#L105'>105</a>
171
- <a name='L106'></a><a href='#L106'>106</a>
172
- <a name='L107'></a><a href='#L107'>107</a>
173
- <a name='L108'></a><a href='#L108'>108</a>
174
- <a name='L109'></a><a href='#L109'>109</a>
175
- <a name='L110'></a><a href='#L110'>110</a>
176
- <a name='L111'></a><a href='#L111'>111</a>
177
- <a name='L112'></a><a href='#L112'>112</a>
178
- <a name='L113'></a><a href='#L113'>113</a>
179
- <a name='L114'></a><a href='#L114'>114</a>
180
- <a name='L115'></a><a href='#L115'>115</a>
181
- <a name='L116'></a><a href='#L116'>116</a>
182
- <a name='L117'></a><a href='#L117'>117</a>
183
- <a name='L118'></a><a href='#L118'>118</a>
184
- <a name='L119'></a><a href='#L119'>119</a>
185
- <a name='L120'></a><a href='#L120'>120</a>
186
- <a name='L121'></a><a href='#L121'>121</a>
187
- <a name='L122'></a><a href='#L122'>122</a>
188
- <a name='L123'></a><a href='#L123'>123</a>
189
- <a name='L124'></a><a href='#L124'>124</a>
190
- <a name='L125'></a><a href='#L125'>125</a>
191
- <a name='L126'></a><a href='#L126'>126</a>
192
- <a name='L127'></a><a href='#L127'>127</a>
193
- <a name='L128'></a><a href='#L128'>128</a>
194
- <a name='L129'></a><a href='#L129'>129</a>
195
- <a name='L130'></a><a href='#L130'>130</a>
196
- <a name='L131'></a><a href='#L131'>131</a>
197
- <a name='L132'></a><a href='#L132'>132</a>
198
- <a name='L133'></a><a href='#L133'>133</a>
199
- <a name='L134'></a><a href='#L134'>134</a>
200
- <a name='L135'></a><a href='#L135'>135</a>
201
- <a name='L136'></a><a href='#L136'>136</a>
202
- <a name='L137'></a><a href='#L137'>137</a>
203
- <a name='L138'></a><a href='#L138'>138</a>
204
- <a name='L139'></a><a href='#L139'>139</a>
205
- <a name='L140'></a><a href='#L140'>140</a>
206
- <a name='L141'></a><a href='#L141'>141</a>
207
- <a name='L142'></a><a href='#L142'>142</a>
208
- <a name='L143'></a><a href='#L143'>143</a>
209
- <a name='L144'></a><a href='#L144'>144</a>
210
- <a name='L145'></a><a href='#L145'>145</a>
211
- <a name='L146'></a><a href='#L146'>146</a>
212
- <a name='L147'></a><a href='#L147'>147</a>
213
- <a name='L148'></a><a href='#L148'>148</a>
214
- <a name='L149'></a><a href='#L149'>149</a>
215
- <a name='L150'></a><a href='#L150'>150</a>
216
- <a name='L151'></a><a href='#L151'>151</a>
217
- <a name='L152'></a><a href='#L152'>152</a>
218
- <a name='L153'></a><a href='#L153'>153</a>
219
- <a name='L154'></a><a href='#L154'>154</a>
220
- <a name='L155'></a><a href='#L155'>155</a>
221
- <a name='L156'></a><a href='#L156'>156</a>
222
- <a name='L157'></a><a href='#L157'>157</a>
223
- <a name='L158'></a><a href='#L158'>158</a>
224
- <a name='L159'></a><a href='#L159'>159</a>
225
- <a name='L160'></a><a href='#L160'>160</a>
226
- <a name='L161'></a><a href='#L161'>161</a>
227
- <a name='L162'></a><a href='#L162'>162</a>
228
- <a name='L163'></a><a href='#L163'>163</a>
229
- <a name='L164'></a><a href='#L164'>164</a>
230
- <a name='L165'></a><a href='#L165'>165</a>
231
- <a name='L166'></a><a href='#L166'>166</a>
232
- <a name='L167'></a><a href='#L167'>167</a>
233
- <a name='L168'></a><a href='#L168'>168</a>
234
- <a name='L169'></a><a href='#L169'>169</a>
235
- <a name='L170'></a><a href='#L170'>170</a>
236
- <a name='L171'></a><a href='#L171'>171</a>
237
- <a name='L172'></a><a href='#L172'>172</a>
238
- <a name='L173'></a><a href='#L173'>173</a>
239
- <a name='L174'></a><a href='#L174'>174</a>
240
- <a name='L175'></a><a href='#L175'>175</a>
241
- <a name='L176'></a><a href='#L176'>176</a>
242
- <a name='L177'></a><a href='#L177'>177</a>
243
- <a name='L178'></a><a href='#L178'>178</a>
244
- <a name='L179'></a><a href='#L179'>179</a>
245
- <a name='L180'></a><a href='#L180'>180</a>
246
- <a name='L181'></a><a href='#L181'>181</a>
247
- <a name='L182'></a><a href='#L182'>182</a>
248
- <a name='L183'></a><a href='#L183'>183</a>
249
- <a name='L184'></a><a href='#L184'>184</a>
250
- <a name='L185'></a><a href='#L185'>185</a>
251
- <a name='L186'></a><a href='#L186'>186</a>
252
- <a name='L187'></a><a href='#L187'>187</a>
253
- <a name='L188'></a><a href='#L188'>188</a>
254
- <a name='L189'></a><a href='#L189'>189</a>
255
- <a name='L190'></a><a href='#L190'>190</a>
256
- <a name='L191'></a><a href='#L191'>191</a>
257
- <a name='L192'></a><a href='#L192'>192</a>
258
- <a name='L193'></a><a href='#L193'>193</a>
259
- <a name='L194'></a><a href='#L194'>194</a>
260
- <a name='L195'></a><a href='#L195'>195</a>
261
- <a name='L196'></a><a href='#L196'>196</a>
262
- <a name='L197'></a><a href='#L197'>197</a>
263
- <a name='L198'></a><a href='#L198'>198</a>
264
- <a name='L199'></a><a href='#L199'>199</a>
265
- <a name='L200'></a><a href='#L200'>200</a>
266
- <a name='L201'></a><a href='#L201'>201</a>
267
- <a name='L202'></a><a href='#L202'>202</a>
268
- <a name='L203'></a><a href='#L203'>203</a>
269
- <a name='L204'></a><a href='#L204'>204</a>
270
- <a name='L205'></a><a href='#L205'>205</a>
271
- <a name='L206'></a><a href='#L206'>206</a>
272
- <a name='L207'></a><a href='#L207'>207</a>
273
- <a name='L208'></a><a href='#L208'>208</a>
274
- <a name='L209'></a><a href='#L209'>209</a>
275
- <a name='L210'></a><a href='#L210'>210</a>
276
- <a name='L211'></a><a href='#L211'>211</a>
277
- <a name='L212'></a><a href='#L212'>212</a>
278
- <a name='L213'></a><a href='#L213'>213</a>
279
- <a name='L214'></a><a href='#L214'>214</a>
280
- <a name='L215'></a><a href='#L215'>215</a>
281
- <a name='L216'></a><a href='#L216'>216</a>
282
- <a name='L217'></a><a href='#L217'>217</a>
283
- <a name='L218'></a><a href='#L218'>218</a>
284
- <a name='L219'></a><a href='#L219'>219</a>
285
- <a name='L220'></a><a href='#L220'>220</a>
286
- <a name='L221'></a><a href='#L221'>221</a>
287
- <a name='L222'></a><a href='#L222'>222</a>
288
- <a name='L223'></a><a href='#L223'>223</a>
289
- <a name='L224'></a><a href='#L224'>224</a>
290
- <a name='L225'></a><a href='#L225'>225</a>
291
- <a name='L226'></a><a href='#L226'>226</a>
292
- <a name='L227'></a><a href='#L227'>227</a>
293
- <a name='L228'></a><a href='#L228'>228</a>
294
- <a name='L229'></a><a href='#L229'>229</a>
295
- <a name='L230'></a><a href='#L230'>230</a>
296
- <a name='L231'></a><a href='#L231'>231</a>
297
- <a name='L232'></a><a href='#L232'>232</a>
298
- <a name='L233'></a><a href='#L233'>233</a>
299
- <a name='L234'></a><a href='#L234'>234</a>
300
- <a name='L235'></a><a href='#L235'>235</a>
301
- <a name='L236'></a><a href='#L236'>236</a>
302
- <a name='L237'></a><a href='#L237'>237</a>
303
- <a name='L238'></a><a href='#L238'>238</a>
304
- <a name='L239'></a><a href='#L239'>239</a>
305
- <a name='L240'></a><a href='#L240'>240</a>
306
- <a name='L241'></a><a href='#L241'>241</a>
307
- <a name='L242'></a><a href='#L242'>242</a>
308
- <a name='L243'></a><a href='#L243'>243</a>
309
- <a name='L244'></a><a href='#L244'>244</a>
310
- <a name='L245'></a><a href='#L245'>245</a>
311
- <a name='L246'></a><a href='#L246'>246</a>
312
- <a name='L247'></a><a href='#L247'>247</a>
313
- <a name='L248'></a><a href='#L248'>248</a>
314
- <a name='L249'></a><a href='#L249'>249</a>
315
- <a name='L250'></a><a href='#L250'>250</a>
316
- <a name='L251'></a><a href='#L251'>251</a>
317
- <a name='L252'></a><a href='#L252'>252</a>
318
- <a name='L253'></a><a href='#L253'>253</a>
319
- <a name='L254'></a><a href='#L254'>254</a>
320
- <a name='L255'></a><a href='#L255'>255</a>
321
- <a name='L256'></a><a href='#L256'>256</a>
322
- <a name='L257'></a><a href='#L257'>257</a>
323
- <a name='L258'></a><a href='#L258'>258</a>
324
- <a name='L259'></a><a href='#L259'>259</a>
325
- <a name='L260'></a><a href='#L260'>260</a>
326
- <a name='L261'></a><a href='#L261'>261</a>
327
- <a name='L262'></a><a href='#L262'>262</a>
328
- <a name='L263'></a><a href='#L263'>263</a>
329
- <a name='L264'></a><a href='#L264'>264</a>
330
- <a name='L265'></a><a href='#L265'>265</a>
331
- <a name='L266'></a><a href='#L266'>266</a>
332
- <a name='L267'></a><a href='#L267'>267</a>
333
- <a name='L268'></a><a href='#L268'>268</a>
334
- <a name='L269'></a><a href='#L269'>269</a>
335
- <a name='L270'></a><a href='#L270'>270</a>
336
- <a name='L271'></a><a href='#L271'>271</a>
337
- <a name='L272'></a><a href='#L272'>272</a>
338
- <a name='L273'></a><a href='#L273'>273</a>
339
- <a name='L274'></a><a href='#L274'>274</a>
340
- <a name='L275'></a><a href='#L275'>275</a>
341
- <a name='L276'></a><a href='#L276'>276</a>
342
- <a name='L277'></a><a href='#L277'>277</a>
343
- <a name='L278'></a><a href='#L278'>278</a>
344
- <a name='L279'></a><a href='#L279'>279</a>
345
- <a name='L280'></a><a href='#L280'>280</a>
346
- <a name='L281'></a><a href='#L281'>281</a>
347
- <a name='L282'></a><a href='#L282'>282</a>
348
- <a name='L283'></a><a href='#L283'>283</a>
349
- <a name='L284'></a><a href='#L284'>284</a>
350
- <a name='L285'></a><a href='#L285'>285</a>
351
- <a name='L286'></a><a href='#L286'>286</a>
352
- <a name='L287'></a><a href='#L287'>287</a>
353
- <a name='L288'></a><a href='#L288'>288</a>
354
- <a name='L289'></a><a href='#L289'>289</a>
355
- <a name='L290'></a><a href='#L290'>290</a>
356
- <a name='L291'></a><a href='#L291'>291</a>
357
- <a name='L292'></a><a href='#L292'>292</a>
358
- <a name='L293'></a><a href='#L293'>293</a>
359
- <a name='L294'></a><a href='#L294'>294</a>
360
- <a name='L295'></a><a href='#L295'>295</a>
361
- <a name='L296'></a><a href='#L296'>296</a>
362
- <a name='L297'></a><a href='#L297'>297</a>
363
- <a name='L298'></a><a href='#L298'>298</a>
364
- <a name='L299'></a><a href='#L299'>299</a>
365
- <a name='L300'></a><a href='#L300'>300</a>
366
- <a name='L301'></a><a href='#L301'>301</a>
367
- <a name='L302'></a><a href='#L302'>302</a>
368
- <a name='L303'></a><a href='#L303'>303</a>
369
- <a name='L304'></a><a href='#L304'>304</a>
370
- <a name='L305'></a><a href='#L305'>305</a>
371
- <a name='L306'></a><a href='#L306'>306</a>
372
- <a name='L307'></a><a href='#L307'>307</a>
373
- <a name='L308'></a><a href='#L308'>308</a>
374
- <a name='L309'></a><a href='#L309'>309</a>
375
- <a name='L310'></a><a href='#L310'>310</a>
376
- <a name='L311'></a><a href='#L311'>311</a>
377
- <a name='L312'></a><a href='#L312'>312</a>
378
- <a name='L313'></a><a href='#L313'>313</a>
379
- <a name='L314'></a><a href='#L314'>314</a></td><td class="line-coverage quiet"><span class="cline-any cline-neutral">&nbsp;</span>
380
- <span class="cline-any cline-neutral">&nbsp;</span>
381
- <span class="cline-any cline-yes">1x</span>
382
- <span class="cline-any cline-neutral">&nbsp;</span>
383
- <span class="cline-any cline-neutral">&nbsp;</span>
384
- <span class="cline-any cline-neutral">&nbsp;</span>
385
- <span class="cline-any cline-neutral">&nbsp;</span>
386
- <span class="cline-any cline-neutral">&nbsp;</span>
387
- <span class="cline-any cline-neutral">&nbsp;</span>
388
- <span class="cline-any cline-neutral">&nbsp;</span>
389
- <span class="cline-any cline-neutral">&nbsp;</span>
390
- <span class="cline-any cline-neutral">&nbsp;</span>
391
- <span class="cline-any cline-neutral">&nbsp;</span>
392
- <span class="cline-any cline-yes">1x</span>
393
- <span class="cline-any cline-neutral">&nbsp;</span>
394
- <span class="cline-any cline-neutral">&nbsp;</span>
395
- <span class="cline-any cline-neutral">&nbsp;</span>
396
- <span class="cline-any cline-neutral">&nbsp;</span>
397
- <span class="cline-any cline-yes">1x</span>
398
- <span class="cline-any cline-neutral">&nbsp;</span>
399
- <span class="cline-any cline-yes">1x</span>
400
- <span class="cline-any cline-yes">1x</span>
401
- <span class="cline-any cline-neutral">&nbsp;</span>
402
- <span class="cline-any cline-neutral">&nbsp;</span>
403
- <span class="cline-any cline-yes">14x</span>
404
- <span class="cline-any cline-neutral">&nbsp;</span>
405
- <span class="cline-any cline-neutral">&nbsp;</span>
406
- <span class="cline-any cline-neutral">&nbsp;</span>
407
- <span class="cline-any cline-neutral">&nbsp;</span>
408
- <span class="cline-any cline-neutral">&nbsp;</span>
409
- <span class="cline-any cline-neutral">&nbsp;</span>
410
- <span class="cline-any cline-neutral">&nbsp;</span>
411
- <span class="cline-any cline-neutral">&nbsp;</span>
412
- <span class="cline-any cline-neutral">&nbsp;</span>
413
- <span class="cline-any cline-neutral">&nbsp;</span>
414
- <span class="cline-any cline-neutral">&nbsp;</span>
415
- <span class="cline-any cline-neutral">&nbsp;</span>
416
- <span class="cline-any cline-neutral">&nbsp;</span>
417
- <span class="cline-any cline-yes">1x</span>
418
- <span class="cline-any cline-neutral">&nbsp;</span>
419
- <span class="cline-any cline-neutral">&nbsp;</span>
420
- <span class="cline-any cline-neutral">&nbsp;</span>
421
- <span class="cline-any cline-neutral">&nbsp;</span>
422
- <span class="cline-any cline-neutral">&nbsp;</span>
423
- <span class="cline-any cline-neutral">&nbsp;</span>
424
- <span class="cline-any cline-neutral">&nbsp;</span>
425
- <span class="cline-any cline-neutral">&nbsp;</span>
426
- <span class="cline-any cline-neutral">&nbsp;</span>
427
- <span class="cline-any cline-neutral">&nbsp;</span>
428
- <span class="cline-any cline-neutral">&nbsp;</span>
429
- <span class="cline-any cline-neutral">&nbsp;</span>
430
- <span class="cline-any cline-neutral">&nbsp;</span>
431
- <span class="cline-any cline-yes">17x</span>
432
- <span class="cline-any cline-yes">153x</span>
433
- <span class="cline-any cline-yes">711x</span>
434
- <span class="cline-any cline-yes">14x</span>
435
- <span class="cline-any cline-yes">153x</span>
436
- <span class="cline-any cline-neutral">&nbsp;</span>
437
- <span class="cline-any cline-neutral">&nbsp;</span>
438
- <span class="cline-any cline-neutral">&nbsp;</span>
439
- <span class="cline-any cline-neutral">&nbsp;</span>
440
- <span class="cline-any cline-neutral">&nbsp;</span>
441
- <span class="cline-any cline-no">&nbsp;</span>
442
- <span class="cline-any cline-no">&nbsp;</span>
443
- <span class="cline-any cline-neutral">&nbsp;</span>
444
- <span class="cline-any cline-neutral">&nbsp;</span>
445
- <span class="cline-any cline-no">&nbsp;</span>
446
- <span class="cline-any cline-neutral">&nbsp;</span>
447
- <span class="cline-any cline-neutral">&nbsp;</span>
448
- <span class="cline-any cline-no">&nbsp;</span>
449
- <span class="cline-any cline-neutral">&nbsp;</span>
450
- <span class="cline-any cline-neutral">&nbsp;</span>
451
- <span class="cline-any cline-no">&nbsp;</span>
452
- <span class="cline-any cline-neutral">&nbsp;</span>
453
- <span class="cline-any cline-no">&nbsp;</span>
454
- <span class="cline-any cline-neutral">&nbsp;</span>
455
- <span class="cline-any cline-neutral">&nbsp;</span>
456
- <span class="cline-any cline-neutral">&nbsp;</span>
457
- <span class="cline-any cline-neutral">&nbsp;</span>
458
- <span class="cline-any cline-neutral">&nbsp;</span>
459
- <span class="cline-any cline-neutral">&nbsp;</span>
460
- <span class="cline-any cline-neutral">&nbsp;</span>
461
- <span class="cline-any cline-neutral">&nbsp;</span>
462
- <span class="cline-any cline-neutral">&nbsp;</span>
463
- <span class="cline-any cline-yes">16x</span>
464
- <span class="cline-any cline-neutral">&nbsp;</span>
465
- <span class="cline-any cline-neutral">&nbsp;</span>
466
- <span class="cline-any cline-neutral">&nbsp;</span>
467
- <span class="cline-any cline-neutral">&nbsp;</span>
468
- <span class="cline-any cline-neutral">&nbsp;</span>
469
- <span class="cline-any cline-yes">17x</span>
470
- <span class="cline-any cline-yes">17x</span>
471
- <span class="cline-any cline-neutral">&nbsp;</span>
472
- <span class="cline-any cline-neutral">&nbsp;</span>
473
- <span class="cline-any cline-yes">17x</span>
474
- <span class="cline-any cline-yes">1x</span>
475
- <span class="cline-any cline-neutral">&nbsp;</span>
476
- <span class="cline-any cline-neutral">&nbsp;</span>
477
- <span class="cline-any cline-yes">17x</span>
478
- <span class="cline-any cline-neutral">&nbsp;</span>
479
- <span class="cline-any cline-yes">17x</span>
480
- <span class="cline-any cline-neutral">&nbsp;</span>
481
- <span class="cline-any cline-neutral">&nbsp;</span>
482
- <span class="cline-any cline-neutral">&nbsp;</span>
483
- <span class="cline-any cline-neutral">&nbsp;</span>
484
- <span class="cline-any cline-neutral">&nbsp;</span>
485
- <span class="cline-any cline-neutral">&nbsp;</span>
486
- <span class="cline-any cline-neutral">&nbsp;</span>
487
- <span class="cline-any cline-neutral">&nbsp;</span>
488
- <span class="cline-any cline-no">&nbsp;</span>
489
- <span class="cline-any cline-no">&nbsp;</span>
490
- <span class="cline-any cline-neutral">&nbsp;</span>
491
- <span class="cline-any cline-neutral">&nbsp;</span>
492
- <span class="cline-any cline-neutral">&nbsp;</span>
493
- <span class="cline-any cline-no">&nbsp;</span>
494
- <span class="cline-any cline-no">&nbsp;</span>
495
- <span class="cline-any cline-neutral">&nbsp;</span>
496
- <span class="cline-any cline-no">&nbsp;</span>
497
- <span class="cline-any cline-no">&nbsp;</span>
498
- <span class="cline-any cline-neutral">&nbsp;</span>
499
- <span class="cline-any cline-neutral">&nbsp;</span>
500
- <span class="cline-any cline-no">&nbsp;</span>
501
- <span class="cline-any cline-no">&nbsp;</span>
502
- <span class="cline-any cline-neutral">&nbsp;</span>
503
- <span class="cline-any cline-neutral">&nbsp;</span>
504
- <span class="cline-any cline-neutral">&nbsp;</span>
505
- <span class="cline-any cline-neutral">&nbsp;</span>
506
- <span class="cline-any cline-neutral">&nbsp;</span>
507
- <span class="cline-any cline-no">&nbsp;</span>
508
- <span class="cline-any cline-no">&nbsp;</span>
509
- <span class="cline-any cline-neutral">&nbsp;</span>
510
- <span class="cline-any cline-neutral">&nbsp;</span>
511
- <span class="cline-any cline-no">&nbsp;</span>
512
- <span class="cline-any cline-no">&nbsp;</span>
513
- <span class="cline-any cline-no">&nbsp;</span>
514
- <span class="cline-any cline-neutral">&nbsp;</span>
515
- <span class="cline-any cline-neutral">&nbsp;</span>
516
- <span class="cline-any cline-neutral">&nbsp;</span>
517
- <span class="cline-any cline-no">&nbsp;</span>
518
- <span class="cline-any cline-neutral">&nbsp;</span>
519
- <span class="cline-any cline-no">&nbsp;</span>
520
- <span class="cline-any cline-no">&nbsp;</span>
521
- <span class="cline-any cline-neutral">&nbsp;</span>
522
- <span class="cline-any cline-neutral">&nbsp;</span>
523
- <span class="cline-any cline-no">&nbsp;</span>
524
- <span class="cline-any cline-no">&nbsp;</span>
525
- <span class="cline-any cline-no">&nbsp;</span>
526
- <span class="cline-any cline-neutral">&nbsp;</span>
527
- <span class="cline-any cline-neutral">&nbsp;</span>
528
- <span class="cline-any cline-neutral">&nbsp;</span>
529
- <span class="cline-any cline-neutral">&nbsp;</span>
530
- <span class="cline-any cline-neutral">&nbsp;</span>
531
- <span class="cline-any cline-neutral">&nbsp;</span>
532
- <span class="cline-any cline-no">&nbsp;</span>
533
- <span class="cline-any cline-no">&nbsp;</span>
534
- <span class="cline-any cline-neutral">&nbsp;</span>
535
- <span class="cline-any cline-no">&nbsp;</span>
536
- <span class="cline-any cline-neutral">&nbsp;</span>
537
- <span class="cline-any cline-no">&nbsp;</span>
538
- <span class="cline-any cline-no">&nbsp;</span>
539
- <span class="cline-any cline-neutral">&nbsp;</span>
540
- <span class="cline-any cline-neutral">&nbsp;</span>
541
- <span class="cline-any cline-no">&nbsp;</span>
542
- <span class="cline-any cline-no">&nbsp;</span>
543
- <span class="cline-any cline-neutral">&nbsp;</span>
544
- <span class="cline-any cline-no">&nbsp;</span>
545
- <span class="cline-any cline-no">&nbsp;</span>
546
- <span class="cline-any cline-neutral">&nbsp;</span>
547
- <span class="cline-any cline-neutral">&nbsp;</span>
548
- <span class="cline-any cline-no">&nbsp;</span>
549
- <span class="cline-any cline-no">&nbsp;</span>
550
- <span class="cline-any cline-neutral">&nbsp;</span>
551
- <span class="cline-any cline-no">&nbsp;</span>
552
- <span class="cline-any cline-neutral">&nbsp;</span>
553
- <span class="cline-any cline-no">&nbsp;</span>
554
- <span class="cline-any cline-neutral">&nbsp;</span>
555
- <span class="cline-any cline-no">&nbsp;</span>
556
- <span class="cline-any cline-no">&nbsp;</span>
557
- <span class="cline-any cline-no">&nbsp;</span>
558
- <span class="cline-any cline-neutral">&nbsp;</span>
559
- <span class="cline-any cline-neutral">&nbsp;</span>
560
- <span class="cline-any cline-neutral">&nbsp;</span>
561
- <span class="cline-any cline-no">&nbsp;</span>
562
- <span class="cline-any cline-no">&nbsp;</span>
563
- <span class="cline-any cline-no">&nbsp;</span>
564
- <span class="cline-any cline-neutral">&nbsp;</span>
565
- <span class="cline-any cline-neutral">&nbsp;</span>
566
- <span class="cline-any cline-no">&nbsp;</span>
567
- <span class="cline-any cline-no">&nbsp;</span>
568
- <span class="cline-any cline-no">&nbsp;</span>
569
- <span class="cline-any cline-neutral">&nbsp;</span>
570
- <span class="cline-any cline-no">&nbsp;</span>
571
- <span class="cline-any cline-no">&nbsp;</span>
572
- <span class="cline-any cline-neutral">&nbsp;</span>
573
- <span class="cline-any cline-no">&nbsp;</span>
574
- <span class="cline-any cline-no">&nbsp;</span>
575
- <span class="cline-any cline-no">&nbsp;</span>
576
- <span class="cline-any cline-no">&nbsp;</span>
577
- <span class="cline-any cline-neutral">&nbsp;</span>
578
- <span class="cline-any cline-no">&nbsp;</span>
579
- <span class="cline-any cline-neutral">&nbsp;</span>
580
- <span class="cline-any cline-no">&nbsp;</span>
581
- <span class="cline-any cline-no">&nbsp;</span>
582
- <span class="cline-any cline-neutral">&nbsp;</span>
583
- <span class="cline-any cline-neutral">&nbsp;</span>
584
- <span class="cline-any cline-no">&nbsp;</span>
585
- <span class="cline-any cline-neutral">&nbsp;</span>
586
- <span class="cline-any cline-neutral">&nbsp;</span>
587
- <span class="cline-any cline-neutral">&nbsp;</span>
588
- <span class="cline-any cline-neutral">&nbsp;</span>
589
- <span class="cline-any cline-no">&nbsp;</span>
590
- <span class="cline-any cline-no">&nbsp;</span>
591
- <span class="cline-any cline-neutral">&nbsp;</span>
592
- <span class="cline-any cline-no">&nbsp;</span>
593
- <span class="cline-any cline-no">&nbsp;</span>
594
- <span class="cline-any cline-neutral">&nbsp;</span>
595
- <span class="cline-any cline-neutral">&nbsp;</span>
596
- <span class="cline-any cline-neutral">&nbsp;</span>
597
- <span class="cline-any cline-no">&nbsp;</span>
598
- <span class="cline-any cline-no">&nbsp;</span>
599
- <span class="cline-any cline-no">&nbsp;</span>
600
- <span class="cline-any cline-neutral">&nbsp;</span>
601
- <span class="cline-any cline-neutral">&nbsp;</span>
602
- <span class="cline-any cline-neutral">&nbsp;</span>
603
- <span class="cline-any cline-neutral">&nbsp;</span>
604
- <span class="cline-any cline-neutral">&nbsp;</span>
605
- <span class="cline-any cline-neutral">&nbsp;</span>
606
- <span class="cline-any cline-no">&nbsp;</span>
607
- <span class="cline-any cline-neutral">&nbsp;</span>
608
- <span class="cline-any cline-no">&nbsp;</span>
609
- <span class="cline-any cline-neutral">&nbsp;</span>
610
- <span class="cline-any cline-no">&nbsp;</span>
611
- <span class="cline-any cline-neutral">&nbsp;</span>
612
- <span class="cline-any cline-neutral">&nbsp;</span>
613
- <span class="cline-any cline-neutral">&nbsp;</span>
614
- <span class="cline-any cline-neutral">&nbsp;</span>
615
- <span class="cline-any cline-neutral">&nbsp;</span>
616
- <span class="cline-any cline-neutral">&nbsp;</span>
617
- <span class="cline-any cline-neutral">&nbsp;</span>
618
- <span class="cline-any cline-neutral">&nbsp;</span>
619
- <span class="cline-any cline-neutral">&nbsp;</span>
620
- <span class="cline-any cline-neutral">&nbsp;</span>
621
- <span class="cline-any cline-neutral">&nbsp;</span>
622
- <span class="cline-any cline-neutral">&nbsp;</span>
623
- <span class="cline-any cline-neutral">&nbsp;</span>
624
- <span class="cline-any cline-neutral">&nbsp;</span>
625
- <span class="cline-any cline-yes">153x</span>
626
- <span class="cline-any cline-neutral">&nbsp;</span>
627
- <span class="cline-any cline-neutral">&nbsp;</span>
628
- <span class="cline-any cline-neutral">&nbsp;</span>
629
- <span class="cline-any cline-neutral">&nbsp;</span>
630
- <span class="cline-any cline-neutral">&nbsp;</span>
631
- <span class="cline-any cline-neutral">&nbsp;</span>
632
- <span class="cline-any cline-neutral">&nbsp;</span>
633
- <span class="cline-any cline-neutral">&nbsp;</span>
634
- <span class="cline-any cline-neutral">&nbsp;</span>
635
- <span class="cline-any cline-neutral">&nbsp;</span>
636
- <span class="cline-any cline-neutral">&nbsp;</span>
637
- <span class="cline-any cline-neutral">&nbsp;</span>
638
- <span class="cline-any cline-neutral">&nbsp;</span>
639
- <span class="cline-any cline-neutral">&nbsp;</span>
640
- <span class="cline-any cline-neutral">&nbsp;</span>
641
- <span class="cline-any cline-neutral">&nbsp;</span>
642
- <span class="cline-any cline-neutral">&nbsp;</span>
643
- <span class="cline-any cline-neutral">&nbsp;</span>
644
- <span class="cline-any cline-neutral">&nbsp;</span>
645
- <span class="cline-any cline-neutral">&nbsp;</span>
646
- <span class="cline-any cline-neutral">&nbsp;</span>
647
- <span class="cline-any cline-neutral">&nbsp;</span>
648
- <span class="cline-any cline-yes">144x</span>
649
- <span class="cline-any cline-neutral">&nbsp;</span>
650
- <span class="cline-any cline-neutral">&nbsp;</span>
651
- <span class="cline-any cline-neutral">&nbsp;</span>
652
- <span class="cline-any cline-neutral">&nbsp;</span>
653
- <span class="cline-any cline-neutral">&nbsp;</span>
654
- <span class="cline-any cline-neutral">&nbsp;</span>
655
- <span class="cline-any cline-neutral">&nbsp;</span>
656
- <span class="cline-any cline-neutral">&nbsp;</span>
657
- <span class="cline-any cline-neutral">&nbsp;</span>
658
- <span class="cline-any cline-neutral">&nbsp;</span>
659
- <span class="cline-any cline-neutral">&nbsp;</span>
660
- <span class="cline-any cline-neutral">&nbsp;</span>
661
- <span class="cline-any cline-neutral">&nbsp;</span>
662
- <span class="cline-any cline-neutral">&nbsp;</span>
663
- <span class="cline-any cline-neutral">&nbsp;</span>
664
- <span class="cline-any cline-neutral">&nbsp;</span>
665
- <span class="cline-any cline-neutral">&nbsp;</span>
666
- <span class="cline-any cline-neutral">&nbsp;</span>
667
- <span class="cline-any cline-neutral">&nbsp;</span>
668
- <span class="cline-any cline-yes">73x</span>
669
- <span class="cline-any cline-neutral">&nbsp;</span>
670
- <span class="cline-any cline-neutral">&nbsp;</span>
671
- <span class="cline-any cline-neutral">&nbsp;</span>
672
- <span class="cline-any cline-neutral">&nbsp;</span>
673
- <span class="cline-any cline-neutral">&nbsp;</span>
674
- <span class="cline-any cline-neutral">&nbsp;</span>
675
- <span class="cline-any cline-neutral">&nbsp;</span>
676
- <span class="cline-any cline-neutral">&nbsp;</span>
677
- <span class="cline-any cline-neutral">&nbsp;</span>
678
- <span class="cline-any cline-neutral">&nbsp;</span>
679
- <span class="cline-any cline-neutral">&nbsp;</span>
680
- <span class="cline-any cline-yes">73x</span>
681
- <span class="cline-any cline-neutral">&nbsp;</span>
682
- <span class="cline-any cline-neutral">&nbsp;</span>
683
- <span class="cline-any cline-yes">2x</span>
684
- <span class="cline-any cline-neutral">&nbsp;</span>
685
- <span class="cline-any cline-neutral">&nbsp;</span>
686
- <span class="cline-any cline-neutral">&nbsp;</span>
687
- <span class="cline-any cline-neutral">&nbsp;</span>
688
- <span class="cline-any cline-neutral">&nbsp;</span>
689
- <span class="cline-any cline-neutral">&nbsp;</span>
690
- <span class="cline-any cline-neutral">&nbsp;</span>
691
- <span class="cline-any cline-neutral">&nbsp;</span>
692
- <span class="cline-any cline-neutral">&nbsp;</span></td><td class="text"><pre class="prettyprint lang-js">"use client";
693
- &nbsp;
694
- import { useState } from "react";
695
- import {
696
- DndContext,
697
- DragEndEvent,
698
- DragOverEvent,
699
- DragOverlay,
700
- DragStartEvent,
701
- PointerSensor,
702
- useSensor,
703
- useSensors,
704
- closestCorners,
705
- } from "@dnd-kit/core";
706
- import {
707
- SortableContext,
708
- verticalListSortingStrategy,
709
- arrayMove,
710
- } from "@dnd-kit/sortable";
711
- import { Task } from "./TaskCard";
712
- import SortableTaskCard from "./SortableTaskCard";
713
- import TaskCardOverlay from "./TaskCardOverlay";
714
- &nbsp;
715
- // SDLC stages as columns
716
- export const STAGES = [
717
- "ideation",
718
- "planning",
719
- "coding",
720
- "qa",
721
- "acceptance",
722
- "deployment",
723
- "smoke_test",
724
- "release",
725
- "done",
726
- ] as const;
727
- &nbsp;
728
- export type Stage = (typeof STAGES)[number];
729
- &nbsp;
730
- const stageConfig: Record&lt;Stage, { icon: string; label: string }&gt; = {
731
- ideation: { icon: "💡", label: "Ideation" },
732
- planning: { icon: "📋", label: "Planning" },
733
- coding: { icon: "💻", label: "Coding" },
734
- qa: { icon: "🧪", label: "QA" },
735
- acceptance: { icon: "✓", label: "Acceptance" },
736
- deployment: { icon: "📦", label: "Deployment" },
737
- smoke_test: { icon: "🔥", label: "Smoke Test" },
738
- release: { icon: "📢", label: "Release" },
739
- done: { icon: "✅", label: "Done" },
740
- };
741
- &nbsp;
742
- // Group tasks by stage
743
- function tasksByStage(tasks: Task[]): Record&lt;Stage, Task[]&gt; {
744
- return STAGES.reduce((acc, stage) =&gt; {
745
- acc[stage] = tasks
746
- .filter((t) =&gt; t.stage === stage)
747
- .sort((a, b) =&gt; (a.priority || 0) - (b.priority || 0));
748
- return acc;
749
- }, {} as Record&lt;Stage, Task[]&gt;);
750
- }
751
- &nbsp;
752
- // Check if stage transition is valid (can only move forward or back one step, or to any earlier stage)
753
- function <span class="fstat-no" title="function not covered" >isValidTransition(f</span>romStage: Stage, toStage: Stage): boolean {
754
- const fromIndex = <span class="cstat-no" title="statement not covered" >STAGES.indexOf(fromStage);</span>
755
- const toIndex = <span class="cstat-no" title="statement not covered" >STAGES.indexOf(toStage);</span>
756
-
757
- // Allow moving backward (reopening)
758
- <span class="cstat-no" title="statement not covered" > if (toIndex &lt; fromIndex) <span class="cstat-no" title="statement not covered" >return true;</span></span>
759
-
760
- // Allow moving forward by one step
761
- <span class="cstat-no" title="statement not covered" > if (toIndex === fromIndex + 1) <span class="cstat-no" title="statement not covered" >return true;</span></span>
762
-
763
- // Allow staying in same stage
764
- <span class="cstat-no" title="statement not covered" > if (toIndex === fromIndex) <span class="cstat-no" title="statement not covered" >return true;</span></span>
765
-
766
- <span class="cstat-no" title="statement not covered" > return false;</span>
767
- }
768
- &nbsp;
769
- interface KanbanBoardProps {
770
- tasks: Task[];
771
- onTasksChange?: (tasks: Task[]) =&gt; void;
772
- onSelectTask?: (task: Task) =&gt; void;
773
- onTaskUpdate?: (taskId: string, updates: Partial&lt;Task&gt;) =&gt; Promise&lt;void&gt;;
774
- }
775
- &nbsp;
776
- export default function KanbanBoard({
777
- tasks,
778
- onTasksChange,
779
- onSelectTask,
780
- onTaskUpdate,
781
- }: KanbanBoardProps) {
782
- const [activeTask, setActiveTask] = useState&lt;Task | null&gt;(null);
783
- const [localTasks, setLocalTasks] = useState(tasks);
784
- &nbsp;
785
- // Update local tasks when props change
786
- if (tasks !== localTasks &amp;&amp; !activeTask) {
787
- setLocalTasks(tasks);
788
- }
789
- &nbsp;
790
- const grouped = tasksByStage(localTasks);
791
- &nbsp;
792
- const sensors = useSensors(
793
- useSensor(PointerSensor, {
794
- activationConstraint: {
795
- distance: 8, // 8px movement before drag starts
796
- },
797
- })
798
- );
799
- &nbsp;
800
- function <span class="fstat-no" title="function not covered" >handleDragStart(e</span>vent: DragStartEvent) {
801
- const task = <span class="cstat-no" title="statement not covered" >localTasks.find(<span class="fstat-no" title="function not covered" >(t</span>) =&gt; <span class="cstat-no" title="statement not covered" >t.id === event.active.id)</span>;</span>
802
- <span class="cstat-no" title="statement not covered" > if (task) <span class="cstat-no" title="statement not covered" >setActiveTask(task);</span></span>
803
- }
804
- &nbsp;
805
- function <span class="fstat-no" title="function not covered" >handleDragOver(e</span>vent: DragOverEvent) {
806
- const { active, over } = <span class="cstat-no" title="statement not covered" >event;</span>
807
- <span class="cstat-no" title="statement not covered" > if (!over) <span class="cstat-no" title="statement not covered" >return;</span></span>
808
- &nbsp;
809
- const activeId = <span class="cstat-no" title="statement not covered" >active.id </span>as string;
810
- const overId = <span class="cstat-no" title="statement not covered" >over.id </span>as string;
811
- &nbsp;
812
- // Find the task being dragged
813
- const activeTask = <span class="cstat-no" title="statement not covered" >localTasks.find(<span class="fstat-no" title="function not covered" >(t</span>) =&gt; <span class="cstat-no" title="statement not covered" >t.id === activeId);</span></span>
814
- <span class="cstat-no" title="statement not covered" > if (!activeTask) <span class="cstat-no" title="statement not covered" >return;</span></span>
815
- &nbsp;
816
- // Determine target stage
817
- let targetStage: Stage;
818
-
819
- // Check if dropping on a stage column
820
- <span class="cstat-no" title="statement not covered" > if (STAGES.includes(overId as Stage)) {</span>
821
- <span class="cstat-no" title="statement not covered" > targetStage = overId as Stage;</span>
822
- } else {
823
- // Dropping on another task - find its stage
824
- const overTask = <span class="cstat-no" title="statement not covered" >localTasks.find(<span class="fstat-no" title="function not covered" >(t</span>) =&gt; <span class="cstat-no" title="statement not covered" >t.id === overId);</span></span>
825
- <span class="cstat-no" title="statement not covered" > if (!overTask) <span class="cstat-no" title="statement not covered" >return;</span></span>
826
- <span class="cstat-no" title="statement not covered" > targetStage = overTask.stage as Stage;</span>
827
- }
828
- &nbsp;
829
- // Only update if stage changed
830
- <span class="cstat-no" title="statement not covered" > if (activeTask.stage !== targetStage) {</span>
831
- // Validate transition
832
- <span class="cstat-no" title="statement not covered" > if (!isValidTransition(activeTask.stage as Stage, targetStage)) {</span>
833
- <span class="cstat-no" title="statement not covered" > return; /</span>/ Invalid transition, don't update
834
- }
835
- &nbsp;
836
- <span class="cstat-no" title="statement not covered" > setLocalTasks(<span class="fstat-no" title="function not covered" >(t</span>asks) =&gt;</span>
837
- <span class="cstat-no" title="statement not covered" > tasks.map(<span class="fstat-no" title="function not covered" >(t</span>) =&gt;</span>
838
- <span class="cstat-no" title="statement not covered" > t.id === activeId ? { ...t, stage: targetStage } : t</span>
839
- )
840
- );
841
- }
842
- }
843
- &nbsp;
844
- async function <span class="fstat-no" title="function not covered" >handleDragEnd(e</span>vent: DragEndEvent) {
845
- const { active, over } = <span class="cstat-no" title="statement not covered" >event;</span>
846
- <span class="cstat-no" title="statement not covered" > setActiveTask(null);</span>
847
- &nbsp;
848
- <span class="cstat-no" title="statement not covered" > if (!over) {</span>
849
- // Reset to original
850
- <span class="cstat-no" title="statement not covered" > setLocalTasks(tasks);</span>
851
- <span class="cstat-no" title="statement not covered" > return;</span>
852
- }
853
- &nbsp;
854
- const activeId = <span class="cstat-no" title="statement not covered" >active.id </span>as string;
855
- const overId = <span class="cstat-no" title="statement not covered" >over.id </span>as string;
856
- &nbsp;
857
- const activeTask = <span class="cstat-no" title="statement not covered" >localTasks.find(<span class="fstat-no" title="function not covered" >(t</span>) =&gt; <span class="cstat-no" title="statement not covered" >t.id === activeId);</span></span>
858
- <span class="cstat-no" title="statement not covered" > if (!activeTask) <span class="cstat-no" title="statement not covered" >return;</span></span>
859
- &nbsp;
860
- // Determine final stage and position
861
- let targetStage: Stage = <span class="cstat-no" title="statement not covered" >activeTask.stage </span>as Stage;
862
- let newPriority = <span class="cstat-no" title="statement not covered" >activeTask.priority || 0;</span>
863
- &nbsp;
864
- <span class="cstat-no" title="statement not covered" > if (STAGES.includes(overId as Stage)) {</span>
865
- // Dropped on a column
866
- <span class="cstat-no" title="statement not covered" > targetStage = overId as Stage;</span>
867
- // Put at end of column
868
- const columnTasks = <span class="cstat-no" title="statement not covered" >grouped[targetStage];</span>
869
- <span class="cstat-no" title="statement not covered" > newPriority = columnTasks.length &gt; 0 </span>
870
- ? Math.max(...columnTasks.map(<span class="fstat-no" title="function not covered" >t =&gt; <span class="cstat-no" title="statement not covered" >t</span>.priority || 0)) + 1 </span>
871
- : 0;
872
- } else {
873
- // Dropped on another task
874
- const overTask = <span class="cstat-no" title="statement not covered" >localTasks.find(<span class="fstat-no" title="function not covered" >(t</span>) =&gt; <span class="cstat-no" title="statement not covered" >t.id === overId);</span></span>
875
- <span class="cstat-no" title="statement not covered" > if (overTask) {</span>
876
- <span class="cstat-no" title="statement not covered" > targetStage = overTask.stage as Stage;</span>
877
-
878
- // Reorder within column
879
- const columnTasks = <span class="cstat-no" title="statement not covered" >localTasks.filter(<span class="fstat-no" title="function not covered" >(t</span>) =&gt; <span class="cstat-no" title="statement not covered" >t.stage === targetStage);</span></span>
880
- const oldIndex = <span class="cstat-no" title="statement not covered" >columnTasks.findIndex(<span class="fstat-no" title="function not covered" >(t</span>) =&gt; <span class="cstat-no" title="statement not covered" >t.id === activeId);</span></span>
881
- const newIndex = <span class="cstat-no" title="statement not covered" >columnTasks.findIndex(<span class="fstat-no" title="function not covered" >(t</span>) =&gt; <span class="cstat-no" title="statement not covered" >t.id === overId);</span></span>
882
-
883
- <span class="cstat-no" title="statement not covered" > if (oldIndex !== -1 &amp;&amp; newIndex !== -1 &amp;&amp; oldIndex !== newIndex) {</span>
884
- const reordered = <span class="cstat-no" title="statement not covered" >arrayMove(columnTasks, oldIndex, newIndex);</span>
885
- // Update priorities
886
- const updatedTasks = <span class="cstat-no" title="statement not covered" >localTasks.map(<span class="fstat-no" title="function not covered" >(t</span>) =&gt; {</span>
887
- const idx = <span class="cstat-no" title="statement not covered" >reordered.findIndex(<span class="fstat-no" title="function not covered" >(r</span>) =&gt; <span class="cstat-no" title="statement not covered" >r.id === t.id)</span>;</span>
888
- <span class="cstat-no" title="statement not covered" > if (idx !== -1) {</span>
889
- <span class="cstat-no" title="statement not covered" > return { ...t, priority: idx };</span>
890
- }
891
- <span class="cstat-no" title="statement not covered" > return t;</span>
892
- });
893
- <span class="cstat-no" title="statement not covered" > setLocalTasks(updatedTasks);</span>
894
- <span class="cstat-no" title="statement not covered" > onTasksChange?.(updatedTasks);</span>
895
- }
896
-
897
- <span class="cstat-no" title="statement not covered" > newPriority = overTask.priority || 0;</span>
898
- }
899
- }
900
- &nbsp;
901
- // Validate transition before API call
902
- const originalTask = <span class="cstat-no" title="statement not covered" >tasks.find(<span class="fstat-no" title="function not covered" >(t</span>) =&gt; <span class="cstat-no" title="statement not covered" >t.id === activeId);</span></span>
903
- <span class="cstat-no" title="statement not covered" > if (originalTask &amp;&amp; !isValidTransition(originalTask.stage as Stage, targetStage)) {</span>
904
- // Reset to original
905
- <span class="cstat-no" title="statement not covered" > setLocalTasks(tasks);</span>
906
- <span class="cstat-no" title="statement not covered" > return;</span>
907
- }
908
- &nbsp;
909
- // Optimistic update already done, now sync with API
910
- <span class="cstat-no" title="statement not covered" > if (onTaskUpdate &amp;&amp; (activeTask.stage !== targetStage || activeTask.priority !== newPriority)) {</span>
911
- <span class="cstat-no" title="statement not covered" > try {</span>
912
- <span class="cstat-no" title="statement not covered" > await onTaskUpdate(activeId, { </span>
913
- stage: targetStage,
914
- priority: newPriority,
915
- // Auto-update status based on stage
916
- status: targetStage === "done" ? "completed" :
917
- targetStage === "ideation" ? "queued" : "in_progress"
918
- });
919
- <span class="cstat-no" title="statement not covered" > onTasksChange?.(localTasks);</span>
920
- } catch (error) {
921
- <span class="cstat-no" title="statement not covered" > console.error("Failed to update task:", error);</span>
922
- // Revert on error
923
- <span class="cstat-no" title="statement not covered" > setLocalTasks(tasks);</span>
924
- }
925
- }
926
- }
927
- &nbsp;
928
- return (
929
- &lt;DndContext
930
- sensors={sensors}
931
- collisionDetection={closestCorners}
932
- onDragStart={handleDragStart}
933
- onDragOver={handleDragOver}
934
- onDragEnd={handleDragEnd}
935
- &gt;
936
- &lt;div className="flex gap-4 overflow-x-auto pb-4"&gt;
937
- {STAGES.map((stage) =&gt; (
938
- &lt;StageColumn
939
- key={stage}
940
- stage={stage}
941
- tasks={grouped[stage]}
942
- onSelectTask={onSelectTask}
943
- /&gt;
944
- ))}
945
- &lt;/div&gt;
946
- &nbsp;
947
- &lt;DragOverlay&gt;
948
- {activeTask ? <span class="branch-0 cbranch-no" title="branch not covered" >&lt;TaskCardOverlay task={activeTask} /&gt; : null}</span>
949
- &lt;/DragOverlay&gt;
950
- &lt;/DndContext&gt;
951
- );
952
- }
953
- &nbsp;
954
- interface StageColumnProps {
955
- stage: Stage;
956
- tasks: Task[];
957
- onSelectTask?: (task: Task) =&gt; void;
958
- }
959
- &nbsp;
960
- function StageColumn({ stage, tasks, onSelectTask }: StageColumnProps) {
961
- const config = stageConfig[stage];
962
- &nbsp;
963
- return (
964
- &lt;div
965
- id={stage}
966
- className="flex-shrink-0 w-72 bg-[var(--card-bg)] rounded-xl border border-[var(--card-border)]"
967
- &gt;
968
- {/* Column header */}
969
- &lt;div className="p-3 border-b border-[var(--card-border)] flex items-center justify-between sticky top-0 bg-[var(--card-bg)] rounded-t-xl"&gt;
970
- &lt;div className="flex items-center gap-2"&gt;
971
- &lt;span&gt;{config.icon}&lt;/span&gt;
972
- &lt;span className="font-medium"&gt;{config.label}&lt;/span&gt;
973
- &lt;/div&gt;
974
- &lt;span className="text-xs text-[var(--muted)] bg-[var(--background)] px-2 py-0.5 rounded-full"&gt;
975
- {tasks.length}
976
- &lt;/span&gt;
977
- &lt;/div&gt;
978
- &nbsp;
979
- {/* Column content - droppable area */}
980
- &lt;SortableContext
981
- items={tasks.map((t) =&gt; t.id)}
982
- strategy={verticalListSortingStrategy}
983
- &gt;
984
- &lt;div className="p-2 space-y-2 min-h-[200px] max-h-[60vh] overflow-y-auto"&gt;
985
- {tasks.length === 0 ? (
986
- &lt;div
987
- className="flex items-center justify-center h-24 border-2 border-dashed border-[var(--card-border)] rounded-lg"
988
- &gt;
989
- &lt;p className="text-xs text-[var(--muted)]"&gt;Drop here&lt;/p&gt;
990
- &lt;/div&gt;
991
- ) : (
992
- tasks.map((task) =&gt; (
993
- &lt;SortableTaskCard
994
- key={task.id}
995
- task={task}
996
- onClick={() =&gt; onSelectTask?.(task)}
997
- /&gt;
998
- ))
999
- )}
1000
- &lt;/div&gt;
1001
- &lt;/SortableContext&gt;
1002
- &lt;/div&gt;
1003
- );
1004
- }
1005
- &nbsp;</pre></td></tr></table></pre>
1006
-
1007
- <div class='push'></div><!-- for sticky footer -->
1008
- </div><!-- /wrapper -->
1009
- <div class='footer quiet pad2 space-top1 center small'>
1010
- Code coverage generated by
1011
- <a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
1012
- at 2026-02-05T12:19:35.287Z
1013
- </div>
1014
- <script src="../prettify.js"></script>
1015
- <script>
1016
- window.onload = function () {
1017
- prettyPrint();
1018
- };
1019
- </script>
1020
- <script src="../sorter.js"></script>
1021
- <script src="../block-navigation.js"></script>
1022
- </body>
1023
- </html>
1024
-