leedab 0.6.1 → 0.7.1

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 (594) hide show
  1. package/README.md +23 -13
  2. package/apps/console/.next/standalone/.next/BUILD_ID +1 -1
  3. package/apps/console/.next/standalone/.next/app-build-manifest.json +206 -171
  4. package/apps/console/.next/standalone/.next/app-path-routes-manifest.json +56 -51
  5. package/apps/console/.next/standalone/.next/build-manifest.json +2 -2
  6. package/apps/console/.next/standalone/.next/prerender-manifest.json +3 -3
  7. package/apps/console/.next/standalone/.next/server/app/_not-found/page.js +1 -1
  8. package/apps/console/.next/standalone/.next/server/app/_not-found/page_client-reference-manifest.js +1 -1
  9. package/apps/console/.next/standalone/.next/server/app/_not-found.html +1 -1
  10. package/apps/console/.next/standalone/.next/server/app/_not-found.rsc +3 -3
  11. package/apps/console/.next/standalone/.next/server/app/api/agent/route.js +2 -2
  12. package/apps/console/.next/standalone/.next/server/app/api/agent/route_client-reference-manifest.js +1 -1
  13. package/apps/console/.next/standalone/.next/server/app/api/approvals/route.js +1 -1
  14. package/apps/console/.next/standalone/.next/server/app/api/approvals/route_client-reference-manifest.js +1 -1
  15. package/apps/console/.next/standalone/.next/server/app/api/approvals/stream/route.js +1 -1
  16. package/apps/console/.next/standalone/.next/server/app/api/approvals/stream/route_client-reference-manifest.js +1 -1
  17. package/apps/console/.next/standalone/.next/server/app/api/automation/workflow-blueprint/route_client-reference-manifest.js +1 -1
  18. package/apps/console/.next/standalone/.next/server/app/api/backend/endpoint-spec/route_client-reference-manifest.js +1 -1
  19. package/apps/console/.next/standalone/.next/server/app/api/bootstrap-admin-token/route_client-reference-manifest.js +1 -1
  20. package/apps/console/.next/standalone/.next/server/app/api/brand/brand-audit/route_client-reference-manifest.js +1 -1
  21. package/apps/console/.next/standalone/.next/server/app/api/campaigns/campaign-brief/route_client-reference-manifest.js +1 -1
  22. package/apps/console/.next/standalone/.next/server/app/api/champion/confidence/route.js +1 -3
  23. package/apps/console/.next/standalone/.next/server/app/api/champion/confidence/route.js.nft.json +1 -1
  24. package/apps/console/.next/standalone/.next/server/app/api/champion/confidence/route_client-reference-manifest.js +1 -1
  25. package/apps/console/.next/standalone/.next/server/app/api/champion/customer/route.js +1 -3
  26. package/apps/console/.next/standalone/.next/server/app/api/champion/customer/route.js.nft.json +1 -1
  27. package/apps/console/.next/standalone/.next/server/app/api/champion/customer/route_client-reference-manifest.js +1 -1
  28. package/apps/console/.next/standalone/.next/server/app/api/champion/dispatches/route.js +1 -3
  29. package/apps/console/.next/standalone/.next/server/app/api/champion/dispatches/route.js.nft.json +1 -1
  30. package/apps/console/.next/standalone/.next/server/app/api/champion/dispatches/route_client-reference-manifest.js +1 -1
  31. package/apps/console/.next/standalone/.next/server/app/api/champion/engagement/route.js +1 -3
  32. package/apps/console/.next/standalone/.next/server/app/api/champion/engagement/route.js.nft.json +1 -1
  33. package/apps/console/.next/standalone/.next/server/app/api/champion/engagement/route_client-reference-manifest.js +1 -1
  34. package/apps/console/.next/standalone/.next/server/app/api/champion/escalate/route_client-reference-manifest.js +1 -1
  35. package/apps/console/.next/standalone/.next/server/app/api/champion/profile/route.js +1 -1
  36. package/apps/console/.next/standalone/.next/server/app/api/champion/profile/route_client-reference-manifest.js +1 -1
  37. package/apps/console/.next/standalone/.next/server/app/api/champion/screenshare/route_client-reference-manifest.js +1 -1
  38. package/apps/console/.next/standalone/.next/server/app/api/champion/track-question/route_client-reference-manifest.js +1 -1
  39. package/apps/console/.next/standalone/.next/server/app/api/champion/use-case-wiki/route_client-reference-manifest.js +1 -1
  40. package/apps/console/.next/standalone/.next/server/app/api/chat/route.js +2 -2
  41. package/apps/console/.next/standalone/.next/server/app/api/chat/route_client-reference-manifest.js +1 -1
  42. package/apps/console/.next/standalone/.next/server/app/api/compliance/risk-register-seed/route_client-reference-manifest.js +1 -1
  43. package/apps/console/.next/standalone/.next/server/app/api/computer-use/[id]/route_client-reference-manifest.js +1 -1
  44. package/apps/console/.next/standalone/.next/server/app/api/computer-use/route_client-reference-manifest.js +1 -1
  45. package/apps/console/.next/standalone/.next/server/app/api/concierge/morning-brief/route.js +1 -1
  46. package/apps/console/.next/standalone/.next/server/app/api/concierge/morning-brief/route_client-reference-manifest.js +1 -1
  47. package/apps/console/.next/standalone/.next/server/app/api/contacts/route.js +1 -1
  48. package/apps/console/.next/standalone/.next/server/app/api/contacts/route_client-reference-manifest.js +1 -1
  49. package/apps/console/.next/standalone/.next/server/app/api/content/seo-brief/route_client-reference-manifest.js +1 -1
  50. package/apps/console/.next/standalone/.next/server/app/api/conversations/route.js +2 -2
  51. package/apps/console/.next/standalone/.next/server/app/api/conversations/route_client-reference-manifest.js +1 -1
  52. package/apps/console/.next/standalone/.next/server/app/api/coo/route.js +1 -1
  53. package/apps/console/.next/standalone/.next/server/app/api/coo/route_client-reference-manifest.js +1 -1
  54. package/apps/console/.next/standalone/.next/server/app/api/cx/escalation-triage/route_client-reference-manifest.js +1 -1
  55. package/apps/console/.next/standalone/.next/server/app/api/cx/health-score/route.js +1 -1
  56. package/apps/console/.next/standalone/.next/server/app/api/cx/health-score/route_client-reference-manifest.js +1 -1
  57. package/apps/console/.next/standalone/.next/server/app/api/data/cohort-brief/route_client-reference-manifest.js +1 -1
  58. package/apps/console/.next/standalone/.next/server/app/api/delivery/qbr-brief/route.js +1 -1
  59. package/apps/console/.next/standalone/.next/server/app/api/delivery/qbr-brief/route_client-reference-manifest.js +1 -1
  60. package/apps/console/.next/standalone/.next/server/app/api/delivery/weekly-brief/route.js +1 -1
  61. package/apps/console/.next/standalone/.next/server/app/api/delivery/weekly-brief/route_client-reference-manifest.js +1 -1
  62. package/apps/console/.next/standalone/.next/server/app/api/dev/invalidate-cache/route.js +1 -1
  63. package/apps/console/.next/standalone/.next/server/app/api/dev/invalidate-cache/route_client-reference-manifest.js +1 -1
  64. package/apps/console/.next/standalone/.next/server/app/api/devops/runbook/route_client-reference-manifest.js +1 -1
  65. package/apps/console/.next/standalone/.next/server/app/api/email/sequence-brief/route_client-reference-manifest.js +1 -1
  66. package/apps/console/.next/standalone/.next/server/app/api/engineering/adr-draft/route_client-reference-manifest.js +1 -1
  67. package/apps/console/.next/standalone/.next/server/app/api/finance/runway-snapshot/route.js +4 -2
  68. package/apps/console/.next/standalone/.next/server/app/api/finance/runway-snapshot/route.js.nft.json +1 -1
  69. package/apps/console/.next/standalone/.next/server/app/api/finance/runway-snapshot/route_client-reference-manifest.js +1 -1
  70. package/apps/console/.next/standalone/.next/server/app/api/frontend/component-spec/route_client-reference-manifest.js +1 -1
  71. package/apps/console/.next/standalone/.next/server/app/api/health/route_client-reference-manifest.js +1 -1
  72. package/apps/console/.next/standalone/.next/server/app/api/implementation/brief/route_client-reference-manifest.js +1 -1
  73. package/apps/console/.next/standalone/.next/server/app/api/implementation/scaffold-migration-script/route_client-reference-manifest.js +1 -1
  74. package/apps/console/.next/standalone/.next/server/app/api/implementation/scaffold-n8n-workflow/route_client-reference-manifest.js +1 -1
  75. package/apps/console/.next/standalone/.next/server/app/api/implementation/scaffold-skill-override/route_client-reference-manifest.js +1 -1
  76. package/apps/console/.next/standalone/.next/server/app/api/inbox/route.js +1 -1
  77. package/apps/console/.next/standalone/.next/server/app/api/inbox/route_client-reference-manifest.js +1 -1
  78. package/apps/console/.next/standalone/.next/server/app/api/inbox/stream/route.js +1 -1
  79. package/apps/console/.next/standalone/.next/server/app/api/inbox/stream/route_client-reference-manifest.js +1 -1
  80. package/apps/console/.next/standalone/.next/server/app/api/investor/kpi-tracker/route.js +4 -2
  81. package/apps/console/.next/standalone/.next/server/app/api/investor/kpi-tracker/route.js.nft.json +1 -1
  82. package/apps/console/.next/standalone/.next/server/app/api/investor/kpi-tracker/route_client-reference-manifest.js +1 -1
  83. package/apps/console/.next/standalone/.next/server/app/api/leedab/channels/status/route_client-reference-manifest.js +1 -1
  84. package/apps/console/.next/standalone/.next/server/app/api/leedab/channels/telegram/connect/route_client-reference-manifest.js +1 -1
  85. package/apps/console/.next/standalone/.next/server/app/api/leedab/channels/whatsapp/connect/route_client-reference-manifest.js +1 -1
  86. package/apps/console/.next/standalone/.next/server/app/api/leedab/gtm/leads/[id]/route_client-reference-manifest.js +1 -1
  87. package/apps/console/.next/standalone/.next/server/app/api/leedab/gtm/leads/[id]/status/route_client-reference-manifest.js +1 -1
  88. package/apps/console/.next/standalone/.next/server/app/api/leedab/gtm/templates/[name]/route_client-reference-manifest.js +1 -1
  89. package/apps/console/.next/standalone/.next/server/app/api/leedab/license/route_client-reference-manifest.js +1 -1
  90. package/apps/console/.next/standalone/.next/server/app/api/leedab/models/route.js +1 -0
  91. package/apps/console/.next/standalone/.next/server/app/api/leedab/models/route.js.nft.json +1 -0
  92. package/apps/console/.next/standalone/.next/server/app/api/leedab/models/route_client-reference-manifest.js +1 -0
  93. package/apps/console/.next/standalone/.next/server/app/api/leedab/providers/route.js +1 -1
  94. package/apps/console/.next/standalone/.next/server/app/api/leedab/providers/route_client-reference-manifest.js +1 -1
  95. package/apps/console/.next/standalone/.next/server/app/api/leedab/sessions/[id]/route_client-reference-manifest.js +1 -1
  96. package/apps/console/.next/standalone/.next/server/app/api/leedab/sessions/route_client-reference-manifest.js +1 -1
  97. package/apps/console/.next/standalone/.next/server/app/api/leedab/team/[id]/route_client-reference-manifest.js +1 -1
  98. package/apps/console/.next/standalone/.next/server/app/api/leedab/team/route_client-reference-manifest.js +1 -1
  99. package/apps/console/.next/standalone/.next/server/app/api/leedab/vault/route_client-reference-manifest.js +1 -1
  100. package/apps/console/.next/standalone/.next/server/app/api/leedab/workflows/route_client-reference-manifest.js +1 -1
  101. package/apps/console/.next/standalone/.next/server/app/api/legal/clause-template/route_client-reference-manifest.js +1 -1
  102. package/apps/console/.next/standalone/.next/server/app/api/manifest/agents/custom/draft/route.js +20 -0
  103. package/apps/console/.next/standalone/.next/server/app/api/manifest/agents/custom/draft/route.js.nft.json +1 -0
  104. package/apps/console/.next/standalone/.next/server/app/api/manifest/agents/custom/draft/route_client-reference-manifest.js +1 -0
  105. package/apps/console/.next/standalone/.next/server/app/api/manifest/agents/custom/route.js +3 -0
  106. package/apps/console/.next/standalone/.next/server/app/api/manifest/agents/custom/route.js.nft.json +1 -0
  107. package/apps/console/.next/standalone/.next/server/app/api/manifest/agents/custom/route_client-reference-manifest.js +1 -0
  108. package/apps/console/.next/standalone/.next/server/app/api/manifest/agents/route.js +3 -0
  109. package/apps/console/.next/standalone/.next/server/app/api/manifest/agents/route.js.nft.json +1 -0
  110. package/apps/console/.next/standalone/.next/server/app/api/manifest/agents/route_client-reference-manifest.js +1 -0
  111. package/apps/console/.next/standalone/.next/server/app/api/marketing/cadence-planner/route_client-reference-manifest.js +1 -1
  112. package/apps/console/.next/standalone/.next/server/app/api/marketing/competitive-snapshot/route_client-reference-manifest.js +1 -1
  113. package/apps/console/.next/standalone/.next/server/app/api/marketplace/catalogue/route.js +3 -0
  114. package/apps/console/.next/standalone/.next/server/app/api/marketplace/catalogue/route.js.nft.json +1 -0
  115. package/apps/console/.next/standalone/.next/server/app/api/marketplace/catalogue/route_client-reference-manifest.js +1 -0
  116. package/apps/console/.next/standalone/.next/server/app/api/onboarding/engagement-plan/route_client-reference-manifest.js +1 -1
  117. package/apps/console/.next/standalone/.next/server/app/api/onboarding/kickoff-brief/route_client-reference-manifest.js +1 -1
  118. package/apps/console/.next/standalone/.next/server/app/api/openclaw/status/route_client-reference-manifest.js +1 -1
  119. package/apps/console/.next/standalone/.next/server/app/api/ops/dispatch-brief/route_client-reference-manifest.js +1 -1
  120. package/apps/console/.next/standalone/.next/server/app/api/pack/route.js +1 -1
  121. package/apps/console/.next/standalone/.next/server/app/api/pack/route_client-reference-manifest.js +1 -1
  122. package/apps/console/.next/standalone/.next/server/app/api/people/job-brief/route_client-reference-manifest.js +1 -1
  123. package/apps/console/.next/standalone/.next/server/app/api/preferences/route_client-reference-manifest.js +1 -1
  124. package/apps/console/.next/standalone/.next/server/app/api/procurement/po-brief/route_client-reference-manifest.js +1 -1
  125. package/apps/console/.next/standalone/.next/server/app/api/product/prd-draft/route_client-reference-manifest.js +1 -1
  126. package/apps/console/.next/standalone/.next/server/app/api/research/prospect-intel/route_client-reference-manifest.js +1 -1
  127. package/apps/console/.next/standalone/.next/server/app/api/research/search/route_client-reference-manifest.js +1 -1
  128. package/apps/console/.next/standalone/.next/server/app/api/routing/route.js +1 -1
  129. package/apps/console/.next/standalone/.next/server/app/api/routing/route_client-reference-manifest.js +1 -1
  130. package/apps/console/.next/standalone/.next/server/app/api/runs/route.js +1 -1
  131. package/apps/console/.next/standalone/.next/server/app/api/runs/route.js.nft.json +1 -1
  132. package/apps/console/.next/standalone/.next/server/app/api/runs/route_client-reference-manifest.js +1 -1
  133. package/apps/console/.next/standalone/.next/server/app/api/sales/pipeline-summary/route.js +4 -2
  134. package/apps/console/.next/standalone/.next/server/app/api/sales/pipeline-summary/route.js.nft.json +1 -1
  135. package/apps/console/.next/standalone/.next/server/app/api/sales/pipeline-summary/route_client-reference-manifest.js +1 -1
  136. package/apps/console/.next/standalone/.next/server/app/api/sales/prospect-brief/route_client-reference-manifest.js +1 -1
  137. package/apps/console/.next/standalone/.next/server/app/api/solutions/build/route.js +2 -2
  138. package/apps/console/.next/standalone/.next/server/app/api/solutions/build/route_client-reference-manifest.js +1 -1
  139. package/apps/console/.next/standalone/.next/server/app/api/solutions/quickstart-regenerate/route.js +1 -1
  140. package/apps/console/.next/standalone/.next/server/app/api/solutions/quickstart-regenerate/route_client-reference-manifest.js +1 -1
  141. package/apps/console/.next/standalone/.next/server/app/api/solutions/refine/route_client-reference-manifest.js +1 -1
  142. package/apps/console/.next/standalone/.next/server/app/api/strategy/market-pulse/route_client-reference-manifest.js +1 -1
  143. package/apps/console/.next/standalone/.next/server/app/api/telegram/[customerId]/route.js +4 -4
  144. package/apps/console/.next/standalone/.next/server/app/api/telegram/[customerId]/route_client-reference-manifest.js +1 -1
  145. package/apps/console/.next/standalone/.next/server/app/api/templates/regenerate/route.js +4 -2
  146. package/apps/console/.next/standalone/.next/server/app/api/templates/regenerate/route.js.nft.json +1 -1
  147. package/apps/console/.next/standalone/.next/server/app/api/templates/regenerate/route_client-reference-manifest.js +1 -1
  148. package/apps/console/.next/standalone/.next/server/app/api/templates/route.js +1 -1
  149. package/apps/console/.next/standalone/.next/server/app/api/templates/route.js.nft.json +1 -1
  150. package/apps/console/.next/standalone/.next/server/app/api/templates/route_client-reference-manifest.js +1 -1
  151. package/apps/console/.next/standalone/.next/server/app/api/uploads/[id]/route_client-reference-manifest.js +1 -1
  152. package/apps/console/.next/standalone/.next/server/app/api/uploads/route_client-reference-manifest.js +1 -1
  153. package/apps/console/.next/standalone/.next/server/app/api/usage/route.js +2 -2
  154. package/apps/console/.next/standalone/.next/server/app/api/usage/route_client-reference-manifest.js +1 -1
  155. package/apps/console/.next/standalone/.next/server/app/api/video/video-script/route_client-reference-manifest.js +1 -1
  156. package/apps/console/.next/standalone/.next/server/app/api/webhooks/workflow/[id]/route.js +2 -2
  157. package/apps/console/.next/standalone/.next/server/app/api/webhooks/workflow/[id]/route_client-reference-manifest.js +1 -1
  158. package/apps/console/.next/standalone/.next/server/app/api/workflows/[id]/history/[runId]/route_client-reference-manifest.js +1 -1
  159. package/apps/console/.next/standalone/.next/server/app/api/workflows/[id]/history/route_client-reference-manifest.js +1 -1
  160. package/apps/console/.next/standalone/.next/server/app/api/workflows/[id]/route.js +2 -2
  161. package/apps/console/.next/standalone/.next/server/app/api/workflows/[id]/route_client-reference-manifest.js +1 -1
  162. package/apps/console/.next/standalone/.next/server/app/api/workflows/[id]/run/route.js +1 -1
  163. package/apps/console/.next/standalone/.next/server/app/api/workflows/[id]/run/route_client-reference-manifest.js +1 -1
  164. package/apps/console/.next/standalone/.next/server/app/api/workflows/route_client-reference-manifest.js +1 -1
  165. package/apps/console/.next/standalone/.next/server/app/gtm/page.js +2 -2
  166. package/apps/console/.next/standalone/.next/server/app/gtm/page_client-reference-manifest.js +1 -1
  167. package/apps/console/.next/standalone/.next/server/app/index.html +1 -1
  168. package/apps/console/.next/standalone/.next/server/app/index.rsc +4 -4
  169. package/apps/console/.next/standalone/.next/server/app/page.js +2 -2
  170. package/apps/console/.next/standalone/.next/server/app/page_client-reference-manifest.js +1 -1
  171. package/apps/console/.next/standalone/.next/server/app-paths-manifest.json +56 -51
  172. package/apps/console/.next/standalone/.next/server/chunks/1558.js +9 -9
  173. package/apps/console/.next/standalone/.next/server/chunks/{5670.js → 2576.js} +1 -3
  174. package/apps/console/.next/standalone/.next/server/chunks/381.js +19 -0
  175. package/apps/console/.next/standalone/.next/server/chunks/4768.js +5 -5
  176. package/apps/console/.next/standalone/.next/server/chunks/6255.js +1 -1
  177. package/apps/console/.next/standalone/.next/server/chunks/7087.js +1 -1
  178. package/apps/console/.next/standalone/.next/server/chunks/897.js +1 -1
  179. package/apps/console/.next/standalone/.next/server/functions-config-manifest.json +40 -35
  180. package/apps/console/.next/standalone/.next/server/instrumentation.js +1 -1
  181. package/apps/console/.next/standalone/.next/server/pages/404.html +1 -1
  182. package/apps/console/.next/standalone/.next/server/pages/500.html +1 -1
  183. package/apps/console/.next/standalone/.next/server/pages-manifest.json +1 -1
  184. package/apps/console/.next/standalone/.next/server/server-reference-manifest.json +1 -1
  185. package/apps/console/.next/standalone/.next/static/B4g4e91OJP29sEqgIs76V/_buildManifest.js +1 -0
  186. package/apps/console/.next/standalone/.next/static/chunks/7973-072db1a3857a8fe9.js +1 -0
  187. package/apps/console/.next/standalone/.next/static/chunks/app/api/agent/route-2d8162b887d31980.js +1 -0
  188. package/apps/console/.next/standalone/.next/static/chunks/app/api/approvals/route-2d8162b887d31980.js +1 -0
  189. package/apps/console/.next/standalone/.next/static/chunks/app/api/approvals/stream/route-2d8162b887d31980.js +1 -0
  190. package/apps/console/.next/standalone/.next/static/chunks/app/api/automation/workflow-blueprint/route-2d8162b887d31980.js +1 -0
  191. package/apps/console/.next/standalone/.next/static/chunks/app/api/backend/endpoint-spec/route-2d8162b887d31980.js +1 -0
  192. package/apps/console/.next/standalone/.next/static/chunks/app/api/bootstrap-admin-token/route-2d8162b887d31980.js +1 -0
  193. package/apps/console/.next/standalone/.next/static/chunks/app/api/brand/brand-audit/route-2d8162b887d31980.js +1 -0
  194. package/apps/console/.next/standalone/.next/static/chunks/app/api/campaigns/campaign-brief/route-2d8162b887d31980.js +1 -0
  195. package/apps/console/.next/standalone/.next/static/chunks/app/api/champion/confidence/route-2d8162b887d31980.js +1 -0
  196. package/apps/console/.next/standalone/.next/static/chunks/app/api/champion/customer/route-2d8162b887d31980.js +1 -0
  197. package/apps/console/.next/standalone/.next/static/chunks/app/api/champion/dispatches/route-2d8162b887d31980.js +1 -0
  198. package/apps/console/.next/standalone/.next/static/chunks/app/api/champion/engagement/route-2d8162b887d31980.js +1 -0
  199. package/apps/console/.next/standalone/.next/static/chunks/app/api/champion/escalate/route-2d8162b887d31980.js +1 -0
  200. package/apps/console/.next/standalone/.next/static/chunks/app/api/champion/profile/route-2d8162b887d31980.js +1 -0
  201. package/apps/console/.next/standalone/.next/static/chunks/app/api/champion/screenshare/route-2d8162b887d31980.js +1 -0
  202. package/apps/console/.next/standalone/.next/static/chunks/app/api/champion/track-question/route-2d8162b887d31980.js +1 -0
  203. package/apps/console/.next/standalone/.next/static/chunks/app/api/champion/use-case-wiki/route-2d8162b887d31980.js +1 -0
  204. package/apps/console/.next/standalone/.next/static/chunks/app/api/chat/route-2d8162b887d31980.js +1 -0
  205. package/apps/console/.next/standalone/.next/static/chunks/app/api/compliance/risk-register-seed/route-2d8162b887d31980.js +1 -0
  206. package/apps/console/.next/standalone/.next/static/chunks/app/api/computer-use/[id]/route-2d8162b887d31980.js +1 -0
  207. package/apps/console/.next/standalone/.next/static/chunks/app/api/computer-use/route-2d8162b887d31980.js +1 -0
  208. package/apps/console/.next/standalone/.next/static/chunks/app/api/concierge/morning-brief/route-2d8162b887d31980.js +1 -0
  209. package/apps/console/.next/standalone/.next/static/chunks/app/api/contacts/route-2d8162b887d31980.js +1 -0
  210. package/apps/console/.next/standalone/.next/static/chunks/app/api/content/seo-brief/route-2d8162b887d31980.js +1 -0
  211. package/apps/console/.next/standalone/.next/static/chunks/app/api/conversations/route-2d8162b887d31980.js +1 -0
  212. package/apps/console/.next/standalone/.next/static/chunks/app/api/coo/route-2d8162b887d31980.js +1 -0
  213. package/apps/console/.next/standalone/.next/static/chunks/app/api/cx/escalation-triage/route-2d8162b887d31980.js +1 -0
  214. package/apps/console/.next/standalone/.next/static/chunks/app/api/cx/health-score/route-2d8162b887d31980.js +1 -0
  215. package/apps/console/.next/standalone/.next/static/chunks/app/api/data/cohort-brief/route-2d8162b887d31980.js +1 -0
  216. package/apps/console/.next/standalone/.next/static/chunks/app/api/delivery/qbr-brief/route-2d8162b887d31980.js +1 -0
  217. package/apps/console/.next/standalone/.next/static/chunks/app/api/delivery/weekly-brief/route-2d8162b887d31980.js +1 -0
  218. package/apps/console/.next/standalone/.next/static/chunks/app/api/dev/invalidate-cache/route-2d8162b887d31980.js +1 -0
  219. package/apps/console/.next/standalone/.next/static/chunks/app/api/devops/runbook/route-2d8162b887d31980.js +1 -0
  220. package/apps/console/.next/standalone/.next/static/chunks/app/api/email/sequence-brief/route-2d8162b887d31980.js +1 -0
  221. package/apps/console/.next/standalone/.next/static/chunks/app/api/engineering/adr-draft/route-2d8162b887d31980.js +1 -0
  222. package/apps/console/.next/standalone/.next/static/chunks/app/api/finance/runway-snapshot/route-2d8162b887d31980.js +1 -0
  223. package/apps/console/.next/standalone/.next/static/chunks/app/api/frontend/component-spec/route-2d8162b887d31980.js +1 -0
  224. package/apps/console/.next/standalone/.next/static/chunks/app/api/health/route-2d8162b887d31980.js +1 -0
  225. package/apps/console/.next/standalone/.next/static/chunks/app/api/implementation/brief/route-2d8162b887d31980.js +1 -0
  226. package/apps/console/.next/standalone/.next/static/chunks/app/api/implementation/scaffold-migration-script/route-2d8162b887d31980.js +1 -0
  227. package/apps/console/.next/standalone/.next/static/chunks/app/api/implementation/scaffold-n8n-workflow/route-2d8162b887d31980.js +1 -0
  228. package/apps/console/.next/standalone/.next/static/chunks/app/api/implementation/scaffold-skill-override/route-2d8162b887d31980.js +1 -0
  229. package/apps/console/.next/standalone/.next/static/chunks/app/api/inbox/route-2d8162b887d31980.js +1 -0
  230. package/apps/console/.next/standalone/.next/static/chunks/app/api/inbox/stream/route-2d8162b887d31980.js +1 -0
  231. package/apps/console/.next/standalone/.next/static/chunks/app/api/investor/kpi-tracker/route-2d8162b887d31980.js +1 -0
  232. package/apps/console/.next/standalone/.next/static/chunks/app/api/leedab/channels/status/route-2d8162b887d31980.js +1 -0
  233. package/apps/console/.next/standalone/.next/static/chunks/app/api/leedab/channels/telegram/connect/route-2d8162b887d31980.js +1 -0
  234. package/apps/console/.next/standalone/.next/static/chunks/app/api/leedab/channels/whatsapp/connect/route-2d8162b887d31980.js +1 -0
  235. package/apps/console/.next/standalone/.next/static/chunks/app/api/leedab/gtm/leads/[id]/route-2d8162b887d31980.js +1 -0
  236. package/apps/console/.next/standalone/.next/static/chunks/app/api/leedab/gtm/leads/[id]/status/route-2d8162b887d31980.js +1 -0
  237. package/apps/console/.next/standalone/.next/static/chunks/app/api/leedab/gtm/templates/[name]/route-2d8162b887d31980.js +1 -0
  238. package/apps/console/.next/standalone/.next/static/chunks/app/api/leedab/license/route-2d8162b887d31980.js +1 -0
  239. package/apps/console/.next/standalone/.next/static/chunks/app/api/leedab/models/route-2d8162b887d31980.js +1 -0
  240. package/apps/console/.next/standalone/.next/static/chunks/app/api/leedab/providers/route-2d8162b887d31980.js +1 -0
  241. package/apps/console/.next/standalone/.next/static/chunks/app/api/leedab/sessions/[id]/route-2d8162b887d31980.js +1 -0
  242. package/apps/console/.next/standalone/.next/static/chunks/app/api/leedab/sessions/route-2d8162b887d31980.js +1 -0
  243. package/apps/console/.next/standalone/.next/static/chunks/app/api/leedab/team/[id]/route-2d8162b887d31980.js +1 -0
  244. package/apps/console/.next/standalone/.next/static/chunks/app/api/leedab/team/route-2d8162b887d31980.js +1 -0
  245. package/apps/console/.next/standalone/.next/static/chunks/app/api/leedab/vault/route-2d8162b887d31980.js +1 -0
  246. package/apps/console/.next/standalone/.next/static/chunks/app/api/leedab/workflows/route-2d8162b887d31980.js +1 -0
  247. package/apps/console/.next/standalone/.next/static/chunks/app/api/legal/clause-template/route-2d8162b887d31980.js +1 -0
  248. package/apps/console/.next/standalone/.next/static/chunks/app/api/manifest/agents/custom/draft/route-2d8162b887d31980.js +1 -0
  249. package/apps/console/.next/standalone/.next/static/chunks/app/api/manifest/agents/custom/route-2d8162b887d31980.js +1 -0
  250. package/apps/console/.next/standalone/.next/static/chunks/app/api/manifest/agents/route-2d8162b887d31980.js +1 -0
  251. package/apps/console/.next/standalone/.next/static/chunks/app/api/marketing/cadence-planner/route-2d8162b887d31980.js +1 -0
  252. package/apps/console/.next/standalone/.next/static/chunks/app/api/marketing/competitive-snapshot/route-2d8162b887d31980.js +1 -0
  253. package/apps/console/.next/standalone/.next/static/chunks/app/api/marketplace/catalogue/route-2d8162b887d31980.js +1 -0
  254. package/apps/console/.next/standalone/.next/static/chunks/app/api/onboarding/engagement-plan/route-2d8162b887d31980.js +1 -0
  255. package/apps/console/.next/standalone/.next/static/chunks/app/api/onboarding/kickoff-brief/route-2d8162b887d31980.js +1 -0
  256. package/apps/console/.next/standalone/.next/static/chunks/app/api/openclaw/status/route-2d8162b887d31980.js +1 -0
  257. package/apps/console/.next/standalone/.next/static/chunks/app/api/ops/dispatch-brief/route-2d8162b887d31980.js +1 -0
  258. package/apps/console/.next/standalone/.next/static/chunks/app/api/pack/route-2d8162b887d31980.js +1 -0
  259. package/apps/console/.next/standalone/.next/static/chunks/app/api/people/job-brief/route-2d8162b887d31980.js +1 -0
  260. package/apps/console/.next/standalone/.next/static/chunks/app/api/preferences/route-2d8162b887d31980.js +1 -0
  261. package/apps/console/.next/standalone/.next/static/chunks/app/api/procurement/po-brief/route-2d8162b887d31980.js +1 -0
  262. package/apps/console/.next/standalone/.next/static/chunks/app/api/product/prd-draft/route-2d8162b887d31980.js +1 -0
  263. package/apps/console/.next/standalone/.next/static/chunks/app/api/research/prospect-intel/route-2d8162b887d31980.js +1 -0
  264. package/apps/console/.next/standalone/.next/static/chunks/app/api/research/search/route-2d8162b887d31980.js +1 -0
  265. package/apps/console/.next/standalone/.next/static/chunks/app/api/routing/route-2d8162b887d31980.js +1 -0
  266. package/apps/console/.next/standalone/.next/static/chunks/app/api/runs/route-2d8162b887d31980.js +1 -0
  267. package/apps/console/.next/standalone/.next/static/chunks/app/api/sales/pipeline-summary/route-2d8162b887d31980.js +1 -0
  268. package/apps/console/.next/standalone/.next/static/chunks/app/api/sales/prospect-brief/route-2d8162b887d31980.js +1 -0
  269. package/apps/console/.next/standalone/.next/static/chunks/app/api/solutions/build/route-2d8162b887d31980.js +1 -0
  270. package/apps/console/.next/standalone/.next/static/chunks/app/api/solutions/quickstart-regenerate/route-2d8162b887d31980.js +1 -0
  271. package/apps/console/.next/standalone/.next/static/chunks/app/api/solutions/refine/route-2d8162b887d31980.js +1 -0
  272. package/apps/console/.next/standalone/.next/static/chunks/app/api/strategy/market-pulse/route-2d8162b887d31980.js +1 -0
  273. package/apps/console/.next/standalone/.next/static/chunks/app/api/telegram/[customerId]/route-2d8162b887d31980.js +1 -0
  274. package/apps/console/.next/standalone/.next/static/chunks/app/api/templates/regenerate/route-2d8162b887d31980.js +1 -0
  275. package/apps/console/.next/standalone/.next/static/chunks/app/api/templates/route-2d8162b887d31980.js +1 -0
  276. package/apps/console/.next/standalone/.next/static/chunks/app/api/uploads/[id]/route-2d8162b887d31980.js +1 -0
  277. package/apps/console/.next/standalone/.next/static/chunks/app/api/uploads/route-2d8162b887d31980.js +1 -0
  278. package/apps/console/.next/standalone/.next/static/chunks/app/api/usage/route-2d8162b887d31980.js +1 -0
  279. package/apps/console/.next/standalone/.next/static/chunks/app/api/video/video-script/route-2d8162b887d31980.js +1 -0
  280. package/apps/console/.next/standalone/.next/static/chunks/app/api/webhooks/workflow/[id]/route-2d8162b887d31980.js +1 -0
  281. package/apps/console/.next/standalone/.next/static/chunks/app/api/workflows/[id]/history/[runId]/route-2d8162b887d31980.js +1 -0
  282. package/apps/console/.next/standalone/.next/static/chunks/app/api/workflows/[id]/history/route-2d8162b887d31980.js +1 -0
  283. package/apps/console/.next/standalone/.next/static/chunks/app/api/workflows/[id]/route-2d8162b887d31980.js +1 -0
  284. package/apps/console/.next/standalone/.next/static/chunks/app/api/workflows/[id]/run/route-2d8162b887d31980.js +1 -0
  285. package/apps/console/.next/standalone/.next/static/chunks/app/api/workflows/route-2d8162b887d31980.js +1 -0
  286. package/apps/console/.next/standalone/.next/static/chunks/app/page-bdfdbf7b657f4722.js +1 -0
  287. package/apps/console/.next/standalone/.next/static/css/{4bdbd0680d42c54d.css → b2a91ecca3bf1487.css} +1 -1
  288. package/apps/console/.next/standalone/package.json +1 -0
  289. package/apps/console/.next/static/B4g4e91OJP29sEqgIs76V/_buildManifest.js +1 -0
  290. package/apps/console/.next/static/chunks/7973-072db1a3857a8fe9.js +1 -0
  291. package/apps/console/.next/static/chunks/app/api/agent/route-2d8162b887d31980.js +1 -0
  292. package/apps/console/.next/static/chunks/app/api/approvals/route-2d8162b887d31980.js +1 -0
  293. package/apps/console/.next/static/chunks/app/api/approvals/stream/route-2d8162b887d31980.js +1 -0
  294. package/apps/console/.next/static/chunks/app/api/automation/workflow-blueprint/route-2d8162b887d31980.js +1 -0
  295. package/apps/console/.next/static/chunks/app/api/backend/endpoint-spec/route-2d8162b887d31980.js +1 -0
  296. package/apps/console/.next/static/chunks/app/api/bootstrap-admin-token/route-2d8162b887d31980.js +1 -0
  297. package/apps/console/.next/static/chunks/app/api/brand/brand-audit/route-2d8162b887d31980.js +1 -0
  298. package/apps/console/.next/static/chunks/app/api/campaigns/campaign-brief/route-2d8162b887d31980.js +1 -0
  299. package/apps/console/.next/static/chunks/app/api/champion/confidence/route-2d8162b887d31980.js +1 -0
  300. package/apps/console/.next/static/chunks/app/api/champion/customer/route-2d8162b887d31980.js +1 -0
  301. package/apps/console/.next/static/chunks/app/api/champion/dispatches/route-2d8162b887d31980.js +1 -0
  302. package/apps/console/.next/static/chunks/app/api/champion/engagement/route-2d8162b887d31980.js +1 -0
  303. package/apps/console/.next/static/chunks/app/api/champion/escalate/route-2d8162b887d31980.js +1 -0
  304. package/apps/console/.next/static/chunks/app/api/champion/profile/route-2d8162b887d31980.js +1 -0
  305. package/apps/console/.next/static/chunks/app/api/champion/screenshare/route-2d8162b887d31980.js +1 -0
  306. package/apps/console/.next/static/chunks/app/api/champion/track-question/route-2d8162b887d31980.js +1 -0
  307. package/apps/console/.next/static/chunks/app/api/champion/use-case-wiki/route-2d8162b887d31980.js +1 -0
  308. package/apps/console/.next/static/chunks/app/api/chat/route-2d8162b887d31980.js +1 -0
  309. package/apps/console/.next/static/chunks/app/api/compliance/risk-register-seed/route-2d8162b887d31980.js +1 -0
  310. package/apps/console/.next/static/chunks/app/api/computer-use/[id]/route-2d8162b887d31980.js +1 -0
  311. package/apps/console/.next/static/chunks/app/api/computer-use/route-2d8162b887d31980.js +1 -0
  312. package/apps/console/.next/static/chunks/app/api/concierge/morning-brief/route-2d8162b887d31980.js +1 -0
  313. package/apps/console/.next/static/chunks/app/api/contacts/route-2d8162b887d31980.js +1 -0
  314. package/apps/console/.next/static/chunks/app/api/content/seo-brief/route-2d8162b887d31980.js +1 -0
  315. package/apps/console/.next/static/chunks/app/api/conversations/route-2d8162b887d31980.js +1 -0
  316. package/apps/console/.next/static/chunks/app/api/coo/route-2d8162b887d31980.js +1 -0
  317. package/apps/console/.next/static/chunks/app/api/cx/escalation-triage/route-2d8162b887d31980.js +1 -0
  318. package/apps/console/.next/static/chunks/app/api/cx/health-score/route-2d8162b887d31980.js +1 -0
  319. package/apps/console/.next/static/chunks/app/api/data/cohort-brief/route-2d8162b887d31980.js +1 -0
  320. package/apps/console/.next/static/chunks/app/api/delivery/qbr-brief/route-2d8162b887d31980.js +1 -0
  321. package/apps/console/.next/static/chunks/app/api/delivery/weekly-brief/route-2d8162b887d31980.js +1 -0
  322. package/apps/console/.next/static/chunks/app/api/dev/invalidate-cache/route-2d8162b887d31980.js +1 -0
  323. package/apps/console/.next/static/chunks/app/api/devops/runbook/route-2d8162b887d31980.js +1 -0
  324. package/apps/console/.next/static/chunks/app/api/email/sequence-brief/route-2d8162b887d31980.js +1 -0
  325. package/apps/console/.next/static/chunks/app/api/engineering/adr-draft/route-2d8162b887d31980.js +1 -0
  326. package/apps/console/.next/static/chunks/app/api/finance/runway-snapshot/route-2d8162b887d31980.js +1 -0
  327. package/apps/console/.next/static/chunks/app/api/frontend/component-spec/route-2d8162b887d31980.js +1 -0
  328. package/apps/console/.next/static/chunks/app/api/health/route-2d8162b887d31980.js +1 -0
  329. package/apps/console/.next/static/chunks/app/api/implementation/brief/route-2d8162b887d31980.js +1 -0
  330. package/apps/console/.next/static/chunks/app/api/implementation/scaffold-migration-script/route-2d8162b887d31980.js +1 -0
  331. package/apps/console/.next/static/chunks/app/api/implementation/scaffold-n8n-workflow/route-2d8162b887d31980.js +1 -0
  332. package/apps/console/.next/static/chunks/app/api/implementation/scaffold-skill-override/route-2d8162b887d31980.js +1 -0
  333. package/apps/console/.next/static/chunks/app/api/inbox/route-2d8162b887d31980.js +1 -0
  334. package/apps/console/.next/static/chunks/app/api/inbox/stream/route-2d8162b887d31980.js +1 -0
  335. package/apps/console/.next/static/chunks/app/api/investor/kpi-tracker/route-2d8162b887d31980.js +1 -0
  336. package/apps/console/.next/static/chunks/app/api/leedab/channels/status/route-2d8162b887d31980.js +1 -0
  337. package/apps/console/.next/static/chunks/app/api/leedab/channels/telegram/connect/route-2d8162b887d31980.js +1 -0
  338. package/apps/console/.next/static/chunks/app/api/leedab/channels/whatsapp/connect/route-2d8162b887d31980.js +1 -0
  339. package/apps/console/.next/static/chunks/app/api/leedab/gtm/leads/[id]/route-2d8162b887d31980.js +1 -0
  340. package/apps/console/.next/static/chunks/app/api/leedab/gtm/leads/[id]/status/route-2d8162b887d31980.js +1 -0
  341. package/apps/console/.next/static/chunks/app/api/leedab/gtm/templates/[name]/route-2d8162b887d31980.js +1 -0
  342. package/apps/console/.next/static/chunks/app/api/leedab/license/route-2d8162b887d31980.js +1 -0
  343. package/apps/console/.next/static/chunks/app/api/leedab/models/route-2d8162b887d31980.js +1 -0
  344. package/apps/console/.next/static/chunks/app/api/leedab/providers/route-2d8162b887d31980.js +1 -0
  345. package/apps/console/.next/static/chunks/app/api/leedab/sessions/[id]/route-2d8162b887d31980.js +1 -0
  346. package/apps/console/.next/static/chunks/app/api/leedab/sessions/route-2d8162b887d31980.js +1 -0
  347. package/apps/console/.next/static/chunks/app/api/leedab/team/[id]/route-2d8162b887d31980.js +1 -0
  348. package/apps/console/.next/static/chunks/app/api/leedab/team/route-2d8162b887d31980.js +1 -0
  349. package/apps/console/.next/static/chunks/app/api/leedab/vault/route-2d8162b887d31980.js +1 -0
  350. package/apps/console/.next/static/chunks/app/api/leedab/workflows/route-2d8162b887d31980.js +1 -0
  351. package/apps/console/.next/static/chunks/app/api/legal/clause-template/route-2d8162b887d31980.js +1 -0
  352. package/apps/console/.next/static/chunks/app/api/manifest/agents/custom/draft/route-2d8162b887d31980.js +1 -0
  353. package/apps/console/.next/static/chunks/app/api/manifest/agents/custom/route-2d8162b887d31980.js +1 -0
  354. package/apps/console/.next/static/chunks/app/api/manifest/agents/route-2d8162b887d31980.js +1 -0
  355. package/apps/console/.next/static/chunks/app/api/marketing/cadence-planner/route-2d8162b887d31980.js +1 -0
  356. package/apps/console/.next/static/chunks/app/api/marketing/competitive-snapshot/route-2d8162b887d31980.js +1 -0
  357. package/apps/console/.next/static/chunks/app/api/marketplace/catalogue/route-2d8162b887d31980.js +1 -0
  358. package/apps/console/.next/static/chunks/app/api/onboarding/engagement-plan/route-2d8162b887d31980.js +1 -0
  359. package/apps/console/.next/static/chunks/app/api/onboarding/kickoff-brief/route-2d8162b887d31980.js +1 -0
  360. package/apps/console/.next/static/chunks/app/api/openclaw/status/route-2d8162b887d31980.js +1 -0
  361. package/apps/console/.next/static/chunks/app/api/ops/dispatch-brief/route-2d8162b887d31980.js +1 -0
  362. package/apps/console/.next/static/chunks/app/api/pack/route-2d8162b887d31980.js +1 -0
  363. package/apps/console/.next/static/chunks/app/api/people/job-brief/route-2d8162b887d31980.js +1 -0
  364. package/apps/console/.next/static/chunks/app/api/preferences/route-2d8162b887d31980.js +1 -0
  365. package/apps/console/.next/static/chunks/app/api/procurement/po-brief/route-2d8162b887d31980.js +1 -0
  366. package/apps/console/.next/static/chunks/app/api/product/prd-draft/route-2d8162b887d31980.js +1 -0
  367. package/apps/console/.next/static/chunks/app/api/research/prospect-intel/route-2d8162b887d31980.js +1 -0
  368. package/apps/console/.next/static/chunks/app/api/research/search/route-2d8162b887d31980.js +1 -0
  369. package/apps/console/.next/static/chunks/app/api/routing/route-2d8162b887d31980.js +1 -0
  370. package/apps/console/.next/static/chunks/app/api/runs/route-2d8162b887d31980.js +1 -0
  371. package/apps/console/.next/static/chunks/app/api/sales/pipeline-summary/route-2d8162b887d31980.js +1 -0
  372. package/apps/console/.next/static/chunks/app/api/sales/prospect-brief/route-2d8162b887d31980.js +1 -0
  373. package/apps/console/.next/static/chunks/app/api/solutions/build/route-2d8162b887d31980.js +1 -0
  374. package/apps/console/.next/static/chunks/app/api/solutions/quickstart-regenerate/route-2d8162b887d31980.js +1 -0
  375. package/apps/console/.next/static/chunks/app/api/solutions/refine/route-2d8162b887d31980.js +1 -0
  376. package/apps/console/.next/static/chunks/app/api/strategy/market-pulse/route-2d8162b887d31980.js +1 -0
  377. package/apps/console/.next/static/chunks/app/api/telegram/[customerId]/route-2d8162b887d31980.js +1 -0
  378. package/apps/console/.next/static/chunks/app/api/templates/regenerate/route-2d8162b887d31980.js +1 -0
  379. package/apps/console/.next/static/chunks/app/api/templates/route-2d8162b887d31980.js +1 -0
  380. package/apps/console/.next/static/chunks/app/api/uploads/[id]/route-2d8162b887d31980.js +1 -0
  381. package/apps/console/.next/static/chunks/app/api/uploads/route-2d8162b887d31980.js +1 -0
  382. package/apps/console/.next/static/chunks/app/api/usage/route-2d8162b887d31980.js +1 -0
  383. package/apps/console/.next/static/chunks/app/api/video/video-script/route-2d8162b887d31980.js +1 -0
  384. package/apps/console/.next/static/chunks/app/api/webhooks/workflow/[id]/route-2d8162b887d31980.js +1 -0
  385. package/apps/console/.next/static/chunks/app/api/workflows/[id]/history/[runId]/route-2d8162b887d31980.js +1 -0
  386. package/apps/console/.next/static/chunks/app/api/workflows/[id]/history/route-2d8162b887d31980.js +1 -0
  387. package/apps/console/.next/static/chunks/app/api/workflows/[id]/route-2d8162b887d31980.js +1 -0
  388. package/apps/console/.next/static/chunks/app/api/workflows/[id]/run/route-2d8162b887d31980.js +1 -0
  389. package/apps/console/.next/static/chunks/app/api/workflows/route-2d8162b887d31980.js +1 -0
  390. package/apps/console/.next/static/chunks/app/page-bdfdbf7b657f4722.js +1 -0
  391. package/apps/console/.next/static/css/{4bdbd0680d42c54d.css → b2a91ecca3bf1487.css} +1 -1
  392. package/bin/leedab-auto-pr.sh +108 -0
  393. package/bin/leedab.js +123 -1
  394. package/clients/default/manifest.json +47 -2
  395. package/dist/console-launcher.js +6 -2
  396. package/dist/gateway.js +111 -52
  397. package/package.json +2 -2
  398. package/apps/console/.next/standalone/.next/server/chunks/697.js +0 -19
  399. package/apps/console/.next/standalone/.next/static/cSGyydhlqn2VGaYXt0uuW/_buildManifest.js +0 -1
  400. package/apps/console/.next/standalone/.next/static/chunks/8118-681f2688832ccc66.js +0 -1
  401. package/apps/console/.next/standalone/.next/static/chunks/app/api/agent/route-4178c1913c80eb12.js +0 -1
  402. package/apps/console/.next/standalone/.next/static/chunks/app/api/approvals/route-4178c1913c80eb12.js +0 -1
  403. package/apps/console/.next/standalone/.next/static/chunks/app/api/approvals/stream/route-4178c1913c80eb12.js +0 -1
  404. package/apps/console/.next/standalone/.next/static/chunks/app/api/automation/workflow-blueprint/route-4178c1913c80eb12.js +0 -1
  405. package/apps/console/.next/standalone/.next/static/chunks/app/api/backend/endpoint-spec/route-4178c1913c80eb12.js +0 -1
  406. package/apps/console/.next/standalone/.next/static/chunks/app/api/bootstrap-admin-token/route-4178c1913c80eb12.js +0 -1
  407. package/apps/console/.next/standalone/.next/static/chunks/app/api/brand/brand-audit/route-4178c1913c80eb12.js +0 -1
  408. package/apps/console/.next/standalone/.next/static/chunks/app/api/campaigns/campaign-brief/route-4178c1913c80eb12.js +0 -1
  409. package/apps/console/.next/standalone/.next/static/chunks/app/api/champion/confidence/route-4178c1913c80eb12.js +0 -1
  410. package/apps/console/.next/standalone/.next/static/chunks/app/api/champion/customer/route-4178c1913c80eb12.js +0 -1
  411. package/apps/console/.next/standalone/.next/static/chunks/app/api/champion/dispatches/route-4178c1913c80eb12.js +0 -1
  412. package/apps/console/.next/standalone/.next/static/chunks/app/api/champion/engagement/route-4178c1913c80eb12.js +0 -1
  413. package/apps/console/.next/standalone/.next/static/chunks/app/api/champion/escalate/route-4178c1913c80eb12.js +0 -1
  414. package/apps/console/.next/standalone/.next/static/chunks/app/api/champion/profile/route-4178c1913c80eb12.js +0 -1
  415. package/apps/console/.next/standalone/.next/static/chunks/app/api/champion/screenshare/route-4178c1913c80eb12.js +0 -1
  416. package/apps/console/.next/standalone/.next/static/chunks/app/api/champion/track-question/route-4178c1913c80eb12.js +0 -1
  417. package/apps/console/.next/standalone/.next/static/chunks/app/api/champion/use-case-wiki/route-4178c1913c80eb12.js +0 -1
  418. package/apps/console/.next/standalone/.next/static/chunks/app/api/chat/route-4178c1913c80eb12.js +0 -1
  419. package/apps/console/.next/standalone/.next/static/chunks/app/api/compliance/risk-register-seed/route-4178c1913c80eb12.js +0 -1
  420. package/apps/console/.next/standalone/.next/static/chunks/app/api/computer-use/[id]/route-4178c1913c80eb12.js +0 -1
  421. package/apps/console/.next/standalone/.next/static/chunks/app/api/computer-use/route-4178c1913c80eb12.js +0 -1
  422. package/apps/console/.next/standalone/.next/static/chunks/app/api/concierge/morning-brief/route-4178c1913c80eb12.js +0 -1
  423. package/apps/console/.next/standalone/.next/static/chunks/app/api/contacts/route-4178c1913c80eb12.js +0 -1
  424. package/apps/console/.next/standalone/.next/static/chunks/app/api/content/seo-brief/route-4178c1913c80eb12.js +0 -1
  425. package/apps/console/.next/standalone/.next/static/chunks/app/api/conversations/route-4178c1913c80eb12.js +0 -1
  426. package/apps/console/.next/standalone/.next/static/chunks/app/api/coo/route-4178c1913c80eb12.js +0 -1
  427. package/apps/console/.next/standalone/.next/static/chunks/app/api/cx/escalation-triage/route-4178c1913c80eb12.js +0 -1
  428. package/apps/console/.next/standalone/.next/static/chunks/app/api/cx/health-score/route-4178c1913c80eb12.js +0 -1
  429. package/apps/console/.next/standalone/.next/static/chunks/app/api/data/cohort-brief/route-4178c1913c80eb12.js +0 -1
  430. package/apps/console/.next/standalone/.next/static/chunks/app/api/delivery/qbr-brief/route-4178c1913c80eb12.js +0 -1
  431. package/apps/console/.next/standalone/.next/static/chunks/app/api/delivery/weekly-brief/route-4178c1913c80eb12.js +0 -1
  432. package/apps/console/.next/standalone/.next/static/chunks/app/api/dev/invalidate-cache/route-4178c1913c80eb12.js +0 -1
  433. package/apps/console/.next/standalone/.next/static/chunks/app/api/devops/runbook/route-4178c1913c80eb12.js +0 -1
  434. package/apps/console/.next/standalone/.next/static/chunks/app/api/email/sequence-brief/route-4178c1913c80eb12.js +0 -1
  435. package/apps/console/.next/standalone/.next/static/chunks/app/api/engineering/adr-draft/route-4178c1913c80eb12.js +0 -1
  436. package/apps/console/.next/standalone/.next/static/chunks/app/api/finance/runway-snapshot/route-4178c1913c80eb12.js +0 -1
  437. package/apps/console/.next/standalone/.next/static/chunks/app/api/frontend/component-spec/route-4178c1913c80eb12.js +0 -1
  438. package/apps/console/.next/standalone/.next/static/chunks/app/api/health/route-4178c1913c80eb12.js +0 -1
  439. package/apps/console/.next/standalone/.next/static/chunks/app/api/implementation/brief/route-4178c1913c80eb12.js +0 -1
  440. package/apps/console/.next/standalone/.next/static/chunks/app/api/implementation/scaffold-migration-script/route-4178c1913c80eb12.js +0 -1
  441. package/apps/console/.next/standalone/.next/static/chunks/app/api/implementation/scaffold-n8n-workflow/route-4178c1913c80eb12.js +0 -1
  442. package/apps/console/.next/standalone/.next/static/chunks/app/api/implementation/scaffold-skill-override/route-4178c1913c80eb12.js +0 -1
  443. package/apps/console/.next/standalone/.next/static/chunks/app/api/inbox/route-4178c1913c80eb12.js +0 -1
  444. package/apps/console/.next/standalone/.next/static/chunks/app/api/inbox/stream/route-4178c1913c80eb12.js +0 -1
  445. package/apps/console/.next/standalone/.next/static/chunks/app/api/investor/kpi-tracker/route-4178c1913c80eb12.js +0 -1
  446. package/apps/console/.next/standalone/.next/static/chunks/app/api/leedab/channels/status/route-4178c1913c80eb12.js +0 -1
  447. package/apps/console/.next/standalone/.next/static/chunks/app/api/leedab/channels/telegram/connect/route-4178c1913c80eb12.js +0 -1
  448. package/apps/console/.next/standalone/.next/static/chunks/app/api/leedab/channels/whatsapp/connect/route-4178c1913c80eb12.js +0 -1
  449. package/apps/console/.next/standalone/.next/static/chunks/app/api/leedab/gtm/leads/[id]/route-4178c1913c80eb12.js +0 -1
  450. package/apps/console/.next/standalone/.next/static/chunks/app/api/leedab/gtm/leads/[id]/status/route-4178c1913c80eb12.js +0 -1
  451. package/apps/console/.next/standalone/.next/static/chunks/app/api/leedab/gtm/templates/[name]/route-4178c1913c80eb12.js +0 -1
  452. package/apps/console/.next/standalone/.next/static/chunks/app/api/leedab/license/route-4178c1913c80eb12.js +0 -1
  453. package/apps/console/.next/standalone/.next/static/chunks/app/api/leedab/providers/route-4178c1913c80eb12.js +0 -1
  454. package/apps/console/.next/standalone/.next/static/chunks/app/api/leedab/sessions/[id]/route-4178c1913c80eb12.js +0 -1
  455. package/apps/console/.next/standalone/.next/static/chunks/app/api/leedab/sessions/route-4178c1913c80eb12.js +0 -1
  456. package/apps/console/.next/standalone/.next/static/chunks/app/api/leedab/team/[id]/route-4178c1913c80eb12.js +0 -1
  457. package/apps/console/.next/standalone/.next/static/chunks/app/api/leedab/team/route-4178c1913c80eb12.js +0 -1
  458. package/apps/console/.next/standalone/.next/static/chunks/app/api/leedab/vault/route-4178c1913c80eb12.js +0 -1
  459. package/apps/console/.next/standalone/.next/static/chunks/app/api/leedab/workflows/route-4178c1913c80eb12.js +0 -1
  460. package/apps/console/.next/standalone/.next/static/chunks/app/api/legal/clause-template/route-4178c1913c80eb12.js +0 -1
  461. package/apps/console/.next/standalone/.next/static/chunks/app/api/marketing/cadence-planner/route-4178c1913c80eb12.js +0 -1
  462. package/apps/console/.next/standalone/.next/static/chunks/app/api/marketing/competitive-snapshot/route-4178c1913c80eb12.js +0 -1
  463. package/apps/console/.next/standalone/.next/static/chunks/app/api/onboarding/engagement-plan/route-4178c1913c80eb12.js +0 -1
  464. package/apps/console/.next/standalone/.next/static/chunks/app/api/onboarding/kickoff-brief/route-4178c1913c80eb12.js +0 -1
  465. package/apps/console/.next/standalone/.next/static/chunks/app/api/openclaw/status/route-4178c1913c80eb12.js +0 -1
  466. package/apps/console/.next/standalone/.next/static/chunks/app/api/ops/dispatch-brief/route-4178c1913c80eb12.js +0 -1
  467. package/apps/console/.next/standalone/.next/static/chunks/app/api/pack/route-4178c1913c80eb12.js +0 -1
  468. package/apps/console/.next/standalone/.next/static/chunks/app/api/people/job-brief/route-4178c1913c80eb12.js +0 -1
  469. package/apps/console/.next/standalone/.next/static/chunks/app/api/preferences/route-4178c1913c80eb12.js +0 -1
  470. package/apps/console/.next/standalone/.next/static/chunks/app/api/procurement/po-brief/route-4178c1913c80eb12.js +0 -1
  471. package/apps/console/.next/standalone/.next/static/chunks/app/api/product/prd-draft/route-4178c1913c80eb12.js +0 -1
  472. package/apps/console/.next/standalone/.next/static/chunks/app/api/research/prospect-intel/route-4178c1913c80eb12.js +0 -1
  473. package/apps/console/.next/standalone/.next/static/chunks/app/api/research/search/route-4178c1913c80eb12.js +0 -1
  474. package/apps/console/.next/standalone/.next/static/chunks/app/api/routing/route-4178c1913c80eb12.js +0 -1
  475. package/apps/console/.next/standalone/.next/static/chunks/app/api/runs/route-4178c1913c80eb12.js +0 -1
  476. package/apps/console/.next/standalone/.next/static/chunks/app/api/sales/pipeline-summary/route-4178c1913c80eb12.js +0 -1
  477. package/apps/console/.next/standalone/.next/static/chunks/app/api/sales/prospect-brief/route-4178c1913c80eb12.js +0 -1
  478. package/apps/console/.next/standalone/.next/static/chunks/app/api/solutions/build/route-4178c1913c80eb12.js +0 -1
  479. package/apps/console/.next/standalone/.next/static/chunks/app/api/solutions/quickstart-regenerate/route-4178c1913c80eb12.js +0 -1
  480. package/apps/console/.next/standalone/.next/static/chunks/app/api/solutions/refine/route-4178c1913c80eb12.js +0 -1
  481. package/apps/console/.next/standalone/.next/static/chunks/app/api/strategy/market-pulse/route-4178c1913c80eb12.js +0 -1
  482. package/apps/console/.next/standalone/.next/static/chunks/app/api/telegram/[customerId]/route-4178c1913c80eb12.js +0 -1
  483. package/apps/console/.next/standalone/.next/static/chunks/app/api/templates/regenerate/route-4178c1913c80eb12.js +0 -1
  484. package/apps/console/.next/standalone/.next/static/chunks/app/api/templates/route-4178c1913c80eb12.js +0 -1
  485. package/apps/console/.next/standalone/.next/static/chunks/app/api/uploads/[id]/route-4178c1913c80eb12.js +0 -1
  486. package/apps/console/.next/standalone/.next/static/chunks/app/api/uploads/route-4178c1913c80eb12.js +0 -1
  487. package/apps/console/.next/standalone/.next/static/chunks/app/api/usage/route-4178c1913c80eb12.js +0 -1
  488. package/apps/console/.next/standalone/.next/static/chunks/app/api/video/video-script/route-4178c1913c80eb12.js +0 -1
  489. package/apps/console/.next/standalone/.next/static/chunks/app/api/webhooks/workflow/[id]/route-4178c1913c80eb12.js +0 -1
  490. package/apps/console/.next/standalone/.next/static/chunks/app/api/workflows/[id]/history/[runId]/route-4178c1913c80eb12.js +0 -1
  491. package/apps/console/.next/standalone/.next/static/chunks/app/api/workflows/[id]/history/route-4178c1913c80eb12.js +0 -1
  492. package/apps/console/.next/standalone/.next/static/chunks/app/api/workflows/[id]/route-4178c1913c80eb12.js +0 -1
  493. package/apps/console/.next/standalone/.next/static/chunks/app/api/workflows/[id]/run/route-4178c1913c80eb12.js +0 -1
  494. package/apps/console/.next/standalone/.next/static/chunks/app/api/workflows/route-4178c1913c80eb12.js +0 -1
  495. package/apps/console/.next/standalone/.next/static/chunks/app/page-01558715b1be9361.js +0 -1
  496. package/apps/console/.next/static/cSGyydhlqn2VGaYXt0uuW/_buildManifest.js +0 -1
  497. package/apps/console/.next/static/chunks/8118-681f2688832ccc66.js +0 -1
  498. package/apps/console/.next/static/chunks/app/api/agent/route-4178c1913c80eb12.js +0 -1
  499. package/apps/console/.next/static/chunks/app/api/approvals/route-4178c1913c80eb12.js +0 -1
  500. package/apps/console/.next/static/chunks/app/api/approvals/stream/route-4178c1913c80eb12.js +0 -1
  501. package/apps/console/.next/static/chunks/app/api/automation/workflow-blueprint/route-4178c1913c80eb12.js +0 -1
  502. package/apps/console/.next/static/chunks/app/api/backend/endpoint-spec/route-4178c1913c80eb12.js +0 -1
  503. package/apps/console/.next/static/chunks/app/api/bootstrap-admin-token/route-4178c1913c80eb12.js +0 -1
  504. package/apps/console/.next/static/chunks/app/api/brand/brand-audit/route-4178c1913c80eb12.js +0 -1
  505. package/apps/console/.next/static/chunks/app/api/campaigns/campaign-brief/route-4178c1913c80eb12.js +0 -1
  506. package/apps/console/.next/static/chunks/app/api/champion/confidence/route-4178c1913c80eb12.js +0 -1
  507. package/apps/console/.next/static/chunks/app/api/champion/customer/route-4178c1913c80eb12.js +0 -1
  508. package/apps/console/.next/static/chunks/app/api/champion/dispatches/route-4178c1913c80eb12.js +0 -1
  509. package/apps/console/.next/static/chunks/app/api/champion/engagement/route-4178c1913c80eb12.js +0 -1
  510. package/apps/console/.next/static/chunks/app/api/champion/escalate/route-4178c1913c80eb12.js +0 -1
  511. package/apps/console/.next/static/chunks/app/api/champion/profile/route-4178c1913c80eb12.js +0 -1
  512. package/apps/console/.next/static/chunks/app/api/champion/screenshare/route-4178c1913c80eb12.js +0 -1
  513. package/apps/console/.next/static/chunks/app/api/champion/track-question/route-4178c1913c80eb12.js +0 -1
  514. package/apps/console/.next/static/chunks/app/api/champion/use-case-wiki/route-4178c1913c80eb12.js +0 -1
  515. package/apps/console/.next/static/chunks/app/api/chat/route-4178c1913c80eb12.js +0 -1
  516. package/apps/console/.next/static/chunks/app/api/compliance/risk-register-seed/route-4178c1913c80eb12.js +0 -1
  517. package/apps/console/.next/static/chunks/app/api/computer-use/[id]/route-4178c1913c80eb12.js +0 -1
  518. package/apps/console/.next/static/chunks/app/api/computer-use/route-4178c1913c80eb12.js +0 -1
  519. package/apps/console/.next/static/chunks/app/api/concierge/morning-brief/route-4178c1913c80eb12.js +0 -1
  520. package/apps/console/.next/static/chunks/app/api/contacts/route-4178c1913c80eb12.js +0 -1
  521. package/apps/console/.next/static/chunks/app/api/content/seo-brief/route-4178c1913c80eb12.js +0 -1
  522. package/apps/console/.next/static/chunks/app/api/conversations/route-4178c1913c80eb12.js +0 -1
  523. package/apps/console/.next/static/chunks/app/api/coo/route-4178c1913c80eb12.js +0 -1
  524. package/apps/console/.next/static/chunks/app/api/cx/escalation-triage/route-4178c1913c80eb12.js +0 -1
  525. package/apps/console/.next/static/chunks/app/api/cx/health-score/route-4178c1913c80eb12.js +0 -1
  526. package/apps/console/.next/static/chunks/app/api/data/cohort-brief/route-4178c1913c80eb12.js +0 -1
  527. package/apps/console/.next/static/chunks/app/api/delivery/qbr-brief/route-4178c1913c80eb12.js +0 -1
  528. package/apps/console/.next/static/chunks/app/api/delivery/weekly-brief/route-4178c1913c80eb12.js +0 -1
  529. package/apps/console/.next/static/chunks/app/api/dev/invalidate-cache/route-4178c1913c80eb12.js +0 -1
  530. package/apps/console/.next/static/chunks/app/api/devops/runbook/route-4178c1913c80eb12.js +0 -1
  531. package/apps/console/.next/static/chunks/app/api/email/sequence-brief/route-4178c1913c80eb12.js +0 -1
  532. package/apps/console/.next/static/chunks/app/api/engineering/adr-draft/route-4178c1913c80eb12.js +0 -1
  533. package/apps/console/.next/static/chunks/app/api/finance/runway-snapshot/route-4178c1913c80eb12.js +0 -1
  534. package/apps/console/.next/static/chunks/app/api/frontend/component-spec/route-4178c1913c80eb12.js +0 -1
  535. package/apps/console/.next/static/chunks/app/api/health/route-4178c1913c80eb12.js +0 -1
  536. package/apps/console/.next/static/chunks/app/api/implementation/brief/route-4178c1913c80eb12.js +0 -1
  537. package/apps/console/.next/static/chunks/app/api/implementation/scaffold-migration-script/route-4178c1913c80eb12.js +0 -1
  538. package/apps/console/.next/static/chunks/app/api/implementation/scaffold-n8n-workflow/route-4178c1913c80eb12.js +0 -1
  539. package/apps/console/.next/static/chunks/app/api/implementation/scaffold-skill-override/route-4178c1913c80eb12.js +0 -1
  540. package/apps/console/.next/static/chunks/app/api/inbox/route-4178c1913c80eb12.js +0 -1
  541. package/apps/console/.next/static/chunks/app/api/inbox/stream/route-4178c1913c80eb12.js +0 -1
  542. package/apps/console/.next/static/chunks/app/api/investor/kpi-tracker/route-4178c1913c80eb12.js +0 -1
  543. package/apps/console/.next/static/chunks/app/api/leedab/channels/status/route-4178c1913c80eb12.js +0 -1
  544. package/apps/console/.next/static/chunks/app/api/leedab/channels/telegram/connect/route-4178c1913c80eb12.js +0 -1
  545. package/apps/console/.next/static/chunks/app/api/leedab/channels/whatsapp/connect/route-4178c1913c80eb12.js +0 -1
  546. package/apps/console/.next/static/chunks/app/api/leedab/gtm/leads/[id]/route-4178c1913c80eb12.js +0 -1
  547. package/apps/console/.next/static/chunks/app/api/leedab/gtm/leads/[id]/status/route-4178c1913c80eb12.js +0 -1
  548. package/apps/console/.next/static/chunks/app/api/leedab/gtm/templates/[name]/route-4178c1913c80eb12.js +0 -1
  549. package/apps/console/.next/static/chunks/app/api/leedab/license/route-4178c1913c80eb12.js +0 -1
  550. package/apps/console/.next/static/chunks/app/api/leedab/providers/route-4178c1913c80eb12.js +0 -1
  551. package/apps/console/.next/static/chunks/app/api/leedab/sessions/[id]/route-4178c1913c80eb12.js +0 -1
  552. package/apps/console/.next/static/chunks/app/api/leedab/sessions/route-4178c1913c80eb12.js +0 -1
  553. package/apps/console/.next/static/chunks/app/api/leedab/team/[id]/route-4178c1913c80eb12.js +0 -1
  554. package/apps/console/.next/static/chunks/app/api/leedab/team/route-4178c1913c80eb12.js +0 -1
  555. package/apps/console/.next/static/chunks/app/api/leedab/vault/route-4178c1913c80eb12.js +0 -1
  556. package/apps/console/.next/static/chunks/app/api/leedab/workflows/route-4178c1913c80eb12.js +0 -1
  557. package/apps/console/.next/static/chunks/app/api/legal/clause-template/route-4178c1913c80eb12.js +0 -1
  558. package/apps/console/.next/static/chunks/app/api/marketing/cadence-planner/route-4178c1913c80eb12.js +0 -1
  559. package/apps/console/.next/static/chunks/app/api/marketing/competitive-snapshot/route-4178c1913c80eb12.js +0 -1
  560. package/apps/console/.next/static/chunks/app/api/onboarding/engagement-plan/route-4178c1913c80eb12.js +0 -1
  561. package/apps/console/.next/static/chunks/app/api/onboarding/kickoff-brief/route-4178c1913c80eb12.js +0 -1
  562. package/apps/console/.next/static/chunks/app/api/openclaw/status/route-4178c1913c80eb12.js +0 -1
  563. package/apps/console/.next/static/chunks/app/api/ops/dispatch-brief/route-4178c1913c80eb12.js +0 -1
  564. package/apps/console/.next/static/chunks/app/api/pack/route-4178c1913c80eb12.js +0 -1
  565. package/apps/console/.next/static/chunks/app/api/people/job-brief/route-4178c1913c80eb12.js +0 -1
  566. package/apps/console/.next/static/chunks/app/api/preferences/route-4178c1913c80eb12.js +0 -1
  567. package/apps/console/.next/static/chunks/app/api/procurement/po-brief/route-4178c1913c80eb12.js +0 -1
  568. package/apps/console/.next/static/chunks/app/api/product/prd-draft/route-4178c1913c80eb12.js +0 -1
  569. package/apps/console/.next/static/chunks/app/api/research/prospect-intel/route-4178c1913c80eb12.js +0 -1
  570. package/apps/console/.next/static/chunks/app/api/research/search/route-4178c1913c80eb12.js +0 -1
  571. package/apps/console/.next/static/chunks/app/api/routing/route-4178c1913c80eb12.js +0 -1
  572. package/apps/console/.next/static/chunks/app/api/runs/route-4178c1913c80eb12.js +0 -1
  573. package/apps/console/.next/static/chunks/app/api/sales/pipeline-summary/route-4178c1913c80eb12.js +0 -1
  574. package/apps/console/.next/static/chunks/app/api/sales/prospect-brief/route-4178c1913c80eb12.js +0 -1
  575. package/apps/console/.next/static/chunks/app/api/solutions/build/route-4178c1913c80eb12.js +0 -1
  576. package/apps/console/.next/static/chunks/app/api/solutions/quickstart-regenerate/route-4178c1913c80eb12.js +0 -1
  577. package/apps/console/.next/static/chunks/app/api/solutions/refine/route-4178c1913c80eb12.js +0 -1
  578. package/apps/console/.next/static/chunks/app/api/strategy/market-pulse/route-4178c1913c80eb12.js +0 -1
  579. package/apps/console/.next/static/chunks/app/api/telegram/[customerId]/route-4178c1913c80eb12.js +0 -1
  580. package/apps/console/.next/static/chunks/app/api/templates/regenerate/route-4178c1913c80eb12.js +0 -1
  581. package/apps/console/.next/static/chunks/app/api/templates/route-4178c1913c80eb12.js +0 -1
  582. package/apps/console/.next/static/chunks/app/api/uploads/[id]/route-4178c1913c80eb12.js +0 -1
  583. package/apps/console/.next/static/chunks/app/api/uploads/route-4178c1913c80eb12.js +0 -1
  584. package/apps/console/.next/static/chunks/app/api/usage/route-4178c1913c80eb12.js +0 -1
  585. package/apps/console/.next/static/chunks/app/api/video/video-script/route-4178c1913c80eb12.js +0 -1
  586. package/apps/console/.next/static/chunks/app/api/webhooks/workflow/[id]/route-4178c1913c80eb12.js +0 -1
  587. package/apps/console/.next/static/chunks/app/api/workflows/[id]/history/[runId]/route-4178c1913c80eb12.js +0 -1
  588. package/apps/console/.next/static/chunks/app/api/workflows/[id]/history/route-4178c1913c80eb12.js +0 -1
  589. package/apps/console/.next/static/chunks/app/api/workflows/[id]/route-4178c1913c80eb12.js +0 -1
  590. package/apps/console/.next/static/chunks/app/api/workflows/[id]/run/route-4178c1913c80eb12.js +0 -1
  591. package/apps/console/.next/static/chunks/app/api/workflows/route-4178c1913c80eb12.js +0 -1
  592. package/apps/console/.next/static/chunks/app/page-01558715b1be9361.js +0 -1
  593. /package/apps/console/.next/standalone/.next/static/{cSGyydhlqn2VGaYXt0uuW → B4g4e91OJP29sEqgIs76V}/_ssgManifest.js +0 -0
  594. /package/apps/console/.next/static/{cSGyydhlqn2VGaYXt0uuW → B4g4e91OJP29sEqgIs76V}/_ssgManifest.js +0 -0
@@ -1 +1 @@
1
- (()=>{var a={};a.id=1057,a.ids=[1057],a.modules={261:a=>{"use strict";a.exports=require("next/dist/shared/lib/router/utils/app-paths")},3295:a=>{"use strict";a.exports=require("next/dist/server/app-render/after-task-async-storage.external.js")},7506:(a,b,c)=>{"use strict";c.d(b,{sb:()=>j});var d=c(73024),e=c(76760),f=c.n(e),g=c(57477);let h=/^[a-z0-9](?:[a-z0-9-]{0,58}[a-z0-9])?$/,i=/^[a-z][a-z0-9_]{1,40}\.[a-z][a-z0-9_]{1,40}$/;async function j(a){try{if(!h.test(a.clientId))return{ok:!1,error:`Invalid clientId: ${a.clientId}`};if(!i.test(a.agent))return{ok:!1,error:`Invalid agent format: ${a.agent} (expected agent.tool)`};if(!await (0,g.xB)(a.clientId))return{ok:!1,error:`No brain for ${a.clientId} — audit not written`};let b={...a,inputSummary:function(a){if(!a)return;let b={};for(let[c,d]of Object.entries(a))"string"==typeof d?b[c]=d.length>200?`${d.slice(0,200)}…[+${d.length-200} chars]`:d:"number"==typeof d||"boolean"==typeof d||null===d?b[c]=d:Array.isArray(d)?b[c]=`[array length=${d.length}]`:"object"==typeof d?b[c]=`[object keys=${Object.keys(d).length}]`:b[c]=`[${typeof d}]`;return b}(a.inputSummary)},c=function(a,b){let c=`${b.getUTCFullYear()}-${String(b.getUTCMonth()+1).padStart(2,"0")}`;return f().join((0,g.Ip)(a),"_inbox",`audit-${c}.jsonl`)}(a.clientId,new Date(a.ts));await d.promises.mkdir(f().dirname(c),{recursive:!0});let e=JSON.stringify(b)+"\n";return await d.promises.appendFile(c,e,"utf8"),{ok:!0,path:c,bytes:Buffer.byteLength(e,"utf8")}}catch(a){return{ok:!1,error:a.message}}}},10846:a=>{"use strict";a.exports=require("next/dist/compiled/next-server/app-page.runtime.prod.js")},11702:(a,b,c)=>{"use strict";c.d(b,{AU:()=>h,xH:()=>g});var d=c(10641),e=c(90897);function f(a){return a.ok?null:"agentId"in a?d.NextResponse.json({error:a.error,message:a.message,clientId:a.clientId,agentId:a.agentId},{status:a.status}):"reason"in a&&void 0!==a.reason?d.NextResponse.json({error:a.error,reason:a.reason,message:a.message},{status:a.status}):d.NextResponse.json({error:a.error,message:a.message},{status:a.status})}async function g(){return f(await (0,e.b)())}async function h(a,b){return f(await (0,e.s)(a,b))}},19121:a=>{"use strict";a.exports=require("next/dist/server/app-render/action-async-storage.external.js")},29021:a=>{"use strict";a.exports=require("fs")},29294:a=>{"use strict";a.exports=require("next/dist/server/app-render/work-async-storage.external.js")},33873:a=>{"use strict";a.exports=require("path")},44870:a=>{"use strict";a.exports=require("next/dist/compiled/next-server/app-route.runtime.prod.js")},48161:a=>{"use strict";a.exports=require("node:os")},57477:(a,b,c)=>{"use strict";c.d(b,{B0:()=>t,Ip:()=>k,T8:()=>q,_T:()=>p,dR:()=>r,mx:()=>o,nj:()=>v,st:()=>s,xB:()=>l,yv:()=>u,zG:()=>n,zY:()=>w});var d=c(73024),e=c(76760),f=c.n(e),g=c(48161),h=c.n(g);let i=/^[a-z0-9](?:[a-z0-9-]{0,58}[a-z0-9])?$/,j=["_inbox/","_Workflows/","00_Org/","01_Customers/","02_Sales/","03_Product/","04_Operations/","05_Finance/","06_Legal/","Permanent/","Wiki/"];function k(a){if(!i.test(a))throw Error(`Invalid clientId: ${a}`);return f().join(process.env.LEEDAB_BRAINS_ROOT?f().resolve(process.env.LEEDAB_BRAINS_ROOT):f().resolve(h().homedir(),"leedab-brains"),a)}async function l(a){try{return(await d.promises.stat(k(a))).isDirectory()}catch{return!1}}function m(a,b){if(b.includes("..")||f().isAbsolute(b))throw Error(`Refused: path contains traversal or is absolute: ${b}`);if(!j.some(a=>b.startsWith(a)))throw Error(`Refused: path "${b}" doesn't start with an allowed prefix (${j.join(", ")})`);let c=k(a),d=f().resolve(c,b);if(!d.startsWith(c+f().sep))throw Error(`Refused: path resolves outside brain root: ${b}`);return d}async function n(a,b){try{if(!await l(a))return{ok:!1,error:`No brain at ${k(a)}. Run bin/onboard-customer.sh first.`};let c=m(a,b),e=await d.promises.readFile(c,"utf8");return{ok:!0,body:e,path:c}}catch(a){return{ok:!1,error:a.message}}}async function o(a,b,c){try{if(!await l(a))return{ok:!1,error:`No brain at ${k(a)}. Run bin/onboard-customer.sh first.`};let e=m(a,b);return await d.promises.mkdir(f().dirname(e),{recursive:!0}),await d.promises.writeFile(e,c,"utf8"),{ok:!0,path:e,bytes:Buffer.byteLength(c,"utf8")}}catch(a){return{ok:!1,error:a.message}}}async function p(a,b,c={}){try{if(!await l(a))return{ok:!1,error:`No brain at ${k(a)}.`};let e=b.endsWith("/")?b:b+"/",g=m(a,e+"__list_sentinel__"),h=f().dirname(g),i=[];try{i=await d.promises.readdir(h)}catch{return{ok:!0,entries:[]}}let j=c.extension??".md",n=c.sinceISO?Date.parse(c.sinceISO):0,o=[];for(let a of i){if(j&&!a.endsWith(j))continue;let b=f().join(h,a),c=await d.promises.stat(b);c.isFile()&&(n&&c.mtimeMs<n||o.push({relativePath:e+a,absolutePath:b,bytes:c.size,modifiedISO:new Date(c.mtimeMs).toISOString()}))}return o.sort((a,b)=>Date.parse(b.modifiedISO)-Date.parse(a.modifiedISO)),{ok:!0,entries:c.limit?o.slice(0,c.limit):o}}catch(a){return{ok:!1,error:a.message}}}async function q(a,b,c){try{if(!await l(a))return{ok:!1,error:`No brain at ${k(a)}. Run bin/onboard-customer.sh first.`};let e=m(a,b);await d.promises.mkdir(f().dirname(e),{recursive:!0});let g="";try{let a=await d.promises.readFile(e,"utf8");a.length>0&&!a.endsWith("\n")&&(g="\n")}catch{}return await d.promises.appendFile(e,g+c,"utf8"),{ok:!0,path:e,bytes:Buffer.byteLength(g+c,"utf8")}}catch(a){return{ok:!1,error:a.message}}}function r(){return new Date().toISOString().slice(0,10)}function s(){return new Date().toISOString()}function t(a){return a.toLowerCase().replace(/[^a-z0-9]+/g,"-").replace(/^-+|-+$/g,"").slice(0,60)}function u(a){if(!a.startsWith("---\n")&&!a.startsWith("---\r\n"))return{frontmatter:{},body:a};let b=a.indexOf("\n---",4);if(-1===b)return{frontmatter:{},body:a};let c=a.slice(4,b),d=a.slice(b+4).replace(/^\r?\n/,""),e={},f=null,g=[],h=()=>{null!==f&&(e[f]=[...g],g.length=0,f=null)};for(let a of c.split(/\r?\n/)){if(""===a.trim())continue;let b=a.match(/^\s*-\s+(.*)$/);if(b&&null!==f){let a=b[1].trim(),c=a.startsWith('"')&&a.endsWith('"')||a.startsWith("'")&&a.endsWith("'")?a.slice(1,-1):a;g.push(c);continue}let c=a.match(/^([A-Za-z0-9_\-.]+)\s*:\s*(.*)$/);if(c){h();let a=c[1],b=c[2];if(""===b){f=a;continue}e[a]=function(a){let b=a.trim();if(""===b||"null"===b||"~"===b)return null;if("true"===b)return!0;if("false"===b)return!1;if(b.startsWith('"')&&b.endsWith('"'))return b.slice(1,-1).replace(/\\"/g,'"').replace(/\\\\/g,"\\");if(b.startsWith("'")&&b.endsWith("'"))return b.slice(1,-1).replace(/\\'/g,"'");if(b.startsWith("[")&&b.endsWith("]")){let a=b.slice(1,-1).trim();return a?a.split(/\s*,\s*/).map(a=>{let b=a.trim();return b.startsWith('"')&&b.endsWith('"')||b.startsWith("'")&&b.endsWith("'")?b.slice(1,-1):b}):[]}return/^-?\d+$/.test(b)||/^-?\d*\.\d+$/.test(b)?Number(b):b}(b)}}return h(),{frontmatter:e,body:d}}function v(a,b){let c=Object.keys(a);if(0===c.length)return b.startsWith("---"),b;let d=["---"];for(let b of c){var e;d.push(`${b}: ${null===(e=a[b])?"null":"boolean"==typeof e||"number"==typeof e?String(e):Array.isArray(e)?"["+e.map(a=>/[,\s:#]/.test(a)?`"${a.replace(/"/g,'\\"')}"`:a).join(", ")+"]":""===e||/^[\d\s]/.test(e)||/[:#\n"']/.test(e)||"true"===e||"false"===e||"null"===e||"~"===e?`"${e.replace(/"/g,'\\"')}"`:e}`)}return d.push("---",""),d.join("\n")+b.replace(/^\n+/,"")}function w(a){if(!a||"object"!=typeof a||Array.isArray(a))return{ok:!1,error:"patch must be a flat object"};let b={};for(let[c,d]of Object.entries(a)){if(!/^[A-Za-z0-9_\-.]+$/.test(c))return{ok:!1,error:`invalid frontmatter key "${c}" (allowed: letters / digits / _ - .)`};if(null===d||"string"==typeof d||"number"==typeof d||"boolean"==typeof d)b[c]=d;else{if(!(Array.isArray(d)&&d.every(a=>"string"==typeof a)))return{ok:!1,error:`value for "${c}" must be string / number / boolean / null / string[] — got ${typeof d}`};b[c]=d}}return{ok:!0,patch:b}}},63033:a=>{"use strict";a.exports=require("next/dist/server/app-render/work-unit-async-storage.external.js")},73024:a=>{"use strict";a.exports=require("node:fs")},76760:a=>{"use strict";a.exports=require("node:path")},77598:a=>{"use strict";a.exports=require("node:crypto")},78335:()=>{},79748:a=>{"use strict";a.exports=require("fs/promises")},86433:(a,b,c)=>{"use strict";c.d(b,{$A:()=>o,Iu:()=>C,Jc:()=>E,P8:()=>x,PH:()=>B,Qh:()=>w,WT:()=>z,h5:()=>A,ik:()=>D,ny:()=>v,v:()=>F,wr:()=>y});var d=c(29021),e=c(94735),f=c(22709);function g(a){let b=(0,f.fp)();return(a.clientId??"default")===b}let h=f.uV,i=(0,f.dataPath)("inbox.json"),j=(0,f.dataPath)("approvals.json"),k=(0,f.dataPath)("routing.json"),l=(0,f.dataPath)("contacts.json"),m=(0,f.dataPath)("runs.json"),n=globalThis,o=n.__opsBus??(n.__opsBus=function(){let a=new e.EventEmitter;return a.setMaxListeners(0),a}());async function p(){await d.promises.mkdir(h,{recursive:!0})}async function q(a,b){try{await p();let b=await d.promises.readFile(a,"utf8");return JSON.parse(b)}catch{return b}}async function r(a,b){await p();let c=a+".tmp";await d.promises.writeFile(c,JSON.stringify(b,null,2),"utf8"),await d.promises.rename(c,a)}let s=globalThis,t=s.__opsLocks??(s.__opsLocks=new Map);async function u(a,b){let c=(t.get(a)??Promise.resolve()).then(b,b);return t.set(a,c.catch(()=>{})),c}async function v(a){let b=(await q(i,[])).filter(g).sort((a,b)=>b.timestamp-a.timestamp);return a?.status&&(b=b.filter(b=>b.status===a.status)),a?.limit&&(b=b.slice(0,a.limit)),b}async function w(a,b){let c=await u(i,async()=>{let c=await q(i,[]),d=c.findIndex(b=>b.id===a&&g(b));if(-1===d)return null;let{clientId:e,...f}=b;return c[d]={...c[d],...f},await r(i,c),c[d]});return c&&o.emit("inbox:updated",c),c}async function x(a){let b=(await q(j,[])).filter(g).sort((a,b)=>b.createdAt-a.createdAt);return a?.status&&(b=b.filter(b=>b.status===a.status)),a?.limit&&(b=b.slice(0,a.limit)),b}async function y(a){return(await q(j,[])).find(b=>b.id===a&&g(b))??null}async function z(a){let b={...a,clientId:a.clientId??(0,f.fp)()};await u(j,async()=>{let a=await q(j,[]);a.push(b),await r(j,a)}),o.emit("approval:created",b)}async function A(a,b){let c=await u(j,async()=>{let c=await q(j,[]),d=c.findIndex(b=>b.id===a&&g(b));if(-1===d)return null;let{clientId:e,...f}=b;return c[d]={...c[d],...f},await r(j,c),c[d]});return c&&o.emit("approval:updated",c),c}async function B(){return(await q(k,[])).filter(g)}async function C(a){let b=(0,f.fp)(),c=(await q(k,[])).filter(a=>(a.clientId??"default")!==b),d=a.map(a=>({...a,clientId:b}));await r(k,[...c,...d])}async function D(){return(await q(l,[])).filter(g)}async function E(a){let b=(0,f.fp)(),c=(await q(l,[])).filter(a=>(a.clientId??"default")!==b),d=a.map(a=>({...a,clientId:b}));await r(l,[...c,...d])}async function F(a){let b=(await q(m,[])).filter(g).sort((a,b)=>b.startedAt-a.startedAt);return a?.limit?b.slice(0,a.limit):b}},86439:a=>{"use strict";a.exports=require("next/dist/shared/lib/no-fallback-error.external")},94735:a=>{"use strict";a.exports=require("events")},96487:()=>{},97964:(a,b,c)=>{"use strict";c.r(b),c.d(b,{handler:()=>J,patchFetch:()=>I,routeModule:()=>E,serverHooks:()=>H,workAsyncStorage:()=>F,workUnitAsyncStorage:()=>G});var d={};c.r(d),c.d(d,{POST:()=>D,dynamic:()=>B,runtime:()=>A});var e=c(95736),f=c(9117),g=c(4044),h=c(39326),i=c(32324),j=c(261),k=c(54290),l=c(85328),m=c(38928),n=c(46595),o=c(3421),p=c(17679),q=c(41681),r=c(63446),s=c(86439),t=c(51356),u=c(10641),v=c(86433),w=c(89004),x=c(7506),y=c(11702),z=c(57477);let A="nodejs",B="force-dynamic",C=/^[a-z0-9](?:[a-z0-9-]{0,58}[a-z0-9])?$/;async function D(a){let b,c=Date.now(),d={};try{d=await a.json()}catch{return u.NextResponse.json({ok:!1,error:"Invalid JSON body"},{status:400})}if("string"!=typeof d.clientId||!C.test(d.clientId))return u.NextResponse.json({ok:!1,error:"clientId required (slug)"},{status:400});let e=d.clientId,f="number"==typeof d.days&&Number.isFinite(d.days)?Math.max(1,d.days):14,g=await (0,w.b_)(e);if(!g)return u.NextResponse.json({ok:!1,error:`No manifest for "${e}".`},{status:404});let h=await (0,y.AU)("cx",e);if(h)return h;let i=Date.now()-24*f*36e5,[j,k,l]=await Promise.all([(0,v.ny)().catch(()=>[]),(0,v.P8)().catch(()=>[]),(0,v.v)().catch(()=>[])]),m=l.filter(a=>(a.startedAt??0)>i),n=k.filter(a=>"pending"===a.status),o=j.length,p=0;if(await (0,z.xB)(e)){let a=await (0,z.zG)(e,"04_Operations/escalations.md");a.ok&&(p=(a.body.match(/^## .+? — escalate to /gm)??[]).length)}let q=[],r=Math.min(40,3*m.length);q.push({name:"agent-activity",raw:m.length,weight:40,contribution:r,note:`${m.length} agent runs in last ${f}d`}),q.push({name:"inbox-depth",raw:o,weight:20,contribution:o>50?-20:o>20?-10:0,note:o>50?"deep inbox — comms stale":o>20?"moderate inbox depth":"inbox tidy"});let s=n.filter(a=>Date.now()-(a.createdAt??0)>6048e5).length;q.push({name:"approval-backlog",raw:s,weight:15,contribution:s>5?-15:s>2?-8:0,note:`${s} approval${1===s?"":"s"} waiting >7 days`});let t=p>5?-20:p>2?-10:0;q.push({name:"escalations",raw:p,weight:20,contribution:t,note:`${p} escalation${1===p?"":"s"} logged total`});let A="active"===g.status?10:"trial"===g.status?0:"prospect"===g.status?-5:"churned"===g.status?-50:0;q.push({name:"license-status",raw:0,weight:10,contribution:A,note:`status: ${g.status??"unknown"}`});let B=Math.max(0,Math.min(100,50+q.reduce((a,b)=>a+b.contribution,0)));b=B>=80?"green":B>=50?"amber":"red";let D=[];return p>5&&D.push("High escalation rate — Delivery should weekly-brief on the active escalations."),s>5&&D.push("Stale approvals piling up — review the approval policy with the customer."),0===m.length&&D.push("No agent activity in window — Champion should DM the Champion to check."),"trial"===g.status&&B<60&&D.push("Trial customer with <60 health — risk of not converting. Onboarding should drive a Day-30 milestone."),0===D.length&&D.push("Healthy. Consider expansion conversation in next QBR."),await (0,x.sb)({ts:new Date().toISOString(),agent:"cx.health_score",clientId:e,outcome:"ok",durationMs:Date.now()-c,inputSummary:{days:f,score:B,band:b,signalCount:q.length}}),u.NextResponse.json({ok:!0,clientId:e,displayName:g.display_name,window:{days:f},score:B,band:b,signals:q,recommendations:D,computedAt:new Date().toISOString()})}let E=new e.AppRouteRouteModule({definition:{kind:f.RouteKind.APP_ROUTE,page:"/api/cx/health-score/route",pathname:"/api/cx/health-score",filename:"route",bundlePath:"app/api/cx/health-score/route"},distDir:".next",relativeProjectDir:"",resolvedPagePath:"/Users/muiezmakkawi/Documents/LeedAB-OS/apps/console/app/api/cx/health-score/route.ts",nextConfigOutput:"standalone",userland:d}),{workAsyncStorage:F,workUnitAsyncStorage:G,serverHooks:H}=E;function I(){return(0,g.patchFetch)({workAsyncStorage:F,workUnitAsyncStorage:G})}async function J(a,b,c){var d;let e="/api/cx/health-score/route";"/index"===e&&(e="/");let g=await E.prepare(a,b,{srcPage:e,multiZoneDraftMode:!1});if(!g)return b.statusCode=400,b.end("Bad Request"),null==c.waitUntil||c.waitUntil.call(c,Promise.resolve()),null;let{buildId:u,params:v,nextConfig:w,isDraftMode:x,prerenderManifest:y,routerServerContext:z,isOnDemandRevalidate:A,revalidateOnlyGenerated:B,resolvedPathname:C}=g,D=(0,j.normalizeAppPath)(e),F=!!(y.dynamicRoutes[D]||y.routes[C]);if(F&&!x){let a=!!y.routes[C],b=y.dynamicRoutes[D];if(b&&!1===b.fallback&&!a)throw new s.NoFallbackError}let G=null;!F||E.isDev||x||(G="/index"===(G=C)?"/":G);let H=!0===E.isDev||!F,I=F&&!H,J=a.method||"GET",K=(0,i.getTracer)(),L=K.getActiveScopeSpan(),M={params:v,prerenderManifest:y,renderOpts:{experimental:{cacheComponents:!!w.experimental.cacheComponents,authInterrupts:!!w.experimental.authInterrupts},supportsDynamicResponse:H,incrementalCache:(0,h.getRequestMeta)(a,"incrementalCache"),cacheLifeProfiles:null==(d=w.experimental)?void 0:d.cacheLife,isRevalidate:I,waitUntil:c.waitUntil,onClose:a=>{b.on("close",a)},onAfterTaskError:void 0,onInstrumentationRequestError:(b,c,d)=>E.onRequestError(a,b,d,z)},sharedContext:{buildId:u}},N=new k.NodeNextRequest(a),O=new k.NodeNextResponse(b),P=l.NextRequestAdapter.fromNodeNextRequest(N,(0,l.signalFromNodeResponse)(b));try{let d=async c=>E.handle(P,M).finally(()=>{if(!c)return;c.setAttributes({"http.status_code":b.statusCode,"next.rsc":!1});let d=K.getRootSpanAttributes();if(!d)return;if(d.get("next.span_type")!==m.BaseServerSpan.handleRequest)return void console.warn(`Unexpected root span type '${d.get("next.span_type")}'. Please report this Next.js issue https://github.com/vercel/next.js`);let e=d.get("next.route");if(e){let a=`${J} ${e}`;c.setAttributes({"next.route":e,"http.route":e,"next.span_name":a}),c.updateName(a)}else c.updateName(`${J} ${a.url}`)}),g=async g=>{var i,j;let k=async({previousCacheEntry:f})=>{try{if(!(0,h.getRequestMeta)(a,"minimalMode")&&A&&B&&!f)return b.statusCode=404,b.setHeader("x-nextjs-cache","REVALIDATED"),b.end("This page could not be found"),null;let e=await d(g);a.fetchMetrics=M.renderOpts.fetchMetrics;let i=M.renderOpts.pendingWaitUntil;i&&c.waitUntil&&(c.waitUntil(i),i=void 0);let j=M.renderOpts.collectedTags;if(!F)return await (0,o.I)(N,O,e,M.renderOpts.pendingWaitUntil),null;{let a=await e.blob(),b=(0,p.toNodeOutgoingHttpHeaders)(e.headers);j&&(b[r.NEXT_CACHE_TAGS_HEADER]=j),!b["content-type"]&&a.type&&(b["content-type"]=a.type);let c=void 0!==M.renderOpts.collectedRevalidate&&!(M.renderOpts.collectedRevalidate>=r.INFINITE_CACHE)&&M.renderOpts.collectedRevalidate,d=void 0===M.renderOpts.collectedExpire||M.renderOpts.collectedExpire>=r.INFINITE_CACHE?void 0:M.renderOpts.collectedExpire;return{value:{kind:t.CachedRouteKind.APP_ROUTE,status:e.status,body:Buffer.from(await a.arrayBuffer()),headers:b},cacheControl:{revalidate:c,expire:d}}}}catch(b){throw(null==f?void 0:f.isStale)&&await E.onRequestError(a,b,{routerKind:"App Router",routePath:e,routeType:"route",revalidateReason:(0,n.c)({isRevalidate:I,isOnDemandRevalidate:A})},z),b}},l=await E.handleResponse({req:a,nextConfig:w,cacheKey:G,routeKind:f.RouteKind.APP_ROUTE,isFallback:!1,prerenderManifest:y,isRoutePPREnabled:!1,isOnDemandRevalidate:A,revalidateOnlyGenerated:B,responseGenerator:k,waitUntil:c.waitUntil});if(!F)return null;if((null==l||null==(i=l.value)?void 0:i.kind)!==t.CachedRouteKind.APP_ROUTE)throw Object.defineProperty(Error(`Invariant: app-route received invalid cache entry ${null==l||null==(j=l.value)?void 0:j.kind}`),"__NEXT_ERROR_CODE",{value:"E701",enumerable:!1,configurable:!0});(0,h.getRequestMeta)(a,"minimalMode")||b.setHeader("x-nextjs-cache",A?"REVALIDATED":l.isMiss?"MISS":l.isStale?"STALE":"HIT"),x&&b.setHeader("Cache-Control","private, no-cache, no-store, max-age=0, must-revalidate");let m=(0,p.fromNodeOutgoingHttpHeaders)(l.value.headers);return(0,h.getRequestMeta)(a,"minimalMode")&&F||m.delete(r.NEXT_CACHE_TAGS_HEADER),!l.cacheControl||b.getHeader("Cache-Control")||m.get("Cache-Control")||m.set("Cache-Control",(0,q.getCacheControlHeader)(l.cacheControl)),await (0,o.I)(N,O,new Response(l.value.body,{headers:m,status:l.value.status||200})),null};L?await g(L):await K.withPropagatedContext(a.headers,()=>K.trace(m.BaseServerSpan.handleRequest,{spanName:`${J} ${a.url}`,kind:i.SpanKind.SERVER,attributes:{"http.method":J,"http.target":a.url}},g))}catch(b){if(b instanceof s.NoFallbackError||await E.onRequestError(a,b,{routerKind:"App Router",routePath:D,routeType:"route",revalidateReason:(0,n.c)({isRevalidate:I,isOnDemandRevalidate:A})}),F)throw b;return await (0,o.I)(N,O,new Response(null,{status:500})),null}}}};var b=require("../../../../webpack-runtime.js");b.C(a);var c=b.X(0,[5873,1692,897],()=>b(b.s=97964));module.exports=c})();
1
+ (()=>{var a={};a.id=1057,a.ids=[1057],a.modules={261:a=>{"use strict";a.exports=require("next/dist/shared/lib/router/utils/app-paths")},3295:a=>{"use strict";a.exports=require("next/dist/server/app-render/after-task-async-storage.external.js")},7506:(a,b,c)=>{"use strict";c.d(b,{sb:()=>j});var d=c(73024),e=c(76760),f=c.n(e),g=c(57477);let h=/^[a-z0-9](?:[a-z0-9-]{0,58}[a-z0-9])?$/,i=/^[a-z][a-z0-9_]{1,40}\.[a-z][a-z0-9_]{1,40}$/;async function j(a){try{if(!h.test(a.clientId))return{ok:!1,error:`Invalid clientId: ${a.clientId}`};if(!i.test(a.agent))return{ok:!1,error:`Invalid agent format: ${a.agent} (expected agent.tool)`};if(!await (0,g.xB)(a.clientId))return{ok:!1,error:`No brain for ${a.clientId} — audit not written`};let b={...a,inputSummary:function(a){if(!a)return;let b={};for(let[c,d]of Object.entries(a))"string"==typeof d?b[c]=d.length>200?`${d.slice(0,200)}…[+${d.length-200} chars]`:d:"number"==typeof d||"boolean"==typeof d||null===d?b[c]=d:Array.isArray(d)?b[c]=`[array length=${d.length}]`:"object"==typeof d?b[c]=`[object keys=${Object.keys(d).length}]`:b[c]=`[${typeof d}]`;return b}(a.inputSummary)},c=function(a,b){let c=`${b.getUTCFullYear()}-${String(b.getUTCMonth()+1).padStart(2,"0")}`;return f().join((0,g.Ip)(a),"_inbox",`audit-${c}.jsonl`)}(a.clientId,new Date(a.ts));await d.promises.mkdir(f().dirname(c),{recursive:!0});let e=JSON.stringify(b)+"\n";return await d.promises.appendFile(c,e,"utf8"),{ok:!0,path:c,bytes:Buffer.byteLength(e,"utf8")}}catch(a){return{ok:!1,error:a.message}}}},10846:a=>{"use strict";a.exports=require("next/dist/compiled/next-server/app-page.runtime.prod.js")},11702:(a,b,c)=>{"use strict";c.d(b,{AU:()=>h,xH:()=>g});var d=c(10641),e=c(90897);function f(a){return a.ok?null:"agentId"in a?d.NextResponse.json({error:a.error,message:a.message,clientId:a.clientId,agentId:a.agentId},{status:a.status}):"reason"in a&&void 0!==a.reason?d.NextResponse.json({error:a.error,reason:a.reason,message:a.message},{status:a.status}):d.NextResponse.json({error:a.error,message:a.message},{status:a.status})}async function g(){return f(await (0,e.b)())}async function h(a,b){return f(await (0,e.s)(a,b))}},19121:a=>{"use strict";a.exports=require("next/dist/server/app-render/action-async-storage.external.js")},29021:a=>{"use strict";a.exports=require("fs")},29294:a=>{"use strict";a.exports=require("next/dist/server/app-render/work-async-storage.external.js")},33873:a=>{"use strict";a.exports=require("path")},44870:a=>{"use strict";a.exports=require("next/dist/compiled/next-server/app-route.runtime.prod.js")},48161:a=>{"use strict";a.exports=require("node:os")},57477:(a,b,c)=>{"use strict";c.d(b,{B0:()=>t,Ip:()=>k,T8:()=>q,_T:()=>p,dR:()=>r,mx:()=>o,nj:()=>v,st:()=>s,xB:()=>l,yv:()=>u,zG:()=>n,zY:()=>w});var d=c(73024),e=c(76760),f=c.n(e),g=c(48161),h=c.n(g);let i=/^[a-z0-9](?:[a-z0-9-]{0,58}[a-z0-9])?$/,j=["_inbox/","_Workflows/","00_Org/","01_Customers/","02_Sales/","03_Product/","04_Operations/","05_Finance/","06_Legal/","Permanent/","Wiki/"];function k(a){if(!i.test(a))throw Error(`Invalid clientId: ${a}`);return f().join(process.env.LEEDAB_BRAINS_ROOT?f().resolve(process.env.LEEDAB_BRAINS_ROOT):f().resolve(h().homedir(),"leedab-brains"),a)}async function l(a){try{return(await d.promises.stat(k(a))).isDirectory()}catch{return!1}}function m(a,b){if(b.includes("..")||f().isAbsolute(b))throw Error(`Refused: path contains traversal or is absolute: ${b}`);if(!j.some(a=>b.startsWith(a)))throw Error(`Refused: path "${b}" doesn't start with an allowed prefix (${j.join(", ")})`);let c=k(a),d=f().resolve(c,b);if(!d.startsWith(c+f().sep))throw Error(`Refused: path resolves outside brain root: ${b}`);return d}async function n(a,b){try{if(!await l(a))return{ok:!1,error:`No brain at ${k(a)}. Run bin/onboard-customer.sh first.`};let c=m(a,b),e=await d.promises.readFile(c,"utf8");return{ok:!0,body:e,path:c}}catch(a){return{ok:!1,error:a.message}}}async function o(a,b,c){try{if(!await l(a))return{ok:!1,error:`No brain at ${k(a)}. Run bin/onboard-customer.sh first.`};let e=m(a,b);return await d.promises.mkdir(f().dirname(e),{recursive:!0}),await d.promises.writeFile(e,c,"utf8"),{ok:!0,path:e,bytes:Buffer.byteLength(c,"utf8")}}catch(a){return{ok:!1,error:a.message}}}async function p(a,b,c={}){try{if(!await l(a))return{ok:!1,error:`No brain at ${k(a)}.`};let e=b.endsWith("/")?b:b+"/",g=m(a,e+"__list_sentinel__"),h=f().dirname(g),i=[];try{i=await d.promises.readdir(h)}catch{return{ok:!0,entries:[]}}let j=c.extension??".md",n=c.sinceISO?Date.parse(c.sinceISO):0,o=[];for(let a of i){if(j&&!a.endsWith(j))continue;let b=f().join(h,a),c=await d.promises.stat(b);c.isFile()&&(n&&c.mtimeMs<n||o.push({relativePath:e+a,absolutePath:b,bytes:c.size,modifiedISO:new Date(c.mtimeMs).toISOString()}))}return o.sort((a,b)=>Date.parse(b.modifiedISO)-Date.parse(a.modifiedISO)),{ok:!0,entries:c.limit?o.slice(0,c.limit):o}}catch(a){return{ok:!1,error:a.message}}}async function q(a,b,c){try{if(!await l(a))return{ok:!1,error:`No brain at ${k(a)}. Run bin/onboard-customer.sh first.`};let e=m(a,b);await d.promises.mkdir(f().dirname(e),{recursive:!0});let g="";try{let a=await d.promises.readFile(e,"utf8");a.length>0&&!a.endsWith("\n")&&(g="\n")}catch{}return await d.promises.appendFile(e,g+c,"utf8"),{ok:!0,path:e,bytes:Buffer.byteLength(g+c,"utf8")}}catch(a){return{ok:!1,error:a.message}}}function r(){return new Date().toISOString().slice(0,10)}function s(){return new Date().toISOString()}function t(a){return a.toLowerCase().replace(/[^a-z0-9]+/g,"-").replace(/^-+|-+$/g,"").slice(0,60)}function u(a){if(!a.startsWith("---\n")&&!a.startsWith("---\r\n"))return{frontmatter:{},body:a};let b=a.indexOf("\n---",4);if(-1===b)return{frontmatter:{},body:a};let c=a.slice(4,b),d=a.slice(b+4).replace(/^\r?\n/,""),e={},f=null,g=[],h=()=>{null!==f&&(e[f]=[...g],g.length=0,f=null)};for(let a of c.split(/\r?\n/)){if(""===a.trim())continue;let b=a.match(/^\s*-\s+(.*)$/);if(b&&null!==f){let a=b[1].trim(),c=a.startsWith('"')&&a.endsWith('"')||a.startsWith("'")&&a.endsWith("'")?a.slice(1,-1):a;g.push(c);continue}let c=a.match(/^([A-Za-z0-9_\-.]+)\s*:\s*(.*)$/);if(c){h();let a=c[1],b=c[2];if(""===b){f=a;continue}e[a]=function(a){let b=a.trim();if(""===b||"null"===b||"~"===b)return null;if("true"===b)return!0;if("false"===b)return!1;if(b.startsWith('"')&&b.endsWith('"'))return b.slice(1,-1).replace(/\\"/g,'"').replace(/\\\\/g,"\\");if(b.startsWith("'")&&b.endsWith("'"))return b.slice(1,-1).replace(/\\'/g,"'");if(b.startsWith("[")&&b.endsWith("]")){let a=b.slice(1,-1).trim();return a?a.split(/\s*,\s*/).map(a=>{let b=a.trim();return b.startsWith('"')&&b.endsWith('"')||b.startsWith("'")&&b.endsWith("'")?b.slice(1,-1):b}):[]}return/^-?\d+$/.test(b)||/^-?\d*\.\d+$/.test(b)?Number(b):b}(b)}}return h(),{frontmatter:e,body:d}}function v(a,b){let c=Object.keys(a);if(0===c.length)return b.startsWith("---"),b;let d=["---"];for(let b of c){var e;d.push(`${b}: ${null===(e=a[b])?"null":"boolean"==typeof e||"number"==typeof e?String(e):Array.isArray(e)?"["+e.map(a=>/[,\s:#]/.test(a)?`"${a.replace(/"/g,'\\"')}"`:a).join(", ")+"]":""===e||/^[\d\s]/.test(e)||/[:#\n"']/.test(e)||"true"===e||"false"===e||"null"===e||"~"===e?`"${e.replace(/"/g,'\\"')}"`:e}`)}return d.push("---",""),d.join("\n")+b.replace(/^\n+/,"")}function w(a){if(!a||"object"!=typeof a||Array.isArray(a))return{ok:!1,error:"patch must be a flat object"};let b={};for(let[c,d]of Object.entries(a)){if(!/^[A-Za-z0-9_\-.]+$/.test(c))return{ok:!1,error:`invalid frontmatter key "${c}" (allowed: letters / digits / _ - .)`};if(null===d||"string"==typeof d||"number"==typeof d||"boolean"==typeof d)b[c]=d;else{if(!(Array.isArray(d)&&d.every(a=>"string"==typeof a)))return{ok:!1,error:`value for "${c}" must be string / number / boolean / null / string[] — got ${typeof d}`};b[c]=d}}return{ok:!0,patch:b}}},63033:a=>{"use strict";a.exports=require("next/dist/server/app-render/work-unit-async-storage.external.js")},73024:a=>{"use strict";a.exports=require("node:fs")},76760:a=>{"use strict";a.exports=require("node:path")},77598:a=>{"use strict";a.exports=require("node:crypto")},78335:()=>{},79748:a=>{"use strict";a.exports=require("fs/promises")},86433:(a,b,c)=>{"use strict";c.d(b,{$A:()=>o,Iu:()=>C,Jc:()=>E,LP:()=>H,P8:()=>x,PF:()=>I,PH:()=>B,Qh:()=>w,WT:()=>z,ah:()=>G,h5:()=>A,ik:()=>D,ny:()=>v,v:()=>F,wr:()=>y});var d=c(29021),e=c(94735),f=c(22709);function g(a){let b=(0,f.fp)();return(a.clientId??"default")===b}let h=f.uV,i=(0,f.dataPath)("inbox.json"),j=(0,f.dataPath)("approvals.json"),k=(0,f.dataPath)("routing.json"),l=(0,f.dataPath)("contacts.json"),m=(0,f.dataPath)("runs.json"),n=globalThis,o=n.__opsBus??(n.__opsBus=function(){let a=new e.EventEmitter;return a.setMaxListeners(0),a}());async function p(){await d.promises.mkdir(h,{recursive:!0})}async function q(a,b){try{await p();let b=await d.promises.readFile(a,"utf8");return JSON.parse(b)}catch{return b}}async function r(a,b){await p();let c=a+".tmp";await d.promises.writeFile(c,JSON.stringify(b,null,2),"utf8"),await d.promises.rename(c,a)}let s=globalThis,t=s.__opsLocks??(s.__opsLocks=new Map);async function u(a,b){let c=(t.get(a)??Promise.resolve()).then(b,b);return t.set(a,c.catch(()=>{})),c}async function v(a){let b=(await q(i,[])).filter(g).sort((a,b)=>b.timestamp-a.timestamp);return a?.status&&(b=b.filter(b=>b.status===a.status)),a?.limit&&(b=b.slice(0,a.limit)),b}async function w(a,b){let c=await u(i,async()=>{let c=await q(i,[]),d=c.findIndex(b=>b.id===a&&g(b));if(-1===d)return null;let{clientId:e,...f}=b;return c[d]={...c[d],...f},await r(i,c),c[d]});return c&&o.emit("inbox:updated",c),c}async function x(a){let b=(await q(j,[])).filter(g).sort((a,b)=>b.createdAt-a.createdAt);return a?.status&&(b=b.filter(b=>b.status===a.status)),a?.limit&&(b=b.slice(0,a.limit)),b}async function y(a){return(await q(j,[])).find(b=>b.id===a&&g(b))??null}async function z(a){let b={...a,clientId:a.clientId??(0,f.fp)()};await u(j,async()=>{let a=await q(j,[]);a.push(b),await r(j,a)}),o.emit("approval:created",b)}async function A(a,b){let c=await u(j,async()=>{let c=await q(j,[]),d=c.findIndex(b=>b.id===a&&g(b));if(-1===d)return null;let{clientId:e,...f}=b;return c[d]={...c[d],...f},await r(j,c),c[d]});return c&&o.emit("approval:updated",c),c}async function B(){return(await q(k,[])).filter(g)}async function C(a){let b=(0,f.fp)(),c=(await q(k,[])).filter(a=>(a.clientId??"default")!==b),d=a.map(a=>({...a,clientId:b}));await r(k,[...c,...d])}async function D(){return(await q(l,[])).filter(g)}async function E(a){let b=(0,f.fp)(),c=(await q(l,[])).filter(a=>(a.clientId??"default")!==b),d=a.map(a=>({...a,clientId:b}));await r(l,[...c,...d])}async function F(a){let b=(await q(m,[])).filter(g).sort((a,b)=>b.startedAt-a.startedAt);return a?.limit?b.slice(0,a.limit):b}async function G(a){let b={...a,clientId:a.clientId??(0,f.fp)()};await u(m,async()=>{let a=await q(m,[]);a.push(b),a.length>5e3&&a.splice(0,a.length-5e3),await r(m,a)}),o.emit("run:created",b)}async function H(a){if(0===a.length)return 0;let b=0,c=0,d=[];for(let e of(await u(m,async()=>{let e=await q(m,[]),g=new Map(e.map((a,b)=>[a.id,b]));for(let h of a){let a=g.get(h.id);if(void 0!==a){let b=e[a],d=null;h.sessionId&&!b.sessionId&&(d={...d??{},sessionId:h.sessionId}),h.agentId&&"coo"!==h.agentId&&"coo"===b.agentId&&(d={...d??{},agentId:h.agentId}),d&&(e[a]={...b,...d},c++);continue}let i={...h,clientId:h.clientId??(0,f.fp)()};e.push(i),d.push(i),g.set(h.id,e.length-1),b++}(0!==b||0!==c)&&(e.length>5e3&&e.splice(0,e.length-5e3),await r(m,e))}),d))o.emit("run:created",e);return b}async function I(a,b){let c=await u(m,async()=>{let c=await q(m,[]),d=c.findIndex(b=>b.id===a&&g(b));if(-1===d)return null;let{clientId:e,...f}=b;return c[d]={...c[d],...f},await r(m,c),c[d]});return c&&o.emit("run:updated",c),c}},86439:a=>{"use strict";a.exports=require("next/dist/shared/lib/no-fallback-error.external")},94735:a=>{"use strict";a.exports=require("events")},96487:()=>{},97964:(a,b,c)=>{"use strict";c.r(b),c.d(b,{handler:()=>J,patchFetch:()=>I,routeModule:()=>E,serverHooks:()=>H,workAsyncStorage:()=>F,workUnitAsyncStorage:()=>G});var d={};c.r(d),c.d(d,{POST:()=>D,dynamic:()=>B,runtime:()=>A});var e=c(95736),f=c(9117),g=c(4044),h=c(39326),i=c(32324),j=c(261),k=c(54290),l=c(85328),m=c(38928),n=c(46595),o=c(3421),p=c(17679),q=c(41681),r=c(63446),s=c(86439),t=c(51356),u=c(10641),v=c(86433),w=c(89004),x=c(7506),y=c(11702),z=c(57477);let A="nodejs",B="force-dynamic",C=/^[a-z0-9](?:[a-z0-9-]{0,58}[a-z0-9])?$/;async function D(a){let b,c=Date.now(),d={};try{d=await a.json()}catch{return u.NextResponse.json({ok:!1,error:"Invalid JSON body"},{status:400})}if("string"!=typeof d.clientId||!C.test(d.clientId))return u.NextResponse.json({ok:!1,error:"clientId required (slug)"},{status:400});let e=d.clientId,f="number"==typeof d.days&&Number.isFinite(d.days)?Math.max(1,d.days):14,g=await (0,w.b_)(e);if(!g)return u.NextResponse.json({ok:!1,error:`No manifest for "${e}".`},{status:404});let h=await (0,y.AU)("cx",e);if(h)return h;let i=Date.now()-24*f*36e5,[j,k,l]=await Promise.all([(0,v.ny)().catch(()=>[]),(0,v.P8)().catch(()=>[]),(0,v.v)().catch(()=>[])]),m=l.filter(a=>(a.startedAt??0)>i),n=k.filter(a=>"pending"===a.status),o=j.length,p=0;if(await (0,z.xB)(e)){let a=await (0,z.zG)(e,"04_Operations/escalations.md");a.ok&&(p=(a.body.match(/^## .+? — escalate to /gm)??[]).length)}let q=[],r=Math.min(40,3*m.length);q.push({name:"agent-activity",raw:m.length,weight:40,contribution:r,note:`${m.length} agent runs in last ${f}d`}),q.push({name:"inbox-depth",raw:o,weight:20,contribution:o>50?-20:o>20?-10:0,note:o>50?"deep inbox — comms stale":o>20?"moderate inbox depth":"inbox tidy"});let s=n.filter(a=>Date.now()-(a.createdAt??0)>6048e5).length;q.push({name:"approval-backlog",raw:s,weight:15,contribution:s>5?-15:s>2?-8:0,note:`${s} approval${1===s?"":"s"} waiting >7 days`});let t=p>5?-20:p>2?-10:0;q.push({name:"escalations",raw:p,weight:20,contribution:t,note:`${p} escalation${1===p?"":"s"} logged total`});let A="active"===g.status?10:"trial"===g.status?0:"prospect"===g.status?-5:"churned"===g.status?-50:0;q.push({name:"license-status",raw:0,weight:10,contribution:A,note:`status: ${g.status??"unknown"}`});let B=Math.max(0,Math.min(100,50+q.reduce((a,b)=>a+b.contribution,0)));b=B>=80?"green":B>=50?"amber":"red";let D=[];return p>5&&D.push("High escalation rate — Delivery should weekly-brief on the active escalations."),s>5&&D.push("Stale approvals piling up — review the approval policy with the customer."),0===m.length&&D.push("No agent activity in window — Champion should DM the Champion to check."),"trial"===g.status&&B<60&&D.push("Trial customer with <60 health — risk of not converting. Onboarding should drive a Day-30 milestone."),0===D.length&&D.push("Healthy. Consider expansion conversation in next QBR."),await (0,x.sb)({ts:new Date().toISOString(),agent:"cx.health_score",clientId:e,outcome:"ok",durationMs:Date.now()-c,inputSummary:{days:f,score:B,band:b,signalCount:q.length}}),u.NextResponse.json({ok:!0,clientId:e,displayName:g.display_name,window:{days:f},score:B,band:b,signals:q,recommendations:D,computedAt:new Date().toISOString()})}let E=new e.AppRouteRouteModule({definition:{kind:f.RouteKind.APP_ROUTE,page:"/api/cx/health-score/route",pathname:"/api/cx/health-score",filename:"route",bundlePath:"app/api/cx/health-score/route"},distDir:".next",relativeProjectDir:"",resolvedPagePath:"/Users/muiezmakkawi/Documents/LeedAB-OS/apps/console/app/api/cx/health-score/route.ts",nextConfigOutput:"standalone",userland:d}),{workAsyncStorage:F,workUnitAsyncStorage:G,serverHooks:H}=E;function I(){return(0,g.patchFetch)({workAsyncStorage:F,workUnitAsyncStorage:G})}async function J(a,b,c){var d;let e="/api/cx/health-score/route";"/index"===e&&(e="/");let g=await E.prepare(a,b,{srcPage:e,multiZoneDraftMode:!1});if(!g)return b.statusCode=400,b.end("Bad Request"),null==c.waitUntil||c.waitUntil.call(c,Promise.resolve()),null;let{buildId:u,params:v,nextConfig:w,isDraftMode:x,prerenderManifest:y,routerServerContext:z,isOnDemandRevalidate:A,revalidateOnlyGenerated:B,resolvedPathname:C}=g,D=(0,j.normalizeAppPath)(e),F=!!(y.dynamicRoutes[D]||y.routes[C]);if(F&&!x){let a=!!y.routes[C],b=y.dynamicRoutes[D];if(b&&!1===b.fallback&&!a)throw new s.NoFallbackError}let G=null;!F||E.isDev||x||(G="/index"===(G=C)?"/":G);let H=!0===E.isDev||!F,I=F&&!H,J=a.method||"GET",K=(0,i.getTracer)(),L=K.getActiveScopeSpan(),M={params:v,prerenderManifest:y,renderOpts:{experimental:{cacheComponents:!!w.experimental.cacheComponents,authInterrupts:!!w.experimental.authInterrupts},supportsDynamicResponse:H,incrementalCache:(0,h.getRequestMeta)(a,"incrementalCache"),cacheLifeProfiles:null==(d=w.experimental)?void 0:d.cacheLife,isRevalidate:I,waitUntil:c.waitUntil,onClose:a=>{b.on("close",a)},onAfterTaskError:void 0,onInstrumentationRequestError:(b,c,d)=>E.onRequestError(a,b,d,z)},sharedContext:{buildId:u}},N=new k.NodeNextRequest(a),O=new k.NodeNextResponse(b),P=l.NextRequestAdapter.fromNodeNextRequest(N,(0,l.signalFromNodeResponse)(b));try{let d=async c=>E.handle(P,M).finally(()=>{if(!c)return;c.setAttributes({"http.status_code":b.statusCode,"next.rsc":!1});let d=K.getRootSpanAttributes();if(!d)return;if(d.get("next.span_type")!==m.BaseServerSpan.handleRequest)return void console.warn(`Unexpected root span type '${d.get("next.span_type")}'. Please report this Next.js issue https://github.com/vercel/next.js`);let e=d.get("next.route");if(e){let a=`${J} ${e}`;c.setAttributes({"next.route":e,"http.route":e,"next.span_name":a}),c.updateName(a)}else c.updateName(`${J} ${a.url}`)}),g=async g=>{var i,j;let k=async({previousCacheEntry:f})=>{try{if(!(0,h.getRequestMeta)(a,"minimalMode")&&A&&B&&!f)return b.statusCode=404,b.setHeader("x-nextjs-cache","REVALIDATED"),b.end("This page could not be found"),null;let e=await d(g);a.fetchMetrics=M.renderOpts.fetchMetrics;let i=M.renderOpts.pendingWaitUntil;i&&c.waitUntil&&(c.waitUntil(i),i=void 0);let j=M.renderOpts.collectedTags;if(!F)return await (0,o.I)(N,O,e,M.renderOpts.pendingWaitUntil),null;{let a=await e.blob(),b=(0,p.toNodeOutgoingHttpHeaders)(e.headers);j&&(b[r.NEXT_CACHE_TAGS_HEADER]=j),!b["content-type"]&&a.type&&(b["content-type"]=a.type);let c=void 0!==M.renderOpts.collectedRevalidate&&!(M.renderOpts.collectedRevalidate>=r.INFINITE_CACHE)&&M.renderOpts.collectedRevalidate,d=void 0===M.renderOpts.collectedExpire||M.renderOpts.collectedExpire>=r.INFINITE_CACHE?void 0:M.renderOpts.collectedExpire;return{value:{kind:t.CachedRouteKind.APP_ROUTE,status:e.status,body:Buffer.from(await a.arrayBuffer()),headers:b},cacheControl:{revalidate:c,expire:d}}}}catch(b){throw(null==f?void 0:f.isStale)&&await E.onRequestError(a,b,{routerKind:"App Router",routePath:e,routeType:"route",revalidateReason:(0,n.c)({isRevalidate:I,isOnDemandRevalidate:A})},z),b}},l=await E.handleResponse({req:a,nextConfig:w,cacheKey:G,routeKind:f.RouteKind.APP_ROUTE,isFallback:!1,prerenderManifest:y,isRoutePPREnabled:!1,isOnDemandRevalidate:A,revalidateOnlyGenerated:B,responseGenerator:k,waitUntil:c.waitUntil});if(!F)return null;if((null==l||null==(i=l.value)?void 0:i.kind)!==t.CachedRouteKind.APP_ROUTE)throw Object.defineProperty(Error(`Invariant: app-route received invalid cache entry ${null==l||null==(j=l.value)?void 0:j.kind}`),"__NEXT_ERROR_CODE",{value:"E701",enumerable:!1,configurable:!0});(0,h.getRequestMeta)(a,"minimalMode")||b.setHeader("x-nextjs-cache",A?"REVALIDATED":l.isMiss?"MISS":l.isStale?"STALE":"HIT"),x&&b.setHeader("Cache-Control","private, no-cache, no-store, max-age=0, must-revalidate");let m=(0,p.fromNodeOutgoingHttpHeaders)(l.value.headers);return(0,h.getRequestMeta)(a,"minimalMode")&&F||m.delete(r.NEXT_CACHE_TAGS_HEADER),!l.cacheControl||b.getHeader("Cache-Control")||m.get("Cache-Control")||m.set("Cache-Control",(0,q.getCacheControlHeader)(l.cacheControl)),await (0,o.I)(N,O,new Response(l.value.body,{headers:m,status:l.value.status||200})),null};L?await g(L):await K.withPropagatedContext(a.headers,()=>K.trace(m.BaseServerSpan.handleRequest,{spanName:`${J} ${a.url}`,kind:i.SpanKind.SERVER,attributes:{"http.method":J,"http.target":a.url}},g))}catch(b){if(b instanceof s.NoFallbackError||await E.onRequestError(a,b,{routerKind:"App Router",routePath:D,routeType:"route",revalidateReason:(0,n.c)({isRevalidate:I,isOnDemandRevalidate:A})}),F)throw b;return await (0,o.I)(N,O,new Response(null,{status:500})),null}}}};var b=require("../../../../webpack-runtime.js");b.C(a);var c=b.X(0,[5873,1692,897],()=>b(b.s=97964));module.exports=c})();
@@ -1 +1 @@
1
- globalThis.__RSC_MANIFEST=(globalThis.__RSC_MANIFEST||{});globalThis.__RSC_MANIFEST["/api/cx/health-score/route"]={"moduleLoading":{"prefix":"/_next/"},"ssrModuleMapping":{"622":{"*":{"id":"82146","name":"*","chunks":[],"async":false}},"838":{"*":{"id":"62823","name":"*","chunks":[],"async":false}},"1062":{"*":{"id":"38916","name":"*","chunks":[],"async":false}},"1959":{"*":{"id":"31603","name":"*","chunks":[],"async":false}},"3886":{"*":{"id":"75170","name":"*","chunks":[],"async":false}},"4431":{"*":{"id":"12263","name":"*","chunks":[],"async":false}},"5278":{"*":{"id":"78922","name":"*","chunks":[],"async":false}},"7150":{"*":{"id":"54160","name":"*","chunks":[],"async":false}},"7989":{"*":{"id":"68495","name":"*","chunks":[],"async":false}},"8924":{"*":{"id":"29234","name":"*","chunks":[],"async":false}},"9766":{"*":{"id":"77526","name":"*","chunks":[],"async":false}}},"edgeSSRModuleMapping":{},"clientModules":{"/Users/muiezmakkawi/Documents/LeedAB-OS/apps/console/node_modules/next/dist/client/components/builtin/global-error.js":{"id":7150,"name":"*","chunks":[],"async":false},"/Users/muiezmakkawi/Documents/LeedAB-OS/apps/console/node_modules/next/dist/esm/client/components/builtin/global-error.js":{"id":7150,"name":"*","chunks":[],"async":false},"/Users/muiezmakkawi/Documents/LeedAB-OS/apps/console/node_modules/next/dist/client/components/client-page.js":{"id":1959,"name":"*","chunks":[],"async":false},"/Users/muiezmakkawi/Documents/LeedAB-OS/apps/console/node_modules/next/dist/esm/client/components/client-page.js":{"id":1959,"name":"*","chunks":[],"async":false},"/Users/muiezmakkawi/Documents/LeedAB-OS/apps/console/node_modules/next/dist/client/components/client-segment.js":{"id":7989,"name":"*","chunks":[],"async":false},"/Users/muiezmakkawi/Documents/LeedAB-OS/apps/console/node_modules/next/dist/esm/client/components/client-segment.js":{"id":7989,"name":"*","chunks":[],"async":false},"/Users/muiezmakkawi/Documents/LeedAB-OS/apps/console/node_modules/next/dist/client/components/http-access-fallback/error-boundary.js":{"id":3886,"name":"*","chunks":[],"async":false},"/Users/muiezmakkawi/Documents/LeedAB-OS/apps/console/node_modules/next/dist/esm/client/components/http-access-fallback/error-boundary.js":{"id":3886,"name":"*","chunks":[],"async":false},"/Users/muiezmakkawi/Documents/LeedAB-OS/apps/console/node_modules/next/dist/client/components/layout-router.js":{"id":9766,"name":"*","chunks":[],"async":false},"/Users/muiezmakkawi/Documents/LeedAB-OS/apps/console/node_modules/next/dist/esm/client/components/layout-router.js":{"id":9766,"name":"*","chunks":[],"async":false},"/Users/muiezmakkawi/Documents/LeedAB-OS/apps/console/node_modules/next/dist/client/components/metadata/async-metadata.js":{"id":5278,"name":"*","chunks":[],"async":false},"/Users/muiezmakkawi/Documents/LeedAB-OS/apps/console/node_modules/next/dist/esm/client/components/metadata/async-metadata.js":{"id":5278,"name":"*","chunks":[],"async":false},"/Users/muiezmakkawi/Documents/LeedAB-OS/apps/console/node_modules/next/dist/client/components/render-from-template-context.js":{"id":8924,"name":"*","chunks":[],"async":false},"/Users/muiezmakkawi/Documents/LeedAB-OS/apps/console/node_modules/next/dist/esm/client/components/render-from-template-context.js":{"id":8924,"name":"*","chunks":[],"async":false},"/Users/muiezmakkawi/Documents/LeedAB-OS/apps/console/node_modules/next/dist/lib/framework/boundary-components.js":{"id":4431,"name":"*","chunks":[],"async":false},"/Users/muiezmakkawi/Documents/LeedAB-OS/apps/console/node_modules/next/dist/esm/lib/framework/boundary-components.js":{"id":4431,"name":"*","chunks":[],"async":false},"/Users/muiezmakkawi/Documents/LeedAB-OS/apps/console/node_modules/next/dist/lib/metadata/generate/icon-mark.js":{"id":622,"name":"*","chunks":[],"async":false},"/Users/muiezmakkawi/Documents/LeedAB-OS/apps/console/node_modules/next/dist/esm/lib/metadata/generate/icon-mark.js":{"id":622,"name":"*","chunks":[],"async":false},"/Users/muiezmakkawi/Documents/LeedAB-OS/apps/console/node_modules/next/font/google/target.css?{\"path\":\"app/layout.tsx\",\"import\":\"Geist\",\"arguments\":[{\"subsets\":[\"latin\"],\"weight\":[\"300\",\"400\",\"500\",\"600\",\"700\"],\"variable\":\"--font-geist-sans\",\"display\":\"swap\"}],\"variableName\":\"geistSans\"}":{"id":5725,"name":"*","chunks":["7177","static/chunks/app/layout-bd27cc63fde6b953.js"],"async":false},"/Users/muiezmakkawi/Documents/LeedAB-OS/apps/console/node_modules/next/font/google/target.css?{\"path\":\"app/layout.tsx\",\"import\":\"Geist_Mono\",\"arguments\":[{\"subsets\":[\"latin\"],\"weight\":[\"400\",\"500\"],\"variable\":\"--font-geist-mono\",\"display\":\"swap\"}],\"variableName\":\"geistMono\"}":{"id":4485,"name":"*","chunks":["7177","static/chunks/app/layout-bd27cc63fde6b953.js"],"async":false},"/Users/muiezmakkawi/Documents/LeedAB-OS/apps/console/node_modules/next/font/google/target.css?{\"path\":\"app/layout.tsx\",\"import\":\"Instrument_Serif\",\"arguments\":[{\"subsets\":[\"latin\"],\"weight\":\"400\",\"style\":[\"normal\",\"italic\"],\"variable\":\"--font-instrument-serif\",\"display\":\"swap\"}],\"variableName\":\"instrumentSerif\"}":{"id":9919,"name":"*","chunks":["7177","static/chunks/app/layout-bd27cc63fde6b953.js"],"async":false},"/Users/muiezmakkawi/Documents/LeedAB-OS/apps/console/app/globals.css":{"id":1290,"name":"*","chunks":["7177","static/chunks/app/layout-bd27cc63fde6b953.js"],"async":false},"/Users/muiezmakkawi/Documents/LeedAB-OS/apps/console/app/page.tsx":{"id":1062,"name":"*","chunks":["8118","static/chunks/8118-681f2688832ccc66.js","8974","static/chunks/app/page-01558715b1be9361.js"],"async":false},"/Users/muiezmakkawi/Documents/LeedAB-OS/apps/console/app/gtm/GtmClient.tsx":{"id":838,"name":"*","chunks":[],"async":false}},"entryCSSFiles":{"/Users/muiezmakkawi/Documents/LeedAB-OS/apps/console/":[],"/Users/muiezmakkawi/Documents/LeedAB-OS/apps/console/app/layout":[{"inlined":false,"path":"static/css/4bdbd0680d42c54d.css"}],"/Users/muiezmakkawi/Documents/LeedAB-OS/apps/console/app/page":[],"/Users/muiezmakkawi/Documents/LeedAB-OS/apps/console/app/api/cx/health-score/route":[]},"rscModuleMapping":{"622":{"*":{"id":"51384","name":"*","chunks":[],"async":false}},"838":{"*":{"id":"3287","name":"*","chunks":[],"async":false}},"1062":{"*":{"id":"17742","name":"*","chunks":[],"async":false}},"1290":{"*":{"id":"82704","name":"*","chunks":[],"async":false}},"1959":{"*":{"id":"23597","name":"*","chunks":[],"async":false}},"3886":{"*":{"id":"89748","name":"*","chunks":[],"async":false}},"4431":{"*":{"id":"73041","name":"*","chunks":[],"async":false}},"5278":{"*":{"id":"7184","name":"*","chunks":[],"async":false}},"7150":{"*":{"id":"81170","name":"*","chunks":[],"async":false}},"7989":{"*":{"id":"36893","name":"*","chunks":[],"async":false}},"8924":{"*":{"id":"69576","name":"*","chunks":[],"async":false}},"9766":{"*":{"id":"6060","name":"*","chunks":[],"async":false}}},"edgeRscModuleMapping":{}}
1
+ globalThis.__RSC_MANIFEST=(globalThis.__RSC_MANIFEST||{});globalThis.__RSC_MANIFEST["/api/cx/health-score/route"]={"moduleLoading":{"prefix":"/_next/"},"ssrModuleMapping":{"622":{"*":{"id":"82146","name":"*","chunks":[],"async":false}},"838":{"*":{"id":"62823","name":"*","chunks":[],"async":false}},"1959":{"*":{"id":"31603","name":"*","chunks":[],"async":false}},"3886":{"*":{"id":"75170","name":"*","chunks":[],"async":false}},"4431":{"*":{"id":"12263","name":"*","chunks":[],"async":false}},"5086":{"*":{"id":"27231","name":"*","chunks":[],"async":false}},"5278":{"*":{"id":"78922","name":"*","chunks":[],"async":false}},"7150":{"*":{"id":"54160","name":"*","chunks":[],"async":false}},"7989":{"*":{"id":"68495","name":"*","chunks":[],"async":false}},"8924":{"*":{"id":"29234","name":"*","chunks":[],"async":false}},"9766":{"*":{"id":"77526","name":"*","chunks":[],"async":false}}},"edgeSSRModuleMapping":{},"clientModules":{"/Users/muiezmakkawi/Documents/LeedAB-OS/apps/console/node_modules/next/dist/client/components/builtin/global-error.js":{"id":7150,"name":"*","chunks":[],"async":false},"/Users/muiezmakkawi/Documents/LeedAB-OS/apps/console/node_modules/next/dist/esm/client/components/builtin/global-error.js":{"id":7150,"name":"*","chunks":[],"async":false},"/Users/muiezmakkawi/Documents/LeedAB-OS/apps/console/node_modules/next/dist/client/components/client-page.js":{"id":1959,"name":"*","chunks":[],"async":false},"/Users/muiezmakkawi/Documents/LeedAB-OS/apps/console/node_modules/next/dist/esm/client/components/client-page.js":{"id":1959,"name":"*","chunks":[],"async":false},"/Users/muiezmakkawi/Documents/LeedAB-OS/apps/console/node_modules/next/dist/client/components/client-segment.js":{"id":7989,"name":"*","chunks":[],"async":false},"/Users/muiezmakkawi/Documents/LeedAB-OS/apps/console/node_modules/next/dist/esm/client/components/client-segment.js":{"id":7989,"name":"*","chunks":[],"async":false},"/Users/muiezmakkawi/Documents/LeedAB-OS/apps/console/node_modules/next/dist/client/components/http-access-fallback/error-boundary.js":{"id":3886,"name":"*","chunks":[],"async":false},"/Users/muiezmakkawi/Documents/LeedAB-OS/apps/console/node_modules/next/dist/esm/client/components/http-access-fallback/error-boundary.js":{"id":3886,"name":"*","chunks":[],"async":false},"/Users/muiezmakkawi/Documents/LeedAB-OS/apps/console/node_modules/next/dist/client/components/layout-router.js":{"id":9766,"name":"*","chunks":[],"async":false},"/Users/muiezmakkawi/Documents/LeedAB-OS/apps/console/node_modules/next/dist/esm/client/components/layout-router.js":{"id":9766,"name":"*","chunks":[],"async":false},"/Users/muiezmakkawi/Documents/LeedAB-OS/apps/console/node_modules/next/dist/client/components/metadata/async-metadata.js":{"id":5278,"name":"*","chunks":[],"async":false},"/Users/muiezmakkawi/Documents/LeedAB-OS/apps/console/node_modules/next/dist/esm/client/components/metadata/async-metadata.js":{"id":5278,"name":"*","chunks":[],"async":false},"/Users/muiezmakkawi/Documents/LeedAB-OS/apps/console/node_modules/next/dist/client/components/render-from-template-context.js":{"id":8924,"name":"*","chunks":[],"async":false},"/Users/muiezmakkawi/Documents/LeedAB-OS/apps/console/node_modules/next/dist/esm/client/components/render-from-template-context.js":{"id":8924,"name":"*","chunks":[],"async":false},"/Users/muiezmakkawi/Documents/LeedAB-OS/apps/console/node_modules/next/dist/lib/framework/boundary-components.js":{"id":4431,"name":"*","chunks":[],"async":false},"/Users/muiezmakkawi/Documents/LeedAB-OS/apps/console/node_modules/next/dist/esm/lib/framework/boundary-components.js":{"id":4431,"name":"*","chunks":[],"async":false},"/Users/muiezmakkawi/Documents/LeedAB-OS/apps/console/node_modules/next/dist/lib/metadata/generate/icon-mark.js":{"id":622,"name":"*","chunks":[],"async":false},"/Users/muiezmakkawi/Documents/LeedAB-OS/apps/console/node_modules/next/dist/esm/lib/metadata/generate/icon-mark.js":{"id":622,"name":"*","chunks":[],"async":false},"/Users/muiezmakkawi/Documents/LeedAB-OS/apps/console/node_modules/next/font/google/target.css?{\"path\":\"app/layout.tsx\",\"import\":\"Geist\",\"arguments\":[{\"subsets\":[\"latin\"],\"weight\":[\"300\",\"400\",\"500\",\"600\",\"700\"],\"variable\":\"--font-geist-sans\",\"display\":\"swap\"}],\"variableName\":\"geistSans\"}":{"id":5725,"name":"*","chunks":["7177","static/chunks/app/layout-bd27cc63fde6b953.js"],"async":false},"/Users/muiezmakkawi/Documents/LeedAB-OS/apps/console/node_modules/next/font/google/target.css?{\"path\":\"app/layout.tsx\",\"import\":\"Geist_Mono\",\"arguments\":[{\"subsets\":[\"latin\"],\"weight\":[\"400\",\"500\"],\"variable\":\"--font-geist-mono\",\"display\":\"swap\"}],\"variableName\":\"geistMono\"}":{"id":4485,"name":"*","chunks":["7177","static/chunks/app/layout-bd27cc63fde6b953.js"],"async":false},"/Users/muiezmakkawi/Documents/LeedAB-OS/apps/console/node_modules/next/font/google/target.css?{\"path\":\"app/layout.tsx\",\"import\":\"Instrument_Serif\",\"arguments\":[{\"subsets\":[\"latin\"],\"weight\":\"400\",\"style\":[\"normal\",\"italic\"],\"variable\":\"--font-instrument-serif\",\"display\":\"swap\"}],\"variableName\":\"instrumentSerif\"}":{"id":9919,"name":"*","chunks":["7177","static/chunks/app/layout-bd27cc63fde6b953.js"],"async":false},"/Users/muiezmakkawi/Documents/LeedAB-OS/apps/console/app/globals.css":{"id":1290,"name":"*","chunks":["7177","static/chunks/app/layout-bd27cc63fde6b953.js"],"async":false},"/Users/muiezmakkawi/Documents/LeedAB-OS/apps/console/app/page.tsx":{"id":5086,"name":"*","chunks":["7973","static/chunks/7973-072db1a3857a8fe9.js","8974","static/chunks/app/page-bdfdbf7b657f4722.js"],"async":false},"/Users/muiezmakkawi/Documents/LeedAB-OS/apps/console/app/gtm/GtmClient.tsx":{"id":838,"name":"*","chunks":[],"async":false}},"entryCSSFiles":{"/Users/muiezmakkawi/Documents/LeedAB-OS/apps/console/":[],"/Users/muiezmakkawi/Documents/LeedAB-OS/apps/console/app/layout":[{"inlined":false,"path":"static/css/b2a91ecca3bf1487.css"}],"/Users/muiezmakkawi/Documents/LeedAB-OS/apps/console/app/page":[],"/Users/muiezmakkawi/Documents/LeedAB-OS/apps/console/app/api/cx/health-score/route":[]},"rscModuleMapping":{"622":{"*":{"id":"51384","name":"*","chunks":[],"async":false}},"838":{"*":{"id":"3287","name":"*","chunks":[],"async":false}},"1290":{"*":{"id":"82704","name":"*","chunks":[],"async":false}},"1959":{"*":{"id":"23597","name":"*","chunks":[],"async":false}},"3886":{"*":{"id":"89748","name":"*","chunks":[],"async":false}},"4431":{"*":{"id":"73041","name":"*","chunks":[],"async":false}},"5086":{"*":{"id":"17742","name":"*","chunks":[],"async":false}},"5278":{"*":{"id":"7184","name":"*","chunks":[],"async":false}},"7150":{"*":{"id":"81170","name":"*","chunks":[],"async":false}},"7989":{"*":{"id":"36893","name":"*","chunks":[],"async":false}},"8924":{"*":{"id":"69576","name":"*","chunks":[],"async":false}},"9766":{"*":{"id":"6060","name":"*","chunks":[],"async":false}}},"edgeRscModuleMapping":{}}
@@ -1 +1 @@
1
- globalThis.__RSC_MANIFEST=(globalThis.__RSC_MANIFEST||{});globalThis.__RSC_MANIFEST["/api/data/cohort-brief/route"]={"moduleLoading":{"prefix":"/_next/"},"ssrModuleMapping":{"622":{"*":{"id":"82146","name":"*","chunks":[],"async":false}},"838":{"*":{"id":"62823","name":"*","chunks":[],"async":false}},"1062":{"*":{"id":"38916","name":"*","chunks":[],"async":false}},"1959":{"*":{"id":"31603","name":"*","chunks":[],"async":false}},"3886":{"*":{"id":"75170","name":"*","chunks":[],"async":false}},"4431":{"*":{"id":"12263","name":"*","chunks":[],"async":false}},"5278":{"*":{"id":"78922","name":"*","chunks":[],"async":false}},"7150":{"*":{"id":"54160","name":"*","chunks":[],"async":false}},"7989":{"*":{"id":"68495","name":"*","chunks":[],"async":false}},"8924":{"*":{"id":"29234","name":"*","chunks":[],"async":false}},"9766":{"*":{"id":"77526","name":"*","chunks":[],"async":false}}},"edgeSSRModuleMapping":{},"clientModules":{"/Users/muiezmakkawi/Documents/LeedAB-OS/apps/console/node_modules/next/dist/client/components/builtin/global-error.js":{"id":7150,"name":"*","chunks":[],"async":false},"/Users/muiezmakkawi/Documents/LeedAB-OS/apps/console/node_modules/next/dist/esm/client/components/builtin/global-error.js":{"id":7150,"name":"*","chunks":[],"async":false},"/Users/muiezmakkawi/Documents/LeedAB-OS/apps/console/node_modules/next/dist/client/components/client-page.js":{"id":1959,"name":"*","chunks":[],"async":false},"/Users/muiezmakkawi/Documents/LeedAB-OS/apps/console/node_modules/next/dist/esm/client/components/client-page.js":{"id":1959,"name":"*","chunks":[],"async":false},"/Users/muiezmakkawi/Documents/LeedAB-OS/apps/console/node_modules/next/dist/client/components/client-segment.js":{"id":7989,"name":"*","chunks":[],"async":false},"/Users/muiezmakkawi/Documents/LeedAB-OS/apps/console/node_modules/next/dist/esm/client/components/client-segment.js":{"id":7989,"name":"*","chunks":[],"async":false},"/Users/muiezmakkawi/Documents/LeedAB-OS/apps/console/node_modules/next/dist/client/components/http-access-fallback/error-boundary.js":{"id":3886,"name":"*","chunks":[],"async":false},"/Users/muiezmakkawi/Documents/LeedAB-OS/apps/console/node_modules/next/dist/esm/client/components/http-access-fallback/error-boundary.js":{"id":3886,"name":"*","chunks":[],"async":false},"/Users/muiezmakkawi/Documents/LeedAB-OS/apps/console/node_modules/next/dist/client/components/layout-router.js":{"id":9766,"name":"*","chunks":[],"async":false},"/Users/muiezmakkawi/Documents/LeedAB-OS/apps/console/node_modules/next/dist/esm/client/components/layout-router.js":{"id":9766,"name":"*","chunks":[],"async":false},"/Users/muiezmakkawi/Documents/LeedAB-OS/apps/console/node_modules/next/dist/client/components/metadata/async-metadata.js":{"id":5278,"name":"*","chunks":[],"async":false},"/Users/muiezmakkawi/Documents/LeedAB-OS/apps/console/node_modules/next/dist/esm/client/components/metadata/async-metadata.js":{"id":5278,"name":"*","chunks":[],"async":false},"/Users/muiezmakkawi/Documents/LeedAB-OS/apps/console/node_modules/next/dist/client/components/render-from-template-context.js":{"id":8924,"name":"*","chunks":[],"async":false},"/Users/muiezmakkawi/Documents/LeedAB-OS/apps/console/node_modules/next/dist/esm/client/components/render-from-template-context.js":{"id":8924,"name":"*","chunks":[],"async":false},"/Users/muiezmakkawi/Documents/LeedAB-OS/apps/console/node_modules/next/dist/lib/framework/boundary-components.js":{"id":4431,"name":"*","chunks":[],"async":false},"/Users/muiezmakkawi/Documents/LeedAB-OS/apps/console/node_modules/next/dist/esm/lib/framework/boundary-components.js":{"id":4431,"name":"*","chunks":[],"async":false},"/Users/muiezmakkawi/Documents/LeedAB-OS/apps/console/node_modules/next/dist/lib/metadata/generate/icon-mark.js":{"id":622,"name":"*","chunks":[],"async":false},"/Users/muiezmakkawi/Documents/LeedAB-OS/apps/console/node_modules/next/dist/esm/lib/metadata/generate/icon-mark.js":{"id":622,"name":"*","chunks":[],"async":false},"/Users/muiezmakkawi/Documents/LeedAB-OS/apps/console/node_modules/next/font/google/target.css?{\"path\":\"app/layout.tsx\",\"import\":\"Geist\",\"arguments\":[{\"subsets\":[\"latin\"],\"weight\":[\"300\",\"400\",\"500\",\"600\",\"700\"],\"variable\":\"--font-geist-sans\",\"display\":\"swap\"}],\"variableName\":\"geistSans\"}":{"id":5725,"name":"*","chunks":["7177","static/chunks/app/layout-bd27cc63fde6b953.js"],"async":false},"/Users/muiezmakkawi/Documents/LeedAB-OS/apps/console/node_modules/next/font/google/target.css?{\"path\":\"app/layout.tsx\",\"import\":\"Geist_Mono\",\"arguments\":[{\"subsets\":[\"latin\"],\"weight\":[\"400\",\"500\"],\"variable\":\"--font-geist-mono\",\"display\":\"swap\"}],\"variableName\":\"geistMono\"}":{"id":4485,"name":"*","chunks":["7177","static/chunks/app/layout-bd27cc63fde6b953.js"],"async":false},"/Users/muiezmakkawi/Documents/LeedAB-OS/apps/console/node_modules/next/font/google/target.css?{\"path\":\"app/layout.tsx\",\"import\":\"Instrument_Serif\",\"arguments\":[{\"subsets\":[\"latin\"],\"weight\":\"400\",\"style\":[\"normal\",\"italic\"],\"variable\":\"--font-instrument-serif\",\"display\":\"swap\"}],\"variableName\":\"instrumentSerif\"}":{"id":9919,"name":"*","chunks":["7177","static/chunks/app/layout-bd27cc63fde6b953.js"],"async":false},"/Users/muiezmakkawi/Documents/LeedAB-OS/apps/console/app/globals.css":{"id":1290,"name":"*","chunks":["7177","static/chunks/app/layout-bd27cc63fde6b953.js"],"async":false},"/Users/muiezmakkawi/Documents/LeedAB-OS/apps/console/app/page.tsx":{"id":1062,"name":"*","chunks":["8118","static/chunks/8118-681f2688832ccc66.js","8974","static/chunks/app/page-01558715b1be9361.js"],"async":false},"/Users/muiezmakkawi/Documents/LeedAB-OS/apps/console/app/gtm/GtmClient.tsx":{"id":838,"name":"*","chunks":[],"async":false}},"entryCSSFiles":{"/Users/muiezmakkawi/Documents/LeedAB-OS/apps/console/":[],"/Users/muiezmakkawi/Documents/LeedAB-OS/apps/console/app/layout":[{"inlined":false,"path":"static/css/4bdbd0680d42c54d.css"}],"/Users/muiezmakkawi/Documents/LeedAB-OS/apps/console/app/page":[],"/Users/muiezmakkawi/Documents/LeedAB-OS/apps/console/app/api/data/cohort-brief/route":[]},"rscModuleMapping":{"622":{"*":{"id":"51384","name":"*","chunks":[],"async":false}},"838":{"*":{"id":"3287","name":"*","chunks":[],"async":false}},"1062":{"*":{"id":"17742","name":"*","chunks":[],"async":false}},"1290":{"*":{"id":"82704","name":"*","chunks":[],"async":false}},"1959":{"*":{"id":"23597","name":"*","chunks":[],"async":false}},"3886":{"*":{"id":"89748","name":"*","chunks":[],"async":false}},"4431":{"*":{"id":"73041","name":"*","chunks":[],"async":false}},"5278":{"*":{"id":"7184","name":"*","chunks":[],"async":false}},"7150":{"*":{"id":"81170","name":"*","chunks":[],"async":false}},"7989":{"*":{"id":"36893","name":"*","chunks":[],"async":false}},"8924":{"*":{"id":"69576","name":"*","chunks":[],"async":false}},"9766":{"*":{"id":"6060","name":"*","chunks":[],"async":false}}},"edgeRscModuleMapping":{}}
1
+ globalThis.__RSC_MANIFEST=(globalThis.__RSC_MANIFEST||{});globalThis.__RSC_MANIFEST["/api/data/cohort-brief/route"]={"moduleLoading":{"prefix":"/_next/"},"ssrModuleMapping":{"622":{"*":{"id":"82146","name":"*","chunks":[],"async":false}},"838":{"*":{"id":"62823","name":"*","chunks":[],"async":false}},"1959":{"*":{"id":"31603","name":"*","chunks":[],"async":false}},"3886":{"*":{"id":"75170","name":"*","chunks":[],"async":false}},"4431":{"*":{"id":"12263","name":"*","chunks":[],"async":false}},"5086":{"*":{"id":"27231","name":"*","chunks":[],"async":false}},"5278":{"*":{"id":"78922","name":"*","chunks":[],"async":false}},"7150":{"*":{"id":"54160","name":"*","chunks":[],"async":false}},"7989":{"*":{"id":"68495","name":"*","chunks":[],"async":false}},"8924":{"*":{"id":"29234","name":"*","chunks":[],"async":false}},"9766":{"*":{"id":"77526","name":"*","chunks":[],"async":false}}},"edgeSSRModuleMapping":{},"clientModules":{"/Users/muiezmakkawi/Documents/LeedAB-OS/apps/console/node_modules/next/dist/client/components/builtin/global-error.js":{"id":7150,"name":"*","chunks":[],"async":false},"/Users/muiezmakkawi/Documents/LeedAB-OS/apps/console/node_modules/next/dist/esm/client/components/builtin/global-error.js":{"id":7150,"name":"*","chunks":[],"async":false},"/Users/muiezmakkawi/Documents/LeedAB-OS/apps/console/node_modules/next/dist/client/components/client-page.js":{"id":1959,"name":"*","chunks":[],"async":false},"/Users/muiezmakkawi/Documents/LeedAB-OS/apps/console/node_modules/next/dist/esm/client/components/client-page.js":{"id":1959,"name":"*","chunks":[],"async":false},"/Users/muiezmakkawi/Documents/LeedAB-OS/apps/console/node_modules/next/dist/client/components/client-segment.js":{"id":7989,"name":"*","chunks":[],"async":false},"/Users/muiezmakkawi/Documents/LeedAB-OS/apps/console/node_modules/next/dist/esm/client/components/client-segment.js":{"id":7989,"name":"*","chunks":[],"async":false},"/Users/muiezmakkawi/Documents/LeedAB-OS/apps/console/node_modules/next/dist/client/components/http-access-fallback/error-boundary.js":{"id":3886,"name":"*","chunks":[],"async":false},"/Users/muiezmakkawi/Documents/LeedAB-OS/apps/console/node_modules/next/dist/esm/client/components/http-access-fallback/error-boundary.js":{"id":3886,"name":"*","chunks":[],"async":false},"/Users/muiezmakkawi/Documents/LeedAB-OS/apps/console/node_modules/next/dist/client/components/layout-router.js":{"id":9766,"name":"*","chunks":[],"async":false},"/Users/muiezmakkawi/Documents/LeedAB-OS/apps/console/node_modules/next/dist/esm/client/components/layout-router.js":{"id":9766,"name":"*","chunks":[],"async":false},"/Users/muiezmakkawi/Documents/LeedAB-OS/apps/console/node_modules/next/dist/client/components/metadata/async-metadata.js":{"id":5278,"name":"*","chunks":[],"async":false},"/Users/muiezmakkawi/Documents/LeedAB-OS/apps/console/node_modules/next/dist/esm/client/components/metadata/async-metadata.js":{"id":5278,"name":"*","chunks":[],"async":false},"/Users/muiezmakkawi/Documents/LeedAB-OS/apps/console/node_modules/next/dist/client/components/render-from-template-context.js":{"id":8924,"name":"*","chunks":[],"async":false},"/Users/muiezmakkawi/Documents/LeedAB-OS/apps/console/node_modules/next/dist/esm/client/components/render-from-template-context.js":{"id":8924,"name":"*","chunks":[],"async":false},"/Users/muiezmakkawi/Documents/LeedAB-OS/apps/console/node_modules/next/dist/lib/framework/boundary-components.js":{"id":4431,"name":"*","chunks":[],"async":false},"/Users/muiezmakkawi/Documents/LeedAB-OS/apps/console/node_modules/next/dist/esm/lib/framework/boundary-components.js":{"id":4431,"name":"*","chunks":[],"async":false},"/Users/muiezmakkawi/Documents/LeedAB-OS/apps/console/node_modules/next/dist/lib/metadata/generate/icon-mark.js":{"id":622,"name":"*","chunks":[],"async":false},"/Users/muiezmakkawi/Documents/LeedAB-OS/apps/console/node_modules/next/dist/esm/lib/metadata/generate/icon-mark.js":{"id":622,"name":"*","chunks":[],"async":false},"/Users/muiezmakkawi/Documents/LeedAB-OS/apps/console/node_modules/next/font/google/target.css?{\"path\":\"app/layout.tsx\",\"import\":\"Geist\",\"arguments\":[{\"subsets\":[\"latin\"],\"weight\":[\"300\",\"400\",\"500\",\"600\",\"700\"],\"variable\":\"--font-geist-sans\",\"display\":\"swap\"}],\"variableName\":\"geistSans\"}":{"id":5725,"name":"*","chunks":["7177","static/chunks/app/layout-bd27cc63fde6b953.js"],"async":false},"/Users/muiezmakkawi/Documents/LeedAB-OS/apps/console/node_modules/next/font/google/target.css?{\"path\":\"app/layout.tsx\",\"import\":\"Geist_Mono\",\"arguments\":[{\"subsets\":[\"latin\"],\"weight\":[\"400\",\"500\"],\"variable\":\"--font-geist-mono\",\"display\":\"swap\"}],\"variableName\":\"geistMono\"}":{"id":4485,"name":"*","chunks":["7177","static/chunks/app/layout-bd27cc63fde6b953.js"],"async":false},"/Users/muiezmakkawi/Documents/LeedAB-OS/apps/console/node_modules/next/font/google/target.css?{\"path\":\"app/layout.tsx\",\"import\":\"Instrument_Serif\",\"arguments\":[{\"subsets\":[\"latin\"],\"weight\":\"400\",\"style\":[\"normal\",\"italic\"],\"variable\":\"--font-instrument-serif\",\"display\":\"swap\"}],\"variableName\":\"instrumentSerif\"}":{"id":9919,"name":"*","chunks":["7177","static/chunks/app/layout-bd27cc63fde6b953.js"],"async":false},"/Users/muiezmakkawi/Documents/LeedAB-OS/apps/console/app/globals.css":{"id":1290,"name":"*","chunks":["7177","static/chunks/app/layout-bd27cc63fde6b953.js"],"async":false},"/Users/muiezmakkawi/Documents/LeedAB-OS/apps/console/app/page.tsx":{"id":5086,"name":"*","chunks":["7973","static/chunks/7973-072db1a3857a8fe9.js","8974","static/chunks/app/page-bdfdbf7b657f4722.js"],"async":false},"/Users/muiezmakkawi/Documents/LeedAB-OS/apps/console/app/gtm/GtmClient.tsx":{"id":838,"name":"*","chunks":[],"async":false}},"entryCSSFiles":{"/Users/muiezmakkawi/Documents/LeedAB-OS/apps/console/":[],"/Users/muiezmakkawi/Documents/LeedAB-OS/apps/console/app/layout":[{"inlined":false,"path":"static/css/b2a91ecca3bf1487.css"}],"/Users/muiezmakkawi/Documents/LeedAB-OS/apps/console/app/page":[],"/Users/muiezmakkawi/Documents/LeedAB-OS/apps/console/app/api/data/cohort-brief/route":[]},"rscModuleMapping":{"622":{"*":{"id":"51384","name":"*","chunks":[],"async":false}},"838":{"*":{"id":"3287","name":"*","chunks":[],"async":false}},"1290":{"*":{"id":"82704","name":"*","chunks":[],"async":false}},"1959":{"*":{"id":"23597","name":"*","chunks":[],"async":false}},"3886":{"*":{"id":"89748","name":"*","chunks":[],"async":false}},"4431":{"*":{"id":"73041","name":"*","chunks":[],"async":false}},"5086":{"*":{"id":"17742","name":"*","chunks":[],"async":false}},"5278":{"*":{"id":"7184","name":"*","chunks":[],"async":false}},"7150":{"*":{"id":"81170","name":"*","chunks":[],"async":false}},"7989":{"*":{"id":"36893","name":"*","chunks":[],"async":false}},"8924":{"*":{"id":"69576","name":"*","chunks":[],"async":false}},"9766":{"*":{"id":"6060","name":"*","chunks":[],"async":false}}},"edgeRscModuleMapping":{}}
@@ -54,4 +54,4 @@ ${(()=>{let a=[];return"green"===s.color&&m.totalMinutesSaved>0&&(a.push(`- Lead
54
54
  - Cost figures pull from the dashboard's Anthropic-spend records. Once Stripe / Xero MCPs land, swap in MRR + contribution-margin per customer.
55
55
  - Run-attribution accuracy depends on usage records carrying \`clientId\`; pre-tenancy records bucket to the default tenant and are excluded here.
56
56
  - Renewal-readiness signal is a heuristic — tune the thresholds in this endpoint as we learn from real QBRs.
57
- `,E=null,F=null;if(h)if(await (0,A.xB)(f)){let a=await (0,A.mx)(f,`01_Customers/qbr-${t}.md`,C);a.ok?E=a.path:F=a.error}else F=`No brain at ~/leedab-brains/${f}/. Brief returned only; not persisted.`;return await (0,x.sb)({ts:new Date().toISOString(),agent:"delivery.qbr_brief",clientId:f,outcome:F?"failed":"ok",durationMs:Date.now()-d,inputSummary:{periodDays:g,write:!0===e.write,renewalSignal:s},output:{wrote:E??void 0,error:F??void 0,bytes:C.length}}),u.NextResponse.json({ok:!0,clientId:f,displayName:i.display_name,periodDays:g,renewalSignal:s,figures:{windowRuns:m.windowRuns,successRate:m.successRate,totalMinutesSaved:m.totalMinutesSaved,runAttributedCost:Number(m.totalCost.toFixed(2)),openEscalations:p,dispatchCount:q},brief:C,written:E,writeError:F})}async function F(){return u.NextResponse.json({hint:"POST {clientId, periodDays?: 90, write?: boolean} to generate a QBR brief from engagement.md + run data + dispatches + escalations. Deterministic, no LLM.",sources:["clients/<id>/manifest.json — customer roster","data/runs.json (filtered by clientId) — run health + minutes saved","~/leedab-brains/<id>/01_Customers/engagement.md — engagement plan","~/leedab-brains/<id>/04_Operations/escalations.md — open escalations","~/leedab-brains/<id>/_inbox/dispatches/ — dispatch records"]})}let G=new e.AppRouteRouteModule({definition:{kind:f.RouteKind.APP_ROUTE,page:"/api/delivery/qbr-brief/route",pathname:"/api/delivery/qbr-brief",filename:"route",bundlePath:"app/api/delivery/qbr-brief/route"},distDir:".next",relativeProjectDir:"",resolvedPagePath:"/Users/muiezmakkawi/Documents/LeedAB-OS/apps/console/app/api/delivery/qbr-brief/route.ts",nextConfigOutput:"standalone",userland:d}),{workAsyncStorage:H,workUnitAsyncStorage:I,serverHooks:J}=G;function K(){return(0,g.patchFetch)({workAsyncStorage:H,workUnitAsyncStorage:I})}async function L(a,b,c){var d;let e="/api/delivery/qbr-brief/route";"/index"===e&&(e="/");let g=await G.prepare(a,b,{srcPage:e,multiZoneDraftMode:!1});if(!g)return b.statusCode=400,b.end("Bad Request"),null==c.waitUntil||c.waitUntil.call(c,Promise.resolve()),null;let{buildId:u,params:v,nextConfig:w,isDraftMode:x,prerenderManifest:y,routerServerContext:z,isOnDemandRevalidate:A,revalidateOnlyGenerated:B,resolvedPathname:C}=g,D=(0,j.normalizeAppPath)(e),E=!!(y.dynamicRoutes[D]||y.routes[C]);if(E&&!x){let a=!!y.routes[C],b=y.dynamicRoutes[D];if(b&&!1===b.fallback&&!a)throw new s.NoFallbackError}let F=null;!E||G.isDev||x||(F="/index"===(F=C)?"/":F);let H=!0===G.isDev||!E,I=E&&!H,J=a.method||"GET",K=(0,i.getTracer)(),L=K.getActiveScopeSpan(),M={params:v,prerenderManifest:y,renderOpts:{experimental:{cacheComponents:!!w.experimental.cacheComponents,authInterrupts:!!w.experimental.authInterrupts},supportsDynamicResponse:H,incrementalCache:(0,h.getRequestMeta)(a,"incrementalCache"),cacheLifeProfiles:null==(d=w.experimental)?void 0:d.cacheLife,isRevalidate:I,waitUntil:c.waitUntil,onClose:a=>{b.on("close",a)},onAfterTaskError:void 0,onInstrumentationRequestError:(b,c,d)=>G.onRequestError(a,b,d,z)},sharedContext:{buildId:u}},N=new k.NodeNextRequest(a),O=new k.NodeNextResponse(b),P=l.NextRequestAdapter.fromNodeNextRequest(N,(0,l.signalFromNodeResponse)(b));try{let d=async c=>G.handle(P,M).finally(()=>{if(!c)return;c.setAttributes({"http.status_code":b.statusCode,"next.rsc":!1});let d=K.getRootSpanAttributes();if(!d)return;if(d.get("next.span_type")!==m.BaseServerSpan.handleRequest)return void console.warn(`Unexpected root span type '${d.get("next.span_type")}'. Please report this Next.js issue https://github.com/vercel/next.js`);let e=d.get("next.route");if(e){let a=`${J} ${e}`;c.setAttributes({"next.route":e,"http.route":e,"next.span_name":a}),c.updateName(a)}else c.updateName(`${J} ${a.url}`)}),g=async g=>{var i,j;let k=async({previousCacheEntry:f})=>{try{if(!(0,h.getRequestMeta)(a,"minimalMode")&&A&&B&&!f)return b.statusCode=404,b.setHeader("x-nextjs-cache","REVALIDATED"),b.end("This page could not be found"),null;let e=await d(g);a.fetchMetrics=M.renderOpts.fetchMetrics;let i=M.renderOpts.pendingWaitUntil;i&&c.waitUntil&&(c.waitUntil(i),i=void 0);let j=M.renderOpts.collectedTags;if(!E)return await (0,o.I)(N,O,e,M.renderOpts.pendingWaitUntil),null;{let a=await e.blob(),b=(0,p.toNodeOutgoingHttpHeaders)(e.headers);j&&(b[r.NEXT_CACHE_TAGS_HEADER]=j),!b["content-type"]&&a.type&&(b["content-type"]=a.type);let c=void 0!==M.renderOpts.collectedRevalidate&&!(M.renderOpts.collectedRevalidate>=r.INFINITE_CACHE)&&M.renderOpts.collectedRevalidate,d=void 0===M.renderOpts.collectedExpire||M.renderOpts.collectedExpire>=r.INFINITE_CACHE?void 0:M.renderOpts.collectedExpire;return{value:{kind:t.CachedRouteKind.APP_ROUTE,status:e.status,body:Buffer.from(await a.arrayBuffer()),headers:b},cacheControl:{revalidate:c,expire:d}}}}catch(b){throw(null==f?void 0:f.isStale)&&await G.onRequestError(a,b,{routerKind:"App Router",routePath:e,routeType:"route",revalidateReason:(0,n.c)({isRevalidate:I,isOnDemandRevalidate:A})},z),b}},l=await G.handleResponse({req:a,nextConfig:w,cacheKey:F,routeKind:f.RouteKind.APP_ROUTE,isFallback:!1,prerenderManifest:y,isRoutePPREnabled:!1,isOnDemandRevalidate:A,revalidateOnlyGenerated:B,responseGenerator:k,waitUntil:c.waitUntil});if(!E)return null;if((null==l||null==(i=l.value)?void 0:i.kind)!==t.CachedRouteKind.APP_ROUTE)throw Object.defineProperty(Error(`Invariant: app-route received invalid cache entry ${null==l||null==(j=l.value)?void 0:j.kind}`),"__NEXT_ERROR_CODE",{value:"E701",enumerable:!1,configurable:!0});(0,h.getRequestMeta)(a,"minimalMode")||b.setHeader("x-nextjs-cache",A?"REVALIDATED":l.isMiss?"MISS":l.isStale?"STALE":"HIT"),x&&b.setHeader("Cache-Control","private, no-cache, no-store, max-age=0, must-revalidate");let m=(0,p.fromNodeOutgoingHttpHeaders)(l.value.headers);return(0,h.getRequestMeta)(a,"minimalMode")&&E||m.delete(r.NEXT_CACHE_TAGS_HEADER),!l.cacheControl||b.getHeader("Cache-Control")||m.get("Cache-Control")||m.set("Cache-Control",(0,q.getCacheControlHeader)(l.cacheControl)),await (0,o.I)(N,O,new Response(l.value.body,{headers:m,status:l.value.status||200})),null};L?await g(L):await K.withPropagatedContext(a.headers,()=>K.trace(m.BaseServerSpan.handleRequest,{spanName:`${J} ${a.url}`,kind:i.SpanKind.SERVER,attributes:{"http.method":J,"http.target":a.url}},g))}catch(b){if(b instanceof s.NoFallbackError||await G.onRequestError(a,b,{routerKind:"App Router",routePath:D,routeType:"route",revalidateReason:(0,n.c)({isRevalidate:I,isOnDemandRevalidate:A})}),E)throw b;return await (0,o.I)(N,O,new Response(null,{status:500})),null}}},33873:a=>{a.exports=require("path")},44870:a=>{a.exports=require("next/dist/compiled/next-server/app-route.runtime.prod.js")},48161:a=>{a.exports=require("node:os")},57477:(a,b,c)=>{c.d(b,{B0:()=>t,Ip:()=>k,T8:()=>q,_T:()=>p,dR:()=>r,mx:()=>o,nj:()=>v,st:()=>s,xB:()=>l,yv:()=>u,zG:()=>n,zY:()=>w});var d=c(73024),e=c(76760),f=c.n(e),g=c(48161),h=c.n(g);let i=/^[a-z0-9](?:[a-z0-9-]{0,58}[a-z0-9])?$/,j=["_inbox/","_Workflows/","00_Org/","01_Customers/","02_Sales/","03_Product/","04_Operations/","05_Finance/","06_Legal/","Permanent/","Wiki/"];function k(a){if(!i.test(a))throw Error(`Invalid clientId: ${a}`);return f().join(process.env.LEEDAB_BRAINS_ROOT?f().resolve(process.env.LEEDAB_BRAINS_ROOT):f().resolve(h().homedir(),"leedab-brains"),a)}async function l(a){try{return(await d.promises.stat(k(a))).isDirectory()}catch{return!1}}function m(a,b){if(b.includes("..")||f().isAbsolute(b))throw Error(`Refused: path contains traversal or is absolute: ${b}`);if(!j.some(a=>b.startsWith(a)))throw Error(`Refused: path "${b}" doesn't start with an allowed prefix (${j.join(", ")})`);let c=k(a),d=f().resolve(c,b);if(!d.startsWith(c+f().sep))throw Error(`Refused: path resolves outside brain root: ${b}`);return d}async function n(a,b){try{if(!await l(a))return{ok:!1,error:`No brain at ${k(a)}. Run bin/onboard-customer.sh first.`};let c=m(a,b),e=await d.promises.readFile(c,"utf8");return{ok:!0,body:e,path:c}}catch(a){return{ok:!1,error:a.message}}}async function o(a,b,c){try{if(!await l(a))return{ok:!1,error:`No brain at ${k(a)}. Run bin/onboard-customer.sh first.`};let e=m(a,b);return await d.promises.mkdir(f().dirname(e),{recursive:!0}),await d.promises.writeFile(e,c,"utf8"),{ok:!0,path:e,bytes:Buffer.byteLength(c,"utf8")}}catch(a){return{ok:!1,error:a.message}}}async function p(a,b,c={}){try{if(!await l(a))return{ok:!1,error:`No brain at ${k(a)}.`};let e=b.endsWith("/")?b:b+"/",g=m(a,e+"__list_sentinel__"),h=f().dirname(g),i=[];try{i=await d.promises.readdir(h)}catch{return{ok:!0,entries:[]}}let j=c.extension??".md",n=c.sinceISO?Date.parse(c.sinceISO):0,o=[];for(let a of i){if(j&&!a.endsWith(j))continue;let b=f().join(h,a),c=await d.promises.stat(b);c.isFile()&&(n&&c.mtimeMs<n||o.push({relativePath:e+a,absolutePath:b,bytes:c.size,modifiedISO:new Date(c.mtimeMs).toISOString()}))}return o.sort((a,b)=>Date.parse(b.modifiedISO)-Date.parse(a.modifiedISO)),{ok:!0,entries:c.limit?o.slice(0,c.limit):o}}catch(a){return{ok:!1,error:a.message}}}async function q(a,b,c){try{if(!await l(a))return{ok:!1,error:`No brain at ${k(a)}. Run bin/onboard-customer.sh first.`};let e=m(a,b);await d.promises.mkdir(f().dirname(e),{recursive:!0});let g="";try{let a=await d.promises.readFile(e,"utf8");a.length>0&&!a.endsWith("\n")&&(g="\n")}catch{}return await d.promises.appendFile(e,g+c,"utf8"),{ok:!0,path:e,bytes:Buffer.byteLength(g+c,"utf8")}}catch(a){return{ok:!1,error:a.message}}}function r(){return new Date().toISOString().slice(0,10)}function s(){return new Date().toISOString()}function t(a){return a.toLowerCase().replace(/[^a-z0-9]+/g,"-").replace(/^-+|-+$/g,"").slice(0,60)}function u(a){if(!a.startsWith("---\n")&&!a.startsWith("---\r\n"))return{frontmatter:{},body:a};let b=a.indexOf("\n---",4);if(-1===b)return{frontmatter:{},body:a};let c=a.slice(4,b),d=a.slice(b+4).replace(/^\r?\n/,""),e={},f=null,g=[],h=()=>{null!==f&&(e[f]=[...g],g.length=0,f=null)};for(let a of c.split(/\r?\n/)){if(""===a.trim())continue;let b=a.match(/^\s*-\s+(.*)$/);if(b&&null!==f){let a=b[1].trim(),c=a.startsWith('"')&&a.endsWith('"')||a.startsWith("'")&&a.endsWith("'")?a.slice(1,-1):a;g.push(c);continue}let c=a.match(/^([A-Za-z0-9_\-.]+)\s*:\s*(.*)$/);if(c){h();let a=c[1],b=c[2];if(""===b){f=a;continue}e[a]=function(a){let b=a.trim();if(""===b||"null"===b||"~"===b)return null;if("true"===b)return!0;if("false"===b)return!1;if(b.startsWith('"')&&b.endsWith('"'))return b.slice(1,-1).replace(/\\"/g,'"').replace(/\\\\/g,"\\");if(b.startsWith("'")&&b.endsWith("'"))return b.slice(1,-1).replace(/\\'/g,"'");if(b.startsWith("[")&&b.endsWith("]")){let a=b.slice(1,-1).trim();return a?a.split(/\s*,\s*/).map(a=>{let b=a.trim();return b.startsWith('"')&&b.endsWith('"')||b.startsWith("'")&&b.endsWith("'")?b.slice(1,-1):b}):[]}return/^-?\d+$/.test(b)||/^-?\d*\.\d+$/.test(b)?Number(b):b}(b)}}return h(),{frontmatter:e,body:d}}function v(a,b){let c=Object.keys(a);if(0===c.length)return b.startsWith("---"),b;let d=["---"];for(let b of c){var e;d.push(`${b}: ${null===(e=a[b])?"null":"boolean"==typeof e||"number"==typeof e?String(e):Array.isArray(e)?"["+e.map(a=>/[,\s:#]/.test(a)?`"${a.replace(/"/g,'\\"')}"`:a).join(", ")+"]":""===e||/^[\d\s]/.test(e)||/[:#\n"']/.test(e)||"true"===e||"false"===e||"null"===e||"~"===e?`"${e.replace(/"/g,'\\"')}"`:e}`)}return d.push("---",""),d.join("\n")+b.replace(/^\n+/,"")}function w(a){if(!a||"object"!=typeof a||Array.isArray(a))return{ok:!1,error:"patch must be a flat object"};let b={};for(let[c,d]of Object.entries(a)){if(!/^[A-Za-z0-9_\-.]+$/.test(c))return{ok:!1,error:`invalid frontmatter key "${c}" (allowed: letters / digits / _ - .)`};if(null===d||"string"==typeof d||"number"==typeof d||"boolean"==typeof d)b[c]=d;else{if(!(Array.isArray(d)&&d.every(a=>"string"==typeof a)))return{ok:!1,error:`value for "${c}" must be string / number / boolean / null / string[] — got ${typeof d}`};b[c]=d}}return{ok:!0,patch:b}}},63033:a=>{a.exports=require("next/dist/server/app-render/work-unit-async-storage.external.js")},73024:a=>{a.exports=require("node:fs")},76760:a=>{a.exports=require("node:path")},77598:a=>{a.exports=require("node:crypto")},79748:a=>{a.exports=require("fs/promises")},86433:(a,b,c)=>{c.d(b,{$A:()=>o,Iu:()=>C,Jc:()=>E,P8:()=>x,PH:()=>B,Qh:()=>w,WT:()=>z,h5:()=>A,ik:()=>D,ny:()=>v,v:()=>F,wr:()=>y});var d=c(29021),e=c(94735),f=c(22709);function g(a){let b=(0,f.fp)();return(a.clientId??"default")===b}let h=f.uV,i=(0,f.dataPath)("inbox.json"),j=(0,f.dataPath)("approvals.json"),k=(0,f.dataPath)("routing.json"),l=(0,f.dataPath)("contacts.json"),m=(0,f.dataPath)("runs.json"),n=globalThis,o=n.__opsBus??(n.__opsBus=function(){let a=new e.EventEmitter;return a.setMaxListeners(0),a}());async function p(){await d.promises.mkdir(h,{recursive:!0})}async function q(a,b){try{await p();let b=await d.promises.readFile(a,"utf8");return JSON.parse(b)}catch{return b}}async function r(a,b){await p();let c=a+".tmp";await d.promises.writeFile(c,JSON.stringify(b,null,2),"utf8"),await d.promises.rename(c,a)}let s=globalThis,t=s.__opsLocks??(s.__opsLocks=new Map);async function u(a,b){let c=(t.get(a)??Promise.resolve()).then(b,b);return t.set(a,c.catch(()=>{})),c}async function v(a){let b=(await q(i,[])).filter(g).sort((a,b)=>b.timestamp-a.timestamp);return a?.status&&(b=b.filter(b=>b.status===a.status)),a?.limit&&(b=b.slice(0,a.limit)),b}async function w(a,b){let c=await u(i,async()=>{let c=await q(i,[]),d=c.findIndex(b=>b.id===a&&g(b));if(-1===d)return null;let{clientId:e,...f}=b;return c[d]={...c[d],...f},await r(i,c),c[d]});return c&&o.emit("inbox:updated",c),c}async function x(a){let b=(await q(j,[])).filter(g).sort((a,b)=>b.createdAt-a.createdAt);return a?.status&&(b=b.filter(b=>b.status===a.status)),a?.limit&&(b=b.slice(0,a.limit)),b}async function y(a){return(await q(j,[])).find(b=>b.id===a&&g(b))??null}async function z(a){let b={...a,clientId:a.clientId??(0,f.fp)()};await u(j,async()=>{let a=await q(j,[]);a.push(b),await r(j,a)}),o.emit("approval:created",b)}async function A(a,b){let c=await u(j,async()=>{let c=await q(j,[]),d=c.findIndex(b=>b.id===a&&g(b));if(-1===d)return null;let{clientId:e,...f}=b;return c[d]={...c[d],...f},await r(j,c),c[d]});return c&&o.emit("approval:updated",c),c}async function B(){return(await q(k,[])).filter(g)}async function C(a){let b=(0,f.fp)(),c=(await q(k,[])).filter(a=>(a.clientId??"default")!==b),d=a.map(a=>({...a,clientId:b}));await r(k,[...c,...d])}async function D(){return(await q(l,[])).filter(g)}async function E(a){let b=(0,f.fp)(),c=(await q(l,[])).filter(a=>(a.clientId??"default")!==b),d=a.map(a=>({...a,clientId:b}));await r(l,[...c,...d])}async function F(a){let b=(await q(m,[])).filter(g).sort((a,b)=>b.startedAt-a.startedAt);return a?.limit?b.slice(0,a.limit):b}},86439:a=>{a.exports=require("next/dist/shared/lib/no-fallback-error.external")},94735:a=>{a.exports=require("events")}};var b=require("../../../../webpack-runtime.js");b.C(a);var c=b.X(0,[5873,1692,897,6255,4768],()=>b(b.s=29922));module.exports=c})();
57
+ `,E=null,F=null;if(h)if(await (0,A.xB)(f)){let a=await (0,A.mx)(f,`01_Customers/qbr-${t}.md`,C);a.ok?E=a.path:F=a.error}else F=`No brain at ~/leedab-brains/${f}/. Brief returned only; not persisted.`;return await (0,x.sb)({ts:new Date().toISOString(),agent:"delivery.qbr_brief",clientId:f,outcome:F?"failed":"ok",durationMs:Date.now()-d,inputSummary:{periodDays:g,write:!0===e.write,renewalSignal:s},output:{wrote:E??void 0,error:F??void 0,bytes:C.length}}),u.NextResponse.json({ok:!0,clientId:f,displayName:i.display_name,periodDays:g,renewalSignal:s,figures:{windowRuns:m.windowRuns,successRate:m.successRate,totalMinutesSaved:m.totalMinutesSaved,runAttributedCost:Number(m.totalCost.toFixed(2)),openEscalations:p,dispatchCount:q},brief:C,written:E,writeError:F})}async function F(){return u.NextResponse.json({hint:"POST {clientId, periodDays?: 90, write?: boolean} to generate a QBR brief from engagement.md + run data + dispatches + escalations. Deterministic, no LLM.",sources:["clients/<id>/manifest.json — customer roster","data/runs.json (filtered by clientId) — run health + minutes saved","~/leedab-brains/<id>/01_Customers/engagement.md — engagement plan","~/leedab-brains/<id>/04_Operations/escalations.md — open escalations","~/leedab-brains/<id>/_inbox/dispatches/ — dispatch records"]})}let G=new e.AppRouteRouteModule({definition:{kind:f.RouteKind.APP_ROUTE,page:"/api/delivery/qbr-brief/route",pathname:"/api/delivery/qbr-brief",filename:"route",bundlePath:"app/api/delivery/qbr-brief/route"},distDir:".next",relativeProjectDir:"",resolvedPagePath:"/Users/muiezmakkawi/Documents/LeedAB-OS/apps/console/app/api/delivery/qbr-brief/route.ts",nextConfigOutput:"standalone",userland:d}),{workAsyncStorage:H,workUnitAsyncStorage:I,serverHooks:J}=G;function K(){return(0,g.patchFetch)({workAsyncStorage:H,workUnitAsyncStorage:I})}async function L(a,b,c){var d;let e="/api/delivery/qbr-brief/route";"/index"===e&&(e="/");let g=await G.prepare(a,b,{srcPage:e,multiZoneDraftMode:!1});if(!g)return b.statusCode=400,b.end("Bad Request"),null==c.waitUntil||c.waitUntil.call(c,Promise.resolve()),null;let{buildId:u,params:v,nextConfig:w,isDraftMode:x,prerenderManifest:y,routerServerContext:z,isOnDemandRevalidate:A,revalidateOnlyGenerated:B,resolvedPathname:C}=g,D=(0,j.normalizeAppPath)(e),E=!!(y.dynamicRoutes[D]||y.routes[C]);if(E&&!x){let a=!!y.routes[C],b=y.dynamicRoutes[D];if(b&&!1===b.fallback&&!a)throw new s.NoFallbackError}let F=null;!E||G.isDev||x||(F="/index"===(F=C)?"/":F);let H=!0===G.isDev||!E,I=E&&!H,J=a.method||"GET",K=(0,i.getTracer)(),L=K.getActiveScopeSpan(),M={params:v,prerenderManifest:y,renderOpts:{experimental:{cacheComponents:!!w.experimental.cacheComponents,authInterrupts:!!w.experimental.authInterrupts},supportsDynamicResponse:H,incrementalCache:(0,h.getRequestMeta)(a,"incrementalCache"),cacheLifeProfiles:null==(d=w.experimental)?void 0:d.cacheLife,isRevalidate:I,waitUntil:c.waitUntil,onClose:a=>{b.on("close",a)},onAfterTaskError:void 0,onInstrumentationRequestError:(b,c,d)=>G.onRequestError(a,b,d,z)},sharedContext:{buildId:u}},N=new k.NodeNextRequest(a),O=new k.NodeNextResponse(b),P=l.NextRequestAdapter.fromNodeNextRequest(N,(0,l.signalFromNodeResponse)(b));try{let d=async c=>G.handle(P,M).finally(()=>{if(!c)return;c.setAttributes({"http.status_code":b.statusCode,"next.rsc":!1});let d=K.getRootSpanAttributes();if(!d)return;if(d.get("next.span_type")!==m.BaseServerSpan.handleRequest)return void console.warn(`Unexpected root span type '${d.get("next.span_type")}'. Please report this Next.js issue https://github.com/vercel/next.js`);let e=d.get("next.route");if(e){let a=`${J} ${e}`;c.setAttributes({"next.route":e,"http.route":e,"next.span_name":a}),c.updateName(a)}else c.updateName(`${J} ${a.url}`)}),g=async g=>{var i,j;let k=async({previousCacheEntry:f})=>{try{if(!(0,h.getRequestMeta)(a,"minimalMode")&&A&&B&&!f)return b.statusCode=404,b.setHeader("x-nextjs-cache","REVALIDATED"),b.end("This page could not be found"),null;let e=await d(g);a.fetchMetrics=M.renderOpts.fetchMetrics;let i=M.renderOpts.pendingWaitUntil;i&&c.waitUntil&&(c.waitUntil(i),i=void 0);let j=M.renderOpts.collectedTags;if(!E)return await (0,o.I)(N,O,e,M.renderOpts.pendingWaitUntil),null;{let a=await e.blob(),b=(0,p.toNodeOutgoingHttpHeaders)(e.headers);j&&(b[r.NEXT_CACHE_TAGS_HEADER]=j),!b["content-type"]&&a.type&&(b["content-type"]=a.type);let c=void 0!==M.renderOpts.collectedRevalidate&&!(M.renderOpts.collectedRevalidate>=r.INFINITE_CACHE)&&M.renderOpts.collectedRevalidate,d=void 0===M.renderOpts.collectedExpire||M.renderOpts.collectedExpire>=r.INFINITE_CACHE?void 0:M.renderOpts.collectedExpire;return{value:{kind:t.CachedRouteKind.APP_ROUTE,status:e.status,body:Buffer.from(await a.arrayBuffer()),headers:b},cacheControl:{revalidate:c,expire:d}}}}catch(b){throw(null==f?void 0:f.isStale)&&await G.onRequestError(a,b,{routerKind:"App Router",routePath:e,routeType:"route",revalidateReason:(0,n.c)({isRevalidate:I,isOnDemandRevalidate:A})},z),b}},l=await G.handleResponse({req:a,nextConfig:w,cacheKey:F,routeKind:f.RouteKind.APP_ROUTE,isFallback:!1,prerenderManifest:y,isRoutePPREnabled:!1,isOnDemandRevalidate:A,revalidateOnlyGenerated:B,responseGenerator:k,waitUntil:c.waitUntil});if(!E)return null;if((null==l||null==(i=l.value)?void 0:i.kind)!==t.CachedRouteKind.APP_ROUTE)throw Object.defineProperty(Error(`Invariant: app-route received invalid cache entry ${null==l||null==(j=l.value)?void 0:j.kind}`),"__NEXT_ERROR_CODE",{value:"E701",enumerable:!1,configurable:!0});(0,h.getRequestMeta)(a,"minimalMode")||b.setHeader("x-nextjs-cache",A?"REVALIDATED":l.isMiss?"MISS":l.isStale?"STALE":"HIT"),x&&b.setHeader("Cache-Control","private, no-cache, no-store, max-age=0, must-revalidate");let m=(0,p.fromNodeOutgoingHttpHeaders)(l.value.headers);return(0,h.getRequestMeta)(a,"minimalMode")&&E||m.delete(r.NEXT_CACHE_TAGS_HEADER),!l.cacheControl||b.getHeader("Cache-Control")||m.get("Cache-Control")||m.set("Cache-Control",(0,q.getCacheControlHeader)(l.cacheControl)),await (0,o.I)(N,O,new Response(l.value.body,{headers:m,status:l.value.status||200})),null};L?await g(L):await K.withPropagatedContext(a.headers,()=>K.trace(m.BaseServerSpan.handleRequest,{spanName:`${J} ${a.url}`,kind:i.SpanKind.SERVER,attributes:{"http.method":J,"http.target":a.url}},g))}catch(b){if(b instanceof s.NoFallbackError||await G.onRequestError(a,b,{routerKind:"App Router",routePath:D,routeType:"route",revalidateReason:(0,n.c)({isRevalidate:I,isOnDemandRevalidate:A})}),E)throw b;return await (0,o.I)(N,O,new Response(null,{status:500})),null}}},33873:a=>{a.exports=require("path")},44870:a=>{a.exports=require("next/dist/compiled/next-server/app-route.runtime.prod.js")},48161:a=>{a.exports=require("node:os")},57477:(a,b,c)=>{c.d(b,{B0:()=>t,Ip:()=>k,T8:()=>q,_T:()=>p,dR:()=>r,mx:()=>o,nj:()=>v,st:()=>s,xB:()=>l,yv:()=>u,zG:()=>n,zY:()=>w});var d=c(73024),e=c(76760),f=c.n(e),g=c(48161),h=c.n(g);let i=/^[a-z0-9](?:[a-z0-9-]{0,58}[a-z0-9])?$/,j=["_inbox/","_Workflows/","00_Org/","01_Customers/","02_Sales/","03_Product/","04_Operations/","05_Finance/","06_Legal/","Permanent/","Wiki/"];function k(a){if(!i.test(a))throw Error(`Invalid clientId: ${a}`);return f().join(process.env.LEEDAB_BRAINS_ROOT?f().resolve(process.env.LEEDAB_BRAINS_ROOT):f().resolve(h().homedir(),"leedab-brains"),a)}async function l(a){try{return(await d.promises.stat(k(a))).isDirectory()}catch{return!1}}function m(a,b){if(b.includes("..")||f().isAbsolute(b))throw Error(`Refused: path contains traversal or is absolute: ${b}`);if(!j.some(a=>b.startsWith(a)))throw Error(`Refused: path "${b}" doesn't start with an allowed prefix (${j.join(", ")})`);let c=k(a),d=f().resolve(c,b);if(!d.startsWith(c+f().sep))throw Error(`Refused: path resolves outside brain root: ${b}`);return d}async function n(a,b){try{if(!await l(a))return{ok:!1,error:`No brain at ${k(a)}. Run bin/onboard-customer.sh first.`};let c=m(a,b),e=await d.promises.readFile(c,"utf8");return{ok:!0,body:e,path:c}}catch(a){return{ok:!1,error:a.message}}}async function o(a,b,c){try{if(!await l(a))return{ok:!1,error:`No brain at ${k(a)}. Run bin/onboard-customer.sh first.`};let e=m(a,b);return await d.promises.mkdir(f().dirname(e),{recursive:!0}),await d.promises.writeFile(e,c,"utf8"),{ok:!0,path:e,bytes:Buffer.byteLength(c,"utf8")}}catch(a){return{ok:!1,error:a.message}}}async function p(a,b,c={}){try{if(!await l(a))return{ok:!1,error:`No brain at ${k(a)}.`};let e=b.endsWith("/")?b:b+"/",g=m(a,e+"__list_sentinel__"),h=f().dirname(g),i=[];try{i=await d.promises.readdir(h)}catch{return{ok:!0,entries:[]}}let j=c.extension??".md",n=c.sinceISO?Date.parse(c.sinceISO):0,o=[];for(let a of i){if(j&&!a.endsWith(j))continue;let b=f().join(h,a),c=await d.promises.stat(b);c.isFile()&&(n&&c.mtimeMs<n||o.push({relativePath:e+a,absolutePath:b,bytes:c.size,modifiedISO:new Date(c.mtimeMs).toISOString()}))}return o.sort((a,b)=>Date.parse(b.modifiedISO)-Date.parse(a.modifiedISO)),{ok:!0,entries:c.limit?o.slice(0,c.limit):o}}catch(a){return{ok:!1,error:a.message}}}async function q(a,b,c){try{if(!await l(a))return{ok:!1,error:`No brain at ${k(a)}. Run bin/onboard-customer.sh first.`};let e=m(a,b);await d.promises.mkdir(f().dirname(e),{recursive:!0});let g="";try{let a=await d.promises.readFile(e,"utf8");a.length>0&&!a.endsWith("\n")&&(g="\n")}catch{}return await d.promises.appendFile(e,g+c,"utf8"),{ok:!0,path:e,bytes:Buffer.byteLength(g+c,"utf8")}}catch(a){return{ok:!1,error:a.message}}}function r(){return new Date().toISOString().slice(0,10)}function s(){return new Date().toISOString()}function t(a){return a.toLowerCase().replace(/[^a-z0-9]+/g,"-").replace(/^-+|-+$/g,"").slice(0,60)}function u(a){if(!a.startsWith("---\n")&&!a.startsWith("---\r\n"))return{frontmatter:{},body:a};let b=a.indexOf("\n---",4);if(-1===b)return{frontmatter:{},body:a};let c=a.slice(4,b),d=a.slice(b+4).replace(/^\r?\n/,""),e={},f=null,g=[],h=()=>{null!==f&&(e[f]=[...g],g.length=0,f=null)};for(let a of c.split(/\r?\n/)){if(""===a.trim())continue;let b=a.match(/^\s*-\s+(.*)$/);if(b&&null!==f){let a=b[1].trim(),c=a.startsWith('"')&&a.endsWith('"')||a.startsWith("'")&&a.endsWith("'")?a.slice(1,-1):a;g.push(c);continue}let c=a.match(/^([A-Za-z0-9_\-.]+)\s*:\s*(.*)$/);if(c){h();let a=c[1],b=c[2];if(""===b){f=a;continue}e[a]=function(a){let b=a.trim();if(""===b||"null"===b||"~"===b)return null;if("true"===b)return!0;if("false"===b)return!1;if(b.startsWith('"')&&b.endsWith('"'))return b.slice(1,-1).replace(/\\"/g,'"').replace(/\\\\/g,"\\");if(b.startsWith("'")&&b.endsWith("'"))return b.slice(1,-1).replace(/\\'/g,"'");if(b.startsWith("[")&&b.endsWith("]")){let a=b.slice(1,-1).trim();return a?a.split(/\s*,\s*/).map(a=>{let b=a.trim();return b.startsWith('"')&&b.endsWith('"')||b.startsWith("'")&&b.endsWith("'")?b.slice(1,-1):b}):[]}return/^-?\d+$/.test(b)||/^-?\d*\.\d+$/.test(b)?Number(b):b}(b)}}return h(),{frontmatter:e,body:d}}function v(a,b){let c=Object.keys(a);if(0===c.length)return b.startsWith("---"),b;let d=["---"];for(let b of c){var e;d.push(`${b}: ${null===(e=a[b])?"null":"boolean"==typeof e||"number"==typeof e?String(e):Array.isArray(e)?"["+e.map(a=>/[,\s:#]/.test(a)?`"${a.replace(/"/g,'\\"')}"`:a).join(", ")+"]":""===e||/^[\d\s]/.test(e)||/[:#\n"']/.test(e)||"true"===e||"false"===e||"null"===e||"~"===e?`"${e.replace(/"/g,'\\"')}"`:e}`)}return d.push("---",""),d.join("\n")+b.replace(/^\n+/,"")}function w(a){if(!a||"object"!=typeof a||Array.isArray(a))return{ok:!1,error:"patch must be a flat object"};let b={};for(let[c,d]of Object.entries(a)){if(!/^[A-Za-z0-9_\-.]+$/.test(c))return{ok:!1,error:`invalid frontmatter key "${c}" (allowed: letters / digits / _ - .)`};if(null===d||"string"==typeof d||"number"==typeof d||"boolean"==typeof d)b[c]=d;else{if(!(Array.isArray(d)&&d.every(a=>"string"==typeof a)))return{ok:!1,error:`value for "${c}" must be string / number / boolean / null / string[] — got ${typeof d}`};b[c]=d}}return{ok:!0,patch:b}}},63033:a=>{a.exports=require("next/dist/server/app-render/work-unit-async-storage.external.js")},73024:a=>{a.exports=require("node:fs")},76760:a=>{a.exports=require("node:path")},77598:a=>{a.exports=require("node:crypto")},79748:a=>{a.exports=require("fs/promises")},86439:a=>{a.exports=require("next/dist/shared/lib/no-fallback-error.external")},94735:a=>{a.exports=require("events")}};var b=require("../../../../webpack-runtime.js");b.C(a);var c=b.X(0,[5873,1692,897,6255,4768],()=>b(b.s=29922));module.exports=c})();
@@ -1 +1 @@
1
- globalThis.__RSC_MANIFEST=(globalThis.__RSC_MANIFEST||{});globalThis.__RSC_MANIFEST["/api/delivery/qbr-brief/route"]={"moduleLoading":{"prefix":"/_next/"},"ssrModuleMapping":{"622":{"*":{"id":"82146","name":"*","chunks":[],"async":false}},"838":{"*":{"id":"62823","name":"*","chunks":[],"async":false}},"1062":{"*":{"id":"38916","name":"*","chunks":[],"async":false}},"1959":{"*":{"id":"31603","name":"*","chunks":[],"async":false}},"3886":{"*":{"id":"75170","name":"*","chunks":[],"async":false}},"4431":{"*":{"id":"12263","name":"*","chunks":[],"async":false}},"5278":{"*":{"id":"78922","name":"*","chunks":[],"async":false}},"7150":{"*":{"id":"54160","name":"*","chunks":[],"async":false}},"7989":{"*":{"id":"68495","name":"*","chunks":[],"async":false}},"8924":{"*":{"id":"29234","name":"*","chunks":[],"async":false}},"9766":{"*":{"id":"77526","name":"*","chunks":[],"async":false}}},"edgeSSRModuleMapping":{},"clientModules":{"/Users/muiezmakkawi/Documents/LeedAB-OS/apps/console/node_modules/next/dist/client/components/builtin/global-error.js":{"id":7150,"name":"*","chunks":[],"async":false},"/Users/muiezmakkawi/Documents/LeedAB-OS/apps/console/node_modules/next/dist/esm/client/components/builtin/global-error.js":{"id":7150,"name":"*","chunks":[],"async":false},"/Users/muiezmakkawi/Documents/LeedAB-OS/apps/console/node_modules/next/dist/client/components/client-page.js":{"id":1959,"name":"*","chunks":[],"async":false},"/Users/muiezmakkawi/Documents/LeedAB-OS/apps/console/node_modules/next/dist/esm/client/components/client-page.js":{"id":1959,"name":"*","chunks":[],"async":false},"/Users/muiezmakkawi/Documents/LeedAB-OS/apps/console/node_modules/next/dist/client/components/client-segment.js":{"id":7989,"name":"*","chunks":[],"async":false},"/Users/muiezmakkawi/Documents/LeedAB-OS/apps/console/node_modules/next/dist/esm/client/components/client-segment.js":{"id":7989,"name":"*","chunks":[],"async":false},"/Users/muiezmakkawi/Documents/LeedAB-OS/apps/console/node_modules/next/dist/client/components/http-access-fallback/error-boundary.js":{"id":3886,"name":"*","chunks":[],"async":false},"/Users/muiezmakkawi/Documents/LeedAB-OS/apps/console/node_modules/next/dist/esm/client/components/http-access-fallback/error-boundary.js":{"id":3886,"name":"*","chunks":[],"async":false},"/Users/muiezmakkawi/Documents/LeedAB-OS/apps/console/node_modules/next/dist/client/components/layout-router.js":{"id":9766,"name":"*","chunks":[],"async":false},"/Users/muiezmakkawi/Documents/LeedAB-OS/apps/console/node_modules/next/dist/esm/client/components/layout-router.js":{"id":9766,"name":"*","chunks":[],"async":false},"/Users/muiezmakkawi/Documents/LeedAB-OS/apps/console/node_modules/next/dist/client/components/metadata/async-metadata.js":{"id":5278,"name":"*","chunks":[],"async":false},"/Users/muiezmakkawi/Documents/LeedAB-OS/apps/console/node_modules/next/dist/esm/client/components/metadata/async-metadata.js":{"id":5278,"name":"*","chunks":[],"async":false},"/Users/muiezmakkawi/Documents/LeedAB-OS/apps/console/node_modules/next/dist/client/components/render-from-template-context.js":{"id":8924,"name":"*","chunks":[],"async":false},"/Users/muiezmakkawi/Documents/LeedAB-OS/apps/console/node_modules/next/dist/esm/client/components/render-from-template-context.js":{"id":8924,"name":"*","chunks":[],"async":false},"/Users/muiezmakkawi/Documents/LeedAB-OS/apps/console/node_modules/next/dist/lib/framework/boundary-components.js":{"id":4431,"name":"*","chunks":[],"async":false},"/Users/muiezmakkawi/Documents/LeedAB-OS/apps/console/node_modules/next/dist/esm/lib/framework/boundary-components.js":{"id":4431,"name":"*","chunks":[],"async":false},"/Users/muiezmakkawi/Documents/LeedAB-OS/apps/console/node_modules/next/dist/lib/metadata/generate/icon-mark.js":{"id":622,"name":"*","chunks":[],"async":false},"/Users/muiezmakkawi/Documents/LeedAB-OS/apps/console/node_modules/next/dist/esm/lib/metadata/generate/icon-mark.js":{"id":622,"name":"*","chunks":[],"async":false},"/Users/muiezmakkawi/Documents/LeedAB-OS/apps/console/node_modules/next/font/google/target.css?{\"path\":\"app/layout.tsx\",\"import\":\"Geist\",\"arguments\":[{\"subsets\":[\"latin\"],\"weight\":[\"300\",\"400\",\"500\",\"600\",\"700\"],\"variable\":\"--font-geist-sans\",\"display\":\"swap\"}],\"variableName\":\"geistSans\"}":{"id":5725,"name":"*","chunks":["7177","static/chunks/app/layout-bd27cc63fde6b953.js"],"async":false},"/Users/muiezmakkawi/Documents/LeedAB-OS/apps/console/node_modules/next/font/google/target.css?{\"path\":\"app/layout.tsx\",\"import\":\"Geist_Mono\",\"arguments\":[{\"subsets\":[\"latin\"],\"weight\":[\"400\",\"500\"],\"variable\":\"--font-geist-mono\",\"display\":\"swap\"}],\"variableName\":\"geistMono\"}":{"id":4485,"name":"*","chunks":["7177","static/chunks/app/layout-bd27cc63fde6b953.js"],"async":false},"/Users/muiezmakkawi/Documents/LeedAB-OS/apps/console/node_modules/next/font/google/target.css?{\"path\":\"app/layout.tsx\",\"import\":\"Instrument_Serif\",\"arguments\":[{\"subsets\":[\"latin\"],\"weight\":\"400\",\"style\":[\"normal\",\"italic\"],\"variable\":\"--font-instrument-serif\",\"display\":\"swap\"}],\"variableName\":\"instrumentSerif\"}":{"id":9919,"name":"*","chunks":["7177","static/chunks/app/layout-bd27cc63fde6b953.js"],"async":false},"/Users/muiezmakkawi/Documents/LeedAB-OS/apps/console/app/globals.css":{"id":1290,"name":"*","chunks":["7177","static/chunks/app/layout-bd27cc63fde6b953.js"],"async":false},"/Users/muiezmakkawi/Documents/LeedAB-OS/apps/console/app/page.tsx":{"id":1062,"name":"*","chunks":["8118","static/chunks/8118-681f2688832ccc66.js","8974","static/chunks/app/page-01558715b1be9361.js"],"async":false},"/Users/muiezmakkawi/Documents/LeedAB-OS/apps/console/app/gtm/GtmClient.tsx":{"id":838,"name":"*","chunks":[],"async":false}},"entryCSSFiles":{"/Users/muiezmakkawi/Documents/LeedAB-OS/apps/console/":[],"/Users/muiezmakkawi/Documents/LeedAB-OS/apps/console/app/layout":[{"inlined":false,"path":"static/css/4bdbd0680d42c54d.css"}],"/Users/muiezmakkawi/Documents/LeedAB-OS/apps/console/app/page":[],"/Users/muiezmakkawi/Documents/LeedAB-OS/apps/console/app/api/delivery/qbr-brief/route":[]},"rscModuleMapping":{"622":{"*":{"id":"51384","name":"*","chunks":[],"async":false}},"838":{"*":{"id":"3287","name":"*","chunks":[],"async":false}},"1062":{"*":{"id":"17742","name":"*","chunks":[],"async":false}},"1290":{"*":{"id":"82704","name":"*","chunks":[],"async":false}},"1959":{"*":{"id":"23597","name":"*","chunks":[],"async":false}},"3886":{"*":{"id":"89748","name":"*","chunks":[],"async":false}},"4431":{"*":{"id":"73041","name":"*","chunks":[],"async":false}},"5278":{"*":{"id":"7184","name":"*","chunks":[],"async":false}},"7150":{"*":{"id":"81170","name":"*","chunks":[],"async":false}},"7989":{"*":{"id":"36893","name":"*","chunks":[],"async":false}},"8924":{"*":{"id":"69576","name":"*","chunks":[],"async":false}},"9766":{"*":{"id":"6060","name":"*","chunks":[],"async":false}}},"edgeRscModuleMapping":{}}
1
+ globalThis.__RSC_MANIFEST=(globalThis.__RSC_MANIFEST||{});globalThis.__RSC_MANIFEST["/api/delivery/qbr-brief/route"]={"moduleLoading":{"prefix":"/_next/"},"ssrModuleMapping":{"622":{"*":{"id":"82146","name":"*","chunks":[],"async":false}},"838":{"*":{"id":"62823","name":"*","chunks":[],"async":false}},"1959":{"*":{"id":"31603","name":"*","chunks":[],"async":false}},"3886":{"*":{"id":"75170","name":"*","chunks":[],"async":false}},"4431":{"*":{"id":"12263","name":"*","chunks":[],"async":false}},"5086":{"*":{"id":"27231","name":"*","chunks":[],"async":false}},"5278":{"*":{"id":"78922","name":"*","chunks":[],"async":false}},"7150":{"*":{"id":"54160","name":"*","chunks":[],"async":false}},"7989":{"*":{"id":"68495","name":"*","chunks":[],"async":false}},"8924":{"*":{"id":"29234","name":"*","chunks":[],"async":false}},"9766":{"*":{"id":"77526","name":"*","chunks":[],"async":false}}},"edgeSSRModuleMapping":{},"clientModules":{"/Users/muiezmakkawi/Documents/LeedAB-OS/apps/console/node_modules/next/dist/client/components/builtin/global-error.js":{"id":7150,"name":"*","chunks":[],"async":false},"/Users/muiezmakkawi/Documents/LeedAB-OS/apps/console/node_modules/next/dist/esm/client/components/builtin/global-error.js":{"id":7150,"name":"*","chunks":[],"async":false},"/Users/muiezmakkawi/Documents/LeedAB-OS/apps/console/node_modules/next/dist/client/components/client-page.js":{"id":1959,"name":"*","chunks":[],"async":false},"/Users/muiezmakkawi/Documents/LeedAB-OS/apps/console/node_modules/next/dist/esm/client/components/client-page.js":{"id":1959,"name":"*","chunks":[],"async":false},"/Users/muiezmakkawi/Documents/LeedAB-OS/apps/console/node_modules/next/dist/client/components/client-segment.js":{"id":7989,"name":"*","chunks":[],"async":false},"/Users/muiezmakkawi/Documents/LeedAB-OS/apps/console/node_modules/next/dist/esm/client/components/client-segment.js":{"id":7989,"name":"*","chunks":[],"async":false},"/Users/muiezmakkawi/Documents/LeedAB-OS/apps/console/node_modules/next/dist/client/components/http-access-fallback/error-boundary.js":{"id":3886,"name":"*","chunks":[],"async":false},"/Users/muiezmakkawi/Documents/LeedAB-OS/apps/console/node_modules/next/dist/esm/client/components/http-access-fallback/error-boundary.js":{"id":3886,"name":"*","chunks":[],"async":false},"/Users/muiezmakkawi/Documents/LeedAB-OS/apps/console/node_modules/next/dist/client/components/layout-router.js":{"id":9766,"name":"*","chunks":[],"async":false},"/Users/muiezmakkawi/Documents/LeedAB-OS/apps/console/node_modules/next/dist/esm/client/components/layout-router.js":{"id":9766,"name":"*","chunks":[],"async":false},"/Users/muiezmakkawi/Documents/LeedAB-OS/apps/console/node_modules/next/dist/client/components/metadata/async-metadata.js":{"id":5278,"name":"*","chunks":[],"async":false},"/Users/muiezmakkawi/Documents/LeedAB-OS/apps/console/node_modules/next/dist/esm/client/components/metadata/async-metadata.js":{"id":5278,"name":"*","chunks":[],"async":false},"/Users/muiezmakkawi/Documents/LeedAB-OS/apps/console/node_modules/next/dist/client/components/render-from-template-context.js":{"id":8924,"name":"*","chunks":[],"async":false},"/Users/muiezmakkawi/Documents/LeedAB-OS/apps/console/node_modules/next/dist/esm/client/components/render-from-template-context.js":{"id":8924,"name":"*","chunks":[],"async":false},"/Users/muiezmakkawi/Documents/LeedAB-OS/apps/console/node_modules/next/dist/lib/framework/boundary-components.js":{"id":4431,"name":"*","chunks":[],"async":false},"/Users/muiezmakkawi/Documents/LeedAB-OS/apps/console/node_modules/next/dist/esm/lib/framework/boundary-components.js":{"id":4431,"name":"*","chunks":[],"async":false},"/Users/muiezmakkawi/Documents/LeedAB-OS/apps/console/node_modules/next/dist/lib/metadata/generate/icon-mark.js":{"id":622,"name":"*","chunks":[],"async":false},"/Users/muiezmakkawi/Documents/LeedAB-OS/apps/console/node_modules/next/dist/esm/lib/metadata/generate/icon-mark.js":{"id":622,"name":"*","chunks":[],"async":false},"/Users/muiezmakkawi/Documents/LeedAB-OS/apps/console/node_modules/next/font/google/target.css?{\"path\":\"app/layout.tsx\",\"import\":\"Geist\",\"arguments\":[{\"subsets\":[\"latin\"],\"weight\":[\"300\",\"400\",\"500\",\"600\",\"700\"],\"variable\":\"--font-geist-sans\",\"display\":\"swap\"}],\"variableName\":\"geistSans\"}":{"id":5725,"name":"*","chunks":["7177","static/chunks/app/layout-bd27cc63fde6b953.js"],"async":false},"/Users/muiezmakkawi/Documents/LeedAB-OS/apps/console/node_modules/next/font/google/target.css?{\"path\":\"app/layout.tsx\",\"import\":\"Geist_Mono\",\"arguments\":[{\"subsets\":[\"latin\"],\"weight\":[\"400\",\"500\"],\"variable\":\"--font-geist-mono\",\"display\":\"swap\"}],\"variableName\":\"geistMono\"}":{"id":4485,"name":"*","chunks":["7177","static/chunks/app/layout-bd27cc63fde6b953.js"],"async":false},"/Users/muiezmakkawi/Documents/LeedAB-OS/apps/console/node_modules/next/font/google/target.css?{\"path\":\"app/layout.tsx\",\"import\":\"Instrument_Serif\",\"arguments\":[{\"subsets\":[\"latin\"],\"weight\":\"400\",\"style\":[\"normal\",\"italic\"],\"variable\":\"--font-instrument-serif\",\"display\":\"swap\"}],\"variableName\":\"instrumentSerif\"}":{"id":9919,"name":"*","chunks":["7177","static/chunks/app/layout-bd27cc63fde6b953.js"],"async":false},"/Users/muiezmakkawi/Documents/LeedAB-OS/apps/console/app/globals.css":{"id":1290,"name":"*","chunks":["7177","static/chunks/app/layout-bd27cc63fde6b953.js"],"async":false},"/Users/muiezmakkawi/Documents/LeedAB-OS/apps/console/app/page.tsx":{"id":5086,"name":"*","chunks":["7973","static/chunks/7973-072db1a3857a8fe9.js","8974","static/chunks/app/page-bdfdbf7b657f4722.js"],"async":false},"/Users/muiezmakkawi/Documents/LeedAB-OS/apps/console/app/gtm/GtmClient.tsx":{"id":838,"name":"*","chunks":[],"async":false}},"entryCSSFiles":{"/Users/muiezmakkawi/Documents/LeedAB-OS/apps/console/":[],"/Users/muiezmakkawi/Documents/LeedAB-OS/apps/console/app/layout":[{"inlined":false,"path":"static/css/b2a91ecca3bf1487.css"}],"/Users/muiezmakkawi/Documents/LeedAB-OS/apps/console/app/page":[],"/Users/muiezmakkawi/Documents/LeedAB-OS/apps/console/app/api/delivery/qbr-brief/route":[]},"rscModuleMapping":{"622":{"*":{"id":"51384","name":"*","chunks":[],"async":false}},"838":{"*":{"id":"3287","name":"*","chunks":[],"async":false}},"1290":{"*":{"id":"82704","name":"*","chunks":[],"async":false}},"1959":{"*":{"id":"23597","name":"*","chunks":[],"async":false}},"3886":{"*":{"id":"89748","name":"*","chunks":[],"async":false}},"4431":{"*":{"id":"73041","name":"*","chunks":[],"async":false}},"5086":{"*":{"id":"17742","name":"*","chunks":[],"async":false}},"5278":{"*":{"id":"7184","name":"*","chunks":[],"async":false}},"7150":{"*":{"id":"81170","name":"*","chunks":[],"async":false}},"7989":{"*":{"id":"36893","name":"*","chunks":[],"async":false}},"8924":{"*":{"id":"69576","name":"*","chunks":[],"async":false}},"9766":{"*":{"id":"6060","name":"*","chunks":[],"async":false}}},"edgeRscModuleMapping":{}}
@@ -1 +1 @@
1
- (()=>{var a={};a.id=3783,a.ids=[3783],a.modules={261:a=>{"use strict";a.exports=require("next/dist/shared/lib/router/utils/app-paths")},3295:a=>{"use strict";a.exports=require("next/dist/server/app-render/after-task-async-storage.external.js")},7506:(a,b,c)=>{"use strict";c.d(b,{sb:()=>j});var d=c(73024),e=c(76760),f=c.n(e),g=c(57477);let h=/^[a-z0-9](?:[a-z0-9-]{0,58}[a-z0-9])?$/,i=/^[a-z][a-z0-9_]{1,40}\.[a-z][a-z0-9_]{1,40}$/;async function j(a){try{if(!h.test(a.clientId))return{ok:!1,error:`Invalid clientId: ${a.clientId}`};if(!i.test(a.agent))return{ok:!1,error:`Invalid agent format: ${a.agent} (expected agent.tool)`};if(!await (0,g.xB)(a.clientId))return{ok:!1,error:`No brain for ${a.clientId} — audit not written`};let b={...a,inputSummary:function(a){if(!a)return;let b={};for(let[c,d]of Object.entries(a))"string"==typeof d?b[c]=d.length>200?`${d.slice(0,200)}…[+${d.length-200} chars]`:d:"number"==typeof d||"boolean"==typeof d||null===d?b[c]=d:Array.isArray(d)?b[c]=`[array length=${d.length}]`:"object"==typeof d?b[c]=`[object keys=${Object.keys(d).length}]`:b[c]=`[${typeof d}]`;return b}(a.inputSummary)},c=function(a,b){let c=`${b.getUTCFullYear()}-${String(b.getUTCMonth()+1).padStart(2,"0")}`;return f().join((0,g.Ip)(a),"_inbox",`audit-${c}.jsonl`)}(a.clientId,new Date(a.ts));await d.promises.mkdir(f().dirname(c),{recursive:!0});let e=JSON.stringify(b)+"\n";return await d.promises.appendFile(c,e,"utf8"),{ok:!0,path:c,bytes:Buffer.byteLength(e,"utf8")}}catch(a){return{ok:!1,error:a.message}}}},10846:a=>{"use strict";a.exports=require("next/dist/compiled/next-server/app-page.runtime.prod.js")},11702:(a,b,c)=>{"use strict";c.d(b,{AU:()=>h,xH:()=>g});var d=c(10641),e=c(90897);function f(a){return a.ok?null:"agentId"in a?d.NextResponse.json({error:a.error,message:a.message,clientId:a.clientId,agentId:a.agentId},{status:a.status}):"reason"in a&&void 0!==a.reason?d.NextResponse.json({error:a.error,reason:a.reason,message:a.message},{status:a.status}):d.NextResponse.json({error:a.error,message:a.message},{status:a.status})}async function g(){return f(await (0,e.b)())}async function h(a,b){return f(await (0,e.s)(a,b))}},19121:a=>{"use strict";a.exports=require("next/dist/server/app-render/action-async-storage.external.js")},29021:a=>{"use strict";a.exports=require("fs")},29294:a=>{"use strict";a.exports=require("next/dist/server/app-render/work-async-storage.external.js")},33873:a=>{"use strict";a.exports=require("path")},44870:a=>{"use strict";a.exports=require("next/dist/compiled/next-server/app-route.runtime.prod.js")},48161:a=>{"use strict";a.exports=require("node:os")},57477:(a,b,c)=>{"use strict";c.d(b,{B0:()=>t,Ip:()=>k,T8:()=>q,_T:()=>p,dR:()=>r,mx:()=>o,nj:()=>v,st:()=>s,xB:()=>l,yv:()=>u,zG:()=>n,zY:()=>w});var d=c(73024),e=c(76760),f=c.n(e),g=c(48161),h=c.n(g);let i=/^[a-z0-9](?:[a-z0-9-]{0,58}[a-z0-9])?$/,j=["_inbox/","_Workflows/","00_Org/","01_Customers/","02_Sales/","03_Product/","04_Operations/","05_Finance/","06_Legal/","Permanent/","Wiki/"];function k(a){if(!i.test(a))throw Error(`Invalid clientId: ${a}`);return f().join(process.env.LEEDAB_BRAINS_ROOT?f().resolve(process.env.LEEDAB_BRAINS_ROOT):f().resolve(h().homedir(),"leedab-brains"),a)}async function l(a){try{return(await d.promises.stat(k(a))).isDirectory()}catch{return!1}}function m(a,b){if(b.includes("..")||f().isAbsolute(b))throw Error(`Refused: path contains traversal or is absolute: ${b}`);if(!j.some(a=>b.startsWith(a)))throw Error(`Refused: path "${b}" doesn't start with an allowed prefix (${j.join(", ")})`);let c=k(a),d=f().resolve(c,b);if(!d.startsWith(c+f().sep))throw Error(`Refused: path resolves outside brain root: ${b}`);return d}async function n(a,b){try{if(!await l(a))return{ok:!1,error:`No brain at ${k(a)}. Run bin/onboard-customer.sh first.`};let c=m(a,b),e=await d.promises.readFile(c,"utf8");return{ok:!0,body:e,path:c}}catch(a){return{ok:!1,error:a.message}}}async function o(a,b,c){try{if(!await l(a))return{ok:!1,error:`No brain at ${k(a)}. Run bin/onboard-customer.sh first.`};let e=m(a,b);return await d.promises.mkdir(f().dirname(e),{recursive:!0}),await d.promises.writeFile(e,c,"utf8"),{ok:!0,path:e,bytes:Buffer.byteLength(c,"utf8")}}catch(a){return{ok:!1,error:a.message}}}async function p(a,b,c={}){try{if(!await l(a))return{ok:!1,error:`No brain at ${k(a)}.`};let e=b.endsWith("/")?b:b+"/",g=m(a,e+"__list_sentinel__"),h=f().dirname(g),i=[];try{i=await d.promises.readdir(h)}catch{return{ok:!0,entries:[]}}let j=c.extension??".md",n=c.sinceISO?Date.parse(c.sinceISO):0,o=[];for(let a of i){if(j&&!a.endsWith(j))continue;let b=f().join(h,a),c=await d.promises.stat(b);c.isFile()&&(n&&c.mtimeMs<n||o.push({relativePath:e+a,absolutePath:b,bytes:c.size,modifiedISO:new Date(c.mtimeMs).toISOString()}))}return o.sort((a,b)=>Date.parse(b.modifiedISO)-Date.parse(a.modifiedISO)),{ok:!0,entries:c.limit?o.slice(0,c.limit):o}}catch(a){return{ok:!1,error:a.message}}}async function q(a,b,c){try{if(!await l(a))return{ok:!1,error:`No brain at ${k(a)}. Run bin/onboard-customer.sh first.`};let e=m(a,b);await d.promises.mkdir(f().dirname(e),{recursive:!0});let g="";try{let a=await d.promises.readFile(e,"utf8");a.length>0&&!a.endsWith("\n")&&(g="\n")}catch{}return await d.promises.appendFile(e,g+c,"utf8"),{ok:!0,path:e,bytes:Buffer.byteLength(g+c,"utf8")}}catch(a){return{ok:!1,error:a.message}}}function r(){return new Date().toISOString().slice(0,10)}function s(){return new Date().toISOString()}function t(a){return a.toLowerCase().replace(/[^a-z0-9]+/g,"-").replace(/^-+|-+$/g,"").slice(0,60)}function u(a){if(!a.startsWith("---\n")&&!a.startsWith("---\r\n"))return{frontmatter:{},body:a};let b=a.indexOf("\n---",4);if(-1===b)return{frontmatter:{},body:a};let c=a.slice(4,b),d=a.slice(b+4).replace(/^\r?\n/,""),e={},f=null,g=[],h=()=>{null!==f&&(e[f]=[...g],g.length=0,f=null)};for(let a of c.split(/\r?\n/)){if(""===a.trim())continue;let b=a.match(/^\s*-\s+(.*)$/);if(b&&null!==f){let a=b[1].trim(),c=a.startsWith('"')&&a.endsWith('"')||a.startsWith("'")&&a.endsWith("'")?a.slice(1,-1):a;g.push(c);continue}let c=a.match(/^([A-Za-z0-9_\-.]+)\s*:\s*(.*)$/);if(c){h();let a=c[1],b=c[2];if(""===b){f=a;continue}e[a]=function(a){let b=a.trim();if(""===b||"null"===b||"~"===b)return null;if("true"===b)return!0;if("false"===b)return!1;if(b.startsWith('"')&&b.endsWith('"'))return b.slice(1,-1).replace(/\\"/g,'"').replace(/\\\\/g,"\\");if(b.startsWith("'")&&b.endsWith("'"))return b.slice(1,-1).replace(/\\'/g,"'");if(b.startsWith("[")&&b.endsWith("]")){let a=b.slice(1,-1).trim();return a?a.split(/\s*,\s*/).map(a=>{let b=a.trim();return b.startsWith('"')&&b.endsWith('"')||b.startsWith("'")&&b.endsWith("'")?b.slice(1,-1):b}):[]}return/^-?\d+$/.test(b)||/^-?\d*\.\d+$/.test(b)?Number(b):b}(b)}}return h(),{frontmatter:e,body:d}}function v(a,b){let c=Object.keys(a);if(0===c.length)return b.startsWith("---"),b;let d=["---"];for(let b of c){var e;d.push(`${b}: ${null===(e=a[b])?"null":"boolean"==typeof e||"number"==typeof e?String(e):Array.isArray(e)?"["+e.map(a=>/[,\s:#]/.test(a)?`"${a.replace(/"/g,'\\"')}"`:a).join(", ")+"]":""===e||/^[\d\s]/.test(e)||/[:#\n"']/.test(e)||"true"===e||"false"===e||"null"===e||"~"===e?`"${e.replace(/"/g,'\\"')}"`:e}`)}return d.push("---",""),d.join("\n")+b.replace(/^\n+/,"")}function w(a){if(!a||"object"!=typeof a||Array.isArray(a))return{ok:!1,error:"patch must be a flat object"};let b={};for(let[c,d]of Object.entries(a)){if(!/^[A-Za-z0-9_\-.]+$/.test(c))return{ok:!1,error:`invalid frontmatter key "${c}" (allowed: letters / digits / _ - .)`};if(null===d||"string"==typeof d||"number"==typeof d||"boolean"==typeof d)b[c]=d;else{if(!(Array.isArray(d)&&d.every(a=>"string"==typeof a)))return{ok:!1,error:`value for "${c}" must be string / number / boolean / null / string[] — got ${typeof d}`};b[c]=d}}return{ok:!0,patch:b}}},63033:a=>{"use strict";a.exports=require("next/dist/server/app-render/work-unit-async-storage.external.js")},69191:(a,b,c)=>{"use strict";c.r(b),c.d(b,{handler:()=>J,patchFetch:()=>I,routeModule:()=>E,serverHooks:()=>H,workAsyncStorage:()=>F,workUnitAsyncStorage:()=>G});var d={};c.r(d),c.d(d,{POST:()=>D,dynamic:()=>B,runtime:()=>A});var e=c(95736),f=c(9117),g=c(4044),h=c(39326),i=c(32324),j=c(261),k=c(54290),l=c(85328),m=c(38928),n=c(46595),o=c(3421),p=c(17679),q=c(41681),r=c(63446),s=c(86439),t=c(51356),u=c(10641),v=c(86433),w=c(89004),x=c(7506),y=c(11702),z=c(57477);let A="nodejs",B="force-dynamic",C=/^[a-z0-9](?:[a-z0-9-]{0,58}[a-z0-9])?$/;async function D(a){let b=Date.now(),c={};try{c=await a.json()}catch{return u.NextResponse.json({ok:!1,error:"Invalid JSON body"},{status:400})}if("string"!=typeof c.clientId||!C.test(c.clientId))return u.NextResponse.json({ok:!1,error:"clientId required (slug)"},{status:400});let d=c.clientId,e=!0===c.write,f=await (0,w.b_)(d);if(!f)return u.NextResponse.json({ok:!1,error:`No manifest for "${d}".`},{status:404});let g=await (0,y.AU)("delivery",d);if(g)return g;let h=Date.now()-6048e5,[i,j,k]=await Promise.all([(0,v.ny)().catch(()=>[]),(0,v.P8)().catch(()=>[]),(0,v.v)().catch(()=>[])]),l=k.filter(a=>(a.startedAt??0)>h),m=j.filter(a=>"pending"===a.status).length,n=Array.from(new Set(l.map(a=>a.agentId))).sort(),o=[],p="_no escalations log yet_";if(await (0,z.xB)(d)){let a=await (0,z.zG)(d,"04_Operations/escalations.md");a.ok&&(o=(a.body.match(/^## (.+?) — escalate to (\w+)/gm)??[]).slice(-5),p=`${o.length} entries in the log${o.length>0?` — most recent: ${o[o.length-1]}`:""}`)}let q=(0,z.dR)(),r=[`# ${f.display_name} — weekly delivery brief (${q})`,"",`**Industry:** ${f.industry??"—"} \xb7 **Tier:** ${f.tier??"—"} \xb7 **Status:** ${f.status??"active"}`,"","## What moved this week",`- **Agent activity:** ${l.length} run${1===l.length?"":"s"} across ${n.length} agent${1===n.length?"":"s"}`,n.length>0?`- Active agents: ${n.map(a=>`\`${a}\``).join(" \xb7 ")}`:"- No agent activity logged in the last 7 days",`- **Inbox:** ${i.length} unread item${1===i.length?"":"s"}`,`- **Approvals waiting:** ${m}`,"","## Escalations",`- ${p}`,o.length>0?o.slice(-3).map(a=>` - ${a.replace(/^## /,"")}`).join("\n"):"","","## At risk",m>5?`- ${m} approvals queued — Delivery should review whether the approval policy needs tuning.`:"- No notable approval backlog.",o.length>=3?`- ${o.length}+ escalations this week — surface the top one to founders if it touches contractual SLA.`:"- Escalation rate is normal.","","## Needs founders",0===m&&0===o.length?"- Nothing flagged. Delivery handling normally.":`- Review the at-risk items above — let me know if anything needs to surface to Mina.`,"","## Notes","_Customer-vault writes (kickoff briefs, screencasts, escalations) tracked at ~/leedab-brains/"+d+"/._","",`_Generated ${new Date().toISOString()} by Delivery agent._`].filter(Boolean).join("\n"),s=null,t=null;if(e)if(await (0,z.xB)(d)){let a=await (0,z.mx)(d,`_inbox/${q}-weekly-brief.md`,r);a.ok?s=a.path:t=a.error}else t=`No brain at ~/leedab-brains/${d}/. Brief returned only.`;return await (0,x.sb)({ts:new Date().toISOString(),agent:"delivery.weekly_brief",clientId:d,outcome:t?"failed":"ok",durationMs:Date.now()-b,inputSummary:{write:!0===c.write},output:{wrote:s??void 0,error:t??void 0,bytes:r.length}}),u.NextResponse.json({ok:!0,clientId:d,displayName:f.display_name,date:q,brief:r,metrics:{runsThisWeek:l.length,activeAgents:n,inbox:i.length,pendingApprovals:m,escalationsLogged:o.length},written:s,writeError:t})}let E=new e.AppRouteRouteModule({definition:{kind:f.RouteKind.APP_ROUTE,page:"/api/delivery/weekly-brief/route",pathname:"/api/delivery/weekly-brief",filename:"route",bundlePath:"app/api/delivery/weekly-brief/route"},distDir:".next",relativeProjectDir:"",resolvedPagePath:"/Users/muiezmakkawi/Documents/LeedAB-OS/apps/console/app/api/delivery/weekly-brief/route.ts",nextConfigOutput:"standalone",userland:d}),{workAsyncStorage:F,workUnitAsyncStorage:G,serverHooks:H}=E;function I(){return(0,g.patchFetch)({workAsyncStorage:F,workUnitAsyncStorage:G})}async function J(a,b,c){var d;let e="/api/delivery/weekly-brief/route";"/index"===e&&(e="/");let g=await E.prepare(a,b,{srcPage:e,multiZoneDraftMode:!1});if(!g)return b.statusCode=400,b.end("Bad Request"),null==c.waitUntil||c.waitUntil.call(c,Promise.resolve()),null;let{buildId:u,params:v,nextConfig:w,isDraftMode:x,prerenderManifest:y,routerServerContext:z,isOnDemandRevalidate:A,revalidateOnlyGenerated:B,resolvedPathname:C}=g,D=(0,j.normalizeAppPath)(e),F=!!(y.dynamicRoutes[D]||y.routes[C]);if(F&&!x){let a=!!y.routes[C],b=y.dynamicRoutes[D];if(b&&!1===b.fallback&&!a)throw new s.NoFallbackError}let G=null;!F||E.isDev||x||(G="/index"===(G=C)?"/":G);let H=!0===E.isDev||!F,I=F&&!H,J=a.method||"GET",K=(0,i.getTracer)(),L=K.getActiveScopeSpan(),M={params:v,prerenderManifest:y,renderOpts:{experimental:{cacheComponents:!!w.experimental.cacheComponents,authInterrupts:!!w.experimental.authInterrupts},supportsDynamicResponse:H,incrementalCache:(0,h.getRequestMeta)(a,"incrementalCache"),cacheLifeProfiles:null==(d=w.experimental)?void 0:d.cacheLife,isRevalidate:I,waitUntil:c.waitUntil,onClose:a=>{b.on("close",a)},onAfterTaskError:void 0,onInstrumentationRequestError:(b,c,d)=>E.onRequestError(a,b,d,z)},sharedContext:{buildId:u}},N=new k.NodeNextRequest(a),O=new k.NodeNextResponse(b),P=l.NextRequestAdapter.fromNodeNextRequest(N,(0,l.signalFromNodeResponse)(b));try{let d=async c=>E.handle(P,M).finally(()=>{if(!c)return;c.setAttributes({"http.status_code":b.statusCode,"next.rsc":!1});let d=K.getRootSpanAttributes();if(!d)return;if(d.get("next.span_type")!==m.BaseServerSpan.handleRequest)return void console.warn(`Unexpected root span type '${d.get("next.span_type")}'. Please report this Next.js issue https://github.com/vercel/next.js`);let e=d.get("next.route");if(e){let a=`${J} ${e}`;c.setAttributes({"next.route":e,"http.route":e,"next.span_name":a}),c.updateName(a)}else c.updateName(`${J} ${a.url}`)}),g=async g=>{var i,j;let k=async({previousCacheEntry:f})=>{try{if(!(0,h.getRequestMeta)(a,"minimalMode")&&A&&B&&!f)return b.statusCode=404,b.setHeader("x-nextjs-cache","REVALIDATED"),b.end("This page could not be found"),null;let e=await d(g);a.fetchMetrics=M.renderOpts.fetchMetrics;let i=M.renderOpts.pendingWaitUntil;i&&c.waitUntil&&(c.waitUntil(i),i=void 0);let j=M.renderOpts.collectedTags;if(!F)return await (0,o.I)(N,O,e,M.renderOpts.pendingWaitUntil),null;{let a=await e.blob(),b=(0,p.toNodeOutgoingHttpHeaders)(e.headers);j&&(b[r.NEXT_CACHE_TAGS_HEADER]=j),!b["content-type"]&&a.type&&(b["content-type"]=a.type);let c=void 0!==M.renderOpts.collectedRevalidate&&!(M.renderOpts.collectedRevalidate>=r.INFINITE_CACHE)&&M.renderOpts.collectedRevalidate,d=void 0===M.renderOpts.collectedExpire||M.renderOpts.collectedExpire>=r.INFINITE_CACHE?void 0:M.renderOpts.collectedExpire;return{value:{kind:t.CachedRouteKind.APP_ROUTE,status:e.status,body:Buffer.from(await a.arrayBuffer()),headers:b},cacheControl:{revalidate:c,expire:d}}}}catch(b){throw(null==f?void 0:f.isStale)&&await E.onRequestError(a,b,{routerKind:"App Router",routePath:e,routeType:"route",revalidateReason:(0,n.c)({isRevalidate:I,isOnDemandRevalidate:A})},z),b}},l=await E.handleResponse({req:a,nextConfig:w,cacheKey:G,routeKind:f.RouteKind.APP_ROUTE,isFallback:!1,prerenderManifest:y,isRoutePPREnabled:!1,isOnDemandRevalidate:A,revalidateOnlyGenerated:B,responseGenerator:k,waitUntil:c.waitUntil});if(!F)return null;if((null==l||null==(i=l.value)?void 0:i.kind)!==t.CachedRouteKind.APP_ROUTE)throw Object.defineProperty(Error(`Invariant: app-route received invalid cache entry ${null==l||null==(j=l.value)?void 0:j.kind}`),"__NEXT_ERROR_CODE",{value:"E701",enumerable:!1,configurable:!0});(0,h.getRequestMeta)(a,"minimalMode")||b.setHeader("x-nextjs-cache",A?"REVALIDATED":l.isMiss?"MISS":l.isStale?"STALE":"HIT"),x&&b.setHeader("Cache-Control","private, no-cache, no-store, max-age=0, must-revalidate");let m=(0,p.fromNodeOutgoingHttpHeaders)(l.value.headers);return(0,h.getRequestMeta)(a,"minimalMode")&&F||m.delete(r.NEXT_CACHE_TAGS_HEADER),!l.cacheControl||b.getHeader("Cache-Control")||m.get("Cache-Control")||m.set("Cache-Control",(0,q.getCacheControlHeader)(l.cacheControl)),await (0,o.I)(N,O,new Response(l.value.body,{headers:m,status:l.value.status||200})),null};L?await g(L):await K.withPropagatedContext(a.headers,()=>K.trace(m.BaseServerSpan.handleRequest,{spanName:`${J} ${a.url}`,kind:i.SpanKind.SERVER,attributes:{"http.method":J,"http.target":a.url}},g))}catch(b){if(b instanceof s.NoFallbackError||await E.onRequestError(a,b,{routerKind:"App Router",routePath:D,routeType:"route",revalidateReason:(0,n.c)({isRevalidate:I,isOnDemandRevalidate:A})}),F)throw b;return await (0,o.I)(N,O,new Response(null,{status:500})),null}}},73024:a=>{"use strict";a.exports=require("node:fs")},76760:a=>{"use strict";a.exports=require("node:path")},77598:a=>{"use strict";a.exports=require("node:crypto")},78335:()=>{},79748:a=>{"use strict";a.exports=require("fs/promises")},86433:(a,b,c)=>{"use strict";c.d(b,{$A:()=>o,Iu:()=>C,Jc:()=>E,P8:()=>x,PH:()=>B,Qh:()=>w,WT:()=>z,h5:()=>A,ik:()=>D,ny:()=>v,v:()=>F,wr:()=>y});var d=c(29021),e=c(94735),f=c(22709);function g(a){let b=(0,f.fp)();return(a.clientId??"default")===b}let h=f.uV,i=(0,f.dataPath)("inbox.json"),j=(0,f.dataPath)("approvals.json"),k=(0,f.dataPath)("routing.json"),l=(0,f.dataPath)("contacts.json"),m=(0,f.dataPath)("runs.json"),n=globalThis,o=n.__opsBus??(n.__opsBus=function(){let a=new e.EventEmitter;return a.setMaxListeners(0),a}());async function p(){await d.promises.mkdir(h,{recursive:!0})}async function q(a,b){try{await p();let b=await d.promises.readFile(a,"utf8");return JSON.parse(b)}catch{return b}}async function r(a,b){await p();let c=a+".tmp";await d.promises.writeFile(c,JSON.stringify(b,null,2),"utf8"),await d.promises.rename(c,a)}let s=globalThis,t=s.__opsLocks??(s.__opsLocks=new Map);async function u(a,b){let c=(t.get(a)??Promise.resolve()).then(b,b);return t.set(a,c.catch(()=>{})),c}async function v(a){let b=(await q(i,[])).filter(g).sort((a,b)=>b.timestamp-a.timestamp);return a?.status&&(b=b.filter(b=>b.status===a.status)),a?.limit&&(b=b.slice(0,a.limit)),b}async function w(a,b){let c=await u(i,async()=>{let c=await q(i,[]),d=c.findIndex(b=>b.id===a&&g(b));if(-1===d)return null;let{clientId:e,...f}=b;return c[d]={...c[d],...f},await r(i,c),c[d]});return c&&o.emit("inbox:updated",c),c}async function x(a){let b=(await q(j,[])).filter(g).sort((a,b)=>b.createdAt-a.createdAt);return a?.status&&(b=b.filter(b=>b.status===a.status)),a?.limit&&(b=b.slice(0,a.limit)),b}async function y(a){return(await q(j,[])).find(b=>b.id===a&&g(b))??null}async function z(a){let b={...a,clientId:a.clientId??(0,f.fp)()};await u(j,async()=>{let a=await q(j,[]);a.push(b),await r(j,a)}),o.emit("approval:created",b)}async function A(a,b){let c=await u(j,async()=>{let c=await q(j,[]),d=c.findIndex(b=>b.id===a&&g(b));if(-1===d)return null;let{clientId:e,...f}=b;return c[d]={...c[d],...f},await r(j,c),c[d]});return c&&o.emit("approval:updated",c),c}async function B(){return(await q(k,[])).filter(g)}async function C(a){let b=(0,f.fp)(),c=(await q(k,[])).filter(a=>(a.clientId??"default")!==b),d=a.map(a=>({...a,clientId:b}));await r(k,[...c,...d])}async function D(){return(await q(l,[])).filter(g)}async function E(a){let b=(0,f.fp)(),c=(await q(l,[])).filter(a=>(a.clientId??"default")!==b),d=a.map(a=>({...a,clientId:b}));await r(l,[...c,...d])}async function F(a){let b=(await q(m,[])).filter(g).sort((a,b)=>b.startedAt-a.startedAt);return a?.limit?b.slice(0,a.limit):b}},86439:a=>{"use strict";a.exports=require("next/dist/shared/lib/no-fallback-error.external")},94735:a=>{"use strict";a.exports=require("events")},96487:()=>{}};var b=require("../../../../webpack-runtime.js");b.C(a);var c=b.X(0,[5873,1692,897],()=>b(b.s=69191));module.exports=c})();
1
+ (()=>{var a={};a.id=3783,a.ids=[3783],a.modules={261:a=>{"use strict";a.exports=require("next/dist/shared/lib/router/utils/app-paths")},3295:a=>{"use strict";a.exports=require("next/dist/server/app-render/after-task-async-storage.external.js")},7506:(a,b,c)=>{"use strict";c.d(b,{sb:()=>j});var d=c(73024),e=c(76760),f=c.n(e),g=c(57477);let h=/^[a-z0-9](?:[a-z0-9-]{0,58}[a-z0-9])?$/,i=/^[a-z][a-z0-9_]{1,40}\.[a-z][a-z0-9_]{1,40}$/;async function j(a){try{if(!h.test(a.clientId))return{ok:!1,error:`Invalid clientId: ${a.clientId}`};if(!i.test(a.agent))return{ok:!1,error:`Invalid agent format: ${a.agent} (expected agent.tool)`};if(!await (0,g.xB)(a.clientId))return{ok:!1,error:`No brain for ${a.clientId} — audit not written`};let b={...a,inputSummary:function(a){if(!a)return;let b={};for(let[c,d]of Object.entries(a))"string"==typeof d?b[c]=d.length>200?`${d.slice(0,200)}…[+${d.length-200} chars]`:d:"number"==typeof d||"boolean"==typeof d||null===d?b[c]=d:Array.isArray(d)?b[c]=`[array length=${d.length}]`:"object"==typeof d?b[c]=`[object keys=${Object.keys(d).length}]`:b[c]=`[${typeof d}]`;return b}(a.inputSummary)},c=function(a,b){let c=`${b.getUTCFullYear()}-${String(b.getUTCMonth()+1).padStart(2,"0")}`;return f().join((0,g.Ip)(a),"_inbox",`audit-${c}.jsonl`)}(a.clientId,new Date(a.ts));await d.promises.mkdir(f().dirname(c),{recursive:!0});let e=JSON.stringify(b)+"\n";return await d.promises.appendFile(c,e,"utf8"),{ok:!0,path:c,bytes:Buffer.byteLength(e,"utf8")}}catch(a){return{ok:!1,error:a.message}}}},10846:a=>{"use strict";a.exports=require("next/dist/compiled/next-server/app-page.runtime.prod.js")},11702:(a,b,c)=>{"use strict";c.d(b,{AU:()=>h,xH:()=>g});var d=c(10641),e=c(90897);function f(a){return a.ok?null:"agentId"in a?d.NextResponse.json({error:a.error,message:a.message,clientId:a.clientId,agentId:a.agentId},{status:a.status}):"reason"in a&&void 0!==a.reason?d.NextResponse.json({error:a.error,reason:a.reason,message:a.message},{status:a.status}):d.NextResponse.json({error:a.error,message:a.message},{status:a.status})}async function g(){return f(await (0,e.b)())}async function h(a,b){return f(await (0,e.s)(a,b))}},19121:a=>{"use strict";a.exports=require("next/dist/server/app-render/action-async-storage.external.js")},29021:a=>{"use strict";a.exports=require("fs")},29294:a=>{"use strict";a.exports=require("next/dist/server/app-render/work-async-storage.external.js")},33873:a=>{"use strict";a.exports=require("path")},44870:a=>{"use strict";a.exports=require("next/dist/compiled/next-server/app-route.runtime.prod.js")},48161:a=>{"use strict";a.exports=require("node:os")},57477:(a,b,c)=>{"use strict";c.d(b,{B0:()=>t,Ip:()=>k,T8:()=>q,_T:()=>p,dR:()=>r,mx:()=>o,nj:()=>v,st:()=>s,xB:()=>l,yv:()=>u,zG:()=>n,zY:()=>w});var d=c(73024),e=c(76760),f=c.n(e),g=c(48161),h=c.n(g);let i=/^[a-z0-9](?:[a-z0-9-]{0,58}[a-z0-9])?$/,j=["_inbox/","_Workflows/","00_Org/","01_Customers/","02_Sales/","03_Product/","04_Operations/","05_Finance/","06_Legal/","Permanent/","Wiki/"];function k(a){if(!i.test(a))throw Error(`Invalid clientId: ${a}`);return f().join(process.env.LEEDAB_BRAINS_ROOT?f().resolve(process.env.LEEDAB_BRAINS_ROOT):f().resolve(h().homedir(),"leedab-brains"),a)}async function l(a){try{return(await d.promises.stat(k(a))).isDirectory()}catch{return!1}}function m(a,b){if(b.includes("..")||f().isAbsolute(b))throw Error(`Refused: path contains traversal or is absolute: ${b}`);if(!j.some(a=>b.startsWith(a)))throw Error(`Refused: path "${b}" doesn't start with an allowed prefix (${j.join(", ")})`);let c=k(a),d=f().resolve(c,b);if(!d.startsWith(c+f().sep))throw Error(`Refused: path resolves outside brain root: ${b}`);return d}async function n(a,b){try{if(!await l(a))return{ok:!1,error:`No brain at ${k(a)}. Run bin/onboard-customer.sh first.`};let c=m(a,b),e=await d.promises.readFile(c,"utf8");return{ok:!0,body:e,path:c}}catch(a){return{ok:!1,error:a.message}}}async function o(a,b,c){try{if(!await l(a))return{ok:!1,error:`No brain at ${k(a)}. Run bin/onboard-customer.sh first.`};let e=m(a,b);return await d.promises.mkdir(f().dirname(e),{recursive:!0}),await d.promises.writeFile(e,c,"utf8"),{ok:!0,path:e,bytes:Buffer.byteLength(c,"utf8")}}catch(a){return{ok:!1,error:a.message}}}async function p(a,b,c={}){try{if(!await l(a))return{ok:!1,error:`No brain at ${k(a)}.`};let e=b.endsWith("/")?b:b+"/",g=m(a,e+"__list_sentinel__"),h=f().dirname(g),i=[];try{i=await d.promises.readdir(h)}catch{return{ok:!0,entries:[]}}let j=c.extension??".md",n=c.sinceISO?Date.parse(c.sinceISO):0,o=[];for(let a of i){if(j&&!a.endsWith(j))continue;let b=f().join(h,a),c=await d.promises.stat(b);c.isFile()&&(n&&c.mtimeMs<n||o.push({relativePath:e+a,absolutePath:b,bytes:c.size,modifiedISO:new Date(c.mtimeMs).toISOString()}))}return o.sort((a,b)=>Date.parse(b.modifiedISO)-Date.parse(a.modifiedISO)),{ok:!0,entries:c.limit?o.slice(0,c.limit):o}}catch(a){return{ok:!1,error:a.message}}}async function q(a,b,c){try{if(!await l(a))return{ok:!1,error:`No brain at ${k(a)}. Run bin/onboard-customer.sh first.`};let e=m(a,b);await d.promises.mkdir(f().dirname(e),{recursive:!0});let g="";try{let a=await d.promises.readFile(e,"utf8");a.length>0&&!a.endsWith("\n")&&(g="\n")}catch{}return await d.promises.appendFile(e,g+c,"utf8"),{ok:!0,path:e,bytes:Buffer.byteLength(g+c,"utf8")}}catch(a){return{ok:!1,error:a.message}}}function r(){return new Date().toISOString().slice(0,10)}function s(){return new Date().toISOString()}function t(a){return a.toLowerCase().replace(/[^a-z0-9]+/g,"-").replace(/^-+|-+$/g,"").slice(0,60)}function u(a){if(!a.startsWith("---\n")&&!a.startsWith("---\r\n"))return{frontmatter:{},body:a};let b=a.indexOf("\n---",4);if(-1===b)return{frontmatter:{},body:a};let c=a.slice(4,b),d=a.slice(b+4).replace(/^\r?\n/,""),e={},f=null,g=[],h=()=>{null!==f&&(e[f]=[...g],g.length=0,f=null)};for(let a of c.split(/\r?\n/)){if(""===a.trim())continue;let b=a.match(/^\s*-\s+(.*)$/);if(b&&null!==f){let a=b[1].trim(),c=a.startsWith('"')&&a.endsWith('"')||a.startsWith("'")&&a.endsWith("'")?a.slice(1,-1):a;g.push(c);continue}let c=a.match(/^([A-Za-z0-9_\-.]+)\s*:\s*(.*)$/);if(c){h();let a=c[1],b=c[2];if(""===b){f=a;continue}e[a]=function(a){let b=a.trim();if(""===b||"null"===b||"~"===b)return null;if("true"===b)return!0;if("false"===b)return!1;if(b.startsWith('"')&&b.endsWith('"'))return b.slice(1,-1).replace(/\\"/g,'"').replace(/\\\\/g,"\\");if(b.startsWith("'")&&b.endsWith("'"))return b.slice(1,-1).replace(/\\'/g,"'");if(b.startsWith("[")&&b.endsWith("]")){let a=b.slice(1,-1).trim();return a?a.split(/\s*,\s*/).map(a=>{let b=a.trim();return b.startsWith('"')&&b.endsWith('"')||b.startsWith("'")&&b.endsWith("'")?b.slice(1,-1):b}):[]}return/^-?\d+$/.test(b)||/^-?\d*\.\d+$/.test(b)?Number(b):b}(b)}}return h(),{frontmatter:e,body:d}}function v(a,b){let c=Object.keys(a);if(0===c.length)return b.startsWith("---"),b;let d=["---"];for(let b of c){var e;d.push(`${b}: ${null===(e=a[b])?"null":"boolean"==typeof e||"number"==typeof e?String(e):Array.isArray(e)?"["+e.map(a=>/[,\s:#]/.test(a)?`"${a.replace(/"/g,'\\"')}"`:a).join(", ")+"]":""===e||/^[\d\s]/.test(e)||/[:#\n"']/.test(e)||"true"===e||"false"===e||"null"===e||"~"===e?`"${e.replace(/"/g,'\\"')}"`:e}`)}return d.push("---",""),d.join("\n")+b.replace(/^\n+/,"")}function w(a){if(!a||"object"!=typeof a||Array.isArray(a))return{ok:!1,error:"patch must be a flat object"};let b={};for(let[c,d]of Object.entries(a)){if(!/^[A-Za-z0-9_\-.]+$/.test(c))return{ok:!1,error:`invalid frontmatter key "${c}" (allowed: letters / digits / _ - .)`};if(null===d||"string"==typeof d||"number"==typeof d||"boolean"==typeof d)b[c]=d;else{if(!(Array.isArray(d)&&d.every(a=>"string"==typeof a)))return{ok:!1,error:`value for "${c}" must be string / number / boolean / null / string[] — got ${typeof d}`};b[c]=d}}return{ok:!0,patch:b}}},63033:a=>{"use strict";a.exports=require("next/dist/server/app-render/work-unit-async-storage.external.js")},69191:(a,b,c)=>{"use strict";c.r(b),c.d(b,{handler:()=>J,patchFetch:()=>I,routeModule:()=>E,serverHooks:()=>H,workAsyncStorage:()=>F,workUnitAsyncStorage:()=>G});var d={};c.r(d),c.d(d,{POST:()=>D,dynamic:()=>B,runtime:()=>A});var e=c(95736),f=c(9117),g=c(4044),h=c(39326),i=c(32324),j=c(261),k=c(54290),l=c(85328),m=c(38928),n=c(46595),o=c(3421),p=c(17679),q=c(41681),r=c(63446),s=c(86439),t=c(51356),u=c(10641),v=c(86433),w=c(89004),x=c(7506),y=c(11702),z=c(57477);let A="nodejs",B="force-dynamic",C=/^[a-z0-9](?:[a-z0-9-]{0,58}[a-z0-9])?$/;async function D(a){let b=Date.now(),c={};try{c=await a.json()}catch{return u.NextResponse.json({ok:!1,error:"Invalid JSON body"},{status:400})}if("string"!=typeof c.clientId||!C.test(c.clientId))return u.NextResponse.json({ok:!1,error:"clientId required (slug)"},{status:400});let d=c.clientId,e=!0===c.write,f=await (0,w.b_)(d);if(!f)return u.NextResponse.json({ok:!1,error:`No manifest for "${d}".`},{status:404});let g=await (0,y.AU)("delivery",d);if(g)return g;let h=Date.now()-6048e5,[i,j,k]=await Promise.all([(0,v.ny)().catch(()=>[]),(0,v.P8)().catch(()=>[]),(0,v.v)().catch(()=>[])]),l=k.filter(a=>(a.startedAt??0)>h),m=j.filter(a=>"pending"===a.status).length,n=Array.from(new Set(l.map(a=>a.agentId))).sort(),o=[],p="_no escalations log yet_";if(await (0,z.xB)(d)){let a=await (0,z.zG)(d,"04_Operations/escalations.md");a.ok&&(o=(a.body.match(/^## (.+?) — escalate to (\w+)/gm)??[]).slice(-5),p=`${o.length} entries in the log${o.length>0?` — most recent: ${o[o.length-1]}`:""}`)}let q=(0,z.dR)(),r=[`# ${f.display_name} — weekly delivery brief (${q})`,"",`**Industry:** ${f.industry??"—"} \xb7 **Tier:** ${f.tier??"—"} \xb7 **Status:** ${f.status??"active"}`,"","## What moved this week",`- **Agent activity:** ${l.length} run${1===l.length?"":"s"} across ${n.length} agent${1===n.length?"":"s"}`,n.length>0?`- Active agents: ${n.map(a=>`\`${a}\``).join(" \xb7 ")}`:"- No agent activity logged in the last 7 days",`- **Inbox:** ${i.length} unread item${1===i.length?"":"s"}`,`- **Approvals waiting:** ${m}`,"","## Escalations",`- ${p}`,o.length>0?o.slice(-3).map(a=>` - ${a.replace(/^## /,"")}`).join("\n"):"","","## At risk",m>5?`- ${m} approvals queued — Delivery should review whether the approval policy needs tuning.`:"- No notable approval backlog.",o.length>=3?`- ${o.length}+ escalations this week — surface the top one to founders if it touches contractual SLA.`:"- Escalation rate is normal.","","## Needs founders",0===m&&0===o.length?"- Nothing flagged. Delivery handling normally.":`- Review the at-risk items above — let me know if anything needs to surface to Mina.`,"","## Notes","_Customer-vault writes (kickoff briefs, screencasts, escalations) tracked at ~/leedab-brains/"+d+"/._","",`_Generated ${new Date().toISOString()} by Delivery agent._`].filter(Boolean).join("\n"),s=null,t=null;if(e)if(await (0,z.xB)(d)){let a=await (0,z.mx)(d,`_inbox/${q}-weekly-brief.md`,r);a.ok?s=a.path:t=a.error}else t=`No brain at ~/leedab-brains/${d}/. Brief returned only.`;return await (0,x.sb)({ts:new Date().toISOString(),agent:"delivery.weekly_brief",clientId:d,outcome:t?"failed":"ok",durationMs:Date.now()-b,inputSummary:{write:!0===c.write},output:{wrote:s??void 0,error:t??void 0,bytes:r.length}}),u.NextResponse.json({ok:!0,clientId:d,displayName:f.display_name,date:q,brief:r,metrics:{runsThisWeek:l.length,activeAgents:n,inbox:i.length,pendingApprovals:m,escalationsLogged:o.length},written:s,writeError:t})}let E=new e.AppRouteRouteModule({definition:{kind:f.RouteKind.APP_ROUTE,page:"/api/delivery/weekly-brief/route",pathname:"/api/delivery/weekly-brief",filename:"route",bundlePath:"app/api/delivery/weekly-brief/route"},distDir:".next",relativeProjectDir:"",resolvedPagePath:"/Users/muiezmakkawi/Documents/LeedAB-OS/apps/console/app/api/delivery/weekly-brief/route.ts",nextConfigOutput:"standalone",userland:d}),{workAsyncStorage:F,workUnitAsyncStorage:G,serverHooks:H}=E;function I(){return(0,g.patchFetch)({workAsyncStorage:F,workUnitAsyncStorage:G})}async function J(a,b,c){var d;let e="/api/delivery/weekly-brief/route";"/index"===e&&(e="/");let g=await E.prepare(a,b,{srcPage:e,multiZoneDraftMode:!1});if(!g)return b.statusCode=400,b.end("Bad Request"),null==c.waitUntil||c.waitUntil.call(c,Promise.resolve()),null;let{buildId:u,params:v,nextConfig:w,isDraftMode:x,prerenderManifest:y,routerServerContext:z,isOnDemandRevalidate:A,revalidateOnlyGenerated:B,resolvedPathname:C}=g,D=(0,j.normalizeAppPath)(e),F=!!(y.dynamicRoutes[D]||y.routes[C]);if(F&&!x){let a=!!y.routes[C],b=y.dynamicRoutes[D];if(b&&!1===b.fallback&&!a)throw new s.NoFallbackError}let G=null;!F||E.isDev||x||(G="/index"===(G=C)?"/":G);let H=!0===E.isDev||!F,I=F&&!H,J=a.method||"GET",K=(0,i.getTracer)(),L=K.getActiveScopeSpan(),M={params:v,prerenderManifest:y,renderOpts:{experimental:{cacheComponents:!!w.experimental.cacheComponents,authInterrupts:!!w.experimental.authInterrupts},supportsDynamicResponse:H,incrementalCache:(0,h.getRequestMeta)(a,"incrementalCache"),cacheLifeProfiles:null==(d=w.experimental)?void 0:d.cacheLife,isRevalidate:I,waitUntil:c.waitUntil,onClose:a=>{b.on("close",a)},onAfterTaskError:void 0,onInstrumentationRequestError:(b,c,d)=>E.onRequestError(a,b,d,z)},sharedContext:{buildId:u}},N=new k.NodeNextRequest(a),O=new k.NodeNextResponse(b),P=l.NextRequestAdapter.fromNodeNextRequest(N,(0,l.signalFromNodeResponse)(b));try{let d=async c=>E.handle(P,M).finally(()=>{if(!c)return;c.setAttributes({"http.status_code":b.statusCode,"next.rsc":!1});let d=K.getRootSpanAttributes();if(!d)return;if(d.get("next.span_type")!==m.BaseServerSpan.handleRequest)return void console.warn(`Unexpected root span type '${d.get("next.span_type")}'. Please report this Next.js issue https://github.com/vercel/next.js`);let e=d.get("next.route");if(e){let a=`${J} ${e}`;c.setAttributes({"next.route":e,"http.route":e,"next.span_name":a}),c.updateName(a)}else c.updateName(`${J} ${a.url}`)}),g=async g=>{var i,j;let k=async({previousCacheEntry:f})=>{try{if(!(0,h.getRequestMeta)(a,"minimalMode")&&A&&B&&!f)return b.statusCode=404,b.setHeader("x-nextjs-cache","REVALIDATED"),b.end("This page could not be found"),null;let e=await d(g);a.fetchMetrics=M.renderOpts.fetchMetrics;let i=M.renderOpts.pendingWaitUntil;i&&c.waitUntil&&(c.waitUntil(i),i=void 0);let j=M.renderOpts.collectedTags;if(!F)return await (0,o.I)(N,O,e,M.renderOpts.pendingWaitUntil),null;{let a=await e.blob(),b=(0,p.toNodeOutgoingHttpHeaders)(e.headers);j&&(b[r.NEXT_CACHE_TAGS_HEADER]=j),!b["content-type"]&&a.type&&(b["content-type"]=a.type);let c=void 0!==M.renderOpts.collectedRevalidate&&!(M.renderOpts.collectedRevalidate>=r.INFINITE_CACHE)&&M.renderOpts.collectedRevalidate,d=void 0===M.renderOpts.collectedExpire||M.renderOpts.collectedExpire>=r.INFINITE_CACHE?void 0:M.renderOpts.collectedExpire;return{value:{kind:t.CachedRouteKind.APP_ROUTE,status:e.status,body:Buffer.from(await a.arrayBuffer()),headers:b},cacheControl:{revalidate:c,expire:d}}}}catch(b){throw(null==f?void 0:f.isStale)&&await E.onRequestError(a,b,{routerKind:"App Router",routePath:e,routeType:"route",revalidateReason:(0,n.c)({isRevalidate:I,isOnDemandRevalidate:A})},z),b}},l=await E.handleResponse({req:a,nextConfig:w,cacheKey:G,routeKind:f.RouteKind.APP_ROUTE,isFallback:!1,prerenderManifest:y,isRoutePPREnabled:!1,isOnDemandRevalidate:A,revalidateOnlyGenerated:B,responseGenerator:k,waitUntil:c.waitUntil});if(!F)return null;if((null==l||null==(i=l.value)?void 0:i.kind)!==t.CachedRouteKind.APP_ROUTE)throw Object.defineProperty(Error(`Invariant: app-route received invalid cache entry ${null==l||null==(j=l.value)?void 0:j.kind}`),"__NEXT_ERROR_CODE",{value:"E701",enumerable:!1,configurable:!0});(0,h.getRequestMeta)(a,"minimalMode")||b.setHeader("x-nextjs-cache",A?"REVALIDATED":l.isMiss?"MISS":l.isStale?"STALE":"HIT"),x&&b.setHeader("Cache-Control","private, no-cache, no-store, max-age=0, must-revalidate");let m=(0,p.fromNodeOutgoingHttpHeaders)(l.value.headers);return(0,h.getRequestMeta)(a,"minimalMode")&&F||m.delete(r.NEXT_CACHE_TAGS_HEADER),!l.cacheControl||b.getHeader("Cache-Control")||m.get("Cache-Control")||m.set("Cache-Control",(0,q.getCacheControlHeader)(l.cacheControl)),await (0,o.I)(N,O,new Response(l.value.body,{headers:m,status:l.value.status||200})),null};L?await g(L):await K.withPropagatedContext(a.headers,()=>K.trace(m.BaseServerSpan.handleRequest,{spanName:`${J} ${a.url}`,kind:i.SpanKind.SERVER,attributes:{"http.method":J,"http.target":a.url}},g))}catch(b){if(b instanceof s.NoFallbackError||await E.onRequestError(a,b,{routerKind:"App Router",routePath:D,routeType:"route",revalidateReason:(0,n.c)({isRevalidate:I,isOnDemandRevalidate:A})}),F)throw b;return await (0,o.I)(N,O,new Response(null,{status:500})),null}}},73024:a=>{"use strict";a.exports=require("node:fs")},76760:a=>{"use strict";a.exports=require("node:path")},77598:a=>{"use strict";a.exports=require("node:crypto")},78335:()=>{},79748:a=>{"use strict";a.exports=require("fs/promises")},86433:(a,b,c)=>{"use strict";c.d(b,{$A:()=>o,Iu:()=>C,Jc:()=>E,LP:()=>H,P8:()=>x,PF:()=>I,PH:()=>B,Qh:()=>w,WT:()=>z,ah:()=>G,h5:()=>A,ik:()=>D,ny:()=>v,v:()=>F,wr:()=>y});var d=c(29021),e=c(94735),f=c(22709);function g(a){let b=(0,f.fp)();return(a.clientId??"default")===b}let h=f.uV,i=(0,f.dataPath)("inbox.json"),j=(0,f.dataPath)("approvals.json"),k=(0,f.dataPath)("routing.json"),l=(0,f.dataPath)("contacts.json"),m=(0,f.dataPath)("runs.json"),n=globalThis,o=n.__opsBus??(n.__opsBus=function(){let a=new e.EventEmitter;return a.setMaxListeners(0),a}());async function p(){await d.promises.mkdir(h,{recursive:!0})}async function q(a,b){try{await p();let b=await d.promises.readFile(a,"utf8");return JSON.parse(b)}catch{return b}}async function r(a,b){await p();let c=a+".tmp";await d.promises.writeFile(c,JSON.stringify(b,null,2),"utf8"),await d.promises.rename(c,a)}let s=globalThis,t=s.__opsLocks??(s.__opsLocks=new Map);async function u(a,b){let c=(t.get(a)??Promise.resolve()).then(b,b);return t.set(a,c.catch(()=>{})),c}async function v(a){let b=(await q(i,[])).filter(g).sort((a,b)=>b.timestamp-a.timestamp);return a?.status&&(b=b.filter(b=>b.status===a.status)),a?.limit&&(b=b.slice(0,a.limit)),b}async function w(a,b){let c=await u(i,async()=>{let c=await q(i,[]),d=c.findIndex(b=>b.id===a&&g(b));if(-1===d)return null;let{clientId:e,...f}=b;return c[d]={...c[d],...f},await r(i,c),c[d]});return c&&o.emit("inbox:updated",c),c}async function x(a){let b=(await q(j,[])).filter(g).sort((a,b)=>b.createdAt-a.createdAt);return a?.status&&(b=b.filter(b=>b.status===a.status)),a?.limit&&(b=b.slice(0,a.limit)),b}async function y(a){return(await q(j,[])).find(b=>b.id===a&&g(b))??null}async function z(a){let b={...a,clientId:a.clientId??(0,f.fp)()};await u(j,async()=>{let a=await q(j,[]);a.push(b),await r(j,a)}),o.emit("approval:created",b)}async function A(a,b){let c=await u(j,async()=>{let c=await q(j,[]),d=c.findIndex(b=>b.id===a&&g(b));if(-1===d)return null;let{clientId:e,...f}=b;return c[d]={...c[d],...f},await r(j,c),c[d]});return c&&o.emit("approval:updated",c),c}async function B(){return(await q(k,[])).filter(g)}async function C(a){let b=(0,f.fp)(),c=(await q(k,[])).filter(a=>(a.clientId??"default")!==b),d=a.map(a=>({...a,clientId:b}));await r(k,[...c,...d])}async function D(){return(await q(l,[])).filter(g)}async function E(a){let b=(0,f.fp)(),c=(await q(l,[])).filter(a=>(a.clientId??"default")!==b),d=a.map(a=>({...a,clientId:b}));await r(l,[...c,...d])}async function F(a){let b=(await q(m,[])).filter(g).sort((a,b)=>b.startedAt-a.startedAt);return a?.limit?b.slice(0,a.limit):b}async function G(a){let b={...a,clientId:a.clientId??(0,f.fp)()};await u(m,async()=>{let a=await q(m,[]);a.push(b),a.length>5e3&&a.splice(0,a.length-5e3),await r(m,a)}),o.emit("run:created",b)}async function H(a){if(0===a.length)return 0;let b=0,c=0,d=[];for(let e of(await u(m,async()=>{let e=await q(m,[]),g=new Map(e.map((a,b)=>[a.id,b]));for(let h of a){let a=g.get(h.id);if(void 0!==a){let b=e[a],d=null;h.sessionId&&!b.sessionId&&(d={...d??{},sessionId:h.sessionId}),h.agentId&&"coo"!==h.agentId&&"coo"===b.agentId&&(d={...d??{},agentId:h.agentId}),d&&(e[a]={...b,...d},c++);continue}let i={...h,clientId:h.clientId??(0,f.fp)()};e.push(i),d.push(i),g.set(h.id,e.length-1),b++}(0!==b||0!==c)&&(e.length>5e3&&e.splice(0,e.length-5e3),await r(m,e))}),d))o.emit("run:created",e);return b}async function I(a,b){let c=await u(m,async()=>{let c=await q(m,[]),d=c.findIndex(b=>b.id===a&&g(b));if(-1===d)return null;let{clientId:e,...f}=b;return c[d]={...c[d],...f},await r(m,c),c[d]});return c&&o.emit("run:updated",c),c}},86439:a=>{"use strict";a.exports=require("next/dist/shared/lib/no-fallback-error.external")},94735:a=>{"use strict";a.exports=require("events")},96487:()=>{}};var b=require("../../../../webpack-runtime.js");b.C(a);var c=b.X(0,[5873,1692,897],()=>b(b.s=69191));module.exports=c})();
@@ -1 +1 @@
1
- globalThis.__RSC_MANIFEST=(globalThis.__RSC_MANIFEST||{});globalThis.__RSC_MANIFEST["/api/delivery/weekly-brief/route"]={"moduleLoading":{"prefix":"/_next/"},"ssrModuleMapping":{"622":{"*":{"id":"82146","name":"*","chunks":[],"async":false}},"838":{"*":{"id":"62823","name":"*","chunks":[],"async":false}},"1062":{"*":{"id":"38916","name":"*","chunks":[],"async":false}},"1959":{"*":{"id":"31603","name":"*","chunks":[],"async":false}},"3886":{"*":{"id":"75170","name":"*","chunks":[],"async":false}},"4431":{"*":{"id":"12263","name":"*","chunks":[],"async":false}},"5278":{"*":{"id":"78922","name":"*","chunks":[],"async":false}},"7150":{"*":{"id":"54160","name":"*","chunks":[],"async":false}},"7989":{"*":{"id":"68495","name":"*","chunks":[],"async":false}},"8924":{"*":{"id":"29234","name":"*","chunks":[],"async":false}},"9766":{"*":{"id":"77526","name":"*","chunks":[],"async":false}}},"edgeSSRModuleMapping":{},"clientModules":{"/Users/muiezmakkawi/Documents/LeedAB-OS/apps/console/node_modules/next/dist/client/components/builtin/global-error.js":{"id":7150,"name":"*","chunks":[],"async":false},"/Users/muiezmakkawi/Documents/LeedAB-OS/apps/console/node_modules/next/dist/esm/client/components/builtin/global-error.js":{"id":7150,"name":"*","chunks":[],"async":false},"/Users/muiezmakkawi/Documents/LeedAB-OS/apps/console/node_modules/next/dist/client/components/client-page.js":{"id":1959,"name":"*","chunks":[],"async":false},"/Users/muiezmakkawi/Documents/LeedAB-OS/apps/console/node_modules/next/dist/esm/client/components/client-page.js":{"id":1959,"name":"*","chunks":[],"async":false},"/Users/muiezmakkawi/Documents/LeedAB-OS/apps/console/node_modules/next/dist/client/components/client-segment.js":{"id":7989,"name":"*","chunks":[],"async":false},"/Users/muiezmakkawi/Documents/LeedAB-OS/apps/console/node_modules/next/dist/esm/client/components/client-segment.js":{"id":7989,"name":"*","chunks":[],"async":false},"/Users/muiezmakkawi/Documents/LeedAB-OS/apps/console/node_modules/next/dist/client/components/http-access-fallback/error-boundary.js":{"id":3886,"name":"*","chunks":[],"async":false},"/Users/muiezmakkawi/Documents/LeedAB-OS/apps/console/node_modules/next/dist/esm/client/components/http-access-fallback/error-boundary.js":{"id":3886,"name":"*","chunks":[],"async":false},"/Users/muiezmakkawi/Documents/LeedAB-OS/apps/console/node_modules/next/dist/client/components/layout-router.js":{"id":9766,"name":"*","chunks":[],"async":false},"/Users/muiezmakkawi/Documents/LeedAB-OS/apps/console/node_modules/next/dist/esm/client/components/layout-router.js":{"id":9766,"name":"*","chunks":[],"async":false},"/Users/muiezmakkawi/Documents/LeedAB-OS/apps/console/node_modules/next/dist/client/components/metadata/async-metadata.js":{"id":5278,"name":"*","chunks":[],"async":false},"/Users/muiezmakkawi/Documents/LeedAB-OS/apps/console/node_modules/next/dist/esm/client/components/metadata/async-metadata.js":{"id":5278,"name":"*","chunks":[],"async":false},"/Users/muiezmakkawi/Documents/LeedAB-OS/apps/console/node_modules/next/dist/client/components/render-from-template-context.js":{"id":8924,"name":"*","chunks":[],"async":false},"/Users/muiezmakkawi/Documents/LeedAB-OS/apps/console/node_modules/next/dist/esm/client/components/render-from-template-context.js":{"id":8924,"name":"*","chunks":[],"async":false},"/Users/muiezmakkawi/Documents/LeedAB-OS/apps/console/node_modules/next/dist/lib/framework/boundary-components.js":{"id":4431,"name":"*","chunks":[],"async":false},"/Users/muiezmakkawi/Documents/LeedAB-OS/apps/console/node_modules/next/dist/esm/lib/framework/boundary-components.js":{"id":4431,"name":"*","chunks":[],"async":false},"/Users/muiezmakkawi/Documents/LeedAB-OS/apps/console/node_modules/next/dist/lib/metadata/generate/icon-mark.js":{"id":622,"name":"*","chunks":[],"async":false},"/Users/muiezmakkawi/Documents/LeedAB-OS/apps/console/node_modules/next/dist/esm/lib/metadata/generate/icon-mark.js":{"id":622,"name":"*","chunks":[],"async":false},"/Users/muiezmakkawi/Documents/LeedAB-OS/apps/console/node_modules/next/font/google/target.css?{\"path\":\"app/layout.tsx\",\"import\":\"Geist\",\"arguments\":[{\"subsets\":[\"latin\"],\"weight\":[\"300\",\"400\",\"500\",\"600\",\"700\"],\"variable\":\"--font-geist-sans\",\"display\":\"swap\"}],\"variableName\":\"geistSans\"}":{"id":5725,"name":"*","chunks":["7177","static/chunks/app/layout-bd27cc63fde6b953.js"],"async":false},"/Users/muiezmakkawi/Documents/LeedAB-OS/apps/console/node_modules/next/font/google/target.css?{\"path\":\"app/layout.tsx\",\"import\":\"Geist_Mono\",\"arguments\":[{\"subsets\":[\"latin\"],\"weight\":[\"400\",\"500\"],\"variable\":\"--font-geist-mono\",\"display\":\"swap\"}],\"variableName\":\"geistMono\"}":{"id":4485,"name":"*","chunks":["7177","static/chunks/app/layout-bd27cc63fde6b953.js"],"async":false},"/Users/muiezmakkawi/Documents/LeedAB-OS/apps/console/node_modules/next/font/google/target.css?{\"path\":\"app/layout.tsx\",\"import\":\"Instrument_Serif\",\"arguments\":[{\"subsets\":[\"latin\"],\"weight\":\"400\",\"style\":[\"normal\",\"italic\"],\"variable\":\"--font-instrument-serif\",\"display\":\"swap\"}],\"variableName\":\"instrumentSerif\"}":{"id":9919,"name":"*","chunks":["7177","static/chunks/app/layout-bd27cc63fde6b953.js"],"async":false},"/Users/muiezmakkawi/Documents/LeedAB-OS/apps/console/app/globals.css":{"id":1290,"name":"*","chunks":["7177","static/chunks/app/layout-bd27cc63fde6b953.js"],"async":false},"/Users/muiezmakkawi/Documents/LeedAB-OS/apps/console/app/page.tsx":{"id":1062,"name":"*","chunks":["8118","static/chunks/8118-681f2688832ccc66.js","8974","static/chunks/app/page-01558715b1be9361.js"],"async":false},"/Users/muiezmakkawi/Documents/LeedAB-OS/apps/console/app/gtm/GtmClient.tsx":{"id":838,"name":"*","chunks":[],"async":false}},"entryCSSFiles":{"/Users/muiezmakkawi/Documents/LeedAB-OS/apps/console/":[],"/Users/muiezmakkawi/Documents/LeedAB-OS/apps/console/app/layout":[{"inlined":false,"path":"static/css/4bdbd0680d42c54d.css"}],"/Users/muiezmakkawi/Documents/LeedAB-OS/apps/console/app/page":[],"/Users/muiezmakkawi/Documents/LeedAB-OS/apps/console/app/api/delivery/weekly-brief/route":[]},"rscModuleMapping":{"622":{"*":{"id":"51384","name":"*","chunks":[],"async":false}},"838":{"*":{"id":"3287","name":"*","chunks":[],"async":false}},"1062":{"*":{"id":"17742","name":"*","chunks":[],"async":false}},"1290":{"*":{"id":"82704","name":"*","chunks":[],"async":false}},"1959":{"*":{"id":"23597","name":"*","chunks":[],"async":false}},"3886":{"*":{"id":"89748","name":"*","chunks":[],"async":false}},"4431":{"*":{"id":"73041","name":"*","chunks":[],"async":false}},"5278":{"*":{"id":"7184","name":"*","chunks":[],"async":false}},"7150":{"*":{"id":"81170","name":"*","chunks":[],"async":false}},"7989":{"*":{"id":"36893","name":"*","chunks":[],"async":false}},"8924":{"*":{"id":"69576","name":"*","chunks":[],"async":false}},"9766":{"*":{"id":"6060","name":"*","chunks":[],"async":false}}},"edgeRscModuleMapping":{}}
1
+ globalThis.__RSC_MANIFEST=(globalThis.__RSC_MANIFEST||{});globalThis.__RSC_MANIFEST["/api/delivery/weekly-brief/route"]={"moduleLoading":{"prefix":"/_next/"},"ssrModuleMapping":{"622":{"*":{"id":"82146","name":"*","chunks":[],"async":false}},"838":{"*":{"id":"62823","name":"*","chunks":[],"async":false}},"1959":{"*":{"id":"31603","name":"*","chunks":[],"async":false}},"3886":{"*":{"id":"75170","name":"*","chunks":[],"async":false}},"4431":{"*":{"id":"12263","name":"*","chunks":[],"async":false}},"5086":{"*":{"id":"27231","name":"*","chunks":[],"async":false}},"5278":{"*":{"id":"78922","name":"*","chunks":[],"async":false}},"7150":{"*":{"id":"54160","name":"*","chunks":[],"async":false}},"7989":{"*":{"id":"68495","name":"*","chunks":[],"async":false}},"8924":{"*":{"id":"29234","name":"*","chunks":[],"async":false}},"9766":{"*":{"id":"77526","name":"*","chunks":[],"async":false}}},"edgeSSRModuleMapping":{},"clientModules":{"/Users/muiezmakkawi/Documents/LeedAB-OS/apps/console/node_modules/next/dist/client/components/builtin/global-error.js":{"id":7150,"name":"*","chunks":[],"async":false},"/Users/muiezmakkawi/Documents/LeedAB-OS/apps/console/node_modules/next/dist/esm/client/components/builtin/global-error.js":{"id":7150,"name":"*","chunks":[],"async":false},"/Users/muiezmakkawi/Documents/LeedAB-OS/apps/console/node_modules/next/dist/client/components/client-page.js":{"id":1959,"name":"*","chunks":[],"async":false},"/Users/muiezmakkawi/Documents/LeedAB-OS/apps/console/node_modules/next/dist/esm/client/components/client-page.js":{"id":1959,"name":"*","chunks":[],"async":false},"/Users/muiezmakkawi/Documents/LeedAB-OS/apps/console/node_modules/next/dist/client/components/client-segment.js":{"id":7989,"name":"*","chunks":[],"async":false},"/Users/muiezmakkawi/Documents/LeedAB-OS/apps/console/node_modules/next/dist/esm/client/components/client-segment.js":{"id":7989,"name":"*","chunks":[],"async":false},"/Users/muiezmakkawi/Documents/LeedAB-OS/apps/console/node_modules/next/dist/client/components/http-access-fallback/error-boundary.js":{"id":3886,"name":"*","chunks":[],"async":false},"/Users/muiezmakkawi/Documents/LeedAB-OS/apps/console/node_modules/next/dist/esm/client/components/http-access-fallback/error-boundary.js":{"id":3886,"name":"*","chunks":[],"async":false},"/Users/muiezmakkawi/Documents/LeedAB-OS/apps/console/node_modules/next/dist/client/components/layout-router.js":{"id":9766,"name":"*","chunks":[],"async":false},"/Users/muiezmakkawi/Documents/LeedAB-OS/apps/console/node_modules/next/dist/esm/client/components/layout-router.js":{"id":9766,"name":"*","chunks":[],"async":false},"/Users/muiezmakkawi/Documents/LeedAB-OS/apps/console/node_modules/next/dist/client/components/metadata/async-metadata.js":{"id":5278,"name":"*","chunks":[],"async":false},"/Users/muiezmakkawi/Documents/LeedAB-OS/apps/console/node_modules/next/dist/esm/client/components/metadata/async-metadata.js":{"id":5278,"name":"*","chunks":[],"async":false},"/Users/muiezmakkawi/Documents/LeedAB-OS/apps/console/node_modules/next/dist/client/components/render-from-template-context.js":{"id":8924,"name":"*","chunks":[],"async":false},"/Users/muiezmakkawi/Documents/LeedAB-OS/apps/console/node_modules/next/dist/esm/client/components/render-from-template-context.js":{"id":8924,"name":"*","chunks":[],"async":false},"/Users/muiezmakkawi/Documents/LeedAB-OS/apps/console/node_modules/next/dist/lib/framework/boundary-components.js":{"id":4431,"name":"*","chunks":[],"async":false},"/Users/muiezmakkawi/Documents/LeedAB-OS/apps/console/node_modules/next/dist/esm/lib/framework/boundary-components.js":{"id":4431,"name":"*","chunks":[],"async":false},"/Users/muiezmakkawi/Documents/LeedAB-OS/apps/console/node_modules/next/dist/lib/metadata/generate/icon-mark.js":{"id":622,"name":"*","chunks":[],"async":false},"/Users/muiezmakkawi/Documents/LeedAB-OS/apps/console/node_modules/next/dist/esm/lib/metadata/generate/icon-mark.js":{"id":622,"name":"*","chunks":[],"async":false},"/Users/muiezmakkawi/Documents/LeedAB-OS/apps/console/node_modules/next/font/google/target.css?{\"path\":\"app/layout.tsx\",\"import\":\"Geist\",\"arguments\":[{\"subsets\":[\"latin\"],\"weight\":[\"300\",\"400\",\"500\",\"600\",\"700\"],\"variable\":\"--font-geist-sans\",\"display\":\"swap\"}],\"variableName\":\"geistSans\"}":{"id":5725,"name":"*","chunks":["7177","static/chunks/app/layout-bd27cc63fde6b953.js"],"async":false},"/Users/muiezmakkawi/Documents/LeedAB-OS/apps/console/node_modules/next/font/google/target.css?{\"path\":\"app/layout.tsx\",\"import\":\"Geist_Mono\",\"arguments\":[{\"subsets\":[\"latin\"],\"weight\":[\"400\",\"500\"],\"variable\":\"--font-geist-mono\",\"display\":\"swap\"}],\"variableName\":\"geistMono\"}":{"id":4485,"name":"*","chunks":["7177","static/chunks/app/layout-bd27cc63fde6b953.js"],"async":false},"/Users/muiezmakkawi/Documents/LeedAB-OS/apps/console/node_modules/next/font/google/target.css?{\"path\":\"app/layout.tsx\",\"import\":\"Instrument_Serif\",\"arguments\":[{\"subsets\":[\"latin\"],\"weight\":\"400\",\"style\":[\"normal\",\"italic\"],\"variable\":\"--font-instrument-serif\",\"display\":\"swap\"}],\"variableName\":\"instrumentSerif\"}":{"id":9919,"name":"*","chunks":["7177","static/chunks/app/layout-bd27cc63fde6b953.js"],"async":false},"/Users/muiezmakkawi/Documents/LeedAB-OS/apps/console/app/globals.css":{"id":1290,"name":"*","chunks":["7177","static/chunks/app/layout-bd27cc63fde6b953.js"],"async":false},"/Users/muiezmakkawi/Documents/LeedAB-OS/apps/console/app/page.tsx":{"id":5086,"name":"*","chunks":["7973","static/chunks/7973-072db1a3857a8fe9.js","8974","static/chunks/app/page-bdfdbf7b657f4722.js"],"async":false},"/Users/muiezmakkawi/Documents/LeedAB-OS/apps/console/app/gtm/GtmClient.tsx":{"id":838,"name":"*","chunks":[],"async":false}},"entryCSSFiles":{"/Users/muiezmakkawi/Documents/LeedAB-OS/apps/console/":[],"/Users/muiezmakkawi/Documents/LeedAB-OS/apps/console/app/layout":[{"inlined":false,"path":"static/css/b2a91ecca3bf1487.css"}],"/Users/muiezmakkawi/Documents/LeedAB-OS/apps/console/app/page":[],"/Users/muiezmakkawi/Documents/LeedAB-OS/apps/console/app/api/delivery/weekly-brief/route":[]},"rscModuleMapping":{"622":{"*":{"id":"51384","name":"*","chunks":[],"async":false}},"838":{"*":{"id":"3287","name":"*","chunks":[],"async":false}},"1290":{"*":{"id":"82704","name":"*","chunks":[],"async":false}},"1959":{"*":{"id":"23597","name":"*","chunks":[],"async":false}},"3886":{"*":{"id":"89748","name":"*","chunks":[],"async":false}},"4431":{"*":{"id":"73041","name":"*","chunks":[],"async":false}},"5086":{"*":{"id":"17742","name":"*","chunks":[],"async":false}},"5278":{"*":{"id":"7184","name":"*","chunks":[],"async":false}},"7150":{"*":{"id":"81170","name":"*","chunks":[],"async":false}},"7989":{"*":{"id":"36893","name":"*","chunks":[],"async":false}},"8924":{"*":{"id":"69576","name":"*","chunks":[],"async":false}},"9766":{"*":{"id":"6060","name":"*","chunks":[],"async":false}}},"edgeRscModuleMapping":{}}