madarx 2.9.10 → 2.9.11

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 (311) hide show
  1. package/.next/standalone/.next/BUILD_ID +1 -1
  2. package/.next/standalone/.next/app-build-manifest.json +365 -365
  3. package/.next/standalone/.next/app-path-routes-manifest.json +95 -95
  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 +1 -1
  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 +2 -2
  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/chat/sessions/[id]/route_client-reference-manifest.js +1 -1
  49. package/.next/standalone/.next/server/app/api/chat/sessions/route_client-reference-manifest.js +1 -1
  50. package/.next/standalone/.next/server/app/api/config/env/route_client-reference-manifest.js +1 -1
  51. package/.next/standalone/.next/server/app/api/config/route_client-reference-manifest.js +1 -1
  52. package/.next/standalone/.next/server/app/api/connections/[service]/route_client-reference-manifest.js +1 -1
  53. package/.next/standalone/.next/server/app/api/connections/[service]/verify/route_client-reference-manifest.js +1 -1
  54. package/.next/standalone/.next/server/app/api/connections/route_client-reference-manifest.js +1 -1
  55. package/.next/standalone/.next/server/app/api/cron/tick/route_client-reference-manifest.js +1 -1
  56. package/.next/standalone/.next/server/app/api/dashboard/spaces/[id]/move/route_client-reference-manifest.js +1 -1
  57. package/.next/standalone/.next/server/app/api/dashboard/spaces/[id]/route_client-reference-manifest.js +1 -1
  58. package/.next/standalone/.next/server/app/api/dashboard/spaces/[id]/share-link/[linkId]/route_client-reference-manifest.js +1 -1
  59. package/.next/standalone/.next/server/app/api/dashboard/spaces/[id]/share-link/route_client-reference-manifest.js +1 -1
  60. package/.next/standalone/.next/server/app/api/dashboard/spaces/import/route_client-reference-manifest.js +1 -1
  61. package/.next/standalone/.next/server/app/api/dashboard/spaces/route_client-reference-manifest.js +1 -1
  62. package/.next/standalone/.next/server/app/api/disk/files/[id]/blob/route_client-reference-manifest.js +1 -1
  63. package/.next/standalone/.next/server/app/api/disk/files/[id]/route_client-reference-manifest.js +1 -1
  64. package/.next/standalone/.next/server/app/api/disk/files/[id]/transcribe/route_client-reference-manifest.js +1 -1
  65. package/.next/standalone/.next/server/app/api/disk/files/route_client-reference-manifest.js +1 -1
  66. package/.next/standalone/.next/server/app/api/disk/folders/route_client-reference-manifest.js +1 -1
  67. package/.next/standalone/.next/server/app/api/events/since/[cursor]/route_client-reference-manifest.js +1 -1
  68. package/.next/standalone/.next/server/app/api/events/stream/route_client-reference-manifest.js +1 -1
  69. package/.next/standalone/.next/server/app/api/fs/create-folder/route_client-reference-manifest.js +1 -1
  70. package/.next/standalone/.next/server/app/api/fs/pick-folder/route_client-reference-manifest.js +1 -1
  71. package/.next/standalone/.next/server/app/api/hail/engagements/[id]/blueprint/route_client-reference-manifest.js +1 -1
  72. package/.next/standalone/.next/server/app/api/hail/engagements/[id]/diagnostic/route_client-reference-manifest.js +1 -1
  73. package/.next/standalone/.next/server/app/api/hail/engagements/[id]/governance/route_client-reference-manifest.js +1 -1
  74. package/.next/standalone/.next/server/app/api/hail/engagements/[id]/interview/route_client-reference-manifest.js +1 -1
  75. package/.next/standalone/.next/server/app/api/hail/engagements/[id]/pilot/route_client-reference-manifest.js +1 -1
  76. package/.next/standalone/.next/server/app/api/hail/engagements/[id]/quarterly/route_client-reference-manifest.js +1 -1
  77. package/.next/standalone/.next/server/app/api/hail/engagements/[id]/route_client-reference-manifest.js +1 -1
  78. package/.next/standalone/.next/server/app/api/hail/engagements/[id]/setup-package/route_client-reference-manifest.js +1 -1
  79. package/.next/standalone/.next/server/app/api/hail/engagements/route_client-reference-manifest.js +1 -1
  80. package/.next/standalone/.next/server/app/api/hail/interviews/[id]/responses/route_client-reference-manifest.js +1 -1
  81. package/.next/standalone/.next/server/app/api/hail/interviews/[id]/route_client-reference-manifest.js +1 -1
  82. package/.next/standalone/.next/server/app/api/hail/setup-packages/[id]/apply/route_client-reference-manifest.js +1 -1
  83. package/.next/standalone/.next/server/app/api/hail/setup-packages/validate/route_client-reference-manifest.js +1 -1
  84. package/.next/standalone/.next/server/app/api/heartbeat/tick/route_client-reference-manifest.js +1 -1
  85. package/.next/standalone/.next/server/app/api/heartbeat/worker/route_client-reference-manifest.js +1 -1
  86. package/.next/standalone/.next/server/app/api/help/route_client-reference-manifest.js +1 -1
  87. package/.next/standalone/.next/server/app/api/hermes/jobs/[id]/events/route_client-reference-manifest.js +1 -1
  88. package/.next/standalone/.next/server/app/api/hermes/jobs/[id]/route_client-reference-manifest.js +1 -1
  89. package/.next/standalone/.next/server/app/api/hermes/jobs/route_client-reference-manifest.js +1 -1
  90. package/.next/standalone/.next/server/app/api/integrations/google/callback/route_client-reference-manifest.js +1 -1
  91. package/.next/standalone/.next/server/app/api/integrations/google/oauth/route_client-reference-manifest.js +1 -1
  92. package/.next/standalone/.next/server/app/api/marketplace/[id]/route_client-reference-manifest.js +1 -1
  93. package/.next/standalone/.next/server/app/api/marketplace/open-design/route_client-reference-manifest.js +1 -1
  94. package/.next/standalone/.next/server/app/api/marketplace/route_client-reference-manifest.js +1 -1
  95. package/.next/standalone/.next/server/app/api/mines/import-roots/route_client-reference-manifest.js +1 -1
  96. package/.next/standalone/.next/server/app/api/mines/portfolio/route_client-reference-manifest.js +1 -1
  97. package/.next/standalone/.next/server/app/api/mines/projects/[id]/chunks/route_client-reference-manifest.js +1 -1
  98. package/.next/standalone/.next/server/app/api/mines/projects/[id]/diligence/route_client-reference-manifest.js +1 -1
  99. package/.next/standalone/.next/server/app/api/mines/projects/[id]/import/route_client-reference-manifest.js +1 -1
  100. package/.next/standalone/.next/server/app/api/mines/projects/[id]/publish/route_client-reference-manifest.js +1 -1
  101. package/.next/standalone/.next/server/app/api/mines/projects/route_client-reference-manifest.js +1 -1
  102. package/.next/standalone/.next/server/app/api/missions/route_client-reference-manifest.js +1 -1
  103. package/.next/standalone/.next/server/app/api/models/route_client-reference-manifest.js +1 -1
  104. package/.next/standalone/.next/server/app/api/onboarding/blueprint/route_client-reference-manifest.js +1 -1
  105. package/.next/standalone/.next/server/app/api/onboarding/launch/route_client-reference-manifest.js +1 -1
  106. package/.next/standalone/.next/server/app/api/orchestrator/command/route_client-reference-manifest.js +1 -1
  107. package/.next/standalone/.next/server/app/api/orchestrator/stream/route_client-reference-manifest.js +1 -1
  108. package/.next/standalone/.next/server/app/api/org/route_client-reference-manifest.js +1 -1
  109. package/.next/standalone/.next/server/app/api/orgs/[id]/invites/[inviteId]/route_client-reference-manifest.js +1 -1
  110. package/.next/standalone/.next/server/app/api/orgs/[id]/invites/route_client-reference-manifest.js +1 -1
  111. package/.next/standalone/.next/server/app/api/orgs/[id]/members/[userId]/role/route_client-reference-manifest.js +1 -1
  112. package/.next/standalone/.next/server/app/api/orgs/[id]/members/[userId]/route_client-reference-manifest.js +1 -1
  113. package/.next/standalone/.next/server/app/api/orgs/[id]/members/route_client-reference-manifest.js +1 -1
  114. package/.next/standalone/.next/server/app/api/orgs/[id]/route_client-reference-manifest.js +1 -1
  115. package/.next/standalone/.next/server/app/api/orgs/invites/pending/route_client-reference-manifest.js +1 -1
  116. package/.next/standalone/.next/server/app/api/orgs/join/route_client-reference-manifest.js +1 -1
  117. package/.next/standalone/.next/server/app/api/orgs/route_client-reference-manifest.js +1 -1
  118. package/.next/standalone/.next/server/app/api/printing-press/clis/route_client-reference-manifest.js +1 -1
  119. package/.next/standalone/.next/server/app/api/printing-press/install/route_client-reference-manifest.js +1 -1
  120. package/.next/standalone/.next/server/app/api/printing-press/security-mode/route_client-reference-manifest.js +1 -1
  121. package/.next/standalone/.next/server/app/api/privacy/config/route_client-reference-manifest.js +1 -1
  122. package/.next/standalone/.next/server/app/api/privacy/verify/route_client-reference-manifest.js +1 -1
  123. package/.next/standalone/.next/server/app/api/processes/[id]/route_client-reference-manifest.js +1 -1
  124. package/.next/standalone/.next/server/app/api/processes/[id]/share-link/route_client-reference-manifest.js +1 -1
  125. package/.next/standalone/.next/server/app/api/processes/[id]/stages/[stageId]/override/route_client-reference-manifest.js +1 -1
  126. package/.next/standalone/.next/server/app/api/processes/[id]/stages/[stageId]/retry/route_client-reference-manifest.js +1 -1
  127. package/.next/standalone/.next/server/app/api/processes/[id]/stages/[stageId]/submit/route_client-reference-manifest.js +1 -1
  128. package/.next/standalone/.next/server/app/api/processes/definitions/[slug]/route_client-reference-manifest.js +1 -1
  129. package/.next/standalone/.next/server/app/api/processes/definitions/[slug]/settings/route_client-reference-manifest.js +1 -1
  130. package/.next/standalone/.next/server/app/api/processes/definitions/route_client-reference-manifest.js +1 -1
  131. package/.next/standalone/.next/server/app/api/processes/definitions/validate/route_client-reference-manifest.js +1 -1
  132. package/.next/standalone/.next/server/app/api/processes/route_client-reference-manifest.js +1 -1
  133. package/.next/standalone/.next/server/app/api/processes/start-and-route/route_client-reference-manifest.js +1 -1
  134. package/.next/standalone/.next/server/app/api/projects/[slug]/library/route_client-reference-manifest.js +1 -1
  135. package/.next/standalone/.next/server/app/api/projects/[slug]/route_client-reference-manifest.js +1 -1
  136. package/.next/standalone/.next/server/app/api/projects/route_client-reference-manifest.js +1 -1
  137. package/.next/standalone/.next/server/app/api/runs/approve-claude-run/route_client-reference-manifest.js +1 -1
  138. package/.next/standalone/.next/server/app/api/runs/claude-code-dry-run/route_client-reference-manifest.js +1 -1
  139. package/.next/standalone/.next/server/app/api/runs/competitor-report/route_client-reference-manifest.js +1 -1
  140. package/.next/standalone/.next/server/app/api/runs/engine-ping/route_client-reference-manifest.js +1 -1
  141. package/.next/standalone/.next/server/app/api/runs/marketing-plan/route_client-reference-manifest.js +1 -1
  142. package/.next/standalone/.next/server/app/api/schedules/upsert/route_client-reference-manifest.js +1 -1
  143. package/.next/standalone/.next/server/app/api/secrets/[name]/route_client-reference-manifest.js +1 -1
  144. package/.next/standalone/.next/server/app/api/secrets/route_client-reference-manifest.js +1 -1
  145. package/.next/standalone/.next/server/app/api/settings/trust-mode/route_client-reference-manifest.js +1 -1
  146. package/.next/standalone/.next/server/app/api/share/[token]/otp/route_client-reference-manifest.js +1 -1
  147. package/.next/standalone/.next/server/app/api/share/[token]/route_client-reference-manifest.js +1 -1
  148. package/.next/standalone/.next/server/app/api/share/[token]/verify/route_client-reference-manifest.js +1 -1
  149. package/.next/standalone/.next/server/app/api/share/space/[token]/otp/route_client-reference-manifest.js +1 -1
  150. package/.next/standalone/.next/server/app/api/share/space/[token]/route_client-reference-manifest.js +1 -1
  151. package/.next/standalone/.next/server/app/api/share/space/[token]/verify/route_client-reference-manifest.js +1 -1
  152. package/.next/standalone/.next/server/app/api/shared/spaces/[id]/acl/route_client-reference-manifest.js +1 -1
  153. package/.next/standalone/.next/server/app/api/shared/spaces/publish/route_client-reference-manifest.js +1 -1
  154. package/.next/standalone/.next/server/app/api/shared/spaces/route_client-reference-manifest.js +1 -1
  155. package/.next/standalone/.next/server/app/api/shared/spaces/status/route_client-reference-manifest.js +1 -1
  156. package/.next/standalone/.next/server/app/api/shared/spaces/unpublish/route_client-reference-manifest.js +1 -1
  157. package/.next/standalone/.next/server/app/api/state/route_client-reference-manifest.js +1 -1
  158. package/.next/standalone/.next/server/app/api/system/update/route_client-reference-manifest.js +1 -1
  159. package/.next/standalone/.next/server/app/api/tasks/[id]/active-run/route_client-reference-manifest.js +1 -1
  160. package/.next/standalone/.next/server/app/api/tasks/[id]/attachments/route_client-reference-manifest.js +1 -1
  161. package/.next/standalone/.next/server/app/api/tasks/[id]/checklist/[itemId]/route_client-reference-manifest.js +1 -1
  162. package/.next/standalone/.next/server/app/api/tasks/[id]/checklist/route_client-reference-manifest.js +1 -1
  163. package/.next/standalone/.next/server/app/api/tasks/[id]/checkout/route_client-reference-manifest.js +1 -1
  164. package/.next/standalone/.next/server/app/api/tasks/[id]/children/route_client-reference-manifest.js +1 -1
  165. package/.next/standalone/.next/server/app/api/tasks/[id]/comments/route_client-reference-manifest.js +1 -1
  166. package/.next/standalone/.next/server/app/api/tasks/[id]/events/route_client-reference-manifest.js +1 -1
  167. package/.next/standalone/.next/server/app/api/tasks/[id]/live-runs/route_client-reference-manifest.js +1 -1
  168. package/.next/standalone/.next/server/app/api/tasks/[id]/release/route_client-reference-manifest.js +1 -1
  169. package/.next/standalone/.next/server/app/api/tasks/[id]/route_client-reference-manifest.js +1 -1
  170. package/.next/standalone/.next/server/app/api/tasks/route_client-reference-manifest.js +1 -1
  171. package/.next/standalone/.next/server/app/api/tool-allowlists/[id]/route_client-reference-manifest.js +1 -1
  172. package/.next/standalone/.next/server/app/api/tool-allowlists/route_client-reference-manifest.js +1 -1
  173. package/.next/standalone/.next/server/app/api/tool-egress/route_client-reference-manifest.js +1 -1
  174. package/.next/standalone/.next/server/app/api/tools/[name]/approve/route_client-reference-manifest.js +1 -1
  175. package/.next/standalone/.next/server/app/api/tools/[name]/route_client-reference-manifest.js +1 -1
  176. package/.next/standalone/.next/server/app/api/tools/route_client-reference-manifest.js +1 -1
  177. package/.next/standalone/.next/server/app/api/transcripts/route_client-reference-manifest.js +1 -1
  178. package/.next/standalone/.next/server/app/api/voice/providers/route_client-reference-manifest.js +1 -1
  179. package/.next/standalone/.next/server/app/api/voice/realtime/context/route_client-reference-manifest.js +1 -1
  180. package/.next/standalone/.next/server/app/api/voice/realtime/session/route_client-reference-manifest.js +1 -1
  181. package/.next/standalone/.next/server/app/api/voice/realtime/tool-result/route_client-reference-manifest.js +1 -1
  182. package/.next/standalone/.next/server/app/api/voice/realtime/tools/route_client-reference-manifest.js +1 -1
  183. package/.next/standalone/.next/server/app/api/voice/tts/route_client-reference-manifest.js +1 -1
  184. package/.next/standalone/.next/server/app/api/whatsapp/allowlist/route_client-reference-manifest.js +1 -1
  185. package/.next/standalone/.next/server/app/api/whatsapp/messages/route_client-reference-manifest.js +1 -1
  186. package/.next/standalone/.next/server/app/api/whatsapp/qr/route_client-reference-manifest.js +1 -1
  187. package/.next/standalone/.next/server/app/api/whatsapp/send/route_client-reference-manifest.js +1 -1
  188. package/.next/standalone/.next/server/app/api/whatsapp/status/route_client-reference-manifest.js +1 -1
  189. package/.next/standalone/.next/server/app/approvals/page.js +2 -2
  190. package/.next/standalone/.next/server/app/approvals/page_client-reference-manifest.js +1 -1
  191. package/.next/standalone/.next/server/app/architecture/page_client-reference-manifest.js +1 -1
  192. package/.next/standalone/.next/server/app/architecture.html +2 -2
  193. package/.next/standalone/.next/server/app/architecture.rsc +1 -1
  194. package/.next/standalone/.next/server/app/audit/live/page_client-reference-manifest.js +1 -1
  195. package/.next/standalone/.next/server/app/audit/page_client-reference-manifest.js +1 -1
  196. package/.next/standalone/.next/server/app/brand/page_client-reference-manifest.js +1 -1
  197. package/.next/standalone/.next/server/app/brand.html +1 -1
  198. package/.next/standalone/.next/server/app/brand.rsc +1 -1
  199. package/.next/standalone/.next/server/app/disk/page_client-reference-manifest.js +1 -1
  200. package/.next/standalone/.next/server/app/federated-ai/page_client-reference-manifest.js +1 -1
  201. package/.next/standalone/.next/server/app/federated-ai.html +2 -2
  202. package/.next/standalone/.next/server/app/federated-ai.rsc +1 -1
  203. package/.next/standalone/.next/server/app/hail/[id]/governance/page_client-reference-manifest.js +1 -1
  204. package/.next/standalone/.next/server/app/hail/[id]/interview/page.js +2 -2
  205. package/.next/standalone/.next/server/app/hail/[id]/interview/page_client-reference-manifest.js +1 -1
  206. package/.next/standalone/.next/server/app/hail/[id]/page.js +2 -2
  207. package/.next/standalone/.next/server/app/hail/[id]/page_client-reference-manifest.js +1 -1
  208. package/.next/standalone/.next/server/app/hail/[id]/setup/page.js +2 -2
  209. package/.next/standalone/.next/server/app/hail/[id]/setup/page_client-reference-manifest.js +1 -1
  210. package/.next/standalone/.next/server/app/hail/page.js +3 -3
  211. package/.next/standalone/.next/server/app/hail/page_client-reference-manifest.js +1 -1
  212. package/.next/standalone/.next/server/app/help/[slug]/page_client-reference-manifest.js +1 -1
  213. package/.next/standalone/.next/server/app/help/page_client-reference-manifest.js +1 -1
  214. package/.next/standalone/.next/server/app/index.html +2 -2
  215. package/.next/standalone/.next/server/app/index.rsc +1 -1
  216. package/.next/standalone/.next/server/app/join/page_client-reference-manifest.js +1 -1
  217. package/.next/standalone/.next/server/app/join.html +1 -1
  218. package/.next/standalone/.next/server/app/join.rsc +1 -1
  219. package/.next/standalone/.next/server/app/login/page_client-reference-manifest.js +1 -1
  220. package/.next/standalone/.next/server/app/marketplace/page.js +2 -2
  221. package/.next/standalone/.next/server/app/marketplace/page_client-reference-manifest.js +1 -1
  222. package/.next/standalone/.next/server/app/mines/[projectId]/page_client-reference-manifest.js +1 -1
  223. package/.next/standalone/.next/server/app/mines/[projectId]/results/page_client-reference-manifest.js +1 -1
  224. package/.next/standalone/.next/server/app/mines/page_client-reference-manifest.js +1 -1
  225. package/.next/standalone/.next/server/app/missions/page.js +2 -2
  226. package/.next/standalone/.next/server/app/missions/page_client-reference-manifest.js +1 -1
  227. package/.next/standalone/.next/server/app/onboarding/org/page_client-reference-manifest.js +1 -1
  228. package/.next/standalone/.next/server/app/onboarding/page_client-reference-manifest.js +1 -1
  229. package/.next/standalone/.next/server/app/onboarding.html +2 -2
  230. package/.next/standalone/.next/server/app/onboarding.rsc +1 -1
  231. package/.next/standalone/.next/server/app/org/page.js +1 -1
  232. package/.next/standalone/.next/server/app/org/page.js.nft.json +1 -1
  233. package/.next/standalone/.next/server/app/org/page_client-reference-manifest.js +1 -1
  234. package/.next/standalone/.next/server/app/page_client-reference-manifest.js +1 -1
  235. package/.next/standalone/.next/server/app/projects/[slug]/log/page_client-reference-manifest.js +1 -1
  236. package/.next/standalone/.next/server/app/projects/[slug]/page_client-reference-manifest.js +1 -1
  237. package/.next/standalone/.next/server/app/projects/new/page.js +2 -2
  238. package/.next/standalone/.next/server/app/projects/new/page_client-reference-manifest.js +1 -1
  239. package/.next/standalone/.next/server/app/projects/new.html +1 -1
  240. package/.next/standalone/.next/server/app/projects/new.rsc +2 -2
  241. package/.next/standalone/.next/server/app/projects/page.js +11 -11
  242. package/.next/standalone/.next/server/app/projects/page_client-reference-manifest.js +1 -1
  243. package/.next/standalone/.next/server/app/reports/[file]/route_client-reference-manifest.js +1 -1
  244. package/.next/standalone/.next/server/app/reports/page_client-reference-manifest.js +1 -1
  245. package/.next/standalone/.next/server/app/runtime/page_client-reference-manifest.js +1 -1
  246. package/.next/standalone/.next/server/app/schedules/page.js +1 -1
  247. package/.next/standalone/.next/server/app/schedules/page_client-reference-manifest.js +1 -1
  248. package/.next/standalone/.next/server/app/settings/account/page_client-reference-manifest.js +1 -1
  249. package/.next/standalone/.next/server/app/settings/advanced/page_client-reference-manifest.js +1 -1
  250. package/.next/standalone/.next/server/app/settings/appearance/page_client-reference-manifest.js +1 -1
  251. package/.next/standalone/.next/server/app/settings/brand/page_client-reference-manifest.js +1 -1
  252. package/.next/standalone/.next/server/app/settings/brand.html +2 -2
  253. package/.next/standalone/.next/server/app/settings/brand.rsc +1 -1
  254. package/.next/standalone/.next/server/app/settings/connectors/page_client-reference-manifest.js +1 -1
  255. package/.next/standalone/.next/server/app/settings/engines/page_client-reference-manifest.js +1 -1
  256. package/.next/standalone/.next/server/app/settings/onboarding/page_client-reference-manifest.js +1 -1
  257. package/.next/standalone/.next/server/app/settings/onboarding.html +2 -2
  258. package/.next/standalone/.next/server/app/settings/onboarding.rsc +1 -1
  259. package/.next/standalone/.next/server/app/settings/organization/page.js +1 -1
  260. package/.next/standalone/.next/server/app/settings/organization/page.js.nft.json +1 -1
  261. package/.next/standalone/.next/server/app/settings/organization/page_client-reference-manifest.js +1 -1
  262. package/.next/standalone/.next/server/app/settings/page_client-reference-manifest.js +1 -1
  263. package/.next/standalone/.next/server/app/settings/runtime/page_client-reference-manifest.js +1 -1
  264. package/.next/standalone/.next/server/app/settings/tools/page_client-reference-manifest.js +1 -1
  265. package/.next/standalone/.next/server/app/settings.html +2 -2
  266. package/.next/standalone/.next/server/app/settings.rsc +1 -1
  267. package/.next/standalone/.next/server/app/share/[token]/page_client-reference-manifest.js +1 -1
  268. package/.next/standalone/.next/server/app/share/space/[token]/page_client-reference-manifest.js +1 -1
  269. package/.next/standalone/.next/server/app/tasks/[id]/page.js +2 -2
  270. package/.next/standalone/.next/server/app/tasks/[id]/page_client-reference-manifest.js +1 -1
  271. package/.next/standalone/.next/server/app/tasks/page.js +2 -2
  272. package/.next/standalone/.next/server/app/tasks/page_client-reference-manifest.js +1 -1
  273. package/.next/standalone/.next/server/app/team/[agentId]/page_client-reference-manifest.js +1 -1
  274. package/.next/standalone/.next/server/app/team/page_client-reference-manifest.js +1 -1
  275. package/.next/standalone/.next/server/app/tools/page_client-reference-manifest.js +1 -1
  276. package/.next/standalone/.next/server/app/whatsapp/page_client-reference-manifest.js +1 -1
  277. package/.next/standalone/.next/server/app/whatsapp.html +1 -1
  278. package/.next/standalone/.next/server/app/whatsapp.rsc +1 -1
  279. package/.next/standalone/.next/server/app/workflows/[caseId]/page.js +1 -1
  280. package/.next/standalone/.next/server/app/workflows/[caseId]/page_client-reference-manifest.js +1 -1
  281. package/.next/standalone/.next/server/app/workflows/new/[caseId]/page_client-reference-manifest.js +1 -1
  282. package/.next/standalone/.next/server/app/workflows/new/definition/page_client-reference-manifest.js +1 -1
  283. package/.next/standalone/.next/server/app/workflows/new/page_client-reference-manifest.js +1 -1
  284. package/.next/standalone/.next/server/app/workflows/page_client-reference-manifest.js +1 -1
  285. package/.next/standalone/.next/server/app/workflows/share/[caseId]/page_client-reference-manifest.js +1 -1
  286. package/.next/standalone/.next/server/app-paths-manifest.json +95 -95
  287. package/.next/standalone/.next/server/chunks/1699.js +3 -3
  288. package/.next/standalone/.next/server/chunks/9838.js +1 -0
  289. package/.next/standalone/.next/server/functions-config-manifest.json +48 -48
  290. package/.next/standalone/.next/server/middleware-manifest.json +5 -5
  291. package/.next/standalone/.next/server/pages/404.html +1 -1
  292. package/.next/standalone/.next/server/pages/500.html +1 -1
  293. package/.next/standalone/.next/server/server-reference-manifest.js +1 -1
  294. package/.next/standalone/.next/server/server-reference-manifest.json +1 -1
  295. package/.next/standalone/.next/static/chunks/app/projects/page-d79be5eee8055790.js +1 -0
  296. package/.next/standalone/data/.artifacts-migrated-v1 +1 -1
  297. package/.next/standalone/data/.default-project-seeded +1 -1
  298. package/.next/standalone/data/madarx.sqlite +0 -0
  299. package/.next/standalone/data/madarx.sqlite-shm +0 -0
  300. package/.next/standalone/data/madarx.sqlite-wal +0 -0
  301. package/.next/standalone/package.json +1 -1
  302. package/.next/static/chunks/app/projects/page-d79be5eee8055790.js +1 -0
  303. package/lib/agent-engines.js +101 -12
  304. package/package.json +1 -1
  305. package/.next/standalone/.next/server/chunks/9529.js +0 -1
  306. package/.next/standalone/.next/static/chunks/app/projects/page-3ceae5509d4021ea.js +0 -1
  307. package/.next/static/chunks/app/projects/page-3ceae5509d4021ea.js +0 -1
  308. /package/.next/standalone/.next/static/{djmJKoDEHJKOoTVF49zJN → BUIr7wYicmHyHGx6KK3SN}/_buildManifest.js +0 -0
  309. /package/.next/standalone/.next/static/{djmJKoDEHJKOoTVF49zJN → BUIr7wYicmHyHGx6KK3SN}/_ssgManifest.js +0 -0
  310. /package/.next/static/{djmJKoDEHJKOoTVF49zJN → BUIr7wYicmHyHGx6KK3SN}/_buildManifest.js +0 -0
  311. /package/.next/static/{djmJKoDEHJKOoTVF49zJN → BUIr7wYicmHyHGx6KK3SN}/_ssgManifest.js +0 -0
@@ -309,7 +309,7 @@ MADARX_MASTER_KEY=${b}
309
309
  ORDER BY created_at DESC
310
310
  `).all("mines_data_import","directory_root",b,b).map(a=>({id:a.id,root_path:a.root_path,label:a.label||f.basename(a.root_path)||a.root_path,created_at:a.created_at,org_id:a.org_id||b,created_by_user_id:a.created_by_user_id||null}))})(b).some(a=>{let b=f.resolve(a.root_path),d=f.relative(b,c);return""===d||!!d&&!d.startsWith("..")&&!f.isAbsolute(d)})}d()}catch(a){d(a)}})},10407:(a,b,c)=>{"use strict";a.exports=c(49754).vendored["react-rsc"].ReactDOM},10846:a=>{"use strict";a.exports=require("next/dist/compiled/next-server/app-page.runtime.prod.js")},11575:(a,b,c)=>{"use strict";c.a(a,async(a,d)=>{try{c.d(b,{y:()=>m});var e=c(73024),f=c(76760),g=c(83498),h=c(84104),i=c(79336),j=c(65527),k=a([h,i,j]);[h,i,j]=k.then?(await k)():k;let n=f.join(g.nJ,".artifacts-migrated-v1");function l(a){return f.relative(g.Dl,a)}function m({force:a=!1,log:b=()=>{}}={}){if(!a&&function(){try{return e.existsSync(n)}catch{return!1}}())return{ok:!0,skipped:!0,reason:"already_migrated"};let c=(0,h.Lf)(),d=[];try{d=c.prepare("SELECT id, path, project_id FROM artifacts WHERE path IS NOT NULL AND path != ''").all()}catch{return{ok:!1,error:"artifacts table unavailable",summary:null}}let k={moved:0,rewritten:0,missing_on_disk:0,already_scoped:0,errors:0,details:[]},o=f.resolve(g.yQ),p=o+f.sep;c.exec("BEGIN IMMEDIATE");try{for(let a of d){let d=f.resolve(g.Dl,a.path),h=function(a){let b=a.project_id||i.Sk;return(0,i.U1)(b)||(0,i.U1)(i.Sk)}(a);if(!h){k.errors++;continue}let m=(0,j.v2)(h),n=f.resolve(m);if(d===n||d.startsWith(n+f.sep)||!(d===o||d.startsWith(p))){k.already_scoped++;continue}try{e.mkdirSync(m,{recursive:!0})}catch{}let q=f.basename(d),r=f.join(m,q),s=l(r);try{if(e.existsSync(d)){let b=r,g=s,i=!1;if(e.existsSync(r)&&d!==r){let a=f.extname(q),c=f.basename(q,a),d=Date.now().toString(36);b=f.join(m,`${c}-${d}${a}`),g=l(b),i=!0}e.renameSync(d,b),c.prepare("UPDATE artifacts SET path = ?, project_id = ? WHERE id = ?").run(g,h.id,a.id),k.moved++,k.rewritten++,k.details.push({id:a.id,from:a.path,to:g,collision:i})}else k.missing_on_disk++,c.prepare("UPDATE artifacts SET path = ?, project_id = ? WHERE id = ?").run(s,h.id,a.id),k.rewritten++,k.details.push({id:a.id,from:a.path,to:s,file_missing:!0})}catch(c){k.errors++,b(`migrate-artifacts: failed for ${a.id} (${a.path}): ${c.message}`)}}c.exec("COMMIT")}catch(a){try{c.exec("ROLLBACK")}catch{}return b(`migrate-artifacts: rolled back: ${a.message}`),{ok:!1,error:a.message,summary:k}}try{e.writeFileSync(n,`${new Date().toISOString()}
311
311
  ${JSON.stringify(k,null,2)}
312
- `,"utf8")}catch{}return{ok:!0,skipped:!1,summary:k}}d()}catch(a){d(a)}})},11812:(a,b,c)=>{"use strict";c.a(a,async(a,d)=>{try{c.d(b,{Dv:()=>l,Tg:()=>m,gL:()=>k});var e=c(91488);c(27806);var f=c(69206),g=c(91837),h=c(79336),i=c(40410),j=a([h]);async function k(a){let b=String(a.get("folder_mode")||"workspace"),c=String(a.get("folder_path")||"").trim(),d=(0,h.gA)({name:a.get("name"),color:a.get("color"),description:a.get("description"),folder_path:"custom"===b&&c?c:void 0});(0,f.redirect)(`/projects/${d.slug}`)}async function l(a){let b=String(a.get("project_id")||"").trim();if(b&&b!==h.Sk){try{(0,h.xx)(b)}catch(a){if(a?.code==="PROJECT_PROTECTED")return;throw a}(0,g.revalidatePath)("/projects")}}async function m(a){let b=String(a.get("project_id")||"").trim();if(!b)return;let c=String(a.get("folder_mode")||"keep"),d=String(a.get("folder_path")||"").trim(),e={name:String(a.get("name")||"").trim()||void 0,color:String(a.get("color")||"").trim()||void 0,description:String(a.get("description")||"").trim()||void 0};"custom"===c&&d&&(e.folder_path=d),(0,h.vr)(b,e),(0,g.revalidatePath)("/projects"),(0,g.revalidatePath)(`/projects/${b}`)}h=(j.then?(await j)():j)[0],(0,i.D)([k,l,m]),(0,e.A)(k,"40924c2bb7306ab859b7d1ab974ac9d9fb8f10f1ae",null),(0,e.A)(l,"4016a74884c2aa17107559a312bb61372df7c6f880",null),(0,e.A)(m,"40b68097a668d64419660ccd612496572b7b603c42",null),d()}catch(a){d(a)}})},12690:(a,b)=>{"use strict";Object.defineProperty(b,"__esModule",{value:!0}),!function(a,b){for(var c in b)Object.defineProperty(a,c,{enumerable:!0,get:b[c]})}(b,{getClientComponentLoaderMetrics:function(){return g},wrapClientComponentLoader:function(){return f}});let c=0,d=0,e=0;function f(a){return"performance"in globalThis?{require:(...b)=>{let f=performance.now();0===c&&(c=f);try{return e+=1,a.__next_app__.require(...b)}finally{d+=performance.now()-f}},loadChunk:(...b)=>{let c=performance.now(),e=a.__next_app__.loadChunk(...b);return e.finally(()=>{d+=performance.now()-c}),e}}:a.__next_app__}function g(a={}){let b=0===c?void 0:{clientComponentLoadStart:c,clientComponentLoadTimes:d,clientComponentLoadCount:e};return a.reset&&(c=0,d=0,e=0),b}},13633:(a,b,c)=>{"use strict";c.d(b,{Q:()=>f});var d=c(8512),e=c(60951);function f(a,b){let c=(0,e.l)(function(a){let b=[],c=-1,e=0,f=0;for(;++c<a.length;){let g=a.charCodeAt(c),h="";if(37===g&&(0,d.lV)(a.charCodeAt(c+1))&&(0,d.lV)(a.charCodeAt(c+2)))f=2;else if(g<128)/[!#$&-;=?-Z_a-z~]/.test(String.fromCharCode(g))||(h=String.fromCharCode(g));else if(g>55295&&g<57344){let b=a.charCodeAt(c+1);g<56320&&b>56319&&b<57344?(h=String.fromCharCode(g,b),f=1):h="�"}else h=String.fromCharCode(g);h&&(b.push(a.slice(e,c),encodeURIComponent(h)),e=c+f+1,h=""),f&&(c+=f,f=0)}return b.join("")+a.slice(e)}(a||""));if(!b)return c;let f=c.indexOf(":"),g=c.indexOf("?"),h=c.indexOf("#"),i=c.indexOf("/");return f<0||i>-1&&f>i||g>-1&&f>g||h>-1&&f>h||b.test(c.slice(0,f))?c:""}},14117:(a,b,c)=>{"use strict";c.a(a,async(a,d)=>{try{c.d(b,{$A:()=>k,Ac:()=>i,FT:()=>j,N3:()=>m,uS:()=>l});var e=c(76760);c(73024);var f=c(84104),g=c(83498),h=a([f]);f=(h.then?(await h)():h)[0];let l=e.join(g.un,"generated-clis"),m=e.join(g.un,"skills","printing-press");e.join(g.nJ,"printing-press-clis.json");let n=/^[a-z0-9][a-z0-9-]{0,63}$/;function i(a){return"string"==typeof a&&n.test(a)}function j(a){let b=e.resolve(a),c=e.resolve(l);if(!b.startsWith(c+e.sep)&&b!==c)throw Error(`Path is not under workspace/generated-clis/: ${a}`);return b}function k(a){if(!i(a))return null;var b=(0,f.Lf)().prepare("SELECT * FROM printing_press_clis WHERE slug = ?").get(a);if(!b)return null;let c=null,d=[],e=[];try{c=b.manifest_json?JSON.parse(b.manifest_json):null}catch{c=null}try{d=b.declared_scopes?JSON.parse(b.declared_scopes):[]}catch{d=[]}try{e=b.required_secrets?JSON.parse(b.required_secrets):[]}catch{e=[]}return{slug:b.slug,source_kind:b.source_kind,source_url:b.source_url||null,installed_at:b.installed_at,updated_at:b.updated_at,path:b.path,declared_scopes:d,required_secrets:e,quota_bytes:b.quota_bytes||0x6400000,manifest:c,status:b.status}}d()}catch(a){d(a)}})},14884:(a,b,c)=>{"use strict";function d(){throw Object.defineProperty(Error("cacheTag() is only available with the experimental.useCache config."),"__NEXT_ERROR_CODE",{value:"E628",enumerable:!1,configurable:!0})}Object.defineProperty(b,"z",{enumerable:!0,get:function(){return d}}),c(63033),c(43709)},15570:(a,b)=>{"use strict";Object.defineProperty(b,"__esModule",{value:!0}),!function(a,b){for(var c in b)Object.defineProperty(a,c,{enumerable:!0,get:b[c]})}(b,{HTTPAccessErrorStatus:function(){return c},HTTP_ERROR_FALLBACK_ERROR_CODE:function(){return e},getAccessFallbackErrorTypeByStatus:function(){return h},getAccessFallbackHTTPStatus:function(){return g},isHTTPAccessFallbackError:function(){return f}});let c={NOT_FOUND:404,FORBIDDEN:403,UNAUTHORIZED:401},d=new Set(Object.values(c)),e="NEXT_HTTP_ERROR_FALLBACK";function f(a){if("object"!=typeof a||null===a||!("digest"in a)||"string"!=typeof a.digest)return!1;let[b,c]=a.digest.split(";");return b===e&&d.has(Number(c))}function g(a){return Number(a.digest.split(";")[1])}function h(a){switch(a){case 401:return"unauthorized";case 403:return"forbidden";case 404:return"not-found";default:return}}("function"==typeof b.default||"object"==typeof b.default&&null!==b.default)&&void 0===b.default.__esModule&&(Object.defineProperty(b.default,"__esModule",{value:!0}),Object.assign(b.default,b),a.exports=b.default)},15675:(a,b,c)=>{"use strict";c.d(b,{B:()=>f});var d=c(40623),e=c(8512);let f={partial:!0,tokenize:function(a,b,c){return function(b){return(0,e.On)(b)?(0,d.N)(a,f,"linePrefix")(b):f(b)};function f(a){return null===a||(0,e.HP)(a)?b(a):c(a)}}}},16343:(a,b,c)=>{"use strict";c.a(a,async(a,d)=>{try{c.d(b,{N:()=>h});var e=c(84104),f=a([e]);function g({id:a,tool_name:b,agent_id:c,host:d,method:f,status_code:g,bytes_out:h,bytes_in:i,duration_ms:j,error:k,at:l}){try{(0,e.Lf)().prepare(`
312
+ `,"utf8")}catch{}return{ok:!0,skipped:!1,summary:k}}d()}catch(a){d(a)}})},11812:(a,b,c)=>{"use strict";c.a(a,async(a,d)=>{try{c.d(b,{Dv:()=>l,Tg:()=>m,gL:()=>k});var e=c(91488);c(27806);var f=c(69206),g=c(91837),h=c(79336),i=c(40410),j=a([h]);async function k(a){let b=String(a.get("folder_mode")||"workspace"),c=String(a.get("folder_path")||"").trim(),d=(0,h.gA)({name:a.get("name"),color:a.get("color"),description:a.get("description"),folder_path:"custom"===b&&c?c:void 0});(0,f.redirect)(`/projects/${d.slug}`)}async function l(a){let b=String(a.get("project_id")||"").trim();if(b&&b!==h.Sk){try{(0,h.xx)(b)}catch(a){if(a?.code==="PROJECT_PROTECTED")return;throw a}(0,g.revalidatePath)("/projects")}}async function m(a){let b=String(a.get("project_id")||"").trim();if(!b)return;let c=String(a.get("folder_mode")||"keep"),d=String(a.get("folder_path")||"").trim(),e={name:String(a.get("name")||"").trim()||void 0,color:String(a.get("color")||"").trim()||void 0,description:String(a.get("description")||"").trim()||void 0};"custom"===c&&d&&(e.folder_path=d),(0,h.vr)(b,e),(0,g.revalidatePath)("/projects"),(0,g.revalidatePath)(`/projects/${b}`)}h=(j.then?(await j)():j)[0],(0,i.D)([k,l,m]),(0,e.A)(k,"40eef191530afb2a910c9f1a66cefee4b4975bb762",null),(0,e.A)(l,"404c8804c1148aee36dfb0fb9269e772184aae34de",null),(0,e.A)(m,"40bd236cf4b7d72418a71d22f3677546a1dcb9a913",null),d()}catch(a){d(a)}})},12690:(a,b)=>{"use strict";Object.defineProperty(b,"__esModule",{value:!0}),!function(a,b){for(var c in b)Object.defineProperty(a,c,{enumerable:!0,get:b[c]})}(b,{getClientComponentLoaderMetrics:function(){return g},wrapClientComponentLoader:function(){return f}});let c=0,d=0,e=0;function f(a){return"performance"in globalThis?{require:(...b)=>{let f=performance.now();0===c&&(c=f);try{return e+=1,a.__next_app__.require(...b)}finally{d+=performance.now()-f}},loadChunk:(...b)=>{let c=performance.now(),e=a.__next_app__.loadChunk(...b);return e.finally(()=>{d+=performance.now()-c}),e}}:a.__next_app__}function g(a={}){let b=0===c?void 0:{clientComponentLoadStart:c,clientComponentLoadTimes:d,clientComponentLoadCount:e};return a.reset&&(c=0,d=0,e=0),b}},13633:(a,b,c)=>{"use strict";c.d(b,{Q:()=>f});var d=c(8512),e=c(60951);function f(a,b){let c=(0,e.l)(function(a){let b=[],c=-1,e=0,f=0;for(;++c<a.length;){let g=a.charCodeAt(c),h="";if(37===g&&(0,d.lV)(a.charCodeAt(c+1))&&(0,d.lV)(a.charCodeAt(c+2)))f=2;else if(g<128)/[!#$&-;=?-Z_a-z~]/.test(String.fromCharCode(g))||(h=String.fromCharCode(g));else if(g>55295&&g<57344){let b=a.charCodeAt(c+1);g<56320&&b>56319&&b<57344?(h=String.fromCharCode(g,b),f=1):h="�"}else h=String.fromCharCode(g);h&&(b.push(a.slice(e,c),encodeURIComponent(h)),e=c+f+1,h=""),f&&(c+=f,f=0)}return b.join("")+a.slice(e)}(a||""));if(!b)return c;let f=c.indexOf(":"),g=c.indexOf("?"),h=c.indexOf("#"),i=c.indexOf("/");return f<0||i>-1&&f>i||g>-1&&f>g||h>-1&&f>h||b.test(c.slice(0,f))?c:""}},14117:(a,b,c)=>{"use strict";c.a(a,async(a,d)=>{try{c.d(b,{$A:()=>k,Ac:()=>i,FT:()=>j,N3:()=>m,uS:()=>l});var e=c(76760);c(73024);var f=c(84104),g=c(83498),h=a([f]);f=(h.then?(await h)():h)[0];let l=e.join(g.un,"generated-clis"),m=e.join(g.un,"skills","printing-press");e.join(g.nJ,"printing-press-clis.json");let n=/^[a-z0-9][a-z0-9-]{0,63}$/;function i(a){return"string"==typeof a&&n.test(a)}function j(a){let b=e.resolve(a),c=e.resolve(l);if(!b.startsWith(c+e.sep)&&b!==c)throw Error(`Path is not under workspace/generated-clis/: ${a}`);return b}function k(a){if(!i(a))return null;var b=(0,f.Lf)().prepare("SELECT * FROM printing_press_clis WHERE slug = ?").get(a);if(!b)return null;let c=null,d=[],e=[];try{c=b.manifest_json?JSON.parse(b.manifest_json):null}catch{c=null}try{d=b.declared_scopes?JSON.parse(b.declared_scopes):[]}catch{d=[]}try{e=b.required_secrets?JSON.parse(b.required_secrets):[]}catch{e=[]}return{slug:b.slug,source_kind:b.source_kind,source_url:b.source_url||null,installed_at:b.installed_at,updated_at:b.updated_at,path:b.path,declared_scopes:d,required_secrets:e,quota_bytes:b.quota_bytes||0x6400000,manifest:c,status:b.status}}d()}catch(a){d(a)}})},14884:(a,b,c)=>{"use strict";function d(){throw Object.defineProperty(Error("cacheTag() is only available with the experimental.useCache config."),"__NEXT_ERROR_CODE",{value:"E628",enumerable:!1,configurable:!0})}Object.defineProperty(b,"z",{enumerable:!0,get:function(){return d}}),c(63033),c(43709)},15570:(a,b)=>{"use strict";Object.defineProperty(b,"__esModule",{value:!0}),!function(a,b){for(var c in b)Object.defineProperty(a,c,{enumerable:!0,get:b[c]})}(b,{HTTPAccessErrorStatus:function(){return c},HTTP_ERROR_FALLBACK_ERROR_CODE:function(){return e},getAccessFallbackErrorTypeByStatus:function(){return h},getAccessFallbackHTTPStatus:function(){return g},isHTTPAccessFallbackError:function(){return f}});let c={NOT_FOUND:404,FORBIDDEN:403,UNAUTHORIZED:401},d=new Set(Object.values(c)),e="NEXT_HTTP_ERROR_FALLBACK";function f(a){if("object"!=typeof a||null===a||!("digest"in a)||"string"!=typeof a.digest)return!1;let[b,c]=a.digest.split(";");return b===e&&d.has(Number(c))}function g(a){return Number(a.digest.split(";")[1])}function h(a){switch(a){case 401:return"unauthorized";case 403:return"forbidden";case 404:return"not-found";default:return}}("function"==typeof b.default||"object"==typeof b.default&&null!==b.default)&&void 0===b.default.__esModule&&(Object.defineProperty(b.default,"__esModule",{value:!0}),Object.assign(b.default,b),a.exports=b.default)},15675:(a,b,c)=>{"use strict";c.d(b,{B:()=>f});var d=c(40623),e=c(8512);let f={partial:!0,tokenize:function(a,b,c){return function(b){return(0,e.On)(b)?(0,d.N)(a,f,"linePrefix")(b):f(b)};function f(a){return null===a||(0,e.HP)(a)?b(a):c(a)}}}},16343:(a,b,c)=>{"use strict";c.a(a,async(a,d)=>{try{c.d(b,{N:()=>h});var e=c(84104),f=a([e]);function g({id:a,tool_name:b,agent_id:c,host:d,method:f,status_code:g,bytes_out:h,bytes_in:i,duration_ms:j,error:k,at:l}){try{(0,e.Lf)().prepare(`
313
313
  INSERT INTO tool_egress
314
314
  (id, tool_name, agent_id, host, method, status_code, bytes_out, bytes_in, duration_ms, error, at)
315
315
  VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)
@@ -539,7 +539,7 @@ ${(a.tools||[]).map(a=>`- ${a}`).join("\n")}
539
539
  metadata_json=COALESCE(agents.metadata_json, excluded.metadata_json),
540
540
  project_id=COALESCE(agents.project_id, excluded.project_id),
541
541
  template_slug=COALESCE(agents.template_slug, excluded.template_slug)
542
- `).run(d,c,g,m,n,j,k,JSON.stringify(o),q,JSON.stringify(w),r,v.expected_output,JSON.stringify(s),u,v.reports_to,v.role,v.title,v.status_reason,v.autonomy_mode,v.budget_monthly_cents,v.spent_monthly_cents,JSON.stringify(v.permissions_json),JSON.stringify(v.metadata_json),v.project_id,v.template_slug),!y&&(D({type:"agent.create",summary:`Created ${c}`,meta:{agent_id:d,files:w}}),a.suppress_live_event||(0,t.AC)({type:"agent_created",agent_id:d,agent_name:c,triggered_by:a.triggered_by||null})),{agent:{...v,status:"created",generated:!0,files:w},files:w}}[h,j,l,m,n,o,p,q,r,s,t,u]=w.then?(await w)():w,d()}catch(a){d(a)}})},42474:(a,b)=>{"use strict";Object.defineProperty(b,"__esModule",{value:!0}),Object.defineProperty(b,"DetachedPromise",{enumerable:!0,get:function(){return c}});class c{constructor(){let a,b;this.promise=new Promise((c,d)=>{a=c,b=d}),this.resolve=a,this.reject=b}}},42864:(a,b,c)=>{"use strict";c.a(a,async(a,d)=>{try{c.d(b,{j7:()=>p,vr:()=>j});var e=c(70761),f=c(62178),g=c(19376),h=c(17553),i=a([g,h]);[g,h]=i.then?(await i)():i;let q=/[\u{1F000}-\u{1FFFF}\u{2300}-\u{23FF}\u{2460}-\u{24FF}\u{25A0}-\u{27BF}\u{2900}-\u{297F}\u{2B00}-\u{2BFF}\u{3000}-\u{303F}\u{1F1E6}-\u{1F1FF}]/gu,r=/[︀-️]/g,s=/‍/g,t=/⃣/g;function j(a){return a?String(a).replace(q,"").replace(r,"").replace(s,"").replace(t,"").replace(/[ \t]{2,}/g," "):""}function k(a){return String(a??"").replace(/[&<>"']/g,a=>({"&":"&amp;","<":"&lt;",">":"&gt;",'"':"&quot;","'":"&#39;"})[a])}function l(a){return String(a||"").replace(/\\/g,"\\\\").replace(/"/g,'\\"')}function m(a){if(!a||"string"!=typeof a)return null;let b=a.trim().match(/^#?([0-9a-f]{6})$/i);if(!b)return null;let c=parseInt(b[1],16);return{r:c>>16&255,g:c>>8&255,b:255&c}}function n(a){let b=m(a);if(!b)return 0;let c=a=>{let b=a/255;return b<=.03928?b/12.92:Math.pow((b+.055)/1.055,2.4)};return .2126*c(b.r)+.7152*c(b.g)+.0722*c(b.b)}function o(a,b){let c=n(a),d=n(b),[e,f]=c>d?[c,d]:[d,c];return(e+.05)/(f+.05)}let u=`
542
+ `).run(d,c,g,m,n,j,k,JSON.stringify(o),q,JSON.stringify(w),r,v.expected_output,JSON.stringify(s),u,v.reports_to,v.role,v.title,v.status_reason,v.autonomy_mode,v.budget_monthly_cents,v.spent_monthly_cents,JSON.stringify(v.permissions_json),JSON.stringify(v.metadata_json),v.project_id,v.template_slug),!y&&(D({type:"agent.create",summary:`Created ${c}`,meta:{agent_id:d,files:w}}),a.suppress_live_event||(0,t.AC)({type:"agent_created",agent_id:d,agent_name:c,triggered_by:a.triggered_by||null})),{agent:{...v,status:"created",generated:!0,files:w},files:w}}[h,j,l,m,n,o,p,q,r,s,t,u]=w.then?(await w)():w,d()}catch(a){d(a)}})},42474:(a,b)=>{"use strict";Object.defineProperty(b,"__esModule",{value:!0}),Object.defineProperty(b,"DetachedPromise",{enumerable:!0,get:function(){return c}});class c{constructor(){let a,b;this.promise=new Promise((c,d)=>{a=c,b=d}),this.resolve=a,this.reject=b}}},42727:(a,b,c)=>{"use strict";c.d(b,{default:()=>m});var d=c(21124),e=c(38301),f=c(23312),g=c(43815),h=c(85708);let i=(0,h.createServerReference)("40eef191530afb2a910c9f1a66cefee4b4975bb762",h.callServer,void 0,h.findSourceMapURL,"createProjectAction");var j=c(54151);let k=[{value:"#c2452a",name:"Mars Red"},{value:"#a83a22",name:"Deep Red"},{value:"#7c2b19",name:"Dark Red"},{value:"#111318",name:"Charcoal"},{value:"#3f3a30",name:"Warm Black"},{value:"#68707b",name:"Slate"},{value:"#cdb78a",name:"Warm Sand"},{value:"#1f6c9f",name:"Skill Blue"}];function l(){let{pending:a}=(0,f.useFormStatus)();return(0,d.jsx)("button",{type:"submit",className:"admin-button",disabled:a,"aria-busy":a?"true":void 0,children:a?"Creating…":"Create project"})}function m({workspaceRoot:a="~/workspace/projects"}){let[b,c]=e.useState(!1),[f,h]=e.useState(""),[m,n]=e.useState("workspace"),[o,p]=e.useState(""),q=e.useRef(null),r=e.useMemo(()=>`${a.replace(/\/$/,"")}/${String(f||"").toLowerCase().trim().replace(/[^a-z0-9]+/g,"-").replace(/^-+|-+$/g,"").slice(0,64)||"project"}`,[a,f]);return e.useEffect(()=>{"custom"===m&&q.current?.focus()},[m]),(0,d.jsxs)(d.Fragment,{children:[(0,d.jsxs)("button",{type:"button",className:"admin-button agents-new-cta",onClick:()=>c(!0),children:[(0,d.jsx)("span",{"aria-hidden":!0,className:"agents-new-cta-glyph",children:"+"}),"New project"]}),(0,d.jsx)(g.A,{open:b,onClose:()=>c(!1),eyebrow:"New project",title:"Create a project",children:(0,d.jsxs)("form",{className:"agents-modal-form",action:i,children:[(0,d.jsx)("p",{className:"agents-modal-help",children:"Scope agents, documents, memory, and integrations together."}),(0,d.jsx)("section",{className:"agents-modal-section",children:(0,d.jsxs)("label",{className:"agents-modal-field wide",children:[(0,d.jsx)("span",{children:"Name"}),(0,d.jsx)("input",{name:"name",type:"text",required:!0,placeholder:"Acme Co.",autoComplete:"off",value:f,onChange:a=>h(a.target.value),autoFocus:!0})]})}),(0,d.jsxs)("section",{className:"agents-modal-section",children:[(0,d.jsxs)("div",{className:"agents-modal-section-head",children:[(0,d.jsx)("span",{children:"Folder location"}),(0,d.jsx)("small",{children:"Where this project lives on disk."})]}),(0,d.jsxs)("div",{className:"agents-modal-radio-group",children:[(0,d.jsxs)("label",{className:`agents-modal-radio ${"workspace"===m?"on":""}`,children:[(0,d.jsx)("input",{type:"radio",name:"folder_mode",value:"workspace",checked:"workspace"===m,onChange:()=>n("workspace")}),(0,d.jsxs)("span",{className:"agents-modal-radio-body",children:[(0,d.jsx)("b",{children:"madarX workspace"}),(0,d.jsx)("code",{title:r,children:function(a,b=48){if(!a||a.length<=b)return a;let c=a.slice(0,Math.floor(b/2)-1),d=a.slice(a.length-Math.floor(b/2)+2);return`${c}…${d}`}(r)})]})]}),(0,d.jsxs)("label",{className:`agents-modal-radio ${"custom"===m?"on":""}`,children:[(0,d.jsx)("input",{type:"radio",name:"folder_mode",value:"custom",checked:"custom"===m,onChange:()=>n("custom")}),(0,d.jsxs)("span",{className:"agents-modal-radio-body",children:[(0,d.jsx)("b",{children:"Custom path"}),(0,d.jsx)("small",{children:"Any absolute folder. Created if missing."})]})]})]}),"custom"===m?(0,d.jsx)(j.A,{inputRef:q,value:o,onChange:p}):(0,d.jsx)("input",{type:"hidden",name:"folder_path",value:""})]}),(0,d.jsxs)("section",{className:"agents-modal-section",children:[(0,d.jsxs)("div",{className:"agents-modal-section-head",children:[(0,d.jsx)("span",{children:"Color"}),(0,d.jsx)("small",{children:"Used for the project tile across the app."})]}),(0,d.jsxs)("fieldset",{className:"agents-modal-swatches",children:[(0,d.jsx)("legend",{className:"visually-hidden",children:"Project color"}),k.map(a=>(0,d.jsxs)("label",{className:"agents-modal-swatch",style:{"--swatch":a.value},children:[(0,d.jsx)("input",{type:"radio",name:"color",value:a.value,defaultChecked:"#c2452a"===a.value}),(0,d.jsx)("span",{className:"agents-modal-swatch-ring","aria-hidden":"true"}),(0,d.jsx)("span",{className:"visually-hidden",children:a.name})]},a.value))]})]}),(0,d.jsxs)("section",{className:"agents-modal-section",children:[(0,d.jsxs)("div",{className:"agents-modal-section-head",children:[(0,d.jsx)("span",{children:"Description"}),(0,d.jsx)("small",{children:"Used as context for agents working in this project."})]}),(0,d.jsx)("label",{className:"agents-modal-field wide",children:(0,d.jsx)("textarea",{name:"description",rows:3,placeholder:"What is this project for? Goals, audience, voice, constraints."})})]}),(0,d.jsxs)("footer",{className:"agents-modal-foot",children:[(0,d.jsx)("button",{type:"button",className:"admin-button secondary",onClick:()=>c(!1),children:"Cancel"}),(0,d.jsx)(l,{})]})]})})]})}},42864:(a,b,c)=>{"use strict";c.a(a,async(a,d)=>{try{c.d(b,{j7:()=>p,vr:()=>j});var e=c(70761),f=c(62178),g=c(19376),h=c(17553),i=a([g,h]);[g,h]=i.then?(await i)():i;let q=/[\u{1F000}-\u{1FFFF}\u{2300}-\u{23FF}\u{2460}-\u{24FF}\u{25A0}-\u{27BF}\u{2900}-\u{297F}\u{2B00}-\u{2BFF}\u{3000}-\u{303F}\u{1F1E6}-\u{1F1FF}]/gu,r=/[︀-️]/g,s=/‍/g,t=/⃣/g;function j(a){return a?String(a).replace(q,"").replace(r,"").replace(s,"").replace(t,"").replace(/[ \t]{2,}/g," "):""}function k(a){return String(a??"").replace(/[&<>"']/g,a=>({"&":"&amp;","<":"&lt;",">":"&gt;",'"':"&quot;","'":"&#39;"})[a])}function l(a){return String(a||"").replace(/\\/g,"\\\\").replace(/"/g,'\\"')}function m(a){if(!a||"string"!=typeof a)return null;let b=a.trim().match(/^#?([0-9a-f]{6})$/i);if(!b)return null;let c=parseInt(b[1],16);return{r:c>>16&255,g:c>>8&255,b:255&c}}function n(a){let b=m(a);if(!b)return 0;let c=a=>{let b=a/255;return b<=.03928?b/12.92:Math.pow((b+.055)/1.055,2.4)};return .2126*c(b.r)+.7152*c(b.g)+.0722*c(b.b)}function o(a,b){let c=n(a),d=n(b),[e,f]=c>d?[c,d]:[d,c];return(e+.05)/(f+.05)}let u=`
543
543
  *, *::before, *::after { box-sizing: border-box; }
544
544
  html, body { margin: 0; padding: 0; }
545
545
  body {
@@ -754,14 +754,14 @@ ${u}`,t=d?`<div class="doc-meta" style="margin-top:14px;font-size:13px;color:var
754
754
  WHERE mp.id = ?
755
755
  AND COALESCE(p.org_id, ?) = ?
756
756
  LIMIT 1
757
- `).get(h,a,h,c)||null}d()}catch(a){d(a)}})},47892:(a,b,c)=>{"use strict";c.r(b),c.d(b,{default:()=>f});var d=c(75338),e=c(50872);function f(){return(0,d.jsx)(e.D,{label:"Projects"})}},48161:a=>{"use strict";a.exports=require("node:os")},48304:(a,b,c)=>{"use strict";c.a(a,async(a,b)=>{try{c(73024),c(76760);var d=c(99752),e=c(96307),f=c(42864),g=c(84104);c(83498);var h=c(68571),i=c(89998),j=c(99332),k=a([d,e,f,g,h,i,j]);[d,e,f,g,h,i,j]=k.then?(await k)():k,b()}catch(a){b(a)}})},48467:(a,b,c)=>{"use strict";function d(a,b,c){let d=[],e=-1;for(;++e<a.length;){let f=a[e].resolveAll;f&&!d.includes(f)&&(b=f(b,c),d.push(f))}return b}c.d(b,{W:()=>d})},48636:(a,b,c)=>{"use strict";c.d(b,{default:()=>m});var d=c(21124),e=c(38301),f=c(23312),g=c(43815),h=c(85708);let i=(0,h.createServerReference)("40b68097a668d64419660ccd612496572b7b603c42",h.callServer,void 0,h.findSourceMapURL,"updateProjectAction");var j=c(54151);let k=[{value:"#c2452a",name:"Mars Red"},{value:"#a83a22",name:"Deep Red"},{value:"#7c2b19",name:"Dark Red"},{value:"#111318",name:"Charcoal"},{value:"#3f3a30",name:"Warm Black"},{value:"#68707b",name:"Slate"},{value:"#cdb78a",name:"Warm Sand"},{value:"#1f6c9f",name:"Skill Blue"}];function l(){let{pending:a}=(0,f.useFormStatus)();return(0,d.jsx)("button",{type:"submit",className:"admin-button",disabled:a,"aria-busy":a?"true":void 0,children:a?"Saving…":"Save changes"})}function m({projectId:a,projectName:b,projectColor:c,projectDescription:f,projectFolderPath:h}){let[m,n]=e.useState(!1),[o,p]=e.useState("keep"),[q,r]=e.useState(h||""),s=e.useRef(null);return e.useEffect(()=>{m&&(p("keep"),r(h||""))},[m,h]),e.useEffect(()=>{"custom"===o&&s.current?.focus()},[o]),(0,d.jsxs)(d.Fragment,{children:[(0,d.jsx)("button",{type:"button",className:"admin-button secondary project-edit",onClick:()=>n(!0),"aria-label":`Edit ${b}`,children:"Edit"}),(0,d.jsx)(g.A,{open:m,onClose:()=>n(!1),eyebrow:"Edit project",title:`Edit ${b}`,children:(0,d.jsxs)("form",{className:"agents-modal-form",action:i,children:[(0,d.jsx)("input",{type:"hidden",name:"project_id",value:a}),(0,d.jsx)("section",{className:"agents-modal-section",children:(0,d.jsxs)("label",{className:"agents-modal-field wide",children:[(0,d.jsx)("span",{children:"Name"}),(0,d.jsx)("input",{name:"name",type:"text",defaultValue:b,autoComplete:"off",required:!0})]})}),(0,d.jsxs)("section",{className:"agents-modal-section",children:[(0,d.jsxs)("div",{className:"agents-modal-section-head",children:[(0,d.jsx)("span",{children:"Folder location"}),(0,d.jsx)("small",{children:"Where project files live on disk. Move only if you've already moved the folder yourself."})]}),(0,d.jsxs)("div",{className:"agents-modal-radio-group",children:[(0,d.jsxs)("label",{className:`agents-modal-radio ${"keep"===o?"on":""}`,children:[(0,d.jsx)("input",{type:"radio",name:"folder_mode",value:"keep",checked:"keep"===o,onChange:()=>p("keep")}),(0,d.jsxs)("span",{className:"agents-modal-radio-body",children:[(0,d.jsx)("b",{children:"Keep current"}),(0,d.jsx)("code",{title:h||"",children:function(a,b=48){if(!a||a.length<=b)return a;let c=a.slice(0,Math.floor(b/2)-1),d=a.slice(a.length-Math.floor(b/2)+2);return`${c}…${d}`}(h)||"(not set)"})]})]}),(0,d.jsxs)("label",{className:`agents-modal-radio ${"custom"===o?"on":""}`,children:[(0,d.jsx)("input",{type:"radio",name:"folder_mode",value:"custom",checked:"custom"===o,onChange:()=>p("custom")}),(0,d.jsxs)("span",{className:"agents-modal-radio-body",children:[(0,d.jsx)("b",{children:"Change to…"}),(0,d.jsx)("small",{children:"Absolute path. Must already exist or be writable."})]})]})]}),"custom"===o?(0,d.jsx)(j.A,{inputRef:s,value:q,onChange:r}):(0,d.jsx)("input",{type:"hidden",name:"folder_path",value:""})]}),(0,d.jsxs)("section",{className:"agents-modal-section",children:[(0,d.jsxs)("div",{className:"agents-modal-section-head",children:[(0,d.jsx)("span",{children:"Color"}),(0,d.jsx)("small",{children:"Tile color across the app."})]}),(0,d.jsxs)("fieldset",{className:"agents-modal-swatches",children:[(0,d.jsx)("legend",{className:"visually-hidden",children:"Project color"}),k.map(a=>(0,d.jsxs)("label",{className:"agents-modal-swatch",style:{"--swatch":a.value},children:[(0,d.jsx)("input",{type:"radio",name:"color",value:a.value,defaultChecked:a.value===(c||"#c2452a")}),(0,d.jsx)("span",{className:"agents-modal-swatch-ring","aria-hidden":"true"}),(0,d.jsx)("span",{className:"visually-hidden",children:a.name})]},a.value))]})]}),(0,d.jsxs)("section",{className:"agents-modal-section",children:[(0,d.jsxs)("div",{className:"agents-modal-section-head",children:[(0,d.jsx)("span",{children:"Description"}),(0,d.jsx)("small",{children:"Used as context for agents working in this project."})]}),(0,d.jsx)("label",{className:"agents-modal-field wide",children:(0,d.jsx)("textarea",{name:"description",rows:3,defaultValue:f||"",placeholder:"What is this project for? Goals, audience, voice, constraints."})})]}),(0,d.jsxs)("footer",{className:"agents-modal-foot",children:[(0,d.jsx)("button",{type:"button",className:"admin-button secondary",onClick:()=>n(!1),children:"Cancel"}),(0,d.jsx)(l,{})]})]})})]})}},49248:(a,b,c)=>{"use strict";c.a(a,async(a,b)=>{try{c(77598),c(77030);var d=c(84104),e=c(45555),f=c(73240),g=a([d,e,f]);[d,e,f]=g.then?(await g)():g;let h="phase-production-build"===process.env.NEXT_PHASE;"local"!==(process.env.MADARX_AUTH_MODE||"local").toLowerCase()||h||console.error("[auth] WARNING: MADARX_AUTH_MODE is not set to supabase in NODE_ENV=production. Configure Supabase auth (Settings → Account) or set MADARX_AUTH_MODE=supabase before exposing this deployment."),b()}catch(a){b(a)}})},50832:a=>{"use strict";a.exports=import("@anthropic-ai/sdk")},50931:(a,b,c)=>{"use strict";Object.defineProperty(b,"__esModule",{value:!0}),!function(a,b){for(var c in b)Object.defineProperty(a,c,{enumerable:!0,get:b[c]})}(b,{chainStreams:function(){return n},continueDynamicHTMLResume:function(){return E},continueDynamicPrerender:function(){return C},continueFizzStream:function(){return B},continueStaticPrerender:function(){return D},createBufferedTransformStream:function(){return s},createDocumentClosingStream:function(){return F},createRootLayoutValidatorStream:function(){return A},renderToInitialFizzStream:function(){return u},streamFromBuffer:function(){return p},streamFromString:function(){return o},streamToBuffer:function(){return q},streamToString:function(){return r}});let d=c(36821),e=c(45441),f=c(42474),g=c(86331),h=c(93047),i=c(53476),j=c(57941),k=c(54353);function l(){}let m=new TextEncoder;function n(...a){if(0===a.length)return new ReadableStream({start(a){a.close()}});if(1===a.length)return a[0];let{readable:b,writable:c}=new TransformStream,d=a[0].pipeTo(c,{preventClose:!0}),e=1;for(;e<a.length-1;e++){let b=a[e];d=d.then(()=>b.pipeTo(c,{preventClose:!0}))}let f=a[e];return(d=d.then(()=>f.pipeTo(c))).catch(l),b}function o(a){return new ReadableStream({start(b){b.enqueue(m.encode(a)),b.close()}})}function p(a){return new ReadableStream({start(b){b.enqueue(a),b.close()}})}async function q(a){let b=a.getReader(),c=[];for(;;){let{done:a,value:d}=await b.read();if(a)break;c.push(d)}return Buffer.concat(c)}async function r(a,b){let c=new TextDecoder("utf-8",{fatal:!0}),d="";for await(let e of a){if(null==b?void 0:b.aborted)return d;d+=c.decode(e,{stream:!0})}return d+c.decode()}function s(){let a,b=[],c=0;return new TransformStream({transform(d,e){b.push(d),c+=d.byteLength,(d=>{if(a)return;let e=new f.DetachedPromise;a=e,(0,g.scheduleImmediate)(()=>{try{let a=new Uint8Array(c),e=0;for(let c=0;c<b.length;c++){let d=b[c];a.set(d,e),e+=d.byteLength}b.length=0,c=0,d.enqueue(a)}catch{}finally{a=void 0,e.resolve()}})})(e)},flush(){if(a)return a.promise}})}function t(a,b){let c=!1;return new TransformStream({transform(d,e){if(a&&!c){c=!0;let a=new TextDecoder("utf-8",{fatal:!0}).decode(d,{stream:!0}),f=(0,k.insertBuildIdComment)(a,b);e.enqueue(m.encode(f));return}e.enqueue(d)}})}function u({ReactDOMServer:a,element:b,streamOptions:c}){return(0,d.getTracer)().trace(e.AppRenderSpan.renderToReadableStream,async()=>a.renderToReadableStream(b,c))}function v(a){let b=-1,c=!1;return new TransformStream({async transform(d,e){let f=-1,g=-1;if(b++,c)return void e.enqueue(d);let j=0;if(-1===f){if(-1===(f=(0,i.indexOfUint8Array)(d,h.ENCODED_TAGS.META.ICON_MARK)))return void e.enqueue(d);47===d[f+(j=h.ENCODED_TAGS.META.ICON_MARK.length)]?j+=2:j++}if(0===b){if(g=(0,i.indexOfUint8Array)(d,h.ENCODED_TAGS.CLOSED.HEAD),-1!==f){if(f<g){let a=new Uint8Array(d.length-j);a.set(d.subarray(0,f)),a.set(d.subarray(f+j),f),d=a}else{let b=await a(),c=m.encode(b),e=c.length,g=new Uint8Array(d.length-j+e);g.set(d.subarray(0,f)),g.set(c,f),g.set(d.subarray(f+j),f+e),d=g}c=!0}}else{let b=await a(),e=m.encode(b),g=e.length,h=new Uint8Array(d.length-j+g);h.set(d.subarray(0,f)),h.set(e,f),h.set(d.subarray(f+j),f+g),d=h,c=!0}e.enqueue(d)}})}function w(a){let b=!1,c=!1;return new TransformStream({async transform(d,e){c=!0;let f=await a();if(b){if(f){let a=m.encode(f);e.enqueue(a)}e.enqueue(d)}else{let a=(0,i.indexOfUint8Array)(d,h.ENCODED_TAGS.CLOSED.HEAD);if(-1!==a){if(f){let b=m.encode(f),c=new Uint8Array(d.length+b.length);c.set(d.slice(0,a)),c.set(b,a),c.set(d.slice(a),a+b.length),e.enqueue(c)}else e.enqueue(d);b=!0}else f&&e.enqueue(m.encode(f)),e.enqueue(d),b=!0}},async flush(b){if(c){let c=await a();c&&b.enqueue(m.encode(c))}}})}function x(a,b){let c=!1,d=null,e=!1;function f(a){return d||(d=h(a)),d}async function h(d){let f=a.getReader();b&&await (0,g.atLeastOneTask)();try{for(;;){let{done:a,value:h}=await f.read();if(a){e=!0;return}b||c||await (0,g.atLeastOneTask)(),d.enqueue(h)}}catch(a){d.error(a)}}return new TransformStream({start(a){b||f(a)},transform(a,c){c.enqueue(a),b&&f(c)},flush(a){if(c=!0,!e)return f(a)}})}let y="</body></html>";function z(){let a=!1;return new TransformStream({transform(b,c){if(a)return c.enqueue(b);let d=(0,i.indexOfUint8Array)(b,h.ENCODED_TAGS.CLOSED.BODY_AND_HTML);if(d>-1){if(a=!0,b.length===h.ENCODED_TAGS.CLOSED.BODY_AND_HTML.length)return;let e=b.slice(0,d);if(c.enqueue(e),b.length>h.ENCODED_TAGS.CLOSED.BODY_AND_HTML.length+d){let a=b.slice(d+h.ENCODED_TAGS.CLOSED.BODY_AND_HTML.length);c.enqueue(a)}}else c.enqueue(b)},flush(a){a.enqueue(h.ENCODED_TAGS.CLOSED.BODY_AND_HTML)}})}function A(){let a=!1,b=!1;return new TransformStream({async transform(c,d){!a&&(0,i.indexOfUint8Array)(c,h.ENCODED_TAGS.OPENING.HTML)>-1&&(a=!0),!b&&(0,i.indexOfUint8Array)(c,h.ENCODED_TAGS.OPENING.BODY)>-1&&(b=!0),d.enqueue(c)},flush(c){let d=[];a||d.push("html"),b||d.push("body"),d.length&&c.enqueue(m.encode(`<html id="__next_error__">
757
+ `).get(h,a,h,c)||null}d()}catch(a){d(a)}})},47892:(a,b,c)=>{"use strict";c.r(b),c.d(b,{default:()=>f});var d=c(75338),e=c(50872);function f(){return(0,d.jsx)(e.D,{label:"Projects"})}},48161:a=>{"use strict";a.exports=require("node:os")},48304:(a,b,c)=>{"use strict";c.a(a,async(a,b)=>{try{c(73024),c(76760);var d=c(99752),e=c(96307),f=c(42864),g=c(84104);c(83498);var h=c(68571),i=c(89998),j=c(99332),k=a([d,e,f,g,h,i,j]);[d,e,f,g,h,i,j]=k.then?(await k)():k,b()}catch(a){b(a)}})},48467:(a,b,c)=>{"use strict";function d(a,b,c){let d=[],e=-1;for(;++e<a.length;){let f=a[e].resolveAll;f&&!d.includes(f)&&(b=f(b,c),d.push(f))}return b}c.d(b,{W:()=>d})},49248:(a,b,c)=>{"use strict";c.a(a,async(a,b)=>{try{c(77598),c(77030);var d=c(84104),e=c(45555),f=c(73240),g=a([d,e,f]);[d,e,f]=g.then?(await g)():g;let h="phase-production-build"===process.env.NEXT_PHASE;"local"!==(process.env.MADARX_AUTH_MODE||"local").toLowerCase()||h||console.error("[auth] WARNING: MADARX_AUTH_MODE is not set to supabase in NODE_ENV=production. Configure Supabase auth (Settings → Account) or set MADARX_AUTH_MODE=supabase before exposing this deployment."),b()}catch(a){b(a)}})},50832:a=>{"use strict";a.exports=import("@anthropic-ai/sdk")},50931:(a,b,c)=>{"use strict";Object.defineProperty(b,"__esModule",{value:!0}),!function(a,b){for(var c in b)Object.defineProperty(a,c,{enumerable:!0,get:b[c]})}(b,{chainStreams:function(){return n},continueDynamicHTMLResume:function(){return E},continueDynamicPrerender:function(){return C},continueFizzStream:function(){return B},continueStaticPrerender:function(){return D},createBufferedTransformStream:function(){return s},createDocumentClosingStream:function(){return F},createRootLayoutValidatorStream:function(){return A},renderToInitialFizzStream:function(){return u},streamFromBuffer:function(){return p},streamFromString:function(){return o},streamToBuffer:function(){return q},streamToString:function(){return r}});let d=c(36821),e=c(45441),f=c(42474),g=c(86331),h=c(93047),i=c(53476),j=c(57941),k=c(54353);function l(){}let m=new TextEncoder;function n(...a){if(0===a.length)return new ReadableStream({start(a){a.close()}});if(1===a.length)return a[0];let{readable:b,writable:c}=new TransformStream,d=a[0].pipeTo(c,{preventClose:!0}),e=1;for(;e<a.length-1;e++){let b=a[e];d=d.then(()=>b.pipeTo(c,{preventClose:!0}))}let f=a[e];return(d=d.then(()=>f.pipeTo(c))).catch(l),b}function o(a){return new ReadableStream({start(b){b.enqueue(m.encode(a)),b.close()}})}function p(a){return new ReadableStream({start(b){b.enqueue(a),b.close()}})}async function q(a){let b=a.getReader(),c=[];for(;;){let{done:a,value:d}=await b.read();if(a)break;c.push(d)}return Buffer.concat(c)}async function r(a,b){let c=new TextDecoder("utf-8",{fatal:!0}),d="";for await(let e of a){if(null==b?void 0:b.aborted)return d;d+=c.decode(e,{stream:!0})}return d+c.decode()}function s(){let a,b=[],c=0;return new TransformStream({transform(d,e){b.push(d),c+=d.byteLength,(d=>{if(a)return;let e=new f.DetachedPromise;a=e,(0,g.scheduleImmediate)(()=>{try{let a=new Uint8Array(c),e=0;for(let c=0;c<b.length;c++){let d=b[c];a.set(d,e),e+=d.byteLength}b.length=0,c=0,d.enqueue(a)}catch{}finally{a=void 0,e.resolve()}})})(e)},flush(){if(a)return a.promise}})}function t(a,b){let c=!1;return new TransformStream({transform(d,e){if(a&&!c){c=!0;let a=new TextDecoder("utf-8",{fatal:!0}).decode(d,{stream:!0}),f=(0,k.insertBuildIdComment)(a,b);e.enqueue(m.encode(f));return}e.enqueue(d)}})}function u({ReactDOMServer:a,element:b,streamOptions:c}){return(0,d.getTracer)().trace(e.AppRenderSpan.renderToReadableStream,async()=>a.renderToReadableStream(b,c))}function v(a){let b=-1,c=!1;return new TransformStream({async transform(d,e){let f=-1,g=-1;if(b++,c)return void e.enqueue(d);let j=0;if(-1===f){if(-1===(f=(0,i.indexOfUint8Array)(d,h.ENCODED_TAGS.META.ICON_MARK)))return void e.enqueue(d);47===d[f+(j=h.ENCODED_TAGS.META.ICON_MARK.length)]?j+=2:j++}if(0===b){if(g=(0,i.indexOfUint8Array)(d,h.ENCODED_TAGS.CLOSED.HEAD),-1!==f){if(f<g){let a=new Uint8Array(d.length-j);a.set(d.subarray(0,f)),a.set(d.subarray(f+j),f),d=a}else{let b=await a(),c=m.encode(b),e=c.length,g=new Uint8Array(d.length-j+e);g.set(d.subarray(0,f)),g.set(c,f),g.set(d.subarray(f+j),f+e),d=g}c=!0}}else{let b=await a(),e=m.encode(b),g=e.length,h=new Uint8Array(d.length-j+g);h.set(d.subarray(0,f)),h.set(e,f),h.set(d.subarray(f+j),f+g),d=h,c=!0}e.enqueue(d)}})}function w(a){let b=!1,c=!1;return new TransformStream({async transform(d,e){c=!0;let f=await a();if(b){if(f){let a=m.encode(f);e.enqueue(a)}e.enqueue(d)}else{let a=(0,i.indexOfUint8Array)(d,h.ENCODED_TAGS.CLOSED.HEAD);if(-1!==a){if(f){let b=m.encode(f),c=new Uint8Array(d.length+b.length);c.set(d.slice(0,a)),c.set(b,a),c.set(d.slice(a),a+b.length),e.enqueue(c)}else e.enqueue(d);b=!0}else f&&e.enqueue(m.encode(f)),e.enqueue(d),b=!0}},async flush(b){if(c){let c=await a();c&&b.enqueue(m.encode(c))}}})}function x(a,b){let c=!1,d=null,e=!1;function f(a){return d||(d=h(a)),d}async function h(d){let f=a.getReader();b&&await (0,g.atLeastOneTask)();try{for(;;){let{done:a,value:h}=await f.read();if(a){e=!0;return}b||c||await (0,g.atLeastOneTask)(),d.enqueue(h)}}catch(a){d.error(a)}}return new TransformStream({start(a){b||f(a)},transform(a,c){c.enqueue(a),b&&f(c)},flush(a){if(c=!0,!e)return f(a)}})}let y="</body></html>";function z(){let a=!1;return new TransformStream({transform(b,c){if(a)return c.enqueue(b);let d=(0,i.indexOfUint8Array)(b,h.ENCODED_TAGS.CLOSED.BODY_AND_HTML);if(d>-1){if(a=!0,b.length===h.ENCODED_TAGS.CLOSED.BODY_AND_HTML.length)return;let e=b.slice(0,d);if(c.enqueue(e),b.length>h.ENCODED_TAGS.CLOSED.BODY_AND_HTML.length+d){let a=b.slice(d+h.ENCODED_TAGS.CLOSED.BODY_AND_HTML.length);c.enqueue(a)}}else c.enqueue(b)},flush(a){a.enqueue(h.ENCODED_TAGS.CLOSED.BODY_AND_HTML)}})}function A(){let a=!1,b=!1;return new TransformStream({async transform(c,d){!a&&(0,i.indexOfUint8Array)(c,h.ENCODED_TAGS.OPENING.HTML)>-1&&(a=!0),!b&&(0,i.indexOfUint8Array)(c,h.ENCODED_TAGS.OPENING.BODY)>-1&&(b=!0),d.enqueue(c)},flush(c){let d=[];a||d.push("html"),b||d.push("body"),d.length&&c.enqueue(m.encode(`<html id="__next_error__">
758
758
  <template
759
759
  data-next-error-message="Missing ${d.map(a=>`<${a}>`).join(d.length>1?" and ":"")} tags in the root layout.
760
760
  Read more at https://nextjs.org/docs/messages/missing-root-layout-tags"
761
761
  data-next-error-digest="${j.MISSING_ROOT_TAGS_ERROR}"
762
762
  data-next-error-stack=""
763
763
  ></template>
764
- `))}})}async function B(a,{suffix:b,inlinedDataStream:c,isStaticGeneration:d,isBuildTimePrerendering:e,buildId:h,getServerInsertedHTML:i,getServerInsertedMetadata:j,validateRootLayout:k}){let l,n,o=b?b.split(y,1)[0]:null;d&&await a.allReady;var p=[s(),t(e,h),v(j),null!=o&&o.length>0?(n=!1,new TransformStream({transform(a,b){if(b.enqueue(a),!n){n=!0;let a=new f.DetachedPromise;l=a,(0,g.scheduleImmediate)(()=>{try{b.enqueue(m.encode(o))}catch{}finally{l=void 0,a.resolve()}})}},flush(a){if(l)return l.promise;n||a.enqueue(m.encode(o))}})):null,c?x(c,!0):null,k?A():null,z(),w(i)];let q=a;for(let a of p)a&&(q=q.pipeThrough(a));return q}async function C(a,{getServerInsertedHTML:b,getServerInsertedMetadata:c}){return a.pipeThrough(s()).pipeThrough(new TransformStream({transform(a,b){(0,i.isEquivalentUint8Arrays)(a,h.ENCODED_TAGS.CLOSED.BODY_AND_HTML)||(0,i.isEquivalentUint8Arrays)(a,h.ENCODED_TAGS.CLOSED.BODY)||(0,i.isEquivalentUint8Arrays)(a,h.ENCODED_TAGS.CLOSED.HTML)||(a=(0,i.removeFromUint8Array)(a,h.ENCODED_TAGS.CLOSED.BODY),a=(0,i.removeFromUint8Array)(a,h.ENCODED_TAGS.CLOSED.HTML),b.enqueue(a))}})).pipeThrough(w(b)).pipeThrough(v(c))}async function D(a,{inlinedDataStream:b,getServerInsertedHTML:c,getServerInsertedMetadata:d,isBuildTimePrerendering:e,buildId:f}){return a.pipeThrough(s()).pipeThrough(t(e,f)).pipeThrough(w(c)).pipeThrough(v(d)).pipeThrough(x(b,!0)).pipeThrough(z())}async function E(a,{delayDataUntilFirstHtmlChunk:b,inlinedDataStream:c,getServerInsertedHTML:d,getServerInsertedMetadata:e}){return a.pipeThrough(s()).pipeThrough(w(d)).pipeThrough(v(e)).pipeThrough(x(c,b)).pipeThrough(z())}function F(){return o(y)}},51318:(a,b,c)=>{"use strict";a.exports=c(9907)},52237:(a,b,c)=>{"use strict";Object.defineProperty(b,"__esModule",{value:!0}),Object.defineProperty(b,"addPathSuffix",{enumerable:!0,get:function(){return e}});let d=c(2213);function e(a,b){if(!a.startsWith("/")||!b)return a;let{pathname:c,query:e,hash:f}=(0,d.parsePath)(a);return""+c+b+e+f}},52318:(a,b)=>{"use strict";Object.defineProperty(b,"__esModule",{value:!0}),!function(a,b){for(var c in b)Object.defineProperty(a,c,{enumerable:!0,get:b[c]})}(b,{BailoutToCSRError:function(){return d},isBailoutToCSRError:function(){return e}});let c="BAILOUT_TO_CLIENT_SIDE_RENDERING";class d extends Error{constructor(a){super("Bail out to client-side rendering: "+a),this.reason=a,this.digest=c}}function e(a){return"object"==typeof a&&null!==a&&"digest"in a&&a.digest===c}},52577:(a,b)=>{"use strict";Object.defineProperty(b,"__esModule",{value:!0}),!function(a,b){for(var c in b)Object.defineProperty(a,c,{enumerable:!0,get:b[c]})}(b,{DynamicServerError:function(){return d},isDynamicServerError:function(){return e}});let c="DYNAMIC_SERVER_USAGE";class d extends Error{constructor(a){super("Dynamic server usage: "+a),this.description=a,this.digest=c}}function e(a){return"object"==typeof a&&null!==a&&"digest"in a&&"string"==typeof a.digest&&a.digest===c}("function"==typeof b.default||"object"==typeof b.default&&null!==b.default)&&void 0===b.default.__esModule&&(Object.defineProperty(b.default,"__esModule",{value:!0}),Object.assign(b.default,b),a.exports=b.default)},52644:(a,b,c)=>{"use strict";a.exports=c.p+"static/media/check-disk-encryption.6b124b4e.mjs"},52741:(a,b,c)=>{"use strict";Object.defineProperty(b,"__esModule",{value:!0}),Object.defineProperty(b,"notFound",{enumerable:!0,get:function(){return e}});let d=""+c(15570).HTTP_ERROR_FALLBACK_ERROR_CODE+";404";function e(){let a=Object.defineProperty(Error(d),"__NEXT_ERROR_CODE",{value:"E394",enumerable:!1,configurable:!0});throw a.digest=d,a}("function"==typeof b.default||"object"==typeof b.default&&null!==b.default)&&void 0===b.default.__esModule&&(Object.defineProperty(b.default,"__esModule",{value:!0}),Object.assign(b.default,b),a.exports=b.default)},53476:(a,b)=>{"use strict";function c(a,b){if(0===b.length)return 0;if(0===a.length||b.length>a.length)return -1;for(let c=0;c<=a.length-b.length;c++){let d=!0;for(let e=0;e<b.length;e++)if(a[c+e]!==b[e]){d=!1;break}if(d)return c}return -1}function d(a,b){if(a.length!==b.length)return!1;for(let c=0;c<a.length;c++)if(a[c]!==b[c])return!1;return!0}function e(a,b){let d=c(a,b);if(0===d)return a.subarray(b.length);if(!(d>-1))return a;{let c=new Uint8Array(a.length-b.length);return c.set(a.slice(0,d)),c.set(a.slice(d+b.length),d),c}}Object.defineProperty(b,"__esModule",{value:!0}),!function(a,b){for(var c in b)Object.defineProperty(a,c,{enumerable:!0,get:b[c]})}(b,{indexOfUint8Array:function(){return c},isEquivalentUint8Arrays:function(){return d},removeFromUint8Array:function(){return e}})},54151:(a,b,c)=>{"use strict";c.d(b,{A:()=>f});var d=c(21124),e=c(38301);function f({name:a="folder_path",value:b,onChange:c,inputRef:f,placeholder:g="/Users/you/Documents/my-project"}){let[h,i]=e.useState(null),[j,k]=e.useState(!1),[l,m]=e.useState(""),[n,o]=e.useState(""),[p,q]=e.useState(null);async function r(){let a;if(i(null),!navigator.clipboard?.readText)return void i({kind:"error",message:"Clipboard not available."});try{a=await navigator.clipboard.readText()}catch{i({kind:"error",message:"Allow clipboard access."});return}let b=(a||"").trim();if((b.startsWith('"')&&b.endsWith('"')||b.startsWith("'")&&b.endsWith("'"))&&(b=b.slice(1,-1)),b.startsWith("file://"))try{b=decodeURI(b.slice(7))}catch{}return b?b.startsWith("/")||b.startsWith("~")?void(c(b),i({kind:"success",message:"Pasted."})):void i({kind:"error",message:"Path must be absolute."}):void i({kind:"error",message:"Clipboard is empty."})}async function s(){i(null),q("pick");try{let a=await fetch("/api/fs/pick-folder",{method:"POST",headers:{"content-type":"application/json"},body:JSON.stringify({title:"Choose project folder",start_path:b&&b.startsWith("/")?b:void 0})});if(499===a.status)return void i({kind:"error",message:"Cancelled."});let d=await a.json();if(!a.ok)return void i({kind:"error",message:d.error||"Picker failed."});c(d.folder_path),i({kind:"success",message:`Selected ${d.folder_path}`})}catch(a){i({kind:"error",message:String(a?.message||a)})}finally{q(null)}}async function t(){if(i(null),!l.trim()||!n.trim())return void i({kind:"error",message:"Parent and name required."});q("create");try{let a=await fetch("/api/fs/create-folder",{method:"POST",headers:{"content-type":"application/json"},body:JSON.stringify({parent:l.trim(),name:n.trim()})}),b=await a.json();if(!a.ok)return void i({kind:"error",message:b.error||"Create failed."});c(b.folder_path),k(!1),o(""),i({kind:"success",message:`Created ${b.folder_path}`})}catch(a){i({kind:"error",message:String(a?.message||a)})}finally{q(null)}}return e.useEffect(()=>{j&&!l&&m(b||"~/Documents")},[j,b,l]),(0,d.jsxs)(d.Fragment,{children:[(0,d.jsxs)("div",{className:"agents-modal-paste-row",children:[(0,d.jsx)("input",{ref:f,name:a,type:"text",placeholder:g,autoComplete:"off",spellCheck:!1,value:b||"",onChange:a=>{c(a.target.value),h&&i(null)},required:!0}),(0,d.jsx)("button",{type:"button",className:"admin-button secondary",onClick:s,disabled:"pick"===p,children:"pick"===p?"Opening…":"Choose folder…"})]}),(0,d.jsxs)("div",{className:"agents-modal-folder-tools",children:[(0,d.jsx)("button",{type:"button",className:"admin-button secondary",onClick:r,children:"Paste from clipboard"}),(0,d.jsx)("button",{type:"button",className:"admin-button secondary",onClick:()=>c("~/Documents"),children:"~/Documents"}),(0,d.jsx)("button",{type:"button",className:"admin-button secondary",onClick:()=>c("~/Desktop"),children:"~/Desktop"}),(0,d.jsx)("button",{type:"button",className:"admin-button secondary",onClick:()=>k(a=>!a),children:j?"Cancel new folder":"+ New folder"})]}),j?(0,d.jsxs)("div",{className:"agents-modal-create-folder",children:[(0,d.jsx)("small",{children:"Create a folder anywhere outside system directories. Parent must exist."}),(0,d.jsx)("div",{className:"agents-modal-create-row",children:(0,d.jsx)("input",{type:"text",placeholder:"Parent (e.g. ~/Documents)",value:l,onChange:a=>m(a.target.value),spellCheck:!1,autoComplete:"off"})}),(0,d.jsxs)("div",{className:"agents-modal-create-row",children:[(0,d.jsx)("input",{type:"text",placeholder:"New folder name",value:n,onChange:a=>o(a.target.value),spellCheck:!1,autoComplete:"off"}),(0,d.jsx)("button",{type:"button",className:"admin-button",onClick:t,disabled:"create"===p,children:"create"===p?"Creating…":"Create"})]})]}):null,h?(0,d.jsx)("p",{className:`agents-modal-feedback ${h.kind}`,role:"status","aria-live":"polite",children:h.message}):null]})}},54210:(a,b,c)=>{"use strict";let d;Object.defineProperty(b,"__esModule",{value:!0}),!function(a,b){for(var c in b)Object.defineProperty(a,c,{enumerable:!0,get:b[c]})}(b,{arrayBufferToString:function(){return h},decrypt:function(){return k},encrypt:function(){return j},getActionEncryptionKey:function(){return p},getClientReferenceManifestForRsc:function(){return o},getServerModuleMap:function(){return n},setReferenceManifestsSingleton:function(){return m},stringToUint8Array:function(){return i}});let e=c(58871),f=c(17916),g=c(29294);function h(a){let b=new Uint8Array(a),c=b.byteLength;if(c<65535)return String.fromCharCode.apply(null,b);let d="";for(let a=0;a<c;a++)d+=String.fromCharCode(b[a]);return d}function i(a){let b=a.length,c=new Uint8Array(b);for(let d=0;d<b;d++)c[d]=a.charCodeAt(d);return c}function j(a,b,c){return crypto.subtle.encrypt({name:"AES-GCM",iv:b},a,c)}function k(a,b,c){return crypto.subtle.decrypt({name:"AES-GCM",iv:b},a,c)}let l=Symbol.for("next.server.action-manifests");function m({page:a,clientReferenceManifest:b,serverActionsManifest:c,serverModuleMap:d}){var e;let g=null==(e=globalThis[l])?void 0:e.clientReferenceManifestsPerPage;globalThis[l]={clientReferenceManifestsPerPage:{...g,[(0,f.normalizeAppPath)(a)]:b},serverActionsManifest:c,serverModuleMap:d}}function n(){let a=globalThis[l];if(!a)throw Object.defineProperty(new e.InvariantError("Missing manifest for Server Actions."),"__NEXT_ERROR_CODE",{value:"E606",enumerable:!1,configurable:!0});return a.serverModuleMap}function o(){let a=globalThis[l];if(!a)throw Object.defineProperty(new e.InvariantError("Missing manifest for Server Actions."),"__NEXT_ERROR_CODE",{value:"E606",enumerable:!1,configurable:!0});let{clientReferenceManifestsPerPage:b}=a,c=g.workAsyncStorage.getStore();if(!c){var d=b;let a=Object.values(d),c={clientModules:{},edgeRscModuleMapping:{},rscModuleMapping:{}};for(let b of a)c.clientModules={...c.clientModules,...b.clientModules},c.edgeRscModuleMapping={...c.edgeRscModuleMapping,...b.edgeRscModuleMapping},c.rscModuleMapping={...c.rscModuleMapping,...b.rscModuleMapping};return c}let f=b[c.route];if(!f)throw Object.defineProperty(new e.InvariantError(`Missing Client Reference Manifest for ${c.route}.`),"__NEXT_ERROR_CODE",{value:"E570",enumerable:!1,configurable:!0});return f}async function p(){if(d)return d;let a=globalThis[l];if(!a)throw Object.defineProperty(new e.InvariantError("Missing manifest for Server Actions."),"__NEXT_ERROR_CODE",{value:"E606",enumerable:!1,configurable:!0});let b=process.env.NEXT_SERVER_ACTIONS_ENCRYPTION_KEY||a.serverActionsManifest.encryptionKey;if(void 0===b)throw Object.defineProperty(new e.InvariantError("Missing encryption key for Server Actions"),"__NEXT_ERROR_CODE",{value:"E571",enumerable:!1,configurable:!0});return d=await crypto.subtle.importKey("raw",i(atob(b)),"AES-GCM",!0,["encrypt","decrypt"])}},54353:(a,b)=>{"use strict";Object.defineProperty(b,"__esModule",{value:!0}),!function(a,b){for(var c in b)Object.defineProperty(a,c,{enumerable:!0,get:b[c]})}(b,{DOC_PREFETCH_RANGE_HEADER_VALUE:function(){return d},doesExportedHtmlMatchBuildId:function(){return g},insertBuildIdComment:function(){return f}});let c="<!DOCTYPE html>",d="bytes=0-63";function e(a){return a.slice(0,24).replace(/-/g,"_")}function f(a,b){return b.includes("--\x3e")||!a.startsWith(c)?a:a.replace(c,c+"\x3c!--"+e(b)+"--\x3e")}function g(a,b){return a.startsWith(c+"\x3c!--"+e(b)+"--\x3e")}},54591:(a,b,c)=>{"use strict";function d(a={}){let b=Number(a.price_au_usd_oz??0),c=Number(a.payable_production_oz_per_year??0),e=Math.max(0,Math.floor(Number(a.life_years??0))),f=Number(a.opex_annual??0),g=Number(a.sustaining_capex??0),h=Number(a.royalties??0),i=Number(a.taxes??0),j=Number(a.closure_provision??0),k=Number(a.discount_rate??.08);if(!b||!c||!e)return{valuation_tier:"t2_dcf",status:"insufficient_inputs",npv_usd:null,annual_cash_flows:[]};let l=[],m=0;for(let a=1;a<=e;a++){let d=c*b,n=d-f-g-h-i-(a===e?j:0),o=1/(1+k)**a*n;m+=o,l.push({year:a,revenue_usd:d,free_cash_flow_usd:n,discounted_fcf_usd:o})}return{valuation_tier:"t2_dcf",status:"ok",npv_usd:Math.round(100*m)/100,discount_rate:k,annual_cash_flows:l.map(a=>({year:a.year,revenue_usd:Math.round(100*a.revenue_usd)/100,free_cash_flow_usd:Math.round(100*a.free_cash_flow_usd)/100,discounted_fcf_usd:Math.round(100*a.discounted_fcf_usd)/100}))}}c.d(b,{d:()=>d})},55864:(a,b,c)=>{Promise.resolve().then(c.bind(c,94657)),Promise.resolve().then(c.bind(c,93076)),Promise.resolve().then(c.bind(c,48636)),Promise.resolve().then(c.bind(c,86770)),Promise.resolve().then(c.t.bind(c,3991,23))},56534:(a,b,c)=>{"use strict";function d(a){return a.replace(/[\t\n\r ]+/g," ").replace(/^ | $/g,"").toLowerCase().toUpperCase()}c.d(b,{B:()=>d})},56557:(a,b,c)=>{"use strict";Object.defineProperty(b,"__esModule",{value:!0}),Object.defineProperty(b,"default",{enumerable:!0,get:function(){return n}});let d=c(3017),e=c(31730),f=c(9027),g=c(86331),h=c(90914);function i(a,b){if(!a)return b;let c=parseInt(a,10);return Number.isFinite(c)&&c>0?c:b}!function(a,b){Object.keys(a).forEach(function(c){"default"===c||Object.prototype.hasOwnProperty.call(b,c)||Object.defineProperty(b,c,{enumerable:!0,get:function(){return a[c]}})})}(c(94062),b);let j=i(process.env.NEXT_PRIVATE_RESPONSE_CACHE_TTL,1e4),k=i(process.env.NEXT_PRIVATE_RESPONSE_CACHE_MAX_SIZE,150),l="__ttl_sentinel__";function m(a,b){return`${a}\0${b??l}`}class n{constructor(a,b=k,c=j){this.batcher=d.Batcher.create({cacheKeyFn:({key:a,isOnDemandRevalidate:b})=>`${a}-${b?"1":"0"}`,schedulerFn:g.scheduleOnNextTick}),this.revalidateBatcher=d.Batcher.create({schedulerFn:g.scheduleOnNextTick}),this.evictedInvocationIDs=new Set,this.minimal_mode=a,this.maxSize=b,this.ttl=c,this.cache=new e.LRUCache(b,void 0,a=>{let b=function(a){let b=a.lastIndexOf("\0");if(-1===b)return;let c=a.slice(b+1);return c===l?void 0:c}(a);if(b){if(this.evictedInvocationIDs.size>=100){let a=this.evictedInvocationIDs.values().next().value;a&&this.evictedInvocationIDs.delete(a)}this.evictedInvocationIDs.add(b)}})}async get(a,b,c){if(!a)return b({hasResolved:!1,previousCacheEntry:null});if(this.minimal_mode){let b=m(a,c.invocationID),d=this.cache.get(b);if(d){if(void 0!==c.invocationID)return(0,h.toResponseCacheEntry)(d.entry);let a=Date.now();if(d.expiresAt>a)return(0,h.toResponseCacheEntry)(d.entry);this.cache.remove(b)}c.invocationID&&this.evictedInvocationIDs.has(c.invocationID)&&(0,f.warnOnce)(`Response cache entry was evicted for invocation ${c.invocationID}. Consider increasing NEXT_PRIVATE_RESPONSE_CACHE_MAX_SIZE (current: ${this.maxSize}).`)}let{incrementalCache:d,isOnDemandRevalidate:e=!1,isFallback:g=!1,isRoutePPREnabled:i=!1,isPrefetch:j=!1,waitUntil:k,routeKind:l,invocationID:n}=c,o=await this.batcher.batch({key:a,isOnDemandRevalidate:e},(c,f)=>{let h=this.handleGet(a,b,{incrementalCache:d,isOnDemandRevalidate:e,isFallback:g,isRoutePPREnabled:i,isPrefetch:j,routeKind:l,invocationID:n},f);return k&&k(h),h});return(0,h.toResponseCacheEntry)(o)}async handleGet(a,b,c,d){let e=null,f=!1;try{if((e=this.minimal_mode?null:await c.incrementalCache.get(a,{kind:(0,h.routeKindToIncrementalCacheKind)(c.routeKind),isRoutePPREnabled:c.isRoutePPREnabled,isFallback:c.isFallback}))&&!c.isOnDemandRevalidate&&(d(e),f=!0,!e.isStale||c.isPrefetch))return e;let g=await this.revalidate(a,c.incrementalCache,c.isRoutePPREnabled,c.isFallback,b,e,null!==e&&!c.isOnDemandRevalidate,void 0,c.invocationID);if(!g){if(this.minimal_mode){let b=m(a,c.invocationID);this.cache.remove(b)}return null}return c.isOnDemandRevalidate,g}catch(a){if(f)return console.error(a),null;throw a}}async revalidate(a,b,c,d,e,f,g,h,i){return this.revalidateBatcher.batch(a,()=>{let j=this.handleRevalidate(a,b,c,d,e,f,g,i);return h&&h(j),j})}async handleRevalidate(a,b,c,d,e,f,g,i){try{let j=await e({hasResolved:g,previousCacheEntry:f,isRevalidating:!0});if(!j)return null;let k=await (0,h.fromResponseCacheEntry)({...j,isMiss:!f});if(k.cacheControl)if(this.minimal_mode){let b=m(a,i);this.cache.set(b,{entry:k,expiresAt:Date.now()+this.ttl})}else await b.set(a,k.value,{cacheControl:k.cacheControl,isRoutePPREnabled:c,isFallback:d});return k}catch(e){if(null==f?void 0:f.cacheControl){let e=Math.min(Math.max(f.cacheControl.revalidate||3,3),30),g=void 0===f.cacheControl.expire?void 0:Math.max(e+3,f.cacheControl.expire);await b.set(a,f.value,{cacheControl:{revalidate:e,expire:g},isRoutePPREnabled:c,isFallback:d})}throw e}}}},57100:(a,b)=>{"use strict";function c(a,b){let c;if((null==b?void 0:b.host)&&!Array.isArray(b.host))c=b.host.toString().split(":",1)[0];else{if(!a.hostname)return;c=a.hostname}return c.toLowerCase()}Object.defineProperty(b,"__esModule",{value:!0}),Object.defineProperty(b,"getHostname",{enumerable:!0,get:function(){return c}})},57403:(a,b,c)=>{"use strict";let d,e;c.d(b,{K3:()=>f,rU:()=>l,tj:()=>j});let f=Number(process.env.MINES_OCR_THRESHOLD_CHARS_PER_PAGE)||80,g=process.env.MINES_OCR_LANGS||"spa+eng";async function h(){return void 0===d&&(d=(async()=>{try{return await import("tesseract.js")}catch{return null}})().catch(()=>null)),d}async function i(){return void 0===e&&(e=(async()=>{try{let a=await import("pdf-to-png-converter");if("function"==typeof a?.pdfToPng)return async b=>(await a.pdfToPng(b,{viewportScale:2})).map((a,b)=>({page:a.pageNumber||b+1,buffer:a.content}))}catch{}return null})().catch(()=>null)),e}function j(a,b){let c=b;return(null==c||Number.isNaN(Number(c)))&&(c=String(a??"").trim().length),Number(c)<f}async function k(a,b=g){let c=await h(),d=c?.recognize||c?.default?.recognize;if("function"!=typeof d)return null;try{let{data:c}=await d(a,b);return{text:String(c?.text||""),confidence:Number(c?.confidence??0)}}catch{return null}}async function l(a,b){let c,d=await i(),e=await h();if(!d||!e)return{available:!1,pages:[]};try{c=await d(a)}catch{return{available:!1,pages:[]}}let[f,g]=Array.isArray(b)?b:[null,null],j=[];for(let a of c){if(null!=f&&a.page<f||null!=g&&a.page>g)continue;let b=await k(a.buffer);j.push({page:a.page,text:b?.text||"",confidence:b?.confidence??0})}return{available:!0,pages:j}}},57647:(a,b,c)=>{"use strict";c.a(a,async(a,d)=>{try{c.d(b,{yi:()=>i}),c(73024),c(76760);var e=c(84104);c(83498);var f=c(42382),g=c(40266),h=a([e,f,g]);[e,f,g]=h.then?(await h)():h;let j=[["project-watcher","Project Watcher","project_watcher","claude-code",["gh_repo_read","gh_issue_list","gh_pr_list","web_fetch","file_read"],["investigate","retro"],"Watches repos, issues, PRs, deploys, and produces weekly project pulses."],["personal-assistant","Personal Assistant","personal_assistant","anthropic",["gmail_messages_list","gmail_message_read","calendar_events_list","whatsapp_send"],[],"Reads inbox and calendar context, drafts replies, and keeps the operator organized."],["engineering-lead","Engineering Lead","engineering_lead","claude-code",["gh_repo_read","gh_issue_list","gh_pr_list","terminal_run","file_read","file_write"],["investigate","review","ship","qa"],"Leads implementation, review, QA, and preview deploys with explicit approval gates."],["marketing-lead","Marketing Lead","marketing_lead","anthropic",["web_search","web_fetch","file_write","create_artifact"],["design-shotgun","impeccable"],"Creates market research, launch copy, positioning, and design briefs."],["meeting-notes","Meeting Notes Taker","meeting_notes","anthropic",["transcribe_audio","file_write","create_artifact"],[],"Turns recordings into transcripts, decisions, action items, and follow-ups."],["bug-triage","Bug Triage Specialist","bug_triage","claude-code",["gh_issue_list","gh_pr_list","file_read"],["investigate"],"Classifies incoming bugs and proposes severity and next actions."],["phase-runner","Phase Runner","phase_runner","claude-code",["file_read","file_write","terminal_run"],["ship"],"Executes approved implementation phases and reports blockers."],["code-reviewer","Code Reviewer","code_reviewer","claude-code",["file_read","gh_pr_list"],["review"],"Provides independent diff review before merge."],["competitor-scout","Competitor Scout","competitor_scout","anthropic",["web_search","web_fetch","create_artifact"],[],"Tracks competitor movement and summarizes weekly signals."],["finance-ops","Finance and Ops","finance_ops","anthropic",["file_read","create_artifact"],[],"Reads finance docs and drafts advisory runway and ops summaries."],["legal-compliance","Legal and Compliance","legal_compliance","anthropic",["file_read","web_fetch","create_artifact"],[],"Reviews policy and compliance documents as advisory output only."],["customer-support","Customer Support","customer_support","anthropic",["gmail_message_read","file_write"],[],"Drafts customer replies and escalates approval-required sends."]].map(([a,b,c,d,e,f,g])=>({slug:a,title:b,role:c,engine_default:d,tools_required:e,tools_optional:[],skills:f,memory_scopes:["agent","project"],approval_profile:"personal_assistant"===c?"strict":"standard",description_long:g})),k=["project-watcher","personal-assistant","engineering-lead","marketing-lead","meeting-notes"];function i(a=(0,e.Lf)()){if(globalThis.__madarxAgentTemplatesSeeded)return;let b=(0,e.kF)();for(let c of j)a.prepare(`INSERT INTO marketplace_items (id, kind, slug, title, description, category, author, source_kind, version, manifest_json, risk_summary, tags, created_at)
764
+ `))}})}async function B(a,{suffix:b,inlinedDataStream:c,isStaticGeneration:d,isBuildTimePrerendering:e,buildId:h,getServerInsertedHTML:i,getServerInsertedMetadata:j,validateRootLayout:k}){let l,n,o=b?b.split(y,1)[0]:null;d&&await a.allReady;var p=[s(),t(e,h),v(j),null!=o&&o.length>0?(n=!1,new TransformStream({transform(a,b){if(b.enqueue(a),!n){n=!0;let a=new f.DetachedPromise;l=a,(0,g.scheduleImmediate)(()=>{try{b.enqueue(m.encode(o))}catch{}finally{l=void 0,a.resolve()}})}},flush(a){if(l)return l.promise;n||a.enqueue(m.encode(o))}})):null,c?x(c,!0):null,k?A():null,z(),w(i)];let q=a;for(let a of p)a&&(q=q.pipeThrough(a));return q}async function C(a,{getServerInsertedHTML:b,getServerInsertedMetadata:c}){return a.pipeThrough(s()).pipeThrough(new TransformStream({transform(a,b){(0,i.isEquivalentUint8Arrays)(a,h.ENCODED_TAGS.CLOSED.BODY_AND_HTML)||(0,i.isEquivalentUint8Arrays)(a,h.ENCODED_TAGS.CLOSED.BODY)||(0,i.isEquivalentUint8Arrays)(a,h.ENCODED_TAGS.CLOSED.HTML)||(a=(0,i.removeFromUint8Array)(a,h.ENCODED_TAGS.CLOSED.BODY),a=(0,i.removeFromUint8Array)(a,h.ENCODED_TAGS.CLOSED.HTML),b.enqueue(a))}})).pipeThrough(w(b)).pipeThrough(v(c))}async function D(a,{inlinedDataStream:b,getServerInsertedHTML:c,getServerInsertedMetadata:d,isBuildTimePrerendering:e,buildId:f}){return a.pipeThrough(s()).pipeThrough(t(e,f)).pipeThrough(w(c)).pipeThrough(v(d)).pipeThrough(x(b,!0)).pipeThrough(z())}async function E(a,{delayDataUntilFirstHtmlChunk:b,inlinedDataStream:c,getServerInsertedHTML:d,getServerInsertedMetadata:e}){return a.pipeThrough(s()).pipeThrough(w(d)).pipeThrough(v(e)).pipeThrough(x(c,b)).pipeThrough(z())}function F(){return o(y)}},51318:(a,b,c)=>{"use strict";a.exports=c(9907)},52237:(a,b,c)=>{"use strict";Object.defineProperty(b,"__esModule",{value:!0}),Object.defineProperty(b,"addPathSuffix",{enumerable:!0,get:function(){return e}});let d=c(2213);function e(a,b){if(!a.startsWith("/")||!b)return a;let{pathname:c,query:e,hash:f}=(0,d.parsePath)(a);return""+c+b+e+f}},52318:(a,b)=>{"use strict";Object.defineProperty(b,"__esModule",{value:!0}),!function(a,b){for(var c in b)Object.defineProperty(a,c,{enumerable:!0,get:b[c]})}(b,{BailoutToCSRError:function(){return d},isBailoutToCSRError:function(){return e}});let c="BAILOUT_TO_CLIENT_SIDE_RENDERING";class d extends Error{constructor(a){super("Bail out to client-side rendering: "+a),this.reason=a,this.digest=c}}function e(a){return"object"==typeof a&&null!==a&&"digest"in a&&a.digest===c}},52577:(a,b)=>{"use strict";Object.defineProperty(b,"__esModule",{value:!0}),!function(a,b){for(var c in b)Object.defineProperty(a,c,{enumerable:!0,get:b[c]})}(b,{DynamicServerError:function(){return d},isDynamicServerError:function(){return e}});let c="DYNAMIC_SERVER_USAGE";class d extends Error{constructor(a){super("Dynamic server usage: "+a),this.description=a,this.digest=c}}function e(a){return"object"==typeof a&&null!==a&&"digest"in a&&"string"==typeof a.digest&&a.digest===c}("function"==typeof b.default||"object"==typeof b.default&&null!==b.default)&&void 0===b.default.__esModule&&(Object.defineProperty(b.default,"__esModule",{value:!0}),Object.assign(b.default,b),a.exports=b.default)},52644:(a,b,c)=>{"use strict";a.exports=c.p+"static/media/check-disk-encryption.6b124b4e.mjs"},52741:(a,b,c)=>{"use strict";Object.defineProperty(b,"__esModule",{value:!0}),Object.defineProperty(b,"notFound",{enumerable:!0,get:function(){return e}});let d=""+c(15570).HTTP_ERROR_FALLBACK_ERROR_CODE+";404";function e(){let a=Object.defineProperty(Error(d),"__NEXT_ERROR_CODE",{value:"E394",enumerable:!1,configurable:!0});throw a.digest=d,a}("function"==typeof b.default||"object"==typeof b.default&&null!==b.default)&&void 0===b.default.__esModule&&(Object.defineProperty(b.default,"__esModule",{value:!0}),Object.assign(b.default,b),a.exports=b.default)},53476:(a,b)=>{"use strict";function c(a,b){if(0===b.length)return 0;if(0===a.length||b.length>a.length)return -1;for(let c=0;c<=a.length-b.length;c++){let d=!0;for(let e=0;e<b.length;e++)if(a[c+e]!==b[e]){d=!1;break}if(d)return c}return -1}function d(a,b){if(a.length!==b.length)return!1;for(let c=0;c<a.length;c++)if(a[c]!==b[c])return!1;return!0}function e(a,b){let d=c(a,b);if(0===d)return a.subarray(b.length);if(!(d>-1))return a;{let c=new Uint8Array(a.length-b.length);return c.set(a.slice(0,d)),c.set(a.slice(d+b.length),d),c}}Object.defineProperty(b,"__esModule",{value:!0}),!function(a,b){for(var c in b)Object.defineProperty(a,c,{enumerable:!0,get:b[c]})}(b,{indexOfUint8Array:function(){return c},isEquivalentUint8Arrays:function(){return d},removeFromUint8Array:function(){return e}})},54151:(a,b,c)=>{"use strict";c.d(b,{A:()=>f});var d=c(21124),e=c(38301);function f({name:a="folder_path",value:b,onChange:c,inputRef:f,placeholder:g="/Users/you/Documents/my-project"}){let[h,i]=e.useState(null),[j,k]=e.useState(!1),[l,m]=e.useState(""),[n,o]=e.useState(""),[p,q]=e.useState(null);async function r(){let a;if(i(null),!navigator.clipboard?.readText)return void i({kind:"error",message:"Clipboard not available."});try{a=await navigator.clipboard.readText()}catch{i({kind:"error",message:"Allow clipboard access."});return}let b=(a||"").trim();if((b.startsWith('"')&&b.endsWith('"')||b.startsWith("'")&&b.endsWith("'"))&&(b=b.slice(1,-1)),b.startsWith("file://"))try{b=decodeURI(b.slice(7))}catch{}return b?b.startsWith("/")||b.startsWith("~")?void(c(b),i({kind:"success",message:"Pasted."})):void i({kind:"error",message:"Path must be absolute."}):void i({kind:"error",message:"Clipboard is empty."})}async function s(){i(null),q("pick");try{let a=await fetch("/api/fs/pick-folder",{method:"POST",headers:{"content-type":"application/json"},body:JSON.stringify({title:"Choose project folder",start_path:b&&b.startsWith("/")?b:void 0})});if(499===a.status)return void i({kind:"error",message:"Cancelled."});let d=await a.json();if(!a.ok)return void i({kind:"error",message:d.error||"Picker failed."});c(d.folder_path),i({kind:"success",message:`Selected ${d.folder_path}`})}catch(a){i({kind:"error",message:String(a?.message||a)})}finally{q(null)}}async function t(){if(i(null),!l.trim()||!n.trim())return void i({kind:"error",message:"Parent and name required."});q("create");try{let a=await fetch("/api/fs/create-folder",{method:"POST",headers:{"content-type":"application/json"},body:JSON.stringify({parent:l.trim(),name:n.trim()})}),b=await a.json();if(!a.ok)return void i({kind:"error",message:b.error||"Create failed."});c(b.folder_path),k(!1),o(""),i({kind:"success",message:`Created ${b.folder_path}`})}catch(a){i({kind:"error",message:String(a?.message||a)})}finally{q(null)}}return e.useEffect(()=>{j&&!l&&m(b||"~/Documents")},[j,b,l]),(0,d.jsxs)(d.Fragment,{children:[(0,d.jsxs)("div",{className:"agents-modal-paste-row",children:[(0,d.jsx)("input",{ref:f,name:a,type:"text",placeholder:g,autoComplete:"off",spellCheck:!1,value:b||"",onChange:a=>{c(a.target.value),h&&i(null)},required:!0}),(0,d.jsx)("button",{type:"button",className:"admin-button secondary",onClick:s,disabled:"pick"===p,children:"pick"===p?"Opening…":"Choose folder…"})]}),(0,d.jsxs)("div",{className:"agents-modal-folder-tools",children:[(0,d.jsx)("button",{type:"button",className:"admin-button secondary",onClick:r,children:"Paste from clipboard"}),(0,d.jsx)("button",{type:"button",className:"admin-button secondary",onClick:()=>c("~/Documents"),children:"~/Documents"}),(0,d.jsx)("button",{type:"button",className:"admin-button secondary",onClick:()=>c("~/Desktop"),children:"~/Desktop"}),(0,d.jsx)("button",{type:"button",className:"admin-button secondary",onClick:()=>k(a=>!a),children:j?"Cancel new folder":"+ New folder"})]}),j?(0,d.jsxs)("div",{className:"agents-modal-create-folder",children:[(0,d.jsx)("small",{children:"Create a folder anywhere outside system directories. Parent must exist."}),(0,d.jsx)("div",{className:"agents-modal-create-row",children:(0,d.jsx)("input",{type:"text",placeholder:"Parent (e.g. ~/Documents)",value:l,onChange:a=>m(a.target.value),spellCheck:!1,autoComplete:"off"})}),(0,d.jsxs)("div",{className:"agents-modal-create-row",children:[(0,d.jsx)("input",{type:"text",placeholder:"New folder name",value:n,onChange:a=>o(a.target.value),spellCheck:!1,autoComplete:"off"}),(0,d.jsx)("button",{type:"button",className:"admin-button",onClick:t,disabled:"create"===p,children:"create"===p?"Creating…":"Create"})]})]}):null,h?(0,d.jsx)("p",{className:`agents-modal-feedback ${h.kind}`,role:"status","aria-live":"polite",children:h.message}):null]})}},54210:(a,b,c)=>{"use strict";let d;Object.defineProperty(b,"__esModule",{value:!0}),!function(a,b){for(var c in b)Object.defineProperty(a,c,{enumerable:!0,get:b[c]})}(b,{arrayBufferToString:function(){return h},decrypt:function(){return k},encrypt:function(){return j},getActionEncryptionKey:function(){return p},getClientReferenceManifestForRsc:function(){return o},getServerModuleMap:function(){return n},setReferenceManifestsSingleton:function(){return m},stringToUint8Array:function(){return i}});let e=c(58871),f=c(17916),g=c(29294);function h(a){let b=new Uint8Array(a),c=b.byteLength;if(c<65535)return String.fromCharCode.apply(null,b);let d="";for(let a=0;a<c;a++)d+=String.fromCharCode(b[a]);return d}function i(a){let b=a.length,c=new Uint8Array(b);for(let d=0;d<b;d++)c[d]=a.charCodeAt(d);return c}function j(a,b,c){return crypto.subtle.encrypt({name:"AES-GCM",iv:b},a,c)}function k(a,b,c){return crypto.subtle.decrypt({name:"AES-GCM",iv:b},a,c)}let l=Symbol.for("next.server.action-manifests");function m({page:a,clientReferenceManifest:b,serverActionsManifest:c,serverModuleMap:d}){var e;let g=null==(e=globalThis[l])?void 0:e.clientReferenceManifestsPerPage;globalThis[l]={clientReferenceManifestsPerPage:{...g,[(0,f.normalizeAppPath)(a)]:b},serverActionsManifest:c,serverModuleMap:d}}function n(){let a=globalThis[l];if(!a)throw Object.defineProperty(new e.InvariantError("Missing manifest for Server Actions."),"__NEXT_ERROR_CODE",{value:"E606",enumerable:!1,configurable:!0});return a.serverModuleMap}function o(){let a=globalThis[l];if(!a)throw Object.defineProperty(new e.InvariantError("Missing manifest for Server Actions."),"__NEXT_ERROR_CODE",{value:"E606",enumerable:!1,configurable:!0});let{clientReferenceManifestsPerPage:b}=a,c=g.workAsyncStorage.getStore();if(!c){var d=b;let a=Object.values(d),c={clientModules:{},edgeRscModuleMapping:{},rscModuleMapping:{}};for(let b of a)c.clientModules={...c.clientModules,...b.clientModules},c.edgeRscModuleMapping={...c.edgeRscModuleMapping,...b.edgeRscModuleMapping},c.rscModuleMapping={...c.rscModuleMapping,...b.rscModuleMapping};return c}let f=b[c.route];if(!f)throw Object.defineProperty(new e.InvariantError(`Missing Client Reference Manifest for ${c.route}.`),"__NEXT_ERROR_CODE",{value:"E570",enumerable:!1,configurable:!0});return f}async function p(){if(d)return d;let a=globalThis[l];if(!a)throw Object.defineProperty(new e.InvariantError("Missing manifest for Server Actions."),"__NEXT_ERROR_CODE",{value:"E606",enumerable:!1,configurable:!0});let b=process.env.NEXT_SERVER_ACTIONS_ENCRYPTION_KEY||a.serverActionsManifest.encryptionKey;if(void 0===b)throw Object.defineProperty(new e.InvariantError("Missing encryption key for Server Actions"),"__NEXT_ERROR_CODE",{value:"E571",enumerable:!1,configurable:!0});return d=await crypto.subtle.importKey("raw",i(atob(b)),"AES-GCM",!0,["encrypt","decrypt"])}},54353:(a,b)=>{"use strict";Object.defineProperty(b,"__esModule",{value:!0}),!function(a,b){for(var c in b)Object.defineProperty(a,c,{enumerable:!0,get:b[c]})}(b,{DOC_PREFETCH_RANGE_HEADER_VALUE:function(){return d},doesExportedHtmlMatchBuildId:function(){return g},insertBuildIdComment:function(){return f}});let c="<!DOCTYPE html>",d="bytes=0-63";function e(a){return a.slice(0,24).replace(/-/g,"_")}function f(a,b){return b.includes("--\x3e")||!a.startsWith(c)?a:a.replace(c,c+"\x3c!--"+e(b)+"--\x3e")}function g(a,b){return a.startsWith(c+"\x3c!--"+e(b)+"--\x3e")}},54591:(a,b,c)=>{"use strict";function d(a={}){let b=Number(a.price_au_usd_oz??0),c=Number(a.payable_production_oz_per_year??0),e=Math.max(0,Math.floor(Number(a.life_years??0))),f=Number(a.opex_annual??0),g=Number(a.sustaining_capex??0),h=Number(a.royalties??0),i=Number(a.taxes??0),j=Number(a.closure_provision??0),k=Number(a.discount_rate??.08);if(!b||!c||!e)return{valuation_tier:"t2_dcf",status:"insufficient_inputs",npv_usd:null,annual_cash_flows:[]};let l=[],m=0;for(let a=1;a<=e;a++){let d=c*b,n=d-f-g-h-i-(a===e?j:0),o=1/(1+k)**a*n;m+=o,l.push({year:a,revenue_usd:d,free_cash_flow_usd:n,discounted_fcf_usd:o})}return{valuation_tier:"t2_dcf",status:"ok",npv_usd:Math.round(100*m)/100,discount_rate:k,annual_cash_flows:l.map(a=>({year:a.year,revenue_usd:Math.round(100*a.revenue_usd)/100,free_cash_flow_usd:Math.round(100*a.free_cash_flow_usd)/100,discounted_fcf_usd:Math.round(100*a.discounted_fcf_usd)/100}))}}c.d(b,{d:()=>d})},55864:(a,b,c)=>{Promise.resolve().then(c.bind(c,94657)),Promise.resolve().then(c.bind(c,86088)),Promise.resolve().then(c.bind(c,80067)),Promise.resolve().then(c.bind(c,42727)),Promise.resolve().then(c.t.bind(c,3991,23))},56534:(a,b,c)=>{"use strict";function d(a){return a.replace(/[\t\n\r ]+/g," ").replace(/^ | $/g,"").toLowerCase().toUpperCase()}c.d(b,{B:()=>d})},56557:(a,b,c)=>{"use strict";Object.defineProperty(b,"__esModule",{value:!0}),Object.defineProperty(b,"default",{enumerable:!0,get:function(){return n}});let d=c(3017),e=c(31730),f=c(9027),g=c(86331),h=c(90914);function i(a,b){if(!a)return b;let c=parseInt(a,10);return Number.isFinite(c)&&c>0?c:b}!function(a,b){Object.keys(a).forEach(function(c){"default"===c||Object.prototype.hasOwnProperty.call(b,c)||Object.defineProperty(b,c,{enumerable:!0,get:function(){return a[c]}})})}(c(94062),b);let j=i(process.env.NEXT_PRIVATE_RESPONSE_CACHE_TTL,1e4),k=i(process.env.NEXT_PRIVATE_RESPONSE_CACHE_MAX_SIZE,150),l="__ttl_sentinel__";function m(a,b){return`${a}\0${b??l}`}class n{constructor(a,b=k,c=j){this.batcher=d.Batcher.create({cacheKeyFn:({key:a,isOnDemandRevalidate:b})=>`${a}-${b?"1":"0"}`,schedulerFn:g.scheduleOnNextTick}),this.revalidateBatcher=d.Batcher.create({schedulerFn:g.scheduleOnNextTick}),this.evictedInvocationIDs=new Set,this.minimal_mode=a,this.maxSize=b,this.ttl=c,this.cache=new e.LRUCache(b,void 0,a=>{let b=function(a){let b=a.lastIndexOf("\0");if(-1===b)return;let c=a.slice(b+1);return c===l?void 0:c}(a);if(b){if(this.evictedInvocationIDs.size>=100){let a=this.evictedInvocationIDs.values().next().value;a&&this.evictedInvocationIDs.delete(a)}this.evictedInvocationIDs.add(b)}})}async get(a,b,c){if(!a)return b({hasResolved:!1,previousCacheEntry:null});if(this.minimal_mode){let b=m(a,c.invocationID),d=this.cache.get(b);if(d){if(void 0!==c.invocationID)return(0,h.toResponseCacheEntry)(d.entry);let a=Date.now();if(d.expiresAt>a)return(0,h.toResponseCacheEntry)(d.entry);this.cache.remove(b)}c.invocationID&&this.evictedInvocationIDs.has(c.invocationID)&&(0,f.warnOnce)(`Response cache entry was evicted for invocation ${c.invocationID}. Consider increasing NEXT_PRIVATE_RESPONSE_CACHE_MAX_SIZE (current: ${this.maxSize}).`)}let{incrementalCache:d,isOnDemandRevalidate:e=!1,isFallback:g=!1,isRoutePPREnabled:i=!1,isPrefetch:j=!1,waitUntil:k,routeKind:l,invocationID:n}=c,o=await this.batcher.batch({key:a,isOnDemandRevalidate:e},(c,f)=>{let h=this.handleGet(a,b,{incrementalCache:d,isOnDemandRevalidate:e,isFallback:g,isRoutePPREnabled:i,isPrefetch:j,routeKind:l,invocationID:n},f);return k&&k(h),h});return(0,h.toResponseCacheEntry)(o)}async handleGet(a,b,c,d){let e=null,f=!1;try{if((e=this.minimal_mode?null:await c.incrementalCache.get(a,{kind:(0,h.routeKindToIncrementalCacheKind)(c.routeKind),isRoutePPREnabled:c.isRoutePPREnabled,isFallback:c.isFallback}))&&!c.isOnDemandRevalidate&&(d(e),f=!0,!e.isStale||c.isPrefetch))return e;let g=await this.revalidate(a,c.incrementalCache,c.isRoutePPREnabled,c.isFallback,b,e,null!==e&&!c.isOnDemandRevalidate,void 0,c.invocationID);if(!g){if(this.minimal_mode){let b=m(a,c.invocationID);this.cache.remove(b)}return null}return c.isOnDemandRevalidate,g}catch(a){if(f)return console.error(a),null;throw a}}async revalidate(a,b,c,d,e,f,g,h,i){return this.revalidateBatcher.batch(a,()=>{let j=this.handleRevalidate(a,b,c,d,e,f,g,i);return h&&h(j),j})}async handleRevalidate(a,b,c,d,e,f,g,i){try{let j=await e({hasResolved:g,previousCacheEntry:f,isRevalidating:!0});if(!j)return null;let k=await (0,h.fromResponseCacheEntry)({...j,isMiss:!f});if(k.cacheControl)if(this.minimal_mode){let b=m(a,i);this.cache.set(b,{entry:k,expiresAt:Date.now()+this.ttl})}else await b.set(a,k.value,{cacheControl:k.cacheControl,isRoutePPREnabled:c,isFallback:d});return k}catch(e){if(null==f?void 0:f.cacheControl){let e=Math.min(Math.max(f.cacheControl.revalidate||3,3),30),g=void 0===f.cacheControl.expire?void 0:Math.max(e+3,f.cacheControl.expire);await b.set(a,f.value,{cacheControl:{revalidate:e,expire:g},isRoutePPREnabled:c,isFallback:d})}throw e}}}},57100:(a,b)=>{"use strict";function c(a,b){let c;if((null==b?void 0:b.host)&&!Array.isArray(b.host))c=b.host.toString().split(":",1)[0];else{if(!a.hostname)return;c=a.hostname}return c.toLowerCase()}Object.defineProperty(b,"__esModule",{value:!0}),Object.defineProperty(b,"getHostname",{enumerable:!0,get:function(){return c}})},57403:(a,b,c)=>{"use strict";let d,e;c.d(b,{K3:()=>f,rU:()=>l,tj:()=>j});let f=Number(process.env.MINES_OCR_THRESHOLD_CHARS_PER_PAGE)||80,g=process.env.MINES_OCR_LANGS||"spa+eng";async function h(){return void 0===d&&(d=(async()=>{try{return await import("tesseract.js")}catch{return null}})().catch(()=>null)),d}async function i(){return void 0===e&&(e=(async()=>{try{let a=await import("pdf-to-png-converter");if("function"==typeof a?.pdfToPng)return async b=>(await a.pdfToPng(b,{viewportScale:2})).map((a,b)=>({page:a.pageNumber||b+1,buffer:a.content}))}catch{}return null})().catch(()=>null)),e}function j(a,b){let c=b;return(null==c||Number.isNaN(Number(c)))&&(c=String(a??"").trim().length),Number(c)<f}async function k(a,b=g){let c=await h(),d=c?.recognize||c?.default?.recognize;if("function"!=typeof d)return null;try{let{data:c}=await d(a,b);return{text:String(c?.text||""),confidence:Number(c?.confidence??0)}}catch{return null}}async function l(a,b){let c,d=await i(),e=await h();if(!d||!e)return{available:!1,pages:[]};try{c=await d(a)}catch{return{available:!1,pages:[]}}let[f,g]=Array.isArray(b)?b:[null,null],j=[];for(let a of c){if(null!=f&&a.page<f||null!=g&&a.page>g)continue;let b=await k(a.buffer);j.push({page:a.page,text:b?.text||"",confidence:b?.confidence??0})}return{available:!0,pages:j}}},57647:(a,b,c)=>{"use strict";c.a(a,async(a,d)=>{try{c.d(b,{yi:()=>i}),c(73024),c(76760);var e=c(84104);c(83498);var f=c(42382),g=c(40266),h=a([e,f,g]);[e,f,g]=h.then?(await h)():h;let j=[["project-watcher","Project Watcher","project_watcher","claude-code",["gh_repo_read","gh_issue_list","gh_pr_list","web_fetch","file_read"],["investigate","retro"],"Watches repos, issues, PRs, deploys, and produces weekly project pulses."],["personal-assistant","Personal Assistant","personal_assistant","anthropic",["gmail_messages_list","gmail_message_read","calendar_events_list","whatsapp_send"],[],"Reads inbox and calendar context, drafts replies, and keeps the operator organized."],["engineering-lead","Engineering Lead","engineering_lead","claude-code",["gh_repo_read","gh_issue_list","gh_pr_list","terminal_run","file_read","file_write"],["investigate","review","ship","qa"],"Leads implementation, review, QA, and preview deploys with explicit approval gates."],["marketing-lead","Marketing Lead","marketing_lead","anthropic",["web_search","web_fetch","file_write","create_artifact"],["design-shotgun","impeccable"],"Creates market research, launch copy, positioning, and design briefs."],["meeting-notes","Meeting Notes Taker","meeting_notes","anthropic",["transcribe_audio","file_write","create_artifact"],[],"Turns recordings into transcripts, decisions, action items, and follow-ups."],["bug-triage","Bug Triage Specialist","bug_triage","claude-code",["gh_issue_list","gh_pr_list","file_read"],["investigate"],"Classifies incoming bugs and proposes severity and next actions."],["phase-runner","Phase Runner","phase_runner","claude-code",["file_read","file_write","terminal_run"],["ship"],"Executes approved implementation phases and reports blockers."],["code-reviewer","Code Reviewer","code_reviewer","claude-code",["file_read","gh_pr_list"],["review"],"Provides independent diff review before merge."],["competitor-scout","Competitor Scout","competitor_scout","anthropic",["web_search","web_fetch","create_artifact"],[],"Tracks competitor movement and summarizes weekly signals."],["finance-ops","Finance and Ops","finance_ops","anthropic",["file_read","create_artifact"],[],"Reads finance docs and drafts advisory runway and ops summaries."],["legal-compliance","Legal and Compliance","legal_compliance","anthropic",["file_read","web_fetch","create_artifact"],[],"Reviews policy and compliance documents as advisory output only."],["customer-support","Customer Support","customer_support","anthropic",["gmail_message_read","file_write"],[],"Drafts customer replies and escalates approval-required sends."]].map(([a,b,c,d,e,f,g])=>({slug:a,title:b,role:c,engine_default:d,tools_required:e,tools_optional:[],skills:f,memory_scopes:["agent","project"],approval_profile:"personal_assistant"===c?"strict":"standard",description_long:g})),k=["project-watcher","personal-assistant","engineering-lead","marketing-lead","meeting-notes"];function i(a=(0,e.Lf)()){if(globalThis.__madarxAgentTemplatesSeeded)return;let b=(0,e.kF)();for(let c of j)a.prepare(`INSERT INTO marketplace_items (id, kind, slug, title, description, category, author, source_kind, version, manifest_json, risk_summary, tags, created_at)
765
765
  VALUES (?, 'agent', ?, ?, ?, ?, 'madarx', 'builtin', '1.0', ?, ?, ?, ?)
766
766
  ON CONFLICT(kind, slug) DO UPDATE SET title=excluded.title, description=excluded.description, manifest_json=excluded.manifest_json, tags=excluded.tags`).run(`agent:${c.slug}`,c.slug,c.title,c.description_long,c.role,JSON.stringify({agent:c}),c.approval_profile,JSON.stringify([c.role,c.engine_default]),b);if("1"!==process.env.MADARX_SEED_DEFAULT_AGENTS){globalThis.__madarxAgentTemplatesSeeded=!0;return}let c=k.map(()=>"?").join(","),d=a.prepare(`SELECT COUNT(*) AS c FROM agent_template_installations
767
767
  WHERE project_id = 'personal' AND template_slug IN (${c})`).get(...k);if(d?.c>=k.length){globalThis.__madarxAgentTemplatesSeeded=!0;return}for(let a of k)try{!function(a,b="personal",c={}){let d=function(a){var b;let c=j.find(b=>b.slug===a);return c?c:(b=g.S.find(b=>b.slug===a))?{slug:b.slug,title:b.title,role:b.role,engine_default:b.engine_default,tools_required:Array.isArray(b.tools_required)?b.tools_required:[],tools_optional:Array.isArray(b.tools_optional)?b.tools_optional:[],skills:Array.isArray(b.skills)?b.skills:[],memory_scopes:["agent","project"],approval_profile:b.approval_profile||"standard",description_long:b.description_long,system_prompt:"string"==typeof b.system_prompt?b.system_prompt:null}:null}(a);if(!d)throw Error("agent template not found");let h=(0,e.Lf)();if(h.prepare("SELECT * FROM agent_template_installations WHERE template_slug = ? AND project_id = ?").get(a,b)&&!c.overwrite)return;let i=c.agent_id||`${b}-${a}`.replace(/[^a-zA-Z0-9_-]/g,"-");for(let e of((0,f.Sn)({id:i,name:d.title,type:d.role,role:d.role,title:d.title,engine:d.engine_default,tools:d.tools_required,mission:d.description_long,system_prompt:d.system_prompt||void 0,approval:d.approval_profile,project_id:b,template_slug:a,suppress_live_event:!!c.seed}),d.tools_required))(0,f.Xr)(i,e,e.includes("write")||e.includes("send")||e.includes("terminal")?"approval_required":"auto");let k=(0,e.kF)();h.prepare(`INSERT INTO agent_template_installations (id, template_slug, agent_id, project_id, installed_at, status)
@@ -1145,8 +1145,8 @@ HARD SAFETY RULES (non-negotiable — the package is rejected by the validator o
1145
1145
  `).run(d,b.actor_type||"system",b.actor_id||null,b.agent_id||null,b.run_id||null,a,b.action||"project.changelog",JSON.stringify(h),e,a),c.prepare("SELECT seq, * FROM activity_log WHERE id = ?").get(d)}function n(a={}){let b=String(a.name||"").trim();if(!b)throw Error("name is required");let c=(0,g.Lf)(),d=a.slug?j(a.slug):j(b);if(a.slug&&c.prepare("SELECT 1 FROM projects WHERE slug = ?").get(d)){let a=Error("project slug already exists");throw a.code="PROJECT_SLUG_EXISTS",a}let h=a.slug?d:function(a,b){let c=j(b),d=2;for(;a.prepare("SELECT 1 FROM projects WHERE slug = ?").get(c);)c=`${j(b)}-${d++}`;return c}(c,d),i=a.id||h,k=function(a,b){let c=String(a||"").trim();if(!c)return l(b);let d=c.startsWith("~")?f.join(process.env.HOME||"",c.slice(1)):c;if(!f.isAbsolute(d)){let a=Error("folder_path must be an absolute path (or start with ~)");throw a.code="PROJECT_FOLDER_NOT_ABSOLUTE",a}return f.normalize(d)}(a.folder_path,h);try{e.mkdirSync(k,{recursive:!0})}catch(b){let a=Error(`failed to create project folder: ${b.message}`);throw a.code="PROJECT_FOLDER_MKDIR_FAILED",a.cause=b,a}let m=(0,g.kF)();return c.prepare(`
1146
1146
  INSERT INTO projects (id, slug, name, color, description, status, folder_path, created_at)
1147
1147
  VALUES (?, ?, ?, ?, ?, ?, ?, ?)
1148
- `).run(i,h,b,a.color||"#111318",a.description||null,a.status||"active",k,m),u(i,h),p(h)}function o(a={}){let b=(0,g.Lf)(),c=a.status||"active";return"all"===c?b.prepare("SELECT * FROM projects ORDER BY status ASC, created_at ASC").all().map(k):b.prepare("SELECT * FROM projects WHERE status = ? ORDER BY created_at ASC").all(c).map(k)}function p(a){let b=(0,g.Lf)();return k(b.prepare("SELECT * FROM projects WHERE id = ? OR slug = ? LIMIT 1").get(a,a))}function q(a,b={}){let c=p(a);if(!c)return null;let d=["name","color","description","status","folder_path"],e=Object.entries(b).filter(([a,b])=>d.includes(a)&&void 0!==b);if(!e.length)return c;let f=e.map(([a])=>`${a} = ?`).join(", "),h=e.map(([,a])=>a);return(0,g.Lf)().prepare(`UPDATE projects SET ${f} WHERE id = ?`).run(...h,c.id),p(c.id)}function r(a=(0,g.Lf)()){try{return a.prepare("UPDATE artifacts SET project_id = ? WHERE project_id IS NULL OR project_id = ''").run(x).changes||0}catch{return 0}}function s(a){let b=p(a);if(!b)return{deleted:!1,reason:"not_found"};if(b.id===x){let a=Error("The Personal project is the default scope and cannot be deleted.");throw a.code="PROJECT_PROTECTED",a}let c=(0,g.Lf)();c.exec("BEGIN");try{for(let a of y)try{c.prepare(`DELETE FROM ${a} WHERE project_id = ?`).run(b.id)}catch(a){if(!/no such (table|column)/i.test(String(a?.message||a)))throw a}c.prepare("DELETE FROM projects WHERE id = ?").run(b.id),c.exec("COMMIT")}catch(a){try{c.exec("ROLLBACK")}catch{}throw a}try{let a=f.join(v,b.slug);e.rmSync(a,{recursive:!0,force:!0})}catch{}return{deleted:!0,project:b}}function t(a=(0,g.Lf)()){let b=a.prepare("SELECT * FROM projects WHERE id = 'personal' OR slug = 'personal'").get();if(b){if(!b.folder_path){let c=l(b.slug);try{e.mkdirSync(c,{recursive:!0})}catch{}a.prepare("UPDATE projects SET folder_path = ? WHERE id = ?").run(c,b.id)}return u(b.id,b.slug,a),r(a),k(a.prepare("SELECT * FROM projects WHERE id = 'personal'").get())}let c=(()=>{try{return e.existsSync(w)}catch{return!1}})(),d=a.prepare("SELECT 1 FROM projects LIMIT 1").get();if(c||d)return null;let f=(0,g.kF)(),h=l(x);try{e.mkdirSync(h,{recursive:!0})}catch{}a.prepare("INSERT INTO projects (id, slug, name, color, description, status, folder_path, created_at) VALUES (?, ?, ?, ?, ?, 'active', ?, ?)").run(x,x,"Personal","#c2452a","Your personal project — keep agents, files, memory, and integrations scoped to you.",h,f),u(x,x,a),r(a);try{e.writeFileSync(w,f)}catch{}return k(a.prepare("SELECT * FROM projects WHERE id = ?").get(x))}function u(a,b,c=(0,g.Lf)()){try{let d=c.prepare("SELECT id FROM disk_folders WHERE project_id = ? AND parent_id IS NULL LIMIT 1").get(a);if(d)return d.id;let e=`df-root-${a}`.replace(/[^a-zA-Z0-9_-]/g,"-"),f=(0,g.kF)();return c.prepare("INSERT INTO disk_folders (id, project_id, parent_id, name, path, created_at, updated_at) VALUES (?, ?, NULL, ?, ?, ?, ?)").run(e,a,b||a,`/${b||a}/`,f,f),e}catch{return null}}d()}catch(a){d(a)}})},79533:(a,b,c)=>{"use strict";c.d(b,{O6:()=>f,Z2:()=>g,fb:()=>h});var d=c(77598);let e=new Map;function f(a){return(0,d.createHash)("sha1").update(JSON.stringify(a)).digest("hex")}function g(a){let b=e.get(a);return b?Date.now()>b.expires_at?(e.delete(a),null):(e.delete(a),e.set(a,b),b.value):null}function h(a,b){for(e.has(a)&&e.delete(a),e.set(a,{value:b,expires_at:Date.now()+9e5});e.size>200;){let a=e.keys().next().value;e.delete(a)}}},79595:(a,b,c)=>{"use strict";Object.defineProperty(b,"__esModule",{value:!0}),!function(a,b){for(var c in b)Object.defineProperty(a,c,{enumerable:!0,get:b[c]})}(b,{getRedirectError:function(){return g},getRedirectStatusCodeFromError:function(){return l},getRedirectTypeFromError:function(){return k},getURLFromRedirectError:function(){return j},permanentRedirect:function(){return i},redirect:function(){return h}});let d=c(62284),e=c(44338),f=c(19121).actionAsyncStorage;function g(a,b,c){void 0===c&&(c=d.RedirectStatusCode.TemporaryRedirect);let f=Object.defineProperty(Error(e.REDIRECT_ERROR_CODE),"__NEXT_ERROR_CODE",{value:"E394",enumerable:!1,configurable:!0});return f.digest=e.REDIRECT_ERROR_CODE+";"+b+";"+a+";"+c+";",f}function h(a,b){var c;throw null!=b||(b=(null==f||null==(c=f.getStore())?void 0:c.isAction)?e.RedirectType.push:e.RedirectType.replace),g(a,b,d.RedirectStatusCode.TemporaryRedirect)}function i(a,b){throw void 0===b&&(b=e.RedirectType.replace),g(a,b,d.RedirectStatusCode.PermanentRedirect)}function j(a){return(0,e.isRedirectError)(a)?a.digest.split(";").slice(2,-2).join(";"):null}function k(a){if(!(0,e.isRedirectError)(a))throw Object.defineProperty(Error("Not a redirect error"),"__NEXT_ERROR_CODE",{value:"E260",enumerable:!1,configurable:!0});return a.digest.split(";",2)[1]}function l(a){if(!(0,e.isRedirectError)(a))throw Object.defineProperty(Error("Not a redirect error"),"__NEXT_ERROR_CODE",{value:"E260",enumerable:!1,configurable:!0});return Number(a.digest.split(";").at(-2))}("function"==typeof b.default||"object"==typeof b.default&&null!==b.default)&&void 0===b.default.__esModule&&(Object.defineProperty(b.default,"__esModule",{value:!0}),Object.assign(b.default,b),a.exports=b.default)},80099:a=>{"use strict";a.exports=require("node:sqlite")},80192:(a,b,c)=>{"use strict";c.d(b,{zP:()=>j});let d=new Set(["intake_form","agent_run","policy_gate","human_approval","package"]),e=new Set(["text","email","number","textarea","select","shareholders"]),f=new Set(["low","medium","high","irreversible_external"]),g=/^[a-z][a-z0-9-]{2,63}$/;function h(a,b,c){a.push(`${b}: ${c}`)}function i(a){return null!==a&&"object"==typeof a&&!Array.isArray(a)}function j(a,b={}){var c;let k,l=[],m=[];try{k=JSON.stringify(a)}catch{return{ok:!1,errors:["spec: not JSON-serialisable"],warnings:[],normalized:null}}if(!k||"undefined"===k)return{ok:!1,errors:["spec: required"],warnings:[],normalized:null};if(Buffer.byteLength(k,"utf8")>65536)return{ok:!1,errors:[`spec: serialized length ${Buffer.byteLength(k,"utf8")} bytes exceeds 65536-byte cap`],warnings:[],normalized:null};if(!i(a))return{ok:!1,errors:["spec: must be an object"],warnings:[],normalized:null};a.slug&&"string"==typeof a.slug?g.test(a.slug)||h(l,"slug",`does not match ${g} (lowercase, starts with letter, 3-64 chars, [a-z0-9-])`):h(l,"slug","required (string)"),a.name&&"string"==typeof a.name||h(l,"name","required (string)");let n=a.schema_version??1;if(null==a.schema_version||Number.isInteger(a.schema_version)||h(l,"schema_version","must be an integer"),null!=a.version&&(!Number.isInteger(a.version)||a.version<1)&&h(l,"version","must be a positive integer"),!Array.isArray(a.stages)||0===a.stages.length)return h(l,"stages","required (non-empty array)"),{ok:!1,errors:l,warnings:m,normalized:null};let o=new Set;a.stages.forEach((a,b)=>{let c=`stages[${b}]`;if(!i(a))return void h(l,c,"must be an object");a.slug&&"string"==typeof a.slug?g.test(a.slug)?o.has(a.slug)?h(l,`${c}.slug`,`duplicate stage slug "${a.slug}"`):o.add(a.slug):h(l,`${c}.slug`,`does not match ${g}`):h(l,`${c}.slug`,"required (string)"),a.name&&"string"==typeof a.name||h(l,`${c}.name`,"required (string)"),a.kind&&d.has(a.kind)||h(l,`${c}.kind`,`unknown kind "${a.kind}" (allowed: ${[...d].join(", ")})`)});let p=a.stages[0];if(p&&p.kind&&"intake_form"!==p.kind&&h(l,"stages[0].kind",`first stage must be "intake_form" (got "${p.kind}")`),a.stages.forEach((a,c)=>{if(!a||!d.has(a.kind))return;let g=`stages[${c}]`;if(!i(a.config))return void h(l,`${g}.config`,"must be an object");switch(a.kind){case"intake_form":!function(a,b,c){let d=a?.config?.form_schema;if(!i(d))return h(b,`${c}.config.form_schema`,"required (must be object)");if(!Array.isArray(d.fields)||0===d.fields.length)return h(b,`${c}.config.form_schema.fields`,"must be a non-empty array");let f=new Set;d.fields.forEach((a,d)=>{let g=`${c}.config.form_schema.fields[${d}]`;if(!i(a))return void h(b,g,"must be an object");a.name&&"string"==typeof a.name||h(b,`${g}.name`,"required (string)"),a.label&&"string"==typeof a.label||h(b,`${g}.label`,"required (string)"),a.type&&e.has(a.type)||h(b,`${g}.type`,`unknown type "${a.type}" (allowed: ${[...e].join(", ")})`),"select"!==a.type||Array.isArray(a.options)&&0!==a.options.length||h(b,`${g}.options`,"select requires a non-empty options[] array"),a.name&&(f.has(a.name)&&h(b,`${g}.name`,`duplicate field name "${a.name}"`),f.add(a.name))})}(a,l,g);break;case"agent_run":let j=a.config||{};if(j.agent_template_slug&&"string"==typeof j.agent_template_slug?b.knownAgentTemplates&&!b.knownAgentTemplates.has(j.agent_template_slug)&&h(l,`${g}.config.agent_template_slug`,`unknown template "${j.agent_template_slug}"`):h(l,`${g}.config.agent_template_slug`,"required (string)"),j.prompt&&"string"==typeof j.prompt?j.prompt.length>8e3&&h(l,`${g}.config.prompt`,`exceeds 8000 chars (got ${j.prompt.length})`):h(l,`${g}.config.prompt`,"required (string)"),null!=j.timeout_ms&&(!Number.isInteger(j.timeout_ms)||j.timeout_ms<1e3||j.timeout_ms>6e5)&&h(l,`${g}.config.timeout_ms`,"must be integer 1000..600000"),null!=j.on_outcome)if(i(j.on_outcome))for(let[a,b]of Object.entries(j.on_outcome)){if("string"!=typeof b){h(l,`${g}.config.on_outcome.${a}`,'value must be a string (stage slug or "fail")');continue}"fail"!==b&&o&&!o.has(b)&&h(l,`${g}.config.on_outcome.${a}`,`references non-existent stage "${b}"`)}else h(l,`${g}.config.on_outcome`,"must be an object");break;case"policy_gate":!function(a,b,c){let d=a.config||{};if(!Array.isArray(d.rules)||0===d.rules.length)return h(b,`${c}.config.rules`,"required (non-empty array)");d.rules.forEach((a,d)=>{let e=`${c}.config.rules[${d}]`;"string"==typeof a?a.trim()||h(b,e,"empty rule expression"):i(a)?a.expr&&"string"==typeof a.expr&&a.expr.trim()||h(b,`${e}.expr`,"required (non-empty string)"):h(b,e,"rule must be a string or { expr, label } object")})}(a,l,g);break;case"human_approval":let k=a.config||{};k.action_type&&"string"==typeof k.action_type?k.action_type.startsWith("process.stage.")||h(l,`${g}.config.action_type`,'must start with "process.stage."'):h(l,`${g}.config.action_type`,"required (string)"),k.risk&&f.has(k.risk)||h(l,`${g}.config.risk`,`must be one of ${[...f].join(", ")}`),null!=k.summary_template&&"string"!=typeof k.summary_template&&h(l,`${g}.config.summary_template`,"must be a string");break;case"package":let m=a.config||{};m.title_template&&"string"==typeof m.title_template||h(l,`${g}.config.title_template`,"required (string)"),null!=m.include_stages&&(Array.isArray(m.include_stages)?m.include_stages.forEach((a,b)=>{"string"!=typeof a?h(l,`${g}.config.include_stages[${b}]`,"must be a string"):o.has(a)||h(l,`${g}.config.include_stages[${b}]`,`unknown stage slug "${a}"`)}):h(l,`${g}.config.include_stages`,"must be an array of stage slugs"))}}),a.stages.forEach((a,b)=>{if(!i(a))return;let c=`stages[${b}]`;null==a.on_pass_stage_slug||"fail"===a.on_pass_stage_slug||o.has(a.on_pass_stage_slug)||h(l,`${c}.on_pass_stage_slug`,`references non-existent stage "${a.on_pass_stage_slug}"`),null==a.on_fail_stage_slug||"fail"===a.on_fail_stage_slug||o.has(a.on_fail_stage_slug)||h(l,`${c}.on_fail_stage_slug`,`references non-existent stage "${a.on_fail_stage_slug}"`)}),0===l.length&&function(a){let b=new Map(a.map(a=>[a.slug,a])),c=new Map(a.map(a=>[a.slug,0]));for(let d of a)if(0===c.get(d.slug)&&function a(d){if(!b.has(d))return!1;let e=c.get(d);if(1===e)return!0;if(2===e)return!1;c.set(d,1);let f=b.get(d).on_pass_stage_slug;return!!(f&&"fail"!==f&&a(f))||(c.set(d,2),!1)}(d.slug))return!0;return!1}(a.stages)&&h(l,"stages","routing graph contains a cycle"),0===l.length){let b=new Set;a.stages.forEach(a=>{a.on_pass_stage_slug&&"fail"!==a.on_pass_stage_slug&&b.add(a.on_pass_stage_slug),a.on_fail_stage_slug&&"fail"!==a.on_fail_stage_slug&&b.add(a.on_fail_stage_slug);let c=a?.config?.on_outcome;if(i(c))for(let a of Object.values(c))"string"==typeof a&&"fail"!==a&&b.add(a)}),a.stages.forEach((a,c)=>{0!==c&&(b.has(a.slug)||m.push(`stages[${c}] "${a.slug}": orphan stage (no inbound edges)`))})}return l.length>0?{ok:!1,errors:l,warnings:m,normalized:null}:{ok:!0,errors:[],warnings:m,normalized:{schema_version:n,slug:(c=a).slug,name:c.name,version:c.version||1,description:c.description||null,category:c.category||null,source:c.source||"api",status:c.status||"draft",stages:c.stages.map(a=>({slug:a.slug,name:a.name,kind:a.kind,config:structuredClone(a.config||{}),on_pass_stage_slug:a.on_pass_stage_slug||null,on_fail_stage_slug:a.on_fail_stage_slug||null,required:!1!==a.required}))}}}},80781:(a,b,c)=>{"use strict";c.a(a,async(a,d)=>{try{c.d(b,{x:()=>k,y:()=>l});var e=c(31421),f=c(42382),g=c(67354),h=c(684),i=a([f,g]);function j(a){return(0,h.nc)(String(a||"").slice(0,Number(process.env.MADARX_TOOL_OUTPUT_MAX_BYTES||5e4)))}function k(a={}){let b=String(a.command||""),c=Array.isArray(a.args)?a.args.map(String):[],{path:d}=(0,h.hC)(a.cwd||"."),e=(0,h.IB)(b,c);if(e.blocked)throw Error(e.reason);return{command:b,args:c,cwd:d,classified:e}}async function l(a={},b={}){let{command:c,args:d,cwd:h,classified:i}=k(a);if(i.approval_required&&!b.owner_trusted&&!(0,g.v)(a.approval_id,{action_type:"terminal_run",matches:a=>{var b;return a.command===c&&(b=a.args,JSON.stringify(b||[])===JSON.stringify(d||[]))&&a.cwd===h}})){let a=(0,g.D6)({action_type:"terminal_run",risk:i.risk,summary:`Run ${c} ${d.join(" ")}`.trim(),payload:{command:c,args:d,cwd:h,reason:i.reason}});return{ok:!1,status:"approval_required",approval_request_id:a.id,reason:i.reason}}let m=Math.max(1,Math.min(6e5,Number(a.timeout_ms||process.env.MADARX_TERMINAL_TIMEOUT_MS||18e4))),n=Date.now();return await new Promise(a=>{let b="",g="",i=(0,e.spawn)(c,d,{cwd:h,shell:!1,stdio:["ignore","pipe","pipe"]}),k=setTimeout(()=>i.kill("SIGTERM"),m);i.stdout.on("data",a=>{b+=a}),i.stderr.on("data",a=>{g+=a}),i.on("error",e=>{clearTimeout(k),(0,f.appendAudit)({type:"local.terminal_run",summary:`terminal_run failed: ${c}`,status:"failed",meta:{command:c,args:d,cwd:h,error:e.message}}),a({ok:!1,tool:"terminal_run",status:"failed",command:c,args:d,cwd:h,error:e.message,stdout:j(b),stderr:j(g)})}),i.on("close",(e,i)=>{clearTimeout(k);let l=i?"timeout":0===e?"complete":"failed";(0,f.appendAudit)({type:"local.terminal_run",summary:`terminal_run ${l}: ${c}`,status:l,meta:{command:c,args:d,cwd:h,exit_code:e,signal:i,duration_ms:Date.now()-n,stdout_preview:j(b),stderr_preview:j(g)}}),a({ok:0===e&&!i,tool:"terminal_run",status:l,command:c,args:d,cwd:h,exit_code:e,signal:i,stdout:j(b),stderr:j(g),duration_ms:Date.now()-n})})})}[f,g]=i.then?(await i)():i,d()}catch(a){d(a)}})},81626:(a,b,c)=>{"use strict";Object.defineProperty(b,"__esModule",{value:!0}),Object.defineProperty(b,"isDynamicRoute",{enumerable:!0,get:function(){return g}});let d=c(78697),e=/\/[^/]*\[[^/]+\][^/]*(?=\/|$)/,f=/\/\[[^/]+\](?=\/|$)/;function g(a,b){return(void 0===b&&(b=!0),(0,d.isInterceptionRouteAppPath)(a)&&(a=(0,d.extractInterceptionRouteInformation)(a).interceptedRoute),b)?f.test(a):e.test(a)}},81909:(a,b,c)=>{"use strict";c.a(a,async(a,d)=>{try{c.d(b,{Pq:()=>o,r6:()=>n});var e=c(77598),f=c(84104),g=c(7346),h=a([f]);f=(h.then?(await h)():h)[0];let p="aes-256-gcm",q=new Map;function i(){return(0,g.K2)({db:(0,f.Lf)(),allowGenerate:!0})}function j(a={}){return a.scope?String(a.scope):a.agent_id?`agent:${a.agent_id}`:a.project_id?`project:${a.project_id}`:"global"}function k(a,b={}){return b.project_id?String(b.project_id):String(a).startsWith("project:")?String(a).slice(8):null}function l(a,b,c){return`${a}::${b}::${c||""}`}function m(a,b,c){return(0,f.Lf)().prepare("SELECT * FROM secrets WHERE name = ? AND scope = ? AND COALESCE(project_id, '') = COALESCE(?, '') AND status = 'active' LIMIT 1").get(a,b,c||null)}function n(a,b={}){let c=[];b.agent_id&&c.push([`agent:${b.agent_id}`,null]),b.project_id&&c.push([`project:${b.project_id}`,String(b.project_id)]);let d=j(b);c.push([d,k(d,b)]),c.push(["global",null]);let g=new Set;for(let[b,d]of c){let c=l(a,b,d);if(g.has(c))continue;if(g.add(c),q.has(c))return q.get(c);let h=m(a,b,d);if(h)return function(a,b){let c;try{c=function(a,b,c,d){let f=(0,e.createDecipheriv)(p,d,b);return f.setAuthTag(c),Buffer.concat([f.update(a),f.final()]).toString("utf8")}(Buffer.from(a.value_encrypted),Buffer.from(a.iv),Buffer.from(a.auth_tag),i())}catch(b){throw console.warn(`[secrets] decrypt failed for ${a.name} (scope=${a.scope}, id=${a.id}): ${b?.message||b}. The active MADARX_MASTER_KEY does not match the key that encrypted this row. Either restore the original key or re-store this secret with the current key.`),b}return(0,f.Lf)().prepare("UPDATE secrets SET last_used_at = ? WHERE id = ?").run((0,f.kF)(),a.id),q.set(b,c),c}(h,c)}return Object.prototype.hasOwnProperty.call(process.env,a)?process.env[a]:null}function o(a,b,c={}){if(!a||"string"!=typeof a)throw Error("name is required");if(null==b)throw Error("value is required");let d=j(c),g=k(d,c),h=(0,f.Lf)(),n=(0,f.kF)(),r=m(a,d,g);r&&h.prepare("UPDATE secrets SET status = ?, rotated_at = ? WHERE id = ?").run("rotated",n,r.id),q.delete(l(a,d,g));let{iv:s,encrypted:t,authTag:u}=function(a,b){let c=(0,e.randomBytes)(12),d=(0,e.createCipheriv)(p,b,c),f=Buffer.concat([d.update(String(a),"utf8"),d.final()]);return{iv:c,encrypted:f,authTag:d.getAuthTag()}}(b,i());h.prepare(`INSERT INTO secrets (id, name, scope, value_encrypted, iv, auth_tag, status, source, metadata_json, project_id, created_at)
1149
- VALUES (?, ?, ?, ?, ?, ?, 'active', ?, ?, ?, ?)`).run((0,f.Si)("sec"),a,d,t,s,u,c.source||"manual",c.metadata?JSON.stringify(c.metadata):null,g,n),q.set(l(a,d,g),String(b))}d()}catch(a){d(a)}})},81929:(a,b,c)=>{"use strict";c.d(b,{S:()=>e});var d=c(8512);function e(a){return null===a||(0,d.Ee)(a)||(0,d.Ny)(a)?1:(0,d.es)(a)?2:void 0}},83183:(a,b,c)=>{"use strict";a.exports=c(49754).vendored["react-rsc"].ReactServerDOMWebpackServer},83498:(a,b,c)=>{"use strict";c.d(b,{Dl:()=>i,Jh:()=>t,bo:()=>n,c_:()=>r,nJ:()=>l,un:()=>m,yQ:()=>p,z9:()=>u});var d=c(76760),e=c(73024),f=c(48161),g=c(73136);let h=d.dirname((0,g.fileURLToPath)("file:///home/runner/work/madarx-os/madarx-os/lib/paths.js")),i=d.resolve(h,".."),j=!1;function k(a,b,c){if(process.env[a])return d.resolve(process.env[a]);if(process.env[b]){let a=d.resolve(process.env[b]);return!function(a,b){if(j||b.startsWith(f.tmpdir()))return;j=!0;let c=a.replace("VILLA515_","MADARX_");console.warn(`[paths] ${a} is deprecated — rename it to ${c}. The old name still works for now but will be removed in a future release.`)}(b,a),a}let e=process.env.MADARX_HOME?d.resolve(process.env.MADARX_HOME):null;return e?d.join(e,c):d.join(i,c)}let l=k("MADARX_DATA_DIR","VILLA515_DATA_DIR","data"),m=k("MADARX_WORKSPACE","VILLA515_WORKSPACE","workspace"),n=d.join(m,"agents"),o=d.join(m,"reports"),p=d.join(m,"artifacts"),q=d.join(m,"brand"),r=d.join(l,"madarx.sqlite"),s=d.join(l,"whatsapp");function t(){for(let a of[l,m,n,o,p,q])e.mkdirSync(a,{recursive:!0})}function u(a){return d.relative(i,a)}d.join(s,"session"),d.join(i,"scripts","whatsapp-bridge")},83796:(a,b,c)=>{"use strict";c.a(a,async(a,d)=>{try{c.d(b,{D6:()=>q,Hz:()=>r,Jz:()=>t,aU:()=>s});var e=c(76760),f=c(73024),g=c(83498),h=c(684),i=c(89145),j=a([i]);i=(j.then?(await j)():j)[0];let u=e.join(g.nJ,"browser-profile"),v=e.join(g.nJ,"browser-screenshots"),w=null,x=null,y=null;function k(a){let b=Number(a);return!Number.isFinite(b)||b<=0?3e4:Math.min(12e4,Math.max(1e3,Math.floor(b)))}function l(a){return(0,h.nc)(String(a??"").slice(0,2e4))}function m(){y&&clearTimeout(y),y=setTimeout(()=>{n().catch(()=>{})},9e4),"function"==typeof y.unref&&y.unref()}async function n(){y&&(clearTimeout(y),y=null);let a=w;if(w=null,x=null,a)try{await a.close()}catch{}}async function o(){let a;if(w&&x&&!x.isClosed())return m(),x;try{({chromium:a}=await Promise.resolve().then(function(){var a=Error("Cannot find module 'playwright'");throw a.code="MODULE_NOT_FOUND",a}))}catch{throw Error("Playwright is not installed. Run: npm install playwright && npx playwright install chromium")}f.mkdirSync(u,{recursive:!0});try{w=await a.launchPersistentContext(u,{headless:!0,args:["--no-sandbox","--disable-dev-shm-usage"]})}catch(a){throw w=null,Error(`Failed to launch Chromium (${a?.message||a}). Provision it with: npx playwright install chromium`)}return w.setDefaultTimeout(3e4),x=w.pages()[0]||await w.newPage(),m(),x}async function p(a){let b="";try{b=await a.title()}catch{}return{url:a.url(),title:b}}async function q(a={}){let b=(0,i.vC)(a.url).href,c=k(a.timeout_ms);try{let d=await o();if(await d.goto(b,{waitUntil:"domcontentloaded",timeout:c}),a.wait_for)try{await d.waitForSelector(String(a.wait_for),{timeout:c})}catch{}let{url:e,title:f}=await p(d),g=await d.evaluate(()=>document.body?.innerText||"");return{ok:!0,tool:"browser_open",status:"complete",url:e,title:f,text:l(g)}}catch(a){return{ok:!1,tool:"browser_open",status:"failed",url:b,error:String(a?.message||a)}}}let z=new Set(["click","fill","type","select","press","scroll","wait"]);async function r(a={}){let b,c=String(a.action||"").toLowerCase();if(!z.has(c))return{ok:!1,tool:"browser_act",status:"error",error:`unknown action: ${c||"(none)"}`};let d=k(a.timeout_ms);try{b=await o()}catch(a){return{ok:!1,tool:"browser_act",status:"failed",error:String(a?.message||a)}}try{if("scroll"===c)await b.evaluate(()=>window.scrollBy(0,window.innerHeight));else if("wait"===c)a.selector?await b.waitForSelector(String(a.selector),{timeout:d}):await b.waitForTimeout(Math.min(d,1e4));else{let e=String(a.selector||"");if(!e)return{ok:!1,tool:"browser_act",status:"error",error:"selector is required"};let f=b.locator(e).first();"click"===c?await f.click({timeout:d}):"fill"===c?await f.fill(String(a.text??""),{timeout:d}):"type"===c?await f.pressSequentially(String(a.text??""),{timeout:d}):"select"===c?await f.selectOption(String(a.value??a.text??""),{timeout:d}):"press"===c&&await f.press(String(a.key||"Enter"),{timeout:d})}let{url:e,title:f}=await p(b);return{ok:!0,tool:"browser_act",status:"complete",action:c,url:e,title:f}}catch(a){return{ok:!1,tool:"browser_act",status:"failed",action:c,error:String(a?.message||a)}}}async function s(a={}){let b,c=String(a.mode||"text").toLowerCase(),d=a.selector?String(a.selector):null;try{b=await o()}catch(a){return{ok:!1,tool:"browser_extract",status:"failed",error:String(a?.message||a)}}try{let a="";a="html"===c?d?await b.locator(d).first().innerHTML().catch(()=>"")||"":await b.content():"json-ld"===c?(await b.evaluate(()=>Array.from(document.querySelectorAll('script[type="application/ld+json"]')).map(a=>a.textContent||""))).join("\n"):d?await b.locator(d).first().innerText().catch(()=>"")||"":await b.evaluate(()=>document.body?.innerText||"");let{url:e,title:f}=await p(b);return{ok:!0,tool:"browser_extract",status:"complete",mode:c,url:e,title:f,content:l(a)}}catch(a){return{ok:!1,tool:"browser_extract",status:"failed",error:String(a?.message||a)}}}async function t(a={}){let b;try{b=await o()}catch(a){return{ok:!1,tool:"browser_screenshot",status:"failed",error:String(a?.message||a)}}try{f.mkdirSync(v,{recursive:!0});let c=`shot-${Date.now()}.png`.replace(/[^a-zA-Z0-9_.-]/g,"-"),d=e.join(v,c),g={path:d,fullPage:!!a.full_page};a.selector?await b.locator(String(a.selector)).first().screenshot({path:d}):await b.screenshot(g);let{url:h,title:i}=await p(b);return{ok:!0,tool:"browser_screenshot",status:"complete",url:h,title:i,path:d}}catch(a){return{ok:!1,tool:"browser_screenshot",status:"failed",error:String(a?.message||a)}}}d()}catch(a){d(a)}})},84104:(a,b,c)=>{"use strict";c.a(a,async(a,d)=>{try{c.d(b,{Lf:()=>n,Si:()=>p,kF:()=>o});var e=c(80099),f=c(73024),g=c(76760),h=c(48161),i=c(77598),j=c(83498),k=c(95411),l=c(26200),m=a([l]);l=(m.then?(await m)():m)[0];let q=null,r=null;function n(){if(q&&r===j.c_)return q;if(q){try{q.close()}catch{}q=null}(0,j.Jh)();let a=new e.DatabaseSync(j.c_);for(let b of(a.exec("PRAGMA journal_mode=WAL;"),a.exec("PRAGMA busy_timeout=5000;"),a.exec("PRAGMA foreign_keys=ON;"),a.exec(k.x),["ALTER TABLE artifacts ADD COLUMN title TEXT","ALTER TABLE artifacts ADD COLUMN content TEXT","ALTER TABLE artifacts ADD COLUMN source_md TEXT","ALTER TABLE agents ADD COLUMN system_prompt TEXT","ALTER TABLE agents ADD COLUMN memory TEXT","ALTER TABLE agents ADD COLUMN model TEXT","ALTER TABLE runs ADD COLUMN output TEXT","ALTER TABLE hermes_jobs ADD COLUMN cwd TEXT","ALTER TABLE hermes_jobs ADD COLUMN timeout_ms INTEGER","ALTER TABLE connectors ADD COLUMN type TEXT","ALTER TABLE connectors ADD COLUMN capabilities TEXT","ALTER TABLE connectors ADD COLUMN metadata TEXT","ALTER TABLE schedules ADD COLUMN last_queued_at TEXT","ALTER TABLE schedules ADD COLUMN last_queued_window TEXT","ALTER TABLE heartbeat_tasks ADD COLUMN approval_request_id TEXT","ALTER TABLE agents ADD COLUMN reports_to TEXT","ALTER TABLE agents ADD COLUMN role TEXT","ALTER TABLE agents ADD COLUMN title TEXT","ALTER TABLE agents ADD COLUMN status_reason TEXT","ALTER TABLE agents ADD COLUMN autonomy_mode TEXT","ALTER TABLE agents ADD COLUMN budget_monthly_cents INTEGER DEFAULT 0","ALTER TABLE agents ADD COLUMN spent_monthly_cents INTEGER DEFAULT 0","ALTER TABLE agents ADD COLUMN permissions_json TEXT","ALTER TABLE agents ADD COLUMN metadata_json TEXT","ALTER TABLE agents ADD COLUMN project_id TEXT","ALTER TABLE agents ADD COLUMN template_slug TEXT","ALTER TABLE secrets ADD COLUMN project_id TEXT","ALTER TABLE audit_logs ADD COLUMN project_id TEXT","ALTER TABLE audit_logs ADD COLUMN correlation_id TEXT","ALTER TABLE tool_egress ADD COLUMN project_id TEXT","ALTER TABLE activity_log ADD COLUMN project_id TEXT","ALTER TABLE artifacts ADD COLUMN project_id TEXT","ALTER TABLE heartbeat_tasks ADD COLUMN project_id TEXT","ALTER TABLE transcripts ADD COLUMN engine TEXT","ALTER TABLE transcripts ADD COLUMN language TEXT","ALTER TABLE transcripts ADD COLUMN duration_seconds REAL","ALTER TABLE approval_requests ADD COLUMN project_id TEXT","ALTER TABLE projects ADD COLUMN folder_path TEXT","ALTER TABLE tasks ADD COLUMN due_at TEXT","ALTER TABLE tasks ADD COLUMN tags_json TEXT","ALTER TABLE tasks ADD COLUMN estimate_minutes INTEGER","ALTER TABLE tasks ADD COLUMN watchers_json TEXT","ALTER TABLE tasks ADD COLUMN recurrence TEXT","ALTER TABLE tasks ADD COLUMN acceptance_criteria TEXT","ALTER TABLE tasks ADD COLUMN recurred_from_task_id TEXT","ALTER TABLE artifacts ADD COLUMN task_id TEXT","ALTER TABLE artifacts ADD COLUMN is_protected INTEGER NOT NULL DEFAULT 0","ALTER TABLE projects ADD COLUMN org_id TEXT","ALTER TABLE artifacts ADD COLUMN owner_user_id TEXT","ALTER TABLE artifacts ADD COLUMN sharing_scope TEXT NOT NULL DEFAULT 'private'","ALTER TABLE artifacts ADD COLUMN encrypted INTEGER NOT NULL DEFAULT 0","ALTER TABLE artifacts ADD COLUMN encryption_key_id TEXT","ALTER TABLE audit_logs ADD COLUMN user_id TEXT","ALTER TABLE audit_logs ADD COLUMN org_id TEXT","ALTER TABLE audit_logs ADD COLUMN ip TEXT","ALTER TABLE audit_logs ADD COLUMN user_agent TEXT","ALTER TABLE audit_logs ADD COLUMN action_target_id TEXT","ALTER TABLE audit_logs ADD COLUMN action_target_type TEXT","ALTER TABLE activity_log ADD COLUMN user_id TEXT","ALTER TABLE activity_log ADD COLUMN org_id TEXT","ALTER TABLE activity_log ADD COLUMN ip TEXT","ALTER TABLE heartbeat_tasks ADD COLUMN acting_on_behalf_of_user_id TEXT","ALTER TABLE schedules ADD COLUMN created_by_user_id TEXT","ALTER TABLE schedules ADD COLUMN catchup_policy TEXT DEFAULT 'fire_all'","ALTER TABLE artifacts ADD COLUMN folder_id TEXT","ALTER TABLE artifacts ADD COLUMN space_id TEXT","ALTER TABLE agents ADD COLUMN default_space_id TEXT","ALTER TABLE artifacts ADD COLUMN heartbeat_task_id TEXT","ALTER TABLE artifacts ADD COLUMN dedupe_key TEXT","ALTER TABLE artifact_share_links ADD COLUMN token TEXT","ALTER TABLE artifacts ADD COLUMN pinned_to_space_at TEXT","ALTER TABLE process_definitions ADD COLUMN source_spec_json TEXT","ALTER TABLE process_definitions ADD COLUMN schema_version INTEGER NOT NULL DEFAULT 1","ALTER TABLE process_definitions ADD COLUMN created_by_user_id TEXT","ALTER TABLE process_definitions ADD COLUMN created_by_agent_id TEXT","ALTER TABLE tool_allowlists ADD COLUMN org_id TEXT","ALTER TABLE tool_allowlists ADD COLUMN created_by_user_id TEXT","ALTER TABLE agents ADD COLUMN expected_output TEXT","ALTER TABLE mines_projects ADD COLUMN default_space_id TEXT"]))try{a.exec(b)}catch(a){if(!/duplicate column name/i.test(String(a?.message||a)))throw a}return a.exec("CREATE INDEX IF NOT EXISTS idx_agents_reports_to ON agents(reports_to);"),a.exec("CREATE INDEX IF NOT EXISTS idx_tasks_due_at ON tasks(due_at);"),a.exec("DROP INDEX IF EXISTS idx_secrets_one_active;"),a.exec("CREATE UNIQUE INDEX IF NOT EXISTS idx_secrets_one_active ON secrets(name, scope, COALESCE(project_id, '')) WHERE status = 'active';"),a.exec("CREATE INDEX IF NOT EXISTS idx_audit_project_at ON audit_logs(project_id, at DESC);"),a.exec("CREATE INDEX IF NOT EXISTS idx_egress_project_at ON tool_egress(project_id, at DESC);"),a.exec("CREATE INDEX IF NOT EXISTS idx_activity_project ON activity_log(project_id, created_at DESC);"),a.exec("CREATE INDEX IF NOT EXISTS idx_artifacts_project ON artifacts(project_id, created_at DESC);"),a.exec("CREATE INDEX IF NOT EXISTS idx_artifacts_task ON artifacts(task_id, created_at DESC);"),a.exec("CREATE INDEX IF NOT EXISTS idx_artifacts_folder ON artifacts(project_id, folder_id);"),a.exec("CREATE INDEX IF NOT EXISTS idx_artifacts_space ON artifacts(space_id);"),a.exec("CREATE INDEX IF NOT EXISTS idx_artifacts_heartbeat_task ON artifacts(heartbeat_task_id);\nCREATE INDEX IF NOT EXISTS idx_artifacts_dedupe_key ON artifacts(dedupe_key);"),a.exec("CREATE INDEX IF NOT EXISTS idx_artifacts_is_protected ON artifacts(is_protected, project_id);"),a.exec("CREATE INDEX IF NOT EXISTS idx_projects_org ON projects(org_id);"),a.exec("CREATE INDEX IF NOT EXISTS idx_audit_user ON audit_logs(user_id, at DESC);"),a.exec("CREATE INDEX IF NOT EXISTS idx_audit_org ON audit_logs(org_id, at DESC);"),a.exec("CREATE INDEX IF NOT EXISTS idx_audit_target ON audit_logs(action_target_type, action_target_id, at DESC);"),a.exec("CREATE TRIGGER IF NOT EXISTS audit_logs_no_update\nBEFORE UPDATE ON audit_logs\nBEGIN\n SELECT RAISE(ABORT, 'audit_logs rows are immutable');\nEND;"),a.exec("CREATE TRIGGER IF NOT EXISTS audit_logs_no_delete\nBEFORE DELETE ON audit_logs\nBEGIN\n SELECT RAISE(ABORT, 'audit_logs rows cannot be deleted');\nEND;"),!function(){try{if(!a.prepare("PRAGMA index_list('secrets')").all().some(b=>"u"===b.origin&&b.name.startsWith("sqlite_autoindex_secrets_")&&3===a.prepare(`PRAGMA index_info('${b.name}')`).all().length))return;a.exec("BEGIN"),a.exec("CREATE TABLE secrets_new (\n id TEXT PRIMARY KEY,\n name TEXT NOT NULL,\n scope TEXT NOT NULL DEFAULT 'global',\n value_encrypted BLOB NOT NULL,\n iv BLOB NOT NULL,\n auth_tag BLOB NOT NULL,\n status TEXT NOT NULL DEFAULT 'active',\n source TEXT,\n metadata_json TEXT,\n last_used_at TEXT,\n created_at TEXT NOT NULL,\n rotated_at TEXT\n)"),a.exec("INSERT INTO secrets_new\n SELECT id, name, scope, value_encrypted, iv, auth_tag, status,\n source, metadata_json, last_used_at, created_at, rotated_at\n FROM secrets\n WHERE status = 'active'"),a.exec("DROP TABLE secrets"),a.exec("ALTER TABLE secrets_new RENAME TO secrets"),a.exec("CREATE UNIQUE INDEX IF NOT EXISTS idx_secrets_one_active\n ON secrets(name, scope) WHERE status = 'active'"),a.exec("CREATE INDEX IF NOT EXISTS idx_secrets_name_status\n ON secrets(name, status)"),a.exec("COMMIT")}catch(b){try{a.exec("ROLLBACK")}catch{}throw b}}(),a.exec(k.t),q=a,r=j.c_,(0,l.ef)(a),function(){if("1"===process.env.MADARX_DISABLE_INPROC_DAEMON||process.env.MADARX_DATA_DIR||process.env.VILLA515_DATA_DIR)return;let a=Number(process.env.CRON_DAEMON_INTERVAL_MS||3e4),b=Number(process.env.HEARTBEAT_WORKER_INTERVAL_MS||5e3),d=process.env.MADARX_INPROC_HOST||"127.0.0.1",e=process.env.PORT||process.env.MADARX_PORT||"8787",k=`http://${d}:${e}`,l=Number(process.env.MADARX_INPROC_POKE_TIMEOUT_MS||5e3);async function m(a){let{getInprocToken:b,INPROC_TOKEN_HEADER:d}=await c.e(671).then(c.bind(c,671)),e=new AbortController,f=setTimeout(()=>e.abort(),l);try{let c=await fetch(`${k}${a}`,{method:"POST",headers:{"content-type":"application/json",[d]:b()},body:"{}",signal:e.signal});if(!c.ok)throw Error(`route ${a} returned ${c.status}`);return await c.json()}finally{clearTimeout(f)}}function n({name:a,flag:b,intervalMs:c,route:d,tag:e}){if(globalThis[b])return;let k=()=>{if(globalThis[b])return!0;let k=function(a,b){let c=function(a){let b=i.createHash("sha1").update(j.nJ).digest("hex").slice(0,12);return g.join(h.tmpdir(),`madarx-daemon-${b}-${a}.lock`)}(a),d=Math.max(3*b,15e3),e=()=>{let a=f.openSync(c,"wx");try{f.writeSync(a,JSON.stringify({pid:process.pid,at:Date.now()}))}finally{f.closeSync(a)}};try{return e(),c}catch(a){if("EEXIST"!==a.code)return null}let k=!1;try{k=Date.now()-f.statSync(c).mtimeMs<d}catch{}if(k)return null;try{return f.rmSync(c,{force:!0}),e(),c}catch{return null}}(a,c);if(!k)return!1;globalThis[b]=!0,process.once("exit",()=>{try{f.rmSync(k,{force:!0})}catch{}});let l=setInterval(async()=>{try{let a=new Date;f.utimesSync(k,a,a)}catch{}try{await m(d)}catch(a){console.warn(`[${e}:inproc] tick error:`,a?.message||a)}},c);return"function"==typeof l.unref&&l.unref(),!0};if(k())return;let l=Math.max(3*c,15e3),n=setTimeout(k,l+Math.floor(1e3*Math.random()));"function"==typeof n.unref&&n.unref()}n({name:"cron",flag:"__madarxCronStarted",intervalMs:a,route:"/api/cron/tick",tag:"cron"}),n({name:"heartbeat",flag:"__madarxHeartbeatStarted",intervalMs:b,route:"/api/heartbeat/worker",tag:"heartbeat"})}(),a}function o(){return new Date().toISOString()}function p(a="id"){return`${a}-${Date.now().toString(36)}-${Math.random().toString(36).slice(2,8)}`}d()}catch(a){d(a)}})},84125:(a,b)=>{"use strict";let c;Object.defineProperty(b,"__esModule",{value:!0}),Object.defineProperty(b,"cloneResponse",{enumerable:!0,get:function(){return e}});let d=()=>{};function e(a){if(!a.body)return[a,a];let[b,d]=a.body.tee(),e=new Response(b,{status:a.status,statusText:a.statusText,headers:a.headers});Object.defineProperty(e,"url",{value:a.url,configurable:!0,enumerable:!0,writable:!1}),c&&e.body&&c.register(e,new WeakRef(e.body));let f=new Response(d,{status:a.status,statusText:a.statusText,headers:a.headers});return Object.defineProperty(f,"url",{value:a.url,configurable:!0,enumerable:!0,writable:!1}),[e,f]}globalThis.FinalizationRegistry&&(c=new FinalizationRegistry(a=>{let b=a.deref();b&&!b.locked&&b.cancel("Response object has been garbage collected").then(d)}))},85384:(a,b)=>{"use strict";function c(a){return"object"==typeof a&&null!==a&&"digest"in a&&a.digest===d}Object.defineProperty(b,"__esModule",{value:!0}),!function(a,b){for(var c in b)Object.defineProperty(a,c,{enumerable:!0,get:b[c]})}(b,{isHangingPromiseRejectionError:function(){return c},makeDevtoolsIOAwarePromise:function(){return i},makeHangingPromise:function(){return g}});let d="HANGING_PROMISE_REJECTION";class e extends Error{constructor(a,b){super(`During prerendering, ${b} rejects when the prerender is complete. Typically these errors are handled by React but if you move ${b} to a different context by using \`setTimeout\`, \`after\`, or similar functions you may observe this error and you should handle it in that context. This occurred at route "${a}".`),this.route=a,this.expression=b,this.digest=d}}let f=new WeakMap;function g(a,b,c){if(a.aborted)return Promise.reject(new e(b,c));{let d=new Promise((d,g)=>{let h=g.bind(null,new e(b,c)),i=f.get(a);if(i)i.push(h);else{let b=[h];f.set(a,b),a.addEventListener("abort",()=>{for(let a=0;a<b.length;a++)b[a]()},{once:!0})}});return d.catch(h),d}}function h(){}function i(a){return new Promise(b=>{setTimeout(()=>{b(a)},0)})}},85708:(a,b,c)=>{"use strict";Object.defineProperty(b,"__esModule",{value:!0}),!function(a,b){for(var c in b)Object.defineProperty(a,c,{enumerable:!0,get:b[c]})}(b,{callServer:function(){return d.callServer},createServerReference:function(){return f.createServerReference},findSourceMapURL:function(){return e.findSourceMapURL}});let d=c(76779),e=c(6927),f=c(63188)},85774:(a,b,c)=>{"use strict";c.a(a,async(a,d)=>{try{c.d(b,{Om:()=>h,h5:()=>j,k2:()=>i});var e=c(84104),f=a([e]);function g(a){var b;return a?(b=(0,e.Lf)().prepare("SELECT * FROM dashboard_spaces WHERE id = ?").get(String(a)))?{id:String(b.id),name:String(b.name||""),position:Number(b.position)||0,is_active:1===b.is_active,created_at:b.created_at,updated_at:b.updated_at}:null:null}function h(a=[],{fallback:b="default"}={}){for(let b of Array.isArray(a)?a:[a])if(b&&g(b))return b;return b}function i(){let a=(0,e.Lf)(),b=a.prepare("SELECT COUNT(*) AS n FROM dashboard_spaces").get().n;if(0===b){let b=(0,e.kF)();a.prepare("INSERT INTO dashboard_spaces (id, name, position, is_active, created_at, updated_at) VALUES (?, ?, ?, ?, ?, ?)").run("default","main",0,1,b,b)}a.prepare("UPDATE artifacts SET space_id = 'default' WHERE space_id IS NULL").run()}function j(a,b){if(!a){let a=Error("artifact_id is required.");throw a.code="ARTIFACT_REQUIRED",a}let c=g(b);if(!c){let a=Error("Space not found.");throw a.code="SPACE_NOT_FOUND",a}let d=(0,e.Lf)(),f=d.prepare("SELECT id FROM artifacts WHERE id = ?").get(String(a));if(!f){let a=Error("Artifact not found.");throw a.code="ARTIFACT_NOT_FOUND",a}return d.prepare("UPDATE artifacts SET space_id = ?, pinned_to_space_at = datetime('now') WHERE id = ?").run(c.id,f.id),{artifact_id:f.id,space_id:c.id}}e=(f.then?(await f)():f)[0],d()}catch(a){d(a)}})},85798:(a,b,c)=>{"use strict";c.a(a,async(a,d)=>{try{c.d(b,{b3:()=>n});var e=c(16343),f=c(79533),g=a([e]);e=(g.then?(await g)():g)[0];let o="H4cFwe",p={ECONOMY:1,PREMIUM_ECONOMY:2,BUSINESS:3,FIRST:4};function h(a,b,c,d){let e=Number(a);return Number.isFinite(e)?Math.min(Math.max(Math.trunc(e),c),d):b}function i(a,b){let c=String(a||"").trim().toUpperCase();if(!/^[A-Z]{3}$/.test(c))throw Error(`"${b}" must be a 3-letter IATA code (got: ${a??""})`);return c}function j(a,b){let c=String(a||"").trim();if(!/^\d{4}-\d{2}-\d{2}$/.test(c))throw Error(`"${b}" must be ISO date YYYY-MM-DD (got: ${a??""})`);return c}function k(a={}){let b=i(a.origin,"origin"),c=i(a.destination,"destination"),d=j(a.departure_date,"departure_date"),e=a.return_date?j(a.return_date,"return_date"):null,f=h(a.adults,1,1,9),g=h(a.children,0,0,8),l=a.travel_class?String(a.travel_class).toUpperCase():"ECONOMY",m=p[l]?l:"ECONOMY",n=!0===a.non_stop||"true"===a.non_stop;return{origin:b,destination:c,departure_date:d,return_date:e,adults:f,children:g,travel_class:m,non_stop:n}}function l(a){return Array.isArray(a)&&a.length>=2&&"number"==typeof a[0]&&"string"==typeof a[1]&&/^[A-Z]{3}$/.test(a[1])}function m(a){if(!Array.isArray(a))return!1;for(let b of a)if(l(b))return!0;return!1}async function n(a={},b={}){let c=k(a),d=h(a.max_results,5,1,25),g=a.currency?String(a.currency).toUpperCase().slice(0,3):"USD",i=(0,f.O6)({...c,currency:g}),j=(0,f.Z2)(i);if(j)return{...j,source:{...j.source,cache_hit:!0,fetched_at:j.source?.fetched_at||new Date().toISOString()}};if("1"!==process.env.MADARX_GOOGLE_FLIGHTS_FORCE_LIVE)throw Error("flight_search: free Google Flights fallback is offline as of 2026-05-17 (Google rotated the backend endpoint and payload schema, and slot-0 session tokens cannot be bootstrapped from raw HTTP). To restore flight_search, add AMADEUS_CLIENT_ID and AMADEUS_CLIENT_SECRET to the secrets vault — free tier covers 500 calls/month. See specs/active/google-flights-schema-repair.md and lib/tools/adapters/google-flights.js header for the full repair plan.");let q=function(a={}){let b=k(a),c=p[b.travel_class],d=+!!b.non_stop,e=b.children>0?Array(b.children).fill(11):[],f=[[b.origin],[b.destination],b.departure_date,b.return_date,[],b.adults,e,null,null,null,null,c,null,null,d];return JSON.stringify([null,JSON.stringify(f)])}(c),r=function(a){let b=new URLSearchParams;return b.set("f.req",JSON.stringify([[[o,a,null,"generic"]]])),b.toString()}(q),s=(0,e.N)("flight_search",b.agent_id??null),t=`https://www.google.com/_/TravelFrontendUi/data/batchexecute?rpcids=${o}&source-path=%2Ftravel%2Fflights%2Fsearch&rt=c`,u=await s(t,{method:"POST",headers:{"Content-Type":"application/x-www-form-urlencoded;charset=UTF-8","User-Agent":"Mozilla/5.0 (compatible; madarx-os/1.0; +https://madarx.io)",Accept:"*/*"},body:r});if(429===u.status)throw Error("flight_search: provider throttled by Google Flights, retry in a few minutes");if(!u.ok)throw Error(`Google Flights backend failed (HTTP ${u.status}). This usually means Google has rotated the batchexecute payload schema and the encoder in lib/tools/adapters/google-flights.js needs to be refreshed. Not a date-range or query problem. To unblock, add AMADEUS_CLIENT_ID and AMADEUS_CLIENT_SECRET to the secrets vault — flight_search will then use Amadeus instead of the free fallback.`);let v=await u.text(),w=function(a){if("string"!=typeof a)return{offers:[],warning:"response is not text"};let b=a.trim();b.startsWith(")]}'")&&(b=b.slice(4).trim());let c=function(a){let b=[],c=0;for(;c<a.length;){for(;c<a.length&&/\s/.test(a[c]);)c++;if(c<a.length&&/\d/.test(a[c])){for(;c<a.length&&/\d/.test(a[c]);)c++;continue}if("["===a[c]){let d=0,e=!1,f=!1,g=c;for(;c<a.length;c++){let h=a[c];if(e){if(f){f=!1;continue}if("\\"===h){f=!0;continue}'"'===h&&(e=!1);continue}if('"'===h){e=!0;continue}if("["===h)d++;else if("]"===h&&(d--,0===d)){c++;try{b.push(JSON.parse(a.slice(g,c)))}catch{}break}}continue}c++}return b}(b),d=null;for(let a of c)if(Array.isArray(a)){for(let b of a)if(Array.isArray(b)&&"wrb.fr"===b[0]&&b[1]===o&&"string"==typeof b[2]){try{d=JSON.parse(b[2])}catch{return{offers:[],warning:"inner RPC payload was not valid JSON"}}break}if(d)break}if(!d)return{offers:[],warning:"no RPC frame matched"};let e=[];return function a(b,c,d){if(!(c>10)&&Array.isArray(b)){if(function(a){if(!Array.isArray(a)||0===a.length)return!1;let b=a.filter(a=>Array.isArray(a));if(0===b.length)return!1;let c=0;for(let a of b)m(a)&&c++;return c>=1&&c===b.length}(b)){for(let a of b)Array.isArray(a)&&d.push(a);return}if(m(b))return void d.push(b);for(let e of b)a(e,c+1,d)}}(d,0,e),{offers:e,warning:e.length?null:"no offers parsed from response"}}(v),x=w.offers.slice(0,d).map((a,b)=>(function(a,b=0){let c,d=function a(b,c){if(c>4||!Array.isArray(b))return null;if(l(b))return{total:b[0],currency:b[1]};for(let d of b){let b=a(d,c+1);if(b)return b}return null}(a,0)||{total:null,currency:null},e=function(a){let b=[];return!function a(c,d){if(d>6||!Array.isArray(c))return;let e=[];for(let a of c)if(Array.isArray(a)){let b=function(a){let b=null,c=null,d=null,e=null,f=null,g=null,h=null;return(!function a(i,j){if(!(j>5)){if(Array.isArray(i)){for(let b of i)a(b,j+1);return}if("number"==typeof i){null==h&&i>30&&i<1500&&Number.isInteger(i)&&(h=i);return}"string"==typeof i&&(/^[A-Z]{3}$/.test(i)?b?c||i===b||(c=i):b=i:/^\d{4}-\d{2}-\d{2}T\d{2}:\d{2}/.test(i)?d?e||(e=i):d=i:/^[A-Z]{2,3}\s?\d{1,4}$/.test(i)&&!g?g=i:/^[A-Z]{2,3}$/.test(i)&&!f&&(f=i))}}(a,0),b&&c)?{carrier:f,flight_number:g,departure:{iata:b,at:d,terminal:null},arrival:{iata:c,at:e,terminal:null},duration_minutes:h,aircraft:null}:null}(a);b&&e.push(b)}if(e.length>0)return void b.push({segments:e,duration_minutes:e.reduce((a,b)=>a+(b.duration_minutes||0),0)||null});for(let b of c)a(b,d+1)}(a,0),b}(a);return{id:`gf-${b}`,price:{total:d.total,currency:d.currency,base:null},seats_available:null,last_ticketing_date:null,itineraries:e.length>0?e.map(a=>({duration:null!=a.duration_minutes?`PT${a.duration_minutes}M`:null,duration_minutes:a.duration_minutes,stops:Math.max(0,(a.segments||[]).length-1),segments:a.segments||[]})):[{duration:null,duration_minutes:null,stops:0,segments:[]}],validating_airlines:[],cabin:null,booking_link:(c=null,!function a(b,d){if(!c&&!(d>6)){if("string"==typeof b){/^https?:\/\/(www\.)?google\.com\/[^"\s]*flights/i.test(b)&&(c=b);return}if(Array.isArray(b))for(let c of b)a(c,d+1)}}(a,0),c)}})(a,b)),y={query:{origin:c.origin,destination:c.destination,departure_date:c.departure_date,return_date:c.return_date,adults:c.adults,children:c.children,currency:g,travel_class:c.travel_class,non_stop:c.non_stop,max_results:d},count:x.length,offers:x,source:{provider:"google_flights_web",fetched_at:new Date().toISOString(),...w.warning?{parse_warning:w.warning}:{}}};return x.length>0&&(0,f.fb)(i,y),y}d()}catch(a){d(a)}})},86331:(a,b)=>{"use strict";Object.defineProperty(b,"__esModule",{value:!0}),!function(a,b){for(var c in b)Object.defineProperty(a,c,{enumerable:!0,get:b[c]})}(b,{atLeastOneTask:function(){return e},scheduleImmediate:function(){return d},scheduleOnNextTick:function(){return c},waitAtLeastOneReactRenderTask:function(){return f}});let c=a=>{Promise.resolve().then(()=>{process.nextTick(a)})},d=a=>{setImmediate(a)};function e(){return new Promise(a=>d(a))}function f(){return new Promise(a=>setImmediate(a))}},86439:a=>{"use strict";a.exports=require("next/dist/shared/lib/no-fallback-error.external")},86615:(a,b,c)=>{"use strict";c.a(a,async(a,d)=>{try{c.d(b,{$:()=>k});var e=c(84104),f=c(99752),g=c(69256),h=c(37937),i=a([e,f,g,h]);[e,f,g,h]=i.then?(await i)():i;let l=Number(process.env.MINES_EXTRACT_CHAR_BUDGET)||9e4,m=Number(process.env.MINES_EXTRACT_MAX_CHUNKS)||120,n=["porphyry","deposit","mineraliz","mineralis","chalcocite","breccia","drill","sondaje","barren","trench","trinchera","channel","grade","ley","cu ","copper","cobre","au ","gold","oro","silver","plata","resource","recurso","reserve","reserva","tonn","tonelad","target","objetivo","qa/qc","qaqc","quality control","assay","ensaye","la caridad","cananea","la colorada","geophys","magnetic","gravity","recommend","recomend","work program","programa"],o=["property","asset_stage","deposit_type","mineralization","drilling_summary","trenching_summary","geophysics","qa_qc","data_verification","work_program","resource_estimate"],p={name:"emit_mining_facts",description:"Emit the structured facts extracted from the supplied document chunks. Call exactly once.",input_schema:{type:"object",properties:{facts:{type:"array",description:"One entry per distinct fact found in the chunks. Omit any fact not supported by the text.",items:{type:"object",properties:{fact_type:{type:"string",description:"Canonical key. Use one of: property, asset_stage, deposit_type, mineralization, drilling_summary, trenching_summary, geophysics, qa_qc, data_verification, work_program, resource_estimate. For each defined exploration target use target_<slug> (e.g. target_el_choclo_nw). For each comparable/analogue deposit use comparable_<slug> (e.g. comparable_la_caridad)."},value_text:{type:"string",description:"The fact stated concisely in English (preserve Spanish technical terms in parentheses on first use). Quote figures exactly as written."},source_chunk_id:{type:"string",description:"The exact [chunk_id] of the chunk this fact came from. Must be one of the provided ids."},source_quote:{type:"string",description:"A short verbatim span (10–200 chars) copied EXACTLY from that chunk that supports the fact. Must appear in the chunk text character-for-character."},confidence:{type:"number",description:"0..1 — how directly the chunk supports the fact. 0.9+ for explicit statements, lower for inferred."}},required:["fact_type","value_text","source_chunk_id","source_quote"]}}},required:["facts"]}};function j(a){return String(a||"").toLowerCase().replace(/\s+/g," ").replace(/[‘’]/g,"'").trim()}async function k(a,b={}){let c=a?.project_id;if(!c)return{status:"error",error:"project_id_required"};let d=(0,e.Lf)(),f=d.prepare("SELECT id, name, commodity, asset_stage FROM mines_projects WHERE id = ?").get(c);if(!f)return{status:"error",error:"project_not_found"};let i=function(a,b,c){if(c)return a.prepare("SELECT id, file_name, page_count FROM mines_source_documents WHERE id = ? AND project_id = ?").get(c,b);let d=a.prepare(`
1148
+ `).run(i,h,b,a.color||"#111318",a.description||null,a.status||"active",k,m),u(i,h),p(h)}function o(a={}){let b=(0,g.Lf)(),c=a.status||"active";return"all"===c?b.prepare("SELECT * FROM projects ORDER BY status ASC, created_at ASC").all().map(k):b.prepare("SELECT * FROM projects WHERE status = ? ORDER BY created_at ASC").all(c).map(k)}function p(a){let b=(0,g.Lf)();return k(b.prepare("SELECT * FROM projects WHERE id = ? OR slug = ? LIMIT 1").get(a,a))}function q(a,b={}){let c=p(a);if(!c)return null;let d=["name","color","description","status","folder_path"],e=Object.entries(b).filter(([a,b])=>d.includes(a)&&void 0!==b);if(!e.length)return c;let f=e.map(([a])=>`${a} = ?`).join(", "),h=e.map(([,a])=>a);return(0,g.Lf)().prepare(`UPDATE projects SET ${f} WHERE id = ?`).run(...h,c.id),p(c.id)}function r(a=(0,g.Lf)()){try{return a.prepare("UPDATE artifacts SET project_id = ? WHERE project_id IS NULL OR project_id = ''").run(x).changes||0}catch{return 0}}function s(a){let b=p(a);if(!b)return{deleted:!1,reason:"not_found"};if(b.id===x){let a=Error("The Personal project is the default scope and cannot be deleted.");throw a.code="PROJECT_PROTECTED",a}let c=(0,g.Lf)();c.exec("BEGIN");try{for(let a of y)try{c.prepare(`DELETE FROM ${a} WHERE project_id = ?`).run(b.id)}catch(a){if(!/no such (table|column)/i.test(String(a?.message||a)))throw a}c.prepare("DELETE FROM projects WHERE id = ?").run(b.id),c.exec("COMMIT")}catch(a){try{c.exec("ROLLBACK")}catch{}throw a}try{let a=f.join(v,b.slug);e.rmSync(a,{recursive:!0,force:!0})}catch{}return{deleted:!0,project:b}}function t(a=(0,g.Lf)()){let b=a.prepare("SELECT * FROM projects WHERE id = 'personal' OR slug = 'personal'").get();if(b){if(!b.folder_path){let c=l(b.slug);try{e.mkdirSync(c,{recursive:!0})}catch{}a.prepare("UPDATE projects SET folder_path = ? WHERE id = ?").run(c,b.id)}return u(b.id,b.slug,a),r(a),k(a.prepare("SELECT * FROM projects WHERE id = 'personal'").get())}let c=(()=>{try{return e.existsSync(w)}catch{return!1}})(),d=a.prepare("SELECT 1 FROM projects LIMIT 1").get();if(c||d)return null;let f=(0,g.kF)(),h=l(x);try{e.mkdirSync(h,{recursive:!0})}catch{}a.prepare("INSERT INTO projects (id, slug, name, color, description, status, folder_path, created_at) VALUES (?, ?, ?, ?, ?, 'active', ?, ?)").run(x,x,"Personal","#c2452a","Your personal project — keep agents, files, memory, and integrations scoped to you.",h,f),u(x,x,a),r(a);try{e.writeFileSync(w,f)}catch{}return k(a.prepare("SELECT * FROM projects WHERE id = ?").get(x))}function u(a,b,c=(0,g.Lf)()){try{let d=c.prepare("SELECT id FROM disk_folders WHERE project_id = ? AND parent_id IS NULL LIMIT 1").get(a);if(d)return d.id;let e=`df-root-${a}`.replace(/[^a-zA-Z0-9_-]/g,"-"),f=(0,g.kF)();return c.prepare("INSERT INTO disk_folders (id, project_id, parent_id, name, path, created_at, updated_at) VALUES (?, ?, NULL, ?, ?, ?, ?)").run(e,a,b||a,`/${b||a}/`,f,f),e}catch{return null}}d()}catch(a){d(a)}})},79533:(a,b,c)=>{"use strict";c.d(b,{O6:()=>f,Z2:()=>g,fb:()=>h});var d=c(77598);let e=new Map;function f(a){return(0,d.createHash)("sha1").update(JSON.stringify(a)).digest("hex")}function g(a){let b=e.get(a);return b?Date.now()>b.expires_at?(e.delete(a),null):(e.delete(a),e.set(a,b),b.value):null}function h(a,b){for(e.has(a)&&e.delete(a),e.set(a,{value:b,expires_at:Date.now()+9e5});e.size>200;){let a=e.keys().next().value;e.delete(a)}}},79595:(a,b,c)=>{"use strict";Object.defineProperty(b,"__esModule",{value:!0}),!function(a,b){for(var c in b)Object.defineProperty(a,c,{enumerable:!0,get:b[c]})}(b,{getRedirectError:function(){return g},getRedirectStatusCodeFromError:function(){return l},getRedirectTypeFromError:function(){return k},getURLFromRedirectError:function(){return j},permanentRedirect:function(){return i},redirect:function(){return h}});let d=c(62284),e=c(44338),f=c(19121).actionAsyncStorage;function g(a,b,c){void 0===c&&(c=d.RedirectStatusCode.TemporaryRedirect);let f=Object.defineProperty(Error(e.REDIRECT_ERROR_CODE),"__NEXT_ERROR_CODE",{value:"E394",enumerable:!1,configurable:!0});return f.digest=e.REDIRECT_ERROR_CODE+";"+b+";"+a+";"+c+";",f}function h(a,b){var c;throw null!=b||(b=(null==f||null==(c=f.getStore())?void 0:c.isAction)?e.RedirectType.push:e.RedirectType.replace),g(a,b,d.RedirectStatusCode.TemporaryRedirect)}function i(a,b){throw void 0===b&&(b=e.RedirectType.replace),g(a,b,d.RedirectStatusCode.PermanentRedirect)}function j(a){return(0,e.isRedirectError)(a)?a.digest.split(";").slice(2,-2).join(";"):null}function k(a){if(!(0,e.isRedirectError)(a))throw Object.defineProperty(Error("Not a redirect error"),"__NEXT_ERROR_CODE",{value:"E260",enumerable:!1,configurable:!0});return a.digest.split(";",2)[1]}function l(a){if(!(0,e.isRedirectError)(a))throw Object.defineProperty(Error("Not a redirect error"),"__NEXT_ERROR_CODE",{value:"E260",enumerable:!1,configurable:!0});return Number(a.digest.split(";").at(-2))}("function"==typeof b.default||"object"==typeof b.default&&null!==b.default)&&void 0===b.default.__esModule&&(Object.defineProperty(b.default,"__esModule",{value:!0}),Object.assign(b.default,b),a.exports=b.default)},80067:(a,b,c)=>{"use strict";c.d(b,{default:()=>m});var d=c(21124),e=c(38301),f=c(23312),g=c(43815),h=c(85708);let i=(0,h.createServerReference)("40bd236cf4b7d72418a71d22f3677546a1dcb9a913",h.callServer,void 0,h.findSourceMapURL,"updateProjectAction");var j=c(54151);let k=[{value:"#c2452a",name:"Mars Red"},{value:"#a83a22",name:"Deep Red"},{value:"#7c2b19",name:"Dark Red"},{value:"#111318",name:"Charcoal"},{value:"#3f3a30",name:"Warm Black"},{value:"#68707b",name:"Slate"},{value:"#cdb78a",name:"Warm Sand"},{value:"#1f6c9f",name:"Skill Blue"}];function l(){let{pending:a}=(0,f.useFormStatus)();return(0,d.jsx)("button",{type:"submit",className:"admin-button",disabled:a,"aria-busy":a?"true":void 0,children:a?"Saving…":"Save changes"})}function m({projectId:a,projectName:b,projectColor:c,projectDescription:f,projectFolderPath:h}){let[m,n]=e.useState(!1),[o,p]=e.useState("keep"),[q,r]=e.useState(h||""),s=e.useRef(null);return e.useEffect(()=>{m&&(p("keep"),r(h||""))},[m,h]),e.useEffect(()=>{"custom"===o&&s.current?.focus()},[o]),(0,d.jsxs)(d.Fragment,{children:[(0,d.jsx)("button",{type:"button",className:"admin-button secondary project-edit",onClick:()=>n(!0),"aria-label":`Edit ${b}`,children:"Edit"}),(0,d.jsx)(g.A,{open:m,onClose:()=>n(!1),eyebrow:"Edit project",title:`Edit ${b}`,children:(0,d.jsxs)("form",{className:"agents-modal-form",action:i,children:[(0,d.jsx)("input",{type:"hidden",name:"project_id",value:a}),(0,d.jsx)("section",{className:"agents-modal-section",children:(0,d.jsxs)("label",{className:"agents-modal-field wide",children:[(0,d.jsx)("span",{children:"Name"}),(0,d.jsx)("input",{name:"name",type:"text",defaultValue:b,autoComplete:"off",required:!0})]})}),(0,d.jsxs)("section",{className:"agents-modal-section",children:[(0,d.jsxs)("div",{className:"agents-modal-section-head",children:[(0,d.jsx)("span",{children:"Folder location"}),(0,d.jsx)("small",{children:"Where project files live on disk. Move only if you've already moved the folder yourself."})]}),(0,d.jsxs)("div",{className:"agents-modal-radio-group",children:[(0,d.jsxs)("label",{className:`agents-modal-radio ${"keep"===o?"on":""}`,children:[(0,d.jsx)("input",{type:"radio",name:"folder_mode",value:"keep",checked:"keep"===o,onChange:()=>p("keep")}),(0,d.jsxs)("span",{className:"agents-modal-radio-body",children:[(0,d.jsx)("b",{children:"Keep current"}),(0,d.jsx)("code",{title:h||"",children:function(a,b=48){if(!a||a.length<=b)return a;let c=a.slice(0,Math.floor(b/2)-1),d=a.slice(a.length-Math.floor(b/2)+2);return`${c}…${d}`}(h)||"(not set)"})]})]}),(0,d.jsxs)("label",{className:`agents-modal-radio ${"custom"===o?"on":""}`,children:[(0,d.jsx)("input",{type:"radio",name:"folder_mode",value:"custom",checked:"custom"===o,onChange:()=>p("custom")}),(0,d.jsxs)("span",{className:"agents-modal-radio-body",children:[(0,d.jsx)("b",{children:"Change to…"}),(0,d.jsx)("small",{children:"Absolute path. Must already exist or be writable."})]})]})]}),"custom"===o?(0,d.jsx)(j.A,{inputRef:s,value:q,onChange:r}):(0,d.jsx)("input",{type:"hidden",name:"folder_path",value:""})]}),(0,d.jsxs)("section",{className:"agents-modal-section",children:[(0,d.jsxs)("div",{className:"agents-modal-section-head",children:[(0,d.jsx)("span",{children:"Color"}),(0,d.jsx)("small",{children:"Tile color across the app."})]}),(0,d.jsxs)("fieldset",{className:"agents-modal-swatches",children:[(0,d.jsx)("legend",{className:"visually-hidden",children:"Project color"}),k.map(a=>(0,d.jsxs)("label",{className:"agents-modal-swatch",style:{"--swatch":a.value},children:[(0,d.jsx)("input",{type:"radio",name:"color",value:a.value,defaultChecked:a.value===(c||"#c2452a")}),(0,d.jsx)("span",{className:"agents-modal-swatch-ring","aria-hidden":"true"}),(0,d.jsx)("span",{className:"visually-hidden",children:a.name})]},a.value))]})]}),(0,d.jsxs)("section",{className:"agents-modal-section",children:[(0,d.jsxs)("div",{className:"agents-modal-section-head",children:[(0,d.jsx)("span",{children:"Description"}),(0,d.jsx)("small",{children:"Used as context for agents working in this project."})]}),(0,d.jsx)("label",{className:"agents-modal-field wide",children:(0,d.jsx)("textarea",{name:"description",rows:3,defaultValue:f||"",placeholder:"What is this project for? Goals, audience, voice, constraints."})})]}),(0,d.jsxs)("footer",{className:"agents-modal-foot",children:[(0,d.jsx)("button",{type:"button",className:"admin-button secondary",onClick:()=>n(!1),children:"Cancel"}),(0,d.jsx)(l,{})]})]})})]})}},80099:a=>{"use strict";a.exports=require("node:sqlite")},80192:(a,b,c)=>{"use strict";c.d(b,{zP:()=>j});let d=new Set(["intake_form","agent_run","policy_gate","human_approval","package"]),e=new Set(["text","email","number","textarea","select","shareholders"]),f=new Set(["low","medium","high","irreversible_external"]),g=/^[a-z][a-z0-9-]{2,63}$/;function h(a,b,c){a.push(`${b}: ${c}`)}function i(a){return null!==a&&"object"==typeof a&&!Array.isArray(a)}function j(a,b={}){var c;let k,l=[],m=[];try{k=JSON.stringify(a)}catch{return{ok:!1,errors:["spec: not JSON-serialisable"],warnings:[],normalized:null}}if(!k||"undefined"===k)return{ok:!1,errors:["spec: required"],warnings:[],normalized:null};if(Buffer.byteLength(k,"utf8")>65536)return{ok:!1,errors:[`spec: serialized length ${Buffer.byteLength(k,"utf8")} bytes exceeds 65536-byte cap`],warnings:[],normalized:null};if(!i(a))return{ok:!1,errors:["spec: must be an object"],warnings:[],normalized:null};a.slug&&"string"==typeof a.slug?g.test(a.slug)||h(l,"slug",`does not match ${g} (lowercase, starts with letter, 3-64 chars, [a-z0-9-])`):h(l,"slug","required (string)"),a.name&&"string"==typeof a.name||h(l,"name","required (string)");let n=a.schema_version??1;if(null==a.schema_version||Number.isInteger(a.schema_version)||h(l,"schema_version","must be an integer"),null!=a.version&&(!Number.isInteger(a.version)||a.version<1)&&h(l,"version","must be a positive integer"),!Array.isArray(a.stages)||0===a.stages.length)return h(l,"stages","required (non-empty array)"),{ok:!1,errors:l,warnings:m,normalized:null};let o=new Set;a.stages.forEach((a,b)=>{let c=`stages[${b}]`;if(!i(a))return void h(l,c,"must be an object");a.slug&&"string"==typeof a.slug?g.test(a.slug)?o.has(a.slug)?h(l,`${c}.slug`,`duplicate stage slug "${a.slug}"`):o.add(a.slug):h(l,`${c}.slug`,`does not match ${g}`):h(l,`${c}.slug`,"required (string)"),a.name&&"string"==typeof a.name||h(l,`${c}.name`,"required (string)"),a.kind&&d.has(a.kind)||h(l,`${c}.kind`,`unknown kind "${a.kind}" (allowed: ${[...d].join(", ")})`)});let p=a.stages[0];if(p&&p.kind&&"intake_form"!==p.kind&&h(l,"stages[0].kind",`first stage must be "intake_form" (got "${p.kind}")`),a.stages.forEach((a,c)=>{if(!a||!d.has(a.kind))return;let g=`stages[${c}]`;if(!i(a.config))return void h(l,`${g}.config`,"must be an object");switch(a.kind){case"intake_form":!function(a,b,c){let d=a?.config?.form_schema;if(!i(d))return h(b,`${c}.config.form_schema`,"required (must be object)");if(!Array.isArray(d.fields)||0===d.fields.length)return h(b,`${c}.config.form_schema.fields`,"must be a non-empty array");let f=new Set;d.fields.forEach((a,d)=>{let g=`${c}.config.form_schema.fields[${d}]`;if(!i(a))return void h(b,g,"must be an object");a.name&&"string"==typeof a.name||h(b,`${g}.name`,"required (string)"),a.label&&"string"==typeof a.label||h(b,`${g}.label`,"required (string)"),a.type&&e.has(a.type)||h(b,`${g}.type`,`unknown type "${a.type}" (allowed: ${[...e].join(", ")})`),"select"!==a.type||Array.isArray(a.options)&&0!==a.options.length||h(b,`${g}.options`,"select requires a non-empty options[] array"),a.name&&(f.has(a.name)&&h(b,`${g}.name`,`duplicate field name "${a.name}"`),f.add(a.name))})}(a,l,g);break;case"agent_run":let j=a.config||{};if(j.agent_template_slug&&"string"==typeof j.agent_template_slug?b.knownAgentTemplates&&!b.knownAgentTemplates.has(j.agent_template_slug)&&h(l,`${g}.config.agent_template_slug`,`unknown template "${j.agent_template_slug}"`):h(l,`${g}.config.agent_template_slug`,"required (string)"),j.prompt&&"string"==typeof j.prompt?j.prompt.length>8e3&&h(l,`${g}.config.prompt`,`exceeds 8000 chars (got ${j.prompt.length})`):h(l,`${g}.config.prompt`,"required (string)"),null!=j.timeout_ms&&(!Number.isInteger(j.timeout_ms)||j.timeout_ms<1e3||j.timeout_ms>6e5)&&h(l,`${g}.config.timeout_ms`,"must be integer 1000..600000"),null!=j.on_outcome)if(i(j.on_outcome))for(let[a,b]of Object.entries(j.on_outcome)){if("string"!=typeof b){h(l,`${g}.config.on_outcome.${a}`,'value must be a string (stage slug or "fail")');continue}"fail"!==b&&o&&!o.has(b)&&h(l,`${g}.config.on_outcome.${a}`,`references non-existent stage "${b}"`)}else h(l,`${g}.config.on_outcome`,"must be an object");break;case"policy_gate":!function(a,b,c){let d=a.config||{};if(!Array.isArray(d.rules)||0===d.rules.length)return h(b,`${c}.config.rules`,"required (non-empty array)");d.rules.forEach((a,d)=>{let e=`${c}.config.rules[${d}]`;"string"==typeof a?a.trim()||h(b,e,"empty rule expression"):i(a)?a.expr&&"string"==typeof a.expr&&a.expr.trim()||h(b,`${e}.expr`,"required (non-empty string)"):h(b,e,"rule must be a string or { expr, label } object")})}(a,l,g);break;case"human_approval":let k=a.config||{};k.action_type&&"string"==typeof k.action_type?k.action_type.startsWith("process.stage.")||h(l,`${g}.config.action_type`,'must start with "process.stage."'):h(l,`${g}.config.action_type`,"required (string)"),k.risk&&f.has(k.risk)||h(l,`${g}.config.risk`,`must be one of ${[...f].join(", ")}`),null!=k.summary_template&&"string"!=typeof k.summary_template&&h(l,`${g}.config.summary_template`,"must be a string");break;case"package":let m=a.config||{};m.title_template&&"string"==typeof m.title_template||h(l,`${g}.config.title_template`,"required (string)"),null!=m.include_stages&&(Array.isArray(m.include_stages)?m.include_stages.forEach((a,b)=>{"string"!=typeof a?h(l,`${g}.config.include_stages[${b}]`,"must be a string"):o.has(a)||h(l,`${g}.config.include_stages[${b}]`,`unknown stage slug "${a}"`)}):h(l,`${g}.config.include_stages`,"must be an array of stage slugs"))}}),a.stages.forEach((a,b)=>{if(!i(a))return;let c=`stages[${b}]`;null==a.on_pass_stage_slug||"fail"===a.on_pass_stage_slug||o.has(a.on_pass_stage_slug)||h(l,`${c}.on_pass_stage_slug`,`references non-existent stage "${a.on_pass_stage_slug}"`),null==a.on_fail_stage_slug||"fail"===a.on_fail_stage_slug||o.has(a.on_fail_stage_slug)||h(l,`${c}.on_fail_stage_slug`,`references non-existent stage "${a.on_fail_stage_slug}"`)}),0===l.length&&function(a){let b=new Map(a.map(a=>[a.slug,a])),c=new Map(a.map(a=>[a.slug,0]));for(let d of a)if(0===c.get(d.slug)&&function a(d){if(!b.has(d))return!1;let e=c.get(d);if(1===e)return!0;if(2===e)return!1;c.set(d,1);let f=b.get(d).on_pass_stage_slug;return!!(f&&"fail"!==f&&a(f))||(c.set(d,2),!1)}(d.slug))return!0;return!1}(a.stages)&&h(l,"stages","routing graph contains a cycle"),0===l.length){let b=new Set;a.stages.forEach(a=>{a.on_pass_stage_slug&&"fail"!==a.on_pass_stage_slug&&b.add(a.on_pass_stage_slug),a.on_fail_stage_slug&&"fail"!==a.on_fail_stage_slug&&b.add(a.on_fail_stage_slug);let c=a?.config?.on_outcome;if(i(c))for(let a of Object.values(c))"string"==typeof a&&"fail"!==a&&b.add(a)}),a.stages.forEach((a,c)=>{0!==c&&(b.has(a.slug)||m.push(`stages[${c}] "${a.slug}": orphan stage (no inbound edges)`))})}return l.length>0?{ok:!1,errors:l,warnings:m,normalized:null}:{ok:!0,errors:[],warnings:m,normalized:{schema_version:n,slug:(c=a).slug,name:c.name,version:c.version||1,description:c.description||null,category:c.category||null,source:c.source||"api",status:c.status||"draft",stages:c.stages.map(a=>({slug:a.slug,name:a.name,kind:a.kind,config:structuredClone(a.config||{}),on_pass_stage_slug:a.on_pass_stage_slug||null,on_fail_stage_slug:a.on_fail_stage_slug||null,required:!1!==a.required}))}}}},80781:(a,b,c)=>{"use strict";c.a(a,async(a,d)=>{try{c.d(b,{x:()=>k,y:()=>l});var e=c(31421),f=c(42382),g=c(67354),h=c(684),i=a([f,g]);function j(a){return(0,h.nc)(String(a||"").slice(0,Number(process.env.MADARX_TOOL_OUTPUT_MAX_BYTES||5e4)))}function k(a={}){let b=String(a.command||""),c=Array.isArray(a.args)?a.args.map(String):[],{path:d}=(0,h.hC)(a.cwd||"."),e=(0,h.IB)(b,c);if(e.blocked)throw Error(e.reason);return{command:b,args:c,cwd:d,classified:e}}async function l(a={},b={}){let{command:c,args:d,cwd:h,classified:i}=k(a);if(i.approval_required&&!b.owner_trusted&&!(0,g.v)(a.approval_id,{action_type:"terminal_run",matches:a=>{var b;return a.command===c&&(b=a.args,JSON.stringify(b||[])===JSON.stringify(d||[]))&&a.cwd===h}})){let a=(0,g.D6)({action_type:"terminal_run",risk:i.risk,summary:`Run ${c} ${d.join(" ")}`.trim(),payload:{command:c,args:d,cwd:h,reason:i.reason}});return{ok:!1,status:"approval_required",approval_request_id:a.id,reason:i.reason}}let m=Math.max(1,Math.min(6e5,Number(a.timeout_ms||process.env.MADARX_TERMINAL_TIMEOUT_MS||18e4))),n=Date.now();return await new Promise(a=>{let b="",g="",i=(0,e.spawn)(c,d,{cwd:h,shell:!1,stdio:["ignore","pipe","pipe"]}),k=setTimeout(()=>i.kill("SIGTERM"),m);i.stdout.on("data",a=>{b+=a}),i.stderr.on("data",a=>{g+=a}),i.on("error",e=>{clearTimeout(k),(0,f.appendAudit)({type:"local.terminal_run",summary:`terminal_run failed: ${c}`,status:"failed",meta:{command:c,args:d,cwd:h,error:e.message}}),a({ok:!1,tool:"terminal_run",status:"failed",command:c,args:d,cwd:h,error:e.message,stdout:j(b),stderr:j(g)})}),i.on("close",(e,i)=>{clearTimeout(k);let l=i?"timeout":0===e?"complete":"failed";(0,f.appendAudit)({type:"local.terminal_run",summary:`terminal_run ${l}: ${c}`,status:l,meta:{command:c,args:d,cwd:h,exit_code:e,signal:i,duration_ms:Date.now()-n,stdout_preview:j(b),stderr_preview:j(g)}}),a({ok:0===e&&!i,tool:"terminal_run",status:l,command:c,args:d,cwd:h,exit_code:e,signal:i,stdout:j(b),stderr:j(g),duration_ms:Date.now()-n})})})}[f,g]=i.then?(await i)():i,d()}catch(a){d(a)}})},81626:(a,b,c)=>{"use strict";Object.defineProperty(b,"__esModule",{value:!0}),Object.defineProperty(b,"isDynamicRoute",{enumerable:!0,get:function(){return g}});let d=c(78697),e=/\/[^/]*\[[^/]+\][^/]*(?=\/|$)/,f=/\/\[[^/]+\](?=\/|$)/;function g(a,b){return(void 0===b&&(b=!0),(0,d.isInterceptionRouteAppPath)(a)&&(a=(0,d.extractInterceptionRouteInformation)(a).interceptedRoute),b)?f.test(a):e.test(a)}},81909:(a,b,c)=>{"use strict";c.a(a,async(a,d)=>{try{c.d(b,{Pq:()=>o,r6:()=>n});var e=c(77598),f=c(84104),g=c(7346),h=a([f]);f=(h.then?(await h)():h)[0];let p="aes-256-gcm",q=new Map;function i(){return(0,g.K2)({db:(0,f.Lf)(),allowGenerate:!0})}function j(a={}){return a.scope?String(a.scope):a.agent_id?`agent:${a.agent_id}`:a.project_id?`project:${a.project_id}`:"global"}function k(a,b={}){return b.project_id?String(b.project_id):String(a).startsWith("project:")?String(a).slice(8):null}function l(a,b,c){return`${a}::${b}::${c||""}`}function m(a,b,c){return(0,f.Lf)().prepare("SELECT * FROM secrets WHERE name = ? AND scope = ? AND COALESCE(project_id, '') = COALESCE(?, '') AND status = 'active' LIMIT 1").get(a,b,c||null)}function n(a,b={}){let c=[];b.agent_id&&c.push([`agent:${b.agent_id}`,null]),b.project_id&&c.push([`project:${b.project_id}`,String(b.project_id)]);let d=j(b);c.push([d,k(d,b)]),c.push(["global",null]);let g=new Set;for(let[b,d]of c){let c=l(a,b,d);if(g.has(c))continue;if(g.add(c),q.has(c))return q.get(c);let h=m(a,b,d);if(h)return function(a,b){let c;try{c=function(a,b,c,d){let f=(0,e.createDecipheriv)(p,d,b);return f.setAuthTag(c),Buffer.concat([f.update(a),f.final()]).toString("utf8")}(Buffer.from(a.value_encrypted),Buffer.from(a.iv),Buffer.from(a.auth_tag),i())}catch(b){throw console.warn(`[secrets] decrypt failed for ${a.name} (scope=${a.scope}, id=${a.id}): ${b?.message||b}. The active MADARX_MASTER_KEY does not match the key that encrypted this row. Either restore the original key or re-store this secret with the current key.`),b}return(0,f.Lf)().prepare("UPDATE secrets SET last_used_at = ? WHERE id = ?").run((0,f.kF)(),a.id),q.set(b,c),c}(h,c)}return Object.prototype.hasOwnProperty.call(process.env,a)?process.env[a]:null}function o(a,b,c={}){if(!a||"string"!=typeof a)throw Error("name is required");if(null==b)throw Error("value is required");let d=j(c),g=k(d,c),h=(0,f.Lf)(),n=(0,f.kF)(),r=m(a,d,g);r&&h.prepare("UPDATE secrets SET status = ?, rotated_at = ? WHERE id = ?").run("rotated",n,r.id),q.delete(l(a,d,g));let{iv:s,encrypted:t,authTag:u}=function(a,b){let c=(0,e.randomBytes)(12),d=(0,e.createCipheriv)(p,b,c),f=Buffer.concat([d.update(String(a),"utf8"),d.final()]);return{iv:c,encrypted:f,authTag:d.getAuthTag()}}(b,i());h.prepare(`INSERT INTO secrets (id, name, scope, value_encrypted, iv, auth_tag, status, source, metadata_json, project_id, created_at)
1149
+ VALUES (?, ?, ?, ?, ?, ?, 'active', ?, ?, ?, ?)`).run((0,f.Si)("sec"),a,d,t,s,u,c.source||"manual",c.metadata?JSON.stringify(c.metadata):null,g,n),q.set(l(a,d,g),String(b))}d()}catch(a){d(a)}})},81929:(a,b,c)=>{"use strict";c.d(b,{S:()=>e});var d=c(8512);function e(a){return null===a||(0,d.Ee)(a)||(0,d.Ny)(a)?1:(0,d.es)(a)?2:void 0}},83183:(a,b,c)=>{"use strict";a.exports=c(49754).vendored["react-rsc"].ReactServerDOMWebpackServer},83498:(a,b,c)=>{"use strict";c.d(b,{Dl:()=>i,Jh:()=>t,bo:()=>n,c_:()=>r,nJ:()=>l,un:()=>m,yQ:()=>p,z9:()=>u});var d=c(76760),e=c(73024),f=c(48161),g=c(73136);let h=d.dirname((0,g.fileURLToPath)("file:///home/runner/work/madarx-os/madarx-os/lib/paths.js")),i=d.resolve(h,".."),j=!1;function k(a,b,c){if(process.env[a])return d.resolve(process.env[a]);if(process.env[b]){let a=d.resolve(process.env[b]);return!function(a,b){if(j||b.startsWith(f.tmpdir()))return;j=!0;let c=a.replace("VILLA515_","MADARX_");console.warn(`[paths] ${a} is deprecated — rename it to ${c}. The old name still works for now but will be removed in a future release.`)}(b,a),a}let e=process.env.MADARX_HOME?d.resolve(process.env.MADARX_HOME):null;return e?d.join(e,c):d.join(i,c)}let l=k("MADARX_DATA_DIR","VILLA515_DATA_DIR","data"),m=k("MADARX_WORKSPACE","VILLA515_WORKSPACE","workspace"),n=d.join(m,"agents"),o=d.join(m,"reports"),p=d.join(m,"artifacts"),q=d.join(m,"brand"),r=d.join(l,"madarx.sqlite"),s=d.join(l,"whatsapp");function t(){for(let a of[l,m,n,o,p,q])e.mkdirSync(a,{recursive:!0})}function u(a){return d.relative(i,a)}d.join(s,"session"),d.join(i,"scripts","whatsapp-bridge")},83796:(a,b,c)=>{"use strict";c.a(a,async(a,d)=>{try{c.d(b,{D6:()=>q,Hz:()=>r,Jz:()=>t,aU:()=>s});var e=c(76760),f=c(73024),g=c(83498),h=c(684),i=c(89145),j=a([i]);i=(j.then?(await j)():j)[0];let u=e.join(g.nJ,"browser-profile"),v=e.join(g.nJ,"browser-screenshots"),w=null,x=null,y=null;function k(a){let b=Number(a);return!Number.isFinite(b)||b<=0?3e4:Math.min(12e4,Math.max(1e3,Math.floor(b)))}function l(a){return(0,h.nc)(String(a??"").slice(0,2e4))}function m(){y&&clearTimeout(y),y=setTimeout(()=>{n().catch(()=>{})},9e4),"function"==typeof y.unref&&y.unref()}async function n(){y&&(clearTimeout(y),y=null);let a=w;if(w=null,x=null,a)try{await a.close()}catch{}}async function o(){let a;if(w&&x&&!x.isClosed())return m(),x;try{({chromium:a}=await Promise.resolve().then(function(){var a=Error("Cannot find module 'playwright'");throw a.code="MODULE_NOT_FOUND",a}))}catch{throw Error("Playwright is not installed. Run: npm install playwright && npx playwright install chromium")}f.mkdirSync(u,{recursive:!0});try{w=await a.launchPersistentContext(u,{headless:!0,args:["--no-sandbox","--disable-dev-shm-usage"]})}catch(a){throw w=null,Error(`Failed to launch Chromium (${a?.message||a}). Provision it with: npx playwright install chromium`)}return w.setDefaultTimeout(3e4),x=w.pages()[0]||await w.newPage(),m(),x}async function p(a){let b="";try{b=await a.title()}catch{}return{url:a.url(),title:b}}async function q(a={}){let b=(0,i.vC)(a.url).href,c=k(a.timeout_ms);try{let d=await o();if(await d.goto(b,{waitUntil:"domcontentloaded",timeout:c}),a.wait_for)try{await d.waitForSelector(String(a.wait_for),{timeout:c})}catch{}let{url:e,title:f}=await p(d),g=await d.evaluate(()=>document.body?.innerText||"");return{ok:!0,tool:"browser_open",status:"complete",url:e,title:f,text:l(g)}}catch(a){return{ok:!1,tool:"browser_open",status:"failed",url:b,error:String(a?.message||a)}}}let z=new Set(["click","fill","type","select","press","scroll","wait"]);async function r(a={}){let b,c=String(a.action||"").toLowerCase();if(!z.has(c))return{ok:!1,tool:"browser_act",status:"error",error:`unknown action: ${c||"(none)"}`};let d=k(a.timeout_ms);try{b=await o()}catch(a){return{ok:!1,tool:"browser_act",status:"failed",error:String(a?.message||a)}}try{if("scroll"===c)await b.evaluate(()=>window.scrollBy(0,window.innerHeight));else if("wait"===c)a.selector?await b.waitForSelector(String(a.selector),{timeout:d}):await b.waitForTimeout(Math.min(d,1e4));else{let e=String(a.selector||"");if(!e)return{ok:!1,tool:"browser_act",status:"error",error:"selector is required"};let f=b.locator(e).first();"click"===c?await f.click({timeout:d}):"fill"===c?await f.fill(String(a.text??""),{timeout:d}):"type"===c?await f.pressSequentially(String(a.text??""),{timeout:d}):"select"===c?await f.selectOption(String(a.value??a.text??""),{timeout:d}):"press"===c&&await f.press(String(a.key||"Enter"),{timeout:d})}let{url:e,title:f}=await p(b);return{ok:!0,tool:"browser_act",status:"complete",action:c,url:e,title:f}}catch(a){return{ok:!1,tool:"browser_act",status:"failed",action:c,error:String(a?.message||a)}}}async function s(a={}){let b,c=String(a.mode||"text").toLowerCase(),d=a.selector?String(a.selector):null;try{b=await o()}catch(a){return{ok:!1,tool:"browser_extract",status:"failed",error:String(a?.message||a)}}try{let a="";a="html"===c?d?await b.locator(d).first().innerHTML().catch(()=>"")||"":await b.content():"json-ld"===c?(await b.evaluate(()=>Array.from(document.querySelectorAll('script[type="application/ld+json"]')).map(a=>a.textContent||""))).join("\n"):d?await b.locator(d).first().innerText().catch(()=>"")||"":await b.evaluate(()=>document.body?.innerText||"");let{url:e,title:f}=await p(b);return{ok:!0,tool:"browser_extract",status:"complete",mode:c,url:e,title:f,content:l(a)}}catch(a){return{ok:!1,tool:"browser_extract",status:"failed",error:String(a?.message||a)}}}async function t(a={}){let b;try{b=await o()}catch(a){return{ok:!1,tool:"browser_screenshot",status:"failed",error:String(a?.message||a)}}try{f.mkdirSync(v,{recursive:!0});let c=`shot-${Date.now()}.png`.replace(/[^a-zA-Z0-9_.-]/g,"-"),d=e.join(v,c),g={path:d,fullPage:!!a.full_page};a.selector?await b.locator(String(a.selector)).first().screenshot({path:d}):await b.screenshot(g);let{url:h,title:i}=await p(b);return{ok:!0,tool:"browser_screenshot",status:"complete",url:h,title:i,path:d}}catch(a){return{ok:!1,tool:"browser_screenshot",status:"failed",error:String(a?.message||a)}}}d()}catch(a){d(a)}})},84104:(a,b,c)=>{"use strict";c.a(a,async(a,d)=>{try{c.d(b,{Lf:()=>n,Si:()=>p,kF:()=>o});var e=c(80099),f=c(73024),g=c(76760),h=c(48161),i=c(77598),j=c(83498),k=c(95411),l=c(26200),m=a([l]);l=(m.then?(await m)():m)[0];let q=null,r=null;function n(){if(q&&r===j.c_)return q;if(q){try{q.close()}catch{}q=null}(0,j.Jh)();let a=new e.DatabaseSync(j.c_);for(let b of(a.exec("PRAGMA journal_mode=WAL;"),a.exec("PRAGMA busy_timeout=5000;"),a.exec("PRAGMA foreign_keys=ON;"),a.exec(k.x),["ALTER TABLE artifacts ADD COLUMN title TEXT","ALTER TABLE artifacts ADD COLUMN content TEXT","ALTER TABLE artifacts ADD COLUMN source_md TEXT","ALTER TABLE agents ADD COLUMN system_prompt TEXT","ALTER TABLE agents ADD COLUMN memory TEXT","ALTER TABLE agents ADD COLUMN model TEXT","ALTER TABLE runs ADD COLUMN output TEXT","ALTER TABLE hermes_jobs ADD COLUMN cwd TEXT","ALTER TABLE hermes_jobs ADD COLUMN timeout_ms INTEGER","ALTER TABLE connectors ADD COLUMN type TEXT","ALTER TABLE connectors ADD COLUMN capabilities TEXT","ALTER TABLE connectors ADD COLUMN metadata TEXT","ALTER TABLE schedules ADD COLUMN last_queued_at TEXT","ALTER TABLE schedules ADD COLUMN last_queued_window TEXT","ALTER TABLE heartbeat_tasks ADD COLUMN approval_request_id TEXT","ALTER TABLE agents ADD COLUMN reports_to TEXT","ALTER TABLE agents ADD COLUMN role TEXT","ALTER TABLE agents ADD COLUMN title TEXT","ALTER TABLE agents ADD COLUMN status_reason TEXT","ALTER TABLE agents ADD COLUMN autonomy_mode TEXT","ALTER TABLE agents ADD COLUMN budget_monthly_cents INTEGER DEFAULT 0","ALTER TABLE agents ADD COLUMN spent_monthly_cents INTEGER DEFAULT 0","ALTER TABLE agents ADD COLUMN permissions_json TEXT","ALTER TABLE agents ADD COLUMN metadata_json TEXT","ALTER TABLE agents ADD COLUMN project_id TEXT","ALTER TABLE agents ADD COLUMN template_slug TEXT","ALTER TABLE secrets ADD COLUMN project_id TEXT","ALTER TABLE audit_logs ADD COLUMN project_id TEXT","ALTER TABLE audit_logs ADD COLUMN correlation_id TEXT","ALTER TABLE tool_egress ADD COLUMN project_id TEXT","ALTER TABLE activity_log ADD COLUMN project_id TEXT","ALTER TABLE artifacts ADD COLUMN project_id TEXT","ALTER TABLE heartbeat_tasks ADD COLUMN project_id TEXT","ALTER TABLE transcripts ADD COLUMN engine TEXT","ALTER TABLE transcripts ADD COLUMN language TEXT","ALTER TABLE transcripts ADD COLUMN duration_seconds REAL","ALTER TABLE approval_requests ADD COLUMN project_id TEXT","ALTER TABLE projects ADD COLUMN folder_path TEXT","ALTER TABLE tasks ADD COLUMN due_at TEXT","ALTER TABLE tasks ADD COLUMN tags_json TEXT","ALTER TABLE tasks ADD COLUMN estimate_minutes INTEGER","ALTER TABLE tasks ADD COLUMN watchers_json TEXT","ALTER TABLE tasks ADD COLUMN recurrence TEXT","ALTER TABLE tasks ADD COLUMN acceptance_criteria TEXT","ALTER TABLE tasks ADD COLUMN recurred_from_task_id TEXT","ALTER TABLE artifacts ADD COLUMN task_id TEXT","ALTER TABLE artifacts ADD COLUMN is_protected INTEGER NOT NULL DEFAULT 0","ALTER TABLE projects ADD COLUMN org_id TEXT","ALTER TABLE artifacts ADD COLUMN owner_user_id TEXT","ALTER TABLE artifacts ADD COLUMN sharing_scope TEXT NOT NULL DEFAULT 'private'","ALTER TABLE artifacts ADD COLUMN encrypted INTEGER NOT NULL DEFAULT 0","ALTER TABLE artifacts ADD COLUMN encryption_key_id TEXT","ALTER TABLE audit_logs ADD COLUMN user_id TEXT","ALTER TABLE audit_logs ADD COLUMN org_id TEXT","ALTER TABLE audit_logs ADD COLUMN ip TEXT","ALTER TABLE audit_logs ADD COLUMN user_agent TEXT","ALTER TABLE audit_logs ADD COLUMN action_target_id TEXT","ALTER TABLE audit_logs ADD COLUMN action_target_type TEXT","ALTER TABLE activity_log ADD COLUMN user_id TEXT","ALTER TABLE activity_log ADD COLUMN org_id TEXT","ALTER TABLE activity_log ADD COLUMN ip TEXT","ALTER TABLE heartbeat_tasks ADD COLUMN acting_on_behalf_of_user_id TEXT","ALTER TABLE schedules ADD COLUMN created_by_user_id TEXT","ALTER TABLE schedules ADD COLUMN catchup_policy TEXT DEFAULT 'fire_all'","ALTER TABLE artifacts ADD COLUMN folder_id TEXT","ALTER TABLE artifacts ADD COLUMN space_id TEXT","ALTER TABLE agents ADD COLUMN default_space_id TEXT","ALTER TABLE artifacts ADD COLUMN heartbeat_task_id TEXT","ALTER TABLE artifacts ADD COLUMN dedupe_key TEXT","ALTER TABLE artifact_share_links ADD COLUMN token TEXT","ALTER TABLE artifacts ADD COLUMN pinned_to_space_at TEXT","ALTER TABLE process_definitions ADD COLUMN source_spec_json TEXT","ALTER TABLE process_definitions ADD COLUMN schema_version INTEGER NOT NULL DEFAULT 1","ALTER TABLE process_definitions ADD COLUMN created_by_user_id TEXT","ALTER TABLE process_definitions ADD COLUMN created_by_agent_id TEXT","ALTER TABLE tool_allowlists ADD COLUMN org_id TEXT","ALTER TABLE tool_allowlists ADD COLUMN created_by_user_id TEXT","ALTER TABLE agents ADD COLUMN expected_output TEXT","ALTER TABLE mines_projects ADD COLUMN default_space_id TEXT"]))try{a.exec(b)}catch(a){if(!/duplicate column name/i.test(String(a?.message||a)))throw a}return a.exec("CREATE INDEX IF NOT EXISTS idx_agents_reports_to ON agents(reports_to);"),a.exec("CREATE INDEX IF NOT EXISTS idx_tasks_due_at ON tasks(due_at);"),a.exec("DROP INDEX IF EXISTS idx_secrets_one_active;"),a.exec("CREATE UNIQUE INDEX IF NOT EXISTS idx_secrets_one_active ON secrets(name, scope, COALESCE(project_id, '')) WHERE status = 'active';"),a.exec("CREATE INDEX IF NOT EXISTS idx_audit_project_at ON audit_logs(project_id, at DESC);"),a.exec("CREATE INDEX IF NOT EXISTS idx_egress_project_at ON tool_egress(project_id, at DESC);"),a.exec("CREATE INDEX IF NOT EXISTS idx_activity_project ON activity_log(project_id, created_at DESC);"),a.exec("CREATE INDEX IF NOT EXISTS idx_artifacts_project ON artifacts(project_id, created_at DESC);"),a.exec("CREATE INDEX IF NOT EXISTS idx_artifacts_task ON artifacts(task_id, created_at DESC);"),a.exec("CREATE INDEX IF NOT EXISTS idx_artifacts_folder ON artifacts(project_id, folder_id);"),a.exec("CREATE INDEX IF NOT EXISTS idx_artifacts_space ON artifacts(space_id);"),a.exec("CREATE INDEX IF NOT EXISTS idx_artifacts_heartbeat_task ON artifacts(heartbeat_task_id);\nCREATE INDEX IF NOT EXISTS idx_artifacts_dedupe_key ON artifacts(dedupe_key);"),a.exec("CREATE INDEX IF NOT EXISTS idx_artifacts_is_protected ON artifacts(is_protected, project_id);"),a.exec("CREATE INDEX IF NOT EXISTS idx_projects_org ON projects(org_id);"),a.exec("CREATE INDEX IF NOT EXISTS idx_audit_user ON audit_logs(user_id, at DESC);"),a.exec("CREATE INDEX IF NOT EXISTS idx_audit_org ON audit_logs(org_id, at DESC);"),a.exec("CREATE INDEX IF NOT EXISTS idx_audit_target ON audit_logs(action_target_type, action_target_id, at DESC);"),a.exec("CREATE TRIGGER IF NOT EXISTS audit_logs_no_update\nBEFORE UPDATE ON audit_logs\nBEGIN\n SELECT RAISE(ABORT, 'audit_logs rows are immutable');\nEND;"),a.exec("CREATE TRIGGER IF NOT EXISTS audit_logs_no_delete\nBEFORE DELETE ON audit_logs\nBEGIN\n SELECT RAISE(ABORT, 'audit_logs rows cannot be deleted');\nEND;"),!function(){try{if(!a.prepare("PRAGMA index_list('secrets')").all().some(b=>"u"===b.origin&&b.name.startsWith("sqlite_autoindex_secrets_")&&3===a.prepare(`PRAGMA index_info('${b.name}')`).all().length))return;a.exec("BEGIN"),a.exec("CREATE TABLE secrets_new (\n id TEXT PRIMARY KEY,\n name TEXT NOT NULL,\n scope TEXT NOT NULL DEFAULT 'global',\n value_encrypted BLOB NOT NULL,\n iv BLOB NOT NULL,\n auth_tag BLOB NOT NULL,\n status TEXT NOT NULL DEFAULT 'active',\n source TEXT,\n metadata_json TEXT,\n last_used_at TEXT,\n created_at TEXT NOT NULL,\n rotated_at TEXT\n)"),a.exec("INSERT INTO secrets_new\n SELECT id, name, scope, value_encrypted, iv, auth_tag, status,\n source, metadata_json, last_used_at, created_at, rotated_at\n FROM secrets\n WHERE status = 'active'"),a.exec("DROP TABLE secrets"),a.exec("ALTER TABLE secrets_new RENAME TO secrets"),a.exec("CREATE UNIQUE INDEX IF NOT EXISTS idx_secrets_one_active\n ON secrets(name, scope) WHERE status = 'active'"),a.exec("CREATE INDEX IF NOT EXISTS idx_secrets_name_status\n ON secrets(name, status)"),a.exec("COMMIT")}catch(b){try{a.exec("ROLLBACK")}catch{}throw b}}(),a.exec(k.t),q=a,r=j.c_,(0,l.ef)(a),function(){if("1"===process.env.MADARX_DISABLE_INPROC_DAEMON||process.env.MADARX_DATA_DIR||process.env.VILLA515_DATA_DIR)return;let a=Number(process.env.CRON_DAEMON_INTERVAL_MS||3e4),b=Number(process.env.HEARTBEAT_WORKER_INTERVAL_MS||5e3),d=process.env.MADARX_INPROC_HOST||"127.0.0.1",e=process.env.PORT||process.env.MADARX_PORT||"8787",k=`http://${d}:${e}`,l=Number(process.env.MADARX_INPROC_POKE_TIMEOUT_MS||5e3);async function m(a){let{getInprocToken:b,INPROC_TOKEN_HEADER:d}=await c.e(671).then(c.bind(c,671)),e=new AbortController,f=setTimeout(()=>e.abort(),l);try{let c=await fetch(`${k}${a}`,{method:"POST",headers:{"content-type":"application/json",[d]:b()},body:"{}",signal:e.signal});if(!c.ok)throw Error(`route ${a} returned ${c.status}`);return await c.json()}finally{clearTimeout(f)}}function n({name:a,flag:b,intervalMs:c,route:d,tag:e}){if(globalThis[b])return;let k=()=>{if(globalThis[b])return!0;let k=function(a,b){let c=function(a){let b=i.createHash("sha1").update(j.nJ).digest("hex").slice(0,12);return g.join(h.tmpdir(),`madarx-daemon-${b}-${a}.lock`)}(a),d=Math.max(3*b,15e3),e=()=>{let a=f.openSync(c,"wx");try{f.writeSync(a,JSON.stringify({pid:process.pid,at:Date.now()}))}finally{f.closeSync(a)}};try{return e(),c}catch(a){if("EEXIST"!==a.code)return null}let k=!1;try{k=Date.now()-f.statSync(c).mtimeMs<d}catch{}if(k)return null;try{return f.rmSync(c,{force:!0}),e(),c}catch{return null}}(a,c);if(!k)return!1;globalThis[b]=!0,process.once("exit",()=>{try{f.rmSync(k,{force:!0})}catch{}});let l=setInterval(async()=>{try{let a=new Date;f.utimesSync(k,a,a)}catch{}try{await m(d)}catch(a){console.warn(`[${e}:inproc] tick error:`,a?.message||a)}},c);return"function"==typeof l.unref&&l.unref(),!0};if(k())return;let l=Math.max(3*c,15e3),n=setTimeout(k,l+Math.floor(1e3*Math.random()));"function"==typeof n.unref&&n.unref()}n({name:"cron",flag:"__madarxCronStarted",intervalMs:a,route:"/api/cron/tick",tag:"cron"}),n({name:"heartbeat",flag:"__madarxHeartbeatStarted",intervalMs:b,route:"/api/heartbeat/worker",tag:"heartbeat"})}(),a}function o(){return new Date().toISOString()}function p(a="id"){return`${a}-${Date.now().toString(36)}-${Math.random().toString(36).slice(2,8)}`}d()}catch(a){d(a)}})},84125:(a,b)=>{"use strict";let c;Object.defineProperty(b,"__esModule",{value:!0}),Object.defineProperty(b,"cloneResponse",{enumerable:!0,get:function(){return e}});let d=()=>{};function e(a){if(!a.body)return[a,a];let[b,d]=a.body.tee(),e=new Response(b,{status:a.status,statusText:a.statusText,headers:a.headers});Object.defineProperty(e,"url",{value:a.url,configurable:!0,enumerable:!0,writable:!1}),c&&e.body&&c.register(e,new WeakRef(e.body));let f=new Response(d,{status:a.status,statusText:a.statusText,headers:a.headers});return Object.defineProperty(f,"url",{value:a.url,configurable:!0,enumerable:!0,writable:!1}),[e,f]}globalThis.FinalizationRegistry&&(c=new FinalizationRegistry(a=>{let b=a.deref();b&&!b.locked&&b.cancel("Response object has been garbage collected").then(d)}))},85384:(a,b)=>{"use strict";function c(a){return"object"==typeof a&&null!==a&&"digest"in a&&a.digest===d}Object.defineProperty(b,"__esModule",{value:!0}),!function(a,b){for(var c in b)Object.defineProperty(a,c,{enumerable:!0,get:b[c]})}(b,{isHangingPromiseRejectionError:function(){return c},makeDevtoolsIOAwarePromise:function(){return i},makeHangingPromise:function(){return g}});let d="HANGING_PROMISE_REJECTION";class e extends Error{constructor(a,b){super(`During prerendering, ${b} rejects when the prerender is complete. Typically these errors are handled by React but if you move ${b} to a different context by using \`setTimeout\`, \`after\`, or similar functions you may observe this error and you should handle it in that context. This occurred at route "${a}".`),this.route=a,this.expression=b,this.digest=d}}let f=new WeakMap;function g(a,b,c){if(a.aborted)return Promise.reject(new e(b,c));{let d=new Promise((d,g)=>{let h=g.bind(null,new e(b,c)),i=f.get(a);if(i)i.push(h);else{let b=[h];f.set(a,b),a.addEventListener("abort",()=>{for(let a=0;a<b.length;a++)b[a]()},{once:!0})}});return d.catch(h),d}}function h(){}function i(a){return new Promise(b=>{setTimeout(()=>{b(a)},0)})}},85708:(a,b,c)=>{"use strict";Object.defineProperty(b,"__esModule",{value:!0}),!function(a,b){for(var c in b)Object.defineProperty(a,c,{enumerable:!0,get:b[c]})}(b,{callServer:function(){return d.callServer},createServerReference:function(){return f.createServerReference},findSourceMapURL:function(){return e.findSourceMapURL}});let d=c(76779),e=c(6927),f=c(63188)},85774:(a,b,c)=>{"use strict";c.a(a,async(a,d)=>{try{c.d(b,{Om:()=>h,h5:()=>j,k2:()=>i});var e=c(84104),f=a([e]);function g(a){var b;return a?(b=(0,e.Lf)().prepare("SELECT * FROM dashboard_spaces WHERE id = ?").get(String(a)))?{id:String(b.id),name:String(b.name||""),position:Number(b.position)||0,is_active:1===b.is_active,created_at:b.created_at,updated_at:b.updated_at}:null:null}function h(a=[],{fallback:b="default"}={}){for(let b of Array.isArray(a)?a:[a])if(b&&g(b))return b;return b}function i(){let a=(0,e.Lf)(),b=a.prepare("SELECT COUNT(*) AS n FROM dashboard_spaces").get().n;if(0===b){let b=(0,e.kF)();a.prepare("INSERT INTO dashboard_spaces (id, name, position, is_active, created_at, updated_at) VALUES (?, ?, ?, ?, ?, ?)").run("default","main",0,1,b,b)}a.prepare("UPDATE artifacts SET space_id = 'default' WHERE space_id IS NULL").run()}function j(a,b){if(!a){let a=Error("artifact_id is required.");throw a.code="ARTIFACT_REQUIRED",a}let c=g(b);if(!c){let a=Error("Space not found.");throw a.code="SPACE_NOT_FOUND",a}let d=(0,e.Lf)(),f=d.prepare("SELECT id FROM artifacts WHERE id = ?").get(String(a));if(!f){let a=Error("Artifact not found.");throw a.code="ARTIFACT_NOT_FOUND",a}return d.prepare("UPDATE artifacts SET space_id = ?, pinned_to_space_at = datetime('now') WHERE id = ?").run(c.id,f.id),{artifact_id:f.id,space_id:c.id}}e=(f.then?(await f)():f)[0],d()}catch(a){d(a)}})},85798:(a,b,c)=>{"use strict";c.a(a,async(a,d)=>{try{c.d(b,{b3:()=>n});var e=c(16343),f=c(79533),g=a([e]);e=(g.then?(await g)():g)[0];let o="H4cFwe",p={ECONOMY:1,PREMIUM_ECONOMY:2,BUSINESS:3,FIRST:4};function h(a,b,c,d){let e=Number(a);return Number.isFinite(e)?Math.min(Math.max(Math.trunc(e),c),d):b}function i(a,b){let c=String(a||"").trim().toUpperCase();if(!/^[A-Z]{3}$/.test(c))throw Error(`"${b}" must be a 3-letter IATA code (got: ${a??""})`);return c}function j(a,b){let c=String(a||"").trim();if(!/^\d{4}-\d{2}-\d{2}$/.test(c))throw Error(`"${b}" must be ISO date YYYY-MM-DD (got: ${a??""})`);return c}function k(a={}){let b=i(a.origin,"origin"),c=i(a.destination,"destination"),d=j(a.departure_date,"departure_date"),e=a.return_date?j(a.return_date,"return_date"):null,f=h(a.adults,1,1,9),g=h(a.children,0,0,8),l=a.travel_class?String(a.travel_class).toUpperCase():"ECONOMY",m=p[l]?l:"ECONOMY",n=!0===a.non_stop||"true"===a.non_stop;return{origin:b,destination:c,departure_date:d,return_date:e,adults:f,children:g,travel_class:m,non_stop:n}}function l(a){return Array.isArray(a)&&a.length>=2&&"number"==typeof a[0]&&"string"==typeof a[1]&&/^[A-Z]{3}$/.test(a[1])}function m(a){if(!Array.isArray(a))return!1;for(let b of a)if(l(b))return!0;return!1}async function n(a={},b={}){let c=k(a),d=h(a.max_results,5,1,25),g=a.currency?String(a.currency).toUpperCase().slice(0,3):"USD",i=(0,f.O6)({...c,currency:g}),j=(0,f.Z2)(i);if(j)return{...j,source:{...j.source,cache_hit:!0,fetched_at:j.source?.fetched_at||new Date().toISOString()}};if("1"!==process.env.MADARX_GOOGLE_FLIGHTS_FORCE_LIVE)throw Error("flight_search: free Google Flights fallback is offline as of 2026-05-17 (Google rotated the backend endpoint and payload schema, and slot-0 session tokens cannot be bootstrapped from raw HTTP). To restore flight_search, add AMADEUS_CLIENT_ID and AMADEUS_CLIENT_SECRET to the secrets vault — free tier covers 500 calls/month. See specs/active/google-flights-schema-repair.md and lib/tools/adapters/google-flights.js header for the full repair plan.");let q=function(a={}){let b=k(a),c=p[b.travel_class],d=+!!b.non_stop,e=b.children>0?Array(b.children).fill(11):[],f=[[b.origin],[b.destination],b.departure_date,b.return_date,[],b.adults,e,null,null,null,null,c,null,null,d];return JSON.stringify([null,JSON.stringify(f)])}(c),r=function(a){let b=new URLSearchParams;return b.set("f.req",JSON.stringify([[[o,a,null,"generic"]]])),b.toString()}(q),s=(0,e.N)("flight_search",b.agent_id??null),t=`https://www.google.com/_/TravelFrontendUi/data/batchexecute?rpcids=${o}&source-path=%2Ftravel%2Fflights%2Fsearch&rt=c`,u=await s(t,{method:"POST",headers:{"Content-Type":"application/x-www-form-urlencoded;charset=UTF-8","User-Agent":"Mozilla/5.0 (compatible; madarx-os/1.0; +https://madarx.io)",Accept:"*/*"},body:r});if(429===u.status)throw Error("flight_search: provider throttled by Google Flights, retry in a few minutes");if(!u.ok)throw Error(`Google Flights backend failed (HTTP ${u.status}). This usually means Google has rotated the batchexecute payload schema and the encoder in lib/tools/adapters/google-flights.js needs to be refreshed. Not a date-range or query problem. To unblock, add AMADEUS_CLIENT_ID and AMADEUS_CLIENT_SECRET to the secrets vault — flight_search will then use Amadeus instead of the free fallback.`);let v=await u.text(),w=function(a){if("string"!=typeof a)return{offers:[],warning:"response is not text"};let b=a.trim();b.startsWith(")]}'")&&(b=b.slice(4).trim());let c=function(a){let b=[],c=0;for(;c<a.length;){for(;c<a.length&&/\s/.test(a[c]);)c++;if(c<a.length&&/\d/.test(a[c])){for(;c<a.length&&/\d/.test(a[c]);)c++;continue}if("["===a[c]){let d=0,e=!1,f=!1,g=c;for(;c<a.length;c++){let h=a[c];if(e){if(f){f=!1;continue}if("\\"===h){f=!0;continue}'"'===h&&(e=!1);continue}if('"'===h){e=!0;continue}if("["===h)d++;else if("]"===h&&(d--,0===d)){c++;try{b.push(JSON.parse(a.slice(g,c)))}catch{}break}}continue}c++}return b}(b),d=null;for(let a of c)if(Array.isArray(a)){for(let b of a)if(Array.isArray(b)&&"wrb.fr"===b[0]&&b[1]===o&&"string"==typeof b[2]){try{d=JSON.parse(b[2])}catch{return{offers:[],warning:"inner RPC payload was not valid JSON"}}break}if(d)break}if(!d)return{offers:[],warning:"no RPC frame matched"};let e=[];return function a(b,c,d){if(!(c>10)&&Array.isArray(b)){if(function(a){if(!Array.isArray(a)||0===a.length)return!1;let b=a.filter(a=>Array.isArray(a));if(0===b.length)return!1;let c=0;for(let a of b)m(a)&&c++;return c>=1&&c===b.length}(b)){for(let a of b)Array.isArray(a)&&d.push(a);return}if(m(b))return void d.push(b);for(let e of b)a(e,c+1,d)}}(d,0,e),{offers:e,warning:e.length?null:"no offers parsed from response"}}(v),x=w.offers.slice(0,d).map((a,b)=>(function(a,b=0){let c,d=function a(b,c){if(c>4||!Array.isArray(b))return null;if(l(b))return{total:b[0],currency:b[1]};for(let d of b){let b=a(d,c+1);if(b)return b}return null}(a,0)||{total:null,currency:null},e=function(a){let b=[];return!function a(c,d){if(d>6||!Array.isArray(c))return;let e=[];for(let a of c)if(Array.isArray(a)){let b=function(a){let b=null,c=null,d=null,e=null,f=null,g=null,h=null;return(!function a(i,j){if(!(j>5)){if(Array.isArray(i)){for(let b of i)a(b,j+1);return}if("number"==typeof i){null==h&&i>30&&i<1500&&Number.isInteger(i)&&(h=i);return}"string"==typeof i&&(/^[A-Z]{3}$/.test(i)?b?c||i===b||(c=i):b=i:/^\d{4}-\d{2}-\d{2}T\d{2}:\d{2}/.test(i)?d?e||(e=i):d=i:/^[A-Z]{2,3}\s?\d{1,4}$/.test(i)&&!g?g=i:/^[A-Z]{2,3}$/.test(i)&&!f&&(f=i))}}(a,0),b&&c)?{carrier:f,flight_number:g,departure:{iata:b,at:d,terminal:null},arrival:{iata:c,at:e,terminal:null},duration_minutes:h,aircraft:null}:null}(a);b&&e.push(b)}if(e.length>0)return void b.push({segments:e,duration_minutes:e.reduce((a,b)=>a+(b.duration_minutes||0),0)||null});for(let b of c)a(b,d+1)}(a,0),b}(a);return{id:`gf-${b}`,price:{total:d.total,currency:d.currency,base:null},seats_available:null,last_ticketing_date:null,itineraries:e.length>0?e.map(a=>({duration:null!=a.duration_minutes?`PT${a.duration_minutes}M`:null,duration_minutes:a.duration_minutes,stops:Math.max(0,(a.segments||[]).length-1),segments:a.segments||[]})):[{duration:null,duration_minutes:null,stops:0,segments:[]}],validating_airlines:[],cabin:null,booking_link:(c=null,!function a(b,d){if(!c&&!(d>6)){if("string"==typeof b){/^https?:\/\/(www\.)?google\.com\/[^"\s]*flights/i.test(b)&&(c=b);return}if(Array.isArray(b))for(let c of b)a(c,d+1)}}(a,0),c)}})(a,b)),y={query:{origin:c.origin,destination:c.destination,departure_date:c.departure_date,return_date:c.return_date,adults:c.adults,children:c.children,currency:g,travel_class:c.travel_class,non_stop:c.non_stop,max_results:d},count:x.length,offers:x,source:{provider:"google_flights_web",fetched_at:new Date().toISOString(),...w.warning?{parse_warning:w.warning}:{}}};return x.length>0&&(0,f.fb)(i,y),y}d()}catch(a){d(a)}})},86088:(a,b,c)=>{"use strict";c.d(b,{default:()=>k});var d=c(21124),e=c(38301),f=c(23312),g=c(43815),h=c(85708);let i=(0,h.createServerReference)("404c8804c1148aee36dfb0fb9269e772184aae34de",h.callServer,void 0,h.findSourceMapURL,"deleteProjectAction");function j({disabled:a}){let{pending:b}=(0,f.useFormStatus)();return(0,d.jsx)("button",{type:"submit",className:"admin-button danger",disabled:b||a,"aria-busy":b?"true":void 0,children:b?"Deleting…":"Delete project"})}function k({projectId:a,projectName:b,projectSlug:c,isProtected:f}){let[h,k]=e.useState(!1),[l,m]=e.useState("");if(f)return(0,d.jsxs)("span",{className:"admin-button secondary project-delete is-locked","aria-disabled":"true",title:"The Personal project is the default scope and cannot be deleted.",children:[(0,d.jsxs)("svg",{width:"11",height:"11",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round","aria-hidden":"true",style:{marginRight:6,verticalAlign:"-1px"},children:[(0,d.jsx)("rect",{x:"3",y:"11",width:"18",height:"11",rx:"2"}),(0,d.jsx)("path",{d:"M7 11V7a5 5 0 0 1 10 0v4"})]}),"Protected"]});e.useEffect(()=>{h||m("")},[h]);let n=l.trim()===c;return(0,d.jsxs)(d.Fragment,{children:[(0,d.jsx)("button",{type:"button",className:"admin-button secondary project-delete",onClick:()=>k(!0),"aria-label":`Delete ${b}`,children:"Delete"}),(0,d.jsx)(g.A,{open:h,onClose:()=>k(!1),eyebrow:"Delete project",title:`Delete ${b}?`,tone:"danger",children:(0,d.jsxs)("form",{className:"agents-modal-form",action:i,children:[(0,d.jsx)("input",{type:"hidden",name:"project_id",value:a}),(0,d.jsx)("p",{className:"agents-modal-help",children:"This removes the project, its agents, Disk files, memory, secrets, and audit history. The folder on your local drive is left untouched."}),(0,d.jsx)("section",{className:"agents-modal-section",children:(0,d.jsxs)("label",{className:"agents-modal-field wide",children:[(0,d.jsxs)("span",{children:["Type ",(0,d.jsx)("code",{className:"agents-modal-inline-code",children:c})," to confirm"]}),(0,d.jsx)("input",{type:"text",autoComplete:"off",spellCheck:!1,value:l,onChange:a=>m(a.target.value),placeholder:c,autoFocus:!0})]})}),(0,d.jsxs)("footer",{className:"agents-modal-foot",children:[(0,d.jsx)("button",{type:"button",className:"admin-button secondary",onClick:()=>k(!1),children:"Cancel"}),(0,d.jsx)(j,{disabled:!n})]})]})})]})}},86331:(a,b)=>{"use strict";Object.defineProperty(b,"__esModule",{value:!0}),!function(a,b){for(var c in b)Object.defineProperty(a,c,{enumerable:!0,get:b[c]})}(b,{atLeastOneTask:function(){return e},scheduleImmediate:function(){return d},scheduleOnNextTick:function(){return c},waitAtLeastOneReactRenderTask:function(){return f}});let c=a=>{Promise.resolve().then(()=>{process.nextTick(a)})},d=a=>{setImmediate(a)};function e(){return new Promise(a=>d(a))}function f(){return new Promise(a=>setImmediate(a))}},86439:a=>{"use strict";a.exports=require("next/dist/shared/lib/no-fallback-error.external")},86615:(a,b,c)=>{"use strict";c.a(a,async(a,d)=>{try{c.d(b,{$:()=>k});var e=c(84104),f=c(99752),g=c(69256),h=c(37937),i=a([e,f,g,h]);[e,f,g,h]=i.then?(await i)():i;let l=Number(process.env.MINES_EXTRACT_CHAR_BUDGET)||9e4,m=Number(process.env.MINES_EXTRACT_MAX_CHUNKS)||120,n=["porphyry","deposit","mineraliz","mineralis","chalcocite","breccia","drill","sondaje","barren","trench","trinchera","channel","grade","ley","cu ","copper","cobre","au ","gold","oro","silver","plata","resource","recurso","reserve","reserva","tonn","tonelad","target","objetivo","qa/qc","qaqc","quality control","assay","ensaye","la caridad","cananea","la colorada","geophys","magnetic","gravity","recommend","recomend","work program","programa"],o=["property","asset_stage","deposit_type","mineralization","drilling_summary","trenching_summary","geophysics","qa_qc","data_verification","work_program","resource_estimate"],p={name:"emit_mining_facts",description:"Emit the structured facts extracted from the supplied document chunks. Call exactly once.",input_schema:{type:"object",properties:{facts:{type:"array",description:"One entry per distinct fact found in the chunks. Omit any fact not supported by the text.",items:{type:"object",properties:{fact_type:{type:"string",description:"Canonical key. Use one of: property, asset_stage, deposit_type, mineralization, drilling_summary, trenching_summary, geophysics, qa_qc, data_verification, work_program, resource_estimate. For each defined exploration target use target_<slug> (e.g. target_el_choclo_nw). For each comparable/analogue deposit use comparable_<slug> (e.g. comparable_la_caridad)."},value_text:{type:"string",description:"The fact stated concisely in English (preserve Spanish technical terms in parentheses on first use). Quote figures exactly as written."},source_chunk_id:{type:"string",description:"The exact [chunk_id] of the chunk this fact came from. Must be one of the provided ids."},source_quote:{type:"string",description:"A short verbatim span (10–200 chars) copied EXACTLY from that chunk that supports the fact. Must appear in the chunk text character-for-character."},confidence:{type:"number",description:"0..1 — how directly the chunk supports the fact. 0.9+ for explicit statements, lower for inferred."}},required:["fact_type","value_text","source_chunk_id","source_quote"]}}},required:["facts"]}};function j(a){return String(a||"").toLowerCase().replace(/\s+/g," ").replace(/[‘’]/g,"'").trim()}async function k(a,b={}){let c=a?.project_id;if(!c)return{status:"error",error:"project_id_required"};let d=(0,e.Lf)(),f=d.prepare("SELECT id, name, commodity, asset_stage FROM mines_projects WHERE id = ?").get(c);if(!f)return{status:"error",error:"project_not_found"};let i=function(a,b,c){if(c)return a.prepare("SELECT id, file_name, page_count FROM mines_source_documents WHERE id = ? AND project_id = ?").get(c,b);let d=a.prepare(`
1150
1150
  SELECT d.id, d.file_name, d.page_count, COUNT(c.id) AS chunk_count
1151
1151
  FROM mines_source_documents d
1152
1152
  JOIN mines_document_chunks c ON c.source_document_id = d.id
@@ -1181,7 +1181,7 @@ Extract the structured facts now by calling emit_mining_facts. Standard fact typ
1181
1181
  source_document_id, source_chunk_id, source_quote, page_or_location,
1182
1182
  extracted_by_agent_id, created_at, updated_at)
1183
1183
  VALUES (?, ?, ?, ?, NULL, ?, ?, ?, ?, ?, ?, ?, ?)
1184
- `);d.prepare("BEGIN").run();try{let a=(0,e.kF)();for(let b of D)F.run(c,b.fact_type),G.run((0,e.Si)("mef"),c,b.fact_type,b.value_text,b.confidence,b.source_document_id,b.source_chunk_id,b.source_quote,b.page_or_location,E,a,a);d.prepare("COMMIT").run()}catch(a){try{d.prepare("ROLLBACK").run()}catch{}return{status:"error",error:"persist_failed",reason:a?.message||String(a)}}try{(0,h.pQ)({user_id:b.acting_on_behalf_of_user_id||b.user_id||"system",org_id:b.org_id||"personal-org",action:"mines.facts.extracted",status:"success",summary:`LLM-extracted ${D.length} cited facts for ${f.name} from ${i.file_name} (${B.length} rejected)`,action_target_id:c,action_target_type:"mines_project",meta:{project_id:c,document_id:i.id,model:z,facts_written:D.length,facts_rejected:B.length,chunks_considered:q.length,chunks_in_window:t.length,fact_types:D.map(a=>a.fact_type)}})}catch{}return{status:"ok",document_id:i.id,document_name:i.file_name,model:z,chunks_considered:q.length,chunks_in_window:t.length,facts_proposed:y.length,facts_written:D.length,facts_rejected:B.length,fact_types:D.map(a=>a.fact_type),rejected:B.slice(0,20)}}d()}catch(a){d(a)}})},86702:(a,b,c)=>{"use strict";c.d(b,{_d:()=>e,eh:()=>d});let d=["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"];function e(a,b="activity.logged"){return d.includes(a)?a:b}},86770:(a,b,c)=>{"use strict";c.d(b,{default:()=>m});var d=c(21124),e=c(38301),f=c(23312),g=c(43815),h=c(85708);let i=(0,h.createServerReference)("40924c2bb7306ab859b7d1ab974ac9d9fb8f10f1ae",h.callServer,void 0,h.findSourceMapURL,"createProjectAction");var j=c(54151);let k=[{value:"#c2452a",name:"Mars Red"},{value:"#a83a22",name:"Deep Red"},{value:"#7c2b19",name:"Dark Red"},{value:"#111318",name:"Charcoal"},{value:"#3f3a30",name:"Warm Black"},{value:"#68707b",name:"Slate"},{value:"#cdb78a",name:"Warm Sand"},{value:"#1f6c9f",name:"Skill Blue"}];function l(){let{pending:a}=(0,f.useFormStatus)();return(0,d.jsx)("button",{type:"submit",className:"admin-button",disabled:a,"aria-busy":a?"true":void 0,children:a?"Creating…":"Create project"})}function m({workspaceRoot:a="~/workspace/projects"}){let[b,c]=e.useState(!1),[f,h]=e.useState(""),[m,n]=e.useState("workspace"),[o,p]=e.useState(""),q=e.useRef(null),r=e.useMemo(()=>`${a.replace(/\/$/,"")}/${String(f||"").toLowerCase().trim().replace(/[^a-z0-9]+/g,"-").replace(/^-+|-+$/g,"").slice(0,64)||"project"}`,[a,f]);return e.useEffect(()=>{"custom"===m&&q.current?.focus()},[m]),(0,d.jsxs)(d.Fragment,{children:[(0,d.jsxs)("button",{type:"button",className:"admin-button agents-new-cta",onClick:()=>c(!0),children:[(0,d.jsx)("span",{"aria-hidden":!0,className:"agents-new-cta-glyph",children:"+"}),"New project"]}),(0,d.jsx)(g.A,{open:b,onClose:()=>c(!1),eyebrow:"New project",title:"Create a project",children:(0,d.jsxs)("form",{className:"agents-modal-form",action:i,children:[(0,d.jsx)("p",{className:"agents-modal-help",children:"Scope agents, documents, memory, and integrations together."}),(0,d.jsx)("section",{className:"agents-modal-section",children:(0,d.jsxs)("label",{className:"agents-modal-field wide",children:[(0,d.jsx)("span",{children:"Name"}),(0,d.jsx)("input",{name:"name",type:"text",required:!0,placeholder:"Acme Co.",autoComplete:"off",value:f,onChange:a=>h(a.target.value),autoFocus:!0})]})}),(0,d.jsxs)("section",{className:"agents-modal-section",children:[(0,d.jsxs)("div",{className:"agents-modal-section-head",children:[(0,d.jsx)("span",{children:"Folder location"}),(0,d.jsx)("small",{children:"Where this project lives on disk."})]}),(0,d.jsxs)("div",{className:"agents-modal-radio-group",children:[(0,d.jsxs)("label",{className:`agents-modal-radio ${"workspace"===m?"on":""}`,children:[(0,d.jsx)("input",{type:"radio",name:"folder_mode",value:"workspace",checked:"workspace"===m,onChange:()=>n("workspace")}),(0,d.jsxs)("span",{className:"agents-modal-radio-body",children:[(0,d.jsx)("b",{children:"madarX workspace"}),(0,d.jsx)("code",{title:r,children:function(a,b=48){if(!a||a.length<=b)return a;let c=a.slice(0,Math.floor(b/2)-1),d=a.slice(a.length-Math.floor(b/2)+2);return`${c}…${d}`}(r)})]})]}),(0,d.jsxs)("label",{className:`agents-modal-radio ${"custom"===m?"on":""}`,children:[(0,d.jsx)("input",{type:"radio",name:"folder_mode",value:"custom",checked:"custom"===m,onChange:()=>n("custom")}),(0,d.jsxs)("span",{className:"agents-modal-radio-body",children:[(0,d.jsx)("b",{children:"Custom path"}),(0,d.jsx)("small",{children:"Any absolute folder. Created if missing."})]})]})]}),"custom"===m?(0,d.jsx)(j.A,{inputRef:q,value:o,onChange:p}):(0,d.jsx)("input",{type:"hidden",name:"folder_path",value:""})]}),(0,d.jsxs)("section",{className:"agents-modal-section",children:[(0,d.jsxs)("div",{className:"agents-modal-section-head",children:[(0,d.jsx)("span",{children:"Color"}),(0,d.jsx)("small",{children:"Used for the project tile across the app."})]}),(0,d.jsxs)("fieldset",{className:"agents-modal-swatches",children:[(0,d.jsx)("legend",{className:"visually-hidden",children:"Project color"}),k.map(a=>(0,d.jsxs)("label",{className:"agents-modal-swatch",style:{"--swatch":a.value},children:[(0,d.jsx)("input",{type:"radio",name:"color",value:a.value,defaultChecked:"#c2452a"===a.value}),(0,d.jsx)("span",{className:"agents-modal-swatch-ring","aria-hidden":"true"}),(0,d.jsx)("span",{className:"visually-hidden",children:a.name})]},a.value))]})]}),(0,d.jsxs)("section",{className:"agents-modal-section",children:[(0,d.jsxs)("div",{className:"agents-modal-section-head",children:[(0,d.jsx)("span",{children:"Description"}),(0,d.jsx)("small",{children:"Used as context for agents working in this project."})]}),(0,d.jsx)("label",{className:"agents-modal-field wide",children:(0,d.jsx)("textarea",{name:"description",rows:3,placeholder:"What is this project for? Goals, audience, voice, constraints."})})]}),(0,d.jsxs)("footer",{className:"agents-modal-foot",children:[(0,d.jsx)("button",{type:"button",className:"admin-button secondary",onClick:()=>c(!1),children:"Cancel"}),(0,d.jsx)(l,{})]})]})})]})}},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})]})}},87301:(a,b,c)=>{"use strict";function d(a,b,c,d){let e,f=a.length,g=0;if(b=b<0?-b>f?0:f+b:b>f?f:b,c=c>0?c:0,d.length<1e4)(e=Array.from(d)).unshift(b,c),a.splice(...e);else for(c&&a.splice(b,c);g<d.length;)(e=d.slice(g,g+1e4)).unshift(b,0),a.splice(...e),g+=1e4,b+=1e4}function e(a,b){return a.length>0?(d(a,a.length,0,b),a):b}c.d(b,{V:()=>e,m:()=>d})},87345:(a,b,c)=>{"use strict";function d(){throw Object.defineProperty(Error("`unauthorized()` is experimental and only allowed to be used when `experimental.authInterrupts` is enabled."),"__NEXT_ERROR_CODE",{value:"E411",enumerable:!1,configurable:!0})}Object.defineProperty(b,"__esModule",{value:!0}),Object.defineProperty(b,"unauthorized",{enumerable:!0,get:function(){return d}}),c(15570).HTTP_ERROR_FALLBACK_ERROR_CODE,("function"==typeof b.default||"object"==typeof b.default&&null!==b.default)&&void 0===b.default.__esModule&&(Object.defineProperty(b.default,"__esModule",{value:!0}),Object.assign(b.default,b),a.exports=b.default)},88002:(a,b,c)=>{"use strict";function d(a){throw Object.defineProperty(Error("cacheLife() is only available with the experimental.useCache config."),"__NEXT_ERROR_CODE",{value:"E627",enumerable:!1,configurable:!0})}Object.defineProperty(b,"F",{enumerable:!0,get:function(){return d}}),c(29294),c(63033)},89145:(a,b,c)=>{"use strict";c.a(a,async(a,d)=>{try{c.d(b,{IY:()=>B,dV:()=>A,tE:()=>x,vC:()=>y});var e=c(77030),f=c(81909),g=c(16343),h=a([f,g]);function i(a){return String(process.env[a]||"").trim()}function j(a){try{let b=(0,f.r6)(a);if(b)return String(b).trim()}catch{}return i(a)}function k(a={}){let b=String(a.query||a.q||"").trim();if(!b)throw Error("query is required");return b}function l(a={}){return Math.min(Math.max(Number(a.count||5),1),10)}function m({title:a,url:b,snippet:c,source:d,rank:e=0,metadata:f={}}){return{rank:e+1,title:String(a||""),url:String(b||""),snippet:String(c||""),source:d,metadata:f}}async function n(a,b={},c=fetch){let d=await c(a,b);if(!d.ok){let a=d.statusText||String(d.status);try{let b=await d.text();b&&(a=`${a}: ${b.slice(0,200)}`)}catch{}throw Error(`Request failed: ${d.status} ${a}`.trim())}return d.json()}function o(a={},b=0){return m({rank:b,title:a.title,url:a.url,snippet:a.description||a.snippet,source:"brave",metadata:{age:a.age||null,family_friendly:a.family_friendly??null}})}function p(){let a={Accept:"application/json","Content-Type":"application/json"},b=j("FIRECRAWL_API_KEY");return b&&(a.Authorization=`Bearer ${b}`),a}function q(){return(j("FIRECRAWL_API_URL")||"https://api.firecrawl.dev").replace(/\/+$/g,"")}async function r(a={},b=fetch){let c=k(a),d=l(a),e=await n(`${q()}/v1/search`,{method:"POST",headers:p(),body:JSON.stringify({query:c,limit:d})},b);return{query:c,source:"firecrawl",results:(function(a={}){return Array.isArray(a.data)?a.data:Array.isArray(a.results)?a.results:Array.isArray(a.web)?a.web:Array.isArray(a.web?.results)?a.web.results:[]})(e).slice(0,d).map((a,b)=>m({rank:b,title:a.title,url:a.url||a.link,snippet:a.description||a.snippet||a.content||a.markdown,source:"firecrawl",metadata:a.metadata||{}})).filter(a=>a.url)}}async function s(a={},b=fetch){let c=k(a),d=l(a),e=j("SEARXNG_URL");if(!e)throw Error("SEARXNG_URL not configured");let f=new URL("/search",e.replace(/\/+$/g,""));f.searchParams.set("q",c),f.searchParams.set("format","json"),(a.search_lang||a.language)&&f.searchParams.set("language",String(a.search_lang||a.language));let g=await n(f,{headers:{Accept:"application/json"}},b);return{query:c,source:"searxng",results:(g.results||[]).slice(0,d).map((a,b)=>m({rank:b,title:a.title,url:a.url,snippet:a.content||a.snippet,source:"searxng",metadata:a.metadata||{}})).filter(a=>a.url)}}async function t(a={},b=fetch){let c=j("BRAVE_SEARCH_API_KEY");if(!c)throw Error("BRAVE_SEARCH_API_KEY not configured");let d=k(a),e=l(a),f=new URL("https://api.search.brave.com/res/v1/web/search");f.searchParams.set("q",d),f.searchParams.set("count",String(e)),a.country&&f.searchParams.set("country",String(a.country)),a.search_lang&&f.searchParams.set("search_lang",String(a.search_lang));let g=await n(f,{headers:{Accept:"application/json","X-Subscription-Token":c}},b),h=(g.web?.results||[]).slice(0,e).map(o);return{query:d,source:"brave",results:h}}function u(a=""){return String(a).replace(/&nbsp;/g," ").replace(/&amp;/g,"&").replace(/&lt;/g,"<").replace(/&gt;/g,">").replace(/&quot;/g,'"').replace(/&#39;/g,"'").replace(/&#x27;/g,"'")}function v(a=""){return u(String(a).replace(/<[^>]+>/g," ")).replace(/\s+/g," ").trim()}async function w(a={},b=fetch){let c=k(a),d=l(a),e=new URL("https://lite.duckduckgo.com/lite/");e.searchParams.set("q",c);let f=await b(e,{headers:{Accept:"text/html,application/xhtml+xml;q=0.9,*/*;q=0.2","User-Agent":"MadarxOS/1.0 (+local research tool)"}});if(!f.ok)throw Error(`DuckDuckGo Lite search failed: ${f.status}`);let g=await f.text();return{query:c,source:"fetch",results:function(a="",b=5){let c=[...String(a).matchAll(/<a\b[^>]*href=["'][^"']+["'][^>]*>[\s\S]*?<\/a>/gi)],d=[...String(a).matchAll(/<td\b[^>]*class=["'][^"']*result-snippet[^"']*["'][^>]*>([\s\S]*?)<\/td>/gi)].map(a=>v(a[1])),e=[];for(let a of c){let c=a[0].match(/<a\b[^>]*>/i)?.[0]||"",f=v(a[0]),g=function(a=""){try{let b=new URL(a,"https://lite.duckduckgo.com"),c=b.searchParams.get("uddg");if(c)return c;if(["http:","https:"].includes(b.protocol))return b.toString()}catch{}return a}(function(a,b){let c=a.match(RegExp(`${b}\\s*=\\s*["']([^"']+)["']`,"i"));return c?u(c[1]):""}(c,"href"));if(f&&/^https?:\/\//i.test(g)&&(e.push(m({rank:e.length,title:f,url:g,snippet:d[e.length]||"",source:"duckduckgo_lite",metadata:{}})),e.length>=b))break}return e}(g,d)}}async function x(a={},b={}){let c=b.agent_id??null,d=function(){let a=i("MADARX_WEB_PROVIDER").toLowerCase();if(a){if(["firecrawl","searxng","brave","fetch"].includes(a))return a;throw Error(`Unsupported MADARX_WEB_PROVIDER: ${a}`)}return j("FIRECRAWL_API_URL")||j("FIRECRAWL_API_KEY")?"firecrawl":j("SEARXNG_URL")?"searxng":j("BRAVE_SEARCH_API_KEY")?"brave":"fetch"}();return"firecrawl"===d?r(a,(0,g.N)("web_search",c)):"searxng"===d?s(a,(0,g.N)("web_search",c)):"brave"===d?t(a,(0,g.N)("web_search",c)):w(a,(0,g.N)("web_search",c))}function y(a){let b;try{b=new URL(String(a||""))}catch{throw Error("url must be a valid URL")}if(!["http:","https:"].includes(b.protocol))throw Error("Only http and https URLs are supported");let c=b.hostname.replace(/^\[|\]$/g,"").toLowerCase();if(!c)throw Error("URL host is required");if("localhost"===c||c.endsWith(".localhost")||c.endsWith(".local"))throw Error("Local/private network URLs are blocked");let d=e.isIP(c);if(4===d&&function(a){let b=a.split(".").map(Number);if(4!==b.length||b.some(a=>!Number.isInteger(a)||a<0||a>255))return!1;let[c,d]=b;return 10===c||127===c||169===c&&254===d||172===c&&d>=16&&d<=31||192===c&&168===d||0===c}(c)||6===d&&function(a){let b=a.toLowerCase();return"::1"===b||b.startsWith("fc")||b.startsWith("fd")||b.startsWith("fe80:")||"::"===b||b.startsWith("0:")}(c))throw Error("Local/private network URLs are blocked");return b}function z(a){return String(a||"").replace(/<script\b[^>]*>[\s\S]*?<\/script>/gi," ").replace(/<style\b[^>]*>[\s\S]*?<\/style>/gi," ").replace(/<noscript\b[^>]*>[\s\S]*?<\/noscript>/gi," ").replace(/<!--[\s\S]*?-->/g," ").replace(/<\/(p|div|section|article|header|footer|main|li|h[1-6]|tr)>/gi,"\n").replace(/<[^>]+>/g," ").replace(/&nbsp;/g," ").replace(/&amp;/g,"&").replace(/&lt;/g,"<").replace(/&gt;/g,">").replace(/&quot;/g,'"').replace(/&#39;/g,"'").replace(/[ \t]+\n/g,"\n").replace(/\n{3,}/g,"\n\n").replace(/[ \t]{2,}/g," ").trim()}async function A(a={},b={}){let c=b.agent_id??null,d=(0,g.N)("web_fetch",c),e=y(a.url),f=Math.min(Math.max(Number(a.max_bytes||512e3),1024),512e3),h=await d(e,{headers:{Accept:"text/html,text/plain,application/xhtml+xml,application/json;q=0.8,*/*;q=0.2","User-Agent":"MadarxOS/1.0 (+local research tool)"},redirect:"follow"});if(!h.ok)throw Error(`Fetch failed: ${h.status}`);let i=Number(h.headers.get("content-length")||0);if(i&&i>f)throw Error(`Response too large: ${i} bytes`);let j=h.body?.getReader();if(!j){let a=await h.text();if(Buffer.byteLength(a,"utf8")>f)throw Error("Response too large");return{url:e.toString(),status:h.status,content_type:h.headers.get("content-type")||"",text:z(a)}}let k=[],l=0;for(;;){let{value:a,done:b}=await j.read();if(b)break;if((l+=a.byteLength)>f)throw Error("Response too large");k.push(a)}let m=Buffer.concat(k).toString("utf8"),n=h.headers.get("content-type")||"";return{url:h.url||e.toString(),status:h.status,content_type:n,text:z(m).slice(0,Math.min(f,12e4)),source:{url:h.url||e.toString(),fetched_at:new Date().toISOString()}}}async function B(a={},b={}){let c=b.agent_id??null,d=y(a.url);if(!j("FIRECRAWL_API_URL")&&!j("FIRECRAWL_API_KEY"))return A(a,b);let e=await n(`${q()}/v1/scrape`,{method:"POST",headers:p(),body:JSON.stringify({url:d.toString(),formats:["markdown"]})},(0,g.N)("web_extract",c)),f=e.data||e,h=String(f.markdown||f.content||f.text||"");return{url:d.toString(),status:200,content_type:"text/markdown",text:h.slice(0,12e4),metadata:f.metadata||{},source:{provider:"firecrawl",url:d.toString(),fetched_at:new Date().toISOString()}}}[f,g]=h.then?(await h)():h,d()}catch(a){d(a)}})},89998:(a,b,c)=>{"use strict";c.a(a,async(a,d)=>{try{c.d(b,{AC:()=>g,jO:()=>h});var e=c(99332),f=a([e]);function g(a){let b=(globalThis.__madarxLiveEventBus||(globalThis.__madarxLiveEventBus={subscribers:new Set,nextId:1,publishedIds:new Set}),globalThis.__madarxLiveEventBus.publishedIds||(globalThis.__madarxLiveEventBus.publishedIds=new Set),globalThis.__madarxLiveEventBus),c={ts:a?.ts||Date.now(),id:a?.id||`evt-${b.nextId++}-${Math.random().toString(36).slice(2,8)}`,...a};(0,e.fI)(c);var d=c.id;if(d&&(b.publishedIds.add(d),b.publishedIds.size>1e3)){let a=b.publishedIds.values().next().value;b.publishedIds.delete(a)}for(let a of b.subscribers)try{a(c)}catch{}return c}e=(f.then?(await f)():f)[0];let i=new Set(["agents","runs","artifacts","heartbeat","approvals","connectors","schedules","sessions","local_actions","local_processes","hermes_jobs","projects","disk","acl","share_links","processes"]);function h(a,b){a&&i.has(a)&&(globalThis.__madarxSuppressStateEmits||g({type:`state.${a}.changed`,slice:a,...b&&"object"==typeof b?{meta:b}:{}}))}d()}catch(a){d(a)}})},90151:(a,b,c)=>{"use strict";Object.defineProperty(b,"__esModule",{value:!0}),!function(a,b){for(var c in b)Object.defineProperty(a,c,{enumerable:!0,get:b[c]})}(b,{Postpone:function(){return A},PreludeState:function(){return V},abortAndThrowOnSynchronousRequestDataAccess:function(){return x},abortOnSynchronousPlatformIOAccess:function(){return v},accessedDynamicData:function(){return I},annotateDynamicAccess:function(){return N},consumeDynamicAccess:function(){return J},createDynamicTrackingState:function(){return o},createDynamicValidationState:function(){return p},createHangingInputAbortSignal:function(){return M},createRenderInBrowserAbortSignal:function(){return L},delayUntilRuntimeStage:function(){return Y},formatDynamicAPIAccesses:function(){return K},getFirstDynamicReason:function(){return q},isDynamicPostpone:function(){return D},isPrerenderInterruptedError:function(){return H},logDisallowedDynamicError:function(){return W},markCurrentScopeAsDynamic:function(){return r},postponeWithTracking:function(){return B},throwIfDisallowedDynamic:function(){return X},throwToInterruptStaticGeneration:function(){return s},trackAllowedDynamicAccess:function(){return U},trackDynamicDataInDynamicRender:function(){return t},trackSynchronousPlatformIOAccessInDev:function(){return w},trackSynchronousRequestDataAccessInDev:function(){return z},useDynamicRouteParams:function(){return O},warnOnSyncDynamicError:function(){return y}});let d=function(a){return a&&a.__esModule?a:{default:a}}(c(46204)),e=c(52577),f=c(35119),g=c(63033),h=c(29294),i=c(85384),j=c(18633),k=c(86331),l=c(52318),m=c(58871),n="function"==typeof d.default.unstable_postpone;function o(a){return{isDebugDynamicAccesses:a,dynamicAccesses:[],syncDynamicErrorWithStack:null}}function p(){return{hasSuspenseAboveBody:!1,hasDynamicMetadata:!1,hasDynamicViewport:!1,hasAllowedDynamic:!1,dynamicErrors:[]}}function q(a){var b;return null==(b=a.dynamicAccesses[0])?void 0:b.expression}function r(a,b,c){if(b)switch(b.type){case"cache":case"unstable-cache":case"private-cache":return}if(!a.forceDynamic&&!a.forceStatic){if(a.dynamicShouldError)throw Object.defineProperty(new f.StaticGenBailoutError(`Route ${a.route} with \`dynamic = "error"\` couldn't be rendered statically because it used \`${c}\`. See more info here: https://nextjs.org/docs/app/building-your-application/rendering/static-and-dynamic#dynamic-rendering`),"__NEXT_ERROR_CODE",{value:"E553",enumerable:!1,configurable:!0});if(b)switch(b.type){case"prerender-ppr":return B(a.route,c,b.dynamicTracking);case"prerender-legacy":b.revalidate=0;let d=Object.defineProperty(new e.DynamicServerError(`Route ${a.route} couldn't be rendered statically because it used ${c}. See more info here: https://nextjs.org/docs/messages/dynamic-server-error`),"__NEXT_ERROR_CODE",{value:"E550",enumerable:!1,configurable:!0});throw a.dynamicUsageDescription=c,a.dynamicUsageStack=d.stack,d}}}function s(a,b,c){let d=Object.defineProperty(new e.DynamicServerError(`Route ${b.route} couldn't be rendered statically because it used \`${a}\`. See more info here: https://nextjs.org/docs/messages/dynamic-server-error`),"__NEXT_ERROR_CODE",{value:"E558",enumerable:!1,configurable:!0});throw c.revalidate=0,b.dynamicUsageDescription=a,b.dynamicUsageStack=d.stack,d}function t(a){switch(a.type){case"cache":case"unstable-cache":case"private-cache":return}}function u(a,b,c){let d=G(`Route ${a} needs to bail out of prerendering at this point because it used ${b}.`);c.controller.abort(d);let e=c.dynamicTracking;e&&e.dynamicAccesses.push({stack:e.isDebugDynamicAccesses?Error().stack:void 0,expression:b})}function v(a,b,c,d){let e=d.dynamicTracking;u(a,b,d),e&&null===e.syncDynamicErrorWithStack&&(e.syncDynamicErrorWithStack=c)}function w(a){a.prerenderPhase=!1}function x(a,b,c,d){if(!1===d.controller.signal.aborted){u(a,b,d);let e=d.dynamicTracking;e&&null===e.syncDynamicErrorWithStack&&(e.syncDynamicErrorWithStack=c)}throw G(`Route ${a} needs to bail out of prerendering at this point because it used ${b}.`)}function y(a){a.syncDynamicErrorWithStack&&console.error(a.syncDynamicErrorWithStack)}let z=w;function A({reason:a,route:b}){let c=g.workUnitAsyncStorage.getStore();B(b,a,c&&"prerender-ppr"===c.type?c.dynamicTracking:null)}function B(a,b,c){(function(){if(!n)throw Object.defineProperty(Error("Invariant: React.unstable_postpone is not defined. This suggests the wrong version of React was loaded. This is a bug in Next.js"),"__NEXT_ERROR_CODE",{value:"E224",enumerable:!1,configurable:!0})})(),c&&c.dynamicAccesses.push({stack:c.isDebugDynamicAccesses?Error().stack:void 0,expression:b}),d.default.unstable_postpone(C(a,b))}function C(a,b){return`Route ${a} needs to bail out of prerendering at this point because it used ${b}. React throws this special object to indicate where. It should not be caught by your own try/catch. Learn more: https://nextjs.org/docs/messages/ppr-caught-error`}function D(a){return"object"==typeof a&&null!==a&&"string"==typeof a.message&&E(a.message)}function E(a){return a.includes("needs to bail out of prerendering at this point because it used")&&a.includes("Learn more: https://nextjs.org/docs/messages/ppr-caught-error")}if(!1===E(C("%%%","^^^")))throw Object.defineProperty(Error("Invariant: isDynamicPostpone misidentified a postpone reason. This is a bug in Next.js"),"__NEXT_ERROR_CODE",{value:"E296",enumerable:!1,configurable:!0});let F="NEXT_PRERENDER_INTERRUPTED";function G(a){let b=Object.defineProperty(Error(a),"__NEXT_ERROR_CODE",{value:"E394",enumerable:!1,configurable:!0});return b.digest=F,b}function H(a){return"object"==typeof a&&null!==a&&a.digest===F&&"name"in a&&"message"in a&&a instanceof Error}function I(a){return a.length>0}function J(a,b){return a.dynamicAccesses.push(...b.dynamicAccesses),a.dynamicAccesses}function K(a){return a.filter(a=>"string"==typeof a.stack&&a.stack.length>0).map(({expression:a,stack:b})=>(b=b.split("\n").slice(4).filter(a=>!(a.includes("node_modules/next/")||a.includes(" (<anonymous>)")||a.includes(" (node:"))).join("\n"),`Dynamic API Usage Debug - ${a}:
1184
+ `);d.prepare("BEGIN").run();try{let a=(0,e.kF)();for(let b of D)F.run(c,b.fact_type),G.run((0,e.Si)("mef"),c,b.fact_type,b.value_text,b.confidence,b.source_document_id,b.source_chunk_id,b.source_quote,b.page_or_location,E,a,a);d.prepare("COMMIT").run()}catch(a){try{d.prepare("ROLLBACK").run()}catch{}return{status:"error",error:"persist_failed",reason:a?.message||String(a)}}try{(0,h.pQ)({user_id:b.acting_on_behalf_of_user_id||b.user_id||"system",org_id:b.org_id||"personal-org",action:"mines.facts.extracted",status:"success",summary:`LLM-extracted ${D.length} cited facts for ${f.name} from ${i.file_name} (${B.length} rejected)`,action_target_id:c,action_target_type:"mines_project",meta:{project_id:c,document_id:i.id,model:z,facts_written:D.length,facts_rejected:B.length,chunks_considered:q.length,chunks_in_window:t.length,fact_types:D.map(a=>a.fact_type)}})}catch{}return{status:"ok",document_id:i.id,document_name:i.file_name,model:z,chunks_considered:q.length,chunks_in_window:t.length,facts_proposed:y.length,facts_written:D.length,facts_rejected:B.length,fact_types:D.map(a=>a.fact_type),rejected:B.slice(0,20)}}d()}catch(a){d(a)}})},86702:(a,b,c)=>{"use strict";c.d(b,{_d:()=>e,eh:()=>d});let d=["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"];function e(a,b="activity.logged"){return d.includes(a)?a:b}},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})]})}},87301:(a,b,c)=>{"use strict";function d(a,b,c,d){let e,f=a.length,g=0;if(b=b<0?-b>f?0:f+b:b>f?f:b,c=c>0?c:0,d.length<1e4)(e=Array.from(d)).unshift(b,c),a.splice(...e);else for(c&&a.splice(b,c);g<d.length;)(e=d.slice(g,g+1e4)).unshift(b,0),a.splice(...e),g+=1e4,b+=1e4}function e(a,b){return a.length>0?(d(a,a.length,0,b),a):b}c.d(b,{V:()=>e,m:()=>d})},87345:(a,b,c)=>{"use strict";function d(){throw Object.defineProperty(Error("`unauthorized()` is experimental and only allowed to be used when `experimental.authInterrupts` is enabled."),"__NEXT_ERROR_CODE",{value:"E411",enumerable:!1,configurable:!0})}Object.defineProperty(b,"__esModule",{value:!0}),Object.defineProperty(b,"unauthorized",{enumerable:!0,get:function(){return d}}),c(15570).HTTP_ERROR_FALLBACK_ERROR_CODE,("function"==typeof b.default||"object"==typeof b.default&&null!==b.default)&&void 0===b.default.__esModule&&(Object.defineProperty(b.default,"__esModule",{value:!0}),Object.assign(b.default,b),a.exports=b.default)},88002:(a,b,c)=>{"use strict";function d(a){throw Object.defineProperty(Error("cacheLife() is only available with the experimental.useCache config."),"__NEXT_ERROR_CODE",{value:"E627",enumerable:!1,configurable:!0})}Object.defineProperty(b,"F",{enumerable:!0,get:function(){return d}}),c(29294),c(63033)},89145:(a,b,c)=>{"use strict";c.a(a,async(a,d)=>{try{c.d(b,{IY:()=>B,dV:()=>A,tE:()=>x,vC:()=>y});var e=c(77030),f=c(81909),g=c(16343),h=a([f,g]);function i(a){return String(process.env[a]||"").trim()}function j(a){try{let b=(0,f.r6)(a);if(b)return String(b).trim()}catch{}return i(a)}function k(a={}){let b=String(a.query||a.q||"").trim();if(!b)throw Error("query is required");return b}function l(a={}){return Math.min(Math.max(Number(a.count||5),1),10)}function m({title:a,url:b,snippet:c,source:d,rank:e=0,metadata:f={}}){return{rank:e+1,title:String(a||""),url:String(b||""),snippet:String(c||""),source:d,metadata:f}}async function n(a,b={},c=fetch){let d=await c(a,b);if(!d.ok){let a=d.statusText||String(d.status);try{let b=await d.text();b&&(a=`${a}: ${b.slice(0,200)}`)}catch{}throw Error(`Request failed: ${d.status} ${a}`.trim())}return d.json()}function o(a={},b=0){return m({rank:b,title:a.title,url:a.url,snippet:a.description||a.snippet,source:"brave",metadata:{age:a.age||null,family_friendly:a.family_friendly??null}})}function p(){let a={Accept:"application/json","Content-Type":"application/json"},b=j("FIRECRAWL_API_KEY");return b&&(a.Authorization=`Bearer ${b}`),a}function q(){return(j("FIRECRAWL_API_URL")||"https://api.firecrawl.dev").replace(/\/+$/g,"")}async function r(a={},b=fetch){let c=k(a),d=l(a),e=await n(`${q()}/v1/search`,{method:"POST",headers:p(),body:JSON.stringify({query:c,limit:d})},b);return{query:c,source:"firecrawl",results:(function(a={}){return Array.isArray(a.data)?a.data:Array.isArray(a.results)?a.results:Array.isArray(a.web)?a.web:Array.isArray(a.web?.results)?a.web.results:[]})(e).slice(0,d).map((a,b)=>m({rank:b,title:a.title,url:a.url||a.link,snippet:a.description||a.snippet||a.content||a.markdown,source:"firecrawl",metadata:a.metadata||{}})).filter(a=>a.url)}}async function s(a={},b=fetch){let c=k(a),d=l(a),e=j("SEARXNG_URL");if(!e)throw Error("SEARXNG_URL not configured");let f=new URL("/search",e.replace(/\/+$/g,""));f.searchParams.set("q",c),f.searchParams.set("format","json"),(a.search_lang||a.language)&&f.searchParams.set("language",String(a.search_lang||a.language));let g=await n(f,{headers:{Accept:"application/json"}},b);return{query:c,source:"searxng",results:(g.results||[]).slice(0,d).map((a,b)=>m({rank:b,title:a.title,url:a.url,snippet:a.content||a.snippet,source:"searxng",metadata:a.metadata||{}})).filter(a=>a.url)}}async function t(a={},b=fetch){let c=j("BRAVE_SEARCH_API_KEY");if(!c)throw Error("BRAVE_SEARCH_API_KEY not configured");let d=k(a),e=l(a),f=new URL("https://api.search.brave.com/res/v1/web/search");f.searchParams.set("q",d),f.searchParams.set("count",String(e)),a.country&&f.searchParams.set("country",String(a.country)),a.search_lang&&f.searchParams.set("search_lang",String(a.search_lang));let g=await n(f,{headers:{Accept:"application/json","X-Subscription-Token":c}},b),h=(g.web?.results||[]).slice(0,e).map(o);return{query:d,source:"brave",results:h}}function u(a=""){return String(a).replace(/&nbsp;/g," ").replace(/&amp;/g,"&").replace(/&lt;/g,"<").replace(/&gt;/g,">").replace(/&quot;/g,'"').replace(/&#39;/g,"'").replace(/&#x27;/g,"'")}function v(a=""){return u(String(a).replace(/<[^>]+>/g," ")).replace(/\s+/g," ").trim()}async function w(a={},b=fetch){let c=k(a),d=l(a),e=new URL("https://lite.duckduckgo.com/lite/");e.searchParams.set("q",c);let f=await b(e,{headers:{Accept:"text/html,application/xhtml+xml;q=0.9,*/*;q=0.2","User-Agent":"MadarxOS/1.0 (+local research tool)"}});if(!f.ok)throw Error(`DuckDuckGo Lite search failed: ${f.status}`);let g=await f.text();return{query:c,source:"fetch",results:function(a="",b=5){let c=[...String(a).matchAll(/<a\b[^>]*href=["'][^"']+["'][^>]*>[\s\S]*?<\/a>/gi)],d=[...String(a).matchAll(/<td\b[^>]*class=["'][^"']*result-snippet[^"']*["'][^>]*>([\s\S]*?)<\/td>/gi)].map(a=>v(a[1])),e=[];for(let a of c){let c=a[0].match(/<a\b[^>]*>/i)?.[0]||"",f=v(a[0]),g=function(a=""){try{let b=new URL(a,"https://lite.duckduckgo.com"),c=b.searchParams.get("uddg");if(c)return c;if(["http:","https:"].includes(b.protocol))return b.toString()}catch{}return a}(function(a,b){let c=a.match(RegExp(`${b}\\s*=\\s*["']([^"']+)["']`,"i"));return c?u(c[1]):""}(c,"href"));if(f&&/^https?:\/\//i.test(g)&&(e.push(m({rank:e.length,title:f,url:g,snippet:d[e.length]||"",source:"duckduckgo_lite",metadata:{}})),e.length>=b))break}return e}(g,d)}}async function x(a={},b={}){let c=b.agent_id??null,d=function(){let a=i("MADARX_WEB_PROVIDER").toLowerCase();if(a){if(["firecrawl","searxng","brave","fetch"].includes(a))return a;throw Error(`Unsupported MADARX_WEB_PROVIDER: ${a}`)}return j("FIRECRAWL_API_URL")||j("FIRECRAWL_API_KEY")?"firecrawl":j("SEARXNG_URL")?"searxng":j("BRAVE_SEARCH_API_KEY")?"brave":"fetch"}();return"firecrawl"===d?r(a,(0,g.N)("web_search",c)):"searxng"===d?s(a,(0,g.N)("web_search",c)):"brave"===d?t(a,(0,g.N)("web_search",c)):w(a,(0,g.N)("web_search",c))}function y(a){let b;try{b=new URL(String(a||""))}catch{throw Error("url must be a valid URL")}if(!["http:","https:"].includes(b.protocol))throw Error("Only http and https URLs are supported");let c=b.hostname.replace(/^\[|\]$/g,"").toLowerCase();if(!c)throw Error("URL host is required");if("localhost"===c||c.endsWith(".localhost")||c.endsWith(".local"))throw Error("Local/private network URLs are blocked");let d=e.isIP(c);if(4===d&&function(a){let b=a.split(".").map(Number);if(4!==b.length||b.some(a=>!Number.isInteger(a)||a<0||a>255))return!1;let[c,d]=b;return 10===c||127===c||169===c&&254===d||172===c&&d>=16&&d<=31||192===c&&168===d||0===c}(c)||6===d&&function(a){let b=a.toLowerCase();return"::1"===b||b.startsWith("fc")||b.startsWith("fd")||b.startsWith("fe80:")||"::"===b||b.startsWith("0:")}(c))throw Error("Local/private network URLs are blocked");return b}function z(a){return String(a||"").replace(/<script\b[^>]*>[\s\S]*?<\/script>/gi," ").replace(/<style\b[^>]*>[\s\S]*?<\/style>/gi," ").replace(/<noscript\b[^>]*>[\s\S]*?<\/noscript>/gi," ").replace(/<!--[\s\S]*?-->/g," ").replace(/<\/(p|div|section|article|header|footer|main|li|h[1-6]|tr)>/gi,"\n").replace(/<[^>]+>/g," ").replace(/&nbsp;/g," ").replace(/&amp;/g,"&").replace(/&lt;/g,"<").replace(/&gt;/g,">").replace(/&quot;/g,'"').replace(/&#39;/g,"'").replace(/[ \t]+\n/g,"\n").replace(/\n{3,}/g,"\n\n").replace(/[ \t]{2,}/g," ").trim()}async function A(a={},b={}){let c=b.agent_id??null,d=(0,g.N)("web_fetch",c),e=y(a.url),f=Math.min(Math.max(Number(a.max_bytes||512e3),1024),512e3),h=await d(e,{headers:{Accept:"text/html,text/plain,application/xhtml+xml,application/json;q=0.8,*/*;q=0.2","User-Agent":"MadarxOS/1.0 (+local research tool)"},redirect:"follow"});if(!h.ok)throw Error(`Fetch failed: ${h.status}`);let i=Number(h.headers.get("content-length")||0);if(i&&i>f)throw Error(`Response too large: ${i} bytes`);let j=h.body?.getReader();if(!j){let a=await h.text();if(Buffer.byteLength(a,"utf8")>f)throw Error("Response too large");return{url:e.toString(),status:h.status,content_type:h.headers.get("content-type")||"",text:z(a)}}let k=[],l=0;for(;;){let{value:a,done:b}=await j.read();if(b)break;if((l+=a.byteLength)>f)throw Error("Response too large");k.push(a)}let m=Buffer.concat(k).toString("utf8"),n=h.headers.get("content-type")||"";return{url:h.url||e.toString(),status:h.status,content_type:n,text:z(m).slice(0,Math.min(f,12e4)),source:{url:h.url||e.toString(),fetched_at:new Date().toISOString()}}}async function B(a={},b={}){let c=b.agent_id??null,d=y(a.url);if(!j("FIRECRAWL_API_URL")&&!j("FIRECRAWL_API_KEY"))return A(a,b);let e=await n(`${q()}/v1/scrape`,{method:"POST",headers:p(),body:JSON.stringify({url:d.toString(),formats:["markdown"]})},(0,g.N)("web_extract",c)),f=e.data||e,h=String(f.markdown||f.content||f.text||"");return{url:d.toString(),status:200,content_type:"text/markdown",text:h.slice(0,12e4),metadata:f.metadata||{},source:{provider:"firecrawl",url:d.toString(),fetched_at:new Date().toISOString()}}}[f,g]=h.then?(await h)():h,d()}catch(a){d(a)}})},89998:(a,b,c)=>{"use strict";c.a(a,async(a,d)=>{try{c.d(b,{AC:()=>g,jO:()=>h});var e=c(99332),f=a([e]);function g(a){let b=(globalThis.__madarxLiveEventBus||(globalThis.__madarxLiveEventBus={subscribers:new Set,nextId:1,publishedIds:new Set}),globalThis.__madarxLiveEventBus.publishedIds||(globalThis.__madarxLiveEventBus.publishedIds=new Set),globalThis.__madarxLiveEventBus),c={ts:a?.ts||Date.now(),id:a?.id||`evt-${b.nextId++}-${Math.random().toString(36).slice(2,8)}`,...a};(0,e.fI)(c);var d=c.id;if(d&&(b.publishedIds.add(d),b.publishedIds.size>1e3)){let a=b.publishedIds.values().next().value;b.publishedIds.delete(a)}for(let a of b.subscribers)try{a(c)}catch{}return c}e=(f.then?(await f)():f)[0];let i=new Set(["agents","runs","artifacts","heartbeat","approvals","connectors","schedules","sessions","local_actions","local_processes","hermes_jobs","projects","disk","acl","share_links","processes"]);function h(a,b){a&&i.has(a)&&(globalThis.__madarxSuppressStateEmits||g({type:`state.${a}.changed`,slice:a,...b&&"object"==typeof b?{meta:b}:{}}))}d()}catch(a){d(a)}})},90151:(a,b,c)=>{"use strict";Object.defineProperty(b,"__esModule",{value:!0}),!function(a,b){for(var c in b)Object.defineProperty(a,c,{enumerable:!0,get:b[c]})}(b,{Postpone:function(){return A},PreludeState:function(){return V},abortAndThrowOnSynchronousRequestDataAccess:function(){return x},abortOnSynchronousPlatformIOAccess:function(){return v},accessedDynamicData:function(){return I},annotateDynamicAccess:function(){return N},consumeDynamicAccess:function(){return J},createDynamicTrackingState:function(){return o},createDynamicValidationState:function(){return p},createHangingInputAbortSignal:function(){return M},createRenderInBrowserAbortSignal:function(){return L},delayUntilRuntimeStage:function(){return Y},formatDynamicAPIAccesses:function(){return K},getFirstDynamicReason:function(){return q},isDynamicPostpone:function(){return D},isPrerenderInterruptedError:function(){return H},logDisallowedDynamicError:function(){return W},markCurrentScopeAsDynamic:function(){return r},postponeWithTracking:function(){return B},throwIfDisallowedDynamic:function(){return X},throwToInterruptStaticGeneration:function(){return s},trackAllowedDynamicAccess:function(){return U},trackDynamicDataInDynamicRender:function(){return t},trackSynchronousPlatformIOAccessInDev:function(){return w},trackSynchronousRequestDataAccessInDev:function(){return z},useDynamicRouteParams:function(){return O},warnOnSyncDynamicError:function(){return y}});let d=function(a){return a&&a.__esModule?a:{default:a}}(c(46204)),e=c(52577),f=c(35119),g=c(63033),h=c(29294),i=c(85384),j=c(18633),k=c(86331),l=c(52318),m=c(58871),n="function"==typeof d.default.unstable_postpone;function o(a){return{isDebugDynamicAccesses:a,dynamicAccesses:[],syncDynamicErrorWithStack:null}}function p(){return{hasSuspenseAboveBody:!1,hasDynamicMetadata:!1,hasDynamicViewport:!1,hasAllowedDynamic:!1,dynamicErrors:[]}}function q(a){var b;return null==(b=a.dynamicAccesses[0])?void 0:b.expression}function r(a,b,c){if(b)switch(b.type){case"cache":case"unstable-cache":case"private-cache":return}if(!a.forceDynamic&&!a.forceStatic){if(a.dynamicShouldError)throw Object.defineProperty(new f.StaticGenBailoutError(`Route ${a.route} with \`dynamic = "error"\` couldn't be rendered statically because it used \`${c}\`. See more info here: https://nextjs.org/docs/app/building-your-application/rendering/static-and-dynamic#dynamic-rendering`),"__NEXT_ERROR_CODE",{value:"E553",enumerable:!1,configurable:!0});if(b)switch(b.type){case"prerender-ppr":return B(a.route,c,b.dynamicTracking);case"prerender-legacy":b.revalidate=0;let d=Object.defineProperty(new e.DynamicServerError(`Route ${a.route} couldn't be rendered statically because it used ${c}. See more info here: https://nextjs.org/docs/messages/dynamic-server-error`),"__NEXT_ERROR_CODE",{value:"E550",enumerable:!1,configurable:!0});throw a.dynamicUsageDescription=c,a.dynamicUsageStack=d.stack,d}}}function s(a,b,c){let d=Object.defineProperty(new e.DynamicServerError(`Route ${b.route} couldn't be rendered statically because it used \`${a}\`. See more info here: https://nextjs.org/docs/messages/dynamic-server-error`),"__NEXT_ERROR_CODE",{value:"E558",enumerable:!1,configurable:!0});throw c.revalidate=0,b.dynamicUsageDescription=a,b.dynamicUsageStack=d.stack,d}function t(a){switch(a.type){case"cache":case"unstable-cache":case"private-cache":return}}function u(a,b,c){let d=G(`Route ${a} needs to bail out of prerendering at this point because it used ${b}.`);c.controller.abort(d);let e=c.dynamicTracking;e&&e.dynamicAccesses.push({stack:e.isDebugDynamicAccesses?Error().stack:void 0,expression:b})}function v(a,b,c,d){let e=d.dynamicTracking;u(a,b,d),e&&null===e.syncDynamicErrorWithStack&&(e.syncDynamicErrorWithStack=c)}function w(a){a.prerenderPhase=!1}function x(a,b,c,d){if(!1===d.controller.signal.aborted){u(a,b,d);let e=d.dynamicTracking;e&&null===e.syncDynamicErrorWithStack&&(e.syncDynamicErrorWithStack=c)}throw G(`Route ${a} needs to bail out of prerendering at this point because it used ${b}.`)}function y(a){a.syncDynamicErrorWithStack&&console.error(a.syncDynamicErrorWithStack)}let z=w;function A({reason:a,route:b}){let c=g.workUnitAsyncStorage.getStore();B(b,a,c&&"prerender-ppr"===c.type?c.dynamicTracking:null)}function B(a,b,c){(function(){if(!n)throw Object.defineProperty(Error("Invariant: React.unstable_postpone is not defined. This suggests the wrong version of React was loaded. This is a bug in Next.js"),"__NEXT_ERROR_CODE",{value:"E224",enumerable:!1,configurable:!0})})(),c&&c.dynamicAccesses.push({stack:c.isDebugDynamicAccesses?Error().stack:void 0,expression:b}),d.default.unstable_postpone(C(a,b))}function C(a,b){return`Route ${a} needs to bail out of prerendering at this point because it used ${b}. React throws this special object to indicate where. It should not be caught by your own try/catch. Learn more: https://nextjs.org/docs/messages/ppr-caught-error`}function D(a){return"object"==typeof a&&null!==a&&"string"==typeof a.message&&E(a.message)}function E(a){return a.includes("needs to bail out of prerendering at this point because it used")&&a.includes("Learn more: https://nextjs.org/docs/messages/ppr-caught-error")}if(!1===E(C("%%%","^^^")))throw Object.defineProperty(Error("Invariant: isDynamicPostpone misidentified a postpone reason. This is a bug in Next.js"),"__NEXT_ERROR_CODE",{value:"E296",enumerable:!1,configurable:!0});let F="NEXT_PRERENDER_INTERRUPTED";function G(a){let b=Object.defineProperty(Error(a),"__NEXT_ERROR_CODE",{value:"E394",enumerable:!1,configurable:!0});return b.digest=F,b}function H(a){return"object"==typeof a&&null!==a&&a.digest===F&&"name"in a&&"message"in a&&a instanceof Error}function I(a){return a.length>0}function J(a,b){return a.dynamicAccesses.push(...b.dynamicAccesses),a.dynamicAccesses}function K(a){return a.filter(a=>"string"==typeof a.stack&&a.stack.length>0).map(({expression:a,stack:b})=>(b=b.split("\n").slice(4).filter(a=>!(a.includes("node_modules/next/")||a.includes(" (<anonymous>)")||a.includes(" (node:"))).join("\n"),`Dynamic API Usage Debug - ${a}:
1185
1185
  ${b}`))}function L(){let a=new AbortController;return a.abort(Object.defineProperty(new l.BailoutToCSRError("Render in Browser"),"__NEXT_ERROR_CODE",{value:"E721",enumerable:!1,configurable:!0})),a.signal}function M(a){switch(a.type){case"prerender":case"prerender-runtime":let b=new AbortController;if(a.cacheSignal)a.cacheSignal.inputReady().then(()=>{b.abort()});else{let c=(0,g.getRuntimeStagePromise)(a);c?c.then(()=>(0,k.scheduleOnNextTick)(()=>b.abort())):(0,k.scheduleOnNextTick)(()=>b.abort())}return b.signal;case"prerender-client":case"prerender-ppr":case"prerender-legacy":case"request":case"cache":case"private-cache":case"unstable-cache":return}}function N(a,b){let c=b.dynamicTracking;c&&c.dynamicAccesses.push({stack:c.isDebugDynamicAccesses?Error().stack:void 0,expression:a})}function O(a){let b=h.workAsyncStorage.getStore(),c=g.workUnitAsyncStorage.getStore();if(b&&c)switch(c.type){case"prerender-client":case"prerender":{let e=c.fallbackRouteParams;e&&e.size>0&&d.default.use((0,i.makeHangingPromise)(c.renderSignal,b.route,a));break}case"prerender-ppr":{let d=c.fallbackRouteParams;if(d&&d.size>0)return B(b.route,a,c.dynamicTracking);break}case"prerender-runtime":throw Object.defineProperty(new m.InvariantError(`\`${a}\` was called during a runtime prerender. Next.js should be preventing ${a} from being included in server components statically, but did not in this case.`),"__NEXT_ERROR_CODE",{value:"E771",enumerable:!1,configurable:!0});case"cache":case"private-cache":throw Object.defineProperty(new m.InvariantError(`\`${a}\` was called inside a cache scope. Next.js should be preventing ${a} from being included in server components statically, but did not in this case.`),"__NEXT_ERROR_CODE",{value:"E745",enumerable:!1,configurable:!0})}}let P=/\n\s+at Suspense \(<anonymous>\)/,Q=RegExp(`\\n\\s+at Suspense \\(<anonymous>\\)(?:(?!\\n\\s+at (?:body|div|main|section|article|aside|header|footer|nav|form|p|span|h1|h2|h3|h4|h5|h6) \\(<anonymous>\\))[\\s\\S])*?\\n\\s+at ${j.ROOT_LAYOUT_BOUNDARY_NAME} \\([^\\n]*\\)`),R=RegExp(`\\n\\s+at ${j.METADATA_BOUNDARY_NAME}[\\n\\s]`),S=RegExp(`\\n\\s+at ${j.VIEWPORT_BOUNDARY_NAME}[\\n\\s]`),T=RegExp(`\\n\\s+at ${j.OUTLET_BOUNDARY_NAME}[\\n\\s]`);function U(a,b,c,d){if(!T.test(b)){if(R.test(b)){c.hasDynamicMetadata=!0;return}if(S.test(b)){c.hasDynamicViewport=!0;return}if(Q.test(b)){c.hasAllowedDynamic=!0,c.hasSuspenseAboveBody=!0;return}else if(P.test(b)){c.hasAllowedDynamic=!0;return}else{if(d.syncDynamicErrorWithStack)return void c.dynamicErrors.push(d.syncDynamicErrorWithStack);let e=function(a,b){let c=Object.defineProperty(Error(a),"__NEXT_ERROR_CODE",{value:"E394",enumerable:!1,configurable:!0});return c.stack=c.name+": "+a+b,c}(`Route "${a.route}": A component accessed data, headers, params, searchParams, or a short-lived cache without a Suspense boundary nor a "use cache" above it. See more info: https://nextjs.org/docs/messages/next-prerender-missing-suspense`,b);return void c.dynamicErrors.push(e)}}}var V=function(a){return a[a.Full=0]="Full",a[a.Empty=1]="Empty",a[a.Errored=2]="Errored",a}({});function W(a,b){console.error(b),a.dev||(a.hasReadableErrorStacks?console.error(`To get a more detailed stack trace and pinpoint the issue, start the app in development mode by running \`next dev\`, then open "${a.route}" in your browser to investigate the error.`):console.error(`To get a more detailed stack trace and pinpoint the issue, try one of the following:
1186
1186
  - Start the app in development mode by running \`next dev\`, then open "${a.route}" in your browser to investigate the error.
1187
1187
  - Rerun the production build with \`next build --debug-prerender\` to generate better stack traces.`))}function X(a,b,c,d){if(0!==b){if(c.hasSuspenseAboveBody)return;if(d.syncDynamicErrorWithStack)throw W(a,d.syncDynamicErrorWithStack),new f.StaticGenBailoutError;let e=c.dynamicErrors;if(e.length>0){for(let b=0;b<e.length;b++)W(a,e[b]);throw new f.StaticGenBailoutError}if(c.hasDynamicViewport)throw console.error(`Route "${a.route}" has a \`generateViewport\` that depends on Request data (\`cookies()\`, etc...) or uncached external data (\`fetch(...)\`, etc...) without explicitly allowing fully dynamic rendering. See more info here: https://nextjs.org/docs/messages/next-prerender-dynamic-viewport`),new f.StaticGenBailoutError;if(1===b)throw console.error(`Route "${a.route}" did not produce a static shell and Next.js was unable to determine a reason. This is a bug in Next.js.`),new f.StaticGenBailoutError}else if(!1===c.hasAllowedDynamic&&c.hasDynamicMetadata)throw console.error(`Route "${a.route}" has a \`generateMetadata\` that depends on Request data (\`cookies()\`, etc...) or uncached external data (\`fetch(...)\`, etc...) when the rest of the route does not. See more info here: https://nextjs.org/docs/messages/next-prerender-dynamic-metadata`),new f.StaticGenBailoutError}function Y(a,b){return a.runtimeStagePromise?a.runtimeStagePromise.then(()=>b):b}},90386:(a,b,c)=>{"use strict";c.d(b,{A:()=>d});let d=(0,c(65751).A)("x",[["path",{d:"M18 6 6 18",key:"1bl5f8"}],["path",{d:"m6 6 12 12",key:"d8bk6v"}]])},90475:(a,b)=>{"use strict";Object.defineProperty(b,"__esModule",{value:!0}),!function(a,b){for(var c in b)Object.defineProperty(a,c,{enumerable:!0,get:b[c]})}(b,{NEXT_REQUEST_META:function(){return c},addRequestMeta:function(){return f},getRequestMeta:function(){return d},removeRequestMeta:function(){return g},setRequestMeta:function(){return e}});let c=Symbol.for("NextInternalRequestMeta");function d(a,b){let d=a[c]||{};return"string"==typeof b?d[b]:d}function e(a,b){return a[c]=b,b}function f(a,b,c){let f=d(a);return f[b]=c,e(a,f)}function g(a,b){let c=d(a);return delete c[b],e(a,c)}},90626:(a,b,c)=>{"use strict";Object.defineProperty(b,"__esModule",{value:!0}),Object.defineProperty(b,"isNextRouterError",{enumerable:!0,get:function(){return f}});let d=c(15570),e=c(44338);function f(a){return(0,e.isRedirectError)(a)||(0,d.isHTTPAccessFallbackError)(a)}("function"==typeof b.default||"object"==typeof b.default&&null!==b.default)&&void 0===b.default.__esModule&&(Object.defineProperty(b.default,"__esModule",{value:!0}),Object.assign(b.default,b),a.exports=b.default)},90914:(a,b,c)=>{"use strict";Object.defineProperty(b,"__esModule",{value:!0}),!function(a,b){for(var c in b)Object.defineProperty(a,c,{enumerable:!0,get:b[c]})}(b,{fromResponseCacheEntry:function(){return h},routeKindToIncrementalCacheKind:function(){return j},toResponseCacheEntry:function(){return i}});let d=c(94062),e=function(a){return a&&a.__esModule?a:{default:a}}(c(32198)),f=c(26082),g=c(73443);async function h(a){var b,c;return{...a,value:(null==(b=a.value)?void 0:b.kind)===d.CachedRouteKind.PAGES?{kind:d.CachedRouteKind.PAGES,html:await a.value.html.toUnchunkedString(!0),pageData:a.value.pageData,headers:a.value.headers,status:a.value.status}:(null==(c=a.value)?void 0:c.kind)===d.CachedRouteKind.APP_PAGE?{kind:d.CachedRouteKind.APP_PAGE,html:await a.value.html.toUnchunkedString(!0),postponed:a.value.postponed,rscData:a.value.rscData,headers:a.value.headers,status:a.value.status,segmentData:a.value.segmentData}:a.value}}async function i(a){var b,c;return a?{isMiss:a.isMiss,isStale:a.isStale,cacheControl:a.cacheControl,value:(null==(b=a.value)?void 0:b.kind)===d.CachedRouteKind.PAGES?{kind:d.CachedRouteKind.PAGES,html:e.default.fromStatic(a.value.html,g.HTML_CONTENT_TYPE_HEADER),pageData:a.value.pageData,headers:a.value.headers,status:a.value.status}:(null==(c=a.value)?void 0:c.kind)===d.CachedRouteKind.APP_PAGE?{kind:d.CachedRouteKind.APP_PAGE,html:e.default.fromStatic(a.value.html,g.HTML_CONTENT_TYPE_HEADER),rscData:a.value.rscData,headers:a.value.headers,status:a.value.status,postponed:a.value.postponed,segmentData:a.value.segmentData}:a.value}:null}function j(a){switch(a){case f.RouteKind.PAGES:return d.IncrementalCacheKind.PAGES;case f.RouteKind.APP_PAGE:return d.IncrementalCacheKind.APP_PAGE;case f.RouteKind.IMAGE:return d.IncrementalCacheKind.IMAGE;case f.RouteKind.APP_ROUTE:return d.IncrementalCacheKind.APP_ROUTE;case f.RouteKind.PAGES_API:throw Object.defineProperty(Error(`Unexpected route kind ${a}`),"__NEXT_ERROR_CODE",{value:"E64",enumerable:!1,configurable:!0});default:return a}}},91209:(a,b)=>{"use strict";Object.defineProperty(b,"__esModule",{value:!0}),!function(a,b){for(var c in b)Object.defineProperty(a,c,{enumerable:!0,get:b[c]})}(b,{PageSignatureError:function(){return c},RemovedPageError:function(){return d},RemovedUAError:function(){return e}});class c extends Error{constructor({page:a}){super(`The middleware "${a}" accepts an async API directly with the form:
@@ -1195,7 +1195,7 @@ ${b}`))}function L(){let a=new AbortController;return a.abort(Object.definePrope
1195
1195
  Read more: https://nextjs.org/docs/messages/middleware-request-page
1196
1196
  `)}}class e extends Error{constructor(){super(`The request.ua has been removed in favour of \`userAgent\` function.
1197
1197
  Read more: https://nextjs.org/docs/messages/middleware-parse-user-agent
1198
- `)}}},91488:(a,b,c)=>{"use strict";Object.defineProperty(b,"A",{enumerable:!0,get:function(){return d.registerServerReference}});let d=c(83183)},91837:(a,b,c)=>{let d={unstable_cache:c(96822).e,revalidateTag:c(6946).revalidateTag,revalidatePath:c(6946).revalidatePath,unstable_expireTag:c(6946).unstable_expireTag,unstable_expirePath:c(6946).unstable_expirePath,unstable_noStore:c(37425).M,unstable_cacheLife:c(88002).F,unstable_cacheTag:c(14884).z};a.exports=d,b.unstable_cache=d.unstable_cache,b.revalidatePath=d.revalidatePath,b.revalidateTag=d.revalidateTag,b.unstable_expireTag=d.unstable_expireTag,b.unstable_expirePath=d.unstable_expirePath,b.unstable_noStore=d.unstable_noStore,b.unstable_cacheLife=d.unstable_cacheLife,b.unstable_cacheTag=d.unstable_cacheTag},93047:(a,b)=>{"use strict";Object.defineProperty(b,"__esModule",{value:!0}),Object.defineProperty(b,"ENCODED_TAGS",{enumerable:!0,get:function(){return c}});let c={OPENING:{HTML:new Uint8Array([60,104,116,109,108]),BODY:new Uint8Array([60,98,111,100,121])},CLOSED:{HEAD:new Uint8Array([60,47,104,101,97,100,62]),BODY:new Uint8Array([60,47,98,111,100,121,62]),HTML:new Uint8Array([60,47,104,116,109,108,62]),BODY_AND_HTML:new Uint8Array([60,47,98,111,100,121,62,60,47,104,116,109,108,62])},META:{ICON_MARK:new Uint8Array([60,109,101,116,97,32,110,97,109,101,61,34,194,171,110,120,116,45,105,99,111,110,194,187,34])}}},93076:(a,b,c)=>{"use strict";c.d(b,{default:()=>k});var d=c(21124),e=c(38301),f=c(23312),g=c(43815),h=c(85708);let i=(0,h.createServerReference)("4016a74884c2aa17107559a312bb61372df7c6f880",h.callServer,void 0,h.findSourceMapURL,"deleteProjectAction");function j({disabled:a}){let{pending:b}=(0,f.useFormStatus)();return(0,d.jsx)("button",{type:"submit",className:"admin-button danger",disabled:b||a,"aria-busy":b?"true":void 0,children:b?"Deleting…":"Delete project"})}function k({projectId:a,projectName:b,projectSlug:c,isProtected:f}){let[h,k]=e.useState(!1),[l,m]=e.useState("");if(f)return(0,d.jsxs)("span",{className:"admin-button secondary project-delete is-locked","aria-disabled":"true",title:"The Personal project is the default scope and cannot be deleted.",children:[(0,d.jsxs)("svg",{width:"11",height:"11",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round","aria-hidden":"true",style:{marginRight:6,verticalAlign:"-1px"},children:[(0,d.jsx)("rect",{x:"3",y:"11",width:"18",height:"11",rx:"2"}),(0,d.jsx)("path",{d:"M7 11V7a5 5 0 0 1 10 0v4"})]}),"Protected"]});e.useEffect(()=>{h||m("")},[h]);let n=l.trim()===c;return(0,d.jsxs)(d.Fragment,{children:[(0,d.jsx)("button",{type:"button",className:"admin-button secondary project-delete",onClick:()=>k(!0),"aria-label":`Delete ${b}`,children:"Delete"}),(0,d.jsx)(g.A,{open:h,onClose:()=>k(!1),eyebrow:"Delete project",title:`Delete ${b}?`,tone:"danger",children:(0,d.jsxs)("form",{className:"agents-modal-form",action:i,children:[(0,d.jsx)("input",{type:"hidden",name:"project_id",value:a}),(0,d.jsx)("p",{className:"agents-modal-help",children:"This removes the project, its agents, Disk files, memory, secrets, and audit history. The folder on your local drive is left untouched."}),(0,d.jsx)("section",{className:"agents-modal-section",children:(0,d.jsxs)("label",{className:"agents-modal-field wide",children:[(0,d.jsxs)("span",{children:["Type ",(0,d.jsx)("code",{className:"agents-modal-inline-code",children:c})," to confirm"]}),(0,d.jsx)("input",{type:"text",autoComplete:"off",spellCheck:!1,value:l,onChange:a=>m(a.target.value),placeholder:c,autoFocus:!0})]})}),(0,d.jsxs)("footer",{className:"agents-modal-foot",children:[(0,d.jsx)("button",{type:"button",className:"admin-button secondary",onClick:()=>k(!1),children:"Cancel"}),(0,d.jsx)(j,{disabled:!n})]})]})})]})}},94062:(a,b)=>{"use strict";Object.defineProperty(b,"__esModule",{value:!0}),!function(a,b){for(var c in b)Object.defineProperty(a,c,{enumerable:!0,get:b[c]})}(b,{CachedRouteKind:function(){return c},IncrementalCacheKind:function(){return d}});var c=function(a){return a.APP_PAGE="APP_PAGE",a.APP_ROUTE="APP_ROUTE",a.PAGES="PAGES",a.FETCH="FETCH",a.REDIRECT="REDIRECT",a.IMAGE="IMAGE",a}({}),d=function(a){return a.APP_PAGE="APP_PAGE",a.APP_ROUTE="APP_ROUTE",a.PAGES="PAGES",a.FETCH="FETCH",a.IMAGE="IMAGE",a}({})},94387:(a,b,c)=>{"use strict";c.a(a,async(a,d)=>{try{c.d(b,{r:()=>j,u:()=>i});var e=c(64319),f=a([e]);function g(a={}){return{id:a.id,summary:a.summary||"",start:a.start||null,end:a.end||null,attendees:a.attendees||[],status:a.status||null,html_link:a.htmlLink||null}}async function h(a,b,c,d){let f=(0,e.s)(d,c),g=await f(a,{headers:{Authorization:`Bearer ${b}`}});if(!g.ok)throw Error(`google calendar failed: ${g.status}`);return g.json()}async function i(a={},b={}){let c="calendar_events_list",d=await (0,e.r)(b,c),f=encodeURIComponent(a.calendar_id||"primary"),j=new URL(`https://www.googleapis.com/calendar/v3/calendars/${f}/events`);return a.time_min&&j.searchParams.set("timeMin",a.time_min),a.time_max&&j.searchParams.set("timeMax",a.time_max),a.max_results&&j.searchParams.set("maxResults",String(a.max_results)),((await h(j,d,b,c)).items||[]).map(g)}async function j(a={},b={}){if(!a.event_id)throw Error("event_id is required");let c="calendar_event_read",d=await (0,e.r)(b,c),f=encodeURIComponent(a.calendar_id||"primary"),i=encodeURIComponent(a.event_id),k=await h(`https://www.googleapis.com/calendar/v3/calendars/${f}/events/${i}`,d,b,c);return function(a={}){return{...g(a),description:a.description||"",location:a.location||"",creator:a.creator||null,organizer:a.organizer||null,recurrence:a.recurrence||[],conference_data:a.conferenceData||null}}(k)}e=(f.then?(await f)():f)[0],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))]})})}},94947:(a,b,c)=>{"use strict";c.a(a,async(a,d)=>{try{c.r(b),c.d(b,{"4016a74884c2aa17107559a312bb61372df7c6f880":()=>e.Dv,"40924c2bb7306ab859b7d1ab974ac9d9fb8f10f1ae":()=>e.gL,"40b68097a668d64419660ccd612496572b7b603c42":()=>e.Tg});var e=c(11812),f=a([e]);e=(f.then?(await f)():f)[0],d()}catch(a){d(a)}})},95411:(a,b,c)=>{"use strict";c.d(b,{t:()=>e,x:()=>d});let d=`
1198
+ `)}}},91488:(a,b,c)=>{"use strict";Object.defineProperty(b,"A",{enumerable:!0,get:function(){return d.registerServerReference}});let d=c(83183)},91837:(a,b,c)=>{let d={unstable_cache:c(96822).e,revalidateTag:c(6946).revalidateTag,revalidatePath:c(6946).revalidatePath,unstable_expireTag:c(6946).unstable_expireTag,unstable_expirePath:c(6946).unstable_expirePath,unstable_noStore:c(37425).M,unstable_cacheLife:c(88002).F,unstable_cacheTag:c(14884).z};a.exports=d,b.unstable_cache=d.unstable_cache,b.revalidatePath=d.revalidatePath,b.revalidateTag=d.revalidateTag,b.unstable_expireTag=d.unstable_expireTag,b.unstable_expirePath=d.unstable_expirePath,b.unstable_noStore=d.unstable_noStore,b.unstable_cacheLife=d.unstable_cacheLife,b.unstable_cacheTag=d.unstable_cacheTag},93047:(a,b)=>{"use strict";Object.defineProperty(b,"__esModule",{value:!0}),Object.defineProperty(b,"ENCODED_TAGS",{enumerable:!0,get:function(){return c}});let c={OPENING:{HTML:new Uint8Array([60,104,116,109,108]),BODY:new Uint8Array([60,98,111,100,121])},CLOSED:{HEAD:new Uint8Array([60,47,104,101,97,100,62]),BODY:new Uint8Array([60,47,98,111,100,121,62]),HTML:new Uint8Array([60,47,104,116,109,108,62]),BODY_AND_HTML:new Uint8Array([60,47,98,111,100,121,62,60,47,104,116,109,108,62])},META:{ICON_MARK:new Uint8Array([60,109,101,116,97,32,110,97,109,101,61,34,194,171,110,120,116,45,105,99,111,110,194,187,34])}}},94062:(a,b)=>{"use strict";Object.defineProperty(b,"__esModule",{value:!0}),!function(a,b){for(var c in b)Object.defineProperty(a,c,{enumerable:!0,get:b[c]})}(b,{CachedRouteKind:function(){return c},IncrementalCacheKind:function(){return d}});var c=function(a){return a.APP_PAGE="APP_PAGE",a.APP_ROUTE="APP_ROUTE",a.PAGES="PAGES",a.FETCH="FETCH",a.REDIRECT="REDIRECT",a.IMAGE="IMAGE",a}({}),d=function(a){return a.APP_PAGE="APP_PAGE",a.APP_ROUTE="APP_ROUTE",a.PAGES="PAGES",a.FETCH="FETCH",a.IMAGE="IMAGE",a}({})},94387:(a,b,c)=>{"use strict";c.a(a,async(a,d)=>{try{c.d(b,{r:()=>j,u:()=>i});var e=c(64319),f=a([e]);function g(a={}){return{id:a.id,summary:a.summary||"",start:a.start||null,end:a.end||null,attendees:a.attendees||[],status:a.status||null,html_link:a.htmlLink||null}}async function h(a,b,c,d){let f=(0,e.s)(d,c),g=await f(a,{headers:{Authorization:`Bearer ${b}`}});if(!g.ok)throw Error(`google calendar failed: ${g.status}`);return g.json()}async function i(a={},b={}){let c="calendar_events_list",d=await (0,e.r)(b,c),f=encodeURIComponent(a.calendar_id||"primary"),j=new URL(`https://www.googleapis.com/calendar/v3/calendars/${f}/events`);return a.time_min&&j.searchParams.set("timeMin",a.time_min),a.time_max&&j.searchParams.set("timeMax",a.time_max),a.max_results&&j.searchParams.set("maxResults",String(a.max_results)),((await h(j,d,b,c)).items||[]).map(g)}async function j(a={},b={}){if(!a.event_id)throw Error("event_id is required");let c="calendar_event_read",d=await (0,e.r)(b,c),f=encodeURIComponent(a.calendar_id||"primary"),i=encodeURIComponent(a.event_id),k=await h(`https://www.googleapis.com/calendar/v3/calendars/${f}/events/${i}`,d,b,c);return function(a={}){return{...g(a),description:a.description||"",location:a.location||"",creator:a.creator||null,organizer:a.organizer||null,recurrence:a.recurrence||[],conference_data:a.conferenceData||null}}(k)}e=(f.then?(await f)():f)[0],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))]})})}},95411:(a,b,c)=>{"use strict";c.d(b,{t:()=>e,x:()=>d});let d=`
1199
1199
  CREATE TABLE IF NOT EXISTS agents (
1200
1200
  id TEXT PRIMARY KEY,
1201
1201
  name TEXT NOT NULL,
@@ -2758,11 +2758,11 @@ SELECT
2758
2758
  ELSE CAST((julianday(decided_at) - julianday(created_at)) * 86400 AS INTEGER)
2759
2759
  END AS latency_seconds
2760
2760
  FROM approval_requests;
2761
- `},95818:()=>{},96084:(a,b,c)=>{"use strict";c.a(a,async(a,d)=>{try{c.d(b,{o:()=>g});var e=c(10021),f=a([e]);async function g(a={},b={}){let c=String(a.text||"").trim();if(!c)throw Error("text is required");let d=await (0,e.D4)({text:c,provider:a.provider,voice:a.voice,model:a.model,format:a.format,save_to_disk:!!a.save_to_disk,project_id:a.project_id,agent_id:b.agent_id??null});return{ok:!0,status:"complete",provider:d.provider,voice:d.voice,model:d.model,mime_type:d.mime_type,extension:d.extension,audio_base64:d.audio_buffer.toString("base64"),duration_estimate_ms:d.duration_estimate_ms,disk_file_id:d.disk_file?.id||null}}e=(f.then?(await f)():f)[0],d()}catch(a){d(a)}})},96307:(a,b,c)=>{"use strict";c.a(a,async(a,d)=>{try{c.d(b,{$k:()=>k,Iu:()=>p,M2:()=>o,Qp:()=>l,bD:()=>n});var e=c(76760),f=c(31421),g=c(73136),h=c(99752),i=c(89998),j=a([h,i]);[h,i]=j.then?(await j)():j,e.resolve(e.dirname((0,g.fileURLToPath)("file:///home/runner/work/madarx-os/madarx-os/lib/agent-engines.js")),"..");let q=process.env.OLLAMA_BASE_URL||"http://127.0.0.1:11434",r=[{id:"anthropic",label:"Anthropic API",description:"Server-native Claude Messages API brain with madarX governed tool_use.",default_model:"claude-sonnet-4-6",mode:"api"},{id:"claude-code",label:"Claude Code CLI",description:"Local Claude Code runner for developer/repo agents using the authenticated CLI.",default_model:"sonnet",mode:"local-cli"},{id:"ollama",label:"Ollama Local LLM",description:"Local or Ollama-hosted models through the Ollama chat API.",default_model:process.env.OLLAMA_MODEL||"",mode:"local-llm"},{id:"hermes",label:"Hermes",description:"Hermes as a meta-agent/router. Available through governed Hermes job tools.",default_model:"",mode:"orchestrator"},{id:"codex",label:"Codex CLI",description:"Local Codex CLI coding runner. Available through approval-gated terminal/tool workflows.",default_model:"",mode:"local-cli"}];function k(a){let b=String(a||"").trim().toLowerCase();return b?["anthropic","anthropic-api","claude-api","api"].includes(b)?"anthropic":["claude-code","claude code","claude_cli","claude-cli"].includes(b)?"claude-code":b.includes("hermes")&&b.includes("claude code")?"anthropic":["ollama","local","local-llm","local llm"].includes(b)?"ollama":["hermes","hermes-agent"].includes(b)?"hermes":["codex","codex-cli","openai-codex"].includes(b)?"codex":b:"claude-code"}function l(a){let b=k(a);return r.find(a=>a.id===b)?.default_model||""}function m(a,b,{cwd:c=process.cwd(),timeoutMs:d=12e4,closeStdin:e=!1,onChunk:g,env:h}={}){return new Promise((i,j)=>{let k=(0,f.spawn)(a,b,{shell:!1,cwd:c,env:h??{...process.env}});e&&k.stdin.end();let l="",m="",n=setTimeout(()=>{k.kill("SIGTERM"),j(Error(`${a} timed out after ${d}ms`))},d);k.stdout.on("data",a=>{let b=a.toString();l+=b,g?.(b)}),k.stderr.on("data",a=>{m+=a.toString()}),k.on("error",a=>{clearTimeout(n),j(a)}),k.on("close",b=>{if(clearTimeout(n),0===b||1===b&&l.trim())return void i(l.trim());j(Error(`${a} exited ${b}: ${m.trim()||l.trim()}`))})})}async function n({model:a,systemPrompt:b,userMessage:c,maxTokens:d=2048}){if(process.env.MADARX_MOCK_OLLAMA_RESPONSE)return process.env.MADARX_MOCK_OLLAMA_RESPONSE;let e=await fetch(`${q}/api/chat`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({model:a||process.env.OLLAMA_MODEL,stream:!1,options:{num_predict:d},messages:[{role:"system",content:b},{role:"user",content:c}]})});if(!e.ok)throw Error(`Ollama chat failed: HTTP ${e.status}`);let f=await e.json(),g=f.message?.content||f.response||"";if(!g.trim())throw Error("Ollama returned no text");return g.trim()}async function o({model:a,systemPrompt:b,userMessage:c,maxTurns:d,allowedTools:e=[],timeoutMs:f,onChunk:g,onAssistantText:h,onToolStart:j,onToolResult:k,cwd:l,addDirs:n=[],agentId:p,agentName:q}={}){if(process.env.MADARX_MOCK_CLAUDE_CODE_RESPONSE)return process.env.MADARX_MOCK_CLAUDE_CODE_RESPONSE;let r=`${b}
2761
+ `},95818:()=>{},96084:(a,b,c)=>{"use strict";c.a(a,async(a,d)=>{try{c.d(b,{o:()=>g});var e=c(10021),f=a([e]);async function g(a={},b={}){let c=String(a.text||"").trim();if(!c)throw Error("text is required");let d=await (0,e.D4)({text:c,provider:a.provider,voice:a.voice,model:a.model,format:a.format,save_to_disk:!!a.save_to_disk,project_id:a.project_id,agent_id:b.agent_id??null});return{ok:!0,status:"complete",provider:d.provider,voice:d.voice,model:d.model,mime_type:d.mime_type,extension:d.extension,audio_base64:d.audio_buffer.toString("base64"),duration_estimate_ms:d.duration_estimate_ms,disk_file_id:d.disk_file?.id||null}}e=(f.then?(await f)():f)[0],d()}catch(a){d(a)}})},96307:(a,b,c)=>{"use strict";c.a(a,async(a,d)=>{try{c.d(b,{$k:()=>m,Iu:()=>s,M2:()=>r,Qp:()=>n,bD:()=>q});var e=c(76760),f=c(73024),g=c(48161),h=c(31421),i=c(73136),j=c(99752),k=c(89998);c(83498);var l=a([j,k]);[j,k]=l.then?(await l)():l,e.resolve(e.dirname((0,i.fileURLToPath)("file:///home/runner/work/madarx-os/madarx-os/lib/agent-engines.js")),"..");let t=process.env.OLLAMA_BASE_URL||"http://127.0.0.1:11434",u=[{id:"anthropic",label:"Anthropic API",description:"Server-native Claude Messages API brain with madarX governed tool_use.",default_model:"claude-sonnet-4-6",mode:"api"},{id:"claude-code",label:"Claude Code CLI",description:"Local Claude Code runner for developer/repo agents using the authenticated CLI.",default_model:"sonnet",mode:"local-cli"},{id:"ollama",label:"Ollama Local LLM",description:"Local or Ollama-hosted models through the Ollama chat API.",default_model:process.env.OLLAMA_MODEL||"",mode:"local-llm"},{id:"hermes",label:"Hermes",description:"Hermes as a meta-agent/router. Available through governed Hermes job tools.",default_model:"",mode:"orchestrator"},{id:"codex",label:"Codex CLI",description:"Local Codex CLI coding runner. Available through approval-gated terminal/tool workflows.",default_model:"",mode:"local-cli"}];function m(a){let b=String(a||"").trim().toLowerCase();return b?["anthropic","anthropic-api","claude-api","api"].includes(b)?"anthropic":["claude-code","claude code","claude_cli","claude-cli"].includes(b)?"claude-code":b.includes("hermes")&&b.includes("claude code")?"anthropic":["ollama","local","local-llm","local llm"].includes(b)?"ollama":["hermes","hermes-agent"].includes(b)?"hermes":["codex","codex-cli","openai-codex"].includes(b)?"codex":b:"claude-code"}function n(a){let b=m(a);return u.find(a=>a.id===b)?.default_model||""}let v=new Map;function o(a){return v.get(a)||function(a){if(v.has(a))return v.get(a);for(let b of[process.env[`MADARX_${a.toUpperCase()}_BIN`],e.join(g.homedir(),".local","bin",a),`/opt/homebrew/bin/${a}`,`/usr/local/bin/${a}`,e.join(g.homedir(),".npm-global","bin",a)].filter(Boolean))try{return f.accessSync(b,f.constants.X_OK),v.set(a,b),b}catch{}return null}(a)||a}function p(a,b,{cwd:c=process.cwd(),timeoutMs:d=12e4,closeStdin:e=!1,onChunk:f,env:g}={}){return new Promise((i,j)=>{let k=(0,h.spawn)(a,b,{shell:!1,cwd:c,env:g??{...process.env}});e&&k.stdin.end();let l="",m="",n=setTimeout(()=>{k.kill("SIGTERM"),j(Error(`${a} timed out after ${d}ms`))},d);k.stdout.on("data",a=>{let b=a.toString();l+=b,f?.(b)}),k.stderr.on("data",a=>{m+=a.toString()}),k.on("error",a=>{clearTimeout(n),j(a)}),k.on("close",b=>{if(clearTimeout(n),0===b||1===b&&l.trim())return void i(l.trim());j(Error(`${a} exited ${b}: ${m.trim()||l.trim()}`))})})}async function q({model:a,systemPrompt:b,userMessage:c,maxTokens:d=2048}){if(process.env.MADARX_MOCK_OLLAMA_RESPONSE)return process.env.MADARX_MOCK_OLLAMA_RESPONSE;let e=await fetch(`${t}/api/chat`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({model:a||process.env.OLLAMA_MODEL,stream:!1,options:{num_predict:d},messages:[{role:"system",content:b},{role:"user",content:c}]})});if(!e.ok)throw Error(`Ollama chat failed: HTTP ${e.status}`);let f=await e.json(),g=f.message?.content||f.response||"";if(!g.trim())throw Error("Ollama returned no text");return g.trim()}async function r({model:a,systemPrompt:b,userMessage:c,maxTurns:d,allowedTools:e=[],timeoutMs:f,onChunk:g,onAssistantText:h,onToolStart:i,onToolResult:j,cwd:l,addDirs:m=[],agentId:n,agentName:q}={}){if(process.env.MADARX_MOCK_CLAUDE_CODE_RESPONSE)return process.env.MADARX_MOCK_CLAUDE_CODE_RESPONSE;let s=`${b}
2762
2762
 
2763
- ${c}`,s=Number(d||process.env.CLAUDE_CODE_MAX_TURNS||30),t=["-p",r,"--max-turns",String(s),"--output-format","stream-json","--verbose","--permission-mode","bypassPermissions","--setting-sources","project,local,user"];for(let a of n)a&&t.push("--add-dir",a);e.length&&t.push("--allowedTools",e.join(",")),a&&"claude-code"!==a&&t.splice(2,0,"--model",a);let u=[],v=[],w="",x="",y=function({agentId:a,agentName:b,onText:c,onToolStart:d,onToolResult:e,onResult:f}){let g="",h=new Map;return function(j){let k;for(g+=j;(k=g.indexOf("\n"))>=0;){let j,l=g.slice(0,k).trim();if(g=g.slice(k+1),!l||"{"!==l[0])continue;try{j=JSON.parse(l)}catch{continue}if(!j||"object"!=typeof j)continue;if("result"===j.type){"string"==typeof j.result&&j.result.trim()&&f?.(j.result.trim());continue}let m=j.message?.content;if(Array.isArray(m)){if("assistant"===j.type){let e=m.some(a=>a?.type==="tool_use"),f=m.filter(a=>a?.type==="text"&&"string"==typeof a.text).map(a=>a.text).join("");for(let g of(f&&c?.(f,{isFinal:!e}),m))g?.type==="tool_use"&&(g.id&&h.set(g.id,g.name||"tool"),d?.({id:g.id,name:g.name||"tool",input:g.input}),a&&(0,i.AC)({type:"agent_tool_start",agent_id:a,agent_name:b||a,tool:g.name||"tool",input_summary:function(a,b){if(!b||"object"!=typeof b)return"";if("Bash"===a)return String(b.command||"").slice(0,120);if("WebSearch"===a)return String(b.query||"").slice(0,120);if("WebFetch"===a)return String(b.url||"").slice(0,120);if("Read"===a||"Glob"===a||"Grep"===a||"LS"===a)return String(b.file_path||b.pattern||b.path||"").slice(0,120);if("Write"===a||"Edit"===a||"MultiEdit"===a)return String(b.file_path||"").slice(0,120);if("TodoWrite"===a)return Array.isArray(b.todos)?`${b.todos.length} todos`:"";try{return JSON.stringify(b).slice(0,120)}catch{return""}}(g.name,g.input)}))}else if("user"===j.type){for(let c of m)if(c?.type==="tool_result"){let d=h.get(c.tool_use_id)||"tool";e?.({tool_use_id:c.tool_use_id,name:d,isError:!!c.is_error}),a&&(0,i.AC)({type:"agent_tool_result",agent_id:a,agent_name:b||a,tool:d,status:c.is_error?"error":"done",isError:!!c.is_error}),h.delete(c.tool_use_id)}}}}}}({agentId:p,agentName:q,onText:(a,b={})=>{u.push(a),b.isFinal?v.push(a):w=a,h?.(u.join("").trim())},onResult:a=>{x=a},onToolStart:j,onToolResult:k});await m("claude",t,{cwd:l,timeoutMs:f??Number(process.env.CLAUDE_CODE_TICK_TIMEOUT_MS||6e5),closeStdin:!0,env:function(){let a={...process.env};return"1"===process.env.MADARX_CLI_USE_API_KEY||(delete a.ANTHROPIC_API_KEY,delete a.ANTHROPIC_AUTH_TOKEN),a}(),onChunk:a=>{y(a),g?.(a)}});let z=v.join("").trim()||w.trim()||u.join("").trim()||x.trim();if(!z)throw Error("Claude Code returned no assistant text");return z}async function p({systemPrompt:a,userMessage:b,onChunk:c}){if(process.env.MADARX_MOCK_CODEX_RESPONSE)return process.env.MADARX_MOCK_CODEX_RESPONSE;let d=a?`${a}
2763
+ ${c}`,t=Number(d||process.env.CLAUDE_CODE_MAX_TURNS||30),u=["-p",s,"--max-turns",String(t),"--output-format","stream-json","--verbose","--permission-mode","bypassPermissions","--setting-sources","project,local,user"];for(let a of m)a&&u.push("--add-dir",a);e.length&&u.push("--allowedTools",e.join(",")),a&&"claude-code"!==a&&u.splice(2,0,"--model",a);let v=[],w=[],x="",y="",z=function({agentId:a,agentName:b,onText:c,onToolStart:d,onToolResult:e,onResult:f}){let g="",h=new Map;return function(i){let j;for(g+=i;(j=g.indexOf("\n"))>=0;){let i,l=g.slice(0,j).trim();if(g=g.slice(j+1),!l||"{"!==l[0])continue;try{i=JSON.parse(l)}catch{continue}if(!i||"object"!=typeof i)continue;if("result"===i.type){"string"==typeof i.result&&i.result.trim()&&f?.(i.result.trim());continue}let m=i.message?.content;if(Array.isArray(m)){if("assistant"===i.type){let e=m.some(a=>a?.type==="tool_use"),f=m.filter(a=>a?.type==="text"&&"string"==typeof a.text).map(a=>a.text).join("");for(let g of(f&&c?.(f,{isFinal:!e}),m))g?.type==="tool_use"&&(g.id&&h.set(g.id,g.name||"tool"),d?.({id:g.id,name:g.name||"tool",input:g.input}),a&&(0,k.AC)({type:"agent_tool_start",agent_id:a,agent_name:b||a,tool:g.name||"tool",input_summary:function(a,b){if(!b||"object"!=typeof b)return"";if("Bash"===a)return String(b.command||"").slice(0,120);if("WebSearch"===a)return String(b.query||"").slice(0,120);if("WebFetch"===a)return String(b.url||"").slice(0,120);if("Read"===a||"Glob"===a||"Grep"===a||"LS"===a)return String(b.file_path||b.pattern||b.path||"").slice(0,120);if("Write"===a||"Edit"===a||"MultiEdit"===a)return String(b.file_path||"").slice(0,120);if("TodoWrite"===a)return Array.isArray(b.todos)?`${b.todos.length} todos`:"";try{return JSON.stringify(b).slice(0,120)}catch{return""}}(g.name,g.input)}))}else if("user"===i.type){for(let c of m)if(c?.type==="tool_result"){let d=h.get(c.tool_use_id)||"tool";e?.({tool_use_id:c.tool_use_id,name:d,isError:!!c.is_error}),a&&(0,k.AC)({type:"agent_tool_result",agent_id:a,agent_name:b||a,tool:d,status:c.is_error?"error":"done",isError:!!c.is_error}),h.delete(c.tool_use_id)}}}}}}({agentId:n,agentName:q,onText:(a,b={})=>{v.push(a),b.isFinal?w.push(a):x=a,h?.(v.join("").trim())},onResult:a=>{y=a},onToolStart:i,onToolResult:j});await p(o("claude"),u,{cwd:l,timeoutMs:f??Number(process.env.CLAUDE_CODE_TICK_TIMEOUT_MS||6e5),closeStdin:!0,env:function(){let a={...process.env};return"1"===process.env.MADARX_CLI_USE_API_KEY||(delete a.ANTHROPIC_API_KEY,delete a.ANTHROPIC_AUTH_TOKEN),a}(),onChunk:a=>{z(a),g?.(a)}});let A=w.join("").trim()||x.trim()||v.join("").trim()||y.trim();if(!A)throw Error("Claude Code returned no assistant text");return A}async function s({systemPrompt:a,userMessage:b,onChunk:c}){if(process.env.MADARX_MOCK_CODEX_RESPONSE)return process.env.MADARX_MOCK_CODEX_RESPONSE;let d=a?`${a}
2764
2764
 
2765
- ${b}`:b;return m("codex",["exec",d],{timeoutMs:Number(process.env.CODEX_TICK_TIMEOUT_MS||18e4),closeStdin:!0,onChunk:c})}d()}catch(a){d(a)}})},96402:(a,b,c)=>{"use strict";c.d(b,{m:()=>p});var d=c(31421);c(26848);var e=c(73024),f=c(76760),g=c(73136);let h="madarx",i=`https://registry.npmjs.org/${h}/latest`,j=f.dirname((0,g.fileURLToPath)("file:///home/runner/work/madarx-os/madarx-os/lib/update-check.js"));function k(){if(process.env.MADARX_VERSION)return process.env.MADARX_VERSION;for(let a of[f.join(j,"..","package.json"),f.join(process.cwd(),"package.json"),f.join(process.cwd(),".next","standalone","package.json")]){let b=function(a){try{let b=JSON.parse(e.readFileSync(a,"utf8"));if(b&&b.name===h&&b.version)return b.version}catch{}return null}(a);if(b)return b}return"0.0.0"}async function l({fetchImpl:a=fetch,timeoutMs:b=4e3}={}){try{let c=await a(i,{signal:AbortSignal.timeout(b)});if(!c.ok)return null;let d=await c.json();return d?.version||null}catch{return null}}async function m({file:a,current:b=k(),fetchImpl:c=fetch,nowIso:d}={}){let g=await l({fetchImpl:c}),h=d||new Date().toISOString();if(!g){let c=a?function(a){try{return JSON.parse(e.readFileSync(a,"utf8"))}catch{return null}}(a):null;return{ts:h,current:b,latest:c?.latest||null,behind:!1,reachable:!1}}let i=function(a,b){let c=a=>String(a).split("-")[0].split(".").slice(0,3).map(a=>parseInt(a,10)||0),d=c(a),e=c(b);for(let a=0;a<Math.max(d.length,e.length);a++){let b=(d[a]||0)-(e[a]||0);if(0!==b)return b>0?1:-1}return 0}(g,b)>0,j={ts:h,current:b,latest:g,behind:i,reachable:!0};return a&&(e.mkdirSync(f.dirname(a),{recursive:!0}),e.writeFileSync(a,JSON.stringify(j,null,2))),j}function n(a){return new Promise(b=>{let c="",e=(0,d.spawn)("npm",["install","-g",a,"--prefer-online","--no-audit","--no-fund"],{stdio:["ignore","pipe","pipe"]});e.stdout.on("data",a=>{c+=a,process.stdout.write(a)}),e.stderr.on("data",a=>{c+=a,process.stderr.write(a)}),e.on("error",a=>b({ok:!1,code:-1,output:String(a.message)})),e.on("exit",a=>b({ok:0===a,code:a,output:c}))})}async function o({runner:a=n,to:b="latest",initiatedBy:d="cli"}={}){let e=k(),f=`${h}@${b}`,g=await a(f);try{let{appendAudit:a}=await Promise.resolve().then(c.bind(c,42382));a({type:"system.self_update",summary:`madarx update ${e} → ${b} (${g.ok?"ok":"failed"})`,status:g.ok?"ok":"failed",meta:{from:e,to:b,code:g.code,initiated_by:d}})}catch{}return{ok:g.ok,from:e,to:b,code:g.code,output:g.output}}async function p(a={}){let b=await m({});if(!b.reachable)return{ok:!1,from:k(),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 o({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})`}}c(48161)},96615:(a,b,c)=>{"use strict";c.a(a,async(a,d)=>{try{c.d(b,{zc:()=>j});var e=c(84104),f=c(60079),g=c(47344),h=c(77886),i=a([e]);e=(i.then?(await i)():i)[0];let k={"vendor-onboarding":f,"contract-review":g,"support-escalation":h},l=[{slug:"vendor-onboarding",title:"Vendor Onboarding",category:"procurement",tags:["workflow","procurement","starter"],risk_summary:"Intake → automated risk review → buyer sign-off → onboarding pack. All write actions are gated by human_approval."},{slug:"contract-review",title:"Contract Review",category:"legal",tags:["workflow","legal","starter"],risk_summary:"Intake → automated clause review → counsel approval (high-risk gate) → review report. Drafts only; no signature step."},{slug:"support-escalation",title:"Support Escalation",category:"support",tags:["workflow","support","starter"],risk_summary:"Intake → automated triage → supervisor sign-off → resolution pack. Customer-visible copy never sent without human approval."}].map(a=>{let b=k[a.slug];return{...a,description:b.description,author:"madarx",source_kind:"builtin",source_url:null,version:"1.0",spec:b}});function j(a){try{for(let b of l)!function(a,b){let c=`workflow:${b.slug}`,d=JSON.stringify({summary:b.description,source_spec_json:b.spec}),f=JSON.stringify(b.tags||[]),g=a.prepare("SELECT id FROM marketplace_items WHERE kind='workflow' AND slug=?").get(b.slug),h=[b.title,b.description,b.category,b.author,b.source_kind,b.source_url,b.version,d,b.risk_summary,f];if(g)return a.prepare("UPDATE marketplace_items SET title=?, description=?, category=?, author=?, source_kind=?, source_url=?, version=?, manifest_json=?, risk_summary=?, tags=? WHERE id=?").run(...h,c);a.prepare("INSERT INTO marketplace_items (id, kind, slug, title, description, category, author, source_kind, source_url, version, manifest_json, risk_summary, tags, created_at) VALUES (?, 'workflow', ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)").run(c,b.slug,...h,(0,e.kF)()),a.prepare("INSERT OR IGNORE INTO marketplace_installations (item_id, installed) VALUES (?, 0)").run(c)}(a,b)}catch(a){console.warn("[marketplace-workflows] seed failed:",a?.message||a)}}l.map(a=>a.slug),d()}catch(a){d(a)}})},96648:(a,b,c)=>{"use strict";c.d(b,{X:()=>e});let d=Object.create(null);for(let a of["00_historic","01_arcgis_data","02_assay_labs","03_cad_files","04_official_database","05_drill_campaign","06_exploration_geos","07_geophysics","08_backup_bd","09_petrography","10_presentations","11_general_pictures","12_safety","13_reports","14_inegi_data","15_sgm_data","16_claims_properties","17_minesight","18_exported_maps","19_survey","20_geotechnical","21_general_files","22_qa_qc","uncategorized"]){let b=a.match(/^(\d{2})_/);b&&(d[b[1]]=a)}function e(a){let b=String(a||"").split(/[/\\]/).filter(Boolean),c=null;for(let a of b){let b=a.match(/^(\d{2})[-_ ]/i);if(!b)continue;let e=b[1];Object.prototype.hasOwnProperty.call(d,e)&&(c=d[e])}return c??"uncategorized"}},96822:(a,b,c)=>{"use strict";Object.defineProperty(b,"e",{enumerable:!0,get:function(){return k}});let d=c(73443),e=c(43709),f=c(29294),g=c(63033),h=c(56557),i=0;async function j(a,b,c,e,f,g,i){await b.set(c,{kind:h.CachedRouteKind.FETCH,data:{headers:{},body:JSON.stringify(a),status:200,url:""},revalidate:"number"!=typeof f?d.CACHE_ONE_YEAR:f},{fetchCache:!0,tags:e,fetchIdx:g,fetchUrl:i})}function k(a,b,c={}){if(0===c.revalidate)throw Object.defineProperty(Error(`Invariant revalidate: 0 can not be passed to unstable_cache(), must be "false" or "> 0" ${a.toString()}`),"__NEXT_ERROR_CODE",{value:"E57",enumerable:!1,configurable:!0});let d=c.tags?(0,e.validateTags)(c.tags,`unstable_cache ${a.toString()}`):[];(0,e.validateRevalidate)(c.revalidate,`unstable_cache ${a.name||a.toString()}`);let l=`${a.toString()}-${Array.isArray(b)&&b.join(",")}`;return async(...b)=>{let e=f.workAsyncStorage.getStore(),k=g.workUnitAsyncStorage.getStore(),m=(null==e?void 0:e.incrementalCache)||globalThis.__incrementalCache;if(!m)throw Object.defineProperty(Error(`Invariant: incrementalCache missing in unstable_cache ${a.toString()}`),"__NEXT_ERROR_CODE",{value:"E469",enumerable:!1,configurable:!0});let n=k?(0,g.getCacheSignal)(k):null;n&&n.beginRead();try{let f=e&&k?function(a,b){switch(b.type){case"request":let c=b.url.pathname,d=new URLSearchParams(b.url.search),e=[...d.keys()].sort((a,b)=>a.localeCompare(b)).map(a=>`${a}=${d.get(a)}`).join("&");return`${c}${e.length?"?":""}${e}`;case"prerender":case"prerender-client":case"prerender-runtime":case"prerender-ppr":case"prerender-legacy":case"cache":case"private-cache":case"unstable-cache":return a.route;default:return b}}(e,k):"",n=`${l}-${JSON.stringify(b)}`,o=await m.generateCacheKey(n),p=`unstable_cache ${f} ${a.name?` ${a.name}`:o}`,q=(e?e.nextFetchId:i)??1,r=null==k?void 0:k.implicitTags,s={type:"unstable-cache",phase:"render",implicitTags:r,draftMode:k&&e&&(0,g.getDraftModeProviderForCacheScope)(e,k)};if(e){e.nextFetchId=q+1;let f=!1;if(k)switch(k.type){case"cache":case"private-cache":case"prerender":case"prerender-runtime":case"prerender-ppr":case"prerender-legacy":"number"==typeof c.revalidate&&(k.revalidate<c.revalidate||(k.revalidate=c.revalidate));let i=k.tags;if(null===i)k.tags=d.slice();else for(let a of d)i.includes(a)||i.push(a);break;case"unstable-cache":f=!0}if(!f&&"force-no-store"!==e.fetchCache&&!e.isOnDemandRevalidate&&!m.isOnDemandRevalidate&&!e.isDraftMode){let f=await m.get(o,{kind:h.IncrementalCacheKind.FETCH,revalidate:c.revalidate,tags:d,softTags:null==r?void 0:r.tags,fetchIdx:q,fetchUrl:p});if(f&&f.value)if(f.value.kind!==h.CachedRouteKind.FETCH)console.error(`Invariant invalid cacheEntry returned for ${n}`);else{let h=void 0!==f.value.data.body?JSON.parse(f.value.data.body):void 0;if(f.isStale){if(e.pendingRevalidates||(e.pendingRevalidates={}),!e.pendingRevalidates[n]){let f=g.workUnitAsyncStorage.run(s,a,...b).then(async a=>(await j(a,m,o,d,c.revalidate,q,p),a)).catch(a=>(console.error(`revalidating cache with key: ${n}`,a),h));e.isRevalidate&&f.catch(()=>{}),e.pendingRevalidates[n]=f}if(e.isRevalidate)return e.pendingRevalidates[n]}return h}}let l=await g.workUnitAsyncStorage.run(s,a,...b);return e.isDraftMode||(e.pendingRevalidates||(e.pendingRevalidates={}),e.pendingRevalidates[n]=j(l,m,o,d,c.revalidate,q,p)),l}{if(i+=1,!m.isOnDemandRevalidate){let a=await m.get(o,{kind:h.IncrementalCacheKind.FETCH,revalidate:c.revalidate,tags:d,fetchIdx:q,fetchUrl:p,softTags:null==r?void 0:r.tags});if(a&&a.value){if(a.value.kind!==h.CachedRouteKind.FETCH)console.error(`Invariant invalid cacheEntry returned for ${n}`);else if(!a.isStale)return void 0!==a.value.data.body?JSON.parse(a.value.data.body):void 0}}let e=await g.workUnitAsyncStorage.run(s,a,...b);return await j(e,m,o,d,c.revalidate,q,p),e}}finally{n&&n.endRead()}}}},96865:(a,b,c)=>{"use strict";Object.defineProperty(b,"__esModule",{value:!0}),!function(a,b){for(var c in b)Object.defineProperty(a,c,{enumerable:!0,get:b[c]})}(b,{NextRequestAdapter:function(){return l},ResponseAborted:function(){return i},ResponseAbortedName:function(){return h},createAbortController:function(){return j},signalFromNodeResponse:function(){return k}});let d=c(90475),e=c(66568),f=c(47390),g=c(97610),h="ResponseAborted";class i extends Error{constructor(...a){super(...a),this.name=h}}function j(a){let b=new AbortController;return a.once("close",()=>{a.writableFinished||b.abort(new i)}),b}function k(a){let{errored:b,destroyed:c}=a;if(b||c)return AbortSignal.abort(b??new i);let{signal:d}=j(a);return d}class l{static fromBaseNextRequest(a,b){if((0,g.isNodeNextRequest)(a))return l.fromNodeNextRequest(a,b);throw Object.defineProperty(Error("Invariant: Unsupported NextRequest type"),"__NEXT_ERROR_CODE",{value:"E345",enumerable:!1,configurable:!0})}static fromNodeNextRequest(a,b){let c,g=null;if("GET"!==a.method&&"HEAD"!==a.method&&a.body&&(g=a.body),a.url.startsWith("http"))c=new URL(a.url);else{let b=(0,d.getRequestMeta)(a,"initURL");c=b&&b.startsWith("http")?new URL(a.url,b):new URL(a.url,"http://n")}return new f.NextRequest(c,{method:a.method,headers:(0,e.fromNodeOutgoingHttpHeaders)(a.headers),duplex:"half",signal:b,...b.aborted?{}:{body:g}})}static fromWebNextRequest(a){let b=null;return"GET"!==a.method&&"HEAD"!==a.method&&(b=a.body),new f.NextRequest(a.url,{method:a.method,headers:(0,e.fromNodeOutgoingHttpHeaders)(a.headers),duplex:"half",signal:a.request.signal,...a.request.signal.aborted?{}:{body:b}})}}},97357:(a,b)=>{"use strict";Object.defineProperty(b,"__esModule",{value:!0}),Object.defineProperty(b,"isPostpone",{enumerable:!0,get:function(){return d}});let c=Symbol.for("react.postpone");function d(a){return"object"==typeof a&&null!==a&&a.$$typeof===c}},97610:(a,b)=>{"use strict";Object.defineProperty(b,"__esModule",{value:!0}),!function(a,b){for(var c in b)Object.defineProperty(a,c,{enumerable:!0,get:b[c]})}(b,{isNodeNextRequest:function(){return e},isNodeNextResponse:function(){return f},isWebNextRequest:function(){return c},isWebNextResponse:function(){return d}});let c=a=>!1,d=a=>!1,e=a=>!0,f=a=>!0},97857:(a,b,c)=>{"use strict";Object.defineProperty(b,"__esModule",{value:!0}),!function(a,b){for(var c in b)Object.defineProperty(a,c,{enumerable:!0,get:b[c]})}(b,{isAbortError:function(){return i},pipeToNodeResponse:function(){return j}});let d=c(96865),e=c(42474),f=c(36821),g=c(45441),h=c(12690);function i(a){return(null==a?void 0:a.name)==="AbortError"||(null==a?void 0:a.name)===d.ResponseAbortedName}async function j(a,b,c){try{let{errored:i,destroyed:j}=b;if(i||j)return;let k=(0,d.createAbortController)(b),l=function(a,b){let c=!1,d=new e.DetachedPromise;function i(){d.resolve()}a.on("drain",i),a.once("close",()=>{a.off("drain",i),d.resolve()});let j=new e.DetachedPromise;return a.once("finish",()=>{j.resolve()}),new WritableStream({write:async b=>{if(!c){if(c=!0,"performance"in globalThis&&process.env.NEXT_OTEL_PERFORMANCE_PREFIX){let a=(0,h.getClientComponentLoaderMetrics)();a&&performance.measure(`${process.env.NEXT_OTEL_PERFORMANCE_PREFIX}:next-client-component-loading`,{start:a.clientComponentLoadStart,end:a.clientComponentLoadStart+a.clientComponentLoadTimes})}a.flushHeaders(),(0,f.getTracer)().trace(g.NextNodeServerSpan.startResponse,{spanName:"start response"},()=>void 0)}try{let c=a.write(b);"flush"in a&&"function"==typeof a.flush&&a.flush(),c||(await d.promise,d=new e.DetachedPromise)}catch(b){throw a.end(),Object.defineProperty(Error("failed to write chunk to response",{cause:b}),"__NEXT_ERROR_CODE",{value:"E321",enumerable:!1,configurable:!0})}},abort:b=>{a.writableFinished||a.destroy(b)},close:async()=>{if(b&&await b,!a.writableFinished)return a.end(),j.promise}})}(b,c);await a.pipeTo(l,{signal:k.signal})}catch(a){if(i(a))return;throw Object.defineProperty(Error("failed to pipe response",{cause:a}),"__NEXT_ERROR_CODE",{value:"E180",enumerable:!1,configurable:!0})}}},98450:(a,b,c)=>{"use strict";c.a(a,async(a,d)=>{try{c.d(b,{I:()=>n,m:()=>m});var e=c(73024),f=c(76760),g=c(84104),h=c(79336),i=c(38985),j=c(37937),k=c(83498),l=a([g,h,i,j]);async function m(a,b={}){let c,{name:d,slug:l,asset_stage:n="exploration",commodity:o=null,deposit_type:p=null,portfolio_entry_id:q=null,description:r=null}=a||{};if(!d||!String(d).trim())return{status:"error",error:"name_required"};let s=(0,g.Lf)(),t=(0,g.kF)(),u=(0,h.DJ)(l||d);if(s.prepare("SELECT id FROM mines_projects WHERE slug = ? LIMIT 1").get(u))return{status:"error",error:"slug_in_use",slug:u};if(q){let a=s.prepare("SELECT id, project_id FROM mines_portfolio_entries WHERE id = ? LIMIT 1").get(q);if(!a)return{status:"error",error:"entry_not_found",portfolio_entry_id:q};if(a.project_id)return{status:"error",error:"entry_already_linked",portfolio_entry_id:q}}try{c=(0,h.gA)({name:String(d).trim(),slug:u,description:r||"Mine project: "+String(d).trim(),color:"#2A5C45"})}catch(a){if(a?.code==="PROJECT_SLUG_EXISTS")return{status:"error",error:"slug_in_use",slug:u};throw a}let v=c.id,w=c.slug,x=(0,g.Si)("mp"),y=q||null;s.prepare("BEGIN").run();try{if(s.prepare(`
2765
+ ${b}`:b;return p(o("codex"),["exec",d],{timeoutMs:Number(process.env.CODEX_TICK_TIMEOUT_MS||18e4),closeStdin:!0,onChunk:c})}d()}catch(a){d(a)}})},96402:(a,b,c)=>{"use strict";c.d(b,{m:()=>p});var d=c(31421);c(26848);var e=c(73024),f=c(76760),g=c(73136);let h="madarx",i=`https://registry.npmjs.org/${h}/latest`,j=f.dirname((0,g.fileURLToPath)("file:///home/runner/work/madarx-os/madarx-os/lib/update-check.js"));function k(){if(process.env.MADARX_VERSION)return process.env.MADARX_VERSION;for(let a of[f.join(j,"..","package.json"),f.join(process.cwd(),"package.json"),f.join(process.cwd(),".next","standalone","package.json")]){let b=function(a){try{let b=JSON.parse(e.readFileSync(a,"utf8"));if(b&&b.name===h&&b.version)return b.version}catch{}return null}(a);if(b)return b}return"0.0.0"}async function l({fetchImpl:a=fetch,timeoutMs:b=4e3}={}){try{let c=await a(i,{signal:AbortSignal.timeout(b)});if(!c.ok)return null;let d=await c.json();return d?.version||null}catch{return null}}async function m({file:a,current:b=k(),fetchImpl:c=fetch,nowIso:d}={}){let g=await l({fetchImpl:c}),h=d||new Date().toISOString();if(!g){let c=a?function(a){try{return JSON.parse(e.readFileSync(a,"utf8"))}catch{return null}}(a):null;return{ts:h,current:b,latest:c?.latest||null,behind:!1,reachable:!1}}let i=function(a,b){let c=a=>String(a).split("-")[0].split(".").slice(0,3).map(a=>parseInt(a,10)||0),d=c(a),e=c(b);for(let a=0;a<Math.max(d.length,e.length);a++){let b=(d[a]||0)-(e[a]||0);if(0!==b)return b>0?1:-1}return 0}(g,b)>0,j={ts:h,current:b,latest:g,behind:i,reachable:!0};return a&&(e.mkdirSync(f.dirname(a),{recursive:!0}),e.writeFileSync(a,JSON.stringify(j,null,2))),j}function n(a){return new Promise(b=>{let c="",e=(0,d.spawn)("npm",["install","-g",a,"--prefer-online","--no-audit","--no-fund"],{stdio:["ignore","pipe","pipe"]});e.stdout.on("data",a=>{c+=a,process.stdout.write(a)}),e.stderr.on("data",a=>{c+=a,process.stderr.write(a)}),e.on("error",a=>b({ok:!1,code:-1,output:String(a.message)})),e.on("exit",a=>b({ok:0===a,code:a,output:c}))})}async function o({runner:a=n,to:b="latest",initiatedBy:d="cli"}={}){let e=k(),f=`${h}@${b}`,g=await a(f);try{let{appendAudit:a}=await Promise.resolve().then(c.bind(c,42382));a({type:"system.self_update",summary:`madarx update ${e} → ${b} (${g.ok?"ok":"failed"})`,status:g.ok?"ok":"failed",meta:{from:e,to:b,code:g.code,initiated_by:d}})}catch{}return{ok:g.ok,from:e,to:b,code:g.code,output:g.output}}async function p(a={}){let b=await m({});if(!b.reachable)return{ok:!1,from:k(),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 o({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})`}}c(48161)},96615:(a,b,c)=>{"use strict";c.a(a,async(a,d)=>{try{c.d(b,{zc:()=>j});var e=c(84104),f=c(60079),g=c(47344),h=c(77886),i=a([e]);e=(i.then?(await i)():i)[0];let k={"vendor-onboarding":f,"contract-review":g,"support-escalation":h},l=[{slug:"vendor-onboarding",title:"Vendor Onboarding",category:"procurement",tags:["workflow","procurement","starter"],risk_summary:"Intake → automated risk review → buyer sign-off → onboarding pack. All write actions are gated by human_approval."},{slug:"contract-review",title:"Contract Review",category:"legal",tags:["workflow","legal","starter"],risk_summary:"Intake → automated clause review → counsel approval (high-risk gate) → review report. Drafts only; no signature step."},{slug:"support-escalation",title:"Support Escalation",category:"support",tags:["workflow","support","starter"],risk_summary:"Intake → automated triage → supervisor sign-off → resolution pack. Customer-visible copy never sent without human approval."}].map(a=>{let b=k[a.slug];return{...a,description:b.description,author:"madarx",source_kind:"builtin",source_url:null,version:"1.0",spec:b}});function j(a){try{for(let b of l)!function(a,b){let c=`workflow:${b.slug}`,d=JSON.stringify({summary:b.description,source_spec_json:b.spec}),f=JSON.stringify(b.tags||[]),g=a.prepare("SELECT id FROM marketplace_items WHERE kind='workflow' AND slug=?").get(b.slug),h=[b.title,b.description,b.category,b.author,b.source_kind,b.source_url,b.version,d,b.risk_summary,f];if(g)return a.prepare("UPDATE marketplace_items SET title=?, description=?, category=?, author=?, source_kind=?, source_url=?, version=?, manifest_json=?, risk_summary=?, tags=? WHERE id=?").run(...h,c);a.prepare("INSERT INTO marketplace_items (id, kind, slug, title, description, category, author, source_kind, source_url, version, manifest_json, risk_summary, tags, created_at) VALUES (?, 'workflow', ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)").run(c,b.slug,...h,(0,e.kF)()),a.prepare("INSERT OR IGNORE INTO marketplace_installations (item_id, installed) VALUES (?, 0)").run(c)}(a,b)}catch(a){console.warn("[marketplace-workflows] seed failed:",a?.message||a)}}l.map(a=>a.slug),d()}catch(a){d(a)}})},96648:(a,b,c)=>{"use strict";c.d(b,{X:()=>e});let d=Object.create(null);for(let a of["00_historic","01_arcgis_data","02_assay_labs","03_cad_files","04_official_database","05_drill_campaign","06_exploration_geos","07_geophysics","08_backup_bd","09_petrography","10_presentations","11_general_pictures","12_safety","13_reports","14_inegi_data","15_sgm_data","16_claims_properties","17_minesight","18_exported_maps","19_survey","20_geotechnical","21_general_files","22_qa_qc","uncategorized"]){let b=a.match(/^(\d{2})_/);b&&(d[b[1]]=a)}function e(a){let b=String(a||"").split(/[/\\]/).filter(Boolean),c=null;for(let a of b){let b=a.match(/^(\d{2})[-_ ]/i);if(!b)continue;let e=b[1];Object.prototype.hasOwnProperty.call(d,e)&&(c=d[e])}return c??"uncategorized"}},96822:(a,b,c)=>{"use strict";Object.defineProperty(b,"e",{enumerable:!0,get:function(){return k}});let d=c(73443),e=c(43709),f=c(29294),g=c(63033),h=c(56557),i=0;async function j(a,b,c,e,f,g,i){await b.set(c,{kind:h.CachedRouteKind.FETCH,data:{headers:{},body:JSON.stringify(a),status:200,url:""},revalidate:"number"!=typeof f?d.CACHE_ONE_YEAR:f},{fetchCache:!0,tags:e,fetchIdx:g,fetchUrl:i})}function k(a,b,c={}){if(0===c.revalidate)throw Object.defineProperty(Error(`Invariant revalidate: 0 can not be passed to unstable_cache(), must be "false" or "> 0" ${a.toString()}`),"__NEXT_ERROR_CODE",{value:"E57",enumerable:!1,configurable:!0});let d=c.tags?(0,e.validateTags)(c.tags,`unstable_cache ${a.toString()}`):[];(0,e.validateRevalidate)(c.revalidate,`unstable_cache ${a.name||a.toString()}`);let l=`${a.toString()}-${Array.isArray(b)&&b.join(",")}`;return async(...b)=>{let e=f.workAsyncStorage.getStore(),k=g.workUnitAsyncStorage.getStore(),m=(null==e?void 0:e.incrementalCache)||globalThis.__incrementalCache;if(!m)throw Object.defineProperty(Error(`Invariant: incrementalCache missing in unstable_cache ${a.toString()}`),"__NEXT_ERROR_CODE",{value:"E469",enumerable:!1,configurable:!0});let n=k?(0,g.getCacheSignal)(k):null;n&&n.beginRead();try{let f=e&&k?function(a,b){switch(b.type){case"request":let c=b.url.pathname,d=new URLSearchParams(b.url.search),e=[...d.keys()].sort((a,b)=>a.localeCompare(b)).map(a=>`${a}=${d.get(a)}`).join("&");return`${c}${e.length?"?":""}${e}`;case"prerender":case"prerender-client":case"prerender-runtime":case"prerender-ppr":case"prerender-legacy":case"cache":case"private-cache":case"unstable-cache":return a.route;default:return b}}(e,k):"",n=`${l}-${JSON.stringify(b)}`,o=await m.generateCacheKey(n),p=`unstable_cache ${f} ${a.name?` ${a.name}`:o}`,q=(e?e.nextFetchId:i)??1,r=null==k?void 0:k.implicitTags,s={type:"unstable-cache",phase:"render",implicitTags:r,draftMode:k&&e&&(0,g.getDraftModeProviderForCacheScope)(e,k)};if(e){e.nextFetchId=q+1;let f=!1;if(k)switch(k.type){case"cache":case"private-cache":case"prerender":case"prerender-runtime":case"prerender-ppr":case"prerender-legacy":"number"==typeof c.revalidate&&(k.revalidate<c.revalidate||(k.revalidate=c.revalidate));let i=k.tags;if(null===i)k.tags=d.slice();else for(let a of d)i.includes(a)||i.push(a);break;case"unstable-cache":f=!0}if(!f&&"force-no-store"!==e.fetchCache&&!e.isOnDemandRevalidate&&!m.isOnDemandRevalidate&&!e.isDraftMode){let f=await m.get(o,{kind:h.IncrementalCacheKind.FETCH,revalidate:c.revalidate,tags:d,softTags:null==r?void 0:r.tags,fetchIdx:q,fetchUrl:p});if(f&&f.value)if(f.value.kind!==h.CachedRouteKind.FETCH)console.error(`Invariant invalid cacheEntry returned for ${n}`);else{let h=void 0!==f.value.data.body?JSON.parse(f.value.data.body):void 0;if(f.isStale){if(e.pendingRevalidates||(e.pendingRevalidates={}),!e.pendingRevalidates[n]){let f=g.workUnitAsyncStorage.run(s,a,...b).then(async a=>(await j(a,m,o,d,c.revalidate,q,p),a)).catch(a=>(console.error(`revalidating cache with key: ${n}`,a),h));e.isRevalidate&&f.catch(()=>{}),e.pendingRevalidates[n]=f}if(e.isRevalidate)return e.pendingRevalidates[n]}return h}}let l=await g.workUnitAsyncStorage.run(s,a,...b);return e.isDraftMode||(e.pendingRevalidates||(e.pendingRevalidates={}),e.pendingRevalidates[n]=j(l,m,o,d,c.revalidate,q,p)),l}{if(i+=1,!m.isOnDemandRevalidate){let a=await m.get(o,{kind:h.IncrementalCacheKind.FETCH,revalidate:c.revalidate,tags:d,fetchIdx:q,fetchUrl:p,softTags:null==r?void 0:r.tags});if(a&&a.value){if(a.value.kind!==h.CachedRouteKind.FETCH)console.error(`Invariant invalid cacheEntry returned for ${n}`);else if(!a.isStale)return void 0!==a.value.data.body?JSON.parse(a.value.data.body):void 0}}let e=await g.workUnitAsyncStorage.run(s,a,...b);return await j(e,m,o,d,c.revalidate,q,p),e}}finally{n&&n.endRead()}}}},96830:(a,b,c)=>{"use strict";c.a(a,async(a,d)=>{try{c.r(b),c.d(b,{"404c8804c1148aee36dfb0fb9269e772184aae34de":()=>e.Dv,"40bd236cf4b7d72418a71d22f3677546a1dcb9a913":()=>e.Tg,"40eef191530afb2a910c9f1a66cefee4b4975bb762":()=>e.gL});var e=c(11812),f=a([e]);e=(f.then?(await f)():f)[0],d()}catch(a){d(a)}})},96865:(a,b,c)=>{"use strict";Object.defineProperty(b,"__esModule",{value:!0}),!function(a,b){for(var c in b)Object.defineProperty(a,c,{enumerable:!0,get:b[c]})}(b,{NextRequestAdapter:function(){return l},ResponseAborted:function(){return i},ResponseAbortedName:function(){return h},createAbortController:function(){return j},signalFromNodeResponse:function(){return k}});let d=c(90475),e=c(66568),f=c(47390),g=c(97610),h="ResponseAborted";class i extends Error{constructor(...a){super(...a),this.name=h}}function j(a){let b=new AbortController;return a.once("close",()=>{a.writableFinished||b.abort(new i)}),b}function k(a){let{errored:b,destroyed:c}=a;if(b||c)return AbortSignal.abort(b??new i);let{signal:d}=j(a);return d}class l{static fromBaseNextRequest(a,b){if((0,g.isNodeNextRequest)(a))return l.fromNodeNextRequest(a,b);throw Object.defineProperty(Error("Invariant: Unsupported NextRequest type"),"__NEXT_ERROR_CODE",{value:"E345",enumerable:!1,configurable:!0})}static fromNodeNextRequest(a,b){let c,g=null;if("GET"!==a.method&&"HEAD"!==a.method&&a.body&&(g=a.body),a.url.startsWith("http"))c=new URL(a.url);else{let b=(0,d.getRequestMeta)(a,"initURL");c=b&&b.startsWith("http")?new URL(a.url,b):new URL(a.url,"http://n")}return new f.NextRequest(c,{method:a.method,headers:(0,e.fromNodeOutgoingHttpHeaders)(a.headers),duplex:"half",signal:b,...b.aborted?{}:{body:g}})}static fromWebNextRequest(a){let b=null;return"GET"!==a.method&&"HEAD"!==a.method&&(b=a.body),new f.NextRequest(a.url,{method:a.method,headers:(0,e.fromNodeOutgoingHttpHeaders)(a.headers),duplex:"half",signal:a.request.signal,...a.request.signal.aborted?{}:{body:b}})}}},97357:(a,b)=>{"use strict";Object.defineProperty(b,"__esModule",{value:!0}),Object.defineProperty(b,"isPostpone",{enumerable:!0,get:function(){return d}});let c=Symbol.for("react.postpone");function d(a){return"object"==typeof a&&null!==a&&a.$$typeof===c}},97610:(a,b)=>{"use strict";Object.defineProperty(b,"__esModule",{value:!0}),!function(a,b){for(var c in b)Object.defineProperty(a,c,{enumerable:!0,get:b[c]})}(b,{isNodeNextRequest:function(){return e},isNodeNextResponse:function(){return f},isWebNextRequest:function(){return c},isWebNextResponse:function(){return d}});let c=a=>!1,d=a=>!1,e=a=>!0,f=a=>!0},97857:(a,b,c)=>{"use strict";Object.defineProperty(b,"__esModule",{value:!0}),!function(a,b){for(var c in b)Object.defineProperty(a,c,{enumerable:!0,get:b[c]})}(b,{isAbortError:function(){return i},pipeToNodeResponse:function(){return j}});let d=c(96865),e=c(42474),f=c(36821),g=c(45441),h=c(12690);function i(a){return(null==a?void 0:a.name)==="AbortError"||(null==a?void 0:a.name)===d.ResponseAbortedName}async function j(a,b,c){try{let{errored:i,destroyed:j}=b;if(i||j)return;let k=(0,d.createAbortController)(b),l=function(a,b){let c=!1,d=new e.DetachedPromise;function i(){d.resolve()}a.on("drain",i),a.once("close",()=>{a.off("drain",i),d.resolve()});let j=new e.DetachedPromise;return a.once("finish",()=>{j.resolve()}),new WritableStream({write:async b=>{if(!c){if(c=!0,"performance"in globalThis&&process.env.NEXT_OTEL_PERFORMANCE_PREFIX){let a=(0,h.getClientComponentLoaderMetrics)();a&&performance.measure(`${process.env.NEXT_OTEL_PERFORMANCE_PREFIX}:next-client-component-loading`,{start:a.clientComponentLoadStart,end:a.clientComponentLoadStart+a.clientComponentLoadTimes})}a.flushHeaders(),(0,f.getTracer)().trace(g.NextNodeServerSpan.startResponse,{spanName:"start response"},()=>void 0)}try{let c=a.write(b);"flush"in a&&"function"==typeof a.flush&&a.flush(),c||(await d.promise,d=new e.DetachedPromise)}catch(b){throw a.end(),Object.defineProperty(Error("failed to write chunk to response",{cause:b}),"__NEXT_ERROR_CODE",{value:"E321",enumerable:!1,configurable:!0})}},abort:b=>{a.writableFinished||a.destroy(b)},close:async()=>{if(b&&await b,!a.writableFinished)return a.end(),j.promise}})}(b,c);await a.pipeTo(l,{signal:k.signal})}catch(a){if(i(a))return;throw Object.defineProperty(Error("failed to pipe response",{cause:a}),"__NEXT_ERROR_CODE",{value:"E180",enumerable:!1,configurable:!0})}}},98450:(a,b,c)=>{"use strict";c.a(a,async(a,d)=>{try{c.d(b,{I:()=>n,m:()=>m});var e=c(73024),f=c(76760),g=c(84104),h=c(79336),i=c(38985),j=c(37937),k=c(83498),l=a([g,h,i,j]);async function m(a,b={}){let c,{name:d,slug:l,asset_stage:n="exploration",commodity:o=null,deposit_type:p=null,portfolio_entry_id:q=null,description:r=null}=a||{};if(!d||!String(d).trim())return{status:"error",error:"name_required"};let s=(0,g.Lf)(),t=(0,g.kF)(),u=(0,h.DJ)(l||d);if(s.prepare("SELECT id FROM mines_projects WHERE slug = ? LIMIT 1").get(u))return{status:"error",error:"slug_in_use",slug:u};if(q){let a=s.prepare("SELECT id, project_id FROM mines_portfolio_entries WHERE id = ? LIMIT 1").get(q);if(!a)return{status:"error",error:"entry_not_found",portfolio_entry_id:q};if(a.project_id)return{status:"error",error:"entry_already_linked",portfolio_entry_id:q}}try{c=(0,h.gA)({name:String(d).trim(),slug:u,description:r||"Mine project: "+String(d).trim(),color:"#2A5C45"})}catch(a){if(a?.code==="PROJECT_SLUG_EXISTS")return{status:"error",error:"slug_in_use",slug:u};throw a}let v=c.id,w=c.slug,x=(0,g.Si)("mp"),y=q||null;s.prepare("BEGIN").run();try{if(s.prepare(`
2766
2766
  INSERT INTO mines_projects
2767
2767
  (id, os_project_id, name, slug, asset_stage, commodity, deposit_type,
2768
2768
  country, state_province, has_technical_report, data_completeness, created_at, updated_at)