flujo-ai 3.48.1 → 3.48.2

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 (505) hide show
  1. package/.next/BUILD_ID +1 -1
  2. package/.next/app-path-routes-manifest.json +58 -58
  3. package/.next/build-manifest.json +3 -3
  4. package/.next/prerender-manifest.json +3 -3
  5. package/.next/react-loadable-manifest.json +2 -2
  6. package/.next/server/app/_global-error.html +1 -1
  7. package/.next/server/app/_global-error.rsc +1 -1
  8. package/.next/server/app/_global-error.segments/_full.segment.rsc +1 -1
  9. package/.next/server/app/_global-error.segments/_global-error/__PAGE__.segment.rsc +1 -1
  10. package/.next/server/app/_global-error.segments/_tree.segment.rsc +1 -1
  11. package/.next/server/app/api/approvals/[id]/route.js +1 -1
  12. package/.next/server/app/api/approvals/[id]/route.js.nft.json +1 -1
  13. package/.next/server/app/api/approvals/route.js +1 -1
  14. package/.next/server/app/api/approvals/route.js.nft.json +1 -1
  15. package/.next/server/app/api/automation-map/route.js +1 -1
  16. package/.next/server/app/api/automation-map/route.js.nft.json +1 -1
  17. package/.next/server/app/api/avatar/[voiceAction]/route.js +1 -1
  18. package/.next/server/app/api/avatar/[voiceAction]/route.js.nft.json +1 -1
  19. package/.next/server/app/api/avatar/connections/route.js +1 -1
  20. package/.next/server/app/api/avatar/connections/route.js.nft.json +1 -1
  21. package/.next/server/app/api/avatar/local-speech/route.js +1 -1
  22. package/.next/server/app/api/avatar/local-speech/route.js.nft.json +1 -1
  23. package/.next/server/app/api/avatar/remote/[voiceAction]/route.js +1 -1
  24. package/.next/server/app/api/avatar/remote/[voiceAction]/route.js.nft.json +1 -1
  25. package/.next/server/app/api/avatar/remote/availability/route.js +1 -1
  26. package/.next/server/app/api/avatar/remote/availability/route.js.nft.json +1 -1
  27. package/.next/server/app/api/avatar/voice/route.js +1 -1
  28. package/.next/server/app/api/avatar/voice/route.js.nft.json +1 -1
  29. package/.next/server/app/api/avatar/work-model/route.js +1 -1
  30. package/.next/server/app/api/avatar/work-model/route.js.nft.json +1 -1
  31. package/.next/server/app/api/avatar/world/route.js +1 -1
  32. package/.next/server/app/api/avatar/world/route.js.nft.json +1 -1
  33. package/.next/server/app/api/backup/route.js +1 -1
  34. package/.next/server/app/api/backup/route.js.nft.json +1 -1
  35. package/.next/server/app/api/browse/route.js +1 -1
  36. package/.next/server/app/api/browse/route.js.nft.json +1 -1
  37. package/.next/server/app/api/bugs/enhance/route.js +1 -1
  38. package/.next/server/app/api/bugs/enhance/route.js.nft.json +1 -1
  39. package/.next/server/app/api/credential-migration/route.js +1 -1
  40. package/.next/server/app/api/credential-migration/route.js.nft.json +1 -1
  41. package/.next/server/app/api/credential-transfer/restore/route.js +1 -1
  42. package/.next/server/app/api/credential-transfer/restore/route.js.nft.json +1 -1
  43. package/.next/server/app/api/credential-transfer/route.js +1 -1
  44. package/.next/server/app/api/credential-transfer/route.js.nft.json +1 -1
  45. package/.next/server/app/api/cwd/route.js +1 -1
  46. package/.next/server/app/api/cwd/route.js.nft.json +1 -1
  47. package/.next/server/app/api/encryption/secure/route.js +1 -1
  48. package/.next/server/app/api/encryption/secure/route.js.nft.json +1 -1
  49. package/.next/server/app/api/env/route.js +1 -1
  50. package/.next/server/app/api/env/route.js.nft.json +1 -1
  51. package/.next/server/app/api/factory-observatory/route.js +1 -1
  52. package/.next/server/app/api/factory-observatory/route.js.nft.json +1 -1
  53. package/.next/server/app/api/flow/[id]/convert-process-to-subflow/route.js +1 -1
  54. package/.next/server/app/api/flow/[id]/convert-process-to-subflow/route.js.nft.json +1 -1
  55. package/.next/server/app/api/flow/[id]/route.js +1 -1
  56. package/.next/server/app/api/flow/[id]/route.js.nft.json +1 -1
  57. package/.next/server/app/api/flow/[id]/versions/[versionId]/route.js +1 -1
  58. package/.next/server/app/api/flow/[id]/versions/[versionId]/route.js.nft.json +1 -1
  59. package/.next/server/app/api/flow/[id]/versions/route.js +1 -1
  60. package/.next/server/app/api/flow/[id]/versions/route.js.nft.json +1 -1
  61. package/.next/server/app/api/flow/assist/route.js +1 -1
  62. package/.next/server/app/api/flow/assist/route.js.nft.json +1 -1
  63. package/.next/server/app/api/flow/compile/route.js +1 -1
  64. package/.next/server/app/api/flow/compile/route.js.nft.json +1 -1
  65. package/.next/server/app/api/flow/generate/route.js +1 -1
  66. package/.next/server/app/api/flow/generate/route.js.nft.json +1 -1
  67. package/.next/server/app/api/flow/generate/visual/route.js +1 -1
  68. package/.next/server/app/api/flow/generate/visual/route.js.nft.json +1 -1
  69. package/.next/server/app/api/flow/generator/route.js +1 -1
  70. package/.next/server/app/api/flow/generator/route.js.nft.json +1 -1
  71. package/.next/server/app/api/flow/improve/route.js +1 -1
  72. package/.next/server/app/api/flow/improve/route.js.nft.json +1 -1
  73. package/.next/server/app/api/flow/model-agent/route.js +1 -1
  74. package/.next/server/app/api/flow/model-agent/route.js.nft.json +1 -1
  75. package/.next/server/app/api/flow/prompt-renderer/route.js +1 -1
  76. package/.next/server/app/api/flow/prompt-renderer/route.js.nft.json +1 -1
  77. package/.next/server/app/api/flow/quick-chat/route.js +1 -1
  78. package/.next/server/app/api/flow/quick-chat/route.js.nft.json +1 -1
  79. package/.next/server/app/api/flow/repair/route.js +1 -1
  80. package/.next/server/app/api/flow/repair/route.js.nft.json +1 -1
  81. package/.next/server/app/api/flow/route.js +1 -1
  82. package/.next/server/app/api/flow/route.js.nft.json +1 -1
  83. package/.next/server/app/api/git/route.js +1 -1
  84. package/.next/server/app/api/git/route.js.nft.json +1 -1
  85. package/.next/server/app/api/harness/[id]/route.js +1 -1
  86. package/.next/server/app/api/harness/[id]/route.js.nft.json +1 -1
  87. package/.next/server/app/api/harness/profiles/route.js +1 -1
  88. package/.next/server/app/api/harness/profiles/route.js.nft.json +1 -1
  89. package/.next/server/app/api/harness/route.js +1 -1
  90. package/.next/server/app/api/harness/route.js.nft.json +1 -1
  91. package/.next/server/app/api/init/route.js +1 -1
  92. package/.next/server/app/api/init/route.js.nft.json +1 -1
  93. package/.next/server/app/api/local-models/capability/route.js +1 -1
  94. package/.next/server/app/api/local-models/capability/route.js.nft.json +1 -1
  95. package/.next/server/app/api/local-models/pull/route.js +1 -1
  96. package/.next/server/app/api/local-models/pull/route.js.nft.json +1 -1
  97. package/.next/server/app/api/local-models/suggest/route.js +1 -1
  98. package/.next/server/app/api/local-models/suggest/route.js.nft.json +1 -1
  99. package/.next/server/app/api/mcp/app-consent/route.js +1 -1
  100. package/.next/server/app/api/mcp/app-consent/route.js.nft.json +1 -1
  101. package/.next/server/app/api/mcp/app-sandbox/route.js +1 -1
  102. package/.next/server/app/api/mcp/app-sandbox/route.js.nft.json +1 -1
  103. package/.next/server/app/api/mcp/assistant/route.js +1 -1
  104. package/.next/server/app/api/mcp/assistant/route.js.nft.json +1 -1
  105. package/.next/server/app/api/mcp/cancel/route.js +1 -1
  106. package/.next/server/app/api/mcp/cancel/route.js.nft.json +1 -1
  107. package/.next/server/app/api/mcp/flujo/authoring/route.js +1 -1
  108. package/.next/server/app/api/mcp/flujo/authoring/route.js.nft.json +1 -1
  109. package/.next/server/app/api/mcp/flujo/automation/route.js +1 -1
  110. package/.next/server/app/api/mcp/flujo/automation/route.js.nft.json +1 -1
  111. package/.next/server/app/api/mcp/flujo/flows/route.js +1 -1
  112. package/.next/server/app/api/mcp/flujo/flows/route.js.nft.json +1 -1
  113. package/.next/server/app/api/mcp/flujo/resources/read/route.js +1 -1
  114. package/.next/server/app/api/mcp/flujo/resources/read/route.js.nft.json +1 -1
  115. package/.next/server/app/api/mcp/flujo/resources/route.js +1 -1
  116. package/.next/server/app/api/mcp/flujo/resources/route.js.nft.json +1 -1
  117. package/.next/server/app/api/mcp/flujo/servers/route.js +1 -1
  118. package/.next/server/app/api/mcp/flujo/servers/route.js.nft.json +1 -1
  119. package/.next/server/app/api/mcp/flujo/skills/route.js +1 -1
  120. package/.next/server/app/api/mcp/flujo/skills/route.js.nft.json +1 -1
  121. package/.next/server/app/api/mcp/flujo/state/route.js +1 -1
  122. package/.next/server/app/api/mcp/flujo/state/route.js.nft.json +1 -1
  123. package/.next/server/app/api/mcp/flujo/tools/route.js +1 -1
  124. package/.next/server/app/api/mcp/flujo/tools/route.js.nft.json +1 -1
  125. package/.next/server/app/api/mcp/model-risk-assessment/route.js +1 -1
  126. package/.next/server/app/api/mcp/model-risk-assessment/route.js.nft.json +1 -1
  127. package/.next/server/app/api/mcp/oauth-capability/route.js +1 -1
  128. package/.next/server/app/api/mcp/oauth-capability/route.js.nft.json +1 -1
  129. package/.next/server/app/api/mcp/security-review/route.js +1 -1
  130. package/.next/server/app/api/mcp/security-review/route.js.nft.json +1 -1
  131. package/.next/server/app/api/mcp/servers/[name]/host-consent/route.js +1 -1
  132. package/.next/server/app/api/mcp/servers/[name]/host-consent/route.js.nft.json +1 -1
  133. package/.next/server/app/api/mcp/servers/[name]/prompts/get/route.js +1 -1
  134. package/.next/server/app/api/mcp/servers/[name]/prompts/get/route.js.nft.json +1 -1
  135. package/.next/server/app/api/mcp/servers/[name]/prompts/route.js +1 -1
  136. package/.next/server/app/api/mcp/servers/[name]/prompts/route.js.nft.json +1 -1
  137. package/.next/server/app/api/mcp/servers/[name]/resources/read/route.js +1 -1
  138. package/.next/server/app/api/mcp/servers/[name]/resources/read/route.js.nft.json +1 -1
  139. package/.next/server/app/api/mcp/servers/[name]/resources/route.js +1 -1
  140. package/.next/server/app/api/mcp/servers/[name]/resources/route.js.nft.json +1 -1
  141. package/.next/server/app/api/mcp/servers/[name]/route.js +1 -1
  142. package/.next/server/app/api/mcp/servers/[name]/route.js.nft.json +1 -1
  143. package/.next/server/app/api/mcp/servers/[name]/skills/approve/route.js +1 -1
  144. package/.next/server/app/api/mcp/servers/[name]/skills/approve/route.js.nft.json +1 -1
  145. package/.next/server/app/api/mcp/servers/[name]/skills/get/route.js +1 -1
  146. package/.next/server/app/api/mcp/servers/[name]/skills/get/route.js.nft.json +1 -1
  147. package/.next/server/app/api/mcp/servers/[name]/skills/load/route.js +1 -1
  148. package/.next/server/app/api/mcp/servers/[name]/skills/load/route.js.nft.json +1 -1
  149. package/.next/server/app/api/mcp/servers/[name]/skills/route.js +1 -1
  150. package/.next/server/app/api/mcp/servers/[name]/skills/route.js.nft.json +1 -1
  151. package/.next/server/app/api/mcp/servers/[name]/status/route.js +1 -1
  152. package/.next/server/app/api/mcp/servers/[name]/status/route.js.nft.json +1 -1
  153. package/.next/server/app/api/mcp/servers/[name]/stdio-oauth/confirm/route.js +1 -1
  154. package/.next/server/app/api/mcp/servers/[name]/stdio-oauth/confirm/route.js.nft.json +1 -1
  155. package/.next/server/app/api/mcp/servers/[name]/stdio-oauth/start/route.js +1 -1
  156. package/.next/server/app/api/mcp/servers/[name]/stdio-oauth/start/route.js.nft.json +1 -1
  157. package/.next/server/app/api/mcp/servers/[name]/tools/[toolName]/route.js +1 -1
  158. package/.next/server/app/api/mcp/servers/[name]/tools/[toolName]/route.js.nft.json +1 -1
  159. package/.next/server/app/api/mcp/servers/[name]/tools/[toolName]/stream/route.js +1 -1
  160. package/.next/server/app/api/mcp/servers/[name]/tools/[toolName]/stream/route.js.nft.json +1 -1
  161. package/.next/server/app/api/mcp/servers/[name]/tools/route.js +1 -1
  162. package/.next/server/app/api/mcp/servers/[name]/tools/route.js.nft.json +1 -1
  163. package/.next/server/app/api/mcp/servers/route.js +1 -1
  164. package/.next/server/app/api/mcp/servers/route.js.nft.json +1 -1
  165. package/.next/server/app/api/mcp/test-connection/route.js +1 -1
  166. package/.next/server/app/api/mcp/test-connection/route.js.nft.json +1 -1
  167. package/.next/server/app/api/mcp/test-connection/stream/route.js +1 -1
  168. package/.next/server/app/api/mcp/test-connection/stream/route.js.nft.json +1 -1
  169. package/.next/server/app/api/mcp-registry/route.js +1 -1
  170. package/.next/server/app/api/mcp-registry/route.js.nft.json +1 -1
  171. package/.next/server/app/api/mcp-registry/spotlight/route.js +1 -1
  172. package/.next/server/app/api/mcp-registry/spotlight/route.js.nft.json +1 -1
  173. package/.next/server/app/api/model/[id]/route.js +1 -1
  174. package/.next/server/app/api/model/[id]/route.js.nft.json +1 -1
  175. package/.next/server/app/api/model/allowance/route.js +1 -1
  176. package/.next/server/app/api/model/allowance/route.js.nft.json +1 -1
  177. package/.next/server/app/api/model/provider/route.js +1 -1
  178. package/.next/server/app/api/model/provider/route.js.nft.json +1 -1
  179. package/.next/server/app/api/model/route.js +1 -1
  180. package/.next/server/app/api/model/route.js.nft.json +1 -1
  181. package/.next/server/app/api/model/test/route.js +1 -1
  182. package/.next/server/app/api/model/test/route.js.nft.json +1 -1
  183. package/.next/server/app/api/network-exposure/route.js +1 -1
  184. package/.next/server/app/api/network-exposure/route.js.nft.json +1 -1
  185. package/.next/server/app/api/oauth/callback/route.js +1 -1
  186. package/.next/server/app/api/oauth/callback/route.js.nft.json +1 -1
  187. package/.next/server/app/api/oauth/initiate/route.js +1 -1
  188. package/.next/server/app/api/oauth/initiate/route.js.nft.json +1 -1
  189. package/.next/server/app/api/oauth/reset/route.js +1 -1
  190. package/.next/server/app/api/oauth/reset/route.js.nft.json +1 -1
  191. package/.next/server/app/api/operations/status/route.js +1 -1
  192. package/.next/server/app/api/operations/status/route.js.nft.json +1 -1
  193. package/.next/server/app/api/original-owner/route.js +1 -1
  194. package/.next/server/app/api/original-owner/route.js.nft.json +1 -1
  195. package/.next/server/app/api/packages/build/route.js +1 -1
  196. package/.next/server/app/api/packages/build/route.js.nft.json +1 -1
  197. package/.next/server/app/api/packages/derive-secrets/route.js +1 -1
  198. package/.next/server/app/api/packages/derive-secrets/route.js.nft.json +1 -1
  199. package/.next/server/app/api/packages/install/route.js +1 -1
  200. package/.next/server/app/api/packages/install/route.js.nft.json +1 -1
  201. package/.next/server/app/api/packages/install/status/route.js +1 -1
  202. package/.next/server/app/api/packages/install/status/route.js.nft.json +1 -1
  203. package/.next/server/app/api/packages/installed/route.js +1 -1
  204. package/.next/server/app/api/packages/installed/route.js.nft.json +1 -1
  205. package/.next/server/app/api/packages/resolve/route.js +1 -1
  206. package/.next/server/app/api/packages/resolve/route.js.nft.json +1 -1
  207. package/.next/server/app/api/packages/scan-targets/route.js +1 -1
  208. package/.next/server/app/api/packages/scan-targets/route.js.nft.json +1 -1
  209. package/.next/server/app/api/packages/search/route.js +1 -1
  210. package/.next/server/app/api/packages/search/route.js.nft.json +1 -1
  211. package/.next/server/app/api/packages/uninstall/route.js +1 -1
  212. package/.next/server/app/api/packages/uninstall/route.js.nft.json +1 -1
  213. package/.next/server/app/api/persona-recovery/route.js +2 -2
  214. package/.next/server/app/api/persona-recovery/route.js.nft.json +1 -1
  215. package/.next/server/app/api/planned-executions/[id]/route.js +1 -1
  216. package/.next/server/app/api/planned-executions/[id]/route.js.nft.json +1 -1
  217. package/.next/server/app/api/planned-executions/[id]/run/route.js +1 -1
  218. package/.next/server/app/api/planned-executions/[id]/run/route.js.nft.json +1 -1
  219. package/.next/server/app/api/planned-executions/[id]/runs/route.js +1 -1
  220. package/.next/server/app/api/planned-executions/[id]/runs/route.js.nft.json +1 -1
  221. package/.next/server/app/api/planned-executions/[id]/worker-recovery/route.js +1 -1
  222. package/.next/server/app/api/planned-executions/[id]/worker-recovery/route.js.nft.json +1 -1
  223. package/.next/server/app/api/planned-executions/preview-schedule/route.js +1 -1
  224. package/.next/server/app/api/planned-executions/preview-schedule/route.js.nft.json +1 -1
  225. package/.next/server/app/api/planned-executions/reconcile/route.js +1 -1
  226. package/.next/server/app/api/planned-executions/reconcile/route.js.nft.json +1 -1
  227. package/.next/server/app/api/planned-executions/route.js +1 -1
  228. package/.next/server/app/api/planned-executions/route.js.nft.json +1 -1
  229. package/.next/server/app/api/reference-search/files/route.js +1 -1
  230. package/.next/server/app/api/reference-search/files/route.js.nft.json +1 -1
  231. package/.next/server/app/api/registry/auth/resend/route.js +1 -1
  232. package/.next/server/app/api/registry/auth/resend/route.js.nft.json +1 -1
  233. package/.next/server/app/api/registry/auth/reset/route.js +1 -1
  234. package/.next/server/app/api/registry/auth/reset/route.js.nft.json +1 -1
  235. package/.next/server/app/api/registry/auth/route.js +1 -1
  236. package/.next/server/app/api/registry/auth/route.js.nft.json +1 -1
  237. package/.next/server/app/api/registry/feedback/route.js +1 -1
  238. package/.next/server/app/api/registry/feedback/route.js.nft.json +1 -1
  239. package/.next/server/app/api/registry/oauth/callback/route.js +1 -1
  240. package/.next/server/app/api/registry/oauth/callback/route.js.nft.json +1 -1
  241. package/.next/server/app/api/registry/oauth/initiate/route.js +1 -1
  242. package/.next/server/app/api/registry/oauth/initiate/route.js.nft.json +1 -1
  243. package/.next/server/app/api/registry/packages/route.js +1 -1
  244. package/.next/server/app/api/registry/packages/route.js.nft.json +1 -1
  245. package/.next/server/app/api/registry/publish/route.js +1 -1
  246. package/.next/server/app/api/registry/publish/route.js.nft.json +1 -1
  247. package/.next/server/app/api/registry/settings/route.js +1 -1
  248. package/.next/server/app/api/registry/settings/route.js.nft.json +1 -1
  249. package/.next/server/app/api/restore/route.js +1 -1
  250. package/.next/server/app/api/restore/route.js.nft.json +1 -1
  251. package/.next/server/app/api/runs/active/route.js +1 -1
  252. package/.next/server/app/api/runs/active/route.js.nft.json +1 -1
  253. package/.next/server/app/api/runtime-environment/route.js +1 -1
  254. package/.next/server/app/api/runtime-environment/route.js.nft.json +1 -1
  255. package/.next/server/app/api/setup/ai-cli/route.js +1 -1
  256. package/.next/server/app/api/setup/ai-cli/route.js.nft.json +1 -1
  257. package/.next/server/app/api/snapshot/abort/route.js +1 -1
  258. package/.next/server/app/api/snapshot/abort/route.js.nft.json +1 -1
  259. package/.next/server/app/api/snapshot/begin/route.js +1 -1
  260. package/.next/server/app/api/snapshot/begin/route.js.nft.json +1 -1
  261. package/.next/server/app/api/snapshot/download/route.js +1 -1
  262. package/.next/server/app/api/snapshot/download/route.js.nft.json +1 -1
  263. package/.next/server/app/api/snapshot/finalize/route.js +1 -1
  264. package/.next/server/app/api/snapshot/finalize/route.js.nft.json +1 -1
  265. package/.next/server/app/api/snapshot/info/route.js +1 -1
  266. package/.next/server/app/api/snapshot/info/route.js.nft.json +1 -1
  267. package/.next/server/app/api/snapshot/status/route.js +1 -1
  268. package/.next/server/app/api/snapshot/status/route.js.nft.json +1 -1
  269. package/.next/server/app/api/snapshots/cleanup/route.js +1 -1
  270. package/.next/server/app/api/snapshots/cleanup/route.js.nft.json +1 -1
  271. package/.next/server/app/api/snapshots/open-folder/route.js +1 -1
  272. package/.next/server/app/api/snapshots/open-folder/route.js.nft.json +1 -1
  273. package/.next/server/app/api/snapshots/route.js +1 -1
  274. package/.next/server/app/api/snapshots/route.js.nft.json +1 -1
  275. package/.next/server/app/api/statistics/route.js +1 -1
  276. package/.next/server/app/api/statistics/route.js.nft.json +1 -1
  277. package/.next/server/app/api/storage/route.js +1 -1
  278. package/.next/server/app/api/storage/route.js.nft.json +1 -1
  279. package/.next/server/app/api/telemetry/daily-active/route.js +1 -1
  280. package/.next/server/app/api/telemetry/daily-active/route.js.nft.json +1 -1
  281. package/.next/server/app/api/tickets/[id]/route.js +1 -1
  282. package/.next/server/app/api/tickets/[id]/route.js.nft.json +1 -1
  283. package/.next/server/app/api/tickets/route.js +1 -1
  284. package/.next/server/app/api/tickets/route.js.nft.json +1 -1
  285. package/.next/server/app/api/transcription/route.js +1 -1
  286. package/.next/server/app/api/transcription/route.js.nft.json +1 -1
  287. package/.next/server/app/api/update/route.js +1 -1
  288. package/.next/server/app/api/update/route.js.nft.json +1 -1
  289. package/.next/server/app/api/waves/route.js +1 -1
  290. package/.next/server/app/api/waves/route.js.nft.json +1 -1
  291. package/.next/server/app/api/webhooks/[id]/route.js +1 -1
  292. package/.next/server/app/api/webhooks/[id]/route.js.nft.json +1 -1
  293. package/.next/server/app/api/workspaces/route.js +1 -1
  294. package/.next/server/app/api/workspaces/route.js.nft.json +1 -1
  295. package/.next/server/app/chat/page_client-reference-manifest.js +1 -1
  296. package/.next/server/app/flows/page_client-reference-manifest.js +1 -1
  297. package/.next/server/app/mcp/page.js +1 -1
  298. package/.next/server/app/mcp/page.js.nft.json +1 -1
  299. package/.next/server/app/mcp/page_client-reference-manifest.js +1 -1
  300. package/.next/server/app/mcp-flows/route.js +1 -1
  301. package/.next/server/app/mcp-flows/route.js.nft.json +1 -1
  302. package/.next/server/app/mcp-proxy/[server]/route.js +1 -1
  303. package/.next/server/app/mcp-proxy/[server]/route.js.nft.json +1 -1
  304. package/.next/server/app/settings/page.js +1 -1
  305. package/.next/server/app/settings/page.js.nft.json +1 -1
  306. package/.next/server/app/v1/chat/completions/route.js +1 -1
  307. package/.next/server/app/v1/chat/completions/route.js.nft.json +1 -1
  308. package/.next/server/app/v1/chat/conversation-chains/route.js +1 -1
  309. package/.next/server/app/v1/chat/conversation-chains/route.js.nft.json +1 -1
  310. package/.next/server/app/v1/chat/conversations/[conversationId]/breakpoints/route.js +1 -1
  311. package/.next/server/app/v1/chat/conversations/[conversationId]/breakpoints/route.js.nft.json +1 -1
  312. package/.next/server/app/v1/chat/conversations/[conversationId]/cancel/route.js +1 -1
  313. package/.next/server/app/v1/chat/conversations/[conversationId]/cancel/route.js.nft.json +1 -1
  314. package/.next/server/app/v1/chat/conversations/[conversationId]/debug/attach/route.js +1 -1
  315. package/.next/server/app/v1/chat/conversations/[conversationId]/debug/attach/route.js.nft.json +1 -1
  316. package/.next/server/app/v1/chat/conversations/[conversationId]/debug/continue/route.js +1 -1
  317. package/.next/server/app/v1/chat/conversations/[conversationId]/debug/continue/route.js.nft.json +1 -1
  318. package/.next/server/app/v1/chat/conversations/[conversationId]/debug/state/route.js +1 -1
  319. package/.next/server/app/v1/chat/conversations/[conversationId]/debug/state/route.js.nft.json +1 -1
  320. package/.next/server/app/v1/chat/conversations/[conversationId]/debug/step/route.js +1 -1
  321. package/.next/server/app/v1/chat/conversations/[conversationId]/debug/step/route.js.nft.json +1 -1
  322. package/.next/server/app/v1/chat/conversations/[conversationId]/edit-state/route.js +1 -1
  323. package/.next/server/app/v1/chat/conversations/[conversationId]/edit-state/route.js.nft.json +1 -1
  324. package/.next/server/app/v1/chat/conversations/[conversationId]/events/route.js +1 -1
  325. package/.next/server/app/v1/chat/conversations/[conversationId]/events/route.js.nft.json +1 -1
  326. package/.next/server/app/v1/chat/conversations/[conversationId]/inject/route.js +1 -1
  327. package/.next/server/app/v1/chat/conversations/[conversationId]/inject/route.js.nft.json +1 -1
  328. package/.next/server/app/v1/chat/conversations/[conversationId]/model-turns/[dispatchId]/media/[mediaId]/route.js +1 -1
  329. package/.next/server/app/v1/chat/conversations/[conversationId]/model-turns/[dispatchId]/media/[mediaId]/route.js.nft.json +1 -1
  330. package/.next/server/app/v1/chat/conversations/[conversationId]/model-turns/[dispatchId]/route.js +1 -1
  331. package/.next/server/app/v1/chat/conversations/[conversationId]/model-turns/[dispatchId]/route.js.nft.json +1 -1
  332. package/.next/server/app/v1/chat/conversations/[conversationId]/model-turns/route.js +1 -1
  333. package/.next/server/app/v1/chat/conversations/[conversationId]/model-turns/route.js.nft.json +1 -1
  334. package/.next/server/app/v1/chat/conversations/[conversationId]/recovery/route.js +1 -1
  335. package/.next/server/app/v1/chat/conversations/[conversationId]/recovery/route.js.nft.json +1 -1
  336. package/.next/server/app/v1/chat/conversations/[conversationId]/resources/[resourceId]/content/route.js +1 -1
  337. package/.next/server/app/v1/chat/conversations/[conversationId]/resources/[resourceId]/content/route.js.nft.json +1 -1
  338. package/.next/server/app/v1/chat/conversations/[conversationId]/resources/route.js +1 -1
  339. package/.next/server/app/v1/chat/conversations/[conversationId]/resources/route.js.nft.json +1 -1
  340. package/.next/server/app/v1/chat/conversations/[conversationId]/respond/route.js +1 -1
  341. package/.next/server/app/v1/chat/conversations/[conversationId]/respond/route.js.nft.json +1 -1
  342. package/.next/server/app/v1/chat/conversations/[conversationId]/revert/route.js +1 -1
  343. package/.next/server/app/v1/chat/conversations/[conversationId]/revert/route.js.nft.json +1 -1
  344. package/.next/server/app/v1/chat/conversations/[conversationId]/route.js +1 -1
  345. package/.next/server/app/v1/chat/conversations/[conversationId]/route.js.nft.json +1 -1
  346. package/.next/server/app/v1/chat/conversations/[conversationId]/wire-preview/route.js +1 -1
  347. package/.next/server/app/v1/chat/conversations/[conversationId]/wire-preview/route.js.nft.json +1 -1
  348. package/.next/server/app/v1/chat/conversations/route.js +1 -1
  349. package/.next/server/app/v1/chat/conversations/route.js.nft.json +1 -1
  350. package/.next/server/app/v1/chat/events/route.js +1 -1
  351. package/.next/server/app/v1/chat/events/route.js.nft.json +1 -1
  352. package/.next/server/app/v1/flows/[flowRef]/readiness/route.js +1 -1
  353. package/.next/server/app/v1/flows/[flowRef]/readiness/route.js.nft.json +1 -1
  354. package/.next/server/app/v1/meetings/[meetingId]/cancel/route.js +1 -1
  355. package/.next/server/app/v1/meetings/[meetingId]/cancel/route.js.nft.json +1 -1
  356. package/.next/server/app/v1/meetings/[meetingId]/events/route.js +1 -1
  357. package/.next/server/app/v1/meetings/[meetingId]/events/route.js.nft.json +1 -1
  358. package/.next/server/app/v1/meetings/[meetingId]/interventions/route.js +1 -1
  359. package/.next/server/app/v1/meetings/[meetingId]/interventions/route.js.nft.json +1 -1
  360. package/.next/server/app/v1/meetings/[meetingId]/private-notes/route.js +1 -1
  361. package/.next/server/app/v1/meetings/[meetingId]/private-notes/route.js.nft.json +1 -1
  362. package/.next/server/app/v1/meetings/[meetingId]/resume/route.js +1 -1
  363. package/.next/server/app/v1/meetings/[meetingId]/resume/route.js.nft.json +1 -1
  364. package/.next/server/app/v1/meetings/[meetingId]/route.js +1 -1
  365. package/.next/server/app/v1/meetings/[meetingId]/route.js.nft.json +1 -1
  366. package/.next/server/app/v1/meetings/[meetingId]/start/route.js +1 -1
  367. package/.next/server/app/v1/meetings/[meetingId]/start/route.js.nft.json +1 -1
  368. package/.next/server/app/v1/meetings/route.js +1 -1
  369. package/.next/server/app/v1/meetings/route.js.nft.json +1 -1
  370. package/.next/server/app/v1/models/route.js +1 -1
  371. package/.next/server/app/v1/models/route.js.nft.json +1 -1
  372. package/.next/server/app/v1/persona-drafts/[draftId]/route.js +1 -1
  373. package/.next/server/app/v1/persona-drafts/[draftId]/route.js.nft.json +1 -1
  374. package/.next/server/app/v1/persona-drafts/route.js +1 -1
  375. package/.next/server/app/v1/persona-drafts/route.js.nft.json +1 -1
  376. package/.next/server/app/v1/personas/[personaId]/app-grants/[grantId]/launch/route.js +1 -1
  377. package/.next/server/app/v1/personas/[personaId]/app-grants/[grantId]/launch/route.js.nft.json +1 -1
  378. package/.next/server/app/v1/personas/[personaId]/app-grants/[grantId]/route.js +1 -1
  379. package/.next/server/app/v1/personas/[personaId]/app-grants/[grantId]/route.js.nft.json +1 -1
  380. package/.next/server/app/v1/personas/[personaId]/app-grants/route.js +1 -1
  381. package/.next/server/app/v1/personas/[personaId]/app-grants/route.js.nft.json +1 -1
  382. package/.next/server/app/v1/personas/[personaId]/behaviors/[behaviorId]/activate/route.js +1 -1
  383. package/.next/server/app/v1/personas/[personaId]/behaviors/[behaviorId]/activate/route.js.nft.json +1 -1
  384. package/.next/server/app/v1/personas/[personaId]/composition/behaviors/route.js +1 -1
  385. package/.next/server/app/v1/personas/[personaId]/composition/behaviors/route.js.nft.json +1 -1
  386. package/.next/server/app/v1/personas/[personaId]/composition/copy/route.js +1 -1
  387. package/.next/server/app/v1/personas/[personaId]/composition/copy/route.js.nft.json +1 -1
  388. package/.next/server/app/v1/personas/[personaId]/composition/route.js +1 -1
  389. package/.next/server/app/v1/personas/[personaId]/composition/route.js.nft.json +1 -1
  390. package/.next/server/app/v1/personas/[personaId]/core/reconcile/route.js +1 -1
  391. package/.next/server/app/v1/personas/[personaId]/core/reconcile/route.js.nft.json +1 -1
  392. package/.next/server/app/v1/personas/[personaId]/deletion-preview/route.js +1 -1
  393. package/.next/server/app/v1/personas/[personaId]/deletion-preview/route.js.nft.json +1 -1
  394. package/.next/server/app/v1/personas/[personaId]/execution-preview/route.js +1 -1
  395. package/.next/server/app/v1/personas/[personaId]/execution-preview/route.js.nft.json +1 -1
  396. package/.next/server/app/v1/personas/[personaId]/export/route.js +1 -1
  397. package/.next/server/app/v1/personas/[personaId]/export/route.js.nft.json +1 -1
  398. package/.next/server/app/v1/personas/[personaId]/export-preview/route.js +1 -1
  399. package/.next/server/app/v1/personas/[personaId]/export-preview/route.js.nft.json +1 -1
  400. package/.next/server/app/v1/personas/[personaId]/goal-admissions/[admissionKey]/route.js +1 -1
  401. package/.next/server/app/v1/personas/[personaId]/goal-admissions/[admissionKey]/route.js.nft.json +1 -1
  402. package/.next/server/app/v1/personas/[personaId]/improvements/[proposalId]/apply/route.js +1 -1
  403. package/.next/server/app/v1/personas/[personaId]/improvements/[proposalId]/apply/route.js.nft.json +1 -1
  404. package/.next/server/app/v1/personas/[personaId]/improvements/[proposalId]/promote/route.js +1 -1
  405. package/.next/server/app/v1/personas/[personaId]/improvements/[proposalId]/promote/route.js.nft.json +1 -1
  406. package/.next/server/app/v1/personas/[personaId]/improvements/[proposalId]/reject/route.js +1 -1
  407. package/.next/server/app/v1/personas/[personaId]/improvements/[proposalId]/reject/route.js.nft.json +1 -1
  408. package/.next/server/app/v1/personas/[personaId]/improvements/[proposalId]/undo/route.js +1 -1
  409. package/.next/server/app/v1/personas/[personaId]/improvements/[proposalId]/undo/route.js.nft.json +1 -1
  410. package/.next/server/app/v1/personas/[personaId]/improvements/route.js +1 -1
  411. package/.next/server/app/v1/personas/[personaId]/improvements/route.js.nft.json +1 -1
  412. package/.next/server/app/v1/personas/[personaId]/memories/[memoryId]/activate/route.js +1 -1
  413. package/.next/server/app/v1/personas/[personaId]/memories/[memoryId]/activate/route.js.nft.json +1 -1
  414. package/.next/server/app/v1/personas/[personaId]/memories/[memoryId]/correct/route.js +1 -1
  415. package/.next/server/app/v1/personas/[personaId]/memories/[memoryId]/correct/route.js.nft.json +1 -1
  416. package/.next/server/app/v1/personas/[personaId]/memories/[memoryId]/pin/route.js +1 -1
  417. package/.next/server/app/v1/personas/[personaId]/memories/[memoryId]/pin/route.js.nft.json +1 -1
  418. package/.next/server/app/v1/personas/[personaId]/memories/[memoryId]/resolve-conflict/route.js +1 -1
  419. package/.next/server/app/v1/personas/[personaId]/memories/[memoryId]/resolve-conflict/route.js.nft.json +1 -1
  420. package/.next/server/app/v1/personas/[personaId]/memories/[memoryId]/route.js +1 -1
  421. package/.next/server/app/v1/personas/[personaId]/memories/[memoryId]/route.js.nft.json +1 -1
  422. package/.next/server/app/v1/personas/[personaId]/memories/route.js +1 -1
  423. package/.next/server/app/v1/personas/[personaId]/memories/route.js.nft.json +1 -1
  424. package/.next/server/app/v1/personas/[personaId]/route.js +1 -1
  425. package/.next/server/app/v1/personas/[personaId]/route.js.nft.json +1 -1
  426. package/.next/server/app/v1/personas/[personaId]/runtime-recovery/route.js +1 -1
  427. package/.next/server/app/v1/personas/[personaId]/runtime-recovery/route.js.nft.json +1 -1
  428. package/.next/server/app/v1/personas/[personaId]/storage-stats/route.js +1 -1
  429. package/.next/server/app/v1/personas/[personaId]/storage-stats/route.js.nft.json +1 -1
  430. package/.next/server/app/v1/personas/[personaId]/work-items/[workItemId]/assign/route.js +1 -1
  431. package/.next/server/app/v1/personas/[personaId]/work-items/[workItemId]/assign/route.js.nft.json +1 -1
  432. package/.next/server/app/v1/personas/[personaId]/work-items/[workItemId]/control/route.js +1 -1
  433. package/.next/server/app/v1/personas/[personaId]/work-items/[workItemId]/control/route.js.nft.json +1 -1
  434. package/.next/server/app/v1/personas/[personaId]/work-items/[workItemId]/route.js +1 -1
  435. package/.next/server/app/v1/personas/[personaId]/work-items/[workItemId]/route.js.nft.json +1 -1
  436. package/.next/server/app/v1/personas/[personaId]/work-items/[workItemId]/runtime/route.js +1 -1
  437. package/.next/server/app/v1/personas/[personaId]/work-items/[workItemId]/runtime/route.js.nft.json +1 -1
  438. package/.next/server/app/v1/personas/[personaId]/work-items/[workItemId]/source/route.js +1 -1
  439. package/.next/server/app/v1/personas/[personaId]/work-items/[workItemId]/source/route.js.nft.json +1 -1
  440. package/.next/server/app/v1/personas/[personaId]/work-items/promote-todo/route.js +1 -1
  441. package/.next/server/app/v1/personas/[personaId]/work-items/promote-todo/route.js.nft.json +1 -1
  442. package/.next/server/app/v1/personas/[personaId]/work-items/route.js +1 -1
  443. package/.next/server/app/v1/personas/[personaId]/work-items/route.js.nft.json +1 -1
  444. package/.next/server/app/v1/personas/readiness/route.js +1 -1
  445. package/.next/server/app/v1/personas/readiness/route.js.nft.json +1 -1
  446. package/.next/server/app/v1/personas/route.js +1 -1
  447. package/.next/server/app/v1/personas/route.js.nft.json +1 -1
  448. package/.next/server/app/v1/personas/settings-options/route.js +1 -1
  449. package/.next/server/app/v1/personas/settings-options/route.js.nft.json +1 -1
  450. package/.next/server/app/v1/personas/summary/route.js +1 -1
  451. package/.next/server/app/v1/personas/summary/route.js.nft.json +1 -1
  452. package/.next/server/app/v1/roles/[roleId]/duplicate/route.js +1 -1
  453. package/.next/server/app/v1/roles/[roleId]/duplicate/route.js.nft.json +1 -1
  454. package/.next/server/app/v1/roles/[roleId]/impact/route.js +1 -1
  455. package/.next/server/app/v1/roles/[roleId]/impact/route.js.nft.json +1 -1
  456. package/.next/server/app/v1/roles/[roleId]/restore/route.js +1 -1
  457. package/.next/server/app/v1/roles/[roleId]/restore/route.js.nft.json +1 -1
  458. package/.next/server/app/v1/roles/[roleId]/rollback/route.js +1 -1
  459. package/.next/server/app/v1/roles/[roleId]/rollback/route.js.nft.json +1 -1
  460. package/.next/server/app/v1/roles/[roleId]/route.js +1 -1
  461. package/.next/server/app/v1/roles/[roleId]/route.js.nft.json +1 -1
  462. package/.next/server/app/v1/roles/[roleId]/versions/route.js +1 -1
  463. package/.next/server/app/v1/roles/[roleId]/versions/route.js.nft.json +1 -1
  464. package/.next/server/app/v1/roles/route.js +1 -1
  465. package/.next/server/app/v1/roles/route.js.nft.json +1 -1
  466. package/.next/server/app/v1/tasks/[taskId]/route.js +1 -1
  467. package/.next/server/app/v1/tasks/[taskId]/route.js.nft.json +1 -1
  468. package/.next/server/app-paths-manifest.json +58 -58
  469. package/.next/server/chunks/{89291.js → 11417.js} +4 -4
  470. package/.next/server/chunks/14130.js +1 -1
  471. package/.next/server/chunks/21392.js +4 -4
  472. package/.next/server/chunks/23167.js +1 -1
  473. package/.next/server/chunks/30775.js +1 -1
  474. package/.next/server/chunks/30953.js +2 -2
  475. package/.next/server/chunks/36362.js +2 -2
  476. package/.next/server/chunks/42265.js +2 -2
  477. package/.next/server/chunks/52152.js +2 -2
  478. package/.next/server/chunks/57085.js +1 -1
  479. package/.next/server/chunks/73633.js +1 -1
  480. package/.next/server/chunks/74050.js +1 -1
  481. package/.next/server/chunks/{28644.js → 75650.js} +2 -2
  482. package/.next/server/chunks/77297.js +6 -6
  483. package/.next/server/chunks/81306.js +1 -1
  484. package/.next/server/chunks/82300.js +2 -2
  485. package/.next/server/chunks/83718.js +1 -1
  486. package/.next/server/chunks/87068.js +1 -1
  487. package/.next/server/chunks/91784.js +3 -3
  488. package/.next/server/chunks/97235.js +1 -1
  489. package/.next/server/middleware-build-manifest.js +1 -1
  490. package/.next/server/middleware-react-loadable-manifest.js +1 -1
  491. package/.next/server/pages/500.html +1 -1
  492. package/.next/server/preview-props.json +3 -3
  493. package/.next/server/server-reference-manifest.js +1 -1
  494. package/.next/server/server-reference-manifest.json +1 -1
  495. package/.next/static/chunks/{2103-e3cdcdaf6b6e91fe.js → 2103-294c66f113cd67a5.js} +1 -1
  496. package/.next/static/chunks/{webpack-5157aab6954f4d2c.js → webpack-fdea59d2034fe7c1.js} +1 -1
  497. package/.next/trace-build +1 -1
  498. package/README.md +1 -1
  499. package/mcp-servers/bash/package.json +1 -1
  500. package/mcp-servers/browser/package.json +1 -1
  501. package/mcp-servers/filesystem/package.json +1 -1
  502. package/mcp-servers/flujo/package.json +1 -1
  503. package/package.json +5 -5
  504. /package/.next/static/{ge1_acWolH72coqTUewza → TsqR1zGslz8fIpBz6QVy_}/_buildManifest.js +0 -0
  505. /package/.next/static/{ge1_acWolH72coqTUewza → TsqR1zGslz8fIpBz6QVy_}/_ssgManifest.js +0 -0
@@ -1 +1 @@
1
- globalThis.__RSC_MANIFEST=(globalThis.__RSC_MANIFEST||{});globalThis.__RSC_MANIFEST["/mcp/page"]={"moduleLoading":{"prefix":"/_next/"},"ssrModuleMapping":{"3419":{"*":{"id":"868874","name":"*","chunks":[],"async":false}},"4550":{"*":{"id":"398635","name":"*","chunks":[],"async":false}},"8453":{"*":{"id":"155971","name":"*","chunks":[],"async":false}},"13055":{"*":{"id":"151632","name":"*","chunks":[],"async":false}},"13431":{"*":{"id":"848000","name":"*","chunks":[],"async":false}},"16627":{"*":{"id":"675199","name":"*","chunks":[],"async":false}},"21957":{"*":{"id":"362883","name":"*","chunks":[],"async":false}},"27123":{"*":{"id":"581921","name":"*","chunks":[],"async":false}},"37544":{"*":{"id":"959398","name":"*","chunks":[],"async":false}},"40432":{"*":{"id":"301034","name":"*","chunks":[],"async":false}},"41112":{"*":{"id":"366958","name":"*","chunks":[],"async":false}},"42058":{"*":{"id":"616436","name":"*","chunks":[],"async":false}},"44424":{"*":{"id":"461146","name":"*","chunks":[],"async":false}},"44654":{"*":{"id":"19268","name":"*","chunks":[],"async":false}},"47749":{"*":{"id":"783099","name":"*","chunks":[],"async":false}},"50230":{"*":{"id":"557820","name":"*","chunks":[],"async":false}},"52768":{"*":{"id":"893161","name":"*","chunks":[],"async":false}},"54013":{"*":{"id":"100615","name":"*","chunks":[],"async":false}},"54520":{"*":{"id":"779290","name":"*","chunks":[],"async":false}},"54972":{"*":{"id":"340793","name":"*","chunks":[],"async":false}},"57121":{"*":{"id":"635421","name":"*","chunks":[],"async":false}},"57844":{"*":{"id":"323397","name":"*","chunks":[],"async":false}},"61304":{"*":{"id":"760440","name":"*","chunks":[],"async":false}},"62361":{"*":{"id":"991837","name":"*","chunks":[],"async":false}},"64506":{"*":{"id":"869270","name":"*","chunks":[],"async":false}},"64777":{"*":{"id":"882265","name":"*","chunks":[],"async":false}},"66613":{"*":{"id":"96397","name":"*","chunks":[],"async":false}},"66772":{"*":{"id":"160547","name":"*","chunks":[],"async":false}},"72521":{"*":{"id":"439863","name":"*","chunks":[],"async":false}},"74581":{"*":{"id":"261335","name":"*","chunks":[],"async":false}},"78343":{"*":{"id":"633250","name":"*","chunks":[],"async":false}},"78616":{"*":{"id":"384342","name":"*","chunks":[],"async":false}},"80919":{"*":{"id":"24579","name":"*","chunks":[],"async":false}},"86869":{"*":{"id":"174661","name":"*","chunks":[],"async":false}},"89009":{"*":{"id":"550172","name":"*","chunks":[],"async":false}},"89404":{"*":{"id":"896214","name":"*","chunks":[],"async":false}},"90484":{"*":{"id":"970664","name":"*","chunks":[],"async":false}},"94908":{"*":{"id":"45130","name":"*","chunks":[],"async":false}}},"edgeSSRModuleMapping":{},"clientModules":{"/home/runner/work/FLUJO/FLUJO/node_modules/next/dist/client/components/builtin/global-error.js":{"id":27123,"name":"*","chunks":[],"async":false},"/home/runner/work/FLUJO/FLUJO/node_modules/next/dist/esm/client/components/builtin/global-error.js":{"id":27123,"name":"*","chunks":[],"async":false},"/home/runner/work/FLUJO/FLUJO/node_modules/next/dist/client/components/client-page.js":{"id":61304,"name":"*","chunks":[],"async":false},"/home/runner/work/FLUJO/FLUJO/node_modules/next/dist/esm/client/components/client-page.js":{"id":61304,"name":"*","chunks":[],"async":false},"/home/runner/work/FLUJO/FLUJO/node_modules/next/dist/client/components/client-segment.js":{"id":78616,"name":"*","chunks":[],"async":false},"/home/runner/work/FLUJO/FLUJO/node_modules/next/dist/esm/client/components/client-segment.js":{"id":78616,"name":"*","chunks":[],"async":false},"/home/runner/work/FLUJO/FLUJO/node_modules/next/dist/client/components/http-access-fallback/error-boundary.js":{"id":64777,"name":"*","chunks":[],"async":false},"/home/runner/work/FLUJO/FLUJO/node_modules/next/dist/esm/client/components/http-access-fallback/error-boundary.js":{"id":64777,"name":"*","chunks":[],"async":false},"/home/runner/work/FLUJO/FLUJO/node_modules/next/dist/client/components/layout-router.js":{"id":57121,"name":"*","chunks":[],"async":false},"/home/runner/work/FLUJO/FLUJO/node_modules/next/dist/esm/client/components/layout-router.js":{"id":57121,"name":"*","chunks":[],"async":false},"/home/runner/work/FLUJO/FLUJO/node_modules/next/dist/client/components/render-from-template-context.js":{"id":74581,"name":"*","chunks":[],"async":false},"/home/runner/work/FLUJO/FLUJO/node_modules/next/dist/esm/client/components/render-from-template-context.js":{"id":74581,"name":"*","chunks":[],"async":false},"/home/runner/work/FLUJO/FLUJO/node_modules/next/dist/lib/framework/boundary-components.js":{"id":90484,"name":"*","chunks":[],"async":false},"/home/runner/work/FLUJO/FLUJO/node_modules/next/dist/esm/lib/framework/boundary-components.js":{"id":90484,"name":"*","chunks":[],"async":false},"/home/runner/work/FLUJO/FLUJO/node_modules/next/dist/lib/metadata/generate/icon-mark.js":{"id":86869,"name":"*","chunks":[],"async":false},"/home/runner/work/FLUJO/FLUJO/node_modules/next/dist/esm/lib/metadata/generate/icon-mark.js":{"id":86869,"name":"*","chunks":[],"async":false},"/home/runner/work/FLUJO/FLUJO/node_modules/next/font/local/target.css?{\"path\":\"src/app/layout.tsx\",\"import\":\"\",\"arguments\":[{\"src\":\"../../public/fonts/geist/Geist.woff2\",\"variable\":\"--font-geist-sans\",\"weight\":\"100 900\",\"display\":\"swap\"}],\"variableName\":\"geistSans\"}":{"id":88952,"name":"*","chunks":["155","static/chunks/155-6887238cec009898.js","4774","static/chunks/4774-2856bb15f71502f5.js","8500","static/chunks/8500-63a4afbeacab3b52.js","8520","static/chunks/8520-f52b68f494f99786.js","5212","static/chunks/5212-53b99b16aba9caa1.js","967","static/chunks/967-e567158e8c738a3c.js","7442","static/chunks/7442-6e66c5ad75bda5b9.js","971","static/chunks/971-4c3402a46d7c261a.js","7177","static/chunks/app/layout-bbaa818728ddaad0.js"],"async":false},"/home/runner/work/FLUJO/FLUJO/node_modules/next/font/local/target.css?{\"path\":\"src/app/layout.tsx\",\"import\":\"\",\"arguments\":[{\"src\":\"../../public/fonts/geist/GeistMono.woff2\",\"variable\":\"--font-geist-mono\",\"weight\":\"100 900\",\"display\":\"swap\"}],\"variableName\":\"geistMono\"}":{"id":15553,"name":"*","chunks":["155","static/chunks/155-6887238cec009898.js","4774","static/chunks/4774-2856bb15f71502f5.js","8500","static/chunks/8500-63a4afbeacab3b52.js","8520","static/chunks/8520-f52b68f494f99786.js","5212","static/chunks/5212-53b99b16aba9caa1.js","967","static/chunks/967-e567158e8c738a3c.js","7442","static/chunks/7442-6e66c5ad75bda5b9.js","971","static/chunks/971-4c3402a46d7c261a.js","7177","static/chunks/app/layout-bbaa818728ddaad0.js"],"async":false},"/home/runner/work/FLUJO/FLUJO/src/app/globals.css":{"id":51743,"name":"*","chunks":["155","static/chunks/155-6887238cec009898.js","4774","static/chunks/4774-2856bb15f71502f5.js","8500","static/chunks/8500-63a4afbeacab3b52.js","8520","static/chunks/8520-f52b68f494f99786.js","5212","static/chunks/5212-53b99b16aba9caa1.js","967","static/chunks/967-e567158e8c738a3c.js","7442","static/chunks/7442-6e66c5ad75bda5b9.js","971","static/chunks/971-4c3402a46d7c261a.js","7177","static/chunks/app/layout-bbaa818728ddaad0.js"],"async":false},"/home/runner/work/FLUJO/FLUJO/src/app/living-watershed.css":{"id":35506,"name":"*","chunks":["155","static/chunks/155-6887238cec009898.js","4774","static/chunks/4774-2856bb15f71502f5.js","8500","static/chunks/8500-63a4afbeacab3b52.js","8520","static/chunks/8520-f52b68f494f99786.js","5212","static/chunks/5212-53b99b16aba9caa1.js","967","static/chunks/967-e567158e8c738a3c.js","7442","static/chunks/7442-6e66c5ad75bda5b9.js","971","static/chunks/971-4c3402a46d7c261a.js","7177","static/chunks/app/layout-bbaa818728ddaad0.js"],"async":false},"/home/runner/work/FLUJO/FLUJO/src/frontend/components/AppWrapper.tsx":{"id":66772,"name":"*","chunks":["155","static/chunks/155-6887238cec009898.js","4774","static/chunks/4774-2856bb15f71502f5.js","8500","static/chunks/8500-63a4afbeacab3b52.js","8520","static/chunks/8520-f52b68f494f99786.js","5212","static/chunks/5212-53b99b16aba9caa1.js","967","static/chunks/967-e567158e8c738a3c.js","7442","static/chunks/7442-6e66c5ad75bda5b9.js","971","static/chunks/971-4c3402a46d7c261a.js","7177","static/chunks/app/layout-bbaa818728ddaad0.js"],"async":false},"/home/runner/work/FLUJO/FLUJO/src/app/executions/page.tsx":{"id":13055,"name":"*","chunks":[],"async":false},"/home/runner/work/FLUJO/FLUJO/src/app/waves/page.tsx":{"id":8453,"name":"*","chunks":[],"async":false},"/home/runner/work/FLUJO/FLUJO/src/app/chain-chat/page.tsx":{"id":54013,"name":"*","chunks":[],"async":false},"/home/runner/work/FLUJO/FLUJO/src/app/chat/page.tsx":{"id":44654,"name":"*","chunks":[],"async":false},"/home/runner/work/FLUJO/FLUJO/src/app/docs/page.tsx":{"id":64506,"name":"*","chunks":[],"async":false},"/home/runner/work/FLUJO/FLUJO/src/app/flows/page.tsx":{"id":54520,"name":"*","chunks":[],"async":false},"/home/runner/work/FLUJO/FLUJO/src/frontend/components/HarnessLab/index.tsx":{"id":52768,"name":"*","chunks":[],"async":false},"/home/runner/work/FLUJO/FLUJO/src/app/mcp/page.tsx":{"id":3419,"name":"*","chunks":["7926","static/chunks/ccd63cfe-429c5470bff96f69.js","7564","static/chunks/8ace8c09-9d60588d68d7bc25.js","6467","static/chunks/a855edea-5f9545001f1e57cf.js","9884","static/chunks/9c4e9391-4b20c6422bfbe9cc.js","9449","static/chunks/9449-09c913d25b751b76.js","2447","static/chunks/2447-075bc59563185801.js","2673","static/chunks/2673-12506e83d23de6a9.js","8585","static/chunks/8585-24e539c2700d9713.js","2703","static/chunks/2703-9df3dcabac2efd0a.js","3072","static/chunks/3072-bfa62fd8e07523f9.js","9306","static/chunks/9306-3546e75ade7434ed.js","155","static/chunks/155-6887238cec009898.js","4282","static/chunks/4282-50596bc68e269c89.js","3372","static/chunks/3372-fe9edf2fa12346a0.js","7735","static/chunks/7735-1901416c943b93f8.js","5207","static/chunks/5207-35e0f099e01f46e8.js","9098","static/chunks/9098-db1dbae347cacfab.js","5476","static/chunks/5476-5a5fbb2f1ce6714d.js","4849","static/chunks/4849-eda027457130d209.js","9319","static/chunks/9319-71c5d027ee2aa0b1.js","9304","static/chunks/9304-bb51f129fdefc018.js","1913","static/chunks/1913-41b2f7c76f6ecf20.js","7351","static/chunks/7351-735da364a8a66879.js","8995","static/chunks/8995-7f1a15a65bcf5625.js","4774","static/chunks/4774-2856bb15f71502f5.js","1364","static/chunks/1364-97232ab533a32595.js","6059","static/chunks/6059-114a0efd0844aef9.js","2454","static/chunks/2454-f333abccb1e58f96.js","2331","static/chunks/2331-6424aadf4a6f9ed1.js","3188","static/chunks/3188-1603fa159aa1d14d.js","4746","static/chunks/4746-23d3d14ce0b316a3.js","4788","static/chunks/4788-21a214cc06071965.js","5501","static/chunks/5501-d57306725dd6e63c.js","5212","static/chunks/5212-53b99b16aba9caa1.js","9704","static/chunks/9704-137e87263522bb6c.js","967","static/chunks/967-e567158e8c738a3c.js","1031","static/chunks/1031-97525f1cda00a3f7.js","8825","static/chunks/8825-6f93cdca043d19e4.js","3606","static/chunks/3606-f7aacd317ddbab6a.js","6800","static/chunks/6800-55d0585cf15a0bdc.js","2103","static/chunks/2103-e3cdcdaf6b6e91fe.js","9688","static/chunks/9688-580aad57d37335c9.js","313","static/chunks/app/mcp/page-d602c8b8ad672698.js"],"async":false},"/home/runner/work/FLUJO/FLUJO/src/app/meetings/page.tsx":{"id":13431,"name":"*","chunks":[],"async":false},"/home/runner/work/FLUJO/FLUJO/src/app/owner/login/page.tsx":{"id":54972,"name":"*","chunks":[],"async":false},"/home/runner/work/FLUJO/FLUJO/src/app/packages/page.tsx":{"id":16627,"name":"*","chunks":[],"async":false},"/home/runner/work/FLUJO/FLUJO/src/app/page.tsx":{"id":50230,"name":"*","chunks":["9449","static/chunks/9449-09c913d25b751b76.js","2447","static/chunks/2447-075bc59563185801.js","2673","static/chunks/2673-12506e83d23de6a9.js","8585","static/chunks/8585-24e539c2700d9713.js","2703","static/chunks/2703-9df3dcabac2efd0a.js","3072","static/chunks/3072-bfa62fd8e07523f9.js","9306","static/chunks/9306-3546e75ade7434ed.js","155","static/chunks/155-6887238cec009898.js","4282","static/chunks/4282-50596bc68e269c89.js","3372","static/chunks/3372-fe9edf2fa12346a0.js","7735","static/chunks/7735-1901416c943b93f8.js","5207","static/chunks/5207-35e0f099e01f46e8.js","9098","static/chunks/9098-db1dbae347cacfab.js","5476","static/chunks/5476-5a5fbb2f1ce6714d.js","9319","static/chunks/9319-71c5d027ee2aa0b1.js","7351","static/chunks/7351-735da364a8a66879.js","8500","static/chunks/8500-63a4afbeacab3b52.js","4066","static/chunks/4066-9269376506f72560.js","9257","static/chunks/9257-1e03c4b0e63a8d95.js","5212","static/chunks/5212-53b99b16aba9caa1.js","967","static/chunks/967-e567158e8c738a3c.js","3408","static/chunks/3408-e7a49342fd41b7c8.js","1662","static/chunks/1662-d8d85ec04630c46e.js","8974","static/chunks/app/page-e425e24265dae138.js"],"async":false},"/home/runner/work/FLUJO/FLUJO/src/frontend/components/Personas/index.tsx":{"id":89404,"name":"*","chunks":[],"async":false},"/home/runner/work/FLUJO/FLUJO/src/frontend/components/Roles/RoleDetail.tsx":{"id":72521,"name":"*","chunks":[],"async":false},"/home/runner/work/FLUJO/FLUJO/src/frontend/components/Roles/RoleEditor.tsx":{"id":37544,"name":"*","chunks":[],"async":false},"/home/runner/work/FLUJO/FLUJO/src/frontend/components/Roles/RolesGallery.tsx":{"id":57844,"name":"*","chunks":[],"async":false},"/home/runner/work/FLUJO/FLUJO/src/app/settings/page.tsx":{"id":66613,"name":"*","chunks":[],"async":false},"/home/runner/work/FLUJO/FLUJO/src/app/statistics/page.tsx":{"id":40432,"name":"*","chunks":[],"async":false},"/home/runner/work/FLUJO/FLUJO/src/frontend/components/AvatarWorld/PhoneVoiceHost.tsx":{"id":94908,"name":"*","chunks":[],"async":false},"/home/runner/work/FLUJO/FLUJO/src/app/models/error.tsx":{"id":42058,"name":"*","chunks":[],"async":false},"/home/runner/work/FLUJO/FLUJO/node_modules/@mui/material/Box/Box.mjs":{"id":4550,"name":"*","chunks":[],"async":false},"/home/runner/work/FLUJO/FLUJO/node_modules/@mui/material/CircularProgress/CircularProgress.mjs":{"id":89009,"name":"*","chunks":[],"async":false},"/home/runner/work/FLUJO/FLUJO/node_modules/@mui/icons-material/MemoryRounded.mjs":{"id":47749,"name":"*","chunks":[],"async":false},"/home/runner/work/FLUJO/FLUJO/node_modules/next/dist/shared/lib/lazy-dynamic/dynamic-bailout-to-csr.js":{"id":41112,"name":"*","chunks":[],"async":false},"/home/runner/work/FLUJO/FLUJO/node_modules/next/dist/esm/shared/lib/lazy-dynamic/dynamic-bailout-to-csr.js":{"id":41112,"name":"*","chunks":[],"async":false},"/home/runner/work/FLUJO/FLUJO/node_modules/next/dist/shared/lib/lazy-dynamic/preload-chunks.js":{"id":21957,"name":"*","chunks":[],"async":false},"/home/runner/work/FLUJO/FLUJO/node_modules/next/dist/esm/shared/lib/lazy-dynamic/preload-chunks.js":{"id":21957,"name":"*","chunks":[],"async":false},"/home/runner/work/FLUJO/FLUJO/src/app/models/ModelClient.tsx":{"id":78343,"name":"*","chunks":[],"async":false},"/home/runner/work/FLUJO/FLUJO/src/frontend/components/shared/PageHeader.tsx":{"id":80919,"name":"*","chunks":[],"async":false},"/home/runner/work/FLUJO/FLUJO/src/frontend/components/shared/ScrollArea.tsx":{"id":62361,"name":"*","chunks":[],"async":false},"/home/runner/work/FLUJO/FLUJO/src/frontend/components/shared/Spinner.tsx":{"id":44424,"name":"*","chunks":[],"async":false}},"entryCSSFiles":{"/home/runner/work/FLUJO/FLUJO/src/":[],"/home/runner/work/FLUJO/FLUJO/src/app/layout":[{"inlined":false,"path":"static/css/c22d099957ed1cac.css"}],"/home/runner/work/FLUJO/FLUJO/src/app/page":[],"/home/runner/work/FLUJO/FLUJO/src/app/mcp/page":[{"inlined":false,"path":"static/css/82efa7d39b03a714.css"}]},"rscModuleMapping":{"3419":{"*":{"id":"129285","name":"*","chunks":[],"async":false}},"4550":{"*":{"id":"228951","name":"*","chunks":[],"async":false}},"8453":{"*":{"id":"415099","name":"*","chunks":[],"async":false}},"13055":{"*":{"id":"345614","name":"*","chunks":[],"async":false}},"13431":{"*":{"id":"149003","name":"*","chunks":[],"async":false}},"16627":{"*":{"id":"292076","name":"*","chunks":[],"async":false}},"21957":{"*":{"id":"35825","name":"*","chunks":[],"async":false}},"27123":{"*":{"id":"895547","name":"*","chunks":[],"async":false}},"35506":{"*":{"id":"118400","name":"*","chunks":[],"async":false}},"37544":{"*":{"id":"542632","name":"*","chunks":[],"async":false}},"40432":{"*":{"id":"447586","name":"*","chunks":[],"async":false}},"41112":{"*":{"id":"109732","name":"*","chunks":[],"async":false}},"42058":{"*":{"id":"805538","name":"*","chunks":[],"async":false}},"44424":{"*":{"id":"412024","name":"*","chunks":[],"async":false}},"44654":{"*":{"id":"543155","name":"*","chunks":[],"async":false}},"47749":{"*":{"id":"646421","name":"*","chunks":[],"async":false}},"50230":{"*":{"id":"404494","name":"*","chunks":[],"async":false}},"51743":{"*":{"id":"461135","name":"*","chunks":[],"async":false}},"52768":{"*":{"id":"645161","name":"*","chunks":[],"async":false}},"54013":{"*":{"id":"512423","name":"*","chunks":[],"async":false}},"54520":{"*":{"id":"480236","name":"*","chunks":[],"async":false}},"54972":{"*":{"id":"655080","name":"*","chunks":[],"async":false}},"57121":{"*":{"id":"998099","name":"*","chunks":[],"async":false}},"57844":{"*":{"id":"846040","name":"*","chunks":[],"async":false}},"61304":{"*":{"id":"615098","name":"*","chunks":[],"async":false}},"62361":{"*":{"id":"452115","name":"*","chunks":[],"async":false}},"64506":{"*":{"id":"660182","name":"*","chunks":[],"async":false}},"64777":{"*":{"id":"533859","name":"*","chunks":[],"async":false}},"66613":{"*":{"id":"1112","name":"*","chunks":[],"async":false}},"66772":{"*":{"id":"280363","name":"*","chunks":[],"async":false}},"72521":{"*":{"id":"898480","name":"*","chunks":[],"async":false}},"74581":{"*":{"id":"916237","name":"*","chunks":[],"async":false}},"78343":{"*":{"id":"965494","name":"*","chunks":[],"async":false}},"78616":{"*":{"id":"147644","name":"*","chunks":[],"async":false}},"80919":{"*":{"id":"975525","name":"*","chunks":[],"async":false}},"86869":{"*":{"id":"836675","name":"*","chunks":[],"async":false}},"89009":{"*":{"id":"286053","name":"*","chunks":[],"async":false}},"89404":{"*":{"id":"217907","name":"*","chunks":[],"async":false}},"90484":{"*":{"id":"798562","name":"*","chunks":[],"async":false}},"94908":{"*":{"id":"88217","name":"*","chunks":[],"async":false}}},"edgeRscModuleMapping":{}};
1
+ globalThis.__RSC_MANIFEST=(globalThis.__RSC_MANIFEST||{});globalThis.__RSC_MANIFEST["/mcp/page"]={"moduleLoading":{"prefix":"/_next/"},"ssrModuleMapping":{"3419":{"*":{"id":"868874","name":"*","chunks":[],"async":false}},"4550":{"*":{"id":"398635","name":"*","chunks":[],"async":false}},"8453":{"*":{"id":"155971","name":"*","chunks":[],"async":false}},"13055":{"*":{"id":"151632","name":"*","chunks":[],"async":false}},"13431":{"*":{"id":"848000","name":"*","chunks":[],"async":false}},"16627":{"*":{"id":"675199","name":"*","chunks":[],"async":false}},"21957":{"*":{"id":"362883","name":"*","chunks":[],"async":false}},"27123":{"*":{"id":"581921","name":"*","chunks":[],"async":false}},"37544":{"*":{"id":"959398","name":"*","chunks":[],"async":false}},"40432":{"*":{"id":"301034","name":"*","chunks":[],"async":false}},"41112":{"*":{"id":"366958","name":"*","chunks":[],"async":false}},"42058":{"*":{"id":"616436","name":"*","chunks":[],"async":false}},"44424":{"*":{"id":"461146","name":"*","chunks":[],"async":false}},"44654":{"*":{"id":"19268","name":"*","chunks":[],"async":false}},"47749":{"*":{"id":"783099","name":"*","chunks":[],"async":false}},"50230":{"*":{"id":"557820","name":"*","chunks":[],"async":false}},"52768":{"*":{"id":"893161","name":"*","chunks":[],"async":false}},"54013":{"*":{"id":"100615","name":"*","chunks":[],"async":false}},"54520":{"*":{"id":"779290","name":"*","chunks":[],"async":false}},"54972":{"*":{"id":"340793","name":"*","chunks":[],"async":false}},"57121":{"*":{"id":"635421","name":"*","chunks":[],"async":false}},"57844":{"*":{"id":"323397","name":"*","chunks":[],"async":false}},"61304":{"*":{"id":"760440","name":"*","chunks":[],"async":false}},"62361":{"*":{"id":"991837","name":"*","chunks":[],"async":false}},"64506":{"*":{"id":"869270","name":"*","chunks":[],"async":false}},"64777":{"*":{"id":"882265","name":"*","chunks":[],"async":false}},"66613":{"*":{"id":"96397","name":"*","chunks":[],"async":false}},"66772":{"*":{"id":"160547","name":"*","chunks":[],"async":false}},"72521":{"*":{"id":"439863","name":"*","chunks":[],"async":false}},"74581":{"*":{"id":"261335","name":"*","chunks":[],"async":false}},"78343":{"*":{"id":"633250","name":"*","chunks":[],"async":false}},"78616":{"*":{"id":"384342","name":"*","chunks":[],"async":false}},"80919":{"*":{"id":"24579","name":"*","chunks":[],"async":false}},"86869":{"*":{"id":"174661","name":"*","chunks":[],"async":false}},"89009":{"*":{"id":"550172","name":"*","chunks":[],"async":false}},"89404":{"*":{"id":"896214","name":"*","chunks":[],"async":false}},"90484":{"*":{"id":"970664","name":"*","chunks":[],"async":false}},"94908":{"*":{"id":"45130","name":"*","chunks":[],"async":false}}},"edgeSSRModuleMapping":{},"clientModules":{"/home/runner/work/FLUJO/FLUJO/node_modules/next/dist/client/components/builtin/global-error.js":{"id":27123,"name":"*","chunks":[],"async":false},"/home/runner/work/FLUJO/FLUJO/node_modules/next/dist/esm/client/components/builtin/global-error.js":{"id":27123,"name":"*","chunks":[],"async":false},"/home/runner/work/FLUJO/FLUJO/node_modules/next/dist/client/components/client-page.js":{"id":61304,"name":"*","chunks":[],"async":false},"/home/runner/work/FLUJO/FLUJO/node_modules/next/dist/esm/client/components/client-page.js":{"id":61304,"name":"*","chunks":[],"async":false},"/home/runner/work/FLUJO/FLUJO/node_modules/next/dist/client/components/client-segment.js":{"id":78616,"name":"*","chunks":[],"async":false},"/home/runner/work/FLUJO/FLUJO/node_modules/next/dist/esm/client/components/client-segment.js":{"id":78616,"name":"*","chunks":[],"async":false},"/home/runner/work/FLUJO/FLUJO/node_modules/next/dist/client/components/http-access-fallback/error-boundary.js":{"id":64777,"name":"*","chunks":[],"async":false},"/home/runner/work/FLUJO/FLUJO/node_modules/next/dist/esm/client/components/http-access-fallback/error-boundary.js":{"id":64777,"name":"*","chunks":[],"async":false},"/home/runner/work/FLUJO/FLUJO/node_modules/next/dist/client/components/layout-router.js":{"id":57121,"name":"*","chunks":[],"async":false},"/home/runner/work/FLUJO/FLUJO/node_modules/next/dist/esm/client/components/layout-router.js":{"id":57121,"name":"*","chunks":[],"async":false},"/home/runner/work/FLUJO/FLUJO/node_modules/next/dist/client/components/render-from-template-context.js":{"id":74581,"name":"*","chunks":[],"async":false},"/home/runner/work/FLUJO/FLUJO/node_modules/next/dist/esm/client/components/render-from-template-context.js":{"id":74581,"name":"*","chunks":[],"async":false},"/home/runner/work/FLUJO/FLUJO/node_modules/next/dist/lib/framework/boundary-components.js":{"id":90484,"name":"*","chunks":[],"async":false},"/home/runner/work/FLUJO/FLUJO/node_modules/next/dist/esm/lib/framework/boundary-components.js":{"id":90484,"name":"*","chunks":[],"async":false},"/home/runner/work/FLUJO/FLUJO/node_modules/next/dist/lib/metadata/generate/icon-mark.js":{"id":86869,"name":"*","chunks":[],"async":false},"/home/runner/work/FLUJO/FLUJO/node_modules/next/dist/esm/lib/metadata/generate/icon-mark.js":{"id":86869,"name":"*","chunks":[],"async":false},"/home/runner/work/FLUJO/FLUJO/node_modules/next/font/local/target.css?{\"path\":\"src/app/layout.tsx\",\"import\":\"\",\"arguments\":[{\"src\":\"../../public/fonts/geist/Geist.woff2\",\"variable\":\"--font-geist-sans\",\"weight\":\"100 900\",\"display\":\"swap\"}],\"variableName\":\"geistSans\"}":{"id":88952,"name":"*","chunks":["155","static/chunks/155-6887238cec009898.js","4774","static/chunks/4774-2856bb15f71502f5.js","8500","static/chunks/8500-63a4afbeacab3b52.js","8520","static/chunks/8520-f52b68f494f99786.js","5212","static/chunks/5212-53b99b16aba9caa1.js","967","static/chunks/967-e567158e8c738a3c.js","7442","static/chunks/7442-6e66c5ad75bda5b9.js","971","static/chunks/971-4c3402a46d7c261a.js","7177","static/chunks/app/layout-bbaa818728ddaad0.js"],"async":false},"/home/runner/work/FLUJO/FLUJO/node_modules/next/font/local/target.css?{\"path\":\"src/app/layout.tsx\",\"import\":\"\",\"arguments\":[{\"src\":\"../../public/fonts/geist/GeistMono.woff2\",\"variable\":\"--font-geist-mono\",\"weight\":\"100 900\",\"display\":\"swap\"}],\"variableName\":\"geistMono\"}":{"id":15553,"name":"*","chunks":["155","static/chunks/155-6887238cec009898.js","4774","static/chunks/4774-2856bb15f71502f5.js","8500","static/chunks/8500-63a4afbeacab3b52.js","8520","static/chunks/8520-f52b68f494f99786.js","5212","static/chunks/5212-53b99b16aba9caa1.js","967","static/chunks/967-e567158e8c738a3c.js","7442","static/chunks/7442-6e66c5ad75bda5b9.js","971","static/chunks/971-4c3402a46d7c261a.js","7177","static/chunks/app/layout-bbaa818728ddaad0.js"],"async":false},"/home/runner/work/FLUJO/FLUJO/src/app/globals.css":{"id":51743,"name":"*","chunks":["155","static/chunks/155-6887238cec009898.js","4774","static/chunks/4774-2856bb15f71502f5.js","8500","static/chunks/8500-63a4afbeacab3b52.js","8520","static/chunks/8520-f52b68f494f99786.js","5212","static/chunks/5212-53b99b16aba9caa1.js","967","static/chunks/967-e567158e8c738a3c.js","7442","static/chunks/7442-6e66c5ad75bda5b9.js","971","static/chunks/971-4c3402a46d7c261a.js","7177","static/chunks/app/layout-bbaa818728ddaad0.js"],"async":false},"/home/runner/work/FLUJO/FLUJO/src/app/living-watershed.css":{"id":35506,"name":"*","chunks":["155","static/chunks/155-6887238cec009898.js","4774","static/chunks/4774-2856bb15f71502f5.js","8500","static/chunks/8500-63a4afbeacab3b52.js","8520","static/chunks/8520-f52b68f494f99786.js","5212","static/chunks/5212-53b99b16aba9caa1.js","967","static/chunks/967-e567158e8c738a3c.js","7442","static/chunks/7442-6e66c5ad75bda5b9.js","971","static/chunks/971-4c3402a46d7c261a.js","7177","static/chunks/app/layout-bbaa818728ddaad0.js"],"async":false},"/home/runner/work/FLUJO/FLUJO/src/frontend/components/AppWrapper.tsx":{"id":66772,"name":"*","chunks":["155","static/chunks/155-6887238cec009898.js","4774","static/chunks/4774-2856bb15f71502f5.js","8500","static/chunks/8500-63a4afbeacab3b52.js","8520","static/chunks/8520-f52b68f494f99786.js","5212","static/chunks/5212-53b99b16aba9caa1.js","967","static/chunks/967-e567158e8c738a3c.js","7442","static/chunks/7442-6e66c5ad75bda5b9.js","971","static/chunks/971-4c3402a46d7c261a.js","7177","static/chunks/app/layout-bbaa818728ddaad0.js"],"async":false},"/home/runner/work/FLUJO/FLUJO/src/app/executions/page.tsx":{"id":13055,"name":"*","chunks":[],"async":false},"/home/runner/work/FLUJO/FLUJO/src/app/waves/page.tsx":{"id":8453,"name":"*","chunks":[],"async":false},"/home/runner/work/FLUJO/FLUJO/src/app/chain-chat/page.tsx":{"id":54013,"name":"*","chunks":[],"async":false},"/home/runner/work/FLUJO/FLUJO/src/app/chat/page.tsx":{"id":44654,"name":"*","chunks":[],"async":false},"/home/runner/work/FLUJO/FLUJO/src/app/docs/page.tsx":{"id":64506,"name":"*","chunks":[],"async":false},"/home/runner/work/FLUJO/FLUJO/src/app/flows/page.tsx":{"id":54520,"name":"*","chunks":[],"async":false},"/home/runner/work/FLUJO/FLUJO/src/frontend/components/HarnessLab/index.tsx":{"id":52768,"name":"*","chunks":[],"async":false},"/home/runner/work/FLUJO/FLUJO/src/app/mcp/page.tsx":{"id":3419,"name":"*","chunks":["7926","static/chunks/ccd63cfe-429c5470bff96f69.js","7564","static/chunks/8ace8c09-9d60588d68d7bc25.js","6467","static/chunks/a855edea-5f9545001f1e57cf.js","9884","static/chunks/9c4e9391-4b20c6422bfbe9cc.js","9449","static/chunks/9449-09c913d25b751b76.js","2447","static/chunks/2447-075bc59563185801.js","2673","static/chunks/2673-12506e83d23de6a9.js","8585","static/chunks/8585-24e539c2700d9713.js","2703","static/chunks/2703-9df3dcabac2efd0a.js","3072","static/chunks/3072-bfa62fd8e07523f9.js","9306","static/chunks/9306-3546e75ade7434ed.js","155","static/chunks/155-6887238cec009898.js","4282","static/chunks/4282-50596bc68e269c89.js","3372","static/chunks/3372-fe9edf2fa12346a0.js","7735","static/chunks/7735-1901416c943b93f8.js","5207","static/chunks/5207-35e0f099e01f46e8.js","9098","static/chunks/9098-db1dbae347cacfab.js","5476","static/chunks/5476-5a5fbb2f1ce6714d.js","4849","static/chunks/4849-eda027457130d209.js","9319","static/chunks/9319-71c5d027ee2aa0b1.js","9304","static/chunks/9304-bb51f129fdefc018.js","1913","static/chunks/1913-41b2f7c76f6ecf20.js","7351","static/chunks/7351-735da364a8a66879.js","8995","static/chunks/8995-7f1a15a65bcf5625.js","4774","static/chunks/4774-2856bb15f71502f5.js","1364","static/chunks/1364-97232ab533a32595.js","6059","static/chunks/6059-114a0efd0844aef9.js","2454","static/chunks/2454-f333abccb1e58f96.js","2331","static/chunks/2331-6424aadf4a6f9ed1.js","3188","static/chunks/3188-1603fa159aa1d14d.js","4746","static/chunks/4746-23d3d14ce0b316a3.js","4788","static/chunks/4788-21a214cc06071965.js","5501","static/chunks/5501-d57306725dd6e63c.js","5212","static/chunks/5212-53b99b16aba9caa1.js","9704","static/chunks/9704-137e87263522bb6c.js","967","static/chunks/967-e567158e8c738a3c.js","1031","static/chunks/1031-97525f1cda00a3f7.js","8825","static/chunks/8825-6f93cdca043d19e4.js","3606","static/chunks/3606-f7aacd317ddbab6a.js","6800","static/chunks/6800-55d0585cf15a0bdc.js","2103","static/chunks/2103-294c66f113cd67a5.js","9688","static/chunks/9688-580aad57d37335c9.js","313","static/chunks/app/mcp/page-d602c8b8ad672698.js"],"async":false},"/home/runner/work/FLUJO/FLUJO/src/app/meetings/page.tsx":{"id":13431,"name":"*","chunks":[],"async":false},"/home/runner/work/FLUJO/FLUJO/src/app/owner/login/page.tsx":{"id":54972,"name":"*","chunks":[],"async":false},"/home/runner/work/FLUJO/FLUJO/src/app/packages/page.tsx":{"id":16627,"name":"*","chunks":[],"async":false},"/home/runner/work/FLUJO/FLUJO/src/app/page.tsx":{"id":50230,"name":"*","chunks":["9449","static/chunks/9449-09c913d25b751b76.js","2447","static/chunks/2447-075bc59563185801.js","2673","static/chunks/2673-12506e83d23de6a9.js","8585","static/chunks/8585-24e539c2700d9713.js","2703","static/chunks/2703-9df3dcabac2efd0a.js","3072","static/chunks/3072-bfa62fd8e07523f9.js","9306","static/chunks/9306-3546e75ade7434ed.js","155","static/chunks/155-6887238cec009898.js","4282","static/chunks/4282-50596bc68e269c89.js","3372","static/chunks/3372-fe9edf2fa12346a0.js","7735","static/chunks/7735-1901416c943b93f8.js","5207","static/chunks/5207-35e0f099e01f46e8.js","9098","static/chunks/9098-db1dbae347cacfab.js","5476","static/chunks/5476-5a5fbb2f1ce6714d.js","9319","static/chunks/9319-71c5d027ee2aa0b1.js","7351","static/chunks/7351-735da364a8a66879.js","8500","static/chunks/8500-63a4afbeacab3b52.js","4066","static/chunks/4066-9269376506f72560.js","9257","static/chunks/9257-1e03c4b0e63a8d95.js","5212","static/chunks/5212-53b99b16aba9caa1.js","967","static/chunks/967-e567158e8c738a3c.js","3408","static/chunks/3408-e7a49342fd41b7c8.js","1662","static/chunks/1662-d8d85ec04630c46e.js","8974","static/chunks/app/page-e425e24265dae138.js"],"async":false},"/home/runner/work/FLUJO/FLUJO/src/frontend/components/Personas/index.tsx":{"id":89404,"name":"*","chunks":[],"async":false},"/home/runner/work/FLUJO/FLUJO/src/frontend/components/Roles/RoleDetail.tsx":{"id":72521,"name":"*","chunks":[],"async":false},"/home/runner/work/FLUJO/FLUJO/src/frontend/components/Roles/RoleEditor.tsx":{"id":37544,"name":"*","chunks":[],"async":false},"/home/runner/work/FLUJO/FLUJO/src/frontend/components/Roles/RolesGallery.tsx":{"id":57844,"name":"*","chunks":[],"async":false},"/home/runner/work/FLUJO/FLUJO/src/app/settings/page.tsx":{"id":66613,"name":"*","chunks":[],"async":false},"/home/runner/work/FLUJO/FLUJO/src/app/statistics/page.tsx":{"id":40432,"name":"*","chunks":[],"async":false},"/home/runner/work/FLUJO/FLUJO/src/frontend/components/AvatarWorld/PhoneVoiceHost.tsx":{"id":94908,"name":"*","chunks":[],"async":false},"/home/runner/work/FLUJO/FLUJO/src/app/models/error.tsx":{"id":42058,"name":"*","chunks":[],"async":false},"/home/runner/work/FLUJO/FLUJO/node_modules/@mui/material/Box/Box.mjs":{"id":4550,"name":"*","chunks":[],"async":false},"/home/runner/work/FLUJO/FLUJO/node_modules/@mui/material/CircularProgress/CircularProgress.mjs":{"id":89009,"name":"*","chunks":[],"async":false},"/home/runner/work/FLUJO/FLUJO/node_modules/@mui/icons-material/MemoryRounded.mjs":{"id":47749,"name":"*","chunks":[],"async":false},"/home/runner/work/FLUJO/FLUJO/node_modules/next/dist/shared/lib/lazy-dynamic/dynamic-bailout-to-csr.js":{"id":41112,"name":"*","chunks":[],"async":false},"/home/runner/work/FLUJO/FLUJO/node_modules/next/dist/esm/shared/lib/lazy-dynamic/dynamic-bailout-to-csr.js":{"id":41112,"name":"*","chunks":[],"async":false},"/home/runner/work/FLUJO/FLUJO/node_modules/next/dist/shared/lib/lazy-dynamic/preload-chunks.js":{"id":21957,"name":"*","chunks":[],"async":false},"/home/runner/work/FLUJO/FLUJO/node_modules/next/dist/esm/shared/lib/lazy-dynamic/preload-chunks.js":{"id":21957,"name":"*","chunks":[],"async":false},"/home/runner/work/FLUJO/FLUJO/src/app/models/ModelClient.tsx":{"id":78343,"name":"*","chunks":[],"async":false},"/home/runner/work/FLUJO/FLUJO/src/frontend/components/shared/PageHeader.tsx":{"id":80919,"name":"*","chunks":[],"async":false},"/home/runner/work/FLUJO/FLUJO/src/frontend/components/shared/ScrollArea.tsx":{"id":62361,"name":"*","chunks":[],"async":false},"/home/runner/work/FLUJO/FLUJO/src/frontend/components/shared/Spinner.tsx":{"id":44424,"name":"*","chunks":[],"async":false}},"entryCSSFiles":{"/home/runner/work/FLUJO/FLUJO/src/":[],"/home/runner/work/FLUJO/FLUJO/src/app/layout":[{"inlined":false,"path":"static/css/c22d099957ed1cac.css"}],"/home/runner/work/FLUJO/FLUJO/src/app/page":[],"/home/runner/work/FLUJO/FLUJO/src/app/mcp/page":[{"inlined":false,"path":"static/css/82efa7d39b03a714.css"}]},"rscModuleMapping":{"3419":{"*":{"id":"129285","name":"*","chunks":[],"async":false}},"4550":{"*":{"id":"228951","name":"*","chunks":[],"async":false}},"8453":{"*":{"id":"415099","name":"*","chunks":[],"async":false}},"13055":{"*":{"id":"345614","name":"*","chunks":[],"async":false}},"13431":{"*":{"id":"149003","name":"*","chunks":[],"async":false}},"16627":{"*":{"id":"292076","name":"*","chunks":[],"async":false}},"21957":{"*":{"id":"35825","name":"*","chunks":[],"async":false}},"27123":{"*":{"id":"895547","name":"*","chunks":[],"async":false}},"35506":{"*":{"id":"118400","name":"*","chunks":[],"async":false}},"37544":{"*":{"id":"542632","name":"*","chunks":[],"async":false}},"40432":{"*":{"id":"447586","name":"*","chunks":[],"async":false}},"41112":{"*":{"id":"109732","name":"*","chunks":[],"async":false}},"42058":{"*":{"id":"805538","name":"*","chunks":[],"async":false}},"44424":{"*":{"id":"412024","name":"*","chunks":[],"async":false}},"44654":{"*":{"id":"543155","name":"*","chunks":[],"async":false}},"47749":{"*":{"id":"646421","name":"*","chunks":[],"async":false}},"50230":{"*":{"id":"404494","name":"*","chunks":[],"async":false}},"51743":{"*":{"id":"461135","name":"*","chunks":[],"async":false}},"52768":{"*":{"id":"645161","name":"*","chunks":[],"async":false}},"54013":{"*":{"id":"512423","name":"*","chunks":[],"async":false}},"54520":{"*":{"id":"480236","name":"*","chunks":[],"async":false}},"54972":{"*":{"id":"655080","name":"*","chunks":[],"async":false}},"57121":{"*":{"id":"998099","name":"*","chunks":[],"async":false}},"57844":{"*":{"id":"846040","name":"*","chunks":[],"async":false}},"61304":{"*":{"id":"615098","name":"*","chunks":[],"async":false}},"62361":{"*":{"id":"452115","name":"*","chunks":[],"async":false}},"64506":{"*":{"id":"660182","name":"*","chunks":[],"async":false}},"64777":{"*":{"id":"533859","name":"*","chunks":[],"async":false}},"66613":{"*":{"id":"1112","name":"*","chunks":[],"async":false}},"66772":{"*":{"id":"280363","name":"*","chunks":[],"async":false}},"72521":{"*":{"id":"898480","name":"*","chunks":[],"async":false}},"74581":{"*":{"id":"916237","name":"*","chunks":[],"async":false}},"78343":{"*":{"id":"965494","name":"*","chunks":[],"async":false}},"78616":{"*":{"id":"147644","name":"*","chunks":[],"async":false}},"80919":{"*":{"id":"975525","name":"*","chunks":[],"async":false}},"86869":{"*":{"id":"836675","name":"*","chunks":[],"async":false}},"89009":{"*":{"id":"286053","name":"*","chunks":[],"async":false}},"89404":{"*":{"id":"217907","name":"*","chunks":[],"async":false}},"90484":{"*":{"id":"798562","name":"*","chunks":[],"async":false}},"94908":{"*":{"id":"88217","name":"*","chunks":[],"async":false}}},"edgeRscModuleMapping":{}};
@@ -26,4 +26,4 @@ data: ${JSON.stringify({jsonrpc:"2.0",method:a,params:b})}
26
26
  `)},x=a=>{if(!u){a&&v(`event: message
27
27
  data: ${JSON.stringify({jsonrpc:"2.0",id:s,result:{resultType:"complete",_meta:{[C.m2F]:s,[C.$DQ]:i}}})}
28
28
 
29
- `),u=!0;try{k?.()}catch(a){c?.(a instanceof Error?a:Error(String(a)))}void 0!==l&&clearInterval(l),m?.(),f.delete(x);try{j.close()}catch{}}},y=new ReadableStream({start(a){j=a;let c=dG({method:"notifications/subscriptions/acknowledged",params:{notifications:r}},s);(w(c.method,c.params),0===Object.keys(r).length)?x(!0):(k=b.subscribe(a=>{if(u||!function(a,b){switch(b.kind){case"tools_list_changed":return!0===a.toolsListChanged;case"prompts_list_changed":return!0===a.promptsListChanged;case"resources_list_changed":return!0===a.resourcesListChanged;case"resource_updated":return void 0!==a.resourceSubscriptions&&a.resourceSubscriptions.includes(b.uri)}}(r,a))return;let b=dG(function(a){switch(a.kind){case"tools_list_changed":return{method:"notifications/tools/list_changed"};case"prompts_list_changed":return{method:"notifications/prompts/list_changed"};case"resources_list_changed":return{method:"notifications/resources/list_changed"};case"resource_updated":return{method:"notifications/resources/updated",params:{uri:a.uri}}}}(a),s);w(b.method,b.params)}),l=dD(e,()=>v(": keepalive\n\n")),f.add(x))},cancel(){x(!1)}});if(void 0!==g)if(g.aborted)x(!1);else{let a=()=>x(!1);g.addEventListener("abort",a,{once:!0}),m=()=>g.removeEventListener("abort",a)}return new Response(y,{status:200,headers:{"Content-Type":"text/event-stream","Cache-Control":"no-cache, no-transform",Connection:"keep-alive","X-Accel-Buffering":"no"}})},closeAll(){for(let a of f)a(!0)},get openCount(){return f.size}}}({bus:o,maxSubscriptions:b.maxSubscriptions??1024,keepAliveMs:b.keepAliveMs??15e3,onerror:n});"json"===f&&console.warn("responseMode: 'json' drops mid-call notifications. subscriptions/listen streams are always served over SSE regardless; other notifications emitted before a result are dropped.");let r="reject"===d?void 0:(c=b.keepAliveMs,async(b,d)=>{if("POST"!==b.method.toUpperCase())return d5(405,-32e3,"Method not allowed.");try{let e=await a({era:"legacy",...d?.authInfo!==void 0&&{authInfo:d.authInfo},requestInfo:b}),f=new d3({sessionIdGenerator:void 0,...void 0!==c&&{keepAliveMs:c},...void 0!==g&&{maxRequestBodySize:g}});await e.connect(f);let h=()=>{f.close().catch(()=>{}),e.close().catch(()=>{})};b.signal?.addEventListener("abort",h,{once:!0});let i=await f.handleRequest(b,{...d?.authInfo!==void 0&&{authInfo:d.authInfo},...d?.parsedBody!==void 0&&{parsedBody:d.parsedBody}});if(null===i.body||"text/event-stream"!==bO(i.headers.get("content-type")))return h(),i;let j=i.body.getReader(),k=!1,l=()=>{k||(k=!0,h())},m=new ReadableStream({pull:async a=>{try{let{done:b,value:c}=await j.read();if(b){l(),a.close();return}void 0!==c&&a.enqueue(c)}catch(b){l(),a.error(b)}},cancel:a=>(l(),j.cancel(a).catch(()=>{}))});return new Response(m,{status:i.status,statusText:i.statusText,headers:i.headers})}catch(a){try{n?.(d7(a))}catch{}return d8(d4(d?.parsedBody))}});async function s(c,d,e){var g,m;let o=c.classification.revision;if(void 0===o||!S.includes(o)){let a=new aw({supported:[...S],requested:o??"unknown"});return n(a),d5(400,a.code,a.message,a.data,d4(c.message))}let p=function(a,b){if("request"!==b.messageKind)return;let c=b.message.method;if(void 0===a.protocolVersionHeader){let a=b.classification.revision;return bh("version-header-missing","(missing)",void 0===a?"the body carries a modern per-request envelope but the required MCP-Protocol-Version header is absent":`the body envelope names protocol version ${a} but the required MCP-Protocol-Version header is absent`,"standard-header-validation")}if(void 0===a.mcpMethodHeader)return bh("method-header-missing","(missing)",`the body names method ${c} but the required Mcp-Method header is absent`,"standard-header-validation");let d=function(a,b){let c=Object.hasOwn(bi,a)?bi[a]:void 0;if(void 0===c)return;let d=bk(b)?b[c]:void 0;return{field:c,value:"string"==typeof d?d:void 0}}(c,b.message.params);if(void 0===d)return;let{field:e,value:f}=d;if(void 0===a.mcpNameHeader){if(void 0===f)return;return bh("name-header-missing","(missing)",`the body carries params.${e}="${f}" but the required Mcp-Name header is absent`,"standard-header-validation")}let g=bj(a.mcpNameHeader),h=bc(g);return void 0===h?bh("name-header-invalid-encoding",g,"the Mcp-Name header carries an invalid Base64 sentinel value","standard-header-validation"):void 0!==f&&h!==f?bh("name-header-mismatch",g,`the body carries params.${e}="${f}" but the Mcp-Name header names "${h}"`,"standard-header-validation"):void 0}({httpMethod:d.method,...ea(d)},c);if(void 0!==p)return n(Error(`Rejected inbound request (${p.cell}): ${p.message}`)),d6(p,d4(c.message));let r="request"===c.messageKind?aU(c.message.params):void 0,s=r?.[C.Pks];if("request"===c.messageKind){let a=Object.hasOwn(O,g=c.message.method)?O[g]:void 0;if(void 0!==a){let b=Q(a,s);if(void 0!==b){let a=new ax({requiredCapabilities:b});return n(a),d5(bf[a.code]??400,a.code,a.message,a.data,c.message.id)}}}let t=await a({era:"modern",...void 0!==e&&{authInfo:e},requestInfo:d}),u=t instanceof dR?t.server:t;if(d9(u),"request"===c.messageKind&&"subscriptions/listen"===c.message.method){let a=u.getCapabilities(),b=l(u);return t.close().catch(n),q.serve(c.message,d.signal,a,b)}if("request"===c.messageKind&&"tools/call"===c.message.method&&t instanceof dR){let a=c.message.params,b="string"==typeof a?.name?a.name:void 0,e=void 0===b?void 0:t.toolInputSchemaJson(b);if(void 0!==e){let b=a6(e);if(b.valid&&b.declarations.length>0){let e=function(a,b,c){for(let d of a){let a=`Mcp-Param-${d.headerName}`,e=c.get(a),f=function(a,b){let c=a;for(let a of b){if(null===c||"object"!=typeof c)return;c=c[a]}return c}(b,d.path);if(null==f)continue;let g=function(a){if("string"==typeof a)return a;if("boolean"==typeof a)return a?"true":"false";if("number"==typeof a){if(!Number.isFinite(a)||Number.isInteger(a)&&!Number.isSafeInteger(a))return;return String(a)}}(f);if(void 0===g)continue;if(null===e)return bd("param-header-missing",a,`the body carries ${a9(d.path)}=${JSON.stringify(f)} but the ${a} header is absent`);let h=bc(e);if(void 0===h)return bd("param-header-invalid-encoding",a,`the ${a} header carries an invalid Base64 sentinel value`);if(!(("integer"===d.type||"number"===d.type)&&bb.test(h)&&"number"==typeof f?Number(h)===f:h===g))return bd("param-header-mismatch",a,`the ${a} header decodes to ${JSON.stringify(h)} but the body carries ${a9(d.path)}=${JSON.stringify(f)}`)}}(b.declarations,a?.arguments,d.headers);if(void 0!==e)return t.close().catch(n),n(Error(`Rejected inbound request (${e.cell}): ${e.message}`)),d6(e,c.message.id)}}}if("request"===c.messageKind&&t instanceof dR)try{let a=await dJ([c.message],e,a=>t.resolveScopeChallenge(a));if(void 0!==a)return t.close().catch(n),dL(a,dK(e))}catch(a){return t.close().catch(n),n(d7(a)),d8(c.message.id)}d9(u),i(u,o),k(u,S),void 0!==r&&(m={clientInfo:r[C.DxC],clientCapabilities:s},j(u,m));let v=u.onclose;h.add(u);let w=()=>{h.delete(u),u.onclose===w&&(u.onclose=v),v?.()};u.onclose=w;try{let a=await d_(t,c.message,{classification:c.classification,request:d,...void 0!==e&&{authInfo:e},...void 0!==f&&{responseMode:f},...void 0!==b.keepAliveMs&&{keepAliveMs:b.keepAliveMs}});return"notification"===c.messageKind&&queueMicrotask(()=>void u.close().catch(()=>{})),a}catch(a){if(a instanceof N&&a.code===M.ConnectionClosed)return new Response(null,{status:499});return await u.close().catch(()=>{}),h.delete(u),n(d7(a)),d8(d4(c.message))}}async function t(a,b,c,d){if(void 0!==r)return r(b,{...void 0!==c&&{authInfo:c},...void 0!==d&&{parsedBody:d}});let e=function(a,b){switch(a.reason){case"http-method":return bg("http-method","modern-only-method-not-allowed",405,new at(-32e3,"Method not allowed."),!0);case"batch":return bg("jsonrpc-shape","modern-only-batch-not-supported",400,new at(as.InvalidRequest,"Bad Request: JSON-RPC batches are not supported by this endpoint"),!0);case"response":return bg("jsonrpc-shape","modern-only-response-post",400,new at(as.InvalidRequest,"Bad Request: JSON-RPC responses cannot be posted to this endpoint"),!0);case"notification":return;case"initialize":case"no-claim":{let c=a.requestedVersion;return bg("era-classification","modern-only-missing-envelope",400,void 0===c?new at(as.UnsupportedProtocolVersion,"Unsupported protocol version: the request did not name a protocol version",{supported:[...b]}):new aw({supported:[...b],requested:c}),!0)}}}(a,S);return void 0===e?new Response(null,{status:202}):(n(Error(`Rejected 2025-era request on a modern-only endpoint (${e.cell}): ${e.message}`)),d6(e,d4(d)))}async function u(a,b){let c=b?.authInfo;if("POST"===a.method.toUpperCase()&&!bP(a.headers.get("content-type")))return n(Error("Unsupported Media Type: Content-Type must be application/json")),d5(415,-32e3,"Unsupported Media Type: Content-Type must be application/json");let d=await eb(a,b?.parsedBody,!0,g);if("unreadable-body"===d.step)return d5(400,-32700,"Parse error: the request body could not be read");if("body-too-large"===d.step)return d5(413,-32e3,d0(g));if("no-json-body"===d.step)return void 0!==r?r(d.forwardRequest,{...void 0!==c&&{authInfo:c}}):d5(400,-32700,"Parse error: the request body is not valid JSON");let{outcome:e,body:f,parsedBody:h,forwardRequest:i}=d;try{switch(e.kind){case"reject":return n(Error(`Rejected inbound request (${e.cell}): ${e.message}`)),d6(e,d4(f));case"modern":return await s(e,a,c);case"legacy":return await t(e,i,c,h)}}catch(a){return n(d7(a)),d8(d4(f))}}return{fetch:async(a,b)=>{if(m)throw Error("This MCP handler has been closed");try{return await u(a,b)}catch(a){return n(d7(a)),d8(d4(b?.parsedBody))}},notify:p,bus:o,close:async()=>{m=!0,q.closeAll();let a=[...h].map(a=>a.close().catch(()=>{}));h.clear(),await Promise.all(a)}}}},455511:a=>{a.exports=require("crypto")},464896:(a,b,c)=>{function d(a){if(null==a)return null;if("object"!=typeof a||Array.isArray(a))return"Invalid AI condition";if("llm-gate"!==a.mode&&"flow-gate"!==a.mode)return"Invalid AI checker type";if("string"!=typeof a.condition||!a.condition.trim())return"A condition is required for the AI to check";let b="llm-gate"===a.mode?a.modelId:a.flowId;return"string"==typeof b&&b.trim()?void 0!==a.maxCallsPerDay&&("number"!=typeof a.maxCallsPerDay||!Number.isSafeInteger(a.maxCallsPerDay)||a.maxCallsPerDay<1)?"Maximum AI checks per day must be a positive whole number":null:"A model or flow is required to check the condition"}function e(a){return"mcp-poll"===a.type&&("llm-gate"===a.evaluate.mode||"flow-gate"===a.evaluate.mode)?{...a,evaluate:{mode:"on-change"}}:a}function f(a){let b=a.startRestriction,c="unrestricted"===b||"singleton"===b||"exclusive"===b,d=!c&&!0===a.exclusive;return{startRestriction:c?b:d?"exclusive":"unrestricted",superExclusive:!!d||!0===a.superExclusive,emergency:!0===a.emergency}}function g(a){return!(!a||"object"!=typeof a||Array.isArray(a))&&["personaId","behaviorSlotKey","personaRetired","personaArchived"].some(b=>Object.prototype.hasOwnProperty.call(a,b))}c.d(b,{B2:()=>d,Vw:()=>g,n$:()=>e,vq:()=>f})},474998:a=>{a.exports=require("perf_hooks")},478474:a=>{a.exports=require("node:events")},480244:(a,b,c)=>{c.r(b),c.d(b,{loadServerConfigs:()=>q,loadServerRoots:()=>r,saveConfig:()=>t});var d=c(333873),e=c.n(d),f=c(107397),g=c(610782),h=c(774755),i=c(266844),j=c(907986),k=c(882980);let l=(0,i.h)("backend/services/mcp/config"),m=new Set(["streamable","sse","websocket"]),n=new Map;async function o(a){if(n.has(a))return n.get(a);let b=null;try{let c=(0,f.Lp)({baseDir:a,timeout:{block:5e3}});b=(await c.remote(["get-url","origin"])||"").trim()||null}catch{b=null}return n.set(a,b),b}async function p(a){var b;let c;if(m.has(a.transport))return{type:"remote"};let d="string"!=typeof(b=a.rootPath)||""===b.trim()?null:e().isAbsolute(b)?b:e().resolve((0,j.getWorkspaceDataDir)(),b);if(d&&""!==(c=e().relative(e().join((0,j.getWorkspaceDataDir)(),"mcp-servers"),d))&&!c.startsWith("..")&&!e().isAbsolute(c)){let a=await o(d);if(a)return{type:"github",repositoryUrl:a}}return{type:"local"}}async function q(){l.debug("Entering loadServerConfigs method");try{let a=await (0,g.loadItem)(h.Zg.MCP_SERVERS,{}),b=Object.entries(a).map(([a,b])=>{let c=(0,k.H6)(b.transport),d=a=>"string"==typeof a?(0,j.remapLegacyDefaultWorkspaceReference)(a,"mcp-servers"):void 0,e=a=>Array.isArray(a)?a.map(d).filter(a=>void 0!==a):void 0,f=a=>{if(!a||"object"!=typeof a||Array.isArray(a))return;let b={};for(let[c,e]of Object.entries(a)){if("string"==typeof e){b[c]=d(e)??e;continue}e&&"object"==typeof e&&"value"in e&&"string"==typeof e.value&&"metadata"in e&&e.metadata&&"object"==typeof e.metadata&&"isSecret"in e.metadata&&"boolean"==typeof e.metadata.isSecret&&(b[c]={value:d(e.value)??e.value,metadata:{isSecret:e.metadata.isSecret}})}return b},g=b.launch,h=g&&"object"==typeof g?{...g,command:d(g.command),cwd:d(g.cwd),args:e(g.args),env:f(g.env)}:void 0;b={...b,transport:c,rootPath:d(b.rootPath),cwd:d(b.cwd),command:d(b.command),args:e(b.args),roots:e(b.roots),env:f(b.env),...Object.prototype.hasOwnProperty.call(b,"launch")?{launch:h}:{}},m.has(c)&&function(a){if("string"!=typeof a)return!1;let b=a.trim();return"/"===b||"\\"===b||/^[A-Za-z]:[\\/]?$/.test(b)}(b.rootPath)&&(l.info(`Normalizing filesystem-root rootPath "${b.rootPath}" of remote server ${a} to mcp-servers/${a}`),b={...b,rootPath:`mcp-servers/${a}`});let i=b.source?.type;"stdio"===c&&"string"==typeof b.rootPath&&"."===b.rootPath.trim()&&("registry"===i||"marketplace"===i)&&/^[A-Za-z0-9][A-Za-z0-9_-]{0,63}$/.test(a)&&(l.info(`Normalizing shared Registry rootPath "." of ${a} to mcp-servers/${a}`),b={...b,rootPath:`mcp-servers/${a}`});let n={name:a,disabled:!1,rootPath:"",env:{},_buildCommand:"",_installCommand:""};return"streamable"===c?{...n,...b,name:a,requestInit:b.requestInit&&"object"==typeof b.requestInit?b.requestInit:void 0,reconnectionOptions:b.reconnectionOptions&&"object"==typeof b.reconnectionOptions?b.reconnectionOptions:void 0,sessionId:b.sessionId||void 0,oauthClientId:b.oauthClientId||"",oauthClientSecret:b.oauthClientSecret||"",oauthScopes:b.oauthScopes||(b.oauthClientId||b.oauthClientInformation?["read"]:void 0),oauthClientMetadata:b.oauthClientMetadata,oauthClientInformation:b.oauthClientInformation,oauthTokens:b.oauthTokens,oauthCodeVerifier:b.oauthCodeVerifier}:"sse"===c?{...n,...b,name:a,eventSourceInit:b.eventSourceInit&&"object"==typeof b.eventSourceInit?b.eventSourceInit:void 0,requestInit:b.requestInit&&"object"==typeof b.requestInit?b.requestInit:void 0}:"websocket"===c?{...n,...b,name:a,websocketUrl:b.websocketUrl||""}:{...n,...b,name:a,command:b.command||"",args:b.args||[],stderr:b.stderr||"pipe"}});return await Promise.all(b.map(async a=>{a.source||(a.source=await p(a))})),b}catch(a){if(a instanceof k.UQ)return l.warn("Stored MCP transport is invalid"),{success:!1,error:a.message,statusCode:400};return l.warn("Failed to load server configs",a),{success:!1,error:`Failed to load server configs: ${a instanceof Error?a.message:"Unknown error"}`}}}async function r(a){let b=await q();if(!Array.isArray(b))return[];let c=b.find(b=>b.name===a)?.roots;return Array.isArray(c)?c.filter(a=>"string"==typeof a):[]}let s=["_buildCommand","_installCommand","oauthClientId","oauthClientSecret"];async function t(a){l.debug("Entering saveConfig method");try{for(let b of a.values())(0,k.SL)(b);let b=Object.fromEntries(Array.from(a.entries()).map(([a,b])=>[a,function(a){let{name:b,...c}=a,d={};for(let[a,b]of Object.entries(c))void 0!==b&&(""===b&&s.includes(a)||(d[a]=b));return d}(b)]));return await (0,g.VH)(h.Zg.MCP_SERVERS,b),{success:!0}}catch(a){if(a instanceof k.UQ)return l.warn("MCP transport is invalid"),{success:!1,error:a.message,statusCode:400};return l.warn("Failed to save config",a),{success:!1,error:`Failed to save config: ${a instanceof Error?a.message:"Unknown error"}`}}}},491645:a=>{a.exports=require("net")},504573:a=>{a.exports=require("node:buffer")},529294:a=>{a.exports=require("next/dist/server/app-render/work-async-storage.external.js")},541692:a=>{a.exports=require("node:tls")},541792:a=>{a.exports=require("node:querystring")},557987:(a,b,c)=>{c.d(b,{s:()=>d});function d(a){let b=new Set,c=new Map;for(let d of a){if(c.has(d.id))continue;let a=function(a){let b=(a&&a.trim()||"flow").toLowerCase().replace(/[^a-z0-9]+/g,"_").replace(/_+/g,"_").replace(/^_+|_+$/g,"");return b.length>56&&(b=b.slice(0,56).replace(/_+$/g,"")),b||"flow"}(d.name),e=a;if(b.has(e)){let c=2;for(;b.has(`${a}_${c}`);)c++;e=`${a}_${c}`}b.add(e),c.set(d.id,e)}return c}},579646:a=>{a.exports=require("child_process")},583997:a=>{a.exports=require("tty")},584297:a=>{a.exports=require("async_hooks")},592235:(a,b,c)=>{c.d(b,{g7:()=>x,z_:()=>o});var d=c(977598),e=c(973024),f=c(176760),g=c.n(f),h=c(425399),i=c(472178),j=c(100629),k=c(610782),l=c(930100),m=c(134887),n=c(907986);class o extends Error{constructor(a){super(a),this.code=a,this.name="ServerTaskError"}}let p=globalThis.__flujo_server_tasks_v1??={live:new Map,chains:new Map,settled:new Map};p.settled??=new Map;let q=Object.freeze({records:128,active:32,perOwnerActive:4,payloadBytes:32768,ledgerBytes:6291456,inputCount:16,ttlMs:864e5}),r=a=>["completed","failed","cancelled"].includes(a);function s(a){throw new o(a)}let t=a=>({taskId:a.taskId,status:a.status,createdAt:a.createdAt,lastUpdatedAt:a.lastUpdatedAt,ttlMs:a.ttlMs,pollIntervalMs:a.pollIntervalMs}),u=a=>!!a&&"object"==typeof a&&!Array.isArray(a);function v(a,b){let c=0,d=0,e=new Set,f=(a,g)=>{if((++d>8192||g>32)&&s("TASK_PAYLOAD_LIMIT"),"string"==typeof a)Buffer.byteLength(a)>b&&s("TASK_PAYLOAD_LIMIT"),c+=Buffer.byteLength(JSON.stringify(a));else if(null===a||"boolean"==typeof a)c+=5;else if("number"==typeof a&&Number.isFinite(a))c+=32;else if("object"==typeof a&&null!==a){for(let d of((e.has(a)||!Array.isArray(a)&&Object.getPrototypeOf(a)!==Object.prototype&&null!==Object.getPrototypeOf(a))&&s("TASK_INPUT_INVALID"),e.add(a),c+=2,Object.keys(a))){let e=Object.getOwnPropertyDescriptor(a,d);e&&"value"in e||s("TASK_INPUT_INVALID"),Buffer.byteLength(d)>b&&s("TASK_PAYLOAD_LIMIT"),(c+=Buffer.byteLength(JSON.stringify(d))+2)>b&&s("TASK_PAYLOAD_LIMIT"),f(e.value,g+1)}e.delete(a)}else s("TASK_INPUT_INVALID");c>b&&s("TASK_PAYLOAD_LIMIT")};f(a,0);let g=JSON.stringify(a);return Buffer.byteLength(g)>b&&s("TASK_PAYLOAD_LIMIT"),g}class w{constructor(a={}){this.options=a,this.filename=g().join(g().resolve(a.directory??(0,m.ok)()),".mcp-server-tasks","ledger.json")}now(){return(this.options.now??Date.now)()}key(a){return`${this.filename}:${a}`}assertAuthority(a,b){let c=!0;try{c=null!==a.recheck(this.now())}catch{}(!(0,n.isValidWorkspaceName)(b)||b!==(0,n.getCurrentWorkspace)()||void 0!==a.principal.workspaceId&&a.principal.workspaceId!==b||!["mcp:access","control:admin","secrets:read"].every(b=>a.principal.scopes.includes(b))||a.principal.expiresAt<=this.now()||c)&&s("TASK_ACCESS_DENIED")}owned(a,b,c,d){this.assertAuthority(b,c),"string"==typeof d&&/^[0-9a-f-]{36}$/.test(d)||s("TASK_NOT_FOUND");let e=a.tasks.find(a=>a.taskId===d);return(!e||e.ownerId!==b.principal.ownerId||e.credentialId!==b.principal.credentialId||e.workspaceId!==c||e.policyRevision!==b.principal.policyRevision||e.expiresAt<=this.now())&&s("TASK_NOT_FOUND"),e}async read(){try{let a=await (0,j.b)(this.filename,{maxBytes:q.ledgerBytes,verifyPath:()=>(0,i.V$)(g().dirname(g().dirname(this.filename)),this.filename)}),b=JSON.parse(a.toString("utf8"));(!u(b)||1!==b.schemaVersion||!Array.isArray(b.tasks)||b.tasks.length>q.records||Object.keys(b).some(a=>!["schemaVersion","tasks"].includes(a)))&&s("TASK_STORAGE_UNAVAILABLE");let c=new Set;for(let a of b.tasks)(!u(a)||"string"!=typeof a.taskId||!/^[0-9a-f-]{36}$/.test(a.taskId)||Object.keys(a).some(a=>!["taskId","status","createdAt","lastUpdatedAt","ttlMs","pollIntervalMs","ownerId","credentialId","workspaceId","policyRevision","expiresAt","process","payload","errorCode","acceptedInputIds","executionPending"].includes(a))||c.has(a.taskId)||!["working","input_required","completed","failed","cancelled"].includes(String(a.status))||!(0,n.isValidWorkspaceName)(a.workspaceId)||"string"!=typeof a.ownerId||a.ownerId.length>64||"string"!=typeof a.credentialId||a.credentialId.length>64||"string"!=typeof a.policyRevision||a.policyRevision.length>256||"boolean"!=typeof a.executionPending||!r(a.status)&&!0!==a.executionPending||!Number.isSafeInteger(a.expiresAt)||!Number.isSafeInteger(a.ttlMs)||1e3>Number(a.ttlMs)||Number(a.ttlMs)>q.ttlMs||!Number.isSafeInteger(a.pollIntervalMs)||100>Number(a.pollIntervalMs)||"string"!=typeof a.createdAt||!Number.isFinite(Date.parse(a.createdAt))||"string"!=typeof a.lastUpdatedAt||!Number.isFinite(Date.parse(a.lastUpdatedAt))||!u(a.process)||!Number.isSafeInteger(a.process.pid)||0>=Number(a.process.pid)||"string"!=typeof a.process.processInstanceId||a.process.processInstanceId.length>128||void 0!==a.process.processBirthMarkerV2&&("string"!=typeof a.process.processBirthMarkerV2||a.process.processBirthMarkerV2.length>256)||!Array.isArray(a.acceptedInputIds)||a.acceptedInputIds.length>q.inputCount||a.acceptedInputIds.some(a=>"string"!=typeof a||a.length>128)||void 0!==a.errorCode&&!["TASK_INTERRUPTED","TASK_FAILED","TASK_AUTH_REVOKED","TASK_EXPIRED"].includes(String(a.errorCode))||void 0!==a.payload&&("string"!=typeof a.payload||!a.payload.startsWith("v2:")||Buffer.byteLength(a.payload)>2*q.payloadBytes))&&s("TASK_STORAGE_UNAVAILABLE"),c.add(a.taskId);return b}catch(a){if("ENOENT"===a.code)return{schemaVersion:1,tasks:[]};throw a instanceof o?a:new o("TASK_STORAGE_UNAVAILABLE")}}async write(a,b){let c=v(a,q.ledgerBytes);await e.promises.mkdir(g().dirname(this.filename),{recursive:!0,mode:448}),await (0,i.V$)(g().dirname(g().dirname(this.filename)),this.filename);try{await (0,k.Zf)(this.filename,c,async()=>{b?.(),await (0,i.V$)(g().dirname(g().dirname(this.filename)),this.filename)})}catch(a){throw a instanceof o?a:new o("TASK_STORAGE_UNAVAILABLE")}}async transaction(a,b){let c=(p.chains.get(this.filename)??Promise.resolve()).catch(()=>void 0).then(()=>(0,n.runWithWorkspace)(n.DEFAULT_WORKSPACE,()=>(0,h.withWorkspaceRuntimeLock)("mcp-server-tasks",c=>(0,n.runWithWorkspace)(a,async()=>{await c.assertOwned();let a=await this.read(),d=new Set(p.settled.get(this.filename)),e=!1;for(let b of a.tasks){let a=d.has(b.taskId),c=b.executionPending&&!a&&!await (0,h.isRuntimeProcessIdentityAlive)(b.process);b.executionPending&&(c||a)&&(b.executionPending=!1,e=!0),!r(b.status)&&(b.expiresAt<=this.now()||c||a)&&(b.status="failed",b.errorCode=b.expiresAt<=this.now()?"TASK_EXPIRED":a?"TASK_FAILED":"TASK_INTERRUPTED",delete b.payload,b.lastUpdatedAt=new Date(this.now()).toISOString(),e=!0,this.retire(b.taskId))}e&&(await c.assertOwned(),await this.write(a));let f=p.settled.get(this.filename);for(let a of d)f?.delete(a);return f?.size===0&&p.settled.delete(this.filename),b(a)}))));p.chains.set(this.filename,c);try{return await c}finally{p.chains.get(this.filename)===c&&p.chains.delete(this.filename)}}async seal(a,b){let c=v({format:"flujo-server-task-v1",taskId:a.taskId,workspaceId:a.workspaceId,ownerId:a.ownerId,credentialId:a.credentialId,policyRevision:a.policyRevision,payload:b},q.payloadBytes),d=await (0,l.pF)(c);return(!d?.startsWith("v2:")||Buffer.byteLength(d)>2*q.payloadBytes)&&s("TASK_STORAGE_UNAVAILABLE"),d}async open(a){if(!a.payload)return{};try{let b=await (0,l.Do)(a.payload);(!b||Buffer.byteLength(b)>q.payloadBytes)&&s("TASK_STORAGE_UNAVAILABLE");let c=JSON.parse(b);return(!u(c)||"flujo-server-task-v1"!==c.format||c.taskId!==a.taskId||c.workspaceId!==a.workspaceId||c.ownerId!==a.ownerId||c.credentialId!==a.credentialId||c.policyRevision!==a.policyRevision||!u(c.payload)||Object.keys(c.payload).some(a=>!["result","inputRequests","inputResponses"].includes(a)))&&s("TASK_STORAGE_UNAVAILABLE"),c.payload}catch{return s("TASK_STORAGE_UNAVAILABLE")}}retire(a){let b=p.live.get(this.key(a));b&&(b.controller.abort(new o("TASK_RETIRED")),b.pending?.reject(new o("TASK_RETIRED")),b.monitor&&clearInterval(b.monitor),p.live.delete(this.key(a)))}async create(a,b,c){this.assertAuthority(a,b);let e=c.ttlMs??6e5,f=c.pollIntervalMs??500;(!Number.isSafeInteger(e)||e<1e3||e>q.ttlMs||!Number.isSafeInteger(f)||f<100||f>6e4)&&s("TASK_INPUT_INVALID");let g=await this.transaction(b,async c=>{this.assertAuthority(a,b),c.tasks=c.tasks.filter(a=>a.expiresAt>this.now()||a.executionPending);let g=c.tasks.filter(a=>a.executionPending);(c.tasks.length>=q.records||g.length>=q.active||g.filter(b=>b.ownerId===a.principal.ownerId).length>=q.perOwnerActive)&&s("TASK_LIMIT");let i=this.now(),j={taskId:(0,d.randomUUID)(),status:"working",createdAt:new Date(i).toISOString(),lastUpdatedAt:new Date(i).toISOString(),ttlMs:e,pollIntervalMs:f,expiresAt:Math.min(i+e,a.principal.expiresAt),ownerId:a.principal.ownerId,credentialId:a.principal.credentialId,policyRevision:a.principal.policyRevision,workspaceId:b,process:await (0,h.getRuntimeProcessIdentity)(),acceptedInputIds:[],executionPending:!0};return j.payload=await this.seal(j,{}),c.tasks.push(j),await this.write(c,()=>this.assertAuthority(a,b)),j}),i={controller:new AbortController,authorization:a,busy:!1};p.live.set(this.key(g.taskId),i);let j=()=>{i.controller.signal.throwIfAborted(),this.assertAuthority(a,b),g.expiresAt<=this.now()&&s("TASK_RETIRED")};return i.monitor=setInterval(()=>{i.busy||(i.busy=!0,(0,n.runWithWorkspace)(b,()=>this.monitor(a,b,g.taskId,i)).catch(()=>this.retire(g.taskId)).finally(()=>{i.busy=!1}))},200),i.monitor.unref?.(),Promise.resolve().then(()=>(0,n.runWithWorkspace)(b,async()=>{let d=!1;try{j();let e=await c.run({signal:i.controller.signal,assertAuthorized:j,requestInput:c=>this.requestInput(a,b,g.taskId,i,c)});j(),await this.finish(a,b,g.taskId,e),d=!0}catch{try{await this.finish(a,b,g.taskId),d=!0}catch{}}finally{if(!d){let a=p.settled.get(this.filename);a||p.settled.set(this.filename,a=new Set),a.add(g.taskId)}this.retire(g.taskId)}})),{...t(g),resultType:"task"}}async finish(a,b,c,d){await this.transaction(b,async e=>{let f=e.tasks.find(a=>a.taskId===c);if(!f)return;if(r(f.status)){f.executionPending&&(f.executionPending=!1,await this.write(e));return}let g=!0;try{this.assertAuthority(a,b)}catch{g=!1}g&&void 0!==d&&u(d)?(f.payload=await this.seal(f,{result:d}),this.assertAuthority(a,b),f.status="completed"):(f.status="failed",f.errorCode=g?"TASK_FAILED":"TASK_AUTH_REVOKED",delete f.payload),f.lastUpdatedAt=new Date(this.now()).toISOString(),f.executionPending=!1,await this.write(e,g?()=>this.assertAuthority(a,b):void 0)})}async get(a,b,c){return this.assertAuthority(a,b),this.transaction(b,async d=>{let e=this.owned(d,a,b,c),f=await this.open(e);return("completed"!==e.status||u(f.result))&&("input_required"!==e.status||u(f.inputRequests))||s("TASK_STORAGE_UNAVAILABLE"),this.assertAuthority(a,b),{...t(e),resultType:"complete",..."completed"===e.status?{result:f.result??{}}:{},..."input_required"===e.status?{inputRequests:f.inputRequests??{}}:{},..."failed"===e.status?{error:{code:-32603,message:e.errorCode??"TASK_FAILED"}}:{}}})}async cancel(a,b,c){return this.assertAuthority(a,b),await this.transaction(b,async d=>{let e=this.owned(d,a,b,c);r(e.status)||(e.status="cancelled",delete e.payload,e.lastUpdatedAt=new Date(this.now()).toISOString(),await this.write(d,()=>this.assertAuthority(a,b)),this.retire(c))}),{resultType:"complete"}}async update(a,b,c,d){this.assertAuthority(a,b),v(d,q.payloadBytes);let e=Object.keys(d);return(e.length>q.inputCount||e.some(a=>a.length>128||!a.length))&&s("TASK_INPUT_INVALID"),await this.transaction(b,async f=>{let g=this.owned(f,a,b,c);if("input_required"!==g.status||e.every(a=>g.acceptedInputIds.includes(a)))return;let h=await this.open(g),i=e.filter(a=>Object.hasOwn(h.inputRequests??{},a)&&!g.acceptedInputIds.includes(a));if(!i.length)return;g.acceptedInputIds.length+i.length>q.inputCount&&s("TASK_INPUT_INVALID");let j={...h.inputResponses??{}};for(let a of i)Object.defineProperty(j,a,{value:d[a],enumerable:!0});g.acceptedInputIds.push(...i),g.payload=await this.seal(g,{...h,inputResponses:j}),g.lastUpdatedAt=new Date(this.now()).toISOString(),await this.write(f,()=>this.assertAuthority(a,b))}),{resultType:"complete"}}async requestInput(a,b,c,d,e){let f,g;v(e,q.payloadBytes);let h=Object.keys(e);(!h.length||h.length>q.inputCount||h.some(a=>a.length>128||!a.length))&&s("TASK_INPUT_INVALID");let i=new Promise((a,b)=>{f=a,g=b});return i.catch(()=>void 0),await this.transaction(b,async i=>{let j=this.owned(i,a,b,c);("working"!==j.status||d.pending||h.some(a=>j.acceptedInputIds.includes(a)))&&s("TASK_INPUT_INVALID"),j.payload=await this.seal(j,{inputRequests:e}),j.status="input_required",j.lastUpdatedAt=new Date(this.now()).toISOString(),await this.write(i,()=>this.assertAuthority(a,b)),d.pending={resolve:f,reject:g}}),i}async monitor(a,b,c,d){await this.transaction(b,async e=>{let f=e.tasks.find(a=>a.taskId===c);if(!f||r(f.status))return void this.retire(c);try{this.assertAuthority(a,b)}catch{f.status="failed",f.errorCode="TASK_AUTH_REVOKED",delete f.payload,f.lastUpdatedAt=new Date(this.now()).toISOString(),await this.write(e),this.retire(c);return}if("input_required"!==f.status||!d.pending)return;let g=await this.open(f),h=Object.keys(g.inputRequests??{});if(!h.length||h.some(a=>!Object.hasOwn(g.inputResponses??{},a)))return;f.status="working",delete f.payload,f.lastUpdatedAt=new Date(this.now()).toISOString(),await this.write(e,()=>this.assertAuthority(a,b)),this.assertAuthority(a,b);let i=d.pending;d.pending=void 0,i.resolve(g.inputResponses??{})})}}let x=new w},594735:a=>{a.exports=require("events")},598995:a=>{a.exports=require("node:module")},629021:a=>{a.exports=require("fs")},637204:(a,b,c)=>{c.d(b,{Sq:()=>e,lJ:()=>f});var d=c(92967);let e={type:"object",additionalProperties:!1,required:["name","goal","steps"],properties:{profile:{type:"string",const:"simple"},version:{type:"integer",const:1},name:{type:"string",minLength:1},goal:{type:"string",minLength:1},model:{type:"string",minLength:1},steps:{type:"array",minItems:1,items:{type:"object",additionalProperties:!1,required:["id","task"],properties:{id:{type:"string",minLength:1,pattern:"^[A-Za-z][A-Za-z0-9_-]*$"},task:{type:"string",minLength:1},label:{type:"string",minLength:1},model:{type:"string",minLength:1},tools:{type:"array",uniqueItems:!0,items:{type:"string",minLength:1}},flow:{type:"string",minLength:1}}}},routes:{type:"array",items:{type:"object",additionalProperties:!1,required:["from","to"],properties:{from:{type:"string",minLength:1},to:{type:"string",minLength:1},when:{type:"object",additionalProperties:!1,required:["kind"],properties:{kind:{type:"string",enum:["contains","equals","regex","always"]},value:{type:"string"},ignoreCase:{type:"boolean"},negate:{type:"boolean"}}}}}}}};function f(a,b={},c={}){let e=function(a){let b=[],c=Array.isArray(a?.steps)?a.steps:[],d=new Set,e=[];for(let a of c){let c="string"==typeof a?.id?a.id.trim():"",f="string"==typeof a?.task?a.task.trim():"";if(!c||!/^[A-Za-z][A-Za-z0-9_-]*$/.test(c)){b.push({severity:"error",code:"simple-step-id-invalid",message:"Every simple step needs an id matching ^[A-Za-z][A-Za-z0-9_-]*$."});continue}if(d.has(c)){b.push({severity:"error",code:"simple-step-id-duplicate",nodeKey:c,message:`Duplicate simple step id "${c}"; the later step was dropped.`});continue}if(!f){b.push({severity:"error",code:"simple-step-task-missing",nodeKey:c,message:`Step "${c}" needs a non-empty task.`});continue}d.add(c),e.push({...a,id:c,task:f})}let f="__start",g="__finish",h=[{key:f,type:"start",label:"Start",prompt:`Execute this workflow toward its stated goal: ${"string"==typeof a?.goal?a.goal.trim():""}`}];for(let c of e){let d="string"==typeof c.label&&c.label.trim()?c.label.trim():function(a){let b=a.replace(/[_-]+/g," ").trim();return b?b.replace(/\b\w/g,a=>a.toUpperCase()):"Step"}(c.id),e="string"==typeof c.flow?c.flow.trim():"";if(e){h.push({key:c.id,type:"subflow",label:d,description:c.task,flow:e,prompt:c.task,inputMode:"full-history",outputMode:"final-only"});continue}let f="string"==typeof c.model&&c.model.trim()?c.model.trim():"string"==typeof a?.model?a.model.trim():"";h.push({key:c.id,type:"process",label:d,description:c.task,prompt:c.task,...f?{model:f}:{},servers:function(a,b,c){let d=new Map;for(let e of a??[]){let a="string"==typeof e?e.trim():"";if(!a)continue;let f=a.indexOf("/"),g=(f>=0?a.slice(0,f):a).trim(),h=f>=0?a.slice(f+1).trim():"";if(!g){c.push({severity:"warning",code:"simple-tool-invalid",nodeKey:b,message:`Step "${b}": ignored tool reference "${a}"; use server/tool.`});continue}d.has(g)||d.set(g,new Set),h&&d.get(g).add(h)}return[...d].map(([a,b])=>({name:a,...b.size>0?{tools:[...b]}:{}}))}(c.tools,c.id,b),inputMode:"full-history",outputMode:"latest-message"})}h.push({key:g,type:"finish",label:"Finish"});let i=[],j=Array.isArray(a?.routes)?a.routes:[];if(0===j.length){let a=[f,...e.map(a=>a.id),g];for(let b=0;b<a.length-1;b++)i.push({from:a[b],to:a[b+1]})}else{let a=new Set,c=new Set;for(let e of j){let f="string"==typeof e?.from?e.from.trim():"",g="string"==typeof e?.to?e.to.trim():"";if(!d.has(f)||!d.has(g)){b.push({severity:"error",code:"simple-route-unresolved",nodeKey:f||void 0,message:`Simple route "${f}" → "${g}" references an unknown step.`});continue}i.push({from:f,to:g,...e.when?{condition:e.when}:{}}),c.add(f),a.add(g)}for(let b of e)a.has(b.id)||i.push({from:f,to:b.id}),c.has(b.id)||i.push({from:b.id,to:g})}return{spec:{name:"string"==typeof a?.name?a.name.trim():"",description:"string"==typeof a?.goal?a.goal.trim():"",nodes:h,edges:i},issues:b}}(a),g=(0,d.dM)(e.spec,b,{newSubflowDefaults:!0,...c}),h=[...e.issues,...g.issues];return{...g,loweredSpec:e.spec,issues:h,errorCount:h.filter(a=>"error"===a.severity).length,warningCount:h.filter(a=>"warning"===a.severity).length}}},638075:(a,b,c)=>{c.a(a,async(a,d)=>{try{c.d(b,{Nl:()=>p,Pw:()=>s,QE:()=>l,_u:()=>n,aZ:()=>k,qf:()=>o,v5:()=>i.v5,vX:()=>q,xK:()=>m,xV:()=>t,yV:()=>r});var e=c(266844),f=c(110844),g=c(238813),h=c(109901),i=c(905738),j=a([f]);f=(j.then?(await j)():j)[0];let u=(0,e.h)("backend/services/mcp/proxyForward"),v="FLUJO encryption is locked (encryption_locked). Unlock FLUJO to continue.";async function k(a){let b=await f.mcpService.loadServerConfigs();if(!Array.isArray(b))return u.warn("isServerExposed: failed to load server configs",{error:b.error}),!1;let c=b.find(b=>b.name===a);return!!c&&!c.disabled&&!0===c.exposeAsMcpServer}async function l(a,b){if(await (0,g.ln)())throw Error(v);let c=await f.mcpService.connectServer(a);if(!c.success)throw Error(`Failed to connect to MCP server '${a}': ${c.error}`);let d=await f.mcpService.listServerTools(a,"all",b);if(d.error)throw Error(`Failed to list tools for '${a}': ${d.error}`);return{tools:d.tools??[],...void 0===d.nextCursor?{}:{nextCursor:d.nextCursor}}}async function m(a,b,c,d){if(await (0,g.ln)())return{content:[{type:"text",text:v}],isError:!0};let e=await f.mcpService.connectServer(a);if(!e.success)return{content:[{type:"text",text:`Error connecting to '${a}': ${e.error}`}],isError:!0};let i=await f.mcpService.callTool(a,b,c,void 0,d?.onProgress,void 0,d?.signal,"host");if(i.success)return i.data;if(d?.signal?.aborted&&d.signal.throwIfAborted(),i.protocolError)throw new h.Nh(i.protocolError.code,i.error??"Downstream MCP request failed",i.protocolError.data);return{content:[{type:"text",text:`Error: ${i.error??"Unknown error"}`}],isError:!0}}async function n(a,b){if(await (0,g.ln)())throw Error(v);let c=await f.mcpService.connectServer(a);if(!c.success)throw Error(`Failed to connect to MCP server '${a}': ${c.error}`);let d=await f.mcpService.listServerResources(a,b);if(d.error)throw Error(`Failed to list resources for '${a}': ${d.error}`);return{resources:d.resources??[],...void 0===d.nextCursor?{}:{nextCursor:d.nextCursor}}}async function o(a,b){if(await (0,g.ln)())throw Error(v);let c=await f.mcpService.connectServer(a);if(!c.success)throw Error(`Failed to connect to MCP server '${a}': ${c.error}`);let d=await f.mcpService.listServerResourceTemplates(a,b);if(d.error)throw Error(`Failed to list resource templates for '${a}': ${d.error}`);return{resourceTemplates:d.resourceTemplates??[],...void 0===d.nextCursor?{}:{nextCursor:d.nextCursor}}}async function p(a){return await (0,g.ln)()?{}:f.mcpService.getServerProxyCapabilities(a)}async function q(a,b){if(await (0,g.ln)())throw Error(v);let c=await f.mcpService.connectServer(a);if(!c.success)throw Error(`Failed to connect to MCP server '${a}': ${c.error}`);let d=await f.mcpService.listServerSkills(a,b);if("available"!==d.availability||d.error)throw Error(d.error||`MCP Skills are unavailable for downstream server '${a}'.`);let{resultType:e,skills:h,nextCursor:i,ttlMs:j,cacheScope:k}=d;return{resultType:e,skills:h,...void 0===i?{}:{nextCursor:i},...void 0===j?{}:{ttlMs:j},...void 0===k?{}:{cacheScope:k}}}async function r(a,b){if(await (0,g.ln)())throw Error(v);let c=await f.mcpService.connectServer(a);if(!c.success)throw Error(`Failed to connect to MCP server '${a}': ${c.error}`);let d=await f.mcpService.getServerSkill(a,b);if(!d.success||!d.data)throw new h.Nh(h.O4.InvalidParams,`Skill not found: '${b}' on server '${a}': ${d.error??"unknown error"}`);return d.data}async function s(a,b,c){if(await (0,g.ln)())throw Error(v);let d=await f.mcpService.connectServer(a);if(!d.success)throw Error(`Failed to connect to MCP server '${a}': ${d.error}`);let e=await f.mcpService.readServerSkillDirectory(a,b,c);if(!e.success||!e.data)throw new h.Nh(h.O4.InvalidParams,`Skill directory not found: '${b}' on server '${a}': ${e.error??"unknown error"}`);return e.data}async function t(a,b){if(await (0,g.ln)())throw Error(v);let c=await f.mcpService.connectServer(a);if(!c.success)throw Error(`Failed to connect to MCP server '${a}': ${c.error}`);let d=await f.mcpService.readResource(a,b);if(!d.success||!d.data)throw new h.Nh(h.O4.InvalidParams,`Resource not found: '${b}' on server '${a}': ${d.error??"unknown error"}`);return d.data}d()}catch(a){d(a)}})},638522:a=>{a.exports=require("node:zlib")},642848:(a,b,c)=>{c.r(b),c.d(b,{handler:()=>A,patchFetch:()=>z,routeModule:()=>v,serverHooks:()=>y,workAsyncStorage:()=>w,workUnitAsyncStorage:()=>x});var d=c(319225),e=c(684006),f=c(8317),g=c(799373),h=c(434775),i=c(524235),j=c(200261),k=c(754365),l=c(590771),m=c(473461),n=c(767798),o=c(192280),p=c(662018),q=c(445696),r=c(347929),s=c(986439),t=c(710246),u=c(137527);let v=new d.AppRouteRouteModule({definition:{kind:e.RouteKind.APP_ROUTE,page:"/mcp-flows/route",pathname:"/mcp-flows",filename:"route",bundlePath:"app/mcp-flows/route"},distDir:".next",relativeProjectDir:"",resolvedPagePath:"/home/runner/work/FLUJO/FLUJO/src/app/mcp-flows/route.ts",nextConfigOutput:"",userland:()=>c(961643),...{}}),{workAsyncStorage:w,workUnitAsyncStorage:x,serverHooks:y}=v;function z(){return(0,f.patchFetch)({workAsyncStorage:w,workUnitAsyncStorage:x})}async function A(a,b,c){c.requestMeta&&(0,g.setRequestMeta)(a,c.requestMeta),v.isDev&&(0,g.addRequestMeta)(a,"devRequestTimingInternalsEnd",process.hrtime.bigint());let d="/mcp-flows/route";"/index"===d&&(d="/");let f=await v.prepare(a,b,{srcPage:d,multiZoneDraftMode:!1});if(!f)return b.statusCode=400,b.end("Bad Request"),null==c.waitUntil||c.waitUntil.call(c,Promise.resolve()),null;let{buildId:w,deploymentId:x,params:y,nextConfig:z,parsedUrl:A,isDraftMode:B,prerenderManifest:C,routerServerContext:D,isOnDemandRevalidate:E,revalidateOnlyGenerated:F,resolvedPathname:G,clientReferenceManifest:H,serverActionsManifest:I,previewProps:J}=f,K=(0,j.normalizeAppPath)(d),L=!!C.routes[G]&&(v.isDev||(0,t.isRouteCacheOwner)(G,v.cacheOwner,C.routes[G])),M=!!(C.dynamicRoutes[K]||L),N=async()=>((null==D?void 0:D.render404)?await D.render404(a,b,A,!1):b.end("This page could not be found"),null);if(M&&!B){let a=C.dynamicRoutes[K];if(a&&!1===a.fallback&&!L){if(z.adapterPath)return await N();throw new s.NoFallbackError}}let O=null;!M||v.isDev||B||(O="/index"===(O=G)?"/":O),I&&H&&(0,i.setManifestsSingleton)({page:d,clientReferenceManifest:H,serverActionsManifest:I});let P=a.method||"GET",Q=(0,h.getTracer)(),R=Q.getActiveScopeSpan(),S=!!(null==D?void 0:D.isWrappedByNextServer),T=!!(0,g.getRequestMeta)(a,"minimalMode"),U=(0,g.getRequestMeta)(a,"incrementalCache")||await v.getIncrementalCache(a,z,J,C,T);null==U||U.resetRequestCache(),globalThis.__incrementalCache=U;let V={params:y,previewProps:J,renderOpts:{experimental:{authInterrupts:!!z.experimental.authInterrupts,useCacheTimeout:z.experimental.useCacheTimeout,durableUseCacheEntries:!!z.experimental.durableUseCacheEntries},cacheComponents:!!z.cacheComponents,validationLevel:z.experimental.instantInsights.validationLevel,isDraftMode:B,incrementalCache:U,hmrRefreshHash:(0,g.getRequestMeta)(a,"hmrRefreshHash"),cacheLifeProfiles:z.cacheLife,staticPageGenerationTimeout:z.staticPageGenerationTimeout,waitUntil:c.waitUntil,onClose:a=>{b.on("close",a)},onAfterTaskError:void 0},sharedContext:{buildId:w,deploymentId:x}},W=new k.NodeNextRequest(a),X=new k.NodeNextResponse(b),Y=l.NextRequestAdapter.fromNodeNextRequest(W,(0,l.signalFromNodeResponse)(b)),Z=async({previousCacheEntry:e})=>{try{if(!T&&E&&F&&!e)return b.statusCode=404,b.setHeader("x-nextjs-cache","REVALIDATED"),b.end("This page could not be found"),null;let d=null===O?await v.handle(Y,V):await v.prerender(Y,V);a.fetchMetrics=V.renderOpts.fetchMetrics;let f=V.renderOpts.pendingWaitUntil;f&&c.waitUntil&&(c.waitUntil(f),f=void 0);let g=V.renderOpts.collectedTags;if(!M)return await (0,o.I)(W,X,d,f),null;{let a=await d.blob(),b=(0,p.toNodeOutgoingHttpHeaders)(d.headers);g&&(b[r.NEXT_CACHE_TAGS_HEADER]=g),!b["content-type"]&&a.type&&(b["content-type"]=a.type);let c=void 0!==V.renderOpts.collectedRevalidate&&!(V.renderOpts.collectedRevalidate>=r.INFINITE_CACHE)&&V.renderOpts.collectedRevalidate,e=void 0===V.renderOpts.collectedExpire||V.renderOpts.collectedExpire>=r.INFINITE_CACHE?!1!==c&&c>0?z.expireTime:void 0:V.renderOpts.collectedExpire;return{value:{kind:u.CachedRouteKind.APP_ROUTE,status:d.status,body:Buffer.from(await a.arrayBuffer()),headers:b},cacheControl:{revalidate:c,expire:e}}}}catch(b){throw(null==e?void 0:e.isStale)&&await v.onRequestError(a,b,{routerKind:"App Router",routePath:d,routeType:"route",revalidateReason:(0,n.getRevalidateReason)({isStaticGeneration:null!==O,isOnDemandRevalidate:E})},!1,D),b}},$=async(d,f)=>{try{var g,i;let d=await v.handleResponse({req:a,nextConfig:z,cacheKey:O,routeKind:e.RouteKind.APP_ROUTE,isFallback:!1,previewProps:J,prerenderManifest:C,isRoutePPREnabled:!1,isOnDemandRevalidate:E,revalidateOnlyGenerated:F,responseGenerator:Z,waitUntil:c.waitUntil,isMinimalMode:T});if(null!==d&&"error"in d)throw d.error;if(!M)return;if((null==d||null==(g=d.value)?void 0:g.kind)!==u.CachedRouteKind.APP_ROUTE)throw Error(`Invariant: app-route received invalid cache entry ${null==d||null==(i=d.value)?void 0:i.kind}`);T||b.setHeader("x-nextjs-cache",E?"REVALIDATED":d.isMiss?"MISS":d.isStale?"STALE":"HIT"),B&&b.setHeader("Cache-Control","private, no-cache, no-store, max-age=0, must-revalidate");let f=(0,p.fromNodeOutgoingHttpHeaders)(d.value.headers);T&&M||f.delete(r.NEXT_CACHE_TAGS_HEADER),!d.cacheControl||b.getHeader("Cache-Control")||f.get("Cache-Control")||f.set("Cache-Control",(0,q.getCacheControlHeader)(d.cacheControl)),await (0,o.I)(W,X,new Response(d.value.body,{headers:f,status:d.value.status||200}));return}catch(c){if(c instanceof s.NoFallbackError||await v.onRequestError(a,c,{routerKind:"App Router",routePath:K,routeType:"route",revalidateReason:(0,n.getRevalidateReason)({isStaticGeneration:null!==O,isOnDemandRevalidate:E})},!1,D),M)throw c;if(b.headersSent){if(d){let a=c instanceof Error?c:Error("Unknown app route error");d.recordException(a),d.setStatus({code:h.SpanStatusCode.ERROR,message:a.message}),d.setAttribute("error.type",a.name)}b.writableEnded||b.destroyed||b.end()}else await (0,o.I)(W,X,new Response(null,{status:500}));return}finally{(()=>{if(!d)return;let a=b.statusCode;d.setAttributes({"http.status_code":a,"next.rsc":!1}),a&&a>=500&&(d.setStatus({code:h.SpanStatusCode.ERROR}),d.setAttribute("error.type",a.toString()));let c=Q.getRootSpanAttributes();if(!c)return;if(c.get("next.span_type")!==m.BaseServerSpan.handleRequest)return console.warn(`Unexpected root span type '${c.get("next.span_type")}'. Please report this Next.js issue https://github.com/vercel/next.js`);let e=c.get("next.route")||K,g=`${P} ${e}`;d.setAttributes({"next.route":e,"http.route":e,"next.span_name":g}),d.updateName(g),f&&f!==d&&(f.setAttribute("http.route",e),f.updateName(g))})()}};if(S&&R)await $(R,void 0);else{let b=Q.getActiveScopeSpan();await Q.withPropagatedContext(a.headers,()=>Q.trace(m.BaseServerSpan.handleRequest,{spanName:`${P} ${d}`,kind:h.SpanKind.SERVER,attributes:{"http.method":P,"http.target":a.url}},a=>$(a,b)),void 0,!S)}}},663033:a=>{a.exports=require("next/dist/server/app-render/work-unit-async-storage.external.js")},673429:a=>{a.exports=require("node:util/types")},673496:a=>{a.exports=require("http2")},710846:a=>{a.exports=require("next/dist/compiled/next-server/app-page.runtime.prod.js")},719771:a=>{a.exports=require("process")},731421:a=>{a.exports=require("node:child_process")},744870:a=>{a.exports=require("next/dist/compiled/next-server/app-route.runtime.prod.js")},775919:a=>{a.exports=require("node:worker_threads")},777030:a=>{a.exports=require("node:net")},781630:a=>{a.exports=require("http")},817492:(a,b,c)=>{c.d(b,{Hm:()=>f,xc:()=>e});let d=["key","secret","token","password"],e=a=>d.some(b=>a.toLowerCase().includes(b)),f=a=>e(a)||"authorization"===a.trim().toLowerCase()},840610:a=>{a.exports=require("node:dns")},842482:a=>{a.exports=import("sharp")},848161:a=>{a.exports=require("node:os")},863381:(a,b,c)=>{c.a(a,async(a,d)=>{try{c.d(b,{V:()=>m});var e=c(619335),f=c(266844),g=c(351161),h=c(92967),i=c(637204),j=c(961346),k=c(942901),l=a([k]);k=(l.then?(await l)():l)[0];let n=(0,f.h)("backend/services/flow/compileFlow");async function m(a,b={}){if(!a||"object"!=typeof a||Array.isArray(a))return{success:!1,error:"The spec must be a JSON object (a FlowSpec)",statusCode:400};let c=await (0,k.jY)(),d=c.compile;if(b.updateFlowId){let a=d.flows??[];if(!a.some(a=>a.id===b.updateFlowId))return{success:!1,error:`No flow with id "${b.updateFlowId}" to update`,statusCode:404};d={...d,flows:a.filter(a=>a.id!==b.updateFlowId)}}let f="simple"===b.profile?(0,i.lJ)(a,d,{keepPills:b.keepPills,newSubflowDefaults:!b.updateFlowId}):(0,h.dM)(a,d,{keepPills:b.keepPills,newSubflowDefaults:!b.updateFlowId});if(!f.flow)return{success:!1,error:"The spec could not be compiled into a flow",statusCode:422,issues:f.issues.map(a=>({severity:a.severity,code:a.code,message:a.message}))};b.updateFlowId&&(f.flow.id=b.updateFlowId);let l=f.flows.flatMap(a=>(0,j.nC)(a,{models:c.compile.models,servers:c.validatorServers,serverTools:c.compile.serverTools}).issues),o=(0,k.RB)(f.issues,{issues:l,errorCount:0,warningCount:0,isRunnable:!0}),p=!1;if(b.save&&0===o.errorCount){for(let a of f.flows)await (0,e.QO)(),await g.flowService.saveFlow(a);p=!0,n.info(`Compiled and saved ${f.flows.length} flow(s); root "${f.flow.name}" (${f.flow.id})`)}else b.save&&n.info(`Compiled flow "${f.flow.name}" has ${o.errorCount} error(s); NOT saved`);return{success:!0,flow:f.flow,flows:f.flows,validation:o,saved:p}}d()}catch(a){d(a)}})},882980:(a,b,c)=>{c.d(b,{H6:()=>h,Mt:()=>e,SL:()=>g,UQ:()=>f,ZW:()=>d});let d="MCP_TRANSPORT_INVALID";function e(a){return"stdio"===a||"streamable"===a||"sse"===a||"websocket"===a}class f extends Error{constructor(){super(d),this.name="McpTransportError"}}function g(a){if(!e(a.transport))throw new f}function h(a){if(void 0===a)return"stdio";if(!e(a))throw new f;return a}},903295:a=>{a.exports=require("next/dist/server/app-render/after-task-async-storage.external.js")},912412:a=>{a.exports=require("assert")},927910:a=>{a.exports=require("stream")},932467:a=>{a.exports=require("node:http2")},937067:a=>{a.exports=require("node:http")},942901:(a,b,c)=>{c.a(a,async(a,d)=>{try{c.d(b,{RB:()=>l,bD:()=>n,jY:()=>k,xv:()=>j});var e=c(266844),f=c(818025),g=c(110844),h=c(351161),i=a([f,g]);[f,g]=i.then?(await i)():i;let m=(0,e.h)("backend/services/flow/generationContext"),n=300;function j(a,b){let c=String(a).replace(/\s+/g," ").trim();return c.length<=b?c:`${c.slice(0,b).trimEnd()}…`}async function k(){let a=await f.modelService.loadModels(),b=a.map(a=>({id:a.id,name:a.name,...a.displayName?{displayName:a.displayName}:{},...a.description?{description:j(a.description,100)}:{}})),c=[],d={};try{let a=await g.mcpService.loadServerConfigs();if(Array.isArray(a))for(let b of a){if(b.disabled)continue;let a=!1;try{let c=await g.mcpService.getServerStatus(b.name);a=c?.status==="connected"}catch(a){m.debug(`getServerStatus failed for ${b.name}; listing name only`,a)}if(!a){c.push({name:b.name,connected:!1});continue}let{tools:e}=await g.mcpService.listServerTools(b.name),f=(e??[]).filter(a=>a.name).map(a=>({name:a.name,...a.description?{description:j(a.description,100)}:{}}));d[b.name]=f.map(a=>a.name),c.push({name:b.name,connected:!0,tools:f})}}catch(a){m.warn("Could not load MCP servers for the authoring context",a)}let e=[];try{e=await h.flowService.loadFlows()}catch(a){m.warn("Could not load flows for the authoring context",a)}let i={models:b,servers:c,flows:e.map(a=>({id:a.id,name:a.name,...a.description?{description:j(a.description,n)}:{},nodeCount:a.nodes?.length??0}))};return{blocks:i,compile:{models:a.map(a=>({id:a.id,name:a.name,displayName:a.displayName})),servers:c.map(a=>({name:a.name})),serverTools:d,flows:e.map(a=>({id:a.id,name:a.name}))},catalog:function(a){let b=[];for(let c of(b.push("AVAILABLE MODELS (reference by id or name):"),0===a.models.length&&b.push(" (none configured)"),a.models)){let a=c.displayName&&c.displayName!==c.name?`"${c.displayName}" (${c.name})`:c.name,d=c.description?` — ${c.description}`:"";b.push(` - id: ${c.id} — ${a}${d}`)}for(let c of(b.push("",'AVAILABLE MCP SERVERS (attach to process nodes via "servers"):'),0===a.servers.length&&b.push(" (none configured)"),a.servers)){if(!c.connected){b.push(` - ${c.name} (offline — tools unknown; may still be used)`);continue}b.push(` - ${c.name}:`);let a=(c.tools??[]).slice(0,20);for(let c of a){let a=c.description?` — ${c.description}`:"";b.push(` - ${c.name}${a}`)}let d=(c.tools?.length??0)-a.length;d>0&&b.push(` - …and ${d} more`)}for(let c of(b.push("",'EXISTING FLOWS (usable as subflow targets via "flow"):'),0===a.flows.length&&b.push(" (none)"),a.flows.slice(0,15))){let a=c.description?` — ${c.description}`:` — ${c.nodeCount} nodes`;b.push(` - "${c.name}"${a}`)}return a.flows.length>15&&b.push(` - …and ${a.flows.length-15} more`),b.join("\n")}(i),validatorServers:c.map(a=>({name:a.name,status:a.connected?"connected":"disconnected"}))}}function l(a,b){let c=[...a.map(a=>({severity:a.severity,code:a.code,message:a.message})),...b.issues],d=c.filter(a=>"error"===a.severity).length;return{issues:c,errorCount:d,warningCount:c.length-d,isRunnable:0===d}}d()}catch(a){d(a)}})},961643:(a,b,c)=>{c.a(a,async(a,d)=>{try{c.r(b),c.d(b,{DELETE:()=>A,GET:()=>y,POST:()=>z,runtime:()=>w});var e=c(726179),f=c(787243),g=c(25870),h=c(109901),i=c(638075),j=c(47631),k=c(238899),l=c(3010),m=c(266844),n=c(2398),o=c(363140),p=a([e,i,j,l,o]);[e,i,j,l,o]=p.then?(await p)():p;let w="nodejs",x=(0,m.h)("app/mcp-flows/route");function q(a,b){return new Response(JSON.stringify({error:b}),{status:a,headers:{"content-type":"application/json"}})}async function r(a){let b=a.headers.get("content-length");if(b&&Number(b)>262144)return!1;if(!a.body)return!0;let c=a.clone().body.getReader(),d=0;try{for(;;){a.signal.throwIfAborted();let b=await c.read();if(b.done)return!0;if((d+=b.value.byteLength)>262144)return c.cancel().catch(()=>void 0),a.body.cancel().catch(()=>void 0),!1}}finally{c.releaseLock()}}async function s(a){let b;if(!(0,i.v5)(a.headers.get("host"),a.headers.get("origin")))return x.warn("Rejected non-local request",{host:a.headers.get("host")}),q(403,"Forbidden: this endpoint only accepts local requests.");if((0,n.v1)()||await (0,e.q1)()){if(!await r(a))return q(413,"MCP request body exceeds the limit.");if(!await (0,o.u)(a))return(0,o.q)(a)}let c=((b=new g.g({name:"flujo-flows",version:"3.48.1"},{capabilities:{tools:{}}})).setRequestHandler(h.gW,async()=>{let a=(0,l.cI)(),{tools:b}=await (0,j.T)();return{tools:[...a,...b.filter(a=>!(0,l.yM)(a.name)||(x.warn(`Flow tool '${a.name}' collides with a reserved authoring tool name; shadowed`,{}),!1))]}}),b.setRequestHandler(h.FT,a=>{let b=a.params.arguments??{};return(0,l.yM)(a.params.name)?(0,l.oV)(a.params.name,b):(0,j.o)(a.params.name,b)}),b);try{return await (0,k.w)(c,a)}catch(a){return x.error("Flows MCP request failed",{error:a}),q(500,"Internal MCP server error.")}}async function t(a){return s(a)}async function u(a){return s(a)}async function v(a){return s(a)}let y=(0,f.pZ)(u),z=(0,f.pZ)(t),A=(0,f.pZ)(v);d()}catch(a){d(a)}})},973024:a=>{a.exports=require("node:fs")},977598:a=>{a.exports=require("node:crypto")},979428:a=>{a.exports=require("buffer")},986439:a=>{a.exports=require("next/dist/shared/lib/no-fallback-error.external")}};var b=require("../../webpack-runtime.js");b.C(a);var c=b.X(0,[92970,45592,51944,7397,76364,53806,64165,45775,76161,18477,71244,45481,84314,74107,83829,28644,87243,19913,25399,51161,21453,79365,8464,62377,65326,42248,86661,36362,7937,92967,9961,59678,21821,94063,87513,3010],()=>b(b.s=642848));module.exports=c})();
29
+ `),u=!0;try{k?.()}catch(a){c?.(a instanceof Error?a:Error(String(a)))}void 0!==l&&clearInterval(l),m?.(),f.delete(x);try{j.close()}catch{}}},y=new ReadableStream({start(a){j=a;let c=dG({method:"notifications/subscriptions/acknowledged",params:{notifications:r}},s);(w(c.method,c.params),0===Object.keys(r).length)?x(!0):(k=b.subscribe(a=>{if(u||!function(a,b){switch(b.kind){case"tools_list_changed":return!0===a.toolsListChanged;case"prompts_list_changed":return!0===a.promptsListChanged;case"resources_list_changed":return!0===a.resourcesListChanged;case"resource_updated":return void 0!==a.resourceSubscriptions&&a.resourceSubscriptions.includes(b.uri)}}(r,a))return;let b=dG(function(a){switch(a.kind){case"tools_list_changed":return{method:"notifications/tools/list_changed"};case"prompts_list_changed":return{method:"notifications/prompts/list_changed"};case"resources_list_changed":return{method:"notifications/resources/list_changed"};case"resource_updated":return{method:"notifications/resources/updated",params:{uri:a.uri}}}}(a),s);w(b.method,b.params)}),l=dD(e,()=>v(": keepalive\n\n")),f.add(x))},cancel(){x(!1)}});if(void 0!==g)if(g.aborted)x(!1);else{let a=()=>x(!1);g.addEventListener("abort",a,{once:!0}),m=()=>g.removeEventListener("abort",a)}return new Response(y,{status:200,headers:{"Content-Type":"text/event-stream","Cache-Control":"no-cache, no-transform",Connection:"keep-alive","X-Accel-Buffering":"no"}})},closeAll(){for(let a of f)a(!0)},get openCount(){return f.size}}}({bus:o,maxSubscriptions:b.maxSubscriptions??1024,keepAliveMs:b.keepAliveMs??15e3,onerror:n});"json"===f&&console.warn("responseMode: 'json' drops mid-call notifications. subscriptions/listen streams are always served over SSE regardless; other notifications emitted before a result are dropped.");let r="reject"===d?void 0:(c=b.keepAliveMs,async(b,d)=>{if("POST"!==b.method.toUpperCase())return d5(405,-32e3,"Method not allowed.");try{let e=await a({era:"legacy",...d?.authInfo!==void 0&&{authInfo:d.authInfo},requestInfo:b}),f=new d3({sessionIdGenerator:void 0,...void 0!==c&&{keepAliveMs:c},...void 0!==g&&{maxRequestBodySize:g}});await e.connect(f);let h=()=>{f.close().catch(()=>{}),e.close().catch(()=>{})};b.signal?.addEventListener("abort",h,{once:!0});let i=await f.handleRequest(b,{...d?.authInfo!==void 0&&{authInfo:d.authInfo},...d?.parsedBody!==void 0&&{parsedBody:d.parsedBody}});if(null===i.body||"text/event-stream"!==bO(i.headers.get("content-type")))return h(),i;let j=i.body.getReader(),k=!1,l=()=>{k||(k=!0,h())},m=new ReadableStream({pull:async a=>{try{let{done:b,value:c}=await j.read();if(b){l(),a.close();return}void 0!==c&&a.enqueue(c)}catch(b){l(),a.error(b)}},cancel:a=>(l(),j.cancel(a).catch(()=>{}))});return new Response(m,{status:i.status,statusText:i.statusText,headers:i.headers})}catch(a){try{n?.(d7(a))}catch{}return d8(d4(d?.parsedBody))}});async function s(c,d,e){var g,m;let o=c.classification.revision;if(void 0===o||!S.includes(o)){let a=new aw({supported:[...S],requested:o??"unknown"});return n(a),d5(400,a.code,a.message,a.data,d4(c.message))}let p=function(a,b){if("request"!==b.messageKind)return;let c=b.message.method;if(void 0===a.protocolVersionHeader){let a=b.classification.revision;return bh("version-header-missing","(missing)",void 0===a?"the body carries a modern per-request envelope but the required MCP-Protocol-Version header is absent":`the body envelope names protocol version ${a} but the required MCP-Protocol-Version header is absent`,"standard-header-validation")}if(void 0===a.mcpMethodHeader)return bh("method-header-missing","(missing)",`the body names method ${c} but the required Mcp-Method header is absent`,"standard-header-validation");let d=function(a,b){let c=Object.hasOwn(bi,a)?bi[a]:void 0;if(void 0===c)return;let d=bk(b)?b[c]:void 0;return{field:c,value:"string"==typeof d?d:void 0}}(c,b.message.params);if(void 0===d)return;let{field:e,value:f}=d;if(void 0===a.mcpNameHeader){if(void 0===f)return;return bh("name-header-missing","(missing)",`the body carries params.${e}="${f}" but the required Mcp-Name header is absent`,"standard-header-validation")}let g=bj(a.mcpNameHeader),h=bc(g);return void 0===h?bh("name-header-invalid-encoding",g,"the Mcp-Name header carries an invalid Base64 sentinel value","standard-header-validation"):void 0!==f&&h!==f?bh("name-header-mismatch",g,`the body carries params.${e}="${f}" but the Mcp-Name header names "${h}"`,"standard-header-validation"):void 0}({httpMethod:d.method,...ea(d)},c);if(void 0!==p)return n(Error(`Rejected inbound request (${p.cell}): ${p.message}`)),d6(p,d4(c.message));let r="request"===c.messageKind?aU(c.message.params):void 0,s=r?.[C.Pks];if("request"===c.messageKind){let a=Object.hasOwn(O,g=c.message.method)?O[g]:void 0;if(void 0!==a){let b=Q(a,s);if(void 0!==b){let a=new ax({requiredCapabilities:b});return n(a),d5(bf[a.code]??400,a.code,a.message,a.data,c.message.id)}}}let t=await a({era:"modern",...void 0!==e&&{authInfo:e},requestInfo:d}),u=t instanceof dR?t.server:t;if(d9(u),"request"===c.messageKind&&"subscriptions/listen"===c.message.method){let a=u.getCapabilities(),b=l(u);return t.close().catch(n),q.serve(c.message,d.signal,a,b)}if("request"===c.messageKind&&"tools/call"===c.message.method&&t instanceof dR){let a=c.message.params,b="string"==typeof a?.name?a.name:void 0,e=void 0===b?void 0:t.toolInputSchemaJson(b);if(void 0!==e){let b=a6(e);if(b.valid&&b.declarations.length>0){let e=function(a,b,c){for(let d of a){let a=`Mcp-Param-${d.headerName}`,e=c.get(a),f=function(a,b){let c=a;for(let a of b){if(null===c||"object"!=typeof c)return;c=c[a]}return c}(b,d.path);if(null==f)continue;let g=function(a){if("string"==typeof a)return a;if("boolean"==typeof a)return a?"true":"false";if("number"==typeof a){if(!Number.isFinite(a)||Number.isInteger(a)&&!Number.isSafeInteger(a))return;return String(a)}}(f);if(void 0===g)continue;if(null===e)return bd("param-header-missing",a,`the body carries ${a9(d.path)}=${JSON.stringify(f)} but the ${a} header is absent`);let h=bc(e);if(void 0===h)return bd("param-header-invalid-encoding",a,`the ${a} header carries an invalid Base64 sentinel value`);if(!(("integer"===d.type||"number"===d.type)&&bb.test(h)&&"number"==typeof f?Number(h)===f:h===g))return bd("param-header-mismatch",a,`the ${a} header decodes to ${JSON.stringify(h)} but the body carries ${a9(d.path)}=${JSON.stringify(f)}`)}}(b.declarations,a?.arguments,d.headers);if(void 0!==e)return t.close().catch(n),n(Error(`Rejected inbound request (${e.cell}): ${e.message}`)),d6(e,c.message.id)}}}if("request"===c.messageKind&&t instanceof dR)try{let a=await dJ([c.message],e,a=>t.resolveScopeChallenge(a));if(void 0!==a)return t.close().catch(n),dL(a,dK(e))}catch(a){return t.close().catch(n),n(d7(a)),d8(c.message.id)}d9(u),i(u,o),k(u,S),void 0!==r&&(m={clientInfo:r[C.DxC],clientCapabilities:s},j(u,m));let v=u.onclose;h.add(u);let w=()=>{h.delete(u),u.onclose===w&&(u.onclose=v),v?.()};u.onclose=w;try{let a=await d_(t,c.message,{classification:c.classification,request:d,...void 0!==e&&{authInfo:e},...void 0!==f&&{responseMode:f},...void 0!==b.keepAliveMs&&{keepAliveMs:b.keepAliveMs}});return"notification"===c.messageKind&&queueMicrotask(()=>void u.close().catch(()=>{})),a}catch(a){if(a instanceof N&&a.code===M.ConnectionClosed)return new Response(null,{status:499});return await u.close().catch(()=>{}),h.delete(u),n(d7(a)),d8(d4(c.message))}}async function t(a,b,c,d){if(void 0!==r)return r(b,{...void 0!==c&&{authInfo:c},...void 0!==d&&{parsedBody:d}});let e=function(a,b){switch(a.reason){case"http-method":return bg("http-method","modern-only-method-not-allowed",405,new at(-32e3,"Method not allowed."),!0);case"batch":return bg("jsonrpc-shape","modern-only-batch-not-supported",400,new at(as.InvalidRequest,"Bad Request: JSON-RPC batches are not supported by this endpoint"),!0);case"response":return bg("jsonrpc-shape","modern-only-response-post",400,new at(as.InvalidRequest,"Bad Request: JSON-RPC responses cannot be posted to this endpoint"),!0);case"notification":return;case"initialize":case"no-claim":{let c=a.requestedVersion;return bg("era-classification","modern-only-missing-envelope",400,void 0===c?new at(as.UnsupportedProtocolVersion,"Unsupported protocol version: the request did not name a protocol version",{supported:[...b]}):new aw({supported:[...b],requested:c}),!0)}}}(a,S);return void 0===e?new Response(null,{status:202}):(n(Error(`Rejected 2025-era request on a modern-only endpoint (${e.cell}): ${e.message}`)),d6(e,d4(d)))}async function u(a,b){let c=b?.authInfo;if("POST"===a.method.toUpperCase()&&!bP(a.headers.get("content-type")))return n(Error("Unsupported Media Type: Content-Type must be application/json")),d5(415,-32e3,"Unsupported Media Type: Content-Type must be application/json");let d=await eb(a,b?.parsedBody,!0,g);if("unreadable-body"===d.step)return d5(400,-32700,"Parse error: the request body could not be read");if("body-too-large"===d.step)return d5(413,-32e3,d0(g));if("no-json-body"===d.step)return void 0!==r?r(d.forwardRequest,{...void 0!==c&&{authInfo:c}}):d5(400,-32700,"Parse error: the request body is not valid JSON");let{outcome:e,body:f,parsedBody:h,forwardRequest:i}=d;try{switch(e.kind){case"reject":return n(Error(`Rejected inbound request (${e.cell}): ${e.message}`)),d6(e,d4(f));case"modern":return await s(e,a,c);case"legacy":return await t(e,i,c,h)}}catch(a){return n(d7(a)),d8(d4(f))}}return{fetch:async(a,b)=>{if(m)throw Error("This MCP handler has been closed");try{return await u(a,b)}catch(a){return n(d7(a)),d8(d4(b?.parsedBody))}},notify:p,bus:o,close:async()=>{m=!0,q.closeAll();let a=[...h].map(a=>a.close().catch(()=>{}));h.clear(),await Promise.all(a)}}}},455511:a=>{a.exports=require("crypto")},464896:(a,b,c)=>{function d(a){if(null==a)return null;if("object"!=typeof a||Array.isArray(a))return"Invalid AI condition";if("llm-gate"!==a.mode&&"flow-gate"!==a.mode)return"Invalid AI checker type";if("string"!=typeof a.condition||!a.condition.trim())return"A condition is required for the AI to check";let b="llm-gate"===a.mode?a.modelId:a.flowId;return"string"==typeof b&&b.trim()?void 0!==a.maxCallsPerDay&&("number"!=typeof a.maxCallsPerDay||!Number.isSafeInteger(a.maxCallsPerDay)||a.maxCallsPerDay<1)?"Maximum AI checks per day must be a positive whole number":null:"A model or flow is required to check the condition"}function e(a){return"mcp-poll"===a.type&&("llm-gate"===a.evaluate.mode||"flow-gate"===a.evaluate.mode)?{...a,evaluate:{mode:"on-change"}}:a}function f(a){let b=a.startRestriction,c="unrestricted"===b||"singleton"===b||"exclusive"===b,d=!c&&!0===a.exclusive;return{startRestriction:c?b:d?"exclusive":"unrestricted",superExclusive:!!d||!0===a.superExclusive,emergency:!0===a.emergency}}function g(a){return!(!a||"object"!=typeof a||Array.isArray(a))&&["personaId","behaviorSlotKey","personaRetired","personaArchived"].some(b=>Object.prototype.hasOwnProperty.call(a,b))}c.d(b,{B2:()=>d,Vw:()=>g,n$:()=>e,vq:()=>f})},474998:a=>{a.exports=require("perf_hooks")},478474:a=>{a.exports=require("node:events")},480244:(a,b,c)=>{c.r(b),c.d(b,{loadServerConfigs:()=>q,loadServerRoots:()=>r,saveConfig:()=>t});var d=c(333873),e=c.n(d),f=c(107397),g=c(610782),h=c(774755),i=c(266844),j=c(907986),k=c(882980);let l=(0,i.h)("backend/services/mcp/config"),m=new Set(["streamable","sse","websocket"]),n=new Map;async function o(a){if(n.has(a))return n.get(a);let b=null;try{let c=(0,f.Lp)({baseDir:a,timeout:{block:5e3}});b=(await c.remote(["get-url","origin"])||"").trim()||null}catch{b=null}return n.set(a,b),b}async function p(a){var b;let c;if(m.has(a.transport))return{type:"remote"};let d="string"!=typeof(b=a.rootPath)||""===b.trim()?null:e().isAbsolute(b)?b:e().resolve((0,j.getWorkspaceDataDir)(),b);if(d&&""!==(c=e().relative(e().join((0,j.getWorkspaceDataDir)(),"mcp-servers"),d))&&!c.startsWith("..")&&!e().isAbsolute(c)){let a=await o(d);if(a)return{type:"github",repositoryUrl:a}}return{type:"local"}}async function q(){l.debug("Entering loadServerConfigs method");try{let a=await (0,g.loadItem)(h.Zg.MCP_SERVERS,{}),b=Object.entries(a).map(([a,b])=>{let c=(0,k.H6)(b.transport),d=a=>"string"==typeof a?(0,j.remapLegacyDefaultWorkspaceReference)(a,"mcp-servers"):void 0,e=a=>Array.isArray(a)?a.map(d).filter(a=>void 0!==a):void 0,f=a=>{if(!a||"object"!=typeof a||Array.isArray(a))return;let b={};for(let[c,e]of Object.entries(a)){if("string"==typeof e){b[c]=d(e)??e;continue}e&&"object"==typeof e&&"value"in e&&"string"==typeof e.value&&"metadata"in e&&e.metadata&&"object"==typeof e.metadata&&"isSecret"in e.metadata&&"boolean"==typeof e.metadata.isSecret&&(b[c]={value:d(e.value)??e.value,metadata:{isSecret:e.metadata.isSecret}})}return b},g=b.launch,h=g&&"object"==typeof g?{...g,command:d(g.command),cwd:d(g.cwd),args:e(g.args),env:f(g.env)}:void 0;b={...b,transport:c,rootPath:d(b.rootPath),cwd:d(b.cwd),command:d(b.command),args:e(b.args),roots:e(b.roots),env:f(b.env),...Object.prototype.hasOwnProperty.call(b,"launch")?{launch:h}:{}},m.has(c)&&function(a){if("string"!=typeof a)return!1;let b=a.trim();return"/"===b||"\\"===b||/^[A-Za-z]:[\\/]?$/.test(b)}(b.rootPath)&&(l.info(`Normalizing filesystem-root rootPath "${b.rootPath}" of remote server ${a} to mcp-servers/${a}`),b={...b,rootPath:`mcp-servers/${a}`});let i=b.source?.type;"stdio"===c&&"string"==typeof b.rootPath&&"."===b.rootPath.trim()&&("registry"===i||"marketplace"===i)&&/^[A-Za-z0-9][A-Za-z0-9_-]{0,63}$/.test(a)&&(l.info(`Normalizing shared Registry rootPath "." of ${a} to mcp-servers/${a}`),b={...b,rootPath:`mcp-servers/${a}`});let n={name:a,disabled:!1,rootPath:"",env:{},_buildCommand:"",_installCommand:""};return"streamable"===c?{...n,...b,name:a,requestInit:b.requestInit&&"object"==typeof b.requestInit?b.requestInit:void 0,reconnectionOptions:b.reconnectionOptions&&"object"==typeof b.reconnectionOptions?b.reconnectionOptions:void 0,sessionId:b.sessionId||void 0,oauthClientId:b.oauthClientId||"",oauthClientSecret:b.oauthClientSecret||"",oauthScopes:b.oauthScopes||(b.oauthClientId||b.oauthClientInformation?["read"]:void 0),oauthClientMetadata:b.oauthClientMetadata,oauthClientInformation:b.oauthClientInformation,oauthTokens:b.oauthTokens,oauthCodeVerifier:b.oauthCodeVerifier}:"sse"===c?{...n,...b,name:a,eventSourceInit:b.eventSourceInit&&"object"==typeof b.eventSourceInit?b.eventSourceInit:void 0,requestInit:b.requestInit&&"object"==typeof b.requestInit?b.requestInit:void 0}:"websocket"===c?{...n,...b,name:a,websocketUrl:b.websocketUrl||""}:{...n,...b,name:a,command:b.command||"",args:b.args||[],stderr:b.stderr||"pipe"}});return await Promise.all(b.map(async a=>{a.source||(a.source=await p(a))})),b}catch(a){if(a instanceof k.UQ)return l.warn("Stored MCP transport is invalid"),{success:!1,error:a.message,statusCode:400};return l.warn("Failed to load server configs",a),{success:!1,error:`Failed to load server configs: ${a instanceof Error?a.message:"Unknown error"}`}}}async function r(a){let b=await q();if(!Array.isArray(b))return[];let c=b.find(b=>b.name===a)?.roots;return Array.isArray(c)?c.filter(a=>"string"==typeof a):[]}let s=["_buildCommand","_installCommand","oauthClientId","oauthClientSecret"];async function t(a){l.debug("Entering saveConfig method");try{for(let b of a.values())(0,k.SL)(b);let b=Object.fromEntries(Array.from(a.entries()).map(([a,b])=>[a,function(a){let{name:b,...c}=a,d={};for(let[a,b]of Object.entries(c))void 0!==b&&(""===b&&s.includes(a)||(d[a]=b));return d}(b)]));return await (0,g.VH)(h.Zg.MCP_SERVERS,b),{success:!0}}catch(a){if(a instanceof k.UQ)return l.warn("MCP transport is invalid"),{success:!1,error:a.message,statusCode:400};return l.warn("Failed to save config",a),{success:!1,error:`Failed to save config: ${a instanceof Error?a.message:"Unknown error"}`}}}},491645:a=>{a.exports=require("net")},504573:a=>{a.exports=require("node:buffer")},529294:a=>{a.exports=require("next/dist/server/app-render/work-async-storage.external.js")},541692:a=>{a.exports=require("node:tls")},541792:a=>{a.exports=require("node:querystring")},557987:(a,b,c)=>{c.d(b,{s:()=>d});function d(a){let b=new Set,c=new Map;for(let d of a){if(c.has(d.id))continue;let a=function(a){let b=(a&&a.trim()||"flow").toLowerCase().replace(/[^a-z0-9]+/g,"_").replace(/_+/g,"_").replace(/^_+|_+$/g,"");return b.length>56&&(b=b.slice(0,56).replace(/_+$/g,"")),b||"flow"}(d.name),e=a;if(b.has(e)){let c=2;for(;b.has(`${a}_${c}`);)c++;e=`${a}_${c}`}b.add(e),c.set(d.id,e)}return c}},579646:a=>{a.exports=require("child_process")},583997:a=>{a.exports=require("tty")},584297:a=>{a.exports=require("async_hooks")},592235:(a,b,c)=>{c.d(b,{g7:()=>x,z_:()=>o});var d=c(977598),e=c(973024),f=c(176760),g=c.n(f),h=c(425399),i=c(472178),j=c(100629),k=c(610782),l=c(930100),m=c(134887),n=c(907986);class o extends Error{constructor(a){super(a),this.code=a,this.name="ServerTaskError"}}let p=globalThis.__flujo_server_tasks_v1??={live:new Map,chains:new Map,settled:new Map};p.settled??=new Map;let q=Object.freeze({records:128,active:32,perOwnerActive:4,payloadBytes:32768,ledgerBytes:6291456,inputCount:16,ttlMs:864e5}),r=a=>["completed","failed","cancelled"].includes(a);function s(a){throw new o(a)}let t=a=>({taskId:a.taskId,status:a.status,createdAt:a.createdAt,lastUpdatedAt:a.lastUpdatedAt,ttlMs:a.ttlMs,pollIntervalMs:a.pollIntervalMs}),u=a=>!!a&&"object"==typeof a&&!Array.isArray(a);function v(a,b){let c=0,d=0,e=new Set,f=(a,g)=>{if((++d>8192||g>32)&&s("TASK_PAYLOAD_LIMIT"),"string"==typeof a)Buffer.byteLength(a)>b&&s("TASK_PAYLOAD_LIMIT"),c+=Buffer.byteLength(JSON.stringify(a));else if(null===a||"boolean"==typeof a)c+=5;else if("number"==typeof a&&Number.isFinite(a))c+=32;else if("object"==typeof a&&null!==a){for(let d of((e.has(a)||!Array.isArray(a)&&Object.getPrototypeOf(a)!==Object.prototype&&null!==Object.getPrototypeOf(a))&&s("TASK_INPUT_INVALID"),e.add(a),c+=2,Object.keys(a))){let e=Object.getOwnPropertyDescriptor(a,d);e&&"value"in e||s("TASK_INPUT_INVALID"),Buffer.byteLength(d)>b&&s("TASK_PAYLOAD_LIMIT"),(c+=Buffer.byteLength(JSON.stringify(d))+2)>b&&s("TASK_PAYLOAD_LIMIT"),f(e.value,g+1)}e.delete(a)}else s("TASK_INPUT_INVALID");c>b&&s("TASK_PAYLOAD_LIMIT")};f(a,0);let g=JSON.stringify(a);return Buffer.byteLength(g)>b&&s("TASK_PAYLOAD_LIMIT"),g}class w{constructor(a={}){this.options=a,this.filename=g().join(g().resolve(a.directory??(0,m.ok)()),".mcp-server-tasks","ledger.json")}now(){return(this.options.now??Date.now)()}key(a){return`${this.filename}:${a}`}assertAuthority(a,b){let c=!0;try{c=null!==a.recheck(this.now())}catch{}(!(0,n.isValidWorkspaceName)(b)||b!==(0,n.getCurrentWorkspace)()||void 0!==a.principal.workspaceId&&a.principal.workspaceId!==b||!["mcp:access","control:admin","secrets:read"].every(b=>a.principal.scopes.includes(b))||a.principal.expiresAt<=this.now()||c)&&s("TASK_ACCESS_DENIED")}owned(a,b,c,d){this.assertAuthority(b,c),"string"==typeof d&&/^[0-9a-f-]{36}$/.test(d)||s("TASK_NOT_FOUND");let e=a.tasks.find(a=>a.taskId===d);return(!e||e.ownerId!==b.principal.ownerId||e.credentialId!==b.principal.credentialId||e.workspaceId!==c||e.policyRevision!==b.principal.policyRevision||e.expiresAt<=this.now())&&s("TASK_NOT_FOUND"),e}async read(){try{let a=await (0,j.b)(this.filename,{maxBytes:q.ledgerBytes,verifyPath:()=>(0,i.V$)(g().dirname(g().dirname(this.filename)),this.filename)}),b=JSON.parse(a.toString("utf8"));(!u(b)||1!==b.schemaVersion||!Array.isArray(b.tasks)||b.tasks.length>q.records||Object.keys(b).some(a=>!["schemaVersion","tasks"].includes(a)))&&s("TASK_STORAGE_UNAVAILABLE");let c=new Set;for(let a of b.tasks)(!u(a)||"string"!=typeof a.taskId||!/^[0-9a-f-]{36}$/.test(a.taskId)||Object.keys(a).some(a=>!["taskId","status","createdAt","lastUpdatedAt","ttlMs","pollIntervalMs","ownerId","credentialId","workspaceId","policyRevision","expiresAt","process","payload","errorCode","acceptedInputIds","executionPending"].includes(a))||c.has(a.taskId)||!["working","input_required","completed","failed","cancelled"].includes(String(a.status))||!(0,n.isValidWorkspaceName)(a.workspaceId)||"string"!=typeof a.ownerId||a.ownerId.length>64||"string"!=typeof a.credentialId||a.credentialId.length>64||"string"!=typeof a.policyRevision||a.policyRevision.length>256||"boolean"!=typeof a.executionPending||!r(a.status)&&!0!==a.executionPending||!Number.isSafeInteger(a.expiresAt)||!Number.isSafeInteger(a.ttlMs)||1e3>Number(a.ttlMs)||Number(a.ttlMs)>q.ttlMs||!Number.isSafeInteger(a.pollIntervalMs)||100>Number(a.pollIntervalMs)||"string"!=typeof a.createdAt||!Number.isFinite(Date.parse(a.createdAt))||"string"!=typeof a.lastUpdatedAt||!Number.isFinite(Date.parse(a.lastUpdatedAt))||!u(a.process)||!Number.isSafeInteger(a.process.pid)||0>=Number(a.process.pid)||"string"!=typeof a.process.processInstanceId||a.process.processInstanceId.length>128||void 0!==a.process.processBirthMarkerV2&&("string"!=typeof a.process.processBirthMarkerV2||a.process.processBirthMarkerV2.length>256)||!Array.isArray(a.acceptedInputIds)||a.acceptedInputIds.length>q.inputCount||a.acceptedInputIds.some(a=>"string"!=typeof a||a.length>128)||void 0!==a.errorCode&&!["TASK_INTERRUPTED","TASK_FAILED","TASK_AUTH_REVOKED","TASK_EXPIRED"].includes(String(a.errorCode))||void 0!==a.payload&&("string"!=typeof a.payload||!a.payload.startsWith("v2:")||Buffer.byteLength(a.payload)>2*q.payloadBytes))&&s("TASK_STORAGE_UNAVAILABLE"),c.add(a.taskId);return b}catch(a){if("ENOENT"===a.code)return{schemaVersion:1,tasks:[]};throw a instanceof o?a:new o("TASK_STORAGE_UNAVAILABLE")}}async write(a,b){let c=v(a,q.ledgerBytes);await e.promises.mkdir(g().dirname(this.filename),{recursive:!0,mode:448}),await (0,i.V$)(g().dirname(g().dirname(this.filename)),this.filename);try{await (0,k.Zf)(this.filename,c,async()=>{b?.(),await (0,i.V$)(g().dirname(g().dirname(this.filename)),this.filename)})}catch(a){throw a instanceof o?a:new o("TASK_STORAGE_UNAVAILABLE")}}async transaction(a,b){let c=(p.chains.get(this.filename)??Promise.resolve()).catch(()=>void 0).then(()=>(0,n.runWithWorkspace)(n.DEFAULT_WORKSPACE,()=>(0,h.withWorkspaceRuntimeLock)("mcp-server-tasks",c=>(0,n.runWithWorkspace)(a,async()=>{await c.assertOwned();let a=await this.read(),d=new Set(p.settled.get(this.filename)),e=!1;for(let b of a.tasks){let a=d.has(b.taskId),c=b.executionPending&&!a&&!await (0,h.isRuntimeProcessIdentityAlive)(b.process);b.executionPending&&(c||a)&&(b.executionPending=!1,e=!0),!r(b.status)&&(b.expiresAt<=this.now()||c||a)&&(b.status="failed",b.errorCode=b.expiresAt<=this.now()?"TASK_EXPIRED":a?"TASK_FAILED":"TASK_INTERRUPTED",delete b.payload,b.lastUpdatedAt=new Date(this.now()).toISOString(),e=!0,this.retire(b.taskId))}e&&(await c.assertOwned(),await this.write(a));let f=p.settled.get(this.filename);for(let a of d)f?.delete(a);return f?.size===0&&p.settled.delete(this.filename),b(a)}))));p.chains.set(this.filename,c);try{return await c}finally{p.chains.get(this.filename)===c&&p.chains.delete(this.filename)}}async seal(a,b){let c=v({format:"flujo-server-task-v1",taskId:a.taskId,workspaceId:a.workspaceId,ownerId:a.ownerId,credentialId:a.credentialId,policyRevision:a.policyRevision,payload:b},q.payloadBytes),d=await (0,l.pF)(c);return(!d?.startsWith("v2:")||Buffer.byteLength(d)>2*q.payloadBytes)&&s("TASK_STORAGE_UNAVAILABLE"),d}async open(a){if(!a.payload)return{};try{let b=await (0,l.Do)(a.payload);(!b||Buffer.byteLength(b)>q.payloadBytes)&&s("TASK_STORAGE_UNAVAILABLE");let c=JSON.parse(b);return(!u(c)||"flujo-server-task-v1"!==c.format||c.taskId!==a.taskId||c.workspaceId!==a.workspaceId||c.ownerId!==a.ownerId||c.credentialId!==a.credentialId||c.policyRevision!==a.policyRevision||!u(c.payload)||Object.keys(c.payload).some(a=>!["result","inputRequests","inputResponses"].includes(a)))&&s("TASK_STORAGE_UNAVAILABLE"),c.payload}catch{return s("TASK_STORAGE_UNAVAILABLE")}}retire(a){let b=p.live.get(this.key(a));b&&(b.controller.abort(new o("TASK_RETIRED")),b.pending?.reject(new o("TASK_RETIRED")),b.monitor&&clearInterval(b.monitor),p.live.delete(this.key(a)))}async create(a,b,c){this.assertAuthority(a,b);let e=c.ttlMs??6e5,f=c.pollIntervalMs??500;(!Number.isSafeInteger(e)||e<1e3||e>q.ttlMs||!Number.isSafeInteger(f)||f<100||f>6e4)&&s("TASK_INPUT_INVALID");let g=await this.transaction(b,async c=>{this.assertAuthority(a,b),c.tasks=c.tasks.filter(a=>a.expiresAt>this.now()||a.executionPending);let g=c.tasks.filter(a=>a.executionPending);(c.tasks.length>=q.records||g.length>=q.active||g.filter(b=>b.ownerId===a.principal.ownerId).length>=q.perOwnerActive)&&s("TASK_LIMIT");let i=this.now(),j={taskId:(0,d.randomUUID)(),status:"working",createdAt:new Date(i).toISOString(),lastUpdatedAt:new Date(i).toISOString(),ttlMs:e,pollIntervalMs:f,expiresAt:Math.min(i+e,a.principal.expiresAt),ownerId:a.principal.ownerId,credentialId:a.principal.credentialId,policyRevision:a.principal.policyRevision,workspaceId:b,process:await (0,h.getRuntimeProcessIdentity)(),acceptedInputIds:[],executionPending:!0};return j.payload=await this.seal(j,{}),c.tasks.push(j),await this.write(c,()=>this.assertAuthority(a,b)),j}),i={controller:new AbortController,authorization:a,busy:!1};p.live.set(this.key(g.taskId),i);let j=()=>{i.controller.signal.throwIfAborted(),this.assertAuthority(a,b),g.expiresAt<=this.now()&&s("TASK_RETIRED")};return i.monitor=setInterval(()=>{i.busy||(i.busy=!0,(0,n.runWithWorkspace)(b,()=>this.monitor(a,b,g.taskId,i)).catch(()=>this.retire(g.taskId)).finally(()=>{i.busy=!1}))},200),i.monitor.unref?.(),Promise.resolve().then(()=>(0,n.runWithWorkspace)(b,async()=>{let d=!1;try{j();let e=await c.run({signal:i.controller.signal,assertAuthorized:j,requestInput:c=>this.requestInput(a,b,g.taskId,i,c)});j(),await this.finish(a,b,g.taskId,e),d=!0}catch{try{await this.finish(a,b,g.taskId),d=!0}catch{}}finally{if(!d){let a=p.settled.get(this.filename);a||p.settled.set(this.filename,a=new Set),a.add(g.taskId)}this.retire(g.taskId)}})),{...t(g),resultType:"task"}}async finish(a,b,c,d){await this.transaction(b,async e=>{let f=e.tasks.find(a=>a.taskId===c);if(!f)return;if(r(f.status)){f.executionPending&&(f.executionPending=!1,await this.write(e));return}let g=!0;try{this.assertAuthority(a,b)}catch{g=!1}g&&void 0!==d&&u(d)?(f.payload=await this.seal(f,{result:d}),this.assertAuthority(a,b),f.status="completed"):(f.status="failed",f.errorCode=g?"TASK_FAILED":"TASK_AUTH_REVOKED",delete f.payload),f.lastUpdatedAt=new Date(this.now()).toISOString(),f.executionPending=!1,await this.write(e,g?()=>this.assertAuthority(a,b):void 0)})}async get(a,b,c){return this.assertAuthority(a,b),this.transaction(b,async d=>{let e=this.owned(d,a,b,c),f=await this.open(e);return("completed"!==e.status||u(f.result))&&("input_required"!==e.status||u(f.inputRequests))||s("TASK_STORAGE_UNAVAILABLE"),this.assertAuthority(a,b),{...t(e),resultType:"complete",..."completed"===e.status?{result:f.result??{}}:{},..."input_required"===e.status?{inputRequests:f.inputRequests??{}}:{},..."failed"===e.status?{error:{code:-32603,message:e.errorCode??"TASK_FAILED"}}:{}}})}async cancel(a,b,c){return this.assertAuthority(a,b),await this.transaction(b,async d=>{let e=this.owned(d,a,b,c);r(e.status)||(e.status="cancelled",delete e.payload,e.lastUpdatedAt=new Date(this.now()).toISOString(),await this.write(d,()=>this.assertAuthority(a,b)),this.retire(c))}),{resultType:"complete"}}async update(a,b,c,d){this.assertAuthority(a,b),v(d,q.payloadBytes);let e=Object.keys(d);return(e.length>q.inputCount||e.some(a=>a.length>128||!a.length))&&s("TASK_INPUT_INVALID"),await this.transaction(b,async f=>{let g=this.owned(f,a,b,c);if("input_required"!==g.status||e.every(a=>g.acceptedInputIds.includes(a)))return;let h=await this.open(g),i=e.filter(a=>Object.hasOwn(h.inputRequests??{},a)&&!g.acceptedInputIds.includes(a));if(!i.length)return;g.acceptedInputIds.length+i.length>q.inputCount&&s("TASK_INPUT_INVALID");let j={...h.inputResponses??{}};for(let a of i)Object.defineProperty(j,a,{value:d[a],enumerable:!0});g.acceptedInputIds.push(...i),g.payload=await this.seal(g,{...h,inputResponses:j}),g.lastUpdatedAt=new Date(this.now()).toISOString(),await this.write(f,()=>this.assertAuthority(a,b))}),{resultType:"complete"}}async requestInput(a,b,c,d,e){let f,g;v(e,q.payloadBytes);let h=Object.keys(e);(!h.length||h.length>q.inputCount||h.some(a=>a.length>128||!a.length))&&s("TASK_INPUT_INVALID");let i=new Promise((a,b)=>{f=a,g=b});return i.catch(()=>void 0),await this.transaction(b,async i=>{let j=this.owned(i,a,b,c);("working"!==j.status||d.pending||h.some(a=>j.acceptedInputIds.includes(a)))&&s("TASK_INPUT_INVALID"),j.payload=await this.seal(j,{inputRequests:e}),j.status="input_required",j.lastUpdatedAt=new Date(this.now()).toISOString(),await this.write(i,()=>this.assertAuthority(a,b)),d.pending={resolve:f,reject:g}}),i}async monitor(a,b,c,d){await this.transaction(b,async e=>{let f=e.tasks.find(a=>a.taskId===c);if(!f||r(f.status))return void this.retire(c);try{this.assertAuthority(a,b)}catch{f.status="failed",f.errorCode="TASK_AUTH_REVOKED",delete f.payload,f.lastUpdatedAt=new Date(this.now()).toISOString(),await this.write(e),this.retire(c);return}if("input_required"!==f.status||!d.pending)return;let g=await this.open(f),h=Object.keys(g.inputRequests??{});if(!h.length||h.some(a=>!Object.hasOwn(g.inputResponses??{},a)))return;f.status="working",delete f.payload,f.lastUpdatedAt=new Date(this.now()).toISOString(),await this.write(e,()=>this.assertAuthority(a,b)),this.assertAuthority(a,b);let i=d.pending;d.pending=void 0,i.resolve(g.inputResponses??{})})}}let x=new w},594735:a=>{a.exports=require("events")},598995:a=>{a.exports=require("node:module")},629021:a=>{a.exports=require("fs")},637204:(a,b,c)=>{c.d(b,{Sq:()=>e,lJ:()=>f});var d=c(92967);let e={type:"object",additionalProperties:!1,required:["name","goal","steps"],properties:{profile:{type:"string",const:"simple"},version:{type:"integer",const:1},name:{type:"string",minLength:1},goal:{type:"string",minLength:1},model:{type:"string",minLength:1},steps:{type:"array",minItems:1,items:{type:"object",additionalProperties:!1,required:["id","task"],properties:{id:{type:"string",minLength:1,pattern:"^[A-Za-z][A-Za-z0-9_-]*$"},task:{type:"string",minLength:1},label:{type:"string",minLength:1},model:{type:"string",minLength:1},tools:{type:"array",uniqueItems:!0,items:{type:"string",minLength:1}},flow:{type:"string",minLength:1}}}},routes:{type:"array",items:{type:"object",additionalProperties:!1,required:["from","to"],properties:{from:{type:"string",minLength:1},to:{type:"string",minLength:1},when:{type:"object",additionalProperties:!1,required:["kind"],properties:{kind:{type:"string",enum:["contains","equals","regex","always"]},value:{type:"string"},ignoreCase:{type:"boolean"},negate:{type:"boolean"}}}}}}}};function f(a,b={},c={}){let e=function(a){let b=[],c=Array.isArray(a?.steps)?a.steps:[],d=new Set,e=[];for(let a of c){let c="string"==typeof a?.id?a.id.trim():"",f="string"==typeof a?.task?a.task.trim():"";if(!c||!/^[A-Za-z][A-Za-z0-9_-]*$/.test(c)){b.push({severity:"error",code:"simple-step-id-invalid",message:"Every simple step needs an id matching ^[A-Za-z][A-Za-z0-9_-]*$."});continue}if(d.has(c)){b.push({severity:"error",code:"simple-step-id-duplicate",nodeKey:c,message:`Duplicate simple step id "${c}"; the later step was dropped.`});continue}if(!f){b.push({severity:"error",code:"simple-step-task-missing",nodeKey:c,message:`Step "${c}" needs a non-empty task.`});continue}d.add(c),e.push({...a,id:c,task:f})}let f="__start",g="__finish",h=[{key:f,type:"start",label:"Start",prompt:`Execute this workflow toward its stated goal: ${"string"==typeof a?.goal?a.goal.trim():""}`}];for(let c of e){let d="string"==typeof c.label&&c.label.trim()?c.label.trim():function(a){let b=a.replace(/[_-]+/g," ").trim();return b?b.replace(/\b\w/g,a=>a.toUpperCase()):"Step"}(c.id),e="string"==typeof c.flow?c.flow.trim():"";if(e){h.push({key:c.id,type:"subflow",label:d,description:c.task,flow:e,prompt:c.task,inputMode:"full-history",outputMode:"final-only"});continue}let f="string"==typeof c.model&&c.model.trim()?c.model.trim():"string"==typeof a?.model?a.model.trim():"";h.push({key:c.id,type:"process",label:d,description:c.task,prompt:c.task,...f?{model:f}:{},servers:function(a,b,c){let d=new Map;for(let e of a??[]){let a="string"==typeof e?e.trim():"";if(!a)continue;let f=a.indexOf("/"),g=(f>=0?a.slice(0,f):a).trim(),h=f>=0?a.slice(f+1).trim():"";if(!g){c.push({severity:"warning",code:"simple-tool-invalid",nodeKey:b,message:`Step "${b}": ignored tool reference "${a}"; use server/tool.`});continue}d.has(g)||d.set(g,new Set),h&&d.get(g).add(h)}return[...d].map(([a,b])=>({name:a,...b.size>0?{tools:[...b]}:{}}))}(c.tools,c.id,b),inputMode:"full-history",outputMode:"latest-message"})}h.push({key:g,type:"finish",label:"Finish"});let i=[],j=Array.isArray(a?.routes)?a.routes:[];if(0===j.length){let a=[f,...e.map(a=>a.id),g];for(let b=0;b<a.length-1;b++)i.push({from:a[b],to:a[b+1]})}else{let a=new Set,c=new Set;for(let e of j){let f="string"==typeof e?.from?e.from.trim():"",g="string"==typeof e?.to?e.to.trim():"";if(!d.has(f)||!d.has(g)){b.push({severity:"error",code:"simple-route-unresolved",nodeKey:f||void 0,message:`Simple route "${f}" → "${g}" references an unknown step.`});continue}i.push({from:f,to:g,...e.when?{condition:e.when}:{}}),c.add(f),a.add(g)}for(let b of e)a.has(b.id)||i.push({from:f,to:b.id}),c.has(b.id)||i.push({from:b.id,to:g})}return{spec:{name:"string"==typeof a?.name?a.name.trim():"",description:"string"==typeof a?.goal?a.goal.trim():"",nodes:h,edges:i},issues:b}}(a),g=(0,d.dM)(e.spec,b,{newSubflowDefaults:!0,...c}),h=[...e.issues,...g.issues];return{...g,loweredSpec:e.spec,issues:h,errorCount:h.filter(a=>"error"===a.severity).length,warningCount:h.filter(a=>"warning"===a.severity).length}}},638075:(a,b,c)=>{c.a(a,async(a,d)=>{try{c.d(b,{Nl:()=>p,Pw:()=>s,QE:()=>l,_u:()=>n,aZ:()=>k,qf:()=>o,v5:()=>i.v5,vX:()=>q,xK:()=>m,xV:()=>t,yV:()=>r});var e=c(266844),f=c(110844),g=c(238813),h=c(109901),i=c(905738),j=a([f]);f=(j.then?(await j)():j)[0];let u=(0,e.h)("backend/services/mcp/proxyForward"),v="FLUJO encryption is locked (encryption_locked). Unlock FLUJO to continue.";async function k(a){let b=await f.mcpService.loadServerConfigs();if(!Array.isArray(b))return u.warn("isServerExposed: failed to load server configs",{error:b.error}),!1;let c=b.find(b=>b.name===a);return!!c&&!c.disabled&&!0===c.exposeAsMcpServer}async function l(a,b){if(await (0,g.ln)())throw Error(v);let c=await f.mcpService.connectServer(a);if(!c.success)throw Error(`Failed to connect to MCP server '${a}': ${c.error}`);let d=await f.mcpService.listServerTools(a,"all",b);if(d.error)throw Error(`Failed to list tools for '${a}': ${d.error}`);return{tools:d.tools??[],...void 0===d.nextCursor?{}:{nextCursor:d.nextCursor}}}async function m(a,b,c,d){if(await (0,g.ln)())return{content:[{type:"text",text:v}],isError:!0};let e=await f.mcpService.connectServer(a);if(!e.success)return{content:[{type:"text",text:`Error connecting to '${a}': ${e.error}`}],isError:!0};let i=await f.mcpService.callTool(a,b,c,void 0,d?.onProgress,void 0,d?.signal,"host");if(i.success)return i.data;if(d?.signal?.aborted&&d.signal.throwIfAborted(),i.protocolError)throw new h.Nh(i.protocolError.code,i.error??"Downstream MCP request failed",i.protocolError.data);return{content:[{type:"text",text:`Error: ${i.error??"Unknown error"}`}],isError:!0}}async function n(a,b){if(await (0,g.ln)())throw Error(v);let c=await f.mcpService.connectServer(a);if(!c.success)throw Error(`Failed to connect to MCP server '${a}': ${c.error}`);let d=await f.mcpService.listServerResources(a,b);if(d.error)throw Error(`Failed to list resources for '${a}': ${d.error}`);return{resources:d.resources??[],...void 0===d.nextCursor?{}:{nextCursor:d.nextCursor}}}async function o(a,b){if(await (0,g.ln)())throw Error(v);let c=await f.mcpService.connectServer(a);if(!c.success)throw Error(`Failed to connect to MCP server '${a}': ${c.error}`);let d=await f.mcpService.listServerResourceTemplates(a,b);if(d.error)throw Error(`Failed to list resource templates for '${a}': ${d.error}`);return{resourceTemplates:d.resourceTemplates??[],...void 0===d.nextCursor?{}:{nextCursor:d.nextCursor}}}async function p(a){return await (0,g.ln)()?{}:f.mcpService.getServerProxyCapabilities(a)}async function q(a,b){if(await (0,g.ln)())throw Error(v);let c=await f.mcpService.connectServer(a);if(!c.success)throw Error(`Failed to connect to MCP server '${a}': ${c.error}`);let d=await f.mcpService.listServerSkills(a,b);if("available"!==d.availability||d.error)throw Error(d.error||`MCP Skills are unavailable for downstream server '${a}'.`);let{resultType:e,skills:h,nextCursor:i,ttlMs:j,cacheScope:k}=d;return{resultType:e,skills:h,...void 0===i?{}:{nextCursor:i},...void 0===j?{}:{ttlMs:j},...void 0===k?{}:{cacheScope:k}}}async function r(a,b){if(await (0,g.ln)())throw Error(v);let c=await f.mcpService.connectServer(a);if(!c.success)throw Error(`Failed to connect to MCP server '${a}': ${c.error}`);let d=await f.mcpService.getServerSkill(a,b);if(!d.success||!d.data)throw new h.Nh(h.O4.InvalidParams,`Skill not found: '${b}' on server '${a}': ${d.error??"unknown error"}`);return d.data}async function s(a,b,c){if(await (0,g.ln)())throw Error(v);let d=await f.mcpService.connectServer(a);if(!d.success)throw Error(`Failed to connect to MCP server '${a}': ${d.error}`);let e=await f.mcpService.readServerSkillDirectory(a,b,c);if(!e.success||!e.data)throw new h.Nh(h.O4.InvalidParams,`Skill directory not found: '${b}' on server '${a}': ${e.error??"unknown error"}`);return e.data}async function t(a,b){if(await (0,g.ln)())throw Error(v);let c=await f.mcpService.connectServer(a);if(!c.success)throw Error(`Failed to connect to MCP server '${a}': ${c.error}`);let d=await f.mcpService.readResource(a,b);if(!d.success||!d.data)throw new h.Nh(h.O4.InvalidParams,`Resource not found: '${b}' on server '${a}': ${d.error??"unknown error"}`);return d.data}d()}catch(a){d(a)}})},638522:a=>{a.exports=require("node:zlib")},642848:(a,b,c)=>{c.r(b),c.d(b,{handler:()=>A,patchFetch:()=>z,routeModule:()=>v,serverHooks:()=>y,workAsyncStorage:()=>w,workUnitAsyncStorage:()=>x});var d=c(319225),e=c(684006),f=c(8317),g=c(799373),h=c(434775),i=c(524235),j=c(200261),k=c(754365),l=c(590771),m=c(473461),n=c(767798),o=c(192280),p=c(662018),q=c(445696),r=c(347929),s=c(986439),t=c(710246),u=c(137527);let v=new d.AppRouteRouteModule({definition:{kind:e.RouteKind.APP_ROUTE,page:"/mcp-flows/route",pathname:"/mcp-flows",filename:"route",bundlePath:"app/mcp-flows/route"},distDir:".next",relativeProjectDir:"",resolvedPagePath:"/home/runner/work/FLUJO/FLUJO/src/app/mcp-flows/route.ts",nextConfigOutput:"",userland:()=>c(961643),...{}}),{workAsyncStorage:w,workUnitAsyncStorage:x,serverHooks:y}=v;function z(){return(0,f.patchFetch)({workAsyncStorage:w,workUnitAsyncStorage:x})}async function A(a,b,c){c.requestMeta&&(0,g.setRequestMeta)(a,c.requestMeta),v.isDev&&(0,g.addRequestMeta)(a,"devRequestTimingInternalsEnd",process.hrtime.bigint());let d="/mcp-flows/route";"/index"===d&&(d="/");let f=await v.prepare(a,b,{srcPage:d,multiZoneDraftMode:!1});if(!f)return b.statusCode=400,b.end("Bad Request"),null==c.waitUntil||c.waitUntil.call(c,Promise.resolve()),null;let{buildId:w,deploymentId:x,params:y,nextConfig:z,parsedUrl:A,isDraftMode:B,prerenderManifest:C,routerServerContext:D,isOnDemandRevalidate:E,revalidateOnlyGenerated:F,resolvedPathname:G,clientReferenceManifest:H,serverActionsManifest:I,previewProps:J}=f,K=(0,j.normalizeAppPath)(d),L=!!C.routes[G]&&(v.isDev||(0,t.isRouteCacheOwner)(G,v.cacheOwner,C.routes[G])),M=!!(C.dynamicRoutes[K]||L),N=async()=>((null==D?void 0:D.render404)?await D.render404(a,b,A,!1):b.end("This page could not be found"),null);if(M&&!B){let a=C.dynamicRoutes[K];if(a&&!1===a.fallback&&!L){if(z.adapterPath)return await N();throw new s.NoFallbackError}}let O=null;!M||v.isDev||B||(O="/index"===(O=G)?"/":O),I&&H&&(0,i.setManifestsSingleton)({page:d,clientReferenceManifest:H,serverActionsManifest:I});let P=a.method||"GET",Q=(0,h.getTracer)(),R=Q.getActiveScopeSpan(),S=!!(null==D?void 0:D.isWrappedByNextServer),T=!!(0,g.getRequestMeta)(a,"minimalMode"),U=(0,g.getRequestMeta)(a,"incrementalCache")||await v.getIncrementalCache(a,z,J,C,T);null==U||U.resetRequestCache(),globalThis.__incrementalCache=U;let V={params:y,previewProps:J,renderOpts:{experimental:{authInterrupts:!!z.experimental.authInterrupts,useCacheTimeout:z.experimental.useCacheTimeout,durableUseCacheEntries:!!z.experimental.durableUseCacheEntries},cacheComponents:!!z.cacheComponents,validationLevel:z.experimental.instantInsights.validationLevel,isDraftMode:B,incrementalCache:U,hmrRefreshHash:(0,g.getRequestMeta)(a,"hmrRefreshHash"),cacheLifeProfiles:z.cacheLife,staticPageGenerationTimeout:z.staticPageGenerationTimeout,waitUntil:c.waitUntil,onClose:a=>{b.on("close",a)},onAfterTaskError:void 0},sharedContext:{buildId:w,deploymentId:x}},W=new k.NodeNextRequest(a),X=new k.NodeNextResponse(b),Y=l.NextRequestAdapter.fromNodeNextRequest(W,(0,l.signalFromNodeResponse)(b)),Z=async({previousCacheEntry:e})=>{try{if(!T&&E&&F&&!e)return b.statusCode=404,b.setHeader("x-nextjs-cache","REVALIDATED"),b.end("This page could not be found"),null;let d=null===O?await v.handle(Y,V):await v.prerender(Y,V);a.fetchMetrics=V.renderOpts.fetchMetrics;let f=V.renderOpts.pendingWaitUntil;f&&c.waitUntil&&(c.waitUntil(f),f=void 0);let g=V.renderOpts.collectedTags;if(!M)return await (0,o.I)(W,X,d,f),null;{let a=await d.blob(),b=(0,p.toNodeOutgoingHttpHeaders)(d.headers);g&&(b[r.NEXT_CACHE_TAGS_HEADER]=g),!b["content-type"]&&a.type&&(b["content-type"]=a.type);let c=void 0!==V.renderOpts.collectedRevalidate&&!(V.renderOpts.collectedRevalidate>=r.INFINITE_CACHE)&&V.renderOpts.collectedRevalidate,e=void 0===V.renderOpts.collectedExpire||V.renderOpts.collectedExpire>=r.INFINITE_CACHE?!1!==c&&c>0?z.expireTime:void 0:V.renderOpts.collectedExpire;return{value:{kind:u.CachedRouteKind.APP_ROUTE,status:d.status,body:Buffer.from(await a.arrayBuffer()),headers:b},cacheControl:{revalidate:c,expire:e}}}}catch(b){throw(null==e?void 0:e.isStale)&&await v.onRequestError(a,b,{routerKind:"App Router",routePath:d,routeType:"route",revalidateReason:(0,n.getRevalidateReason)({isStaticGeneration:null!==O,isOnDemandRevalidate:E})},!1,D),b}},$=async(d,f)=>{try{var g,i;let d=await v.handleResponse({req:a,nextConfig:z,cacheKey:O,routeKind:e.RouteKind.APP_ROUTE,isFallback:!1,previewProps:J,prerenderManifest:C,isRoutePPREnabled:!1,isOnDemandRevalidate:E,revalidateOnlyGenerated:F,responseGenerator:Z,waitUntil:c.waitUntil,isMinimalMode:T});if(null!==d&&"error"in d)throw d.error;if(!M)return;if((null==d||null==(g=d.value)?void 0:g.kind)!==u.CachedRouteKind.APP_ROUTE)throw Error(`Invariant: app-route received invalid cache entry ${null==d||null==(i=d.value)?void 0:i.kind}`);T||b.setHeader("x-nextjs-cache",E?"REVALIDATED":d.isMiss?"MISS":d.isStale?"STALE":"HIT"),B&&b.setHeader("Cache-Control","private, no-cache, no-store, max-age=0, must-revalidate");let f=(0,p.fromNodeOutgoingHttpHeaders)(d.value.headers);T&&M||f.delete(r.NEXT_CACHE_TAGS_HEADER),!d.cacheControl||b.getHeader("Cache-Control")||f.get("Cache-Control")||f.set("Cache-Control",(0,q.getCacheControlHeader)(d.cacheControl)),await (0,o.I)(W,X,new Response(d.value.body,{headers:f,status:d.value.status||200}));return}catch(c){if(c instanceof s.NoFallbackError||await v.onRequestError(a,c,{routerKind:"App Router",routePath:K,routeType:"route",revalidateReason:(0,n.getRevalidateReason)({isStaticGeneration:null!==O,isOnDemandRevalidate:E})},!1,D),M)throw c;if(b.headersSent){if(d){let a=c instanceof Error?c:Error("Unknown app route error");d.recordException(a),d.setStatus({code:h.SpanStatusCode.ERROR,message:a.message}),d.setAttribute("error.type",a.name)}b.writableEnded||b.destroyed||b.end()}else await (0,o.I)(W,X,new Response(null,{status:500}));return}finally{(()=>{if(!d)return;let a=b.statusCode;d.setAttributes({"http.status_code":a,"next.rsc":!1}),a&&a>=500&&(d.setStatus({code:h.SpanStatusCode.ERROR}),d.setAttribute("error.type",a.toString()));let c=Q.getRootSpanAttributes();if(!c)return;if(c.get("next.span_type")!==m.BaseServerSpan.handleRequest)return console.warn(`Unexpected root span type '${c.get("next.span_type")}'. Please report this Next.js issue https://github.com/vercel/next.js`);let e=c.get("next.route")||K,g=`${P} ${e}`;d.setAttributes({"next.route":e,"http.route":e,"next.span_name":g}),d.updateName(g),f&&f!==d&&(f.setAttribute("http.route",e),f.updateName(g))})()}};if(S&&R)await $(R,void 0);else{let b=Q.getActiveScopeSpan();await Q.withPropagatedContext(a.headers,()=>Q.trace(m.BaseServerSpan.handleRequest,{spanName:`${P} ${d}`,kind:h.SpanKind.SERVER,attributes:{"http.method":P,"http.target":a.url}},a=>$(a,b)),void 0,!S)}}},663033:a=>{a.exports=require("next/dist/server/app-render/work-unit-async-storage.external.js")},673429:a=>{a.exports=require("node:util/types")},673496:a=>{a.exports=require("http2")},710846:a=>{a.exports=require("next/dist/compiled/next-server/app-page.runtime.prod.js")},719771:a=>{a.exports=require("process")},731421:a=>{a.exports=require("node:child_process")},744870:a=>{a.exports=require("next/dist/compiled/next-server/app-route.runtime.prod.js")},775919:a=>{a.exports=require("node:worker_threads")},777030:a=>{a.exports=require("node:net")},781630:a=>{a.exports=require("http")},817492:(a,b,c)=>{c.d(b,{Hm:()=>f,xc:()=>e});let d=["key","secret","token","password"],e=a=>d.some(b=>a.toLowerCase().includes(b)),f=a=>e(a)||"authorization"===a.trim().toLowerCase()},840610:a=>{a.exports=require("node:dns")},842482:a=>{a.exports=import("sharp")},848161:a=>{a.exports=require("node:os")},863381:(a,b,c)=>{c.a(a,async(a,d)=>{try{c.d(b,{V:()=>m});var e=c(619335),f=c(266844),g=c(351161),h=c(92967),i=c(637204),j=c(961346),k=c(942901),l=a([k]);k=(l.then?(await l)():l)[0];let n=(0,f.h)("backend/services/flow/compileFlow");async function m(a,b={}){if(!a||"object"!=typeof a||Array.isArray(a))return{success:!1,error:"The spec must be a JSON object (a FlowSpec)",statusCode:400};let c=await (0,k.jY)(),d=c.compile;if(b.updateFlowId){let a=d.flows??[];if(!a.some(a=>a.id===b.updateFlowId))return{success:!1,error:`No flow with id "${b.updateFlowId}" to update`,statusCode:404};d={...d,flows:a.filter(a=>a.id!==b.updateFlowId)}}let f="simple"===b.profile?(0,i.lJ)(a,d,{keepPills:b.keepPills,newSubflowDefaults:!b.updateFlowId}):(0,h.dM)(a,d,{keepPills:b.keepPills,newSubflowDefaults:!b.updateFlowId});if(!f.flow)return{success:!1,error:"The spec could not be compiled into a flow",statusCode:422,issues:f.issues.map(a=>({severity:a.severity,code:a.code,message:a.message}))};b.updateFlowId&&(f.flow.id=b.updateFlowId);let l=f.flows.flatMap(a=>(0,j.nC)(a,{models:c.compile.models,servers:c.validatorServers,serverTools:c.compile.serverTools}).issues),o=(0,k.RB)(f.issues,{issues:l,errorCount:0,warningCount:0,isRunnable:!0}),p=!1;if(b.save&&0===o.errorCount){for(let a of f.flows)await (0,e.QO)(),await g.flowService.saveFlow(a);p=!0,n.info(`Compiled and saved ${f.flows.length} flow(s); root "${f.flow.name}" (${f.flow.id})`)}else b.save&&n.info(`Compiled flow "${f.flow.name}" has ${o.errorCount} error(s); NOT saved`);return{success:!0,flow:f.flow,flows:f.flows,validation:o,saved:p}}d()}catch(a){d(a)}})},882980:(a,b,c)=>{c.d(b,{H6:()=>h,Mt:()=>e,SL:()=>g,UQ:()=>f,ZW:()=>d});let d="MCP_TRANSPORT_INVALID";function e(a){return"stdio"===a||"streamable"===a||"sse"===a||"websocket"===a}class f extends Error{constructor(){super(d),this.name="McpTransportError"}}function g(a){if(!e(a.transport))throw new f}function h(a){if(void 0===a)return"stdio";if(!e(a))throw new f;return a}},903295:a=>{a.exports=require("next/dist/server/app-render/after-task-async-storage.external.js")},912412:a=>{a.exports=require("assert")},927910:a=>{a.exports=require("stream")},932467:a=>{a.exports=require("node:http2")},937067:a=>{a.exports=require("node:http")},942901:(a,b,c)=>{c.a(a,async(a,d)=>{try{c.d(b,{RB:()=>l,bD:()=>n,jY:()=>k,xv:()=>j});var e=c(266844),f=c(818025),g=c(110844),h=c(351161),i=a([f,g]);[f,g]=i.then?(await i)():i;let m=(0,e.h)("backend/services/flow/generationContext"),n=300;function j(a,b){let c=String(a).replace(/\s+/g," ").trim();return c.length<=b?c:`${c.slice(0,b).trimEnd()}…`}async function k(){let a=await f.modelService.loadModels(),b=a.map(a=>({id:a.id,name:a.name,...a.displayName?{displayName:a.displayName}:{},...a.description?{description:j(a.description,100)}:{}})),c=[],d={};try{let a=await g.mcpService.loadServerConfigs();if(Array.isArray(a))for(let b of a){if(b.disabled)continue;let a=!1;try{let c=await g.mcpService.getServerStatus(b.name);a=c?.status==="connected"}catch(a){m.debug(`getServerStatus failed for ${b.name}; listing name only`,a)}if(!a){c.push({name:b.name,connected:!1});continue}let{tools:e}=await g.mcpService.listServerTools(b.name),f=(e??[]).filter(a=>a.name).map(a=>({name:a.name,...a.description?{description:j(a.description,100)}:{}}));d[b.name]=f.map(a=>a.name),c.push({name:b.name,connected:!0,tools:f})}}catch(a){m.warn("Could not load MCP servers for the authoring context",a)}let e=[];try{e=await h.flowService.loadFlows()}catch(a){m.warn("Could not load flows for the authoring context",a)}let i={models:b,servers:c,flows:e.map(a=>({id:a.id,name:a.name,...a.description?{description:j(a.description,n)}:{},nodeCount:a.nodes?.length??0}))};return{blocks:i,compile:{models:a.map(a=>({id:a.id,name:a.name,displayName:a.displayName})),servers:c.map(a=>({name:a.name})),serverTools:d,flows:e.map(a=>({id:a.id,name:a.name}))},catalog:function(a){let b=[];for(let c of(b.push("AVAILABLE MODELS (reference by id or name):"),0===a.models.length&&b.push(" (none configured)"),a.models)){let a=c.displayName&&c.displayName!==c.name?`"${c.displayName}" (${c.name})`:c.name,d=c.description?` — ${c.description}`:"";b.push(` - id: ${c.id} — ${a}${d}`)}for(let c of(b.push("",'AVAILABLE MCP SERVERS (attach to process nodes via "servers"):'),0===a.servers.length&&b.push(" (none configured)"),a.servers)){if(!c.connected){b.push(` - ${c.name} (offline — tools unknown; may still be used)`);continue}b.push(` - ${c.name}:`);let a=(c.tools??[]).slice(0,20);for(let c of a){let a=c.description?` — ${c.description}`:"";b.push(` - ${c.name}${a}`)}let d=(c.tools?.length??0)-a.length;d>0&&b.push(` - …and ${d} more`)}for(let c of(b.push("",'EXISTING FLOWS (usable as subflow targets via "flow"):'),0===a.flows.length&&b.push(" (none)"),a.flows.slice(0,15))){let a=c.description?` — ${c.description}`:` — ${c.nodeCount} nodes`;b.push(` - "${c.name}"${a}`)}return a.flows.length>15&&b.push(` - …and ${a.flows.length-15} more`),b.join("\n")}(i),validatorServers:c.map(a=>({name:a.name,status:a.connected?"connected":"disconnected"}))}}function l(a,b){let c=[...a.map(a=>({severity:a.severity,code:a.code,message:a.message})),...b.issues],d=c.filter(a=>"error"===a.severity).length;return{issues:c,errorCount:d,warningCount:c.length-d,isRunnable:0===d}}d()}catch(a){d(a)}})},961643:(a,b,c)=>{c.a(a,async(a,d)=>{try{c.r(b),c.d(b,{DELETE:()=>A,GET:()=>y,POST:()=>z,runtime:()=>w});var e=c(726179),f=c(787243),g=c(25870),h=c(109901),i=c(638075),j=c(47631),k=c(238899),l=c(3010),m=c(266844),n=c(2398),o=c(363140),p=a([e,i,j,l,o]);[e,i,j,l,o]=p.then?(await p)():p;let w="nodejs",x=(0,m.h)("app/mcp-flows/route");function q(a,b){return new Response(JSON.stringify({error:b}),{status:a,headers:{"content-type":"application/json"}})}async function r(a){let b=a.headers.get("content-length");if(b&&Number(b)>262144)return!1;if(!a.body)return!0;let c=a.clone().body.getReader(),d=0;try{for(;;){a.signal.throwIfAborted();let b=await c.read();if(b.done)return!0;if((d+=b.value.byteLength)>262144)return c.cancel().catch(()=>void 0),a.body.cancel().catch(()=>void 0),!1}}finally{c.releaseLock()}}async function s(a){let b;if(!(0,i.v5)(a.headers.get("host"),a.headers.get("origin")))return x.warn("Rejected non-local request",{host:a.headers.get("host")}),q(403,"Forbidden: this endpoint only accepts local requests.");if((0,n.v1)()||await (0,e.q1)()){if(!await r(a))return q(413,"MCP request body exceeds the limit.");if(!await (0,o.u)(a))return(0,o.q)(a)}let c=((b=new g.g({name:"flujo-flows",version:"3.48.2"},{capabilities:{tools:{}}})).setRequestHandler(h.gW,async()=>{let a=(0,l.cI)(),{tools:b}=await (0,j.T)();return{tools:[...a,...b.filter(a=>!(0,l.yM)(a.name)||(x.warn(`Flow tool '${a.name}' collides with a reserved authoring tool name; shadowed`,{}),!1))]}}),b.setRequestHandler(h.FT,a=>{let b=a.params.arguments??{};return(0,l.yM)(a.params.name)?(0,l.oV)(a.params.name,b):(0,j.o)(a.params.name,b)}),b);try{return await (0,k.w)(c,a)}catch(a){return x.error("Flows MCP request failed",{error:a}),q(500,"Internal MCP server error.")}}async function t(a){return s(a)}async function u(a){return s(a)}async function v(a){return s(a)}let y=(0,f.pZ)(u),z=(0,f.pZ)(t),A=(0,f.pZ)(v);d()}catch(a){d(a)}})},973024:a=>{a.exports=require("node:fs")},977598:a=>{a.exports=require("node:crypto")},979428:a=>{a.exports=require("buffer")},986439:a=>{a.exports=require("next/dist/shared/lib/no-fallback-error.external")}};var b=require("../../webpack-runtime.js");b.C(a);var c=b.X(0,[92970,45592,51944,7397,76364,53806,64165,45775,76161,18477,71244,45481,84314,74107,83829,75650,87243,19913,25399,51161,21453,79365,8464,62377,65326,42248,86661,36362,7937,92967,9961,59678,21821,94063,87513,3010],()=>b(b.s=642848));module.exports=c})();