madarx 2.16.1 → 2.16.3

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 (327) hide show
  1. package/.next/standalone/.next/BUILD_ID +1 -1
  2. package/.next/standalone/.next/app-build-manifest.json +339 -339
  3. package/.next/standalone/.next/app-path-routes-manifest.json +83 -83
  4. package/.next/standalone/.next/build-manifest.json +2 -2
  5. package/.next/standalone/.next/prerender-manifest.json +3 -3
  6. package/.next/standalone/.next/server/app/_not-found/page_client-reference-manifest.js +1 -1
  7. package/.next/standalone/.next/server/app/_not-found.html +1 -1
  8. package/.next/standalone/.next/server/app/_not-found.rsc +2 -2
  9. package/.next/standalone/.next/server/app/activity/page_client-reference-manifest.js +1 -1
  10. package/.next/standalone/.next/server/app/admin/page.js +3 -3
  11. package/.next/standalone/.next/server/app/admin/page_client-reference-manifest.js +1 -1
  12. package/.next/standalone/.next/server/app/agents/[id]/page.js +3 -3
  13. package/.next/standalone/.next/server/app/agents/[id]/page_client-reference-manifest.js +1 -1
  14. package/.next/standalone/.next/server/app/agents/page.js +1 -1
  15. package/.next/standalone/.next/server/app/agents/page_client-reference-manifest.js +1 -1
  16. package/.next/standalone/.next/server/app/api/activity/route_client-reference-manifest.js +1 -1
  17. package/.next/standalone/.next/server/app/api/admin/audit-export/route_client-reference-manifest.js +1 -1
  18. package/.next/standalone/.next/server/app/api/admin/share-links/route_client-reference-manifest.js +1 -1
  19. package/.next/standalone/.next/server/app/api/agent-memory/route_client-reference-manifest.js +1 -1
  20. package/.next/standalone/.next/server/app/api/agent-runs/[id]/cancel/route_client-reference-manifest.js +1 -1
  21. package/.next/standalone/.next/server/app/api/agent-runs/[id]/events/route_client-reference-manifest.js +1 -1
  22. package/.next/standalone/.next/server/app/api/agent-runs/[id]/log/route_client-reference-manifest.js +1 -1
  23. package/.next/standalone/.next/server/app/api/agent-runs/[id]/route_client-reference-manifest.js +1 -1
  24. package/.next/standalone/.next/server/app/api/agent-runs/route_client-reference-manifest.js +1 -1
  25. package/.next/standalone/.next/server/app/api/agents/[id]/chain/route_client-reference-manifest.js +1 -1
  26. package/.next/standalone/.next/server/app/api/agents/[id]/memory/route_client-reference-manifest.js +1 -1
  27. package/.next/standalone/.next/server/app/api/agents/[id]/reports/route_client-reference-manifest.js +1 -1
  28. package/.next/standalone/.next/server/app/api/agents/[id]/run/route_client-reference-manifest.js +1 -1
  29. package/.next/standalone/.next/server/app/api/agents/[id]/skills/route_client-reference-manifest.js +1 -1
  30. package/.next/standalone/.next/server/app/api/agents/create/route_client-reference-manifest.js +1 -1
  31. package/.next/standalone/.next/server/app/api/agents/ops/route_client-reference-manifest.js +1 -1
  32. package/.next/standalone/.next/server/app/api/approvals/[id]/route_client-reference-manifest.js +1 -1
  33. package/.next/standalone/.next/server/app/api/approvals/route_client-reference-manifest.js +1 -1
  34. package/.next/standalone/.next/server/app/api/artifacts/[id]/acl/route_client-reference-manifest.js +1 -1
  35. package/.next/standalone/.next/server/app/api/artifacts/[id]/protect/route_client-reference-manifest.js +1 -1
  36. package/.next/standalone/.next/server/app/api/artifacts/[id]/raw/route_client-reference-manifest.js +1 -1
  37. package/.next/standalone/.next/server/app/api/artifacts/[id]/route_client-reference-manifest.js +1 -1
  38. package/.next/standalone/.next/server/app/api/artifacts/[id]/share-link/[linkId]/route_client-reference-manifest.js +1 -1
  39. package/.next/standalone/.next/server/app/api/artifacts/[id]/share-link/route_client-reference-manifest.js +1 -1
  40. package/.next/standalone/.next/server/app/api/artifacts/upload/route_client-reference-manifest.js +1 -1
  41. package/.next/standalone/.next/server/app/api/audit/list/route_client-reference-manifest.js +1 -1
  42. package/.next/standalone/.next/server/app/api/audit/search/route_client-reference-manifest.js +1 -1
  43. package/.next/standalone/.next/server/app/api/auth/callback/route_client-reference-manifest.js +1 -1
  44. package/.next/standalone/.next/server/app/api/auth/config/route_client-reference-manifest.js +1 -1
  45. package/.next/standalone/.next/server/app/api/auth/join-bootstrap/route_client-reference-manifest.js +1 -1
  46. package/.next/standalone/.next/server/app/api/auth/session/route_client-reference-manifest.js +1 -1
  47. package/.next/standalone/.next/server/app/api/brand/route_client-reference-manifest.js +1 -1
  48. package/.next/standalone/.next/server/app/api/brand/share/route_client-reference-manifest.js +1 -1
  49. package/.next/standalone/.next/server/app/api/chat/sessions/[id]/route_client-reference-manifest.js +1 -1
  50. package/.next/standalone/.next/server/app/api/chat/sessions/route_client-reference-manifest.js +1 -1
  51. package/.next/standalone/.next/server/app/api/config/env/route_client-reference-manifest.js +1 -1
  52. package/.next/standalone/.next/server/app/api/config/route_client-reference-manifest.js +1 -1
  53. package/.next/standalone/.next/server/app/api/connections/[service]/route_client-reference-manifest.js +1 -1
  54. package/.next/standalone/.next/server/app/api/connections/[service]/verify/route_client-reference-manifest.js +1 -1
  55. package/.next/standalone/.next/server/app/api/connections/route_client-reference-manifest.js +1 -1
  56. package/.next/standalone/.next/server/app/api/cron/tick/route_client-reference-manifest.js +1 -1
  57. package/.next/standalone/.next/server/app/api/dashboard/spaces/[id]/move/route_client-reference-manifest.js +1 -1
  58. package/.next/standalone/.next/server/app/api/dashboard/spaces/[id]/route_client-reference-manifest.js +1 -1
  59. package/.next/standalone/.next/server/app/api/dashboard/spaces/[id]/share-link/[linkId]/route_client-reference-manifest.js +1 -1
  60. package/.next/standalone/.next/server/app/api/dashboard/spaces/[id]/share-link/route_client-reference-manifest.js +1 -1
  61. package/.next/standalone/.next/server/app/api/dashboard/spaces/import/route_client-reference-manifest.js +1 -1
  62. package/.next/standalone/.next/server/app/api/dashboard/spaces/route_client-reference-manifest.js +1 -1
  63. package/.next/standalone/.next/server/app/api/disk/files/[id]/blob/route_client-reference-manifest.js +1 -1
  64. package/.next/standalone/.next/server/app/api/disk/files/[id]/route_client-reference-manifest.js +1 -1
  65. package/.next/standalone/.next/server/app/api/disk/files/[id]/transcribe/route_client-reference-manifest.js +1 -1
  66. package/.next/standalone/.next/server/app/api/disk/files/route_client-reference-manifest.js +1 -1
  67. package/.next/standalone/.next/server/app/api/disk/folders/route_client-reference-manifest.js +1 -1
  68. package/.next/standalone/.next/server/app/api/events/since/[cursor]/route_client-reference-manifest.js +1 -1
  69. package/.next/standalone/.next/server/app/api/events/stream/route_client-reference-manifest.js +1 -1
  70. package/.next/standalone/.next/server/app/api/fs/create-folder/route_client-reference-manifest.js +1 -1
  71. package/.next/standalone/.next/server/app/api/fs/pick-folder/route_client-reference-manifest.js +1 -1
  72. package/.next/standalone/.next/server/app/api/hail/engagements/[id]/blueprint/route_client-reference-manifest.js +1 -1
  73. package/.next/standalone/.next/server/app/api/hail/engagements/[id]/diagnostic/route_client-reference-manifest.js +1 -1
  74. package/.next/standalone/.next/server/app/api/hail/engagements/[id]/governance/route_client-reference-manifest.js +1 -1
  75. package/.next/standalone/.next/server/app/api/hail/engagements/[id]/interview/route_client-reference-manifest.js +1 -1
  76. package/.next/standalone/.next/server/app/api/hail/engagements/[id]/pilot/route_client-reference-manifest.js +1 -1
  77. package/.next/standalone/.next/server/app/api/hail/engagements/[id]/quarterly/route_client-reference-manifest.js +1 -1
  78. package/.next/standalone/.next/server/app/api/hail/engagements/[id]/route_client-reference-manifest.js +1 -1
  79. package/.next/standalone/.next/server/app/api/hail/engagements/[id]/setup-package/route_client-reference-manifest.js +1 -1
  80. package/.next/standalone/.next/server/app/api/hail/engagements/route_client-reference-manifest.js +1 -1
  81. package/.next/standalone/.next/server/app/api/hail/interviews/[id]/responses/route_client-reference-manifest.js +1 -1
  82. package/.next/standalone/.next/server/app/api/hail/interviews/[id]/route_client-reference-manifest.js +1 -1
  83. package/.next/standalone/.next/server/app/api/hail/setup-packages/[id]/apply/route_client-reference-manifest.js +1 -1
  84. package/.next/standalone/.next/server/app/api/hail/setup-packages/validate/route_client-reference-manifest.js +1 -1
  85. package/.next/standalone/.next/server/app/api/heartbeat/tick/route_client-reference-manifest.js +1 -1
  86. package/.next/standalone/.next/server/app/api/heartbeat/worker/route_client-reference-manifest.js +1 -1
  87. package/.next/standalone/.next/server/app/api/help/route_client-reference-manifest.js +1 -1
  88. package/.next/standalone/.next/server/app/api/hermes/jobs/[id]/events/route_client-reference-manifest.js +1 -1
  89. package/.next/standalone/.next/server/app/api/hermes/jobs/[id]/route_client-reference-manifest.js +1 -1
  90. package/.next/standalone/.next/server/app/api/hermes/jobs/route_client-reference-manifest.js +1 -1
  91. package/.next/standalone/.next/server/app/api/integrations/google/callback/route_client-reference-manifest.js +1 -1
  92. package/.next/standalone/.next/server/app/api/integrations/google/oauth/route_client-reference-manifest.js +1 -1
  93. package/.next/standalone/.next/server/app/api/marketplace/[id]/route_client-reference-manifest.js +1 -1
  94. package/.next/standalone/.next/server/app/api/marketplace/open-design/route_client-reference-manifest.js +1 -1
  95. package/.next/standalone/.next/server/app/api/marketplace/route_client-reference-manifest.js +1 -1
  96. package/.next/standalone/.next/server/app/api/mines/import-roots/route_client-reference-manifest.js +1 -1
  97. package/.next/standalone/.next/server/app/api/mines/portfolio/route_client-reference-manifest.js +1 -1
  98. package/.next/standalone/.next/server/app/api/mines/projects/[id]/chunks/route_client-reference-manifest.js +1 -1
  99. package/.next/standalone/.next/server/app/api/mines/projects/[id]/diligence/route_client-reference-manifest.js +1 -1
  100. package/.next/standalone/.next/server/app/api/mines/projects/[id]/import/route_client-reference-manifest.js +1 -1
  101. package/.next/standalone/.next/server/app/api/mines/projects/[id]/publish/route_client-reference-manifest.js +1 -1
  102. package/.next/standalone/.next/server/app/api/mines/projects/route_client-reference-manifest.js +1 -1
  103. package/.next/standalone/.next/server/app/api/missions/route_client-reference-manifest.js +1 -1
  104. package/.next/standalone/.next/server/app/api/models/route_client-reference-manifest.js +1 -1
  105. package/.next/standalone/.next/server/app/api/onboarding/blueprint/route_client-reference-manifest.js +1 -1
  106. package/.next/standalone/.next/server/app/api/onboarding/launch/route_client-reference-manifest.js +1 -1
  107. package/.next/standalone/.next/server/app/api/orchestrator/command/route_client-reference-manifest.js +1 -1
  108. package/.next/standalone/.next/server/app/api/orchestrator/stream/route_client-reference-manifest.js +1 -1
  109. package/.next/standalone/.next/server/app/api/orchestrator/upload/route_client-reference-manifest.js +1 -1
  110. package/.next/standalone/.next/server/app/api/org/route_client-reference-manifest.js +1 -1
  111. package/.next/standalone/.next/server/app/api/orgs/[id]/invites/[inviteId]/route_client-reference-manifest.js +1 -1
  112. package/.next/standalone/.next/server/app/api/orgs/[id]/invites/route_client-reference-manifest.js +1 -1
  113. package/.next/standalone/.next/server/app/api/orgs/[id]/members/[userId]/role/route_client-reference-manifest.js +1 -1
  114. package/.next/standalone/.next/server/app/api/orgs/[id]/members/[userId]/route_client-reference-manifest.js +1 -1
  115. package/.next/standalone/.next/server/app/api/orgs/[id]/members/route_client-reference-manifest.js +1 -1
  116. package/.next/standalone/.next/server/app/api/orgs/[id]/route_client-reference-manifest.js +1 -1
  117. package/.next/standalone/.next/server/app/api/orgs/invites/pending/route_client-reference-manifest.js +1 -1
  118. package/.next/standalone/.next/server/app/api/orgs/join/route_client-reference-manifest.js +1 -1
  119. package/.next/standalone/.next/server/app/api/orgs/join-complete/route_client-reference-manifest.js +1 -1
  120. package/.next/standalone/.next/server/app/api/orgs/route_client-reference-manifest.js +1 -1
  121. package/.next/standalone/.next/server/app/api/printing-press/clis/route_client-reference-manifest.js +1 -1
  122. package/.next/standalone/.next/server/app/api/printing-press/install/route_client-reference-manifest.js +1 -1
  123. package/.next/standalone/.next/server/app/api/printing-press/security-mode/route_client-reference-manifest.js +1 -1
  124. package/.next/standalone/.next/server/app/api/privacy/config/route_client-reference-manifest.js +1 -1
  125. package/.next/standalone/.next/server/app/api/privacy/verify/route_client-reference-manifest.js +1 -1
  126. package/.next/standalone/.next/server/app/api/processes/[id]/route_client-reference-manifest.js +1 -1
  127. package/.next/standalone/.next/server/app/api/processes/[id]/share-link/route_client-reference-manifest.js +1 -1
  128. package/.next/standalone/.next/server/app/api/processes/[id]/stages/[stageId]/override/route_client-reference-manifest.js +1 -1
  129. package/.next/standalone/.next/server/app/api/processes/[id]/stages/[stageId]/retry/route_client-reference-manifest.js +1 -1
  130. package/.next/standalone/.next/server/app/api/processes/[id]/stages/[stageId]/submit/route_client-reference-manifest.js +1 -1
  131. package/.next/standalone/.next/server/app/api/processes/definitions/[slug]/route_client-reference-manifest.js +1 -1
  132. package/.next/standalone/.next/server/app/api/processes/definitions/[slug]/settings/route_client-reference-manifest.js +1 -1
  133. package/.next/standalone/.next/server/app/api/processes/definitions/route_client-reference-manifest.js +1 -1
  134. package/.next/standalone/.next/server/app/api/processes/definitions/validate/route_client-reference-manifest.js +1 -1
  135. package/.next/standalone/.next/server/app/api/processes/route_client-reference-manifest.js +1 -1
  136. package/.next/standalone/.next/server/app/api/processes/start-and-route/route_client-reference-manifest.js +1 -1
  137. package/.next/standalone/.next/server/app/api/projects/[slug]/library/route_client-reference-manifest.js +1 -1
  138. package/.next/standalone/.next/server/app/api/projects/[slug]/route_client-reference-manifest.js +1 -1
  139. package/.next/standalone/.next/server/app/api/projects/route_client-reference-manifest.js +1 -1
  140. package/.next/standalone/.next/server/app/api/runs/approve-claude-run/route_client-reference-manifest.js +1 -1
  141. package/.next/standalone/.next/server/app/api/runs/claude-code-dry-run/route_client-reference-manifest.js +1 -1
  142. package/.next/standalone/.next/server/app/api/runs/competitor-report/route_client-reference-manifest.js +1 -1
  143. package/.next/standalone/.next/server/app/api/runs/engine-ping/route_client-reference-manifest.js +1 -1
  144. package/.next/standalone/.next/server/app/api/runs/marketing-plan/route_client-reference-manifest.js +1 -1
  145. package/.next/standalone/.next/server/app/api/schedules/upsert/route_client-reference-manifest.js +1 -1
  146. package/.next/standalone/.next/server/app/api/secrets/[name]/route_client-reference-manifest.js +1 -1
  147. package/.next/standalone/.next/server/app/api/secrets/route_client-reference-manifest.js +1 -1
  148. package/.next/standalone/.next/server/app/api/settings/trust-mode/route_client-reference-manifest.js +1 -1
  149. package/.next/standalone/.next/server/app/api/share/[token]/otp/route_client-reference-manifest.js +1 -1
  150. package/.next/standalone/.next/server/app/api/share/[token]/route_client-reference-manifest.js +1 -1
  151. package/.next/standalone/.next/server/app/api/share/[token]/verify/route_client-reference-manifest.js +1 -1
  152. package/.next/standalone/.next/server/app/api/share/space/[token]/otp/route_client-reference-manifest.js +1 -1
  153. package/.next/standalone/.next/server/app/api/share/space/[token]/route_client-reference-manifest.js +1 -1
  154. package/.next/standalone/.next/server/app/api/share/space/[token]/verify/route_client-reference-manifest.js +1 -1
  155. package/.next/standalone/.next/server/app/api/shared/spaces/[id]/acl/route_client-reference-manifest.js +1 -1
  156. package/.next/standalone/.next/server/app/api/shared/spaces/publish/route_client-reference-manifest.js +1 -1
  157. package/.next/standalone/.next/server/app/api/shared/spaces/route_client-reference-manifest.js +1 -1
  158. package/.next/standalone/.next/server/app/api/shared/spaces/status/route_client-reference-manifest.js +1 -1
  159. package/.next/standalone/.next/server/app/api/shared/spaces/unpublish/route_client-reference-manifest.js +1 -1
  160. package/.next/standalone/.next/server/app/api/state/route_client-reference-manifest.js +1 -1
  161. package/.next/standalone/.next/server/app/api/system/update/route_client-reference-manifest.js +1 -1
  162. package/.next/standalone/.next/server/app/api/tasks/[id]/active-run/route_client-reference-manifest.js +1 -1
  163. package/.next/standalone/.next/server/app/api/tasks/[id]/attachments/route_client-reference-manifest.js +1 -1
  164. package/.next/standalone/.next/server/app/api/tasks/[id]/checklist/[itemId]/route_client-reference-manifest.js +1 -1
  165. package/.next/standalone/.next/server/app/api/tasks/[id]/checklist/route_client-reference-manifest.js +1 -1
  166. package/.next/standalone/.next/server/app/api/tasks/[id]/checkout/route_client-reference-manifest.js +1 -1
  167. package/.next/standalone/.next/server/app/api/tasks/[id]/children/route_client-reference-manifest.js +1 -1
  168. package/.next/standalone/.next/server/app/api/tasks/[id]/comments/route_client-reference-manifest.js +1 -1
  169. package/.next/standalone/.next/server/app/api/tasks/[id]/events/route_client-reference-manifest.js +1 -1
  170. package/.next/standalone/.next/server/app/api/tasks/[id]/live-runs/route_client-reference-manifest.js +1 -1
  171. package/.next/standalone/.next/server/app/api/tasks/[id]/release/route_client-reference-manifest.js +1 -1
  172. package/.next/standalone/.next/server/app/api/tasks/[id]/route_client-reference-manifest.js +1 -1
  173. package/.next/standalone/.next/server/app/api/tasks/route_client-reference-manifest.js +1 -1
  174. package/.next/standalone/.next/server/app/api/tool-allowlists/[id]/route_client-reference-manifest.js +1 -1
  175. package/.next/standalone/.next/server/app/api/tool-allowlists/route_client-reference-manifest.js +1 -1
  176. package/.next/standalone/.next/server/app/api/tool-egress/route_client-reference-manifest.js +1 -1
  177. package/.next/standalone/.next/server/app/api/tools/[name]/approve/route_client-reference-manifest.js +1 -1
  178. package/.next/standalone/.next/server/app/api/tools/[name]/route_client-reference-manifest.js +1 -1
  179. package/.next/standalone/.next/server/app/api/tools/route_client-reference-manifest.js +1 -1
  180. package/.next/standalone/.next/server/app/api/transcripts/route_client-reference-manifest.js +1 -1
  181. package/.next/standalone/.next/server/app/api/voice/providers/route_client-reference-manifest.js +1 -1
  182. package/.next/standalone/.next/server/app/api/voice/realtime/context/route_client-reference-manifest.js +1 -1
  183. package/.next/standalone/.next/server/app/api/voice/realtime/session/route_client-reference-manifest.js +1 -1
  184. package/.next/standalone/.next/server/app/api/voice/realtime/tool-result/route_client-reference-manifest.js +1 -1
  185. package/.next/standalone/.next/server/app/api/voice/realtime/tools/route_client-reference-manifest.js +1 -1
  186. package/.next/standalone/.next/server/app/api/voice/tts/route_client-reference-manifest.js +1 -1
  187. package/.next/standalone/.next/server/app/api/whatsapp/allowlist/route_client-reference-manifest.js +1 -1
  188. package/.next/standalone/.next/server/app/api/whatsapp/disconnect/route_client-reference-manifest.js +1 -1
  189. package/.next/standalone/.next/server/app/api/whatsapp/messages/route_client-reference-manifest.js +1 -1
  190. package/.next/standalone/.next/server/app/api/whatsapp/qr/route_client-reference-manifest.js +1 -1
  191. package/.next/standalone/.next/server/app/api/whatsapp/send/route_client-reference-manifest.js +1 -1
  192. package/.next/standalone/.next/server/app/api/whatsapp/status/route_client-reference-manifest.js +1 -1
  193. package/.next/standalone/.next/server/app/approvals/page.js +2 -2
  194. package/.next/standalone/.next/server/app/approvals/page_client-reference-manifest.js +1 -1
  195. package/.next/standalone/.next/server/app/architecture/page_client-reference-manifest.js +1 -1
  196. package/.next/standalone/.next/server/app/architecture.html +2 -2
  197. package/.next/standalone/.next/server/app/architecture.rsc +2 -2
  198. package/.next/standalone/.next/server/app/audit/live/page_client-reference-manifest.js +1 -1
  199. package/.next/standalone/.next/server/app/audit/page_client-reference-manifest.js +1 -1
  200. package/.next/standalone/.next/server/app/brand/page_client-reference-manifest.js +1 -1
  201. package/.next/standalone/.next/server/app/brand.html +1 -1
  202. package/.next/standalone/.next/server/app/brand.rsc +2 -2
  203. package/.next/standalone/.next/server/app/disk/page_client-reference-manifest.js +1 -1
  204. package/.next/standalone/.next/server/app/federated-ai/page_client-reference-manifest.js +1 -1
  205. package/.next/standalone/.next/server/app/federated-ai.html +2 -2
  206. package/.next/standalone/.next/server/app/federated-ai.rsc +2 -2
  207. package/.next/standalone/.next/server/app/hail/[id]/governance/page_client-reference-manifest.js +1 -1
  208. package/.next/standalone/.next/server/app/hail/[id]/interview/page.js +1 -1
  209. package/.next/standalone/.next/server/app/hail/[id]/interview/page_client-reference-manifest.js +1 -1
  210. package/.next/standalone/.next/server/app/hail/[id]/page.js +1 -1
  211. package/.next/standalone/.next/server/app/hail/[id]/page_client-reference-manifest.js +1 -1
  212. package/.next/standalone/.next/server/app/hail/[id]/setup/page.js +1 -1
  213. package/.next/standalone/.next/server/app/hail/[id]/setup/page_client-reference-manifest.js +1 -1
  214. package/.next/standalone/.next/server/app/hail/page.js +3 -3
  215. package/.next/standalone/.next/server/app/hail/page_client-reference-manifest.js +1 -1
  216. package/.next/standalone/.next/server/app/help/[slug]/page_client-reference-manifest.js +1 -1
  217. package/.next/standalone/.next/server/app/help/page_client-reference-manifest.js +1 -1
  218. package/.next/standalone/.next/server/app/index.html +2 -2
  219. package/.next/standalone/.next/server/app/index.rsc +2 -2
  220. package/.next/standalone/.next/server/app/join/page_client-reference-manifest.js +1 -1
  221. package/.next/standalone/.next/server/app/join.html +1 -1
  222. package/.next/standalone/.next/server/app/join.rsc +2 -2
  223. package/.next/standalone/.next/server/app/login/page.js +1 -1
  224. package/.next/standalone/.next/server/app/login/page_client-reference-manifest.js +1 -1
  225. package/.next/standalone/.next/server/app/marketplace/page.js +3 -3
  226. package/.next/standalone/.next/server/app/marketplace/page_client-reference-manifest.js +1 -1
  227. package/.next/standalone/.next/server/app/mines/[projectId]/page_client-reference-manifest.js +1 -1
  228. package/.next/standalone/.next/server/app/mines/[projectId]/results/page_client-reference-manifest.js +1 -1
  229. package/.next/standalone/.next/server/app/mines/page_client-reference-manifest.js +1 -1
  230. package/.next/standalone/.next/server/app/missions/page.js +1 -1
  231. package/.next/standalone/.next/server/app/missions/page_client-reference-manifest.js +1 -1
  232. package/.next/standalone/.next/server/app/onboarding/org/page_client-reference-manifest.js +1 -1
  233. package/.next/standalone/.next/server/app/onboarding/page_client-reference-manifest.js +1 -1
  234. package/.next/standalone/.next/server/app/onboarding.html +2 -2
  235. package/.next/standalone/.next/server/app/onboarding.rsc +2 -2
  236. package/.next/standalone/.next/server/app/org/page.js +1 -1
  237. package/.next/standalone/.next/server/app/org/page.js.nft.json +1 -1
  238. package/.next/standalone/.next/server/app/org/page_client-reference-manifest.js +1 -1
  239. package/.next/standalone/.next/server/app/page_client-reference-manifest.js +1 -1
  240. package/.next/standalone/.next/server/app/projects/[slug]/log/page_client-reference-manifest.js +1 -1
  241. package/.next/standalone/.next/server/app/projects/[slug]/page_client-reference-manifest.js +1 -1
  242. package/.next/standalone/.next/server/app/projects/new/page.js +2 -2
  243. package/.next/standalone/.next/server/app/projects/new/page_client-reference-manifest.js +1 -1
  244. package/.next/standalone/.next/server/app/projects/new.html +1 -1
  245. package/.next/standalone/.next/server/app/projects/new.rsc +3 -3
  246. package/.next/standalone/.next/server/app/projects/page.js +11 -11
  247. package/.next/standalone/.next/server/app/projects/page_client-reference-manifest.js +1 -1
  248. package/.next/standalone/.next/server/app/reports/[file]/route_client-reference-manifest.js +1 -1
  249. package/.next/standalone/.next/server/app/reports/page_client-reference-manifest.js +1 -1
  250. package/.next/standalone/.next/server/app/runtime/page_client-reference-manifest.js +1 -1
  251. package/.next/standalone/.next/server/app/schedules/page.js +2 -2
  252. package/.next/standalone/.next/server/app/schedules/page_client-reference-manifest.js +1 -1
  253. package/.next/standalone/.next/server/app/settings/account/page_client-reference-manifest.js +1 -1
  254. package/.next/standalone/.next/server/app/settings/advanced/page_client-reference-manifest.js +1 -1
  255. package/.next/standalone/.next/server/app/settings/appearance/page_client-reference-manifest.js +1 -1
  256. package/.next/standalone/.next/server/app/settings/brand/page_client-reference-manifest.js +1 -1
  257. package/.next/standalone/.next/server/app/settings/brand.html +2 -2
  258. package/.next/standalone/.next/server/app/settings/brand.rsc +2 -2
  259. package/.next/standalone/.next/server/app/settings/connectors/page_client-reference-manifest.js +1 -1
  260. package/.next/standalone/.next/server/app/settings/engines/page_client-reference-manifest.js +1 -1
  261. package/.next/standalone/.next/server/app/settings/onboarding/page_client-reference-manifest.js +1 -1
  262. package/.next/standalone/.next/server/app/settings/onboarding.html +2 -2
  263. package/.next/standalone/.next/server/app/settings/onboarding.rsc +2 -2
  264. package/.next/standalone/.next/server/app/settings/organization/page.js +1 -1
  265. package/.next/standalone/.next/server/app/settings/organization/page.js.nft.json +1 -1
  266. package/.next/standalone/.next/server/app/settings/organization/page_client-reference-manifest.js +1 -1
  267. package/.next/standalone/.next/server/app/settings/page_client-reference-manifest.js +1 -1
  268. package/.next/standalone/.next/server/app/settings/runtime/page_client-reference-manifest.js +1 -1
  269. package/.next/standalone/.next/server/app/settings/team/page_client-reference-manifest.js +1 -1
  270. package/.next/standalone/.next/server/app/settings/tools/page_client-reference-manifest.js +1 -1
  271. package/.next/standalone/.next/server/app/settings.html +2 -2
  272. package/.next/standalone/.next/server/app/settings.rsc +2 -2
  273. package/.next/standalone/.next/server/app/share/[token]/page_client-reference-manifest.js +1 -1
  274. package/.next/standalone/.next/server/app/share/space/[token]/page_client-reference-manifest.js +1 -1
  275. package/.next/standalone/.next/server/app/tasks/[id]/page.js +2 -2
  276. package/.next/standalone/.next/server/app/tasks/[id]/page_client-reference-manifest.js +1 -1
  277. package/.next/standalone/.next/server/app/tasks/page.js +1 -1
  278. package/.next/standalone/.next/server/app/tasks/page_client-reference-manifest.js +1 -1
  279. package/.next/standalone/.next/server/app/team/[agentId]/page_client-reference-manifest.js +1 -1
  280. package/.next/standalone/.next/server/app/team/page_client-reference-manifest.js +1 -1
  281. package/.next/standalone/.next/server/app/tools/page_client-reference-manifest.js +1 -1
  282. package/.next/standalone/.next/server/app/whatsapp/page_client-reference-manifest.js +1 -1
  283. package/.next/standalone/.next/server/app/whatsapp.html +2 -2
  284. package/.next/standalone/.next/server/app/whatsapp.rsc +2 -2
  285. package/.next/standalone/.next/server/app/workflows/[caseId]/page_client-reference-manifest.js +1 -1
  286. package/.next/standalone/.next/server/app/workflows/new/[caseId]/page.js +2 -2
  287. package/.next/standalone/.next/server/app/workflows/new/[caseId]/page_client-reference-manifest.js +1 -1
  288. package/.next/standalone/.next/server/app/workflows/new/definition/page_client-reference-manifest.js +1 -1
  289. package/.next/standalone/.next/server/app/workflows/page_client-reference-manifest.js +1 -1
  290. package/.next/standalone/.next/server/app/workflows/share/[caseId]/page_client-reference-manifest.js +1 -1
  291. package/.next/standalone/.next/server/app-paths-manifest.json +83 -83
  292. package/.next/standalone/.next/server/chunks/1699.js +2 -2
  293. package/.next/standalone/.next/server/chunks/{3066.js → 9860.js} +1 -1
  294. package/.next/standalone/.next/server/functions-config-manifest.json +28 -28
  295. package/.next/standalone/.next/server/middleware-manifest.json +5 -5
  296. package/.next/standalone/.next/server/pages/404.html +1 -1
  297. package/.next/standalone/.next/server/pages/500.html +1 -1
  298. package/.next/standalone/.next/server/server-reference-manifest.js +1 -1
  299. package/.next/standalone/.next/server/server-reference-manifest.json +1 -1
  300. package/.next/standalone/.next/static/chunks/app/login/page-e23d5fe32a5160d5.js +1 -0
  301. package/.next/standalone/.next/static/chunks/app/projects/page-9792d7b57f298e6f.js +1 -0
  302. package/.next/{static/css/3d77d4b95ab1c602.css → standalone/.next/static/css/54018a2de582f8bf.css} +1 -1
  303. package/.next/standalone/CHANGELOG.md +14 -0
  304. package/.next/standalone/data/.artifacts-migrated-v1 +1 -1
  305. package/.next/standalone/data/.default-project-seeded +1 -1
  306. package/.next/standalone/data/madarx.sqlite-shm +0 -0
  307. package/.next/standalone/data/madarx.sqlite-wal +0 -0
  308. package/.next/standalone/package.json +1 -1
  309. package/.next/static/chunks/app/login/page-e23d5fe32a5160d5.js +1 -0
  310. package/.next/static/chunks/app/projects/page-9792d7b57f298e6f.js +1 -0
  311. package/.next/{standalone/.next/static/css/3d77d4b95ab1c602.css → static/css/54018a2de582f8bf.css} +1 -1
  312. package/CHANGELOG.md +14 -0
  313. package/ai-docs/api-surface.md +1 -1
  314. package/ai-docs/key-constraints.md +1 -1
  315. package/app/globals.css +31 -6
  316. package/app/login/login-client.jsx +43 -23
  317. package/lib/tts.js +75 -5
  318. package/package.json +1 -1
  319. package/scripts/misotts-local-server.py +150 -0
  320. package/.next/standalone/.next/static/chunks/app/login/page-a2344c0b1ef6d31a.js +0 -1
  321. package/.next/standalone/.next/static/chunks/app/projects/page-8c8e47863c240ec7.js +0 -1
  322. package/.next/static/chunks/app/login/page-a2344c0b1ef6d31a.js +0 -1
  323. package/.next/static/chunks/app/projects/page-8c8e47863c240ec7.js +0 -1
  324. /package/.next/standalone/.next/static/{rhk5TnKsJ_4Rj__U8e3JH → PoL-cD5mauHkRGcYCq0A2}/_buildManifest.js +0 -0
  325. /package/.next/standalone/.next/static/{rhk5TnKsJ_4Rj__U8e3JH → PoL-cD5mauHkRGcYCq0A2}/_ssgManifest.js +0 -0
  326. /package/.next/static/{rhk5TnKsJ_4Rj__U8e3JH → PoL-cD5mauHkRGcYCq0A2}/_buildManifest.js +0 -0
  327. /package/.next/static/{rhk5TnKsJ_4Rj__U8e3JH → PoL-cD5mauHkRGcYCq0A2}/_ssgManifest.js +0 -0
@@ -6,12 +6,13 @@
6
6
  "/api/dashboard/spaces/route": "app/api/dashboard/spaces/route.js",
7
7
  "/icon.png/route": "app/icon.png/route.js",
8
8
  "/api/activity/route": "app/api/activity/route.js",
9
- "/api/admin/audit-export/route": "app/api/admin/audit-export/route.js",
9
+ "/api/admin/share-links/route": "app/api/admin/share-links/route.js",
10
10
  "/api/agent-memory/route": "app/api/agent-memory/route.js",
11
11
  "/api/agent-runs/[id]/cancel/route": "app/api/agent-runs/[id]/cancel/route.js",
12
12
  "/api/agent-runs/[id]/events/route": "app/api/agent-runs/[id]/events/route.js",
13
13
  "/api/agent-runs/[id]/log/route": "app/api/agent-runs/[id]/log/route.js",
14
14
  "/api/agent-runs/[id]/route": "app/api/agent-runs/[id]/route.js",
15
+ "/api/admin/audit-export/route": "app/api/admin/audit-export/route.js",
15
16
  "/api/agent-runs/route": "app/api/agent-runs/route.js",
16
17
  "/api/agents/[id]/chain/route": "app/api/agents/[id]/chain/route.js",
17
18
  "/api/agents/[id]/memory/route": "app/api/agents/[id]/memory/route.js",
@@ -20,224 +21,223 @@
20
21
  "/api/agents/[id]/skills/route": "app/api/agents/[id]/skills/route.js",
21
22
  "/api/agents/create/route": "app/api/agents/create/route.js",
22
23
  "/api/agents/ops/route": "app/api/agents/ops/route.js",
24
+ "/api/approvals/route": "app/api/approvals/route.js",
23
25
  "/api/approvals/[id]/route": "app/api/approvals/[id]/route.js",
26
+ "/api/artifacts/[id]/protect/route": "app/api/artifacts/[id]/protect/route.js",
24
27
  "/api/artifacts/[id]/acl/route": "app/api/artifacts/[id]/acl/route.js",
25
- "/api/admin/share-links/route": "app/api/admin/share-links/route.js",
26
28
  "/api/artifacts/[id]/raw/route": "app/api/artifacts/[id]/raw/route.js",
27
29
  "/api/artifacts/[id]/route": "app/api/artifacts/[id]/route.js",
28
- "/api/artifacts/[id]/share-link/[linkId]/route": "app/api/artifacts/[id]/share-link/[linkId]/route.js",
29
30
  "/api/artifacts/[id]/share-link/route": "app/api/artifacts/[id]/share-link/route.js",
30
- "/api/artifacts/upload/route": "app/api/artifacts/upload/route.js",
31
- "/api/approvals/route": "app/api/approvals/route.js",
31
+ "/api/artifacts/[id]/share-link/[linkId]/route": "app/api/artifacts/[id]/share-link/[linkId]/route.js",
32
+ "/api/audit/list/route": "app/api/audit/list/route.js",
32
33
  "/api/audit/search/route": "app/api/audit/search/route.js",
33
34
  "/api/auth/callback/route": "app/api/auth/callback/route.js",
34
- "/api/auth/config/route": "app/api/auth/config/route.js",
35
35
  "/api/auth/join-bootstrap/route": "app/api/auth/join-bootstrap/route.js",
36
36
  "/api/auth/session/route": "app/api/auth/session/route.js",
37
- "/api/artifacts/[id]/protect/route": "app/api/artifacts/[id]/protect/route.js",
38
- "/api/brand/share/route": "app/api/brand/share/route.js",
39
- "/api/chat/sessions/[id]/route": "app/api/chat/sessions/[id]/route.js",
40
- "/api/config/env/route": "app/api/config/env/route.js",
37
+ "/api/artifacts/upload/route": "app/api/artifacts/upload/route.js",
41
38
  "/api/chat/sessions/route": "app/api/chat/sessions/route.js",
39
+ "/api/auth/config/route": "app/api/auth/config/route.js",
40
+ "/api/config/env/route": "app/api/config/env/route.js",
41
+ "/api/chat/sessions/[id]/route": "app/api/chat/sessions/[id]/route.js",
42
+ "/api/brand/share/route": "app/api/brand/share/route.js",
42
43
  "/api/config/route": "app/api/config/route.js",
43
44
  "/api/connections/[service]/route": "app/api/connections/[service]/route.js",
45
+ "/api/connections/route": "app/api/connections/route.js",
44
46
  "/api/cron/tick/route": "app/api/cron/tick/route.js",
45
- "/api/audit/list/route": "app/api/audit/list/route.js",
46
47
  "/api/dashboard/spaces/[id]/share-link/[linkId]/route": "app/api/dashboard/spaces/[id]/share-link/[linkId]/route.js",
47
- "/api/dashboard/spaces/[id]/share-link/route": "app/api/dashboard/spaces/[id]/share-link/route.js",
48
48
  "/api/disk/files/[id]/blob/route": "app/api/disk/files/[id]/blob/route.js",
49
49
  "/api/disk/files/[id]/route": "app/api/disk/files/[id]/route.js",
50
50
  "/api/disk/files/[id]/transcribe/route": "app/api/disk/files/[id]/transcribe/route.js",
51
51
  "/api/disk/files/route": "app/api/disk/files/route.js",
52
- "/api/disk/folders/route": "app/api/disk/folders/route.js",
53
52
  "/api/events/since/[cursor]/route": "app/api/events/since/[cursor]/route.js",
54
- "/api/events/stream/route": "app/api/events/stream/route.js",
53
+ "/api/disk/folders/route": "app/api/disk/folders/route.js",
55
54
  "/api/brand/route": "app/api/brand/route.js",
55
+ "/api/connections/[service]/verify/route": "app/api/connections/[service]/verify/route.js",
56
56
  "/api/fs/pick-folder/route": "app/api/fs/pick-folder/route.js",
57
57
  "/api/hail/engagements/[id]/diagnostic/route": "app/api/hail/engagements/[id]/diagnostic/route.js",
58
+ "/api/events/stream/route": "app/api/events/stream/route.js",
59
+ "/api/hail/engagements/[id]/interview/route": "app/api/hail/engagements/[id]/interview/route.js",
58
60
  "/api/hail/engagements/[id]/blueprint/route": "app/api/hail/engagements/[id]/blueprint/route.js",
59
- "/api/hail/engagements/[id]/governance/route": "app/api/hail/engagements/[id]/governance/route.js",
60
- "/api/connections/route": "app/api/connections/route.js",
61
- "/api/hail/engagements/[id]/quarterly/route": "app/api/hail/engagements/[id]/quarterly/route.js",
62
61
  "/api/hail/engagements/[id]/pilot/route": "app/api/hail/engagements/[id]/pilot/route.js",
63
- "/api/hail/engagements/[id]/route": "app/api/hail/engagements/[id]/route.js",
62
+ "/api/hail/engagements/[id]/governance/route": "app/api/hail/engagements/[id]/governance/route.js",
63
+ "/api/dashboard/spaces/[id]/share-link/route": "app/api/dashboard/spaces/[id]/share-link/route.js",
64
64
  "/api/hail/engagements/[id]/setup-package/route": "app/api/hail/engagements/[id]/setup-package/route.js",
65
65
  "/api/hail/engagements/route": "app/api/hail/engagements/route.js",
66
66
  "/api/hail/interviews/[id]/responses/route": "app/api/hail/interviews/[id]/responses/route.js",
67
67
  "/api/hail/interviews/[id]/route": "app/api/hail/interviews/[id]/route.js",
68
68
  "/api/hail/setup-packages/[id]/apply/route": "app/api/hail/setup-packages/[id]/apply/route.js",
69
- "/api/hail/setup-packages/validate/route": "app/api/hail/setup-packages/validate/route.js",
70
69
  "/api/heartbeat/tick/route": "app/api/heartbeat/tick/route.js",
70
+ "/api/hail/setup-packages/validate/route": "app/api/hail/setup-packages/validate/route.js",
71
71
  "/api/heartbeat/worker/route": "app/api/heartbeat/worker/route.js",
72
- "/api/fs/create-folder/route": "app/api/fs/create-folder/route.js",
73
72
  "/api/hermes/jobs/[id]/events/route": "app/api/hermes/jobs/[id]/events/route.js",
74
- "/api/hermes/jobs/[id]/route": "app/api/hermes/jobs/[id]/route.js",
73
+ "/api/hail/engagements/[id]/route": "app/api/hail/engagements/[id]/route.js",
75
74
  "/api/hermes/jobs/route": "app/api/hermes/jobs/route.js",
76
75
  "/api/integrations/google/callback/route": "app/api/integrations/google/callback/route.js",
76
+ "/api/fs/create-folder/route": "app/api/fs/create-folder/route.js",
77
+ "/api/hermes/jobs/[id]/route": "app/api/hermes/jobs/[id]/route.js",
77
78
  "/api/integrations/google/oauth/route": "app/api/integrations/google/oauth/route.js",
78
- "/api/hail/engagements/[id]/interview/route": "app/api/hail/engagements/[id]/interview/route.js",
79
- "/api/marketplace/open-design/route": "app/api/marketplace/open-design/route.js",
80
79
  "/api/marketplace/route": "app/api/marketplace/route.js",
81
80
  "/api/mines/import-roots/route": "app/api/mines/import-roots/route.js",
81
+ "/api/marketplace/[id]/route": "app/api/marketplace/[id]/route.js",
82
+ "/api/marketplace/open-design/route": "app/api/marketplace/open-design/route.js",
82
83
  "/api/mines/portfolio/route": "app/api/mines/portfolio/route.js",
83
84
  "/api/mines/projects/[id]/chunks/route": "app/api/mines/projects/[id]/chunks/route.js",
84
85
  "/api/mines/projects/[id]/diligence/route": "app/api/mines/projects/[id]/diligence/route.js",
85
86
  "/api/mines/projects/[id]/import/route": "app/api/mines/projects/[id]/import/route.js",
86
- "/api/marketplace/[id]/route": "app/api/marketplace/[id]/route.js",
87
87
  "/api/mines/projects/[id]/publish/route": "app/api/mines/projects/[id]/publish/route.js",
88
- "/api/missions/route": "app/api/missions/route.js",
88
+ "/api/mines/projects/route": "app/api/mines/projects/route.js",
89
+ "/api/hail/engagements/[id]/quarterly/route": "app/api/hail/engagements/[id]/quarterly/route.js",
90
+ "/api/onboarding/launch/route": "app/api/onboarding/launch/route.js",
91
+ "/api/orchestrator/command/route": "app/api/orchestrator/command/route.js",
92
+ "/api/orchestrator/upload/route": "app/api/orchestrator/upload/route.js",
89
93
  "/api/models/route": "app/api/models/route.js",
94
+ "/api/org/route": "app/api/org/route.js",
90
95
  "/api/onboarding/blueprint/route": "app/api/onboarding/blueprint/route.js",
91
96
  "/api/help/route": "app/api/help/route.js",
92
- "/api/orchestrator/command/route": "app/api/orchestrator/command/route.js",
93
- "/api/connections/[service]/verify/route": "app/api/connections/[service]/verify/route.js",
94
- "/api/orchestrator/upload/route": "app/api/orchestrator/upload/route.js",
95
97
  "/api/orgs/[id]/invites/[inviteId]/route": "app/api/orgs/[id]/invites/[inviteId]/route.js",
96
- "/api/orgs/[id]/invites/route": "app/api/orgs/[id]/invites/route.js",
97
98
  "/api/orgs/[id]/members/[userId]/role/route": "app/api/orgs/[id]/members/[userId]/role/route.js",
98
- "/api/org/route": "app/api/org/route.js",
99
+ "/api/orgs/[id]/invites/route": "app/api/orgs/[id]/invites/route.js",
99
100
  "/api/orgs/[id]/members/[userId]/route": "app/api/orgs/[id]/members/[userId]/route.js",
100
- "/api/onboarding/launch/route": "app/api/onboarding/launch/route.js",
101
- "/api/orgs/[id]/route": "app/api/orgs/[id]/route.js",
101
+ "/api/orgs/[id]/members/route": "app/api/orgs/[id]/members/route.js",
102
102
  "/api/orgs/invites/pending/route": "app/api/orgs/invites/pending/route.js",
103
- "/api/orgs/join/route": "app/api/orgs/join/route.js",
104
103
  "/api/orgs/join-complete/route": "app/api/orgs/join-complete/route.js",
105
- "/api/mines/projects/route": "app/api/mines/projects/route.js",
106
- "/api/printing-press/clis/route": "app/api/printing-press/clis/route.js",
104
+ "/api/orgs/[id]/route": "app/api/orgs/[id]/route.js",
105
+ "/api/missions/route": "app/api/missions/route.js",
107
106
  "/api/printing-press/install/route": "app/api/printing-press/install/route.js",
107
+ "/api/printing-press/clis/route": "app/api/printing-press/clis/route.js",
108
108
  "/api/printing-press/security-mode/route": "app/api/printing-press/security-mode/route.js",
109
- "/api/privacy/config/route": "app/api/privacy/config/route.js",
110
109
  "/api/orgs/route": "app/api/orgs/route.js",
110
+ "/api/privacy/verify/route": "app/api/privacy/verify/route.js",
111
111
  "/api/processes/[id]/route": "app/api/processes/[id]/route.js",
112
- "/api/processes/[id]/share-link/route": "app/api/processes/[id]/share-link/route.js",
113
112
  "/api/processes/[id]/stages/[stageId]/override/route": "app/api/processes/[id]/stages/[stageId]/override/route.js",
113
+ "/api/processes/[id]/share-link/route": "app/api/processes/[id]/share-link/route.js",
114
114
  "/api/processes/[id]/stages/[stageId]/retry/route": "app/api/processes/[id]/stages/[stageId]/retry/route.js",
115
- "/api/orgs/[id]/members/route": "app/api/orgs/[id]/members/route.js",
116
115
  "/api/processes/[id]/stages/[stageId]/submit/route": "app/api/processes/[id]/stages/[stageId]/submit/route.js",
117
- "/api/processes/definitions/[slug]/settings/route": "app/api/processes/definitions/[slug]/settings/route.js",
116
+ "/api/orgs/join/route": "app/api/orgs/join/route.js",
118
117
  "/api/processes/definitions/[slug]/route": "app/api/processes/definitions/[slug]/route.js",
119
- "/api/processes/definitions/validate/route": "app/api/processes/definitions/validate/route.js",
120
118
  "/api/processes/definitions/route": "app/api/processes/definitions/route.js",
121
119
  "/api/processes/route": "app/api/processes/route.js",
122
- "/api/privacy/verify/route": "app/api/privacy/verify/route.js",
123
- "/api/projects/[slug]/route": "app/api/projects/[slug]/route.js",
124
- "/api/projects/route": "app/api/projects/route.js",
120
+ "/api/processes/definitions/validate/route": "app/api/processes/definitions/validate/route.js",
121
+ "/api/processes/start-and-route/route": "app/api/processes/start-and-route/route.js",
125
122
  "/api/projects/[slug]/library/route": "app/api/projects/[slug]/library/route.js",
126
- "/api/runs/competitor-report/route": "app/api/runs/competitor-report/route.js",
123
+ "/api/privacy/config/route": "app/api/privacy/config/route.js",
124
+ "/api/processes/definitions/[slug]/settings/route": "app/api/processes/definitions/[slug]/settings/route.js",
125
+ "/api/projects/route": "app/api/projects/route.js",
127
126
  "/api/runs/claude-code-dry-run/route": "app/api/runs/claude-code-dry-run/route.js",
128
- "/api/runs/marketing-plan/route": "app/api/runs/marketing-plan/route.js",
127
+ "/api/runs/competitor-report/route": "app/api/runs/competitor-report/route.js",
129
128
  "/api/runs/engine-ping/route": "app/api/runs/engine-ping/route.js",
129
+ "/api/runs/marketing-plan/route": "app/api/runs/marketing-plan/route.js",
130
130
  "/api/schedules/upsert/route": "app/api/schedules/upsert/route.js",
131
131
  "/api/runs/approve-claude-run/route": "app/api/runs/approve-claude-run/route.js",
132
+ "/api/secrets/[name]/route": "app/api/secrets/[name]/route.js",
132
133
  "/api/secrets/route": "app/api/secrets/route.js",
133
134
  "/api/settings/trust-mode/route": "app/api/settings/trust-mode/route.js",
134
- "/api/orchestrator/stream/route": "app/api/orchestrator/stream/route.js",
135
- "/api/share/[token]/route": "app/api/share/[token]/route.js",
136
- "/api/processes/start-and-route/route": "app/api/processes/start-and-route/route.js",
135
+ "/api/share/[token]/otp/route": "app/api/share/[token]/otp/route.js",
136
+ "/api/projects/[slug]/route": "app/api/projects/[slug]/route.js",
137
+ "/api/share/[token]/verify/route": "app/api/share/[token]/verify/route.js",
137
138
  "/api/share/space/[token]/otp/route": "app/api/share/space/[token]/otp/route.js",
138
139
  "/api/share/space/[token]/route": "app/api/share/space/[token]/route.js",
139
- "/api/secrets/[name]/route": "app/api/secrets/[name]/route.js",
140
140
  "/api/share/space/[token]/verify/route": "app/api/share/space/[token]/verify/route.js",
141
- "/api/shared/spaces/publish/route": "app/api/shared/spaces/publish/route.js",
142
- "/api/shared/spaces/[id]/acl/route": "app/api/shared/spaces/[id]/acl/route.js",
143
141
  "/api/shared/spaces/route": "app/api/shared/spaces/route.js",
142
+ "/api/shared/spaces/[id]/acl/route": "app/api/shared/spaces/[id]/acl/route.js",
143
+ "/api/shared/spaces/publish/route": "app/api/shared/spaces/publish/route.js",
144
144
  "/api/shared/spaces/status/route": "app/api/shared/spaces/status/route.js",
145
- "/api/share/[token]/otp/route": "app/api/share/[token]/otp/route.js",
146
145
  "/api/state/route": "app/api/state/route.js",
146
+ "/api/shared/spaces/unpublish/route": "app/api/shared/spaces/unpublish/route.js",
147
+ "/api/share/[token]/route": "app/api/share/[token]/route.js",
147
148
  "/api/tasks/[id]/attachments/route": "app/api/tasks/[id]/attachments/route.js",
148
- "/api/tasks/[id]/active-run/route": "app/api/tasks/[id]/active-run/route.js",
149
149
  "/api/tasks/[id]/checklist/[itemId]/route": "app/api/tasks/[id]/checklist/[itemId]/route.js",
150
- "/api/system/update/route": "app/api/system/update/route.js",
150
+ "/api/tasks/[id]/checklist/route": "app/api/tasks/[id]/checklist/route.js",
151
151
  "/api/tasks/[id]/checkout/route": "app/api/tasks/[id]/checkout/route.js",
152
152
  "/api/tasks/[id]/children/route": "app/api/tasks/[id]/children/route.js",
153
- "/api/tasks/[id]/checklist/route": "app/api/tasks/[id]/checklist/route.js",
154
- "/api/tasks/[id]/events/route": "app/api/tasks/[id]/events/route.js",
155
153
  "/api/tasks/[id]/comments/route": "app/api/tasks/[id]/comments/route.js",
154
+ "/api/tasks/[id]/events/route": "app/api/tasks/[id]/events/route.js",
156
155
  "/api/tasks/[id]/live-runs/route": "app/api/tasks/[id]/live-runs/route.js",
157
156
  "/api/tasks/[id]/release/route": "app/api/tasks/[id]/release/route.js",
158
157
  "/api/tasks/[id]/route": "app/api/tasks/[id]/route.js",
159
158
  "/api/tasks/route": "app/api/tasks/route.js",
160
- "/api/tool-allowlists/route": "app/api/tool-allowlists/route.js",
161
- "/api/tool-egress/route": "app/api/tool-egress/route.js",
159
+ "/api/system/update/route": "app/api/system/update/route.js",
160
+ "/api/orchestrator/stream/route": "app/api/orchestrator/stream/route.js",
162
161
  "/api/tools/[name]/approve/route": "app/api/tools/[name]/approve/route.js",
163
162
  "/api/tools/[name]/route": "app/api/tools/[name]/route.js",
163
+ "/api/tool-allowlists/route": "app/api/tool-allowlists/route.js",
164
164
  "/api/tools/route": "app/api/tools/route.js",
165
165
  "/api/transcripts/route": "app/api/transcripts/route.js",
166
166
  "/api/voice/providers/route": "app/api/voice/providers/route.js",
167
+ "/api/tool-egress/route": "app/api/tool-egress/route.js",
167
168
  "/api/voice/realtime/context/route": "app/api/voice/realtime/context/route.js",
168
- "/api/share/[token]/verify/route": "app/api/share/[token]/verify/route.js",
169
169
  "/api/voice/realtime/tool-result/route": "app/api/voice/realtime/tool-result/route.js",
170
+ "/api/voice/realtime/session/route": "app/api/voice/realtime/session/route.js",
170
171
  "/api/voice/realtime/tools/route": "app/api/voice/realtime/tools/route.js",
172
+ "/api/whatsapp/messages/route": "app/api/whatsapp/messages/route.js",
171
173
  "/api/voice/tts/route": "app/api/voice/tts/route.js",
172
- "/api/whatsapp/allowlist/route": "app/api/whatsapp/allowlist/route.js",
173
174
  "/api/whatsapp/disconnect/route": "app/api/whatsapp/disconnect/route.js",
174
- "/api/whatsapp/messages/route": "app/api/whatsapp/messages/route.js",
175
175
  "/api/whatsapp/qr/route": "app/api/whatsapp/qr/route.js",
176
- "/api/whatsapp/send/route": "app/api/whatsapp/send/route.js",
176
+ "/api/whatsapp/allowlist/route": "app/api/whatsapp/allowlist/route.js",
177
177
  "/api/whatsapp/status/route": "app/api/whatsapp/status/route.js",
178
- "/api/shared/spaces/unpublish/route": "app/api/shared/spaces/unpublish/route.js",
178
+ "/api/tasks/[id]/active-run/route": "app/api/tasks/[id]/active-run/route.js",
179
+ "/api/whatsapp/send/route": "app/api/whatsapp/send/route.js",
179
180
  "/api/tool-allowlists/[id]/route": "app/api/tool-allowlists/[id]/route.js",
180
- "/api/voice/realtime/session/route": "app/api/voice/realtime/session/route.js",
181
181
  "/reports/[file]/route": "app/reports/[file]/route.js",
182
182
  "/brand/page": "app/brand/page.js",
183
183
  "/join/page": "app/join/page.js",
184
184
  "/onboarding/page": "app/onboarding/page.js",
185
185
  "/page": "app/page.js",
186
186
  "/projects/new/page": "app/projects/new/page.js",
187
- "/whatsapp/page": "app/whatsapp/page.js",
188
187
  "/activity/page": "app/activity/page.js",
189
188
  "/agents/page": "app/agents/page.js",
190
189
  "/admin/page": "app/admin/page.js",
191
190
  "/agents/[id]/page": "app/agents/[id]/page.js",
192
191
  "/audit/live/page": "app/audit/live/page.js",
193
- "/audit/page": "app/audit/page.js",
192
+ "/approvals/page": "app/approvals/page.js",
194
193
  "/disk/page": "app/disk/page.js",
194
+ "/audit/page": "app/audit/page.js",
195
195
  "/hail/[id]/governance/page": "app/hail/[id]/governance/page.js",
196
- "/approvals/page": "app/approvals/page.js",
197
196
  "/hail/[id]/interview/page": "app/hail/[id]/interview/page.js",
198
- "/hail/[id]/setup/page": "app/hail/[id]/setup/page.js",
199
197
  "/hail/page": "app/hail/page.js",
200
- "/federated-ai/page": "app/federated-ai/page.js",
198
+ "/hail/[id]/setup/page": "app/hail/[id]/setup/page.js",
201
199
  "/help/[slug]/page": "app/help/[slug]/page.js",
202
200
  "/login/page": "app/login/page.js",
203
- "/marketplace/page": "app/marketplace/page.js",
204
201
  "/hail/[id]/page": "app/hail/[id]/page.js",
202
+ "/marketplace/page": "app/marketplace/page.js",
205
203
  "/help/page": "app/help/page.js",
204
+ "/federated-ai/page": "app/federated-ai/page.js",
206
205
  "/mines/page": "app/mines/page.js",
207
206
  "/missions/page": "app/missions/page.js",
208
- "/architecture/page": "app/architecture/page.js",
209
207
  "/onboarding/org/page": "app/onboarding/org/page.js",
210
- "/projects/[slug]/log/page": "app/projects/[slug]/log/page.js",
211
- "/org/page": "app/org/page.js",
212
- "/projects/[slug]/page": "app/projects/[slug]/page.js",
213
- "/mines/[projectId]/results/page": "app/mines/[projectId]/results/page.js",
214
208
  "/mines/[projectId]/page": "app/mines/[projectId]/page.js",
209
+ "/architecture/page": "app/architecture/page.js",
210
+ "/projects/[slug]/page": "app/projects/[slug]/page.js",
215
211
  "/projects/page": "app/projects/page.js",
212
+ "/mines/[projectId]/results/page": "app/mines/[projectId]/results/page.js",
213
+ "/org/page": "app/org/page.js",
216
214
  "/schedules/page": "app/schedules/page.js",
215
+ "/projects/[slug]/log/page": "app/projects/[slug]/log/page.js",
216
+ "/runtime/page": "app/runtime/page.js",
217
217
  "/reports/page": "app/reports/page.js",
218
- "/share/space/[token]/page": "app/share/space/[token]/page.js",
219
218
  "/share/[token]/page": "app/share/[token]/page.js",
220
- "/runtime/page": "app/runtime/page.js",
219
+ "/share/space/[token]/page": "app/share/space/[token]/page.js",
220
+ "/whatsapp/page": "app/whatsapp/page.js",
221
+ "/team/page": "app/team/page.js",
221
222
  "/team/[agentId]/page": "app/team/[agentId]/page.js",
222
223
  "/workflows/[caseId]/page": "app/workflows/[caseId]/page.js",
223
224
  "/workflows/new/[caseId]/page": "app/workflows/new/[caseId]/page.js",
224
225
  "/workflows/new/definition/page": "app/workflows/new/definition/page.js",
225
- "/workflows/share/[caseId]/page": "app/workflows/share/[caseId]/page.js",
226
226
  "/workflows/page": "app/workflows/page.js",
227
- "/tasks/[id]/page": "app/tasks/[id]/page.js",
227
+ "/workflows/share/[caseId]/page": "app/workflows/share/[caseId]/page.js",
228
228
  "/tasks/page": "app/tasks/page.js",
229
+ "/tasks/[id]/page": "app/tasks/[id]/page.js",
229
230
  "/tools/page": "app/tools/page.js",
230
- "/team/page": "app/team/page.js",
231
231
  "/settings/brand/page": "app/settings/brand/page.js",
232
232
  "/settings/onboarding/page": "app/settings/onboarding/page.js",
233
- "/settings/advanced/page": "app/settings/advanced/page.js",
234
233
  "/settings/appearance/page": "app/settings/appearance/page.js",
234
+ "/settings/advanced/page": "app/settings/advanced/page.js",
235
235
  "/settings/connectors/page": "app/settings/connectors/page.js",
236
236
  "/settings/organization/page": "app/settings/organization/page.js",
237
237
  "/settings/page": "app/settings/page.js",
238
- "/settings/account/page": "app/settings/account/page.js",
239
238
  "/settings/runtime/page": "app/settings/runtime/page.js",
240
- "/settings/tools/page": "app/settings/tools/page.js",
241
239
  "/settings/engines/page": "app/settings/engines/page.js",
240
+ "/settings/account/page": "app/settings/account/page.js",
241
+ "/settings/tools/page": "app/settings/tools/page.js",
242
242
  "/settings/team/page": "app/settings/team/page.js"
243
243
  }
@@ -852,10 +852,10 @@ ${b}
852
852
  els.forEach(function(e){ e.style.transitionDelay=Math.min(i*40,160)+'ms'; i++; io.observe(e); });
853
853
  })();
854
854
  </script>
855
- </body></html>`}(b,n),meta:{scenario_rows:l.scen.length,intercepts:l.intercepts.length,targets:l.targets.length,comparables:d.length,narrative_authored:Object.keys(c||{}).length>0}}}},17607:(a,b,c)=>{"use strict";c.a(a,async(a,d)=>{try{c.d(b,{B:()=>n,M:()=>m});var e=c(58282),f=c(26531),g=a([e]);e=(g.then?(await g)():g)[0];let o={"User-Agent":"Mozilla/5.0 (Macintosh; Intel Mac OS X 14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/124.0.0.0 Safari/537.36",Accept:"text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8","Accept-Language":"en-US,en;q=0.9","Sec-Fetch-Mode":"navigate","Sec-Fetch-Site":"none","Sec-Fetch-User":"?1","Sec-Ch-Ua":'"Chromium";v="124", "Not(A:Brand";v="24"',"Upgrade-Insecure-Requests":"1"},p=new Map;function h(a){try{return new URL(a).hostname}catch{return a}}function i(a,b){let c=b.headers.get("set-cookie");if(!c)return;let d=c.split(/,(?=[^;]+=[^;]+)/).map(a=>a.trim().split(";")[0].trim()).filter(Boolean),e=p.get(a)||"",f=e?[...e.split("; "),...d].filter(Boolean).join("; "):d.join("; ");p.set(a,f)}function j(a){let b=h(a),c={...o},d=p.get(b);return d&&(c.Cookie=d),c}async function k(a,b){let c=a,d=[];for(let a=0;a<5;a++){d.push(c);let e=h(c),f=await b(c,{method:"GET",redirect:"manual",headers:j(c),signal:AbortSignal.timeout(2e4)});if(i(e,f),f.status>=300&&f.status<400){let a=f.headers.get("location");if(!a)break;c=new URL(a,c).href;continue}let g=await f.text(),k=function(a){let b=a.match(/<meta[^>]+http-equiv=["']?refresh["']?[^>]+content=["']?\d+;\s*url=([^"'\s>]+)/i);return b?b[1]:null}(g);if(k&&a<4){c=new URL(k,c).href;continue}return{res:f,html:g,finalUrl:c,redirects:d.length>1?d:void 0}}let e=h(c),f=await b(c,{method:"GET",redirect:"follow",headers:j(c),signal:AbortSignal.timeout(2e4)});i(e,f);let g=await f.text();return{res:f,html:g,finalUrl:c,redirects:d}}function l(a){let b=a.replace(/<(script|style|nav|header|footer|noscript)[\s\S]*?<\/\1>/gi,"");return b=(b=(b=(b=b.replace(/<\/?(p|div|br|h[1-6]|li|tr|td|th|section|article|main|aside|blockquote)[^>]*>/gi,"\n")).replace(/<[^>]+>/g," ")).replace(/&amp;/g,"&").replace(/&lt;/g,"<").replace(/&gt;/g,">").replace(/&quot;/g,'"').replace(/&#39;/g,"'").replace(/&nbsp;/g," ")).replace(/[ \t]+/g," ").replace(/\n{3,}/g,"\n\n").trim()}async function m({url:a,extract:b="text",selector:c,wait_for:d,max_chars:g=12e3}={}){let h,i,j,n,o,p=Math.min(Number(g)||12e3,5e4),q=(0,e.N)("browser_navigate",null);try{({res:h,html:i,finalUrl:j,redirects:n}=await k(a,q))}catch(b){return{status:"error",url:a,final_url:a,content_type:null,content:"Fetch error: "+String(b&&b.message?b.message:b).slice(0,512),length:0}}let r=h.headers.get("content-type")||"";if(d&&!i.includes(d))return{status:"incomplete",url:a,final_url:j,content_type:r,hint:"Substring not found, site may need JS rendering",length:i.length,...n?{redirects:n}:{}};let s=i;if(c){let a=function(a,b){if(!b)return null;try{let c;if(b.startsWith("#")){let a=b.slice(1).replace(/[.*+?^${}()|[\]\\]/g,"\\$&");c=RegExp("<[a-z][^>]+id=[\"']"+a+"[\"'][^>]*>([\\s\\S]*?)<\\/[a-z]+>","i")}else if(b.startsWith(".")){let a=b.slice(1).replace(/[.*+?^${}()|[\]\\]/g,"\\$&");c=RegExp("<[a-z][^>]+class=[\"'][^\"']*"+a+"[^\"']*[\"'][^>]*>([\\s\\S]*?)<\\/[a-z]+>","i")}else{let a=b.replace(/[.*+?^${}()|[\]\\]/g,"\\$&");c=RegExp("<"+a+"[^>]*>([\\s\\S]*?)<\\/"+a+">","i")}let d=a.match(c);return d?d[0]:null}catch{return null}}(i,c);a&&(s=a)}try{if("text"===b)o=l(s).slice(0,p);else if("markdown"===b)o=s.replace(/<(script|style|noscript)[\s\S]*?<\/\1>/gi,"").replace(/<h1[^>]*>([\s\S]*?)<\/h1>/gi,(a,b)=>"\n# "+l(b)+"\n").replace(/<h2[^>]*>([\s\S]*?)<\/h2>/gi,(a,b)=>"\n## "+l(b)+"\n").replace(/<h3[^>]*>([\s\S]*?)<\/h3>/gi,(a,b)=>"\n### "+l(b)+"\n").replace(/<h[4-6][^>]*>([\s\S]*?)<\/h[4-6]>/gi,(a,b)=>"\n#### "+l(b)+"\n").replace(/<a[^>]+href=["']([^"']+)["'][^>]*>([\s\S]*?)<\/a>/gi,(a,b,c)=>"["+l(c)+"]("+b+")").replace(/<code[^>]*>([\s\S]*?)<\/code>/gi,(a,b)=>"`"+b+"`").replace(/<pre[^>]*>([\s\S]*?)<\/pre>/gi,(a,b)=>"\n```\n"+l(b)+"\n```\n").replace(/<li[^>]*>([\s\S]*?)<\/li>/gi,(a,b)=>"\n- "+l(b)).replace(/<\/?(p|div|br)[^>]*>/gi,"\n").replace(/<[^>]+>/g," ").replace(/&amp;/g,"&").replace(/&lt;/g,"<").replace(/&gt;/g,">").replace(/&quot;/g,'"').replace(/&#39;/g,"'").replace(/&nbsp;/g," ").replace(/[ \t]+/g," ").replace(/\n{3,}/g,"\n\n").trim().slice(0,p);else o="json-ld"===b?function(a){let b,c=[],d=/<script[^>]+type=["']application\/ld\+json["'][^>]*>([\s\S]*?)<\/script>/gi;for(;null!==(b=d.exec(a));)try{c.push(JSON.parse(b[1]))}catch{}return c}(s):"metadata"===b?function(a){let b,c={},d=a.match(/<title[^>]*>([\s\S]*?)<\/title>/i);d&&(c.title=d[1].replace(/<[^>]+>/g,"").trim());let e=/<meta[^>]+(?:name|property)=["']([^"']+)["'][^>]+content=["']([^"']*)["'][^>]*>/gi;for(;null!==(b=e.exec(a));)c[b[1]]=b[2];let f=/<meta[^>]+content=["']([^"']*)["'][^>]+(?:name|property)=["']([^"']+)["'][^>]*>/gi;for(;null!==(b=f.exec(a));)c[b[2]]||(c[b[2]]=b[1]);return c}(s):s.slice(0,p)}catch{o=s.slice(0,p)}let t=o;return"string"==typeof o&&(t=(0,f.nc)(o)),{status:"ok",url:a,final_url:j,content_type:r,content:t,length:"string"==typeof i?i.length:0,...n?{redirects:n}:{}}}async function n(a){let[b,c]=await Promise.all([m({url:a,extract:"json-ld",max_chars:5e4}),m({url:a,extract:"metadata",max_chars:5e4})]);return{json_ld:Array.isArray(b.content)?b.content:[],metadata:"object"==typeof c.content&&null!==c.content?c.content:{}}}d()}catch(a){d(a)}})},18313:(a,b,c)=>{"use strict";c.d(b,{Hb:()=>n,MK:()=>l,NV:()=>m,Ny:()=>g,_d:()=>p,ab:()=>q,eh:()=>i,rb:()=>h,uB:()=>k,vI:()=>o});let d=["backlog","todo","in_progress","in_review","blocked","done","cancelled"],e=["low","medium","high","urgent"],f=["queued","running","waiting_approval","succeeded","failed","cancelled","timed_out"],g=["task.created","task.updated","task.assigned","task.reassigned","task.status_changed","task.comment_added","task.blocked","task.unblocked","task.completed","task.cancelled","task.child_created"],h=["lifecycle","tool_start","tool_result","log","warning","error","approval_required","delegation_proposed","delegation_completed"],i=["activity.logged","task.updated","task.comment.added","task.assigned","task.reassigned","agent.status","agent.run.queued","agent.run.status","agent.run.event","agent.run.log"],j={backlog:["todo","cancelled"],todo:["in_progress","blocked","cancelled","done"],in_progress:["in_review","blocked","todo","done","cancelled"],in_review:["in_progress","done","blocked","cancelled"],blocked:["todo","in_progress","cancelled"],done:["in_review"],cancelled:["todo"]};function k(a){return"done"===a||"cancelled"===a}function l(a){return["queued","running","waiting_approval"].includes(a)}function m(a,b="todo"){return d.includes(a)?a:b}function n(a,b="medium"){return e.includes(a)?a:b}function o(a,b="queued"){return f.includes(a)?a:b}function p(a,b="activity.logged"){return i.includes(a)?a:b}function q(a,b){if(!(!a||a===b||j[a]?.includes(b)))throw Error(`Illegal task transition: ${a} -> ${b}`)}},18530:a=>{"use strict";a.exports=JSON.parse('{"schema_version":1,"slug":"vendor-onboarding","name":"Vendor Onboarding","version":1,"description":"Standard intake for new vendors. Captures contact + services, runs an automated risk review, gates on buyer sign-off, and packages the onboarding pack.","category":"procurement","source":"marketplace","status":"published","stages":[{"slug":"intake","name":"Vendor intake","kind":"intake_form","config":{"form_schema":{"title":"Vendor Onboarding — Intake","description":"Tell us about the vendor. The risk reviewer will use this to score them.","fields":[{"name":"vendor_name","label":"Vendor company name","type":"text","required":true,"placeholder":"Legal entity name"},{"name":"primary_contact_name","label":"Primary contact name","type":"text","required":true},{"name":"primary_contact_email","label":"Primary contact email","type":"email","required":true},{"name":"country","label":"Headquarters country","type":"select","required":true,"options":["United States","United Kingdom","United Arab Emirates","Singapore","Germany","India","Other"]},{"name":"services","label":"Services offered","type":"textarea","required":true,"placeholder":"Short list of services / products this vendor will deliver."},{"name":"annual_value_usd","label":"Estimated annual contract value (USD)","type":"number","required":true,"min":0},{"name":"references","label":"References (names + companies)","type":"textarea","required":false,"placeholder":"Optional. One reference per line."}]}}},{"slug":"risk-review","name":"Automated risk review","kind":"agent_run","config":{"agent_template_slug":"vendor-risk-reviewer","prompt":"You are a vendor risk reviewer. Given the intake payload, produce a structured risk report. Do not call external services — work from the intake alone. Return strict JSON only, no surrounding prose: { \\"outcome\\": \\"pass\\" | \\"reject\\", \\"overall_risk\\": \\"low\\" | \\"medium\\" | \\"high\\", \\"concerns\\": [string], \\"references_summary\\": string, \\"recommended_action\\": \\"auto_approve\\" | \\"manual_review\\" | \\"reject\\", \\"rationale\\": string }. Set outcome=\\"reject\\" when recommended_action is \\"reject\\" (sanctioned region, missing critical info). Set outcome=\\"pass\\" otherwise — the human-approval stage that follows is the real decision point. Risk tiers: low = clear references + reasonable value, medium = thin references OR value > $250k, high = sanctioned region OR missing services OR value > $1M.","output_schema":"vendor_risk_v1","timeout_ms":60000,"on_outcome":{"pass":"buyer-signoff","reject":"fail"}},"on_pass_stage_slug":"buyer-signoff","on_fail_stage_slug":null},{"slug":"buyer-signoff","name":"Buyer sign-off","kind":"human_approval","config":{"action_type":"process.stage.approve","risk":"medium","summary_template":"Approve onboarding for {{intake.vendor_name}} ({{intake.country}}) — risk {{risk-review.overall_risk}}"},"on_pass_stage_slug":"final-package","on_fail_stage_slug":null},{"slug":"final-package","name":"Onboarding pack","kind":"package","config":{"title_template":"Vendor onboarding pack — {{intake.vendor_name}}","include_stages":["intake","risk-review","buyer-signoff"]}}]}')},18630:(a,b,c)=>{"use strict";c.d(b,{m:()=>f});var d=c(1303),e=c(81553);async function f(a={}){let b=await (0,e.runUpdateCheck)({});if(!b.reachable)return{ok:!1,from:(0,e.YO)(),to:null,applied:!1,message:"npm registry unreachable"};if(!b.behind)return{ok:!0,from:b.current,to:b.latest,applied:!1,message:"already up to date"};let c=await (0,d.applyUpdate)({initiatedBy:"self_update_tool"});return{ok:c.ok,from:c.from,to:b.latest,applied:c.ok,message:c.ok?`updated ${c.from} → v${b.latest}; restart required`:`update failed (exit ${c.code})`}}},19151:(a,b,c)=>{"use strict";c.a(a,async(a,d)=>{try{c.d(b,{A:()=>n,chatWithClaude:()=>j,x:()=>k});var e=c(50832),f=c(65451),g=a([e,f]);[e,f]=g.then?(await g)():g;let l=Number(process.env.MADARX_ANTHROPIC_MAX_RETRIES??4),m=Number(process.env.MADARX_ANTHROPIC_OUTER_RETRIES??3);function h(){let a=(0,f.resolveAnthropicApiKey)();if(!a)throw Error("ANTHROPIC_API_KEY not configured");return new e.default({apiKey:a,maxRetries:l})}let n="claude-sonnet-4-6",o=a=>new Promise(b=>setTimeout(b,a));async function i(a,b){let c;for(let d=0;d<m;d+=1)try{return await a()}catch(e){if(c=e,!function(a){let b=a?.status;return!!(429===b||408===b||409===b||"number"==typeof b&&b>=500||null==b&&(a?.name==="APIConnectionError"||a?.name==="APIConnectionTimeoutError"||/timeout|ECONNRESET|ENOTFOUND|EAI_AGAIN|socket hang up/i.test(String(a?.message||""))))}(e)||d===m-1)throw e;let a=function(a,b){let c=a?.headers?.get?.("retry-after"),d=null!=c?Number(c):NaN;return Number.isFinite(d)&&d>=0?Math.min(1e3*d,3e4):Math.min(500*2**b,8e3)+Math.floor(250*Math.random())}(e,d);console.warn(`[claude] ${b} transient ${e?.status||e?.name||"error"} — retry ${d+1}/${m-1} in ${a}ms`),await o(a)}throw c}async function j(a,b,c=[],d={}){let e=h(),f={model:d.model||n,max_tokens:d.max_tokens||8192,system:b,messages:a};return c.length&&(f.tools=c),d.tool_choice&&(f.tool_choice=d.tool_choice),"number"==typeof d.temperature&&(f.temperature=d.temperature),i(()=>e.messages.create(f),`chat(${f.model})`)}async function k(a,b,c=[],d=n){let e=h(),f={model:d,max_tokens:8192,system:b,messages:a};return c.length&&(f.tools=c),i(()=>e.messages.stream(f),`stream(${d})`)}d()}catch(a){d(a)}})},19348:(a,b,c)=>{"use strict";c.a(a,async(a,d)=>{try{c.d(b,{D4:()=>n,It:()=>o,JF:()=>p}),c(73024);var e=c(34255),f=c(24516),g=c(58282),h=c(73912),i=c(61423),j=a([e,f,g,h,i]);[e,f,g,h,i]=j.then?(await j)():j;let p=["openai","elevenlabs"],q="alloy",r=new Set(["alloy","echo","fable","onyx","nova","shimmer"]);function k(a,...b){let c=String(a??"");for(let a of b){if(!a)continue;let b=String(a).slice(-4);c=c.split(String(a)).join(`***${b}`)}return c}async function l({text:a,voice:b,model:c,format:d,fetchFn:e}){let g,h=(0,f.getSecret)("OPENAI_API_KEY")||process.env.OPENAI_API_KEY;if(!h)throw Error("OPENAI_API_KEY missing for OpenAI TTS");let i=b&&r.has(b)?b:q,j=c||"tts-1",l=d||"mp3";try{g=await e("https://api.openai.com/v1/audio/speech",{method:"POST",headers:{Authorization:`Bearer ${h}`,"Content-Type":"application/json"},body:JSON.stringify({model:j,voice:i,input:a,format:l})})}catch(a){throw Error(`openai tts failed: ${k(a?.message,h)}`)}if(!g.ok){let a="";try{a=(await g.text()).slice(0,256)}catch{}throw Error(`openai tts http ${g.status}: ${k(a,h)}`)}return{audio_buffer:Buffer.from(await g.arrayBuffer()),mime_type:"wav"===l?"audio/wav":"audio/mpeg",extension:"wav"===l?"wav":"mp3",provider:"openai",voice:i,model:j}}async function m({text:a,voice:b,model:c,format:d,fetchFn:e}){let g,h=(0,f.getSecret)("ELEVENLABS_API_KEY")||process.env.ELEVENLABS_API_KEY;if(!h)throw Error("ELEVENLABS_API_KEY missing for ElevenLabs TTS");let i=b||(0,f.getSecret)("ELEVENLABS_VOICE_ID")||process.env.ELEVENLABS_VOICE_ID||"21m00Tcm4TlvDq8ikWAM",j=c||"eleven_multilingual_v2",l="wav"===d?"pcm_16000":"mp3_44100_128";try{g=await e(`https://api.elevenlabs.io/v1/text-to-speech/${encodeURIComponent(i)}?output_format=${l}`,{method:"POST",headers:{"xi-api-key":h,"Content-Type":"application/json",Accept:"audio/mpeg"},body:JSON.stringify({text:a,model_id:j})})}catch(a){throw Error(`elevenlabs tts failed: ${k(a?.message,h)}`)}if(!g.ok){let a="";try{a=(await g.text()).slice(0,256)}catch{}throw Error(`elevenlabs tts http ${g.status}: ${k(a,h)}`)}return{audio_buffer:Buffer.from(await g.arrayBuffer()),mime_type:l.startsWith("pcm_")?"audio/wav":"audio/mpeg",extension:l.startsWith("pcm_")?"wav":"mp3",provider:"elevenlabs",voice:i,model:j}}async function n(a={}){let b=String(a.text||"").trim();if(!b)throw Error("text is required");if(b.length>4e3)throw Error("text too long: max 4000 characters");let c=String(a.provider||process.env.TTS_DEFAULT_PROVIDER||"openai").toLowerCase(),d=p.includes(c)?c:"openai",f=(0,g.N)("voice_speak",a.agent_id??null,a.fetch||fetch),j=await ("elevenlabs"===d?m:l)({text:b,voice:a.voice,model:a.model,format:a.format,fetchFn:f}),k=Math.max(500,Math.round(b.length/14*1e3)),o=null;if(a.save_to_disk&&a.project_id){let c=(0,i.U1)(a.project_id);if(c){let a=function(a){let b=(0,e.getDb)(),c=(0,h.dh)(a),d=b.prepare("SELECT * FROM disk_folders WHERE project_id = ? AND parent_id = ? AND name = ? LIMIT 1").get(a,c.id,"voice");return d||(0,h.vV)(a,c.id,"voice")}(c.id),d=b.slice(0,40).replace(/[^A-Za-z0-9]+/g,"-").replace(/^-+|-+$/g,"")||"tts";o=(0,h.QM)(c.id,a.id,{name:`${d}-${Date.now()}.${j.extension}`,buffer:j.audio_buffer,type:j.mime_type},{local_only:!1})}}try{(0,e.getDb)().prepare(`
855
+ </body></html>`}(b,n),meta:{scenario_rows:l.scen.length,intercepts:l.intercepts.length,targets:l.targets.length,comparables:d.length,narrative_authored:Object.keys(c||{}).length>0}}}},17607:(a,b,c)=>{"use strict";c.a(a,async(a,d)=>{try{c.d(b,{B:()=>n,M:()=>m});var e=c(58282),f=c(26531),g=a([e]);e=(g.then?(await g)():g)[0];let o={"User-Agent":"Mozilla/5.0 (Macintosh; Intel Mac OS X 14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/124.0.0.0 Safari/537.36",Accept:"text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8","Accept-Language":"en-US,en;q=0.9","Sec-Fetch-Mode":"navigate","Sec-Fetch-Site":"none","Sec-Fetch-User":"?1","Sec-Ch-Ua":'"Chromium";v="124", "Not(A:Brand";v="24"',"Upgrade-Insecure-Requests":"1"},p=new Map;function h(a){try{return new URL(a).hostname}catch{return a}}function i(a,b){let c=b.headers.get("set-cookie");if(!c)return;let d=c.split(/,(?=[^;]+=[^;]+)/).map(a=>a.trim().split(";")[0].trim()).filter(Boolean),e=p.get(a)||"",f=e?[...e.split("; "),...d].filter(Boolean).join("; "):d.join("; ");p.set(a,f)}function j(a){let b=h(a),c={...o},d=p.get(b);return d&&(c.Cookie=d),c}async function k(a,b){let c=a,d=[];for(let a=0;a<5;a++){d.push(c);let e=h(c),f=await b(c,{method:"GET",redirect:"manual",headers:j(c),signal:AbortSignal.timeout(2e4)});if(i(e,f),f.status>=300&&f.status<400){let a=f.headers.get("location");if(!a)break;c=new URL(a,c).href;continue}let g=await f.text(),k=function(a){let b=a.match(/<meta[^>]+http-equiv=["']?refresh["']?[^>]+content=["']?\d+;\s*url=([^"'\s>]+)/i);return b?b[1]:null}(g);if(k&&a<4){c=new URL(k,c).href;continue}return{res:f,html:g,finalUrl:c,redirects:d.length>1?d:void 0}}let e=h(c),f=await b(c,{method:"GET",redirect:"follow",headers:j(c),signal:AbortSignal.timeout(2e4)});i(e,f);let g=await f.text();return{res:f,html:g,finalUrl:c,redirects:d}}function l(a){let b=a.replace(/<(script|style|nav|header|footer|noscript)[\s\S]*?<\/\1>/gi,"");return b=(b=(b=(b=b.replace(/<\/?(p|div|br|h[1-6]|li|tr|td|th|section|article|main|aside|blockquote)[^>]*>/gi,"\n")).replace(/<[^>]+>/g," ")).replace(/&amp;/g,"&").replace(/&lt;/g,"<").replace(/&gt;/g,">").replace(/&quot;/g,'"').replace(/&#39;/g,"'").replace(/&nbsp;/g," ")).replace(/[ \t]+/g," ").replace(/\n{3,}/g,"\n\n").trim()}async function m({url:a,extract:b="text",selector:c,wait_for:d,max_chars:g=12e3}={}){let h,i,j,n,o,p=Math.min(Number(g)||12e3,5e4),q=(0,e.N)("browser_navigate",null);try{({res:h,html:i,finalUrl:j,redirects:n}=await k(a,q))}catch(b){return{status:"error",url:a,final_url:a,content_type:null,content:"Fetch error: "+String(b&&b.message?b.message:b).slice(0,512),length:0}}let r=h.headers.get("content-type")||"";if(d&&!i.includes(d))return{status:"incomplete",url:a,final_url:j,content_type:r,hint:"Substring not found, site may need JS rendering",length:i.length,...n?{redirects:n}:{}};let s=i;if(c){let a=function(a,b){if(!b)return null;try{let c;if(b.startsWith("#")){let a=b.slice(1).replace(/[.*+?^${}()|[\]\\]/g,"\\$&");c=RegExp("<[a-z][^>]+id=[\"']"+a+"[\"'][^>]*>([\\s\\S]*?)<\\/[a-z]+>","i")}else if(b.startsWith(".")){let a=b.slice(1).replace(/[.*+?^${}()|[\]\\]/g,"\\$&");c=RegExp("<[a-z][^>]+class=[\"'][^\"']*"+a+"[^\"']*[\"'][^>]*>([\\s\\S]*?)<\\/[a-z]+>","i")}else{let a=b.replace(/[.*+?^${}()|[\]\\]/g,"\\$&");c=RegExp("<"+a+"[^>]*>([\\s\\S]*?)<\\/"+a+">","i")}let d=a.match(c);return d?d[0]:null}catch{return null}}(i,c);a&&(s=a)}try{if("text"===b)o=l(s).slice(0,p);else if("markdown"===b)o=s.replace(/<(script|style|noscript)[\s\S]*?<\/\1>/gi,"").replace(/<h1[^>]*>([\s\S]*?)<\/h1>/gi,(a,b)=>"\n# "+l(b)+"\n").replace(/<h2[^>]*>([\s\S]*?)<\/h2>/gi,(a,b)=>"\n## "+l(b)+"\n").replace(/<h3[^>]*>([\s\S]*?)<\/h3>/gi,(a,b)=>"\n### "+l(b)+"\n").replace(/<h[4-6][^>]*>([\s\S]*?)<\/h[4-6]>/gi,(a,b)=>"\n#### "+l(b)+"\n").replace(/<a[^>]+href=["']([^"']+)["'][^>]*>([\s\S]*?)<\/a>/gi,(a,b,c)=>"["+l(c)+"]("+b+")").replace(/<code[^>]*>([\s\S]*?)<\/code>/gi,(a,b)=>"`"+b+"`").replace(/<pre[^>]*>([\s\S]*?)<\/pre>/gi,(a,b)=>"\n```\n"+l(b)+"\n```\n").replace(/<li[^>]*>([\s\S]*?)<\/li>/gi,(a,b)=>"\n- "+l(b)).replace(/<\/?(p|div|br)[^>]*>/gi,"\n").replace(/<[^>]+>/g," ").replace(/&amp;/g,"&").replace(/&lt;/g,"<").replace(/&gt;/g,">").replace(/&quot;/g,'"').replace(/&#39;/g,"'").replace(/&nbsp;/g," ").replace(/[ \t]+/g," ").replace(/\n{3,}/g,"\n\n").trim().slice(0,p);else o="json-ld"===b?function(a){let b,c=[],d=/<script[^>]+type=["']application\/ld\+json["'][^>]*>([\s\S]*?)<\/script>/gi;for(;null!==(b=d.exec(a));)try{c.push(JSON.parse(b[1]))}catch{}return c}(s):"metadata"===b?function(a){let b,c={},d=a.match(/<title[^>]*>([\s\S]*?)<\/title>/i);d&&(c.title=d[1].replace(/<[^>]+>/g,"").trim());let e=/<meta[^>]+(?:name|property)=["']([^"']+)["'][^>]+content=["']([^"']*)["'][^>]*>/gi;for(;null!==(b=e.exec(a));)c[b[1]]=b[2];let f=/<meta[^>]+content=["']([^"']*)["'][^>]+(?:name|property)=["']([^"']+)["'][^>]*>/gi;for(;null!==(b=f.exec(a));)c[b[2]]||(c[b[2]]=b[1]);return c}(s):s.slice(0,p)}catch{o=s.slice(0,p)}let t=o;return"string"==typeof o&&(t=(0,f.nc)(o)),{status:"ok",url:a,final_url:j,content_type:r,content:t,length:"string"==typeof i?i.length:0,...n?{redirects:n}:{}}}async function n(a){let[b,c]=await Promise.all([m({url:a,extract:"json-ld",max_chars:5e4}),m({url:a,extract:"metadata",max_chars:5e4})]);return{json_ld:Array.isArray(b.content)?b.content:[],metadata:"object"==typeof c.content&&null!==c.content?c.content:{}}}d()}catch(a){d(a)}})},18313:(a,b,c)=>{"use strict";c.d(b,{Hb:()=>n,MK:()=>l,NV:()=>m,Ny:()=>g,_d:()=>p,ab:()=>q,eh:()=>i,rb:()=>h,uB:()=>k,vI:()=>o});let d=["backlog","todo","in_progress","in_review","blocked","done","cancelled"],e=["low","medium","high","urgent"],f=["queued","running","waiting_approval","succeeded","failed","cancelled","timed_out"],g=["task.created","task.updated","task.assigned","task.reassigned","task.status_changed","task.comment_added","task.blocked","task.unblocked","task.completed","task.cancelled","task.child_created"],h=["lifecycle","tool_start","tool_result","log","warning","error","approval_required","delegation_proposed","delegation_completed"],i=["activity.logged","task.updated","task.comment.added","task.assigned","task.reassigned","agent.status","agent.run.queued","agent.run.status","agent.run.event","agent.run.log"],j={backlog:["todo","cancelled"],todo:["in_progress","blocked","cancelled","done"],in_progress:["in_review","blocked","todo","done","cancelled"],in_review:["in_progress","done","blocked","cancelled"],blocked:["todo","in_progress","cancelled"],done:["in_review"],cancelled:["todo"]};function k(a){return"done"===a||"cancelled"===a}function l(a){return["queued","running","waiting_approval"].includes(a)}function m(a,b="todo"){return d.includes(a)?a:b}function n(a,b="medium"){return e.includes(a)?a:b}function o(a,b="queued"){return f.includes(a)?a:b}function p(a,b="activity.logged"){return i.includes(a)?a:b}function q(a,b){if(!(!a||a===b||j[a]?.includes(b)))throw Error(`Illegal task transition: ${a} -> ${b}`)}},18530:a=>{"use strict";a.exports=JSON.parse('{"schema_version":1,"slug":"vendor-onboarding","name":"Vendor Onboarding","version":1,"description":"Standard intake for new vendors. Captures contact + services, runs an automated risk review, gates on buyer sign-off, and packages the onboarding pack.","category":"procurement","source":"marketplace","status":"published","stages":[{"slug":"intake","name":"Vendor intake","kind":"intake_form","config":{"form_schema":{"title":"Vendor Onboarding — Intake","description":"Tell us about the vendor. The risk reviewer will use this to score them.","fields":[{"name":"vendor_name","label":"Vendor company name","type":"text","required":true,"placeholder":"Legal entity name"},{"name":"primary_contact_name","label":"Primary contact name","type":"text","required":true},{"name":"primary_contact_email","label":"Primary contact email","type":"email","required":true},{"name":"country","label":"Headquarters country","type":"select","required":true,"options":["United States","United Kingdom","United Arab Emirates","Singapore","Germany","India","Other"]},{"name":"services","label":"Services offered","type":"textarea","required":true,"placeholder":"Short list of services / products this vendor will deliver."},{"name":"annual_value_usd","label":"Estimated annual contract value (USD)","type":"number","required":true,"min":0},{"name":"references","label":"References (names + companies)","type":"textarea","required":false,"placeholder":"Optional. One reference per line."}]}}},{"slug":"risk-review","name":"Automated risk review","kind":"agent_run","config":{"agent_template_slug":"vendor-risk-reviewer","prompt":"You are a vendor risk reviewer. Given the intake payload, produce a structured risk report. Do not call external services — work from the intake alone. Return strict JSON only, no surrounding prose: { \\"outcome\\": \\"pass\\" | \\"reject\\", \\"overall_risk\\": \\"low\\" | \\"medium\\" | \\"high\\", \\"concerns\\": [string], \\"references_summary\\": string, \\"recommended_action\\": \\"auto_approve\\" | \\"manual_review\\" | \\"reject\\", \\"rationale\\": string }. Set outcome=\\"reject\\" when recommended_action is \\"reject\\" (sanctioned region, missing critical info). Set outcome=\\"pass\\" otherwise — the human-approval stage that follows is the real decision point. Risk tiers: low = clear references + reasonable value, medium = thin references OR value > $250k, high = sanctioned region OR missing services OR value > $1M.","output_schema":"vendor_risk_v1","timeout_ms":60000,"on_outcome":{"pass":"buyer-signoff","reject":"fail"}},"on_pass_stage_slug":"buyer-signoff","on_fail_stage_slug":null},{"slug":"buyer-signoff","name":"Buyer sign-off","kind":"human_approval","config":{"action_type":"process.stage.approve","risk":"medium","summary_template":"Approve onboarding for {{intake.vendor_name}} ({{intake.country}}) — risk {{risk-review.overall_risk}}"},"on_pass_stage_slug":"final-package","on_fail_stage_slug":null},{"slug":"final-package","name":"Onboarding pack","kind":"package","config":{"title_template":"Vendor onboarding pack — {{intake.vendor_name}}","include_stages":["intake","risk-review","buyer-signoff"]}}]}')},18630:(a,b,c)=>{"use strict";c.d(b,{m:()=>f});var d=c(1303),e=c(81553);async function f(a={}){let b=await (0,e.runUpdateCheck)({});if(!b.reachable)return{ok:!1,from:(0,e.YO)(),to:null,applied:!1,message:"npm registry unreachable"};if(!b.behind)return{ok:!0,from:b.current,to:b.latest,applied:!1,message:"already up to date"};let c=await (0,d.applyUpdate)({initiatedBy:"self_update_tool"});return{ok:c.ok,from:c.from,to:b.latest,applied:c.ok,message:c.ok?`updated ${c.from} → v${b.latest}; restart required`:`update failed (exit ${c.code})`}}},19151:(a,b,c)=>{"use strict";c.a(a,async(a,d)=>{try{c.d(b,{A:()=>n,chatWithClaude:()=>j,x:()=>k});var e=c(50832),f=c(65451),g=a([e,f]);[e,f]=g.then?(await g)():g;let l=Number(process.env.MADARX_ANTHROPIC_MAX_RETRIES??4),m=Number(process.env.MADARX_ANTHROPIC_OUTER_RETRIES??3);function h(){let a=(0,f.resolveAnthropicApiKey)();if(!a)throw Error("ANTHROPIC_API_KEY not configured");return new e.default({apiKey:a,maxRetries:l})}let n="claude-sonnet-4-6",o=a=>new Promise(b=>setTimeout(b,a));async function i(a,b){let c;for(let d=0;d<m;d+=1)try{return await a()}catch(e){if(c=e,!function(a){let b=a?.status;return!!(429===b||408===b||409===b||"number"==typeof b&&b>=500||null==b&&(a?.name==="APIConnectionError"||a?.name==="APIConnectionTimeoutError"||/timeout|ECONNRESET|ENOTFOUND|EAI_AGAIN|socket hang up/i.test(String(a?.message||""))))}(e)||d===m-1)throw e;let a=function(a,b){let c=a?.headers?.get?.("retry-after"),d=null!=c?Number(c):NaN;return Number.isFinite(d)&&d>=0?Math.min(1e3*d,3e4):Math.min(500*2**b,8e3)+Math.floor(250*Math.random())}(e,d);console.warn(`[claude] ${b} transient ${e?.status||e?.name||"error"} — retry ${d+1}/${m-1} in ${a}ms`),await o(a)}throw c}async function j(a,b,c=[],d={}){let e=h(),f={model:d.model||n,max_tokens:d.max_tokens||8192,system:b,messages:a};return c.length&&(f.tools=c),d.tool_choice&&(f.tool_choice=d.tool_choice),"number"==typeof d.temperature&&(f.temperature=d.temperature),i(()=>e.messages.create(f),`chat(${f.model})`)}async function k(a,b,c=[],d=n){let e=h(),f={model:d,max_tokens:8192,system:b,messages:a};return c.length&&(f.tools=c),i(()=>e.messages.stream(f),`stream(${d})`)}d()}catch(a){d(a)}})},19348:(a,b,c)=>{"use strict";c.a(a,async(a,d)=>{try{c.d(b,{D4:()=>p,It:()=>q,JF:()=>r}),c(73024);var e=c(34255),f=c(24516),g=c(58282),h=c(73912),i=c(61423),j=a([e,f,g,h,i]);[e,f,g,h,i]=j.then?(await j)():j;let r=["openai","elevenlabs","local"],s="alloy",t=new Set(["alloy","echo","fable","onyx","nova","shimmer"]);function k(){let a=process.env.MADARX_LOCAL_TTS_URL;return a&&/^https?:\/\//i.test(a.trim())?a.trim():null}function l(a,...b){let c=String(a??"");for(let a of b){if(!a)continue;let b=String(a).slice(-4);c=c.split(String(a)).join(`***${b}`)}return c}async function m({text:a,voice:b,model:c,format:d,fetchFn:e}){let g,h=(0,f.getSecret)("OPENAI_API_KEY")||process.env.OPENAI_API_KEY;if(!h)throw Error("OPENAI_API_KEY missing for OpenAI TTS");let i=b&&t.has(b)?b:s,j=c||"tts-1",k=d||"mp3";try{g=await e("https://api.openai.com/v1/audio/speech",{method:"POST",headers:{Authorization:`Bearer ${h}`,"Content-Type":"application/json"},body:JSON.stringify({model:j,voice:i,input:a,format:k})})}catch(a){throw Error(`openai tts failed: ${l(a?.message,h)}`)}if(!g.ok){let a="";try{a=(await g.text()).slice(0,256)}catch{}throw Error(`openai tts http ${g.status}: ${l(a,h)}`)}return{audio_buffer:Buffer.from(await g.arrayBuffer()),mime_type:"wav"===k?"audio/wav":"audio/mpeg",extension:"wav"===k?"wav":"mp3",provider:"openai",voice:i,model:j}}async function n({text:a,voice:b,model:c,format:d,fetchFn:e}){let g,h=(0,f.getSecret)("ELEVENLABS_API_KEY")||process.env.ELEVENLABS_API_KEY;if(!h)throw Error("ELEVENLABS_API_KEY missing for ElevenLabs TTS");let i=b||(0,f.getSecret)("ELEVENLABS_VOICE_ID")||process.env.ELEVENLABS_VOICE_ID||"21m00Tcm4TlvDq8ikWAM",j=c||"eleven_multilingual_v2",k="wav"===d?"pcm_16000":"mp3_44100_128";try{g=await e(`https://api.elevenlabs.io/v1/text-to-speech/${encodeURIComponent(i)}?output_format=${k}`,{method:"POST",headers:{"xi-api-key":h,"Content-Type":"application/json",Accept:"audio/mpeg"},body:JSON.stringify({text:a,model_id:j})})}catch(a){throw Error(`elevenlabs tts failed: ${l(a?.message,h)}`)}if(!g.ok){let a="";try{a=(await g.text()).slice(0,256)}catch{}throw Error(`elevenlabs tts http ${g.status}: ${l(a,h)}`)}return{audio_buffer:Buffer.from(await g.arrayBuffer()),mime_type:k.startsWith("pcm_")?"audio/wav":"audio/mpeg",extension:k.startsWith("pcm_")?"wav":"mp3",provider:"elevenlabs",voice:i,model:j}}async function o({text:a,voice:b,model:c,format:d,fetchFn:e}){let f,g=k();if(!g)throw Error("MADARX_LOCAL_TTS_URL missing for local TTS");let h=d||"wav",i=c||process.env.MADARX_LOCAL_TTS_MODEL||"local",j=b||process.env.MADARX_LOCAL_TTS_VOICE||"default";try{f=await e(g,{method:"POST",headers:{"Content-Type":"application/json",Accept:"mp3"===h?"audio/mpeg,application/json":"audio/wav,audio/*,application/json"},body:JSON.stringify({text:a,voice:j,model:i,format:h})})}catch(a){throw Error(`local tts failed: ${l(a?.message)}`)}if(!f.ok){let a="";try{a=(await f.text()).slice(0,256)}catch{}throw Error(`local tts http ${f.status}: ${a}`)}let m=String(f.headers.get("content-type")||"").toLowerCase();if(m.includes("application/json")){let a;try{a=await f.json()}catch{throw Error("local tts returned invalid JSON")}let b=a?.audio_base64||a?.audio;if(!b)throw Error("local tts JSON must include audio_base64");let c=a.mime_type||a.content_type||("mp3"===h?"audio/mpeg":"audio/wav"),d=a.extension||(String(c).includes("mpeg")||String(c).includes("mp3")?"mp3":"wav");return{audio_buffer:Buffer.from(String(b),"base64"),mime_type:c,extension:d,provider:"local",voice:a.voice||j,model:a.model||i}}let n=Buffer.from(await f.arrayBuffer()),o=m.includes("mpeg")||m.includes("mp3")||"mp3"===h;return{audio_buffer:n,mime_type:m||(o?"audio/mpeg":"audio/wav"),extension:o?"mp3":"wav",provider:"local",voice:j,model:i}}async function p(a={}){let b=String(a.text||"").trim();if(!b)throw Error("text is required");if(b.length>4e3)throw Error("text too long: max 4000 characters");let c=String(a.provider||process.env.MADARX_VOICE_DEFAULT_PROVIDER||process.env.TTS_DEFAULT_PROVIDER||"openai").toLowerCase(),d=r.includes(c)?c:"openai",f=(0,g.N)("voice_speak",a.agent_id??null,a.fetch||fetch),j=await ("elevenlabs"===d?n:"local"===d?o:m)({text:b,voice:a.voice,model:a.model,format:a.format,fetchFn:f}),k=Math.max(500,Math.round(b.length/14*1e3)),l=null;if(a.save_to_disk&&a.project_id){let c=(0,i.U1)(a.project_id);if(c){let a=function(a){let b=(0,e.getDb)(),c=(0,h.dh)(a),d=b.prepare("SELECT * FROM disk_folders WHERE project_id = ? AND parent_id = ? AND name = ? LIMIT 1").get(a,c.id,"voice");return d||(0,h.vV)(a,c.id,"voice")}(c.id),d=b.slice(0,40).replace(/[^A-Za-z0-9]+/g,"-").replace(/^-+|-+$/g,"")||"tts";l=(0,h.QM)(c.id,a.id,{name:`${d}-${Date.now()}.${j.extension}`,buffer:j.audio_buffer,type:j.mime_type},{local_only:!1})}}try{(0,e.getDb)().prepare(`
856
856
  INSERT INTO audit_logs (id, at, type, summary, status, meta)
857
857
  VALUES (?, ?, ?, ?, ?, ?)
858
- `).run((0,e.newId)("audit"),(0,e.nowIso)(),"voice.tts",`TTS ${d} voice=${j.voice} chars=${b.length}`,"complete",JSON.stringify({provider:d,voice:j.voice,model:j.model,text_chars:b.length,audio_bytes:j.audio_buffer.length,disk_file_id:o?.id||null,agent_id:a.agent_id||null}))}catch(a){console.warn("[tts] audit write failed:",a?.message||a)}return{audio_buffer:j.audio_buffer,mime_type:j.mime_type,extension:j.extension,provider:d,voice:j.voice,model:j.model,duration_estimate_ms:k,disk_file:o}}function o(){return{openai:!!((0,f.getSecret)("OPENAI_API_KEY")||process.env.OPENAI_API_KEY),elevenlabs:!!((0,f.getSecret)("ELEVENLABS_API_KEY")||process.env.ELEVENLABS_API_KEY)}}d()}catch(a){d(a)}})},20086:(a,b,c)=>{"use strict";c.a(a,async(a,d)=>{try{c.d(b,{An:()=>h,Bs:()=>g,_w:()=>j,b4:()=>i});var e=c(34255),f=a([e]);function g(a,{scope_key:b,scope_value:c},d={}){let f=(0,e.getDb)(),h=!!d.default_allow,i=f.prepare("SELECT id FROM tool_allowlists WHERE tool_name = ? AND scope_key = ?").all(a,b);return 0===i.length?h?{ok:!0}:{ok:!1,missing_entry:{tool_name:a,scope_key:b,scope_value:c}}:f.prepare("SELECT id FROM tool_allowlists WHERE tool_name = ? AND scope_key = ? AND scope_value = ?").get(a,b,String(c))?{ok:!0}:{ok:!1,missing_entry:{tool_name:a,scope_key:b,scope_value:c}}}function h({tool_name:a,scope_key:b,scope_value:c,label:d}){if(!a)throw Error("tool_name is required");if(!b)throw Error("scope_key is required");if(!c&&0!==c)throw Error("scope_value is required");let f=(0,e.getDb)(),g=(0,e.newId)("tal"),h=(0,e.nowIso)(),i=d?String(d).trim():null;return f.prepare(`
858
+ `).run((0,e.newId)("audit"),(0,e.nowIso)(),"voice.tts",`TTS ${d} voice=${j.voice} chars=${b.length}`,"complete",JSON.stringify({provider:d,voice:j.voice,model:j.model,text_chars:b.length,audio_bytes:j.audio_buffer.length,disk_file_id:l?.id||null,agent_id:a.agent_id||null}))}catch(a){console.warn("[tts] audit write failed:",a?.message||a)}return{audio_buffer:j.audio_buffer,mime_type:j.mime_type,extension:j.extension,provider:d,voice:j.voice,model:j.model,duration_estimate_ms:k,disk_file:l}}function q(){return{openai:!!((0,f.getSecret)("OPENAI_API_KEY")||process.env.OPENAI_API_KEY),elevenlabs:!!((0,f.getSecret)("ELEVENLABS_API_KEY")||process.env.ELEVENLABS_API_KEY),local:!!k()}}d()}catch(a){d(a)}})},20086:(a,b,c)=>{"use strict";c.a(a,async(a,d)=>{try{c.d(b,{An:()=>h,Bs:()=>g,_w:()=>j,b4:()=>i});var e=c(34255),f=a([e]);function g(a,{scope_key:b,scope_value:c},d={}){let f=(0,e.getDb)(),h=!!d.default_allow,i=f.prepare("SELECT id FROM tool_allowlists WHERE tool_name = ? AND scope_key = ?").all(a,b);return 0===i.length?h?{ok:!0}:{ok:!1,missing_entry:{tool_name:a,scope_key:b,scope_value:c}}:f.prepare("SELECT id FROM tool_allowlists WHERE tool_name = ? AND scope_key = ? AND scope_value = ?").get(a,b,String(c))?{ok:!0}:{ok:!1,missing_entry:{tool_name:a,scope_key:b,scope_value:c}}}function h({tool_name:a,scope_key:b,scope_value:c,label:d}){if(!a)throw Error("tool_name is required");if(!b)throw Error("scope_key is required");if(!c&&0!==c)throw Error("scope_value is required");let f=(0,e.getDb)(),g=(0,e.newId)("tal"),h=(0,e.nowIso)(),i=d?String(d).trim():null;return f.prepare(`
859
859
  INSERT INTO tool_allowlists (id, tool_name, scope_key, scope_value, label, created_at)
860
860
  VALUES (?, ?, ?, ?, ?, ?)
861
861
  `).run(g,String(a),String(b),String(c),i,h),f.prepare(`
@@ -1 +1 @@
1
- exports.id=3066,exports.ids=[3066],exports.modules={6974:(a,b,c)=>{Promise.resolve().then(c.bind(c,35271))},35271:(a,b,c)=>{"use strict";c.d(b,{default:()=>d});let d=(0,c(97954).registerClientReference)(function(){throw Error("Attempted to call the default export of \"/home/runner/work/madarx-os/madarx-os/app/components/admin/project-switcher.jsx\" from the server, but it's on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"/home/runner/work/madarx-os/madarx-os/app/components/admin/project-switcher.jsx","default")},62100:(a,b,c)=>{"use strict";c.a(a,async(a,d)=>{try{c.r(b),c.d(b,{"40de292e36176f54a7d30fffebe1a9ce50c0da4028":()=>e.$$RSC_SERVER_ACTION_0});var e=c(91845),f=a([e]);e=(f.then?(await f)():f)[0],d()}catch(a){d(a)}})},86893:(a,b,c)=>{"use strict";c.d(b,{hI:()=>g,iN:()=>f,pp:()=>i,qs:()=>h});var d=c(75338),e=c(35271);function f({kicker:a="madarX OS v1.0",title:b,description:c,actions:f,hideProjectSwitcher:g,children:h}){return(0,d.jsxs)("main",{className:"admin-shell",children:[(0,d.jsxs)("header",{className:"admin-header",children:[(0,d.jsxs)("div",{children:[(0,d.jsx)("span",{className:"admin-kicker",children:a}),(0,d.jsx)("h1",{children:b}),c?(0,d.jsx)("p",{children:c}):null]}),(0,d.jsxs)("div",{className:"admin-header-actions",children:[g?null:(0,d.jsx)(e.default,{}),f]})]}),h]})}function g({label:a,value:b,tone:c}){return(0,d.jsxs)("div",{className:`admin-stat ${c||""}`,children:[(0,d.jsx)("b",{children:b}),(0,d.jsx)("span",{children:a})]})}function h({children:a,tone:b="neutral"}){return(0,d.jsx)("span",{className:`admin-pill ${b}`,children:a})}function i({title:a,children:b}){return(0,d.jsxs)("div",{className:"admin-empty",children:[(0,d.jsx)("b",{children:a}),(0,d.jsx)("p",{children:b})]})}},89670:(a,b,c)=>{Promise.resolve().then(c.bind(c,94657))},91845:(a,b,c)=>{"use strict";c.a(a,async(a,d)=>{try{c.r(b),c.d(b,{$$RSC_SERVER_ACTION_0:()=>u,default:()=>p,dynamic:()=>q,runtime:()=>r});var e=c(75338),f=c(75879);c(68633);var g=c(16780),h=c(82161),i=c(86893),j=c(83963),k=c(60105),l=a([j,k]);[j,k]=l.then?(await l)():l;let q="force-dynamic",r="nodejs",s={executive:"Executive",manager:"Manager",team_lead:"Team Lead",individual_contributor:"Contributor"},t={executive:"mars",manager:"ready",team_lead:"warn",individual_contributor:"neutral"};function m(a=""){return a.split(/\s+/).map(a=>a[0]).filter(Boolean).slice(0,2).join("").toUpperCase()||"\xb7"}let u=async function(a){let b=String(a.get("agent_id")||"").trim();if(!b)return;let c=String(a.get("reports_to")||"").trim(),d={reports_to:""===c?null:c},e=String(a.get("role")||"").trim();e&&(d.role=e);let f=String(a.get("title")||"").trim();(f||a.has("title"))&&(d.title=f||null);try{(0,j.jN)(b,d)}catch(a){console.warn("updateAgentOrg failed",a?.message)}(0,g.revalidatePath)("/org"),(0,g.revalidatePath)("/agents"),(0,h.redirect)("/org")};function n({node:a,workloadById:b}){let c=function(a){if(a.role&&s[a.role])return a.role;let b=a.reports?.length||0;return b>=4?"executive":b>=2?"manager":1===b?"team_lead":"individual_contributor"}(a),d=s[c],f=t[c],g=a.reports?.length||0,h=b.get(a.id),j=Number(h?.active_tasks||0),k=Number(h?.blocked_tasks||0),l=Number(h?.completed_tasks||0),n=a.status||"created";return(0,e.jsxs)("article",{className:`org-card org-card--${c}`,"data-reports":g>0?"has":"none",children:[(0,e.jsxs)("div",{className:"org-card-head",children:[(0,e.jsx)("div",{className:"org-card-avatar","aria-hidden":"true",children:m(a.name)}),(0,e.jsxs)("div",{className:"org-card-identity",children:[(0,e.jsx)("div",{className:"org-card-name",children:a.name}),(0,e.jsx)("div",{className:"org-card-title",children:a.title||a.mission?.slice(0,64)||"No title set"})]})]}),(0,e.jsxs)("div",{className:"org-card-meta",children:[(0,e.jsx)(i.qs,{tone:f,children:d}),(0,e.jsx)(i.qs,{tone:"heartbeat ok"===n?"ready":"terminated"===n?"danger":"neutral",children:n}),g>0?(0,e.jsxs)(i.qs,{tone:"neutral",children:[g," report",1===g?"":"s"]}):null]}),(0,e.jsxs)("dl",{className:"org-card-stats",children:[(0,e.jsxs)("div",{children:[(0,e.jsx)("dt",{children:"Active"}),(0,e.jsx)("dd",{children:j})]}),(0,e.jsxs)("div",{children:[(0,e.jsx)("dt",{children:"Blocked"}),(0,e.jsx)("dd",{className:k?"is-warn":"",children:k})]}),(0,e.jsxs)("div",{children:[(0,e.jsx)("dt",{children:"Done"}),(0,e.jsx)("dd",{children:l})]})]})]})}function o({node:a,workloadById:b}){let c=(a.reports||[]).length>0;return(0,e.jsxs)("li",{className:"org-branch",children:[(0,e.jsx)(n,{node:a,workloadById:b}),c?(0,e.jsx)("ul",{className:"org-children",children:a.reports.map(a=>(0,e.jsx)(o,{node:a,workloadById:b},a.id))}):null]})}function p(){let a=(0,j.zP)(),b=(0,j.hC)(),c=(0,k.vc)(),d=new Map((b.workload||[]).map(a=>[a.agent_id,a])),f=c.filter(a=>c.some(b=>b.reports_to===a.id)).length,g=c.filter(a=>!a.reports_to&&a.id).length;return(0,e.jsxs)(i.iN,{title:"Agent chart",description:"Company-style structure for your agent workforce. Set managers, define roles, and see workload at a glance.",children:[(0,e.jsxs)("section",{className:"admin-stats",children:[(0,e.jsx)(i.hI,{label:"Headcount",value:b.totals.active_agents}),(0,e.jsx)(i.hI,{label:"Leaders",value:f}),(0,e.jsx)(i.hI,{label:"Root nodes",value:g}),(0,e.jsx)(i.hI,{label:"Active tasks",value:b.totals.active_tasks})]}),(0,e.jsxs)("section",{className:"admin-panel",children:[(0,e.jsxs)("div",{className:"admin-panel-head",children:[(0,e.jsx)("span",{children:"Agent chart"}),(0,e.jsx)("small",{children:"Top-down hierarchy. Each card shows role, status, and current workload."})]}),a.length?(0,e.jsx)("div",{className:"org-chart-scroll",children:(0,e.jsx)("ul",{className:"org-chart",children:a.map(a=>(0,e.jsx)(o,{node:a,workloadById:d},a.id))})}):(0,e.jsx)(i.pp,{title:"No agents yet",children:"Create an agent on the Agents page, then come back here to assign managers."})]}),(0,e.jsxs)("section",{className:"admin-grid reports-layout",children:[(0,e.jsxs)("div",{className:"admin-panel",children:[(0,e.jsxs)("div",{className:"admin-panel-head",children:[(0,e.jsx)("span",{children:"Reporting lines"}),(0,e.jsx)("small",{children:"Re-parent any agent. Cycles are blocked automatically."})]}),c.length?(0,e.jsx)("div",{className:"admin-card-list compact",children:c.map(a=>{let b=a.reports_to?c.find(b=>b.id===a.reports_to):null,d=c.filter(b=>b.id!==a.id),f=a.role&&s[a.role]?a.role:"individual_contributor";return(0,e.jsxs)("form",{action:u,className:"org-reporting-row",children:[(0,e.jsx)("input",{type:"hidden",name:"agent_id",value:a.id}),(0,e.jsxs)("div",{className:"org-reporting-identity",children:[(0,e.jsx)("div",{className:"org-card-avatar small","aria-hidden":"true",children:m(a.name)}),(0,e.jsxs)("div",{children:[(0,e.jsx)("div",{className:"org-reporting-name",children:a.name}),(0,e.jsx)("div",{className:"org-reporting-sub",children:b?`Reports to ${b.name}`:"Top of chain"})]})]}),(0,e.jsxs)("div",{className:"org-reporting-fields",children:[(0,e.jsxs)("label",{className:"org-reporting-field",children:[(0,e.jsx)("span",{children:"Title"}),(0,e.jsx)("input",{type:"text",name:"title",defaultValue:a.title||"",placeholder:"e.g. Marketing Manager"})]}),(0,e.jsxs)("label",{className:"org-reporting-field",children:[(0,e.jsx)("span",{children:"Role"}),(0,e.jsx)("select",{name:"role",defaultValue:f,children:Object.entries(s).map(([a,b])=>(0,e.jsx)("option",{value:a,children:b},a))})]}),(0,e.jsxs)("label",{className:"org-reporting-field",children:[(0,e.jsx)("span",{children:"Manager"}),(0,e.jsxs)("select",{name:"reports_to",defaultValue:a.reports_to||"",children:[(0,e.jsx)("option",{value:"",children:"— None (top of chain)"}),d.map(a=>(0,e.jsx)("option",{value:a.id,children:a.name},a.id))]})]}),(0,e.jsx)("button",{className:"admin-button",type:"submit",children:"Save"})]})]},a.id)})}):(0,e.jsx)(i.pp,{title:"No agents yet",children:"Create agents to start building your org."})]}),(0,e.jsxs)("div",{className:"admin-panel",children:[(0,e.jsxs)("div",{className:"admin-panel-head",children:[(0,e.jsx)("span",{children:"Workload by agent"}),(0,e.jsx)("small",{children:"Derived from active tasks."})]}),b.workload.length?(0,e.jsx)("div",{className:"admin-card-list compact",children:b.workload.map(a=>(0,e.jsxs)("div",{className:"admin-record compact",children:[(0,e.jsxs)("div",{className:"admin-record-top",children:[(0,e.jsx)("b",{children:a.agent_name||a.agent_id}),(0,e.jsxs)(i.qs,{tone:a.blocked_tasks?"danger":a.active_tasks?"ready":"neutral",children:[a.active_tasks," active"]})]}),(0,e.jsxs)("p",{children:[a.total_tasks," total \xb7 ",a.blocked_tasks," blocked \xb7 ",a.completed_tasks," complete"]})]},a.agent_id))}):(0,e.jsx)(i.pp,{title:"No workload data",children:"Assign tasks to see workload distribution."})]})]})]})}(0,f.A)(u,"40de292e36176f54a7d30fffebe1a9ce50c0da4028",null),d()}catch(a){d(a)}})},94657:(a,b,c)=>{"use strict";c.d(b,{default:()=>f});var d=c(21124),e=c(38301);function f(){let[a,b]=(0,e.useState)([]),[c,f]=(0,e.useState)("");return(0,d.jsx)("div",{className:"project-switcher","data-project-switcher":!0,children:(0,d.jsxs)("select",{value:c,onChange:a=>{var b;f(b=a.target.value),b?localStorage.setItem("madarx.activeProjectId",b):localStorage.removeItem("madarx.activeProjectId"),window.dispatchEvent(new CustomEvent("madarx:project-change",{detail:{project_id:b||null}}))},"aria-label":"Active project",children:[(0,d.jsx)("option",{value:"",children:"All projects"}),a.map(a=>(0,d.jsx)("option",{value:a.id,children:a.name},a.id))]})})}}};
1
+ exports.id=9860,exports.ids=[9860],exports.modules={6974:(a,b,c)=>{Promise.resolve().then(c.bind(c,35271))},35271:(a,b,c)=>{"use strict";c.d(b,{default:()=>d});let d=(0,c(97954).registerClientReference)(function(){throw Error("Attempted to call the default export of \"/home/runner/work/madarx-os/madarx-os/app/components/admin/project-switcher.jsx\" from the server, but it's on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"/home/runner/work/madarx-os/madarx-os/app/components/admin/project-switcher.jsx","default")},67062:(a,b,c)=>{"use strict";c.a(a,async(a,d)=>{try{c.r(b),c.d(b,{"409cabba6c08f87fc07c9318303154b79619214ef4":()=>e.$$RSC_SERVER_ACTION_0});var e=c(91845),f=a([e]);e=(f.then?(await f)():f)[0],d()}catch(a){d(a)}})},86893:(a,b,c)=>{"use strict";c.d(b,{hI:()=>g,iN:()=>f,pp:()=>i,qs:()=>h});var d=c(75338),e=c(35271);function f({kicker:a="madarX OS v1.0",title:b,description:c,actions:f,hideProjectSwitcher:g,children:h}){return(0,d.jsxs)("main",{className:"admin-shell",children:[(0,d.jsxs)("header",{className:"admin-header",children:[(0,d.jsxs)("div",{children:[(0,d.jsx)("span",{className:"admin-kicker",children:a}),(0,d.jsx)("h1",{children:b}),c?(0,d.jsx)("p",{children:c}):null]}),(0,d.jsxs)("div",{className:"admin-header-actions",children:[g?null:(0,d.jsx)(e.default,{}),f]})]}),h]})}function g({label:a,value:b,tone:c}){return(0,d.jsxs)("div",{className:`admin-stat ${c||""}`,children:[(0,d.jsx)("b",{children:b}),(0,d.jsx)("span",{children:a})]})}function h({children:a,tone:b="neutral"}){return(0,d.jsx)("span",{className:`admin-pill ${b}`,children:a})}function i({title:a,children:b}){return(0,d.jsxs)("div",{className:"admin-empty",children:[(0,d.jsx)("b",{children:a}),(0,d.jsx)("p",{children:b})]})}},89670:(a,b,c)=>{Promise.resolve().then(c.bind(c,94657))},91845:(a,b,c)=>{"use strict";c.a(a,async(a,d)=>{try{c.r(b),c.d(b,{$$RSC_SERVER_ACTION_0:()=>u,default:()=>p,dynamic:()=>q,runtime:()=>r});var e=c(75338),f=c(75879);c(68633);var g=c(16780),h=c(82161),i=c(86893),j=c(83963),k=c(60105),l=a([j,k]);[j,k]=l.then?(await l)():l;let q="force-dynamic",r="nodejs",s={executive:"Executive",manager:"Manager",team_lead:"Team Lead",individual_contributor:"Contributor"},t={executive:"mars",manager:"ready",team_lead:"warn",individual_contributor:"neutral"};function m(a=""){return a.split(/\s+/).map(a=>a[0]).filter(Boolean).slice(0,2).join("").toUpperCase()||"\xb7"}let u=async function(a){let b=String(a.get("agent_id")||"").trim();if(!b)return;let c=String(a.get("reports_to")||"").trim(),d={reports_to:""===c?null:c},e=String(a.get("role")||"").trim();e&&(d.role=e);let f=String(a.get("title")||"").trim();(f||a.has("title"))&&(d.title=f||null);try{(0,j.jN)(b,d)}catch(a){console.warn("updateAgentOrg failed",a?.message)}(0,g.revalidatePath)("/org"),(0,g.revalidatePath)("/agents"),(0,h.redirect)("/org")};function n({node:a,workloadById:b}){let c=function(a){if(a.role&&s[a.role])return a.role;let b=a.reports?.length||0;return b>=4?"executive":b>=2?"manager":1===b?"team_lead":"individual_contributor"}(a),d=s[c],f=t[c],g=a.reports?.length||0,h=b.get(a.id),j=Number(h?.active_tasks||0),k=Number(h?.blocked_tasks||0),l=Number(h?.completed_tasks||0),n=a.status||"created";return(0,e.jsxs)("article",{className:`org-card org-card--${c}`,"data-reports":g>0?"has":"none",children:[(0,e.jsxs)("div",{className:"org-card-head",children:[(0,e.jsx)("div",{className:"org-card-avatar","aria-hidden":"true",children:m(a.name)}),(0,e.jsxs)("div",{className:"org-card-identity",children:[(0,e.jsx)("div",{className:"org-card-name",children:a.name}),(0,e.jsx)("div",{className:"org-card-title",children:a.title||a.mission?.slice(0,64)||"No title set"})]})]}),(0,e.jsxs)("div",{className:"org-card-meta",children:[(0,e.jsx)(i.qs,{tone:f,children:d}),(0,e.jsx)(i.qs,{tone:"heartbeat ok"===n?"ready":"terminated"===n?"danger":"neutral",children:n}),g>0?(0,e.jsxs)(i.qs,{tone:"neutral",children:[g," report",1===g?"":"s"]}):null]}),(0,e.jsxs)("dl",{className:"org-card-stats",children:[(0,e.jsxs)("div",{children:[(0,e.jsx)("dt",{children:"Active"}),(0,e.jsx)("dd",{children:j})]}),(0,e.jsxs)("div",{children:[(0,e.jsx)("dt",{children:"Blocked"}),(0,e.jsx)("dd",{className:k?"is-warn":"",children:k})]}),(0,e.jsxs)("div",{children:[(0,e.jsx)("dt",{children:"Done"}),(0,e.jsx)("dd",{children:l})]})]})]})}function o({node:a,workloadById:b}){let c=(a.reports||[]).length>0;return(0,e.jsxs)("li",{className:"org-branch",children:[(0,e.jsx)(n,{node:a,workloadById:b}),c?(0,e.jsx)("ul",{className:"org-children",children:a.reports.map(a=>(0,e.jsx)(o,{node:a,workloadById:b},a.id))}):null]})}function p(){let a=(0,j.zP)(),b=(0,j.hC)(),c=(0,k.vc)(),d=new Map((b.workload||[]).map(a=>[a.agent_id,a])),f=c.filter(a=>c.some(b=>b.reports_to===a.id)).length,g=c.filter(a=>!a.reports_to&&a.id).length;return(0,e.jsxs)(i.iN,{title:"Agent chart",description:"Company-style structure for your agent workforce. Set managers, define roles, and see workload at a glance.",children:[(0,e.jsxs)("section",{className:"admin-stats",children:[(0,e.jsx)(i.hI,{label:"Headcount",value:b.totals.active_agents}),(0,e.jsx)(i.hI,{label:"Leaders",value:f}),(0,e.jsx)(i.hI,{label:"Root nodes",value:g}),(0,e.jsx)(i.hI,{label:"Active tasks",value:b.totals.active_tasks})]}),(0,e.jsxs)("section",{className:"admin-panel",children:[(0,e.jsxs)("div",{className:"admin-panel-head",children:[(0,e.jsx)("span",{children:"Agent chart"}),(0,e.jsx)("small",{children:"Top-down hierarchy. Each card shows role, status, and current workload."})]}),a.length?(0,e.jsx)("div",{className:"org-chart-scroll",children:(0,e.jsx)("ul",{className:"org-chart",children:a.map(a=>(0,e.jsx)(o,{node:a,workloadById:d},a.id))})}):(0,e.jsx)(i.pp,{title:"No agents yet",children:"Create an agent on the Agents page, then come back here to assign managers."})]}),(0,e.jsxs)("section",{className:"admin-grid reports-layout",children:[(0,e.jsxs)("div",{className:"admin-panel",children:[(0,e.jsxs)("div",{className:"admin-panel-head",children:[(0,e.jsx)("span",{children:"Reporting lines"}),(0,e.jsx)("small",{children:"Re-parent any agent. Cycles are blocked automatically."})]}),c.length?(0,e.jsx)("div",{className:"admin-card-list compact",children:c.map(a=>{let b=a.reports_to?c.find(b=>b.id===a.reports_to):null,d=c.filter(b=>b.id!==a.id),f=a.role&&s[a.role]?a.role:"individual_contributor";return(0,e.jsxs)("form",{action:u,className:"org-reporting-row",children:[(0,e.jsx)("input",{type:"hidden",name:"agent_id",value:a.id}),(0,e.jsxs)("div",{className:"org-reporting-identity",children:[(0,e.jsx)("div",{className:"org-card-avatar small","aria-hidden":"true",children:m(a.name)}),(0,e.jsxs)("div",{children:[(0,e.jsx)("div",{className:"org-reporting-name",children:a.name}),(0,e.jsx)("div",{className:"org-reporting-sub",children:b?`Reports to ${b.name}`:"Top of chain"})]})]}),(0,e.jsxs)("div",{className:"org-reporting-fields",children:[(0,e.jsxs)("label",{className:"org-reporting-field",children:[(0,e.jsx)("span",{children:"Title"}),(0,e.jsx)("input",{type:"text",name:"title",defaultValue:a.title||"",placeholder:"e.g. Marketing Manager"})]}),(0,e.jsxs)("label",{className:"org-reporting-field",children:[(0,e.jsx)("span",{children:"Role"}),(0,e.jsx)("select",{name:"role",defaultValue:f,children:Object.entries(s).map(([a,b])=>(0,e.jsx)("option",{value:a,children:b},a))})]}),(0,e.jsxs)("label",{className:"org-reporting-field",children:[(0,e.jsx)("span",{children:"Manager"}),(0,e.jsxs)("select",{name:"reports_to",defaultValue:a.reports_to||"",children:[(0,e.jsx)("option",{value:"",children:"— None (top of chain)"}),d.map(a=>(0,e.jsx)("option",{value:a.id,children:a.name},a.id))]})]}),(0,e.jsx)("button",{className:"admin-button",type:"submit",children:"Save"})]})]},a.id)})}):(0,e.jsx)(i.pp,{title:"No agents yet",children:"Create agents to start building your org."})]}),(0,e.jsxs)("div",{className:"admin-panel",children:[(0,e.jsxs)("div",{className:"admin-panel-head",children:[(0,e.jsx)("span",{children:"Workload by agent"}),(0,e.jsx)("small",{children:"Derived from active tasks."})]}),b.workload.length?(0,e.jsx)("div",{className:"admin-card-list compact",children:b.workload.map(a=>(0,e.jsxs)("div",{className:"admin-record compact",children:[(0,e.jsxs)("div",{className:"admin-record-top",children:[(0,e.jsx)("b",{children:a.agent_name||a.agent_id}),(0,e.jsxs)(i.qs,{tone:a.blocked_tasks?"danger":a.active_tasks?"ready":"neutral",children:[a.active_tasks," active"]})]}),(0,e.jsxs)("p",{children:[a.total_tasks," total \xb7 ",a.blocked_tasks," blocked \xb7 ",a.completed_tasks," complete"]})]},a.agent_id))}):(0,e.jsx)(i.pp,{title:"No workload data",children:"Assign tasks to see workload distribution."})]})]})]})}(0,f.A)(u,"409cabba6c08f87fc07c9318303154b79619214ef4",null),d()}catch(a){d(a)}})},94657:(a,b,c)=>{"use strict";c.d(b,{default:()=>f});var d=c(21124),e=c(38301);function f(){let[a,b]=(0,e.useState)([]),[c,f]=(0,e.useState)("");return(0,d.jsx)("div",{className:"project-switcher","data-project-switcher":!0,children:(0,d.jsxs)("select",{value:c,onChange:a=>{var b;f(b=a.target.value),b?localStorage.setItem("madarx.activeProjectId",b):localStorage.removeItem("madarx.activeProjectId"),window.dispatchEvent(new CustomEvent("madarx:project-change",{detail:{project_id:b||null}}))},"aria-label":"Active project",children:[(0,d.jsx)("option",{value:"",children:"All projects"}),a.map(a=>(0,d.jsx)("option",{value:a.id,children:a.name},a.id))]})})}}};