failproofai 0.0.1-beta.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 (1402) hide show
  1. package/.next/standalone/.next/BUILD_ID +1 -0
  2. package/.next/standalone/.next/app-path-routes-manifest.json +11 -0
  3. package/.next/standalone/.next/build-manifest.json +22 -0
  4. package/.next/standalone/.next/package.json +1 -0
  5. package/.next/standalone/.next/prerender-manifest.json +114 -0
  6. package/.next/standalone/.next/required-server-files.json +333 -0
  7. package/.next/standalone/.next/routes-manifest.json +108 -0
  8. package/.next/standalone/.next/server/app/_global-error/page/app-paths-manifest.json +3 -0
  9. package/.next/standalone/.next/server/app/_global-error/page/build-manifest.json +18 -0
  10. package/.next/standalone/.next/server/app/_global-error/page/next-font-manifest.json +6 -0
  11. package/.next/standalone/.next/server/app/_global-error/page/react-loadable-manifest.json +1 -0
  12. package/.next/standalone/.next/server/app/_global-error/page/server-reference-manifest.json +17 -0
  13. package/.next/standalone/.next/server/app/_global-error/page.js +9 -0
  14. package/.next/standalone/.next/server/app/_global-error/page.js.map +5 -0
  15. package/.next/standalone/.next/server/app/_global-error/page.js.nft.json +1 -0
  16. package/.next/standalone/.next/server/app/_global-error/page_client-reference-manifest.js +3 -0
  17. package/.next/standalone/.next/server/app/_global-error.html +1 -0
  18. package/.next/standalone/.next/server/app/_global-error.meta +15 -0
  19. package/.next/standalone/.next/server/app/_global-error.rsc +14 -0
  20. package/.next/standalone/.next/server/app/_global-error.segments/__PAGE__.segment.rsc +5 -0
  21. package/.next/standalone/.next/server/app/_global-error.segments/_full.segment.rsc +14 -0
  22. package/.next/standalone/.next/server/app/_global-error.segments/_head.segment.rsc +5 -0
  23. package/.next/standalone/.next/server/app/_global-error.segments/_index.segment.rsc +5 -0
  24. package/.next/standalone/.next/server/app/_global-error.segments/_tree.segment.rsc +1 -0
  25. package/.next/standalone/.next/server/app/_not-found/page/app-paths-manifest.json +3 -0
  26. package/.next/standalone/.next/server/app/_not-found/page/build-manifest.json +18 -0
  27. package/.next/standalone/.next/server/app/_not-found/page/next-font-manifest.json +6 -0
  28. package/.next/standalone/.next/server/app/_not-found/page/react-loadable-manifest.json +1 -0
  29. package/.next/standalone/.next/server/app/_not-found/page/server-reference-manifest.json +17 -0
  30. package/.next/standalone/.next/server/app/_not-found/page.js +14 -0
  31. package/.next/standalone/.next/server/app/_not-found/page.js.map +5 -0
  32. package/.next/standalone/.next/server/app/_not-found/page.js.nft.json +1 -0
  33. package/.next/standalone/.next/server/app/_not-found/page_client-reference-manifest.js +3 -0
  34. package/.next/standalone/.next/server/app/_not-found.html +30 -0
  35. package/.next/standalone/.next/server/app/_not-found.meta +16 -0
  36. package/.next/standalone/.next/server/app/_not-found.rsc +27 -0
  37. package/.next/standalone/.next/server/app/_not-found.segments/_full.segment.rsc +27 -0
  38. package/.next/standalone/.next/server/app/_not-found.segments/_head.segment.rsc +6 -0
  39. package/.next/standalone/.next/server/app/_not-found.segments/_index.segment.rsc +12 -0
  40. package/.next/standalone/.next/server/app/_not-found.segments/_not-found/__PAGE__.segment.rsc +5 -0
  41. package/.next/standalone/.next/server/app/_not-found.segments/_not-found.segment.rsc +5 -0
  42. package/.next/standalone/.next/server/app/_not-found.segments/_tree.segment.rsc +2 -0
  43. package/.next/standalone/.next/server/app/api/download/[project]/[session]/route/app-paths-manifest.json +3 -0
  44. package/.next/standalone/.next/server/app/api/download/[project]/[session]/route/build-manifest.json +9 -0
  45. package/.next/standalone/.next/server/app/api/download/[project]/[session]/route/server-reference-manifest.json +4 -0
  46. package/.next/standalone/.next/server/app/api/download/[project]/[session]/route.js +7 -0
  47. package/.next/standalone/.next/server/app/api/download/[project]/[session]/route.js.map +5 -0
  48. package/.next/standalone/.next/server/app/api/download/[project]/[session]/route.js.nft.json +1 -0
  49. package/.next/standalone/.next/server/app/api/download/[project]/[session]/route_client-reference-manifest.js +3 -0
  50. package/.next/standalone/.next/server/app/icon.png/route/app-paths-manifest.json +3 -0
  51. package/.next/standalone/.next/server/app/icon.png/route/build-manifest.json +9 -0
  52. package/.next/standalone/.next/server/app/icon.png/route.js +7 -0
  53. package/.next/standalone/.next/server/app/icon.png/route.js.map +5 -0
  54. package/.next/standalone/.next/server/app/icon.png/route.js.nft.json +1 -0
  55. package/.next/standalone/.next/server/app/icon.png.body +0 -0
  56. package/.next/standalone/.next/server/app/icon.png.meta +1 -0
  57. package/.next/standalone/.next/server/app/index.html +1 -0
  58. package/.next/standalone/.next/server/app/index.meta +15 -0
  59. package/.next/standalone/.next/server/app/index.rsc +22 -0
  60. package/.next/standalone/.next/server/app/index.segments/__PAGE__.segment.rsc +6 -0
  61. package/.next/standalone/.next/server/app/index.segments/_full.segment.rsc +22 -0
  62. package/.next/standalone/.next/server/app/index.segments/_head.segment.rsc +6 -0
  63. package/.next/standalone/.next/server/app/index.segments/_index.segment.rsc +12 -0
  64. package/.next/standalone/.next/server/app/index.segments/_tree.segment.rsc +2 -0
  65. package/.next/standalone/.next/server/app/page/app-paths-manifest.json +3 -0
  66. package/.next/standalone/.next/server/app/page/build-manifest.json +18 -0
  67. package/.next/standalone/.next/server/app/page/next-font-manifest.json +6 -0
  68. package/.next/standalone/.next/server/app/page/react-loadable-manifest.json +1 -0
  69. package/.next/standalone/.next/server/app/page/server-reference-manifest.json +17 -0
  70. package/.next/standalone/.next/server/app/page.js +16 -0
  71. package/.next/standalone/.next/server/app/page.js.map +5 -0
  72. package/.next/standalone/.next/server/app/page.js.nft.json +1 -0
  73. package/.next/standalone/.next/server/app/page_client-reference-manifest.js +3 -0
  74. package/.next/standalone/.next/server/app/policies/page/app-paths-manifest.json +3 -0
  75. package/.next/standalone/.next/server/app/policies/page/build-manifest.json +18 -0
  76. package/.next/standalone/.next/server/app/policies/page/next-font-manifest.json +6 -0
  77. package/.next/standalone/.next/server/app/policies/page/react-loadable-manifest.json +1 -0
  78. package/.next/standalone/.next/server/app/policies/page/server-reference-manifest.json +101 -0
  79. package/.next/standalone/.next/server/app/policies/page.js +17 -0
  80. package/.next/standalone/.next/server/app/policies/page.js.map +5 -0
  81. package/.next/standalone/.next/server/app/policies/page.js.nft.json +1 -0
  82. package/.next/standalone/.next/server/app/policies/page_client-reference-manifest.js +3 -0
  83. package/.next/standalone/.next/server/app/project/[name]/page/app-paths-manifest.json +3 -0
  84. package/.next/standalone/.next/server/app/project/[name]/page/build-manifest.json +18 -0
  85. package/.next/standalone/.next/server/app/project/[name]/page/next-font-manifest.json +6 -0
  86. package/.next/standalone/.next/server/app/project/[name]/page/react-loadable-manifest.json +1 -0
  87. package/.next/standalone/.next/server/app/project/[name]/page/server-reference-manifest.json +17 -0
  88. package/.next/standalone/.next/server/app/project/[name]/page.js +18 -0
  89. package/.next/standalone/.next/server/app/project/[name]/page.js.map +5 -0
  90. package/.next/standalone/.next/server/app/project/[name]/page.js.nft.json +1 -0
  91. package/.next/standalone/.next/server/app/project/[name]/page_client-reference-manifest.js +3 -0
  92. package/.next/standalone/.next/server/app/project/[name]/session/[sessionId]/page/app-paths-manifest.json +3 -0
  93. package/.next/standalone/.next/server/app/project/[name]/session/[sessionId]/page/build-manifest.json +18 -0
  94. package/.next/standalone/.next/server/app/project/[name]/session/[sessionId]/page/next-font-manifest.json +6 -0
  95. package/.next/standalone/.next/server/app/project/[name]/session/[sessionId]/page/react-loadable-manifest.json +9 -0
  96. package/.next/standalone/.next/server/app/project/[name]/session/[sessionId]/page/server-reference-manifest.json +29 -0
  97. package/.next/standalone/.next/server/app/project/[name]/session/[sessionId]/page.js +20 -0
  98. package/.next/standalone/.next/server/app/project/[name]/session/[sessionId]/page.js.map +5 -0
  99. package/.next/standalone/.next/server/app/project/[name]/session/[sessionId]/page.js.nft.json +1 -0
  100. package/.next/standalone/.next/server/app/project/[name]/session/[sessionId]/page_client-reference-manifest.js +3 -0
  101. package/.next/standalone/.next/server/app/projects/page/app-paths-manifest.json +3 -0
  102. package/.next/standalone/.next/server/app/projects/page/build-manifest.json +18 -0
  103. package/.next/standalone/.next/server/app/projects/page/next-font-manifest.json +6 -0
  104. package/.next/standalone/.next/server/app/projects/page/react-loadable-manifest.json +1 -0
  105. package/.next/standalone/.next/server/app/projects/page/server-reference-manifest.json +17 -0
  106. package/.next/standalone/.next/server/app/projects/page.js +17 -0
  107. package/.next/standalone/.next/server/app/projects/page.js.map +5 -0
  108. package/.next/standalone/.next/server/app/projects/page.js.nft.json +1 -0
  109. package/.next/standalone/.next/server/app/projects/page_client-reference-manifest.js +3 -0
  110. package/.next/standalone/.next/server/app-paths-manifest.json +11 -0
  111. package/.next/standalone/.next/server/chunks/[externals]__0-p9.k~._.js +3 -0
  112. package/.next/standalone/.next/server/chunks/[externals]__080wern._.js +3 -0
  113. package/.next/standalone/.next/server/chunks/[externals]__0z0j--b._.js +3 -0
  114. package/.next/standalone/.next/server/chunks/[externals]_next_dist_0sqmaqd._.js +3 -0
  115. package/.next/standalone/.next/server/chunks/[externals]_node_os_06ur78j._.js +3 -0
  116. package/.next/standalone/.next/server/chunks/[root-of-the-server]__02nt~6d._.js +3 -0
  117. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0b57.gk._.js +3 -0
  118. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0g48iv.._.js +20 -0
  119. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0j8-xkl._.js +13 -0
  120. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0kjo7d_._.js +3 -0
  121. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0yspgjy._.js +3 -0
  122. package/.next/standalone/.next/server/chunks/[turbopack]_runtime.js +903 -0
  123. package/.next/standalone/.next/server/chunks/_0ebx_lc._.js +3 -0
  124. package/.next/standalone/.next/server/chunks/_next-internal_server_app_api_download_[project]_[session]_route_actions_0wb00i-.js +3 -0
  125. package/.next/standalone/.next/server/chunks/_next-internal_server_app_icon_png_route_actions_12.gv.r.js +3 -0
  126. package/.next/standalone/.next/server/chunks/lib_logger_ts_047tt9f._.js +3 -0
  127. package/.next/standalone/.next/server/chunks/node_modules_next_dist_esm_build_templates_app-route_0bdfoky.js +3 -0
  128. package/.next/standalone/.next/server/chunks/node_modules_posthog-node_dist_entrypoints_index_node_mjs_05pz9._._.js +3 -0
  129. package/.next/standalone/.next/server/chunks/package_json_[json]_cjs_0z7w.hh._.js +3 -0
  130. package/.next/standalone/.next/server/chunks/ssr/[externals]__12dv.x0._.js +3 -0
  131. package/.next/standalone/.next/server/chunks/ssr/[externals]_node_async_hooks_0v0ln8c._.js +3 -0
  132. package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__0138pgk._.js +3 -0
  133. package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__02r.cjq._.js +3 -0
  134. package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__092s1ta._.js +4 -0
  135. package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__09icjsf._.js +4 -0
  136. package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__09y9okz._.js +3 -0
  137. package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__09z7o2x._.js +19 -0
  138. package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__0_sh2n0._.js +3 -0
  139. package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__0dj-tbi._.js +3 -0
  140. package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__0g.lg8b._.js +4 -0
  141. package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__0h..k-e._.js +4 -0
  142. package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__0m72uj7._.js +3 -0
  143. package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__0nn6lb4._.js +3 -0
  144. package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__0odijkc._.js +3 -0
  145. package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__0of~riu._.js +3 -0
  146. package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__0osi8nq._.js +4 -0
  147. package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__0w6l33k._.js +16 -0
  148. package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__105.l_7._.js +3 -0
  149. package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__10xgshr._.js +33 -0
  150. package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__11pa2ra._.js +4 -0
  151. package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__12t-wym._.js +4 -0
  152. package/.next/standalone/.next/server/chunks/ssr/[turbopack]_runtime.js +903 -0
  153. package/.next/standalone/.next/server/chunks/ssr/_02_tcps._.js +32 -0
  154. package/.next/standalone/.next/server/chunks/ssr/_0h21oar._.js +3 -0
  155. package/.next/standalone/.next/server/chunks/ssr/_0i~.gk_._.js +3 -0
  156. package/.next/standalone/.next/server/chunks/ssr/_0q3h.2s._.js +3 -0
  157. package/.next/standalone/.next/server/chunks/ssr/_0x..fj-._.js +3 -0
  158. package/.next/standalone/.next/server/chunks/ssr/_10lm7or._.js +5 -0
  159. package/.next/standalone/.next/server/chunks/ssr/app_04qfs8z._.js +3 -0
  160. package/.next/standalone/.next/server/chunks/ssr/app_0uosk1e._.js +3 -0
  161. package/.next/standalone/.next/server/chunks/ssr/app_13f0ohr._.js +3 -0
  162. package/.next/standalone/.next/server/chunks/ssr/app_error_tsx_11t4ysq._.js +3 -0
  163. package/.next/standalone/.next/server/chunks/ssr/app_global-error_tsx_0m9qisk._.js +3 -0
  164. package/.next/standalone/.next/server/chunks/ssr/app_global-error_tsx_0xerkr6._.js +3 -0
  165. package/.next/standalone/.next/server/chunks/ssr/app_policies_hooks-client_tsx_0q-m0y-._.js +8 -0
  166. package/.next/standalone/.next/server/chunks/ssr/app_project_[name]_error_tsx_0.9-fod._.js +3 -0
  167. package/.next/standalone/.next/server/chunks/ssr/app_project_[name]_loading_tsx_03g9xy0._.js +3 -0
  168. package/.next/standalone/.next/server/chunks/ssr/app_project_[name]_session_[sessionId]_error_tsx_0ler-mr._.js +3 -0
  169. package/.next/standalone/.next/server/chunks/ssr/app_project_[name]_session_[sessionId]_loading_tsx_0c0e3yx._.js +3 -0
  170. package/.next/standalone/.next/server/chunks/ssr/app_projects_loading_tsx_13veom4._.js +3 -0
  171. package/.next/standalone/.next/server/chunks/ssr/node_modules_next_0rd0oc-._.js +6 -0
  172. package/.next/standalone/.next/server/chunks/ssr/node_modules_next_dist_06u0kr8._.js +3 -0
  173. package/.next/standalone/.next/server/chunks/ssr/node_modules_next_dist_0h9llsw._.js +6 -0
  174. package/.next/standalone/.next/server/chunks/ssr/node_modules_next_dist_11dij6w._.js +6 -0
  175. package/.next/standalone/.next/server/chunks/ssr/node_modules_next_dist_client_components_0inhx6q._.js +3 -0
  176. package/.next/standalone/.next/server/chunks/ssr/node_modules_next_dist_client_components_builtin_forbidden_0ghu-f7.js +3 -0
  177. package/.next/standalone/.next/server/chunks/ssr/node_modules_next_dist_client_components_builtin_unauthorized_0cjv-23.js +3 -0
  178. package/.next/standalone/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_0a_7sdg.js +4 -0
  179. package/.next/standalone/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_0ef3uwk.js +4 -0
  180. package/.next/standalone/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_0j79~gv.js +4 -0
  181. package/.next/standalone/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_0pbja1x.js +4 -0
  182. package/.next/standalone/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_0r6o0i2.js +4 -0
  183. package/.next/standalone/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_11y81~_.js +4 -0
  184. package/.next/standalone/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_12or2kf.js +4 -0
  185. package/.next/standalone/.next/server/chunks/ssr/node_modules_posthog-node_dist_entrypoints_index_node_mjs_0mebn66._.js +3 -0
  186. package/.next/standalone/.next/server/functions-config-manifest.json +14 -0
  187. package/.next/standalone/.next/server/instrumentation.js +4 -0
  188. package/.next/standalone/.next/server/middleware-build-manifest.js +22 -0
  189. package/.next/standalone/.next/server/middleware-manifest.json +6 -0
  190. package/.next/standalone/.next/server/middleware.js +5 -0
  191. package/.next/standalone/.next/server/next-font-manifest.js +1 -0
  192. package/.next/standalone/.next/server/next-font-manifest.json +6 -0
  193. package/.next/standalone/.next/server/pages/404.html +30 -0
  194. package/.next/standalone/.next/server/pages/500.html +1 -0
  195. package/.next/standalone/.next/server/pages-manifest.json +4 -0
  196. package/.next/standalone/.next/server/prefetch-hints.json +1 -0
  197. package/.next/standalone/.next/server/server-reference-manifest.js +1 -0
  198. package/.next/standalone/.next/server/server-reference-manifest.json +144 -0
  199. package/.next/standalone/CHANGELOG.md +10 -0
  200. package/.next/standalone/CONTRIBUTING.md +76 -0
  201. package/.next/standalone/LICENSE +42 -0
  202. package/.next/standalone/README.md +247 -0
  203. package/.next/standalone/app/actions/get-hook-activity.ts +27 -0
  204. package/.next/standalone/app/actions/get-hooks-config.ts +105 -0
  205. package/.next/standalone/app/actions/get-telemetry-config.ts +27 -0
  206. package/.next/standalone/app/actions/install-hooks-web.ts +21 -0
  207. package/.next/standalone/app/actions/update-hooks-config.ts +29 -0
  208. package/.next/standalone/app/actions/update-policy-params.ts +26 -0
  209. package/.next/standalone/app/api/download/[project]/[session]/route.ts +47 -0
  210. package/.next/standalone/app/components/copy-button.tsx +68 -0
  211. package/.next/standalone/app/components/date-picker-input.tsx +57 -0
  212. package/.next/standalone/app/components/error-fallback.tsx +42 -0
  213. package/.next/standalone/app/components/global-error-listeners.tsx +36 -0
  214. package/.next/standalone/app/components/lazy-log-viewer.tsx +28 -0
  215. package/.next/standalone/app/components/log-viewer/constants.ts +33 -0
  216. package/.next/standalone/app/components/log-viewer/content-block-view.tsx +142 -0
  217. package/.next/standalone/app/components/log-viewer/entry-icon.tsx +27 -0
  218. package/.next/standalone/app/components/log-viewer/entry-link-button.tsx +39 -0
  219. package/.next/standalone/app/components/log-viewer/entry-row.tsx +176 -0
  220. package/.next/standalone/app/components/log-viewer/index.tsx +1 -0
  221. package/.next/standalone/app/components/log-viewer/queue-divider.tsx +61 -0
  222. package/.next/standalone/app/components/log-viewer/stats-bar.tsx +50 -0
  223. package/.next/standalone/app/components/log-viewer/tool-input-output.tsx +61 -0
  224. package/.next/standalone/app/components/log-viewer/type-badge.tsx +14 -0
  225. package/.next/standalone/app/components/pagination-controls.tsx +94 -0
  226. package/.next/standalone/app/components/project-list.tsx +333 -0
  227. package/.next/standalone/app/components/raw-log-viewer.tsx +537 -0
  228. package/.next/standalone/app/components/refresh-button.tsx +80 -0
  229. package/.next/standalone/app/components/session-hooks-panel.tsx +394 -0
  230. package/.next/standalone/app/components/sessions-list.tsx +227 -0
  231. package/.next/standalone/app/components/toast.tsx +67 -0
  232. package/.next/standalone/app/error.tsx +7 -0
  233. package/.next/standalone/app/global-error.tsx +76 -0
  234. package/.next/standalone/app/globals.css +276 -0
  235. package/.next/standalone/app/icon.png +0 -0
  236. package/.next/standalone/app/layout.tsx +91 -0
  237. package/.next/standalone/app/page.tsx +7 -0
  238. package/.next/standalone/app/policies/hooks-client.tsx +1269 -0
  239. package/.next/standalone/app/policies/page.tsx +24 -0
  240. package/.next/standalone/app/project/[name]/error.tsx +7 -0
  241. package/.next/standalone/app/project/[name]/loading.tsx +27 -0
  242. package/.next/standalone/app/project/[name]/page.tsx +101 -0
  243. package/.next/standalone/app/project/[name]/session/[sessionId]/error.tsx +7 -0
  244. package/.next/standalone/app/project/[name]/session/[sessionId]/loading.tsx +34 -0
  245. package/.next/standalone/app/project/[name]/session/[sessionId]/page.tsx +100 -0
  246. package/.next/standalone/app/projects/loading.tsx +17 -0
  247. package/.next/standalone/app/projects/page.tsx +39 -0
  248. package/.next/standalone/bin/failproofai.mjs +94 -0
  249. package/.next/standalone/bun.lock +1148 -0
  250. package/.next/standalone/components/logo.tsx +36 -0
  251. package/.next/standalone/components/navbar.tsx +82 -0
  252. package/.next/standalone/components/reach-developers.tsx +99 -0
  253. package/.next/standalone/components/theme-toggle.tsx +37 -0
  254. package/.next/standalone/components/ui/button.tsx +42 -0
  255. package/.next/standalone/components.json +23 -0
  256. package/.next/standalone/contexts/AutoRefreshContext.tsx +25 -0
  257. package/.next/standalone/contexts/PostHogContext.tsx +62 -0
  258. package/.next/standalone/contexts/ThemeContext.tsx +69 -0
  259. package/.next/standalone/docs/architecture.md +311 -0
  260. package/.next/standalone/docs/built-in-policies.md +422 -0
  261. package/.next/standalone/docs/cli-reference.md +148 -0
  262. package/.next/standalone/docs/configuration.md +172 -0
  263. package/.next/standalone/docs/custom-hooks.md +257 -0
  264. package/.next/standalone/docs/dashboard.md +111 -0
  265. package/.next/standalone/docs/getting-started.md +122 -0
  266. package/.next/standalone/docs/index.md +47 -0
  267. package/.next/standalone/docs/testing.md +256 -0
  268. package/.next/standalone/eslint.config.mjs +15 -0
  269. package/.next/standalone/examples/policies-advanced/index.js +146 -0
  270. package/.next/standalone/examples/policies-advanced/utils.js +35 -0
  271. package/.next/standalone/examples/policies-basic.js +77 -0
  272. package/.next/standalone/instrumentation.node.ts +37 -0
  273. package/.next/standalone/instrumentation.ts +11 -0
  274. package/.next/standalone/lib/claude-config.ts +36 -0
  275. package/.next/standalone/lib/client-telemetry.ts +37 -0
  276. package/.next/standalone/lib/concurrency.ts +26 -0
  277. package/.next/standalone/lib/date-filters.ts +123 -0
  278. package/.next/standalone/lib/extract-subagent-ids.ts +21 -0
  279. package/.next/standalone/lib/format-duration.ts +29 -0
  280. package/.next/standalone/lib/log-entries.ts +460 -0
  281. package/.next/standalone/lib/log-format.ts +56 -0
  282. package/.next/standalone/lib/log-stats.ts +54 -0
  283. package/.next/standalone/lib/logger.ts +70 -0
  284. package/.next/standalone/lib/paths.ts +42 -0
  285. package/.next/standalone/lib/projects.ts +181 -0
  286. package/.next/standalone/lib/resolve-subagent-path.ts +36 -0
  287. package/.next/standalone/lib/runtime-cache.ts +59 -0
  288. package/.next/standalone/lib/telemetry-id.ts +97 -0
  289. package/.next/standalone/lib/telemetry.ts +148 -0
  290. package/.next/standalone/lib/url-filter-serializers.ts +111 -0
  291. package/.next/standalone/lib/use-filter-state.ts +68 -0
  292. package/.next/standalone/lib/use-url-params.ts +66 -0
  293. package/.next/standalone/lib/utils/session-id.ts +4 -0
  294. package/.next/standalone/lib/utils.ts +31 -0
  295. package/.next/standalone/next.config.ts +23 -0
  296. package/.next/standalone/node_modules/@img/colour/color.cjs +1594 -0
  297. package/.next/standalone/node_modules/@img/colour/index.cjs +1 -0
  298. package/.next/standalone/node_modules/@img/colour/package.json +45 -0
  299. package/.next/standalone/node_modules/@img/sharp-libvips-linux-x64/README.md +46 -0
  300. package/.next/standalone/node_modules/@img/sharp-libvips-linux-x64/lib/glib-2.0/include/glibconfig.h +221 -0
  301. package/.next/standalone/node_modules/@img/sharp-libvips-linux-x64/lib/index.js +1 -0
  302. package/.next/standalone/node_modules/@img/sharp-libvips-linux-x64/lib/libvips-cpp.so.8.17.3 +0 -0
  303. package/.next/standalone/node_modules/@img/sharp-libvips-linux-x64/package.json +42 -0
  304. package/.next/standalone/node_modules/@img/sharp-libvips-linux-x64/versions.json +30 -0
  305. package/.next/standalone/node_modules/@img/sharp-libvips-linuxmusl-x64/README.md +46 -0
  306. package/.next/standalone/node_modules/@img/sharp-libvips-linuxmusl-x64/lib/glib-2.0/include/glibconfig.h +221 -0
  307. package/.next/standalone/node_modules/@img/sharp-libvips-linuxmusl-x64/lib/index.js +1 -0
  308. package/.next/standalone/node_modules/@img/sharp-libvips-linuxmusl-x64/lib/libvips-cpp.so.8.17.3 +0 -0
  309. package/.next/standalone/node_modules/@img/sharp-libvips-linuxmusl-x64/package.json +42 -0
  310. package/.next/standalone/node_modules/@img/sharp-libvips-linuxmusl-x64/versions.json +30 -0
  311. package/.next/standalone/node_modules/@img/sharp-linux-x64/lib/sharp-linux-x64.node +0 -0
  312. package/.next/standalone/node_modules/@img/sharp-linux-x64/package.json +46 -0
  313. package/.next/standalone/node_modules/@img/sharp-linuxmusl-x64/lib/sharp-linuxmusl-x64.node +0 -0
  314. package/.next/standalone/node_modules/@img/sharp-linuxmusl-x64/package.json +46 -0
  315. package/.next/standalone/node_modules/@next/env/dist/index.js +1 -0
  316. package/.next/standalone/node_modules/@next/env/package.json +36 -0
  317. package/.next/standalone/node_modules/@swc/helpers/cjs/_interop_require_default.cjs +6 -0
  318. package/.next/standalone/node_modules/@swc/helpers/cjs/_interop_require_wildcard.cjs +38 -0
  319. package/.next/standalone/node_modules/@swc/helpers/package.json +471 -0
  320. package/.next/standalone/node_modules/client-only/index.js +0 -0
  321. package/.next/standalone/node_modules/client-only/package.json +19 -0
  322. package/.next/standalone/node_modules/detect-libc/lib/detect-libc.js +313 -0
  323. package/.next/standalone/node_modules/detect-libc/lib/elf.js +39 -0
  324. package/.next/standalone/node_modules/detect-libc/lib/filesystem.js +51 -0
  325. package/.next/standalone/node_modules/detect-libc/lib/process.js +24 -0
  326. package/.next/standalone/node_modules/detect-libc/package.json +44 -0
  327. package/.next/standalone/node_modules/next/dist/build/adapter/setup-node-env.external.js +15 -0
  328. package/.next/standalone/node_modules/next/dist/build/define-env.js +255 -0
  329. package/.next/standalone/node_modules/next/dist/build/duration-to-string.js +99 -0
  330. package/.next/standalone/node_modules/next/dist/build/get-supported-browsers.js +38 -0
  331. package/.next/standalone/node_modules/next/dist/build/next-config-ts/require-hook.js +85 -0
  332. package/.next/standalone/node_modules/next/dist/build/next-config-ts/transpile-config.js +251 -0
  333. package/.next/standalone/node_modules/next/dist/build/output/format.js +84 -0
  334. package/.next/standalone/node_modules/next/dist/build/output/log.js +135 -0
  335. package/.next/standalone/node_modules/next/dist/build/segment-config/app/app-segment-config.js +162 -0
  336. package/.next/standalone/node_modules/next/dist/build/segment-config/app/app-segments.js +137 -0
  337. package/.next/standalone/node_modules/next/dist/build/segment-config/app/collect-root-param-keys.js +52 -0
  338. package/.next/standalone/node_modules/next/dist/build/static-paths/app/extract-pathname-route-param-segments-from-loader-tree.js +137 -0
  339. package/.next/standalone/node_modules/next/dist/build/static-paths/app.js +735 -0
  340. package/.next/standalone/node_modules/next/dist/build/static-paths/pages.js +169 -0
  341. package/.next/standalone/node_modules/next/dist/build/static-paths/utils.js +119 -0
  342. package/.next/standalone/node_modules/next/dist/build/swc/helpers.js +15 -0
  343. package/.next/standalone/node_modules/next/dist/build/swc/index.js +1348 -0
  344. package/.next/standalone/node_modules/next/dist/build/swc/install-bindings.js +30 -0
  345. package/.next/standalone/node_modules/next/dist/build/swc/jest-transformer.js +76 -0
  346. package/.next/standalone/node_modules/next/dist/build/swc/loaderWorkerPool.js +40 -0
  347. package/.next/standalone/node_modules/next/dist/build/swc/options.js +403 -0
  348. package/.next/standalone/node_modules/next/dist/build/swc/types.js +6 -0
  349. package/.next/standalone/node_modules/next/dist/build/utils.js +1215 -0
  350. package/.next/standalone/node_modules/next/dist/cli/next-test.js +170 -0
  351. package/.next/standalone/node_modules/next/dist/client/add-base-path.js +24 -0
  352. package/.next/standalone/node_modules/next/dist/client/app-call-server.js +34 -0
  353. package/.next/standalone/node_modules/next/dist/client/app-find-source-map-url.js +39 -0
  354. package/.next/standalone/node_modules/next/dist/client/assign-location.js +29 -0
  355. package/.next/standalone/node_modules/next/dist/client/components/app-router-announcer.js +78 -0
  356. package/.next/standalone/node_modules/next/dist/client/components/app-router-headers.js +138 -0
  357. package/.next/standalone/node_modules/next/dist/client/components/app-router-instance.js +397 -0
  358. package/.next/standalone/node_modules/next/dist/client/components/app-router-utils.js +62 -0
  359. package/.next/standalone/node_modules/next/dist/client/components/app-router.js +514 -0
  360. package/.next/standalone/node_modules/next/dist/client/components/builtin/default.js +35 -0
  361. package/.next/standalone/node_modules/next/dist/client/components/builtin/error-styles.js +165 -0
  362. package/.next/standalone/node_modules/next/dist/client/components/builtin/global-error.js +100 -0
  363. package/.next/standalone/node_modules/next/dist/client/components/dev-root-http-access-fallback-boundary.js +52 -0
  364. package/.next/standalone/node_modules/next/dist/client/components/error-boundary.js +144 -0
  365. package/.next/standalone/node_modules/next/dist/client/components/errors/graceful-degrade-boundary.js +86 -0
  366. package/.next/standalone/node_modules/next/dist/client/components/errors/root-error-boundary.js +41 -0
  367. package/.next/standalone/node_modules/next/dist/client/components/forbidden.js +48 -0
  368. package/.next/standalone/node_modules/next/dist/client/components/handle-isr-error.js +30 -0
  369. package/.next/standalone/node_modules/next/dist/client/components/hooks-server-context.js +42 -0
  370. package/.next/standalone/node_modules/next/dist/client/components/http-access-fallback/error-boundary.js +125 -0
  371. package/.next/standalone/node_modules/next/dist/client/components/http-access-fallback/http-access-fallback.js +72 -0
  372. package/.next/standalone/node_modules/next/dist/client/components/is-next-router-error.js +23 -0
  373. package/.next/standalone/node_modules/next/dist/client/components/links.js +299 -0
  374. package/.next/standalone/node_modules/next/dist/client/components/match-segments.js +32 -0
  375. package/.next/standalone/node_modules/next/dist/client/components/nav-failure-handler.js +61 -0
  376. package/.next/standalone/node_modules/next/dist/client/components/navigation-devtools.js +126 -0
  377. package/.next/standalone/node_modules/next/dist/client/components/navigation-untracked.js +67 -0
  378. package/.next/standalone/node_modules/next/dist/client/components/navigation.js +225 -0
  379. package/.next/standalone/node_modules/next/dist/client/components/navigation.react-server.js +75 -0
  380. package/.next/standalone/node_modules/next/dist/client/components/not-found.js +42 -0
  381. package/.next/standalone/node_modules/next/dist/client/components/readonly-url-search-params.js +41 -0
  382. package/.next/standalone/node_modules/next/dist/client/components/redirect-boundary.js +107 -0
  383. package/.next/standalone/node_modules/next/dist/client/components/redirect-error.js +43 -0
  384. package/.next/standalone/node_modules/next/dist/client/components/redirect-status-code.js +24 -0
  385. package/.next/standalone/node_modules/next/dist/client/components/redirect.js +91 -0
  386. package/.next/standalone/node_modules/next/dist/client/components/router-reducer/compute-changed-path.js +201 -0
  387. package/.next/standalone/node_modules/next/dist/client/components/router-reducer/create-href-from-url.js +21 -0
  388. package/.next/standalone/node_modules/next/dist/client/components/router-reducer/create-initial-router-state.js +153 -0
  389. package/.next/standalone/node_modules/next/dist/client/components/router-reducer/create-router-cache-key.js +32 -0
  390. package/.next/standalone/node_modules/next/dist/client/components/router-reducer/fetch-server-response.js +457 -0
  391. package/.next/standalone/node_modules/next/dist/client/components/router-reducer/is-navigating-to-new-root-layout.js +59 -0
  392. package/.next/standalone/node_modules/next/dist/client/components/router-reducer/ppr-navigations.js +1341 -0
  393. package/.next/standalone/node_modules/next/dist/client/components/router-reducer/reducers/committed-state.js +49 -0
  394. package/.next/standalone/node_modules/next/dist/client/components/router-reducer/reducers/find-head-in-cache.js +63 -0
  395. package/.next/standalone/node_modules/next/dist/client/components/router-reducer/reducers/has-interception-route-in-current-tree.js +38 -0
  396. package/.next/standalone/node_modules/next/dist/client/components/router-reducer/reducers/hmr-refresh-reducer.js +23 -0
  397. package/.next/standalone/node_modules/next/dist/client/components/router-reducer/reducers/navigate-reducer.js +56 -0
  398. package/.next/standalone/node_modules/next/dist/client/components/router-reducer/reducers/refresh-reducer.js +83 -0
  399. package/.next/standalone/node_modules/next/dist/client/components/router-reducer/reducers/restore-reducer.js +62 -0
  400. package/.next/standalone/node_modules/next/dist/client/components/router-reducer/reducers/server-action-reducer.js +320 -0
  401. package/.next/standalone/node_modules/next/dist/client/components/router-reducer/reducers/server-patch-reducer.js +58 -0
  402. package/.next/standalone/node_modules/next/dist/client/components/router-reducer/router-reducer-types.js +70 -0
  403. package/.next/standalone/node_modules/next/dist/client/components/router-reducer/router-reducer.js +66 -0
  404. package/.next/standalone/node_modules/next/dist/client/components/router-reducer/set-cache-busting-search-param.js +60 -0
  405. package/.next/standalone/node_modules/next/dist/client/components/segment-cache/bfcache.js +128 -0
  406. package/.next/standalone/node_modules/next/dist/client/components/segment-cache/cache-key.js +28 -0
  407. package/.next/standalone/node_modules/next/dist/client/components/segment-cache/cache-map.js +305 -0
  408. package/.next/standalone/node_modules/next/dist/client/components/segment-cache/cache.js +1933 -0
  409. package/.next/standalone/node_modules/next/dist/client/components/segment-cache/lru.js +152 -0
  410. package/.next/standalone/node_modules/next/dist/client/components/segment-cache/navigation-testing-lock.js +194 -0
  411. package/.next/standalone/node_modules/next/dist/client/components/segment-cache/navigation.js +597 -0
  412. package/.next/standalone/node_modules/next/dist/client/components/segment-cache/optimistic-routes.js +543 -0
  413. package/.next/standalone/node_modules/next/dist/client/components/segment-cache/prefetch.js +31 -0
  414. package/.next/standalone/node_modules/next/dist/client/components/segment-cache/scheduler.js +1249 -0
  415. package/.next/standalone/node_modules/next/dist/client/components/segment-cache/types.js +69 -0
  416. package/.next/standalone/node_modules/next/dist/client/components/segment-cache/vary-path.js +278 -0
  417. package/.next/standalone/node_modules/next/dist/client/components/static-generation-bailout.js +42 -0
  418. package/.next/standalone/node_modules/next/dist/client/components/unauthorized.js +49 -0
  419. package/.next/standalone/node_modules/next/dist/client/components/unrecognized-action-error.js +39 -0
  420. package/.next/standalone/node_modules/next/dist/client/components/unresolved-thenable.js +23 -0
  421. package/.next/standalone/node_modules/next/dist/client/components/unstable-rethrow.browser.js +28 -0
  422. package/.next/standalone/node_modules/next/dist/client/components/unstable-rethrow.js +25 -0
  423. package/.next/standalone/node_modules/next/dist/client/components/unstable-rethrow.server.js +32 -0
  424. package/.next/standalone/node_modules/next/dist/client/components/use-action-queue.js +148 -0
  425. package/.next/standalone/node_modules/next/dist/client/dev/debug-channel.js +72 -0
  426. package/.next/standalone/node_modules/next/dist/client/flight-data-helpers.js +232 -0
  427. package/.next/standalone/node_modules/next/dist/client/has-base-path.js +23 -0
  428. package/.next/standalone/node_modules/next/dist/client/lib/console.js +177 -0
  429. package/.next/standalone/node_modules/next/dist/client/lib/javascript-url.js +32 -0
  430. package/.next/standalone/node_modules/next/dist/client/navigation-build-id.js +53 -0
  431. package/.next/standalone/node_modules/next/dist/client/normalize-trailing-slash.js +36 -0
  432. package/.next/standalone/node_modules/next/dist/client/remove-base-path.js +32 -0
  433. package/.next/standalone/node_modules/next/dist/client/route-params.js +230 -0
  434. package/.next/standalone/node_modules/next/dist/compiled/@edge-runtime/cookies/index.js +339 -0
  435. package/.next/standalone/node_modules/next/dist/compiled/@edge-runtime/cookies/package.json +1 -0
  436. package/.next/standalone/node_modules/next/dist/compiled/@edge-runtime/ponyfill/index.js +46 -0
  437. package/.next/standalone/node_modules/next/dist/compiled/@edge-runtime/ponyfill/package.json +1 -0
  438. package/.next/standalone/node_modules/next/dist/compiled/@edge-runtime/primitives/abort-controller.js.text.js +1 -0
  439. package/.next/standalone/node_modules/next/dist/compiled/@edge-runtime/primitives/console.js.text.js +1 -0
  440. package/.next/standalone/node_modules/next/dist/compiled/@edge-runtime/primitives/events.js.text.js +1 -0
  441. package/.next/standalone/node_modules/next/dist/compiled/@edge-runtime/primitives/index.js +5 -0
  442. package/.next/standalone/node_modules/next/dist/compiled/@edge-runtime/primitives/load.js +18713 -0
  443. package/.next/standalone/node_modules/next/dist/compiled/@edge-runtime/primitives/package.json +1 -0
  444. package/.next/standalone/node_modules/next/dist/compiled/@edge-runtime/primitives/stream.js +44 -0
  445. package/.next/standalone/node_modules/next/dist/compiled/@edge-runtime/primitives/timers.js.text.js +1 -0
  446. package/.next/standalone/node_modules/next/dist/compiled/@edge-runtime/primitives/url.js.text.js +1 -0
  447. package/.next/standalone/node_modules/next/dist/compiled/@hapi/accept/index.js +1 -0
  448. package/.next/standalone/node_modules/next/dist/compiled/@hapi/accept/package.json +1 -0
  449. package/.next/standalone/node_modules/next/dist/compiled/@mswjs/interceptors/ClientRequest/index.js +1 -0
  450. package/.next/standalone/node_modules/next/dist/compiled/@mswjs/interceptors/ClientRequest/package.json +1 -0
  451. package/.next/standalone/node_modules/next/dist/compiled/@napi-rs/triples/index.js +1 -0
  452. package/.next/standalone/node_modules/next/dist/compiled/@napi-rs/triples/package.json +1 -0
  453. package/.next/standalone/node_modules/next/dist/compiled/@opentelemetry/api/index.js +1 -0
  454. package/.next/standalone/node_modules/next/dist/compiled/@opentelemetry/api/package.json +1 -0
  455. package/.next/standalone/node_modules/next/dist/compiled/async-retry/index.js +1 -0
  456. package/.next/standalone/node_modules/next/dist/compiled/async-retry/package.json +1 -0
  457. package/.next/standalone/node_modules/next/dist/compiled/async-sema/index.js +1 -0
  458. package/.next/standalone/node_modules/next/dist/compiled/async-sema/package.json +1 -0
  459. package/.next/standalone/node_modules/next/dist/compiled/busboy/index.js +1 -0
  460. package/.next/standalone/node_modules/next/dist/compiled/busboy/package.json +1 -0
  461. package/.next/standalone/node_modules/next/dist/compiled/bytes/index.js +8 -0
  462. package/.next/standalone/node_modules/next/dist/compiled/bytes/package.json +1 -0
  463. package/.next/standalone/node_modules/next/dist/compiled/ci-info/index.js +1 -0
  464. package/.next/standalone/node_modules/next/dist/compiled/ci-info/package.json +1 -0
  465. package/.next/standalone/node_modules/next/dist/compiled/commander/index.js +1 -0
  466. package/.next/standalone/node_modules/next/dist/compiled/commander/package.json +1 -0
  467. package/.next/standalone/node_modules/next/dist/compiled/comment-json/index.js +7 -0
  468. package/.next/standalone/node_modules/next/dist/compiled/comment-json/package.json +1 -0
  469. package/.next/standalone/node_modules/next/dist/compiled/compression/index.js +58 -0
  470. package/.next/standalone/node_modules/next/dist/compiled/compression/package.json +1 -0
  471. package/.next/standalone/node_modules/next/dist/compiled/conf/index.js +15 -0
  472. package/.next/standalone/node_modules/next/dist/compiled/conf/package.json +1 -0
  473. package/.next/standalone/node_modules/next/dist/compiled/content-disposition/index.js +6 -0
  474. package/.next/standalone/node_modules/next/dist/compiled/content-disposition/package.json +1 -0
  475. package/.next/standalone/node_modules/next/dist/compiled/cookie/index.js +7 -0
  476. package/.next/standalone/node_modules/next/dist/compiled/cookie/package.json +1 -0
  477. package/.next/standalone/node_modules/next/dist/compiled/cross-spawn/index.js +1 -0
  478. package/.next/standalone/node_modules/next/dist/compiled/cross-spawn/package.json +1 -0
  479. package/.next/standalone/node_modules/next/dist/compiled/debug/index.js +1 -0
  480. package/.next/standalone/node_modules/next/dist/compiled/debug/package.json +1 -0
  481. package/.next/standalone/node_modules/next/dist/compiled/edge-runtime/index.js +1 -0
  482. package/.next/standalone/node_modules/next/dist/compiled/edge-runtime/package.json +1 -0
  483. package/.next/standalone/node_modules/next/dist/compiled/find-up/index.js +1 -0
  484. package/.next/standalone/node_modules/next/dist/compiled/find-up/package.json +1 -0
  485. package/.next/standalone/node_modules/next/dist/compiled/fresh/index.js +8 -0
  486. package/.next/standalone/node_modules/next/dist/compiled/fresh/package.json +1 -0
  487. package/.next/standalone/node_modules/next/dist/compiled/http-proxy/index.js +34 -0
  488. package/.next/standalone/node_modules/next/dist/compiled/http-proxy/package.json +1 -0
  489. package/.next/standalone/node_modules/next/dist/compiled/image-detector/detector.js +1 -0
  490. package/.next/standalone/node_modules/next/dist/compiled/image-size/index.js +1 -0
  491. package/.next/standalone/node_modules/next/dist/compiled/image-size/package.json +1 -0
  492. package/.next/standalone/node_modules/next/dist/compiled/ipaddr.js/ipaddr.js +1 -0
  493. package/.next/standalone/node_modules/next/dist/compiled/ipaddr.js/package.json +1 -0
  494. package/.next/standalone/node_modules/next/dist/compiled/is-animated/index.js +1 -0
  495. package/.next/standalone/node_modules/next/dist/compiled/is-animated/package.json +1 -0
  496. package/.next/standalone/node_modules/next/dist/compiled/is-docker/index.js +1 -0
  497. package/.next/standalone/node_modules/next/dist/compiled/is-docker/package.json +1 -0
  498. package/.next/standalone/node_modules/next/dist/compiled/is-wsl/index.js +1 -0
  499. package/.next/standalone/node_modules/next/dist/compiled/is-wsl/package.json +1 -0
  500. package/.next/standalone/node_modules/next/dist/compiled/jsonwebtoken/index.js +11 -0
  501. package/.next/standalone/node_modules/next/dist/compiled/jsonwebtoken/package.json +1 -0
  502. package/.next/standalone/node_modules/next/dist/compiled/nanoid/index.cjs +1 -0
  503. package/.next/standalone/node_modules/next/dist/compiled/nanoid/package.json +1 -0
  504. package/.next/standalone/node_modules/next/dist/compiled/next-server/app-page-turbo-experimental.runtime.prod.js +54 -0
  505. package/.next/standalone/node_modules/next/dist/compiled/next-server/app-page-turbo.runtime.prod.js +54 -0
  506. package/.next/standalone/node_modules/next/dist/compiled/next-server/app-route-turbo.runtime.prod.js +6 -0
  507. package/.next/standalone/node_modules/next/dist/compiled/next-server/pages-turbo.runtime.prod.js +20 -0
  508. package/.next/standalone/node_modules/next/dist/compiled/p-limit/index.js +1 -0
  509. package/.next/standalone/node_modules/next/dist/compiled/p-limit/package.json +1 -0
  510. package/.next/standalone/node_modules/next/dist/compiled/p-queue/index.js +1 -0
  511. package/.next/standalone/node_modules/next/dist/compiled/p-queue/package.json +1 -0
  512. package/.next/standalone/node_modules/next/dist/compiled/path-browserify/index.js +1 -0
  513. package/.next/standalone/node_modules/next/dist/compiled/path-browserify/package.json +1 -0
  514. package/.next/standalone/node_modules/next/dist/compiled/path-to-regexp/index.js +1 -0
  515. package/.next/standalone/node_modules/next/dist/compiled/path-to-regexp/package.json +1 -0
  516. package/.next/standalone/node_modules/next/dist/compiled/picomatch/index.js +1 -0
  517. package/.next/standalone/node_modules/next/dist/compiled/picomatch/package.json +1 -0
  518. package/.next/standalone/node_modules/next/dist/compiled/react-is/cjs/react-is.development.js +133 -0
  519. package/.next/standalone/node_modules/next/dist/compiled/react-is/cjs/react-is.production.js +130 -0
  520. package/.next/standalone/node_modules/next/dist/compiled/react-is/index.js +7 -0
  521. package/.next/standalone/node_modules/next/dist/compiled/react-is/package.json +26 -0
  522. package/.next/standalone/node_modules/next/dist/compiled/regenerator-runtime/package.json +19 -0
  523. package/.next/standalone/node_modules/next/dist/compiled/regenerator-runtime/runtime.js +729 -0
  524. package/.next/standalone/node_modules/next/dist/compiled/semver/index.js +1 -0
  525. package/.next/standalone/node_modules/next/dist/compiled/semver/package.json +1 -0
  526. package/.next/standalone/node_modules/next/dist/compiled/send/index.js +70 -0
  527. package/.next/standalone/node_modules/next/dist/compiled/send/package.json +1 -0
  528. package/.next/standalone/node_modules/next/dist/compiled/source-map/package.json +1 -0
  529. package/.next/standalone/node_modules/next/dist/compiled/source-map/source-map.js +1 -0
  530. package/.next/standalone/node_modules/next/dist/compiled/stacktrace-parser/package.json +1 -0
  531. package/.next/standalone/node_modules/next/dist/compiled/stacktrace-parser/stack-trace-parser.cjs.js +1 -0
  532. package/.next/standalone/node_modules/next/dist/compiled/string-hash/index.js +1 -0
  533. package/.next/standalone/node_modules/next/dist/compiled/string-hash/package.json +1 -0
  534. package/.next/standalone/node_modules/next/dist/compiled/strip-ansi/index.js +1 -0
  535. package/.next/standalone/node_modules/next/dist/compiled/strip-ansi/package.json +1 -0
  536. package/.next/standalone/node_modules/next/dist/compiled/superstruct/index.cjs +1 -0
  537. package/.next/standalone/node_modules/next/dist/compiled/superstruct/package.json +1 -0
  538. package/.next/standalone/node_modules/next/dist/compiled/tar/index.min.js +1 -0
  539. package/.next/standalone/node_modules/next/dist/compiled/tar/package.json +1 -0
  540. package/.next/standalone/node_modules/next/dist/compiled/text-table/index.js +1 -0
  541. package/.next/standalone/node_modules/next/dist/compiled/text-table/package.json +1 -0
  542. package/.next/standalone/node_modules/next/dist/compiled/watchpack/package.json +1 -0
  543. package/.next/standalone/node_modules/next/dist/compiled/watchpack/watchpack.js +1 -0
  544. package/.next/standalone/node_modules/next/dist/compiled/ws/index.js +1 -0
  545. package/.next/standalone/node_modules/next/dist/compiled/ws/package.json +1 -0
  546. package/.next/standalone/node_modules/next/dist/compiled/zod/index.cjs +1 -0
  547. package/.next/standalone/node_modules/next/dist/compiled/zod/package.json +1 -0
  548. package/.next/standalone/node_modules/next/dist/compiled/zod-validation-error/index.js +1 -0
  549. package/.next/standalone/node_modules/next/dist/compiled/zod-validation-error/package.json +1 -0
  550. package/.next/standalone/node_modules/next/dist/experimental/testmode/context.js +57 -0
  551. package/.next/standalone/node_modules/next/dist/experimental/testmode/fetch.js +142 -0
  552. package/.next/standalone/node_modules/next/dist/experimental/testmode/httpget.js +26 -0
  553. package/.next/standalone/node_modules/next/dist/experimental/testmode/server-edge.js +32 -0
  554. package/.next/standalone/node_modules/next/dist/experimental/testmode/server.js +62 -0
  555. package/.next/standalone/node_modules/next/dist/export/helpers/create-incremental-cache.js +61 -0
  556. package/.next/standalone/node_modules/next/dist/lib/batcher.js +65 -0
  557. package/.next/standalone/node_modules/next/dist/lib/build-custom-route.js +46 -0
  558. package/.next/standalone/node_modules/next/dist/lib/bundler.js +97 -0
  559. package/.next/standalone/node_modules/next/dist/lib/client-and-server-references.js +54 -0
  560. package/.next/standalone/node_modules/next/dist/lib/coalesced-function.js +39 -0
  561. package/.next/standalone/node_modules/next/dist/lib/compile-error.js +14 -0
  562. package/.next/standalone/node_modules/next/dist/lib/constants.js +420 -0
  563. package/.next/standalone/node_modules/next/dist/lib/create-client-router-filter.js +67 -0
  564. package/.next/standalone/node_modules/next/dist/lib/default-transpiled-packages.json +1 -0
  565. package/.next/standalone/node_modules/next/dist/lib/detached-promise.js +32 -0
  566. package/.next/standalone/node_modules/next/dist/lib/detect-typo.js +51 -0
  567. package/.next/standalone/node_modules/next/dist/lib/download-swc.js +183 -0
  568. package/.next/standalone/node_modules/next/dist/lib/error-telemetry-utils.js +42 -0
  569. package/.next/standalone/node_modules/next/dist/lib/fallback.js +100 -0
  570. package/.next/standalone/node_modules/next/dist/lib/fatal-error.js +14 -0
  571. package/.next/standalone/node_modules/next/dist/lib/file-exists.js +53 -0
  572. package/.next/standalone/node_modules/next/dist/lib/find-config.js +102 -0
  573. package/.next/standalone/node_modules/next/dist/lib/find-pages-dir.js +65 -0
  574. package/.next/standalone/node_modules/next/dist/lib/find-root.js +126 -0
  575. package/.next/standalone/node_modules/next/dist/lib/format-cli-help-output.js +84 -0
  576. package/.next/standalone/node_modules/next/dist/lib/format-dynamic-import-path.js +24 -0
  577. package/.next/standalone/node_modules/next/dist/lib/format-server-error.js +75 -0
  578. package/.next/standalone/node_modules/next/dist/lib/framework/boundary-components.js +62 -0
  579. package/.next/standalone/node_modules/next/dist/lib/framework/boundary-constants.js +36 -0
  580. package/.next/standalone/node_modules/next/dist/lib/fs/rename.js +87 -0
  581. package/.next/standalone/node_modules/next/dist/lib/fs/write-atomic.js +28 -0
  582. package/.next/standalone/node_modules/next/dist/lib/generate-interception-routes-rewrites.js +52 -0
  583. package/.next/standalone/node_modules/next/dist/lib/get-files-in-dir.js +33 -0
  584. package/.next/standalone/node_modules/next/dist/lib/get-network-host.js +44 -0
  585. package/.next/standalone/node_modules/next/dist/lib/get-package-version.js +118 -0
  586. package/.next/standalone/node_modules/next/dist/lib/get-project-dir.js +51 -0
  587. package/.next/standalone/node_modules/next/dist/lib/has-necessary-dependencies.js +49 -0
  588. package/.next/standalone/node_modules/next/dist/lib/helpers/get-cache-directory.js +66 -0
  589. package/.next/standalone/node_modules/next/dist/lib/helpers/get-npx-command.js +29 -0
  590. package/.next/standalone/node_modules/next/dist/lib/helpers/get-online.js +50 -0
  591. package/.next/standalone/node_modules/next/dist/lib/helpers/get-pkg-manager.js +63 -0
  592. package/.next/standalone/node_modules/next/dist/lib/helpers/get-registry.js +45 -0
  593. package/.next/standalone/node_modules/next/dist/lib/helpers/get-reserved-port.js +116 -0
  594. package/.next/standalone/node_modules/next/dist/lib/helpers/install.js +83 -0
  595. package/.next/standalone/node_modules/next/dist/lib/import-next-warning.js +50 -0
  596. package/.next/standalone/node_modules/next/dist/lib/inline-static-env.js +112 -0
  597. package/.next/standalone/node_modules/next/dist/lib/install-dependencies.js +40 -0
  598. package/.next/standalone/node_modules/next/dist/lib/interop-default.js +16 -0
  599. package/.next/standalone/node_modules/next/dist/lib/is-api-route.js +15 -0
  600. package/.next/standalone/node_modules/next/dist/lib/is-app-page-route.js +15 -0
  601. package/.next/standalone/node_modules/next/dist/lib/is-app-route-route.js +15 -0
  602. package/.next/standalone/node_modules/next/dist/lib/is-edge-runtime.js +16 -0
  603. package/.next/standalone/node_modules/next/dist/lib/is-error.js +78 -0
  604. package/.next/standalone/node_modules/next/dist/lib/is-interception-route-rewrite.js +18 -0
  605. package/.next/standalone/node_modules/next/dist/lib/is-internal-component.js +36 -0
  606. package/.next/standalone/node_modules/next/dist/lib/is-serializable-props.js +106 -0
  607. package/.next/standalone/node_modules/next/dist/lib/known-edge-safe-packages.json +1 -0
  608. package/.next/standalone/node_modules/next/dist/lib/load-custom-routes.js +594 -0
  609. package/.next/standalone/node_modules/next/dist/lib/memory/gc-observer.js +53 -0
  610. package/.next/standalone/node_modules/next/dist/lib/memory/shutdown.js +29 -0
  611. package/.next/standalone/node_modules/next/dist/lib/memory/startup.js +47 -0
  612. package/.next/standalone/node_modules/next/dist/lib/memory/trace.js +109 -0
  613. package/.next/standalone/node_modules/next/dist/lib/metadata/constants.js +40 -0
  614. package/.next/standalone/node_modules/next/dist/lib/metadata/default-metadata.js +82 -0
  615. package/.next/standalone/node_modules/next/dist/lib/metadata/generate/icon-mark.js +22 -0
  616. package/.next/standalone/node_modules/next/dist/lib/metadata/generate/utils.js +52 -0
  617. package/.next/standalone/node_modules/next/dist/lib/metadata/get-metadata-route.js +123 -0
  618. package/.next/standalone/node_modules/next/dist/lib/metadata/is-metadata-route.js +221 -0
  619. package/.next/standalone/node_modules/next/dist/lib/metadata/metadata-context.js +18 -0
  620. package/.next/standalone/node_modules/next/dist/lib/metadata/metadata.js +1686 -0
  621. package/.next/standalone/node_modules/next/dist/lib/metadata/resolve-metadata.js +884 -0
  622. package/.next/standalone/node_modules/next/dist/lib/metadata/resolvers/resolve-basics.js +232 -0
  623. package/.next/standalone/node_modules/next/dist/lib/metadata/resolvers/resolve-icons.js +56 -0
  624. package/.next/standalone/node_modules/next/dist/lib/metadata/resolvers/resolve-opengraph.js +199 -0
  625. package/.next/standalone/node_modules/next/dist/lib/metadata/resolvers/resolve-title.js +40 -0
  626. package/.next/standalone/node_modules/next/dist/lib/metadata/resolvers/resolve-url.js +135 -0
  627. package/.next/standalone/node_modules/next/dist/lib/metadata/types/alternative-urls-types.js +7 -0
  628. package/.next/standalone/node_modules/next/dist/lib/metadata/types/extra-types.js +9 -0
  629. package/.next/standalone/node_modules/next/dist/lib/metadata/types/icons.js +6 -0
  630. package/.next/standalone/node_modules/next/dist/lib/metadata/types/manifest-types.js +6 -0
  631. package/.next/standalone/node_modules/next/dist/lib/metadata/types/metadata-interface.js +18 -0
  632. package/.next/standalone/node_modules/next/dist/lib/metadata/types/metadata-types.js +10 -0
  633. package/.next/standalone/node_modules/next/dist/lib/metadata/types/opengraph-types.js +6 -0
  634. package/.next/standalone/node_modules/next/dist/lib/metadata/types/resolvers.js +6 -0
  635. package/.next/standalone/node_modules/next/dist/lib/metadata/types/twitter-types.js +7 -0
  636. package/.next/standalone/node_modules/next/dist/lib/mime-type.js +20 -0
  637. package/.next/standalone/node_modules/next/dist/lib/mkcert.js +204 -0
  638. package/.next/standalone/node_modules/next/dist/lib/multi-file-writer.js +75 -0
  639. package/.next/standalone/node_modules/next/dist/lib/needs-experimental-react.js +16 -0
  640. package/.next/standalone/node_modules/next/dist/lib/non-nullable.js +15 -0
  641. package/.next/standalone/node_modules/next/dist/lib/normalize-path.js +21 -0
  642. package/.next/standalone/node_modules/next/dist/lib/oxford-comma-list.js +15 -0
  643. package/.next/standalone/node_modules/next/dist/lib/page-types.js +18 -0
  644. package/.next/standalone/node_modules/next/dist/lib/patch-incorrect-lockfile.js +185 -0
  645. package/.next/standalone/node_modules/next/dist/lib/pick.js +19 -0
  646. package/.next/standalone/node_modules/next/dist/lib/picocolors.js +177 -0
  647. package/.next/standalone/node_modules/next/dist/lib/pretty-bytes.js +74 -0
  648. package/.next/standalone/node_modules/next/dist/lib/realpath.js +20 -0
  649. package/.next/standalone/node_modules/next/dist/lib/recursive-copy.js +76 -0
  650. package/.next/standalone/node_modules/next/dist/lib/recursive-delete.js +137 -0
  651. package/.next/standalone/node_modules/next/dist/lib/recursive-readdir.js +124 -0
  652. package/.next/standalone/node_modules/next/dist/lib/redirect-status.js +46 -0
  653. package/.next/standalone/node_modules/next/dist/lib/require-instrumentation-client.js +26 -0
  654. package/.next/standalone/node_modules/next/dist/lib/resolve-build-paths.js +154 -0
  655. package/.next/standalone/node_modules/next/dist/lib/resolve-from.js +65 -0
  656. package/.next/standalone/node_modules/next/dist/lib/route-pattern-normalizer.js +107 -0
  657. package/.next/standalone/node_modules/next/dist/lib/scheduler.js +64 -0
  658. package/.next/standalone/node_modules/next/dist/lib/semver-noop.js +18 -0
  659. package/.next/standalone/node_modules/next/dist/lib/server-external-packages.jsonc +103 -0
  660. package/.next/standalone/node_modules/next/dist/lib/setup-exception-listeners.js +11 -0
  661. package/.next/standalone/node_modules/next/dist/lib/static-env.js +92 -0
  662. package/.next/standalone/node_modules/next/dist/lib/try-to-parse-path.js +67 -0
  663. package/.next/standalone/node_modules/next/dist/lib/turbopack-warning.js +185 -0
  664. package/.next/standalone/node_modules/next/dist/lib/typescript/diagnosticFormatter.js +243 -0
  665. package/.next/standalone/node_modules/next/dist/lib/typescript/getTypeScriptConfiguration.js +153 -0
  666. package/.next/standalone/node_modules/next/dist/lib/typescript/getTypeScriptIntent.js +52 -0
  667. package/.next/standalone/node_modules/next/dist/lib/typescript/missingDependencyError.js +27 -0
  668. package/.next/standalone/node_modules/next/dist/lib/typescript/runTypeCheck.js +149 -0
  669. package/.next/standalone/node_modules/next/dist/lib/typescript/type-paths.js +51 -0
  670. package/.next/standalone/node_modules/next/dist/lib/typescript/writeAppTypeDeclarations.js +75 -0
  671. package/.next/standalone/node_modules/next/dist/lib/typescript/writeConfigurationDefaults.js +395 -0
  672. package/.next/standalone/node_modules/next/dist/lib/url.js +75 -0
  673. package/.next/standalone/node_modules/next/dist/lib/verify-partytown-setup.js +115 -0
  674. package/.next/standalone/node_modules/next/dist/lib/verify-root-layout.js +165 -0
  675. package/.next/standalone/node_modules/next/dist/lib/verify-typescript-setup.js +228 -0
  676. package/.next/standalone/node_modules/next/dist/lib/wait.js +19 -0
  677. package/.next/standalone/node_modules/next/dist/lib/with-promise-cache.js +24 -0
  678. package/.next/standalone/node_modules/next/dist/lib/worker.js +234 -0
  679. package/.next/standalone/node_modules/next/dist/server/ReactDOMServerPages.js +16 -0
  680. package/.next/standalone/node_modules/next/dist/server/accept-header.js +132 -0
  681. package/.next/standalone/node_modules/next/dist/server/after/after-context.js +140 -0
  682. package/.next/standalone/node_modules/next/dist/server/after/after.js +26 -0
  683. package/.next/standalone/node_modules/next/dist/server/after/awaiter.js +74 -0
  684. package/.next/standalone/node_modules/next/dist/server/after/builtin-request-context.js +38 -0
  685. package/.next/standalone/node_modules/next/dist/server/after/index.js +21 -0
  686. package/.next/standalone/node_modules/next/dist/server/after/run-with-after.js +35 -0
  687. package/.next/standalone/node_modules/next/dist/server/api-utils/get-cookie-parser.js +22 -0
  688. package/.next/standalone/node_modules/next/dist/server/api-utils/index.js +201 -0
  689. package/.next/standalone/node_modules/next/dist/server/api-utils/node/api-resolver.js +395 -0
  690. package/.next/standalone/node_modules/next/dist/server/api-utils/node/parse-body.js +79 -0
  691. package/.next/standalone/node_modules/next/dist/server/api-utils/node/try-get-preview-data.js +86 -0
  692. package/.next/standalone/node_modules/next/dist/server/api-utils/web.js +17 -0
  693. package/.next/standalone/node_modules/next/dist/server/app-render/action-async-storage-instance.js +14 -0
  694. package/.next/standalone/node_modules/next/dist/server/app-render/action-async-storage.external.js +13 -0
  695. package/.next/standalone/node_modules/next/dist/server/app-render/action-handler.js +1020 -0
  696. package/.next/standalone/node_modules/next/dist/server/app-render/after-task-async-storage-instance.js +14 -0
  697. package/.next/standalone/node_modules/next/dist/server/app-render/after-task-async-storage.external.js +13 -0
  698. package/.next/standalone/node_modules/next/dist/server/app-render/app-render-prerender-utils.js +167 -0
  699. package/.next/standalone/node_modules/next/dist/server/app-render/app-render-render-utils.js +76 -0
  700. package/.next/standalone/node_modules/next/dist/server/app-render/app-render-scheduling.js +188 -0
  701. package/.next/standalone/node_modules/next/dist/server/app-render/app-render.js +4469 -0
  702. package/.next/standalone/node_modules/next/dist/server/app-render/async-local-storage.js +76 -0
  703. package/.next/standalone/node_modules/next/dist/server/app-render/cache-signal.js +181 -0
  704. package/.next/standalone/node_modules/next/dist/server/app-render/collect-segment-data.js +600 -0
  705. package/.next/standalone/node_modules/next/dist/server/app-render/console-async-storage-instance.js +14 -0
  706. package/.next/standalone/node_modules/next/dist/server/app-render/console-async-storage.external.js +13 -0
  707. package/.next/standalone/node_modules/next/dist/server/app-render/create-component-styles-and-scripts.js +33 -0
  708. package/.next/standalone/node_modules/next/dist/server/app-render/create-component-tree.js +840 -0
  709. package/.next/standalone/node_modules/next/dist/server/app-render/create-error-handler.js +189 -0
  710. package/.next/standalone/node_modules/next/dist/server/app-render/create-flight-router-state-from-loader-tree.js +102 -0
  711. package/.next/standalone/node_modules/next/dist/server/app-render/csrf-protection.js +86 -0
  712. package/.next/standalone/node_modules/next/dist/server/app-render/debug-channel-server.js +30 -0
  713. package/.next/standalone/node_modules/next/dist/server/app-render/debug-channel-server.web.js +71 -0
  714. package/.next/standalone/node_modules/next/dist/server/app-render/dynamic-access-async-storage-instance.js +14 -0
  715. package/.next/standalone/node_modules/next/dist/server/app-render/dynamic-access-async-storage.external.js +13 -0
  716. package/.next/standalone/node_modules/next/dist/server/app-render/dynamic-rendering.js +1144 -0
  717. package/.next/standalone/node_modules/next/dist/server/app-render/encryption-utils-server.js +114 -0
  718. package/.next/standalone/node_modules/next/dist/server/app-render/encryption-utils.js +93 -0
  719. package/.next/standalone/node_modules/next/dist/server/app-render/encryption.js +259 -0
  720. package/.next/standalone/node_modules/next/dist/server/app-render/entry-base.js +256 -0
  721. package/.next/standalone/node_modules/next/dist/server/app-render/flight-render-result.js +28 -0
  722. package/.next/standalone/node_modules/next/dist/server/app-render/get-asset-query-string.js +29 -0
  723. package/.next/standalone/node_modules/next/dist/server/app-render/get-css-inlined-link-tags.js +49 -0
  724. package/.next/standalone/node_modules/next/dist/server/app-render/get-layer-assets.js +65 -0
  725. package/.next/standalone/node_modules/next/dist/server/app-render/get-preloadable-fonts.js +39 -0
  726. package/.next/standalone/node_modules/next/dist/server/app-render/get-script-nonce-from-header.js +44 -0
  727. package/.next/standalone/node_modules/next/dist/server/app-render/get-short-dynamic-param-type.js +25 -0
  728. package/.next/standalone/node_modules/next/dist/server/app-render/has-loading-component-in-tree.js +19 -0
  729. package/.next/standalone/node_modules/next/dist/server/app-render/instant-validation/boundary-constants.js +13 -0
  730. package/.next/standalone/node_modules/next/dist/server/app-render/instant-validation/boundary-impl.js +103 -0
  731. package/.next/standalone/node_modules/next/dist/server/app-render/instant-validation/boundary-tracking.js +18 -0
  732. package/.next/standalone/node_modules/next/dist/server/app-render/instant-validation/instant-config.js +181 -0
  733. package/.next/standalone/node_modules/next/dist/server/app-render/instant-validation/instant-samples-client.js +128 -0
  734. package/.next/standalone/node_modules/next/dist/server/app-render/instant-validation/instant-samples.js +432 -0
  735. package/.next/standalone/node_modules/next/dist/server/app-render/instant-validation/instant-validation-error.js +33 -0
  736. package/.next/standalone/node_modules/next/dist/server/app-render/instant-validation/instant-validation.js +713 -0
  737. package/.next/standalone/node_modules/next/dist/server/app-render/instant-validation/stream-utils.js +96 -0
  738. package/.next/standalone/node_modules/next/dist/server/app-render/interop-default.js +17 -0
  739. package/.next/standalone/node_modules/next/dist/server/app-render/make-get-server-inserted-html.js +92 -0
  740. package/.next/standalone/node_modules/next/dist/server/app-render/manifests-singleton.js +264 -0
  741. package/.next/standalone/node_modules/next/dist/server/app-render/metadata-insertion/create-server-inserted-metadata.js +28 -0
  742. package/.next/standalone/node_modules/next/dist/server/app-render/module-loading/track-dynamic-import.js +57 -0
  743. package/.next/standalone/node_modules/next/dist/server/app-render/module-loading/track-module-loading.external.js +32 -0
  744. package/.next/standalone/node_modules/next/dist/server/app-render/module-loading/track-module-loading.instance.js +66 -0
  745. package/.next/standalone/node_modules/next/dist/server/app-render/parse-and-validate-flight-router-state.js +49 -0
  746. package/.next/standalone/node_modules/next/dist/server/app-render/postponed-state.js +157 -0
  747. package/.next/standalone/node_modules/next/dist/server/app-render/prospective-render-utils.js +74 -0
  748. package/.next/standalone/node_modules/next/dist/server/app-render/react-large-shell-error.js +17 -0
  749. package/.next/standalone/node_modules/next/dist/server/app-render/react-server.node.js +39 -0
  750. package/.next/standalone/node_modules/next/dist/server/app-render/render-css-resource.js +52 -0
  751. package/.next/standalone/node_modules/next/dist/server/app-render/required-scripts.js +76 -0
  752. package/.next/standalone/node_modules/next/dist/server/app-render/rsc/postpone.js +18 -0
  753. package/.next/standalone/node_modules/next/dist/server/app-render/rsc/preloads.js +74 -0
  754. package/.next/standalone/node_modules/next/dist/server/app-render/rsc/taint.js +79 -0
  755. package/.next/standalone/node_modules/next/dist/server/app-render/segment-explorer-path.js +128 -0
  756. package/.next/standalone/node_modules/next/dist/server/app-render/server-inserted-html.js +77 -0
  757. package/.next/standalone/node_modules/next/dist/server/app-render/staged-rendering.js +343 -0
  758. package/.next/standalone/node_modules/next/dist/server/app-render/stale-time.js +111 -0
  759. package/.next/standalone/node_modules/next/dist/server/app-render/stream-ops.js +106 -0
  760. package/.next/standalone/node_modules/next/dist/server/app-render/stream-ops.web.js +163 -0
  761. package/.next/standalone/node_modules/next/dist/server/app-render/strip-flight-headers.js +18 -0
  762. package/.next/standalone/node_modules/next/dist/server/app-render/types.js +65 -0
  763. package/.next/standalone/node_modules/next/dist/server/app-render/use-flight-response.js +214 -0
  764. package/.next/standalone/node_modules/next/dist/server/app-render/vary-params.js +336 -0
  765. package/.next/standalone/node_modules/next/dist/server/app-render/walk-tree-with-flight-router-state.js +232 -0
  766. package/.next/standalone/node_modules/next/dist/server/app-render/work-async-storage-instance.js +14 -0
  767. package/.next/standalone/node_modules/next/dist/server/app-render/work-async-storage.external.js +13 -0
  768. package/.next/standalone/node_modules/next/dist/server/app-render/work-unit-async-storage-instance.js +14 -0
  769. package/.next/standalone/node_modules/next/dist/server/app-render/work-unit-async-storage.external.js +280 -0
  770. package/.next/standalone/node_modules/next/dist/server/async-storage/draft-mode-provider.js +62 -0
  771. package/.next/standalone/node_modules/next/dist/server/async-storage/request-store.js +144 -0
  772. package/.next/standalone/node_modules/next/dist/server/async-storage/with-store.js +6 -0
  773. package/.next/standalone/node_modules/next/dist/server/async-storage/work-store.js +91 -0
  774. package/.next/standalone/node_modules/next/dist/server/base-http/helpers.js +36 -0
  775. package/.next/standalone/node_modules/next/dist/server/base-http/index.js +54 -0
  776. package/.next/standalone/node_modules/next/dist/server/base-http/node.js +147 -0
  777. package/.next/standalone/node_modules/next/dist/server/base-http/web.js +124 -0
  778. package/.next/standalone/node_modules/next/dist/server/base-server.js +1874 -0
  779. package/.next/standalone/node_modules/next/dist/server/body-streams.js +114 -0
  780. package/.next/standalone/node_modules/next/dist/server/cache-dir.js +26 -0
  781. package/.next/standalone/node_modules/next/dist/server/capsize-font-metrics.json +181516 -0
  782. package/.next/standalone/node_modules/next/dist/server/ci-info.js +41 -0
  783. package/.next/standalone/node_modules/next/dist/server/client-component-renderer-logger.js +70 -0
  784. package/.next/standalone/node_modules/next/dist/server/config-schema.js +718 -0
  785. package/.next/standalone/node_modules/next/dist/server/config-shared.js +369 -0
  786. package/.next/standalone/node_modules/next/dist/server/config-utils.js +185 -0
  787. package/.next/standalone/node_modules/next/dist/server/config.js +1545 -0
  788. package/.next/standalone/node_modules/next/dist/server/create-deduped-by-callsite-server-error-logger.js +96 -0
  789. package/.next/standalone/node_modules/next/dist/server/crypto-utils.js +70 -0
  790. package/.next/standalone/node_modules/next/dist/server/dev/browser-logs/file-logger.js +186 -0
  791. package/.next/standalone/node_modules/next/dist/server/dev/browser-logs/receive-logs.js +558 -0
  792. package/.next/standalone/node_modules/next/dist/server/dev/browser-logs/source-map.js +222 -0
  793. package/.next/standalone/node_modules/next/dist/server/dev/debug-channel.js +87 -0
  794. package/.next/standalone/node_modules/next/dist/server/dev/dev-indicator-server-state.js +15 -0
  795. package/.next/standalone/node_modules/next/dist/server/dev/get-source-map-from-file.js +100 -0
  796. package/.next/standalone/node_modules/next/dist/server/dev/hot-middleware.js +274 -0
  797. package/.next/standalone/node_modules/next/dist/server/dev/hot-reloader-rspack.js +171 -0
  798. package/.next/standalone/node_modules/next/dist/server/dev/hot-reloader-shared-utils.js +56 -0
  799. package/.next/standalone/node_modules/next/dist/server/dev/hot-reloader-turbopack.js +1475 -0
  800. package/.next/standalone/node_modules/next/dist/server/dev/hot-reloader-types.js +58 -0
  801. package/.next/standalone/node_modules/next/dist/server/dev/hot-reloader-webpack.js +1386 -0
  802. package/.next/standalone/node_modules/next/dist/server/dev/log-requests.js +149 -0
  803. package/.next/standalone/node_modules/next/dist/server/dev/messages.js +74 -0
  804. package/.next/standalone/node_modules/next/dist/server/dev/middleware-turbopack.js +403 -0
  805. package/.next/standalone/node_modules/next/dist/server/dev/middleware-webpack.js +483 -0
  806. package/.next/standalone/node_modules/next/dist/server/dev/node-stack-frames.js +72 -0
  807. package/.next/standalone/node_modules/next/dist/server/dev/on-demand-entry-handler.js +773 -0
  808. package/.next/standalone/node_modules/next/dist/server/dev/parse-version-info.js +108 -0
  809. package/.next/standalone/node_modules/next/dist/server/dev/require-cache.js +79 -0
  810. package/.next/standalone/node_modules/next/dist/server/dev/serialized-errors.js +67 -0
  811. package/.next/standalone/node_modules/next/dist/server/dev/server-action-logger.js +37 -0
  812. package/.next/standalone/node_modules/next/dist/server/dev/static-paths-worker.js +104 -0
  813. package/.next/standalone/node_modules/next/dist/server/dev/turbopack-utils.js +687 -0
  814. package/.next/standalone/node_modules/next/dist/server/dynamic-rendering-utils.js +108 -0
  815. package/.next/standalone/node_modules/next/dist/server/font-utils.js +43 -0
  816. package/.next/standalone/node_modules/next/dist/server/get-app-route-from-entrypoint.js +30 -0
  817. package/.next/standalone/node_modules/next/dist/server/get-page-files.js +23 -0
  818. package/.next/standalone/node_modules/next/dist/server/get-route-from-entrypoint.js +35 -0
  819. package/.next/standalone/node_modules/next/dist/server/htmlescape.js +37 -0
  820. package/.next/standalone/node_modules/next/dist/server/image-optimizer.js +1220 -0
  821. package/.next/standalone/node_modules/next/dist/server/instrumentation/types.js +6 -0
  822. package/.next/standalone/node_modules/next/dist/server/instrumentation/utils.js +21 -0
  823. package/.next/standalone/node_modules/next/dist/server/internal-utils.js +39 -0
  824. package/.next/standalone/node_modules/next/dist/server/is-private-ip.js +36 -0
  825. package/.next/standalone/node_modules/next/dist/server/lib/app-dir-module.js +59 -0
  826. package/.next/standalone/node_modules/next/dist/server/lib/app-info-log.js +132 -0
  827. package/.next/standalone/node_modules/next/dist/server/lib/async-callback-set.js +29 -0
  828. package/.next/standalone/node_modules/next/dist/server/lib/cache-control.js +22 -0
  829. package/.next/standalone/node_modules/next/dist/server/lib/cache-handlers/default.external.js +18 -0
  830. package/.next/standalone/node_modules/next/dist/server/lib/cache-handlers/default.js +160 -0
  831. package/.next/standalone/node_modules/next/dist/server/lib/cache-handlers/types.js +8 -0
  832. package/.next/standalone/node_modules/next/dist/server/lib/chrome-devtools-workspace.js +116 -0
  833. package/.next/standalone/node_modules/next/dist/server/lib/clone-response.js +77 -0
  834. package/.next/standalone/node_modules/next/dist/server/lib/cpu-profile.js +59 -0
  835. package/.next/standalone/node_modules/next/dist/server/lib/decode-query-path-parameter.js +26 -0
  836. package/.next/standalone/node_modules/next/dist/server/lib/dedupe-fetch.js +163 -0
  837. package/.next/standalone/node_modules/next/dist/server/lib/dev-bundler-service.js +95 -0
  838. package/.next/standalone/node_modules/next/dist/server/lib/disk-lru-cache.external.js +57 -0
  839. package/.next/standalone/node_modules/next/dist/server/lib/etag.js +56 -0
  840. package/.next/standalone/node_modules/next/dist/server/lib/experimental/create-env-definitions.js +48 -0
  841. package/.next/standalone/node_modules/next/dist/server/lib/experimental/ppr.js +47 -0
  842. package/.next/standalone/node_modules/next/dist/server/lib/find-page-file.js +147 -0
  843. package/.next/standalone/node_modules/next/dist/server/lib/fix-mojibake.js +25 -0
  844. package/.next/standalone/node_modules/next/dist/server/lib/format-hostname.js +16 -0
  845. package/.next/standalone/node_modules/next/dist/server/lib/i18n-provider.js +129 -0
  846. package/.next/standalone/node_modules/next/dist/server/lib/implicit-tags.js +77 -0
  847. package/.next/standalone/node_modules/next/dist/server/lib/incremental-cache/file-system-cache.js +335 -0
  848. package/.next/standalone/node_modules/next/dist/server/lib/incremental-cache/index.js +501 -0
  849. package/.next/standalone/node_modules/next/dist/server/lib/incremental-cache/memory-cache.external.js +57 -0
  850. package/.next/standalone/node_modules/next/dist/server/lib/incremental-cache/shared-cache-controls.external.js +73 -0
  851. package/.next/standalone/node_modules/next/dist/server/lib/incremental-cache/tags-manifest.external.js +55 -0
  852. package/.next/standalone/node_modules/next/dist/server/lib/install-code-frame.js +22 -0
  853. package/.next/standalone/node_modules/next/dist/server/lib/is-ipv6.js +41 -0
  854. package/.next/standalone/node_modules/next/dist/server/lib/lazy-result.js +46 -0
  855. package/.next/standalone/node_modules/next/dist/server/lib/lru-cache.js +191 -0
  856. package/.next/standalone/node_modules/next/dist/server/lib/match-next-data-pathname.js +18 -0
  857. package/.next/standalone/node_modules/next/dist/server/lib/mock-request.js +416 -0
  858. package/.next/standalone/node_modules/next/dist/server/lib/module-loader/module-loader.js +8 -0
  859. package/.next/standalone/node_modules/next/dist/server/lib/module-loader/node-module-loader.js +25 -0
  860. package/.next/standalone/node_modules/next/dist/server/lib/module-loader/route-module-loader.js +26 -0
  861. package/.next/standalone/node_modules/next/dist/server/lib/node-fs-methods.js +28 -0
  862. package/.next/standalone/node_modules/next/dist/server/lib/parse-stack.js +46 -0
  863. package/.next/standalone/node_modules/next/dist/server/lib/patch-fetch.js +978 -0
  864. package/.next/standalone/node_modules/next/dist/server/lib/patch-set-header.js +38 -0
  865. package/.next/standalone/node_modules/next/dist/server/lib/postponed-request-body.js +64 -0
  866. package/.next/standalone/node_modules/next/dist/server/lib/render-server.js +155 -0
  867. package/.next/standalone/node_modules/next/dist/server/lib/router-server.js +696 -0
  868. package/.next/standalone/node_modules/next/dist/server/lib/router-utils/block-cross-site-dev.js +110 -0
  869. package/.next/standalone/node_modules/next/dist/server/lib/router-utils/build-data-route.js +48 -0
  870. package/.next/standalone/node_modules/next/dist/server/lib/router-utils/build-prefetch-segment-data-route.js +50 -0
  871. package/.next/standalone/node_modules/next/dist/server/lib/router-utils/cache-life-type-utils.js +211 -0
  872. package/.next/standalone/node_modules/next/dist/server/lib/router-utils/decode-path-params.js +42 -0
  873. package/.next/standalone/node_modules/next/dist/server/lib/router-utils/filesystem.js +591 -0
  874. package/.next/standalone/node_modules/next/dist/server/lib/router-utils/instrumentation-globals.external.js +89 -0
  875. package/.next/standalone/node_modules/next/dist/server/lib/router-utils/instrumentation-node-extensions.js +96 -0
  876. package/.next/standalone/node_modules/next/dist/server/lib/router-utils/is-postpone.js +16 -0
  877. package/.next/standalone/node_modules/next/dist/server/lib/router-utils/proxy-request.js +118 -0
  878. package/.next/standalone/node_modules/next/dist/server/lib/router-utils/resolve-routes.js +629 -0
  879. package/.next/standalone/node_modules/next/dist/server/lib/router-utils/route-types-utils.js +286 -0
  880. package/.next/standalone/node_modules/next/dist/server/lib/router-utils/router-server-context.js +26 -0
  881. package/.next/standalone/node_modules/next/dist/server/lib/router-utils/typegen.js +858 -0
  882. package/.next/standalone/node_modules/next/dist/server/lib/router-utils/types.js +6 -0
  883. package/.next/standalone/node_modules/next/dist/server/lib/server-action-request-meta.js +53 -0
  884. package/.next/standalone/node_modules/next/dist/server/lib/server-ipc/utils.js +81 -0
  885. package/.next/standalone/node_modules/next/dist/server/lib/source-maps.js +196 -0
  886. package/.next/standalone/node_modules/next/dist/server/lib/start-server.js +494 -0
  887. package/.next/standalone/node_modules/next/dist/server/lib/streaming-metadata.js +38 -0
  888. package/.next/standalone/node_modules/next/dist/server/lib/to-route.js +37 -0
  889. package/.next/standalone/node_modules/next/dist/server/lib/trace/constants.js +203 -0
  890. package/.next/standalone/node_modules/next/dist/server/lib/trace/tracer.js +280 -0
  891. package/.next/standalone/node_modules/next/dist/server/lib/trace/utils.js +16 -0
  892. package/.next/standalone/node_modules/next/dist/server/lib/types.js +6 -0
  893. package/.next/standalone/node_modules/next/dist/server/lib/utils.js +278 -0
  894. package/.next/standalone/node_modules/next/dist/server/lib/worker-utils.js +36 -0
  895. package/.next/standalone/node_modules/next/dist/server/load-components.js +179 -0
  896. package/.next/standalone/node_modules/next/dist/server/load-default-error-components.js +41 -0
  897. package/.next/standalone/node_modules/next/dist/server/load-manifest.external.js +117 -0
  898. package/.next/standalone/node_modules/next/dist/server/match-bundle.js +25 -0
  899. package/.next/standalone/node_modules/next/dist/server/mcp/get-mcp-middleware.js +49 -0
  900. package/.next/standalone/node_modules/next/dist/server/mcp/get-or-create-mcp-server.js +41 -0
  901. package/.next/standalone/node_modules/next/dist/server/mcp/mcp-telemetry-tracker.js +82 -0
  902. package/.next/standalone/node_modules/next/dist/server/mcp/tools/get-errors.js +114 -0
  903. package/.next/standalone/node_modules/next/dist/server/mcp/tools/get-logs.js +67 -0
  904. package/.next/standalone/node_modules/next/dist/server/mcp/tools/get-page-metadata.js +188 -0
  905. package/.next/standalone/node_modules/next/dist/server/mcp/tools/get-project-metadata.js +59 -0
  906. package/.next/standalone/node_modules/next/dist/server/mcp/tools/get-routes.js +136 -0
  907. package/.next/standalone/node_modules/next/dist/server/mcp/tools/get-server-action-by-id.js +121 -0
  908. package/.next/standalone/node_modules/next/dist/server/mcp/tools/next-instance-error-state.js +31 -0
  909. package/.next/standalone/node_modules/next/dist/server/mcp/tools/utils/browser-communication.js +90 -0
  910. package/.next/standalone/node_modules/next/dist/server/mcp/tools/utils/format-errors.js +137 -0
  911. package/.next/standalone/node_modules/next/dist/server/next-server.js +1429 -0
  912. package/.next/standalone/node_modules/next/dist/server/next-typescript.js +13 -0
  913. package/.next/standalone/node_modules/next/dist/server/next.js +455 -0
  914. package/.next/standalone/node_modules/next/dist/server/node-environment-baseline.js +25 -0
  915. package/.next/standalone/node_modules/next/dist/server/node-environment-extensions/console-dim.external.js +301 -0
  916. package/.next/standalone/node_modules/next/dist/server/node-environment-extensions/console-exit.js +49 -0
  917. package/.next/standalone/node_modules/next/dist/server/node-environment-extensions/console-file.js +56 -0
  918. package/.next/standalone/node_modules/next/dist/server/node-environment-extensions/date.js +52 -0
  919. package/.next/standalone/node_modules/next/dist/server/node-environment-extensions/error-inspect.js +8 -0
  920. package/.next/standalone/node_modules/next/dist/server/node-environment-extensions/fast-set-immediate.external.js +577 -0
  921. package/.next/standalone/node_modules/next/dist/server/node-environment-extensions/global-behaviors.js +33 -0
  922. package/.next/standalone/node_modules/next/dist/server/node-environment-extensions/io-utils.js +195 -0
  923. package/.next/standalone/node_modules/next/dist/server/node-environment-extensions/node-crypto.js +103 -0
  924. package/.next/standalone/node_modules/next/dist/server/node-environment-extensions/process-error-handlers.js +91 -0
  925. package/.next/standalone/node_modules/next/dist/server/node-environment-extensions/random.js +28 -0
  926. package/.next/standalone/node_modules/next/dist/server/node-environment-extensions/unhandled-rejection.external.js +508 -0
  927. package/.next/standalone/node_modules/next/dist/server/node-environment-extensions/web-crypto.js +45 -0
  928. package/.next/standalone/node_modules/next/dist/server/node-environment.js +19 -0
  929. package/.next/standalone/node_modules/next/dist/server/node-polyfill-crypto.js +21 -0
  930. package/.next/standalone/node_modules/next/dist/server/normalizers/absolute-filename-normalizer.js +33 -0
  931. package/.next/standalone/node_modules/next/dist/server/normalizers/built/app/app-bundle-path-normalizer.js +54 -0
  932. package/.next/standalone/node_modules/next/dist/server/normalizers/built/app/app-filename-normalizer.js +22 -0
  933. package/.next/standalone/node_modules/next/dist/server/normalizers/built/app/app-page-normalizer.js +40 -0
  934. package/.next/standalone/node_modules/next/dist/server/normalizers/built/app/app-pathname-normalizer.js +55 -0
  935. package/.next/standalone/node_modules/next/dist/server/normalizers/built/app/index.js +42 -0
  936. package/.next/standalone/node_modules/next/dist/server/normalizers/built/pages/index.js +44 -0
  937. package/.next/standalone/node_modules/next/dist/server/normalizers/built/pages/pages-bundle-path-normalizer.js +55 -0
  938. package/.next/standalone/node_modules/next/dist/server/normalizers/built/pages/pages-filename-normalizer.js +22 -0
  939. package/.next/standalone/node_modules/next/dist/server/normalizers/built/pages/pages-page-normalizer.js +19 -0
  940. package/.next/standalone/node_modules/next/dist/server/normalizers/built/pages/pages-pathname-normalizer.js +19 -0
  941. package/.next/standalone/node_modules/next/dist/server/normalizers/locale-route-normalizer.js +26 -0
  942. package/.next/standalone/node_modules/next/dist/server/normalizers/normalizer.js +6 -0
  943. package/.next/standalone/node_modules/next/dist/server/normalizers/normalizers.js +23 -0
  944. package/.next/standalone/node_modules/next/dist/server/normalizers/prefixing-normalizer.js +26 -0
  945. package/.next/standalone/node_modules/next/dist/server/normalizers/request/base-path.js +25 -0
  946. package/.next/standalone/node_modules/next/dist/server/normalizers/request/next-data.js +38 -0
  947. package/.next/standalone/node_modules/next/dist/server/normalizers/request/pathname-normalizer.js +6 -0
  948. package/.next/standalone/node_modules/next/dist/server/normalizers/request/prefix.js +39 -0
  949. package/.next/standalone/node_modules/next/dist/server/normalizers/request/rsc.js +19 -0
  950. package/.next/standalone/node_modules/next/dist/server/normalizers/request/segment-prefix-rsc.js +33 -0
  951. package/.next/standalone/node_modules/next/dist/server/normalizers/request/suffix.js +27 -0
  952. package/.next/standalone/node_modules/next/dist/server/normalizers/underscore-normalizer.js +17 -0
  953. package/.next/standalone/node_modules/next/dist/server/normalizers/wrap-normalizer-fn.js +17 -0
  954. package/.next/standalone/node_modules/next/dist/server/og/image-response.js +53 -0
  955. package/.next/standalone/node_modules/next/dist/server/patch-error-inspect.js +453 -0
  956. package/.next/standalone/node_modules/next/dist/server/pipe-readable.js +140 -0
  957. package/.next/standalone/node_modules/next/dist/server/post-process.js +39 -0
  958. package/.next/standalone/node_modules/next/dist/server/render-result.js +204 -0
  959. package/.next/standalone/node_modules/next/dist/server/render.js +1140 -0
  960. package/.next/standalone/node_modules/next/dist/server/request/connection.js +133 -0
  961. package/.next/standalone/node_modules/next/dist/server/request/cookies.js +235 -0
  962. package/.next/standalone/node_modules/next/dist/server/request/draft-mode.js +230 -0
  963. package/.next/standalone/node_modules/next/dist/server/request/fallback-params.js +69 -0
  964. package/.next/standalone/node_modules/next/dist/server/request/headers.js +229 -0
  965. package/.next/standalone/node_modules/next/dist/server/request/params.js +527 -0
  966. package/.next/standalone/node_modules/next/dist/server/request/pathname.js +119 -0
  967. package/.next/standalone/node_modules/next/dist/server/request/root-params.js +194 -0
  968. package/.next/standalone/node_modules/next/dist/server/request/search-params.js +526 -0
  969. package/.next/standalone/node_modules/next/dist/server/request/utils.js +51 -0
  970. package/.next/standalone/node_modules/next/dist/server/request-meta.js +55 -0
  971. package/.next/standalone/node_modules/next/dist/server/require-hook.js +82 -0
  972. package/.next/standalone/node_modules/next/dist/server/require.js +109 -0
  973. package/.next/standalone/node_modules/next/dist/server/response-cache/index.js +311 -0
  974. package/.next/standalone/node_modules/next/dist/server/response-cache/types.js +41 -0
  975. package/.next/standalone/node_modules/next/dist/server/response-cache/utils.js +104 -0
  976. package/.next/standalone/node_modules/next/dist/server/response-cache/web.js +101 -0
  977. package/.next/standalone/node_modules/next/dist/server/resume-data-cache/cache-store.js +96 -0
  978. package/.next/standalone/node_modules/next/dist/server/resume-data-cache/resume-data-cache.js +124 -0
  979. package/.next/standalone/node_modules/next/dist/server/revalidation-utils.js +157 -0
  980. package/.next/standalone/node_modules/next/dist/server/route-definitions/app-page-route-definition.js +16 -0
  981. package/.next/standalone/node_modules/next/dist/server/route-definitions/app-route-route-definition.js +6 -0
  982. package/.next/standalone/node_modules/next/dist/server/route-definitions/locale-route-definition.js +6 -0
  983. package/.next/standalone/node_modules/next/dist/server/route-definitions/pages-api-route-definition.js +6 -0
  984. package/.next/standalone/node_modules/next/dist/server/route-definitions/pages-route-definition.js +6 -0
  985. package/.next/standalone/node_modules/next/dist/server/route-definitions/route-definition.js +6 -0
  986. package/.next/standalone/node_modules/next/dist/server/route-kind.js +32 -0
  987. package/.next/standalone/node_modules/next/dist/server/route-matcher-managers/default-route-matcher-manager.js +239 -0
  988. package/.next/standalone/node_modules/next/dist/server/route-matcher-managers/dev-route-matcher-manager.js +120 -0
  989. package/.next/standalone/node_modules/next/dist/server/route-matcher-managers/route-matcher-manager.js +6 -0
  990. package/.next/standalone/node_modules/next/dist/server/route-matcher-providers/app-page-route-matcher-provider.js +55 -0
  991. package/.next/standalone/node_modules/next/dist/server/route-matcher-providers/app-route-route-matcher-provider.js +43 -0
  992. package/.next/standalone/node_modules/next/dist/server/route-matcher-providers/dev/dev-app-page-route-matcher-provider.js +91 -0
  993. package/.next/standalone/node_modules/next/dist/server/route-matcher-providers/dev/dev-app-route-route-matcher-provider.js +112 -0
  994. package/.next/standalone/node_modules/next/dist/server/route-matcher-providers/dev/dev-pages-api-route-matcher-provider.js +77 -0
  995. package/.next/standalone/node_modules/next/dist/server/route-matcher-providers/dev/dev-pages-route-matcher-provider.js +77 -0
  996. package/.next/standalone/node_modules/next/dist/server/route-matcher-providers/dev/file-cache-route-matcher-provider.js +28 -0
  997. package/.next/standalone/node_modules/next/dist/server/route-matcher-providers/dev/helpers/file-reader/batched-file-reader.js +106 -0
  998. package/.next/standalone/node_modules/next/dist/server/route-matcher-providers/dev/helpers/file-reader/default-file-reader.js +42 -0
  999. package/.next/standalone/node_modules/next/dist/server/route-matcher-providers/dev/helpers/file-reader/file-reader.js +6 -0
  1000. package/.next/standalone/node_modules/next/dist/server/route-matcher-providers/helpers/cached-route-matcher-provider.js +30 -0
  1001. package/.next/standalone/node_modules/next/dist/server/route-matcher-providers/helpers/manifest-loaders/manifest-loader.js +6 -0
  1002. package/.next/standalone/node_modules/next/dist/server/route-matcher-providers/helpers/manifest-loaders/node-manifest-loader.js +34 -0
  1003. package/.next/standalone/node_modules/next/dist/server/route-matcher-providers/helpers/manifest-loaders/server-manifest-loader.js +20 -0
  1004. package/.next/standalone/node_modules/next/dist/server/route-matcher-providers/manifest-route-matcher-provider.js +21 -0
  1005. package/.next/standalone/node_modules/next/dist/server/route-matcher-providers/pages-api-route-matcher-provider.js +55 -0
  1006. package/.next/standalone/node_modules/next/dist/server/route-matcher-providers/pages-route-matcher-provider.js +64 -0
  1007. package/.next/standalone/node_modules/next/dist/server/route-matcher-providers/route-matcher-provider.js +6 -0
  1008. package/.next/standalone/node_modules/next/dist/server/route-matchers/app-page-route-matcher.js +18 -0
  1009. package/.next/standalone/node_modules/next/dist/server/route-matchers/app-route-route-matcher.js +15 -0
  1010. package/.next/standalone/node_modules/next/dist/server/route-matchers/locale-route-matcher.js +68 -0
  1011. package/.next/standalone/node_modules/next/dist/server/route-matchers/pages-api-route-matcher.js +30 -0
  1012. package/.next/standalone/node_modules/next/dist/server/route-matchers/pages-route-matcher.js +30 -0
  1013. package/.next/standalone/node_modules/next/dist/server/route-matchers/route-matcher.js +54 -0
  1014. package/.next/standalone/node_modules/next/dist/server/route-matches/app-page-route-match.js +6 -0
  1015. package/.next/standalone/node_modules/next/dist/server/route-matches/app-route-route-match.js +6 -0
  1016. package/.next/standalone/node_modules/next/dist/server/route-matches/locale-route-match.js +6 -0
  1017. package/.next/standalone/node_modules/next/dist/server/route-matches/pages-api-route-match.js +16 -0
  1018. package/.next/standalone/node_modules/next/dist/server/route-matches/pages-route-match.js +6 -0
  1019. package/.next/standalone/node_modules/next/dist/server/route-matches/route-match.js +6 -0
  1020. package/.next/standalone/node_modules/next/dist/server/route-modules/app-page/helpers/prerender-manifest-matcher.js +51 -0
  1021. package/.next/standalone/node_modules/next/dist/server/route-modules/app-page/module.compiled.js +36 -0
  1022. package/.next/standalone/node_modules/next/dist/server/route-modules/app-page/module.js +162 -0
  1023. package/.next/standalone/node_modules/next/dist/server/route-modules/app-page/module.render.js +24 -0
  1024. package/.next/standalone/node_modules/next/dist/server/route-modules/app-page/normalize-request-url.js +25 -0
  1025. package/.next/standalone/node_modules/next/dist/server/route-modules/app-page/vendored/contexts/app-router-context.js +4 -0
  1026. package/.next/standalone/node_modules/next/dist/server/route-modules/app-page/vendored/contexts/entrypoints.js +87 -0
  1027. package/.next/standalone/node_modules/next/dist/server/route-modules/app-page/vendored/contexts/head-manager-context.js +4 -0
  1028. package/.next/standalone/node_modules/next/dist/server/route-modules/app-page/vendored/contexts/hooks-client-context.js +4 -0
  1029. package/.next/standalone/node_modules/next/dist/server/route-modules/app-page/vendored/contexts/image-config-context.js +4 -0
  1030. package/.next/standalone/node_modules/next/dist/server/route-modules/app-page/vendored/contexts/router-context.js +4 -0
  1031. package/.next/standalone/node_modules/next/dist/server/route-modules/app-page/vendored/contexts/server-inserted-html.js +4 -0
  1032. package/.next/standalone/node_modules/next/dist/server/route-modules/app-page/vendored/rsc/entrypoints.js +140 -0
  1033. package/.next/standalone/node_modules/next/dist/server/route-modules/app-page/vendored/rsc/react-compiler-runtime.js +4 -0
  1034. package/.next/standalone/node_modules/next/dist/server/route-modules/app-page/vendored/rsc/react-dom.js +4 -0
  1035. package/.next/standalone/node_modules/next/dist/server/route-modules/app-page/vendored/rsc/react-jsx-dev-runtime.js +4 -0
  1036. package/.next/standalone/node_modules/next/dist/server/route-modules/app-page/vendored/rsc/react-jsx-runtime.js +4 -0
  1037. package/.next/standalone/node_modules/next/dist/server/route-modules/app-page/vendored/rsc/react-server-dom-turbopack-server.js +4 -0
  1038. package/.next/standalone/node_modules/next/dist/server/route-modules/app-page/vendored/rsc/react-server-dom-turbopack-static.js +4 -0
  1039. package/.next/standalone/node_modules/next/dist/server/route-modules/app-page/vendored/rsc/react-server-dom-webpack-server.js +4 -0
  1040. package/.next/standalone/node_modules/next/dist/server/route-modules/app-page/vendored/rsc/react-server-dom-webpack-static.js +4 -0
  1041. package/.next/standalone/node_modules/next/dist/server/route-modules/app-page/vendored/rsc/react.js +4 -0
  1042. package/.next/standalone/node_modules/next/dist/server/route-modules/app-page/vendored/ssr/entrypoints.js +125 -0
  1043. package/.next/standalone/node_modules/next/dist/server/route-modules/app-page/vendored/ssr/react-compiler-runtime.js +4 -0
  1044. package/.next/standalone/node_modules/next/dist/server/route-modules/app-page/vendored/ssr/react-dom-server.js +4 -0
  1045. package/.next/standalone/node_modules/next/dist/server/route-modules/app-page/vendored/ssr/react-dom.js +4 -0
  1046. package/.next/standalone/node_modules/next/dist/server/route-modules/app-page/vendored/ssr/react-jsx-dev-runtime.js +4 -0
  1047. package/.next/standalone/node_modules/next/dist/server/route-modules/app-page/vendored/ssr/react-jsx-runtime.js +4 -0
  1048. package/.next/standalone/node_modules/next/dist/server/route-modules/app-page/vendored/ssr/react-server-dom-turbopack-client.js +4 -0
  1049. package/.next/standalone/node_modules/next/dist/server/route-modules/app-page/vendored/ssr/react-server-dom-webpack-client.js +4 -0
  1050. package/.next/standalone/node_modules/next/dist/server/route-modules/app-page/vendored/ssr/react.js +4 -0
  1051. package/.next/standalone/node_modules/next/dist/server/route-modules/app-route/helpers/auto-implement-methods.js +85 -0
  1052. package/.next/standalone/node_modules/next/dist/server/route-modules/app-route/helpers/clean-url.js +24 -0
  1053. package/.next/standalone/node_modules/next/dist/server/route-modules/app-route/helpers/get-pathname-from-absolute-path.js +29 -0
  1054. package/.next/standalone/node_modules/next/dist/server/route-modules/app-route/helpers/is-static-gen-enabled.js +15 -0
  1055. package/.next/standalone/node_modules/next/dist/server/route-modules/app-route/helpers/parsed-url-query-to-params.js +20 -0
  1056. package/.next/standalone/node_modules/next/dist/server/route-modules/app-route/module.compiled.js +36 -0
  1057. package/.next/standalone/node_modules/next/dist/server/route-modules/app-route/module.js +914 -0
  1058. package/.next/standalone/node_modules/next/dist/server/route-modules/app-route/shared-modules.js +56 -0
  1059. package/.next/standalone/node_modules/next/dist/server/route-modules/checks.js +45 -0
  1060. package/.next/standalone/node_modules/next/dist/server/route-modules/pages/builtin/_error.js +100 -0
  1061. package/.next/standalone/node_modules/next/dist/server/route-modules/pages/module.compiled.js +20 -0
  1062. package/.next/standalone/node_modules/next/dist/server/route-modules/pages/module.js +92 -0
  1063. package/.next/standalone/node_modules/next/dist/server/route-modules/pages/module.render.js +24 -0
  1064. package/.next/standalone/node_modules/next/dist/server/route-modules/pages/pages-handler.js +545 -0
  1065. package/.next/standalone/node_modules/next/dist/server/route-modules/pages/vendored/contexts/app-router-context.js +4 -0
  1066. package/.next/standalone/node_modules/next/dist/server/route-modules/pages/vendored/contexts/entrypoints.js +102 -0
  1067. package/.next/standalone/node_modules/next/dist/server/route-modules/pages/vendored/contexts/head-manager-context.js +4 -0
  1068. package/.next/standalone/node_modules/next/dist/server/route-modules/pages/vendored/contexts/hooks-client-context.js +4 -0
  1069. package/.next/standalone/node_modules/next/dist/server/route-modules/pages/vendored/contexts/html-context.js +4 -0
  1070. package/.next/standalone/node_modules/next/dist/server/route-modules/pages/vendored/contexts/image-config-context.js +4 -0
  1071. package/.next/standalone/node_modules/next/dist/server/route-modules/pages/vendored/contexts/loadable-context.js +4 -0
  1072. package/.next/standalone/node_modules/next/dist/server/route-modules/pages/vendored/contexts/loadable.js +4 -0
  1073. package/.next/standalone/node_modules/next/dist/server/route-modules/pages/vendored/contexts/router-context.js +4 -0
  1074. package/.next/standalone/node_modules/next/dist/server/route-modules/pages/vendored/contexts/server-inserted-html.js +4 -0
  1075. package/.next/standalone/node_modules/next/dist/server/route-modules/pages-api/module.compiled.js +20 -0
  1076. package/.next/standalone/node_modules/next/dist/server/route-modules/pages-api/module.js +58 -0
  1077. package/.next/standalone/node_modules/next/dist/server/route-modules/route-module.js +650 -0
  1078. package/.next/standalone/node_modules/next/dist/server/runtime-reacts.external.js +46 -0
  1079. package/.next/standalone/node_modules/next/dist/server/send-payload.js +88 -0
  1080. package/.next/standalone/node_modules/next/dist/server/send-response.js +70 -0
  1081. package/.next/standalone/node_modules/next/dist/server/serve-static.js +66 -0
  1082. package/.next/standalone/node_modules/next/dist/server/server-route-utils.js +30 -0
  1083. package/.next/standalone/node_modules/next/dist/server/server-utils.js +323 -0
  1084. package/.next/standalone/node_modules/next/dist/server/setup-http-agent-env.js +31 -0
  1085. package/.next/standalone/node_modules/next/dist/server/stream-utils/encoded-tags.js +122 -0
  1086. package/.next/standalone/node_modules/next/dist/server/stream-utils/node-web-streams-helper.js +918 -0
  1087. package/.next/standalone/node_modules/next/dist/server/stream-utils/uint8array-helpers.js +74 -0
  1088. package/.next/standalone/node_modules/next/dist/server/typescript/constant.js +98 -0
  1089. package/.next/standalone/node_modules/next/dist/server/typescript/index.js +199 -0
  1090. package/.next/standalone/node_modules/next/dist/server/typescript/rules/client-boundary.js +97 -0
  1091. package/.next/standalone/node_modules/next/dist/server/typescript/rules/config.js +512 -0
  1092. package/.next/standalone/node_modules/next/dist/server/typescript/rules/entry.js +149 -0
  1093. package/.next/standalone/node_modules/next/dist/server/typescript/rules/error.js +38 -0
  1094. package/.next/standalone/node_modules/next/dist/server/typescript/rules/metadata.js +234 -0
  1095. package/.next/standalone/node_modules/next/dist/server/typescript/rules/server-boundary.js +115 -0
  1096. package/.next/standalone/node_modules/next/dist/server/typescript/rules/server.js +79 -0
  1097. package/.next/standalone/node_modules/next/dist/server/typescript/utils.js +212 -0
  1098. package/.next/standalone/node_modules/next/dist/server/use-cache/cache-life.js +163 -0
  1099. package/.next/standalone/node_modules/next/dist/server/use-cache/cache-tag.js +52 -0
  1100. package/.next/standalone/node_modules/next/dist/server/use-cache/constants.js +28 -0
  1101. package/.next/standalone/node_modules/next/dist/server/use-cache/handlers.js +121 -0
  1102. package/.next/standalone/node_modules/next/dist/server/use-cache/use-cache-errors.js +36 -0
  1103. package/.next/standalone/node_modules/next/dist/server/use-cache/use-cache-wrapper.js +1588 -0
  1104. package/.next/standalone/node_modules/next/dist/server/utils.js +73 -0
  1105. package/.next/standalone/node_modules/next/dist/server/web/adapter.js +392 -0
  1106. package/.next/standalone/node_modules/next/dist/server/web/edge-route-module-wrapper.js +123 -0
  1107. package/.next/standalone/node_modules/next/dist/server/web/error.js +54 -0
  1108. package/.next/standalone/node_modules/next/dist/server/web/exports/index.js +56 -0
  1109. package/.next/standalone/node_modules/next/dist/server/web/get-edge-preview-props.js +23 -0
  1110. package/.next/standalone/node_modules/next/dist/server/web/globals.js +128 -0
  1111. package/.next/standalone/node_modules/next/dist/server/web/http.js +39 -0
  1112. package/.next/standalone/node_modules/next/dist/server/web/internal-edge-wait-until.js +64 -0
  1113. package/.next/standalone/node_modules/next/dist/server/web/next-url.js +199 -0
  1114. package/.next/standalone/node_modules/next/dist/server/web/sandbox/context.js +462 -0
  1115. package/.next/standalone/node_modules/next/dist/server/web/sandbox/fetch-inline-assets.js +35 -0
  1116. package/.next/standalone/node_modules/next/dist/server/web/sandbox/index.js +28 -0
  1117. package/.next/standalone/node_modules/next/dist/server/web/sandbox/resource-managers.js +88 -0
  1118. package/.next/standalone/node_modules/next/dist/server/web/sandbox/sandbox.js +137 -0
  1119. package/.next/standalone/node_modules/next/dist/server/web/spec-extension/adapters/headers.js +192 -0
  1120. package/.next/standalone/node_modules/next/dist/server/web/spec-extension/adapters/next-request.js +142 -0
  1121. package/.next/standalone/node_modules/next/dist/server/web/spec-extension/adapters/reflect.js +30 -0
  1122. package/.next/standalone/node_modules/next/dist/server/web/spec-extension/adapters/request-cookies.js +211 -0
  1123. package/.next/standalone/node_modules/next/dist/server/web/spec-extension/cookies.js +29 -0
  1124. package/.next/standalone/node_modules/next/dist/server/web/spec-extension/fetch-event.js +98 -0
  1125. package/.next/standalone/node_modules/next/dist/server/web/spec-extension/image-response.js +22 -0
  1126. package/.next/standalone/node_modules/next/dist/server/web/spec-extension/request.js +99 -0
  1127. package/.next/standalone/node_modules/next/dist/server/web/spec-extension/response.js +136 -0
  1128. package/.next/standalone/node_modules/next/dist/server/web/spec-extension/revalidate.js +214 -0
  1129. package/.next/standalone/node_modules/next/dist/server/web/spec-extension/unstable-cache.js +289 -0
  1130. package/.next/standalone/node_modules/next/dist/server/web/spec-extension/unstable-no-store.js +51 -0
  1131. package/.next/standalone/node_modules/next/dist/server/web/spec-extension/url-pattern.js +14 -0
  1132. package/.next/standalone/node_modules/next/dist/server/web/spec-extension/user-agent.js +46 -0
  1133. package/.next/standalone/node_modules/next/dist/server/web/types.js +6 -0
  1134. package/.next/standalone/node_modules/next/dist/server/web/utils.js +151 -0
  1135. package/.next/standalone/node_modules/next/dist/server/web/web-on-close.js +87 -0
  1136. package/.next/standalone/node_modules/next/dist/shared/lib/action-revalidation-kind.js +31 -0
  1137. package/.next/standalone/node_modules/next/dist/shared/lib/app-router-context.shared-runtime.js +50 -0
  1138. package/.next/standalone/node_modules/next/dist/shared/lib/app-router-types.js +46 -0
  1139. package/.next/standalone/node_modules/next/dist/shared/lib/constants.js +448 -0
  1140. package/.next/standalone/node_modules/next/dist/shared/lib/deep-freeze.js +30 -0
  1141. package/.next/standalone/node_modules/next/dist/shared/lib/deployment-id.js +63 -0
  1142. package/.next/standalone/node_modules/next/dist/shared/lib/dset.js +34 -0
  1143. package/.next/standalone/node_modules/next/dist/shared/lib/encode-uri-path.js +15 -0
  1144. package/.next/standalone/node_modules/next/dist/shared/lib/entry-constants.js +36 -0
  1145. package/.next/standalone/node_modules/next/dist/shared/lib/error-source.js +36 -0
  1146. package/.next/standalone/node_modules/next/dist/shared/lib/errors/canary-only-config-error.js +39 -0
  1147. package/.next/standalone/node_modules/next/dist/shared/lib/errors/code-frame.js +20 -0
  1148. package/.next/standalone/node_modules/next/dist/shared/lib/errors/constants.js +19 -0
  1149. package/.next/standalone/node_modules/next/dist/shared/lib/errors/empty-generate-static-params-error.js +24 -0
  1150. package/.next/standalone/node_modules/next/dist/shared/lib/errors/hard-deprecated-config-error.js +20 -0
  1151. package/.next/standalone/node_modules/next/dist/shared/lib/escape-regexp.js +22 -0
  1152. package/.next/standalone/node_modules/next/dist/shared/lib/get-hostname.js +23 -0
  1153. package/.next/standalone/node_modules/next/dist/shared/lib/hash.js +42 -0
  1154. package/.next/standalone/node_modules/next/dist/shared/lib/head-manager-context.shared-runtime.js +18 -0
  1155. package/.next/standalone/node_modules/next/dist/shared/lib/head.js +163 -0
  1156. package/.next/standalone/node_modules/next/dist/shared/lib/hooks-client-context.shared-runtime.js +60 -0
  1157. package/.next/standalone/node_modules/next/dist/shared/lib/html-context.shared-runtime.js +40 -0
  1158. package/.next/standalone/node_modules/next/dist/shared/lib/i18n/detect-domain-locale.js +25 -0
  1159. package/.next/standalone/node_modules/next/dist/shared/lib/i18n/get-locale-redirect.js +59 -0
  1160. package/.next/standalone/node_modules/next/dist/shared/lib/i18n/normalize-locale-path.js +54 -0
  1161. package/.next/standalone/node_modules/next/dist/shared/lib/image-blur-svg.js +22 -0
  1162. package/.next/standalone/node_modules/next/dist/shared/lib/image-config-context.shared-runtime.js +19 -0
  1163. package/.next/standalone/node_modules/next/dist/shared/lib/image-config.js +77 -0
  1164. package/.next/standalone/node_modules/next/dist/shared/lib/invariant-error.js +18 -0
  1165. package/.next/standalone/node_modules/next/dist/shared/lib/is-plain-object.js +42 -0
  1166. package/.next/standalone/node_modules/next/dist/shared/lib/is-thenable.js +20 -0
  1167. package/.next/standalone/node_modules/next/dist/shared/lib/isomorphic/path.js +14 -0
  1168. package/.next/standalone/node_modules/next/dist/shared/lib/lazy-dynamic/bailout-to-csr.js +37 -0
  1169. package/.next/standalone/node_modules/next/dist/shared/lib/loadable-context.shared-runtime.js +19 -0
  1170. package/.next/standalone/node_modules/next/dist/shared/lib/loadable.shared-runtime.js +246 -0
  1171. package/.next/standalone/node_modules/next/dist/shared/lib/match-local-pattern.js +46 -0
  1172. package/.next/standalone/node_modules/next/dist/shared/lib/match-remote-pattern.js +63 -0
  1173. package/.next/standalone/node_modules/next/dist/shared/lib/modern-browserslist-target.js +15 -0
  1174. package/.next/standalone/node_modules/next/dist/shared/lib/no-fallback-error.external.js +18 -0
  1175. package/.next/standalone/node_modules/next/dist/shared/lib/normalized-asset-prefix.js +28 -0
  1176. package/.next/standalone/node_modules/next/dist/shared/lib/page-path/absolute-path-to-page.js +26 -0
  1177. package/.next/standalone/node_modules/next/dist/shared/lib/page-path/denormalize-page-path.js +18 -0
  1178. package/.next/standalone/node_modules/next/dist/shared/lib/page-path/ensure-leading-slash.js +18 -0
  1179. package/.next/standalone/node_modules/next/dist/shared/lib/page-path/get-page-paths.js +40 -0
  1180. package/.next/standalone/node_modules/next/dist/shared/lib/page-path/normalize-data-path.js +23 -0
  1181. package/.next/standalone/node_modules/next/dist/shared/lib/page-path/normalize-page-path.js +26 -0
  1182. package/.next/standalone/node_modules/next/dist/shared/lib/page-path/normalize-path-sep.js +19 -0
  1183. package/.next/standalone/node_modules/next/dist/shared/lib/page-path/remove-page-path-tail.js +20 -0
  1184. package/.next/standalone/node_modules/next/dist/shared/lib/promise-with-resolvers.js +26 -0
  1185. package/.next/standalone/node_modules/next/dist/shared/lib/router/adapters.js +136 -0
  1186. package/.next/standalone/node_modules/next/dist/shared/lib/router/routes/app.js +122 -0
  1187. package/.next/standalone/node_modules/next/dist/shared/lib/router/utils/add-locale.js +28 -0
  1188. package/.next/standalone/node_modules/next/dist/shared/lib/router/utils/add-path-prefix.js +20 -0
  1189. package/.next/standalone/node_modules/next/dist/shared/lib/router/utils/add-path-suffix.js +20 -0
  1190. package/.next/standalone/node_modules/next/dist/shared/lib/router/utils/app-paths.js +62 -0
  1191. package/.next/standalone/node_modules/next/dist/shared/lib/router/utils/as-path-to-search-params.js +17 -0
  1192. package/.next/standalone/node_modules/next/dist/shared/lib/router/utils/cache-busting-search-param.js +24 -0
  1193. package/.next/standalone/node_modules/next/dist/shared/lib/router/utils/escape-path-delimiters.js +16 -0
  1194. package/.next/standalone/node_modules/next/dist/shared/lib/router/utils/format-next-pathname-info.js +27 -0
  1195. package/.next/standalone/node_modules/next/dist/shared/lib/router/utils/format-url.js +111 -0
  1196. package/.next/standalone/node_modules/next/dist/shared/lib/router/utils/get-dynamic-param.js +174 -0
  1197. package/.next/standalone/node_modules/next/dist/shared/lib/router/utils/get-next-pathname-info.js +52 -0
  1198. package/.next/standalone/node_modules/next/dist/shared/lib/router/utils/get-route-from-asset-path.js +25 -0
  1199. package/.next/standalone/node_modules/next/dist/shared/lib/router/utils/get-segment-param.js +90 -0
  1200. package/.next/standalone/node_modules/next/dist/shared/lib/router/utils/html-bots.js +17 -0
  1201. package/.next/standalone/node_modules/next/dist/shared/lib/router/utils/index.js +30 -0
  1202. package/.next/standalone/node_modules/next/dist/shared/lib/router/utils/interception-prefix-from-param-type.js +33 -0
  1203. package/.next/standalone/node_modules/next/dist/shared/lib/router/utils/interception-routes.js +108 -0
  1204. package/.next/standalone/node_modules/next/dist/shared/lib/router/utils/is-bot.js +57 -0
  1205. package/.next/standalone/node_modules/next/dist/shared/lib/router/utils/is-dynamic.js +26 -0
  1206. package/.next/standalone/node_modules/next/dist/shared/lib/router/utils/middleware-route-matcher.js +31 -0
  1207. package/.next/standalone/node_modules/next/dist/shared/lib/router/utils/parse-loader-tree.js +30 -0
  1208. package/.next/standalone/node_modules/next/dist/shared/lib/router/utils/parse-path.js +33 -0
  1209. package/.next/standalone/node_modules/next/dist/shared/lib/router/utils/parse-relative-url.js +43 -0
  1210. package/.next/standalone/node_modules/next/dist/shared/lib/router/utils/parse-url.js +38 -0
  1211. package/.next/standalone/node_modules/next/dist/shared/lib/router/utils/path-has-prefix.js +20 -0
  1212. package/.next/standalone/node_modules/next/dist/shared/lib/router/utils/path-match.js +49 -0
  1213. package/.next/standalone/node_modules/next/dist/shared/lib/router/utils/prepare-destination.js +292 -0
  1214. package/.next/standalone/node_modules/next/dist/shared/lib/router/utils/querystring.js +79 -0
  1215. package/.next/standalone/node_modules/next/dist/shared/lib/router/utils/relativize-url.js +40 -0
  1216. package/.next/standalone/node_modules/next/dist/shared/lib/router/utils/remove-path-prefix.js +39 -0
  1217. package/.next/standalone/node_modules/next/dist/shared/lib/router/utils/remove-trailing-slash.js +21 -0
  1218. package/.next/standalone/node_modules/next/dist/shared/lib/router/utils/resolve-param-value.js +116 -0
  1219. package/.next/standalone/node_modules/next/dist/shared/lib/router/utils/route-match-utils.js +113 -0
  1220. package/.next/standalone/node_modules/next/dist/shared/lib/router/utils/route-matcher.js +45 -0
  1221. package/.next/standalone/node_modules/next/dist/shared/lib/router/utils/route-regex.js +256 -0
  1222. package/.next/standalone/node_modules/next/dist/shared/lib/router/utils/sorted-routes.js +244 -0
  1223. package/.next/standalone/node_modules/next/dist/shared/lib/router-context.shared-runtime.js +18 -0
  1224. package/.next/standalone/node_modules/next/dist/shared/lib/segment-cache/segment-value-encoding.js +99 -0
  1225. package/.next/standalone/node_modules/next/dist/shared/lib/segment-cache/vary-params-decoding.js +32 -0
  1226. package/.next/standalone/node_modules/next/dist/shared/lib/segment.js +102 -0
  1227. package/.next/standalone/node_modules/next/dist/shared/lib/server-inserted-html.shared-runtime.js +35 -0
  1228. package/.next/standalone/node_modules/next/dist/shared/lib/server-reference-info.js +56 -0
  1229. package/.next/standalone/node_modules/next/dist/shared/lib/side-effect.js +63 -0
  1230. package/.next/standalone/node_modules/next/dist/shared/lib/size-limit.js +40 -0
  1231. package/.next/standalone/node_modules/next/dist/shared/lib/turbopack/internal-error.js +53 -0
  1232. package/.next/standalone/node_modules/next/dist/shared/lib/utils/reflect-utils.js +69 -0
  1233. package/.next/standalone/node_modules/next/dist/shared/lib/utils/warn-once.js +22 -0
  1234. package/.next/standalone/node_modules/next/dist/shared/lib/utils.js +207 -0
  1235. package/.next/standalone/node_modules/next/dist/shared/lib/zod.js +101 -0
  1236. package/.next/standalone/node_modules/next/dist/telemetry/anonymous-meta.js +89 -0
  1237. package/.next/standalone/node_modules/next/dist/telemetry/detached-flush.js +56 -0
  1238. package/.next/standalone/node_modules/next/dist/telemetry/events/build.js +174 -0
  1239. package/.next/standalone/node_modules/next/dist/telemetry/events/index.js +41 -0
  1240. package/.next/standalone/node_modules/next/dist/telemetry/events/plugins.js +51 -0
  1241. package/.next/standalone/node_modules/next/dist/telemetry/events/swc-load-failure.js +55 -0
  1242. package/.next/standalone/node_modules/next/dist/telemetry/events/version.js +66 -0
  1243. package/.next/standalone/node_modules/next/dist/telemetry/flush-telemetry.js +19 -0
  1244. package/.next/standalone/node_modules/next/dist/telemetry/post-telemetry-payload.js +48 -0
  1245. package/.next/standalone/node_modules/next/dist/telemetry/project-id.js +48 -0
  1246. package/.next/standalone/node_modules/next/dist/telemetry/storage.js +301 -0
  1247. package/.next/standalone/node_modules/next/dist/trace/index.js +58 -0
  1248. package/.next/standalone/node_modules/next/dist/trace/report/index.js +37 -0
  1249. package/.next/standalone/node_modules/next/dist/trace/report/to-json-build.js +40 -0
  1250. package/.next/standalone/node_modules/next/dist/trace/report/to-json.js +165 -0
  1251. package/.next/standalone/node_modules/next/dist/trace/report/to-telemetry.js +36 -0
  1252. package/.next/standalone/node_modules/next/dist/trace/shared.js +39 -0
  1253. package/.next/standalone/node_modules/next/dist/trace/trace.js +211 -0
  1254. package/.next/standalone/node_modules/next/package.json +378 -0
  1255. package/.next/standalone/node_modules/react/cjs/react-compiler-runtime.production.js +16 -0
  1256. package/.next/standalone/node_modules/react/cjs/react-jsx-dev-runtime.production.js +14 -0
  1257. package/.next/standalone/node_modules/react/cjs/react-jsx-runtime.production.js +34 -0
  1258. package/.next/standalone/node_modules/react/cjs/react.development.js +1284 -0
  1259. package/.next/standalone/node_modules/react/cjs/react.production.js +542 -0
  1260. package/.next/standalone/node_modules/react/compiler-runtime.js +14 -0
  1261. package/.next/standalone/node_modules/react/index.js +7 -0
  1262. package/.next/standalone/node_modules/react/jsx-dev-runtime.js +7 -0
  1263. package/.next/standalone/node_modules/react/jsx-runtime.js +7 -0
  1264. package/.next/standalone/node_modules/react/package.json +51 -0
  1265. package/.next/standalone/node_modules/react-dom/cjs/react-dom-server-legacy.browser.production.js +6603 -0
  1266. package/.next/standalone/node_modules/react-dom/cjs/react-dom-server-legacy.node.production.js +6692 -0
  1267. package/.next/standalone/node_modules/react-dom/cjs/react-dom-server.browser.production.js +7410 -0
  1268. package/.next/standalone/node_modules/react-dom/cjs/react-dom-server.edge.production.js +7512 -0
  1269. package/.next/standalone/node_modules/react-dom/cjs/react-dom-server.node.production.js +7707 -0
  1270. package/.next/standalone/node_modules/react-dom/cjs/react-dom.production.js +210 -0
  1271. package/.next/standalone/node_modules/react-dom/index.js +38 -0
  1272. package/.next/standalone/node_modules/react-dom/package.json +117 -0
  1273. package/.next/standalone/node_modules/react-dom/server.browser.js +16 -0
  1274. package/.next/standalone/node_modules/react-dom/server.edge.js +17 -0
  1275. package/.next/standalone/node_modules/react-dom/server.node.js +18 -0
  1276. package/.next/standalone/node_modules/react-dom/static.node.js +14 -0
  1277. package/.next/standalone/node_modules/sharp/lib/channel.js +177 -0
  1278. package/.next/standalone/node_modules/sharp/lib/colour.js +195 -0
  1279. package/.next/standalone/node_modules/sharp/lib/composite.js +212 -0
  1280. package/.next/standalone/node_modules/sharp/lib/constructor.js +499 -0
  1281. package/.next/standalone/node_modules/sharp/lib/index.js +16 -0
  1282. package/.next/standalone/node_modules/sharp/lib/input.js +809 -0
  1283. package/.next/standalone/node_modules/sharp/lib/is.js +143 -0
  1284. package/.next/standalone/node_modules/sharp/lib/libvips.js +207 -0
  1285. package/.next/standalone/node_modules/sharp/lib/operation.js +1016 -0
  1286. package/.next/standalone/node_modules/sharp/lib/output.js +1666 -0
  1287. package/.next/standalone/node_modules/sharp/lib/resize.js +595 -0
  1288. package/.next/standalone/node_modules/sharp/lib/sharp.js +121 -0
  1289. package/.next/standalone/node_modules/sharp/lib/utility.js +291 -0
  1290. package/.next/standalone/node_modules/sharp/node_modules/semver/classes/comparator.js +143 -0
  1291. package/.next/standalone/node_modules/sharp/node_modules/semver/classes/range.js +557 -0
  1292. package/.next/standalone/node_modules/sharp/node_modules/semver/classes/semver.js +333 -0
  1293. package/.next/standalone/node_modules/sharp/node_modules/semver/functions/cmp.js +54 -0
  1294. package/.next/standalone/node_modules/sharp/node_modules/semver/functions/coerce.js +62 -0
  1295. package/.next/standalone/node_modules/sharp/node_modules/semver/functions/compare.js +7 -0
  1296. package/.next/standalone/node_modules/sharp/node_modules/semver/functions/eq.js +5 -0
  1297. package/.next/standalone/node_modules/sharp/node_modules/semver/functions/gt.js +5 -0
  1298. package/.next/standalone/node_modules/sharp/node_modules/semver/functions/gte.js +5 -0
  1299. package/.next/standalone/node_modules/sharp/node_modules/semver/functions/lt.js +5 -0
  1300. package/.next/standalone/node_modules/sharp/node_modules/semver/functions/lte.js +5 -0
  1301. package/.next/standalone/node_modules/sharp/node_modules/semver/functions/neq.js +5 -0
  1302. package/.next/standalone/node_modules/sharp/node_modules/semver/functions/parse.js +18 -0
  1303. package/.next/standalone/node_modules/sharp/node_modules/semver/functions/satisfies.js +12 -0
  1304. package/.next/standalone/node_modules/sharp/node_modules/semver/internal/constants.js +37 -0
  1305. package/.next/standalone/node_modules/sharp/node_modules/semver/internal/debug.js +11 -0
  1306. package/.next/standalone/node_modules/sharp/node_modules/semver/internal/identifiers.js +29 -0
  1307. package/.next/standalone/node_modules/sharp/node_modules/semver/internal/lrucache.js +42 -0
  1308. package/.next/standalone/node_modules/sharp/node_modules/semver/internal/parse-options.js +17 -0
  1309. package/.next/standalone/node_modules/sharp/node_modules/semver/internal/re.js +223 -0
  1310. package/.next/standalone/node_modules/sharp/node_modules/semver/package.json +78 -0
  1311. package/.next/standalone/node_modules/sharp/package.json +202 -0
  1312. package/.next/standalone/node_modules/styled-jsx/dist/index/index.js +499 -0
  1313. package/.next/standalone/node_modules/styled-jsx/index.js +1 -0
  1314. package/.next/standalone/node_modules/styled-jsx/package.json +132 -0
  1315. package/.next/standalone/node_modules/styled-jsx/style.js +1 -0
  1316. package/.next/standalone/package.json +94 -0
  1317. package/.next/standalone/postcss.config.mjs +8 -0
  1318. package/.next/standalone/proxy.ts +24 -0
  1319. package/.next/standalone/public/exospheresmall-dark.png +0 -0
  1320. package/.next/standalone/public/exospheresmall.png +0 -0
  1321. package/.next/standalone/scripts/dev.ts +3 -0
  1322. package/.next/standalone/scripts/install-telemetry.mjs +108 -0
  1323. package/.next/standalone/scripts/launch.ts +67 -0
  1324. package/.next/standalone/scripts/parse-script-args.ts +77 -0
  1325. package/.next/standalone/scripts/postinstall.mjs +110 -0
  1326. package/.next/standalone/scripts/preuninstall.mjs +131 -0
  1327. package/.next/standalone/scripts/start.ts +3 -0
  1328. package/.next/standalone/server.js +38 -0
  1329. package/.next/standalone/src/hooks/builtin-policies.ts +1070 -0
  1330. package/.next/standalone/src/hooks/custom-hooks-loader.ts +61 -0
  1331. package/.next/standalone/src/hooks/custom-hooks-registry.ts +30 -0
  1332. package/.next/standalone/src/hooks/handler.ts +175 -0
  1333. package/.next/standalone/src/hooks/hook-activity-store.ts +344 -0
  1334. package/.next/standalone/src/hooks/hook-logger.ts +133 -0
  1335. package/.next/standalone/src/hooks/hook-telemetry.ts +43 -0
  1336. package/.next/standalone/src/hooks/hooks-config.ts +121 -0
  1337. package/.next/standalone/src/hooks/install-prompt.ts +357 -0
  1338. package/.next/standalone/src/hooks/llm-client.ts +90 -0
  1339. package/.next/standalone/src/hooks/loader-utils.ts +178 -0
  1340. package/.next/standalone/src/hooks/manager.ts +619 -0
  1341. package/.next/standalone/src/hooks/policy-evaluator.ts +171 -0
  1342. package/.next/standalone/src/hooks/policy-helpers.ts +16 -0
  1343. package/.next/standalone/src/hooks/policy-registry.ts +90 -0
  1344. package/.next/standalone/src/hooks/policy-types.ts +77 -0
  1345. package/.next/standalone/src/hooks/types.ts +54 -0
  1346. package/.next/standalone/src/index.ts +19 -0
  1347. package/.next/standalone/src/posthog-key.ts +5 -0
  1348. package/.next/standalone/tailwind.config.ts +11 -0
  1349. package/.next/standalone/tsconfig.json +42 -0
  1350. package/.next/standalone/vitest.config.e2e.mts +21 -0
  1351. package/.next/standalone/vitest.config.mts +20 -0
  1352. package/LICENSE +42 -0
  1353. package/README.md +247 -0
  1354. package/bin/failproofai.mjs +94 -0
  1355. package/lib/claude-config.ts +36 -0
  1356. package/lib/client-telemetry.ts +37 -0
  1357. package/lib/concurrency.ts +26 -0
  1358. package/lib/date-filters.ts +123 -0
  1359. package/lib/extract-subagent-ids.ts +21 -0
  1360. package/lib/format-duration.ts +29 -0
  1361. package/lib/log-entries.ts +460 -0
  1362. package/lib/log-format.ts +56 -0
  1363. package/lib/log-stats.ts +54 -0
  1364. package/lib/logger.ts +70 -0
  1365. package/lib/paths.ts +42 -0
  1366. package/lib/projects.ts +181 -0
  1367. package/lib/resolve-subagent-path.ts +36 -0
  1368. package/lib/runtime-cache.ts +59 -0
  1369. package/lib/telemetry-id.ts +97 -0
  1370. package/lib/telemetry.ts +148 -0
  1371. package/lib/url-filter-serializers.ts +111 -0
  1372. package/lib/use-filter-state.ts +68 -0
  1373. package/lib/use-url-params.ts +66 -0
  1374. package/lib/utils/session-id.ts +4 -0
  1375. package/lib/utils.ts +31 -0
  1376. package/package.json +94 -0
  1377. package/scripts/dev.ts +3 -0
  1378. package/scripts/install-telemetry.mjs +108 -0
  1379. package/scripts/launch.ts +67 -0
  1380. package/scripts/parse-script-args.ts +77 -0
  1381. package/scripts/postinstall.mjs +110 -0
  1382. package/scripts/preuninstall.mjs +131 -0
  1383. package/scripts/start.ts +3 -0
  1384. package/src/hooks/builtin-policies.ts +1070 -0
  1385. package/src/hooks/custom-hooks-loader.ts +61 -0
  1386. package/src/hooks/custom-hooks-registry.ts +30 -0
  1387. package/src/hooks/handler.ts +175 -0
  1388. package/src/hooks/hook-activity-store.ts +344 -0
  1389. package/src/hooks/hook-logger.ts +133 -0
  1390. package/src/hooks/hook-telemetry.ts +43 -0
  1391. package/src/hooks/hooks-config.ts +121 -0
  1392. package/src/hooks/install-prompt.ts +357 -0
  1393. package/src/hooks/llm-client.ts +90 -0
  1394. package/src/hooks/loader-utils.ts +178 -0
  1395. package/src/hooks/manager.ts +619 -0
  1396. package/src/hooks/policy-evaluator.ts +171 -0
  1397. package/src/hooks/policy-helpers.ts +16 -0
  1398. package/src/hooks/policy-registry.ts +90 -0
  1399. package/src/hooks/policy-types.ts +77 -0
  1400. package/src/hooks/types.ts +54 -0
  1401. package/src/index.ts +19 -0
  1402. package/src/posthog-key.ts +5 -0
@@ -0,0 +1,1070 @@
1
+ /**
2
+ * Built-in security policies for Claude Code hooks.
3
+ */
4
+ import { resolve, join } from "node:path";
5
+ import { readFile, writeFile, stat, open } from "node:fs/promises";
6
+ import { execSync } from "node:child_process";
7
+ import { homedir } from "node:os";
8
+ import type { BuiltinPolicyDefinition, PolicyContext, PolicyResult, PolicyParamsSchema } from "./policy-types";
9
+ import { allow, deny, instruct } from "./policy-helpers";
10
+ import { registerPolicy } from "./policy-registry";
11
+ import { hookLogWarn } from "./hook-logger";
12
+
13
+ function isClaudeInternalPath(resolved: string): boolean {
14
+ const claudeDir = join(homedir(), ".claude");
15
+ return resolved === claudeDir || resolved.startsWith(claudeDir + "/");
16
+ }
17
+
18
+ function isClaudeSettingsFile(resolved: string): boolean {
19
+ return /[\\/]\.claude[\\/]settings(?:\.[^/\\]+)?\.json$/.test(resolved);
20
+ }
21
+
22
+ function getCommand(ctx: PolicyContext): string {
23
+ return (ctx.toolInput?.command as string) ?? "";
24
+ }
25
+
26
+ function getFilePath(ctx: PolicyContext): string {
27
+ return (ctx.toolInput?.file_path as string) ?? "";
28
+ }
29
+
30
+ /**
31
+ * Parse a command string into argv tokens for safe pattern matching.
32
+ * Splits on whitespace and strips simple single/double quotes.
33
+ * Does not handle all shell syntax — sufficient for prefix-match allowlists.
34
+ */
35
+ function parseArgvTokens(cmd: string): string[] {
36
+ return cmd.trim().split(/\s+/).map((t) => t.replace(/^['"]|['"]$/g, ""));
37
+ }
38
+
39
+ // Shell operators that always act as command separators when whitespace-delimited.
40
+ const SHELL_OPERATORS = new Set(["&&", "||", "|", ";"]);
41
+
42
+ // Shell metacharacters that are unsafe when embedded inside a token. Any command
43
+ // whose argv contains one of these in a token is rejected before allowlist matching.
44
+ // This closes the bypass where operators are glued to a word (e.g. "nginx;evil" or
45
+ // "nginx&&evil") and would otherwise be invisible to the standalone-operator check.
46
+ // Note: | is intentionally excluded here because "foo|bar" is a valid grep/sed
47
+ // argument value; the standalone-operator check above already handles bare "|" tokens.
48
+ const SHELL_METACHAR_RE = /[;&<>`$()\\]/;
49
+
50
+ // -- Pre-compiled regex constants (hoisted to avoid per-call allocation) --
51
+
52
+ // sanitizeJwt
53
+ const JWT_RE = /eyJ[A-Za-z0-9_-]{10,}\.[A-Za-z0-9_-]{10,}\.[A-Za-z0-9_-]{10,}/;
54
+
55
+ // sanitizeApiKeys
56
+ const API_KEY_PATTERNS: Array<[RegExp, string]> = [
57
+ [/sk-ant-[A-Za-z0-9\-_]{20,}/, "Anthropic API key"],
58
+ [/sk-proj-[A-Za-z0-9\-_]{20,}/, "OpenAI project API key"],
59
+ [/sk-[A-Za-z0-9]{20,}/, "OpenAI API key"],
60
+ [/ghp_[A-Za-z0-9]{36}/, "GitHub personal access token"],
61
+ [/github_pat_[A-Za-z0-9_]{82}/, "GitHub fine-grained token"],
62
+ [/AKIA[A-Z0-9]{16}/, "AWS access key ID"],
63
+ [/sk_live_[A-Za-z0-9]{24,}/, "Stripe live secret key"],
64
+ [/sk_test_[A-Za-z0-9]{24,}/, "Stripe test secret key"],
65
+ [/AIza[0-9A-Za-z\-_]{35}/, "Google API key"],
66
+ ];
67
+
68
+ // sanitizeConnectionStrings
69
+ const CONNECTION_STRING_RE = /(?:postgresql|postgres|mysql|mongodb(?:\+srv)?|redis|amqps?|smtps?):\/\/[^@\s]+@/;
70
+
71
+ // sanitizePrivateKeyContent
72
+ const PRIVATE_KEY_RE = /-----BEGIN (?:[A-Z]+ )?PRIVATE KEY-----/;
73
+
74
+ // sanitizeBearerTokens
75
+ const BEARER_TOKEN_RE = /Authorization:\s*Bearer\s+[A-Za-z0-9\-._~+/]{20,}/i;
76
+
77
+ // warnDestructiveSql / warnSchemaAlteration
78
+ const SQL_TOOL_RE = /\b(?:psql|mysql|sqlite3|pgcli|clickhouse-client)\b/;
79
+ const DESTRUCTIVE_SQL_RE = /\b(?:DROP\s+(?:TABLE|DATABASE|SCHEMA)|TRUNCATE\b)/i;
80
+ const DELETE_NO_WHERE_RE = /\bDELETE\s+FROM\b/i;
81
+ const SQL_WHERE_RE = /\bWHERE\b/i;
82
+ const SCHEMA_ALTER_RE = /\bALTER\s+TABLE\b[\s\S]*\b(?:DROP\s+COLUMN|ADD\s+COLUMN|RENAME\s+(?:COLUMN|TO)|MODIFY\s+COLUMN)\b/i;
83
+
84
+ // warnPackagePublish
85
+ const PUBLISH_CMD_RE = /(?:npm\s+publish|bun\s+publish|pnpm\s+publish|yarn\s+npm\s+publish|twine\s+upload|poetry\s+publish|cargo\s+publish|gem\s+push)\b/;
86
+
87
+ // protectEnvVars
88
+ const ENV_PRINTENV_RE = /(?:^|\s|;|&&|\|\|)(?:env|printenv)(?:\s|$|;|&&|\|)/;
89
+ const ECHO_ENV_RE = /echo\s+.*\$[A-Za-z_]/;
90
+ const EXPORT_RE = /(?:^|\s|;|&&|\|\|)export\s+\w+/;
91
+ const PS_ENV_VAR_RE = /\$env:[A-Za-z_]/i;
92
+ const PS_CHILDITEM_ENV_RE = /(?:Get-ChildItem|dir|gci|ls)\s+Env:/i;
93
+ const DOTNET_GETENV_RE = /\[Environment\]::GetEnvironment/i;
94
+ const CMD_ECHO_ENV_RE = /echo\s+%[A-Za-z_]/i;
95
+
96
+ // blockEnvFiles
97
+ const ENV_FILE_PATH_RE = /(?:^|[\\/])\.env(?:\.|$)/;
98
+ const ENV_CMD_RE = /\.env(?:\b|\s|$|\.)/;
99
+
100
+ // blockSudo
101
+ const SUDO_RE = /(?:^|;|&&|\|\|)\s*sudo\s/;
102
+ const PS_ELEVATION_RE = /Start-Process\s+.*-Verb\s+RunAs/i;
103
+ const RUNAS_RE = /(?:^|;|&&|\|\|)\s*runas\s/i;
104
+
105
+ // blockCurlPipeSh
106
+ const CURL_PIPE_SH_RE = /(?:curl|wget)\s.*\|\s*(?:sh|bash|zsh)/;
107
+ const PS_WEB_PIPE_RE = /(?:Invoke-WebRequest|iwr|Invoke-RestMethod|irm)\s+.*\|\s*(?:Invoke-Expression|iex)/i;
108
+
109
+ // blockForcePush
110
+ const FORCE_PUSH_RE = /(?:--force|-f\b)/;
111
+
112
+ // blockSecretsWrite
113
+ const SECRET_FILE_RE = /\.(?:pem|key)$/;
114
+ const SECRET_FILE_ID_RSA_RE = /id_rsa/;
115
+ const SECRET_FILE_CREDENTIALS_RE = /credentials/;
116
+
117
+ // blockWorkOnMain
118
+ const GIT_COMMIT_MERGE_RE = /git\s+(?:commit|merge|rebase|cherry-pick)\b/;
119
+
120
+ // blockFailproofaiCommands
121
+ const FAILPROOFAI_CLI_RE = /(?:^|;|&&|\|\||\|)\s*failproofai(?:\s|$)/;
122
+ const FAILPROOFAI_UNINSTALL_RE = /(?:npm\s+(?:uninstall|remove|un|r)\s.*failproofai|bun\s+remove\s.*failproofai|yarn\s+global\s+remove\s+failproofai|pnpm\s+(?:remove|uninstall|un)\s.*failproofai)/;
123
+
124
+ // warnGitAmend
125
+ const GIT_AMEND_RE = /\bgit\s+commit\b.*--amend\b/;
126
+
127
+ // warnGitStashDrop
128
+ const GIT_STASH_DROP_RE = /\bgit\s+stash\s+(?:drop|clear)\b/;
129
+
130
+ // warnAllFilesStaged
131
+ const GIT_ADD_ALL_RE = /\bgit\s+add\s+(?:-A\b|--all\b|\.(?:\s|$|;|&&|\|\|))/;
132
+
133
+ // warnGlobalPackageInstall
134
+ const NPM_GLOBAL_RE = /\bnpm\s+(?:install|i)\b(?=.*(?:\s-g\b|--global\b))/;
135
+ const YARN_GLOBAL_RE = /\byarn\s+global\s+add\b/;
136
+ const PNPM_GLOBAL_RE = /\bpnpm\s+(?:add|install|i)\b(?=.*(?:\s-g\b|--global\b))/;
137
+ const BUN_GLOBAL_RE = /\bbun\s+(?:install|add)\b(?=.*(?:\s-g\b|--global\b))/;
138
+ const CARGO_INSTALL_RE = /\bcargo\s+install\b/;
139
+ const PIP_SYSTEM_RE = /\bpip(?:3)?\s+install\b(?=.*(?:--user\b|--break-system-packages\b))/;
140
+
141
+ // warnBackgroundProcess
142
+ const NOHUP_RE = /\bnohup\s+\S/;
143
+ const SCREEN_DETACH_RE = /\bscreen\s+-[A-Za-z]*d[A-Za-z]*\b/;
144
+ const TMUX_DETACH_RE = /\btmux\s+(?:new-session|new)\b[^|&;]*-d\b/;
145
+ const DISOWN_RE = /\bdisown\b/;
146
+ const BACKGROUND_AMPERSAND_RE = /(?<![&|])\s?&\s*(?:$|#|;)/;
147
+
148
+ // blockWorkOnMain: caches the current branch per cwd to avoid repeated execSync calls.
149
+ // Trade-off: if the user switches branches externally mid-session, the cache serves
150
+ // the stale value until the process restarts. This is acceptable since branch switches
151
+ // during an active Claude session are rare.
152
+ const gitBranchCache = new Map<string, string>();
153
+
154
+ /**
155
+ * Check if a command matches an allow pattern using token-by-token comparison.
156
+ * The "*" token is a wildcard. Extra command tokens beyond the pattern are allowed,
157
+ * UNLESS any token is a standalone shell operator (&&, ||, |, ;) OR contains an
158
+ * embedded shell metacharacter — both cases are rejected to prevent bypass via
159
+ * appended sub-commands or glued operators (e.g. "nginx;" or "nginx;evil").
160
+ */
161
+ function matchesAllowedPattern(cmd: string, pattern: string): boolean {
162
+ const cmdTokens = parseArgvTokens(cmd);
163
+ const patTokens = parseArgvTokens(pattern);
164
+ if (cmdTokens.length < patTokens.length) return false;
165
+ // Reject commands containing standalone shell-operator tokens
166
+ if (cmdTokens.some((tok) => SHELL_OPERATORS.has(tok))) return false;
167
+ // Reject any token containing embedded shell metacharacters
168
+ if (cmdTokens.some((tok) => SHELL_METACHAR_RE.test(tok))) return false;
169
+ return patTokens.every((tok, i) => tok === "*" || tok === cmdTokens[i]);
170
+ }
171
+
172
+ // -- Policy implementations --
173
+
174
+ function sanitizeJwt(ctx: PolicyContext): PolicyResult {
175
+ // PostToolUse: scrub JWT patterns from tool output
176
+ const output = JSON.stringify(ctx.payload);
177
+ if (JWT_RE.test(output)) {
178
+ return {
179
+ decision: "deny",
180
+ reason: "JWT token detected in tool output",
181
+ message: "[REDACTED: JWT token removed by failproofai]",
182
+ };
183
+ }
184
+ return allow();
185
+ }
186
+
187
+ function sanitizeApiKeys(ctx: PolicyContext): PolicyResult {
188
+ // PostToolUse: scrub common API key patterns from tool output
189
+ const output = JSON.stringify(ctx.payload);
190
+ for (const [pattern, label] of API_KEY_PATTERNS) {
191
+ if (pattern.test(output)) {
192
+ return {
193
+ decision: "deny",
194
+ reason: `${label} detected in tool output`,
195
+ message: `[REDACTED: ${label} removed by failproofai]`,
196
+ };
197
+ }
198
+ }
199
+
200
+ // Check additional user-configured patterns
201
+ const additional = ((ctx.params?.additionalPatterns ?? []) as Array<{ regex: string; label: string }>);
202
+ for (const { regex, label } of additional) {
203
+ try {
204
+ if (new RegExp(regex).test(output)) {
205
+ return {
206
+ decision: "deny",
207
+ reason: `${label} detected in tool output`,
208
+ message: `[REDACTED: ${label} removed by failproofai]`,
209
+ };
210
+ }
211
+ } catch {
212
+ hookLogWarn(`additionalPatterns: invalid regex "${regex}", skipping`);
213
+ }
214
+ }
215
+
216
+ return allow();
217
+ }
218
+
219
+ function sanitizeConnectionStrings(ctx: PolicyContext): PolicyResult {
220
+ // PostToolUse: scrub database connection strings with embedded credentials
221
+ const output = JSON.stringify(ctx.payload);
222
+ if (CONNECTION_STRING_RE.test(output)) {
223
+ return {
224
+ decision: "deny",
225
+ reason: "Database connection string with credentials detected in tool output",
226
+ message: "[REDACTED: connection string removed by failproofai]",
227
+ };
228
+ }
229
+ return allow();
230
+ }
231
+
232
+ function sanitizePrivateKeyContent(ctx: PolicyContext): PolicyResult {
233
+ // PostToolUse: scrub PEM private key blocks from tool output
234
+ const output = JSON.stringify(ctx.payload);
235
+ if (PRIVATE_KEY_RE.test(output)) {
236
+ return {
237
+ decision: "deny",
238
+ reason: "Private key content detected in tool output",
239
+ message: "[REDACTED: private key content removed by failproofai]",
240
+ };
241
+ }
242
+ return allow();
243
+ }
244
+
245
+ function sanitizeBearerTokens(ctx: PolicyContext): PolicyResult {
246
+ // PostToolUse: scrub Authorization: Bearer tokens from tool output
247
+ const output = JSON.stringify(ctx.payload);
248
+ if (BEARER_TOKEN_RE.test(output)) {
249
+ return {
250
+ decision: "deny",
251
+ reason: "Bearer token detected in tool output",
252
+ message: "[REDACTED: Bearer token removed by failproofai]",
253
+ };
254
+ }
255
+ return allow();
256
+ }
257
+
258
+ function warnDestructiveSql(ctx: PolicyContext): PolicyResult {
259
+ if (ctx.toolName !== "Bash") return allow();
260
+ const cmd = getCommand(ctx);
261
+ if (!SQL_TOOL_RE.test(cmd)) return allow();
262
+
263
+ // DROP or TRUNCATE always warns
264
+ if (DESTRUCTIVE_SQL_RE.test(cmd)) {
265
+ return instruct(
266
+ "STOP: This command contains destructive SQL (DROP/TRUNCATE/DELETE). Confirm with the user before executing.",
267
+ );
268
+ }
269
+
270
+ // DELETE FROM without WHERE warns
271
+ if (DELETE_NO_WHERE_RE.test(cmd) && !SQL_WHERE_RE.test(cmd)) {
272
+ return instruct(
273
+ "STOP: This command contains destructive SQL (DROP/TRUNCATE/DELETE). Confirm with the user before executing.",
274
+ );
275
+ }
276
+
277
+ return allow();
278
+ }
279
+
280
+ function warnLargeFileWrite(ctx: PolicyContext): PolicyResult {
281
+ if (ctx.toolName !== "Write") return allow();
282
+ const content = ctx.toolInput?.content as string | undefined;
283
+ if (typeof content !== "string") return allow();
284
+ const thresholdKb = ((ctx.params?.thresholdKb ?? 1024) as number);
285
+ const thresholdBytes = thresholdKb * 1024;
286
+ if (content.length > thresholdBytes) {
287
+ return instruct(
288
+ `STOP: You are writing a file larger than ${thresholdKb}KB (${Math.round(content.length / 1024)}KB). This is unusually large. Confirm this is intentional before proceeding.`,
289
+ );
290
+ }
291
+ return allow();
292
+ }
293
+
294
+ function warnPackagePublish(ctx: PolicyContext): PolicyResult {
295
+ if (ctx.toolName !== "Bash") return allow();
296
+ const cmd = getCommand(ctx);
297
+ if (PUBLISH_CMD_RE.test(cmd)) {
298
+ return instruct(
299
+ "STOP: This command publishes a package to a public registry. Confirm with the user that this is intentional.",
300
+ );
301
+ }
302
+ return allow();
303
+ }
304
+
305
+ function protectEnvVars(ctx: PolicyContext): PolicyResult {
306
+ if (ctx.toolName !== "Bash") return allow();
307
+ const cmd = getCommand(ctx);
308
+ // Block: env, printenv, echo $VAR, export VAR=
309
+ if (ENV_PRINTENV_RE.test(cmd)) {
310
+ return deny("Command reads environment variables");
311
+ }
312
+ if (ECHO_ENV_RE.test(cmd)) {
313
+ return deny("Command echoes environment variable");
314
+ }
315
+ if (EXPORT_RE.test(cmd)) {
316
+ return deny("Command exports environment variable");
317
+ }
318
+ // PowerShell: $env:VAR
319
+ if (PS_ENV_VAR_RE.test(cmd)) {
320
+ return deny("Command reads environment variable via PowerShell");
321
+ }
322
+ // PowerShell: Get-ChildItem Env: / dir env: / gci env: / ls env:
323
+ if (PS_CHILDITEM_ENV_RE.test(cmd)) {
324
+ return deny("Command reads environment variables via PowerShell");
325
+ }
326
+ // PowerShell: [Environment]::GetEnvironmentVariable
327
+ if (DOTNET_GETENV_RE.test(cmd)) {
328
+ return deny("Command reads environment variable via .NET");
329
+ }
330
+ // cmd: echo %VAR%
331
+ if (CMD_ECHO_ENV_RE.test(cmd)) {
332
+ return deny("Command echoes environment variable via cmd");
333
+ }
334
+ return allow();
335
+ }
336
+
337
+ function blockEnvFiles(ctx: PolicyContext): PolicyResult {
338
+ const cmd = getCommand(ctx);
339
+ const filePath = getFilePath(ctx);
340
+
341
+ // Check file_path for Read/Write tools (match both / and \ path separators)
342
+ if (filePath && ENV_FILE_PATH_RE.test(filePath)) {
343
+ return deny("Access to .env file blocked");
344
+ }
345
+ // Check Bash commands referencing .env files
346
+ if (ctx.toolName === "Bash" && ENV_CMD_RE.test(cmd)) {
347
+ return deny("Command references .env file");
348
+ }
349
+ return allow();
350
+ }
351
+
352
+ function blockSudo(ctx: PolicyContext): PolicyResult {
353
+ if (ctx.toolName !== "Bash") return allow();
354
+ const cmd = getCommand(ctx).trimStart();
355
+ if (SUDO_RE.test(cmd) || cmd.startsWith("sudo ")) {
356
+ // Check allowPatterns — match against parsed tokens, not raw string
357
+ const allowPatterns = ((ctx.params?.allowPatterns ?? []) as string[]);
358
+ if (allowPatterns.some((p) => matchesAllowedPattern(cmd, p))) return allow();
359
+ return deny("sudo commands are blocked");
360
+ }
361
+ // PowerShell: Start-Process -Verb RunAs (elevation)
362
+ if (PS_ELEVATION_RE.test(cmd)) {
363
+ return deny("Elevated process launch is blocked");
364
+ }
365
+ // Windows: runas command
366
+ if (RUNAS_RE.test(cmd)) {
367
+ return deny("runas elevation is blocked");
368
+ }
369
+ return allow();
370
+ }
371
+
372
+ function blockCurlPipeSh(ctx: PolicyContext): PolicyResult {
373
+ if (ctx.toolName !== "Bash") return allow();
374
+ const cmd = getCommand(ctx);
375
+ if (CURL_PIPE_SH_RE.test(cmd)) {
376
+ return deny("Piping downloads to shell is blocked");
377
+ }
378
+ // PowerShell: iwr | iex, irm | iex, Invoke-WebRequest | Invoke-Expression
379
+ if (PS_WEB_PIPE_RE.test(cmd)) {
380
+ return deny("Piping downloads to Invoke-Expression is blocked");
381
+ }
382
+ return allow();
383
+ }
384
+
385
+ function extractGitPushArgs(cmd: string): string[] {
386
+ return cmd
387
+ .split(/&&|\|\||[|;\n]/)
388
+ .map((s) => s.trim())
389
+ .filter((s) => /^git\s+push\s/.test(s))
390
+ .map((s) => s.replace(/^git\s+push\s+/, ""));
391
+ }
392
+
393
+ function blockPushMaster(ctx: PolicyContext): PolicyResult {
394
+ if (ctx.toolName !== "Bash") return allow();
395
+ const protectedBranches = ((ctx.params?.protectedBranches ?? ["main", "master"]) as string[]);
396
+ if (protectedBranches.length === 0) return allow();
397
+ const args = extractGitPushArgs(getCommand(ctx));
398
+ const branchPattern = new RegExp(`\\b(?:${protectedBranches.map((b) => b.replace(/[.*+?^${}()|[\]\\]/g, "\\$&")).join("|")})\\b`);
399
+ if (args.some((a) => branchPattern.test(a))) {
400
+ return deny(`Pushing to ${protectedBranches.join("/")} is blocked`);
401
+ }
402
+ return allow();
403
+ }
404
+
405
+ /**
406
+ * Check whether all *recursive* rm path targets in a command are under an allowlisted path.
407
+ * Splits on shell operators first so that `/tmp` appearing in an unrelated
408
+ * sub-command (e.g. `echo /tmp && rm -rf /`) does not trigger a false allow.
409
+ * Uses path-boundary comparison so `/tmp` does not cover `/tmp2`.
410
+ * Non-recursive rm segments (no -r/-R flag) are skipped — they pose no catastrophic risk.
411
+ * Quoted paths with spaces are handled via a segment-level regex fallback.
412
+ */
413
+ function rmTargetIsAllowed(cmd: string, allowPaths: string[]): boolean {
414
+ if (allowPaths.length === 0) return false;
415
+ const segments = cmd
416
+ .split(/&&|\|\||[|;\n]/)
417
+ .map((s) => s.trim())
418
+ .filter((s) => /\brm\b/.test(s));
419
+ if (segments.length === 0) return false;
420
+ for (const seg of segments) {
421
+ const tokens = parseArgvTokens(seg);
422
+ const rmIdx = tokens.findIndex((t) => t === "rm");
423
+ if (rmIdx < 0) continue;
424
+ // Only validate recursive rm segments — non-recursive rm has no catastrophic-deletion risk
425
+ const flagTokens = tokens.slice(rmIdx + 1).filter((t) => /^-[^-]/.test(t));
426
+ if (!/r/i.test(flagTokens.join(""))) continue;
427
+ const pathArgs = tokens.slice(rmIdx + 1).filter((t) => !t.startsWith("-"));
428
+ for (const target of pathArgs) {
429
+ const normalized = target.replace(/\/\*$/, "").replace(/\/+$/, "") || "/";
430
+ const covered = allowPaths.some((p) => {
431
+ const np = p.replace(/\/+$/, "") || "/";
432
+ return normalized === np || normalized.startsWith(np + "/");
433
+ });
434
+ if (!covered) {
435
+ // Fallback: check the raw segment for quoted paths that contain spaces
436
+ // (parseArgvTokens splits on whitespace, so "/tmp/my dir" becomes two tokens)
437
+ const segCovered = allowPaths.some((p) => {
438
+ const escaped = p.replace(/[.*+?^${}()|[\]\\]/g, "\\$&");
439
+ return new RegExp(`${escaped}(?:[/"'\\s/*]|$)`).test(seg);
440
+ });
441
+ if (!segCovered) return false;
442
+ }
443
+ }
444
+ }
445
+ return true;
446
+ }
447
+
448
+ function blockRmRf(ctx: PolicyContext): PolicyResult {
449
+ if (ctx.toolName !== "Bash") return allow();
450
+ const cmd = getCommand(ctx);
451
+ const hasDestructivePath = /(?:\/\s*$|\/\*|~)/.test(cmd);
452
+
453
+ // Combined flags in one token: rm -rf /, rm -fr /
454
+ if (hasDestructivePath && (
455
+ /rm\s+-[^\s]*r[^\s]*f[^\s]*/.test(cmd) ||
456
+ /rm\s+-[^\s]*f[^\s]*r[^\s]*/.test(cmd)
457
+ )) {
458
+ const allowPaths = ((ctx.params?.allowPaths ?? []) as string[]);
459
+ if (rmTargetIsAllowed(cmd, allowPaths)) return allow();
460
+ return deny("Catastrophic deletion blocked");
461
+ }
462
+
463
+ // Separated flags: rm -r -f /, rm -f -r /, rm -r -v -f /, etc.
464
+ if (hasDestructivePath && /\brm\b/.test(cmd)) {
465
+ const tokens = parseArgvTokens(cmd);
466
+ const shortFlags = tokens.filter((t) => /^-[^-]/.test(t)).join("");
467
+ if (/r/i.test(shortFlags) && /f/.test(shortFlags)) {
468
+ const allowPaths = ((ctx.params?.allowPaths ?? []) as string[]);
469
+ if (rmTargetIsAllowed(cmd, allowPaths)) return allow();
470
+ return deny("Catastrophic deletion blocked");
471
+ }
472
+ }
473
+ // PowerShell: Remove-Item -Recurse -Force on root/drive
474
+ if (/Remove-Item\s+.*-Recurse.*-Force.*(?:[A-Z]:\\(?:\s|$)|\\\*)/i.test(cmd)) {
475
+ return deny("Catastrophic deletion blocked");
476
+ }
477
+ // cmd: rd /s /q or rmdir /s /q on drive root
478
+ if (/(?:rd|rmdir)\s+\/s\s+\/q\s+[A-Z]:\\/i.test(cmd)) {
479
+ return deny("Catastrophic deletion blocked");
480
+ }
481
+ return allow();
482
+ }
483
+
484
+ function blockForcePush(ctx: PolicyContext): PolicyResult {
485
+ if (ctx.toolName !== "Bash") return allow();
486
+ const args = extractGitPushArgs(getCommand(ctx));
487
+ if (args.some((a) => FORCE_PUSH_RE.test(a))) {
488
+ return deny("Force-pushing is blocked");
489
+ }
490
+ return allow();
491
+ }
492
+
493
+ function blockSecretsWrite(ctx: PolicyContext): PolicyResult {
494
+ if (ctx.toolName !== "Write") return allow();
495
+ const filePath = getFilePath(ctx);
496
+ if (SECRET_FILE_RE.test(filePath) || SECRET_FILE_ID_RSA_RE.test(filePath) || SECRET_FILE_CREDENTIALS_RE.test(filePath)) {
497
+ return deny("Writing secret key files is blocked");
498
+ }
499
+ const additionalPatterns = ((ctx.params?.additionalPatterns ?? []) as string[]);
500
+ for (const pattern of additionalPatterns) {
501
+ if (filePath.includes(pattern)) {
502
+ return deny(`Writing blocked file pattern: ${pattern}`);
503
+ }
504
+ }
505
+ return allow();
506
+ }
507
+
508
+ /** Read-like commands that access file system contents. */
509
+ const READ_LIKE_CMDS =
510
+ /(?:^|;|&&|\|\||\|)\s*(?:ls|find|cat|head|tail|less|more|wc|file|stat|tree|du)\s/;
511
+
512
+ /**
513
+ * Extract absolute paths from a Bash command string.
514
+ * Scans quoted strings only in the first pipeline segment (before the first
515
+ * bare pipe) and only when the quoted content has no glob or regex metacharacters.
516
+ * This catches `cat "/etc/passwd"` while avoiding false positives from grep
517
+ * patterns and find glob patterns that appear in later pipeline stages.
518
+ * Unquoted absolute paths are extracted from the whole command as before.
519
+ */
520
+ function extractAbsolutePaths(command: string): string[] {
521
+ const paths: string[] = [];
522
+ const pathRe = /(?<![a-zA-Z0-9_.\-~\\])(?:~\/[^\s;|&"'()\[\]{}]*|~(?=\s|$|[;|&"'()\[\]{}])|\/[^\s;|&"'()\[\]{}]*)/g;
523
+
524
+ function addPaths(s: string): void {
525
+ pathRe.lastIndex = 0;
526
+ let m: RegExpExecArray | null;
527
+ while ((m = pathRe.exec(s)) !== null) {
528
+ let p = m[0];
529
+ if (p === "~") p = homedir();
530
+ else if (p.startsWith("~/")) p = join(homedir(), p.slice(2));
531
+ paths.push(p);
532
+ }
533
+ }
534
+
535
+ // Find the index of the first bare pipe (not inside quotes) to limit quoted extraction.
536
+ let firstBarePipe = command.length;
537
+ let inDouble = false, inSingle = false;
538
+ for (let i = 0; i < command.length; i++) {
539
+ const c = command[i];
540
+ if (c === '"' && !inSingle) inDouble = !inDouble;
541
+ else if (c === "'" && !inDouble) inSingle = !inSingle;
542
+ else if (c === "|" && !inDouble && !inSingle) { firstBarePipe = i; break; }
543
+ }
544
+
545
+ // Extract paths from quoted strings in the FIRST pipeline segment only,
546
+ // and only when the content has no glob/regex metacharacters.
547
+ const firstSegment = command.slice(0, firstBarePipe);
548
+ const quotedRe = /"([^"]*)"|'([^']*)'/g;
549
+ let qm: RegExpExecArray | null;
550
+ while ((qm = quotedRe.exec(firstSegment)) !== null) {
551
+ const content = qm[1] ?? qm[2] ?? "";
552
+ // Skip patterns that contain glob or common regex metacharacters
553
+ if (/[*?\[\]^$+()\\]/.test(content)) continue;
554
+ addPaths(content);
555
+ }
556
+
557
+ // Extract from unquoted portions of the whole command (existing behaviour).
558
+ const stripped = command
559
+ .replace(/"[^"]*"/g, (m) => " ".repeat(m.length))
560
+ .replace(/'[^']*'/g, (m) => " ".repeat(m.length));
561
+ addPaths(stripped);
562
+
563
+ return paths;
564
+ }
565
+
566
+ function blockReadOutsideCwd(ctx: PolicyContext): PolicyResult {
567
+ const cwd = ctx.session?.cwd;
568
+ if (!cwd) return allow(); // Can't enforce without cwd
569
+
570
+ const allowPaths = ((ctx.params?.allowPaths ?? []) as string[]);
571
+
572
+ // For Bash tool: check read-like commands for absolute paths outside cwd
573
+ if (ctx.toolName === "Bash") {
574
+ const cmd = getCommand(ctx);
575
+ if (!READ_LIKE_CMDS.test(cmd)) return allow();
576
+
577
+ const paths = extractAbsolutePaths(cmd);
578
+ const cwdWithSep = cwd.endsWith("/") ? cwd : cwd + "/";
579
+ for (const p of paths) {
580
+ const resolved = resolve(cwd, p);
581
+ if (isClaudeSettingsFile(resolved)) {
582
+ return deny(`Reading Claude settings file blocked: ${resolved}`);
583
+ }
584
+ if (isClaudeInternalPath(resolved)) continue; // Whitelist ~/.claude/
585
+ if (resolved === "/dev/null") continue; // Harmless special file
586
+ if (resolved !== cwd && !resolved.startsWith(cwdWithSep)) {
587
+ if (allowPaths.some((ap) => resolved === ap || resolved.startsWith(ap.endsWith("/") ? ap : ap + "/"))) continue;
588
+ return deny(`Bash read outside project directory blocked: ${resolved}`);
589
+ }
590
+ }
591
+ return allow();
592
+ }
593
+
594
+ // For Read/Glob/Grep: existing file_path / path check
595
+ const filePath = getFilePath(ctx);
596
+ const searchPath = (ctx.toolInput?.path as string) ?? "";
597
+
598
+ const target = filePath || searchPath;
599
+ if (!target) return allow();
600
+
601
+ const resolved = resolve(cwd, target);
602
+
603
+ // Block settings files in any .claude directory before whitelisting
604
+ if (isClaudeSettingsFile(resolved)) {
605
+ return deny(`Reading Claude settings file blocked: ${resolved}`);
606
+ }
607
+
608
+ // Whitelist ~/.claude/ — Claude Code's own config, plans, memory, and settings
609
+ if (isClaudeInternalPath(resolved)) return allow();
610
+
611
+ // Whitelist /dev/null — harmless special file commonly used in shell commands
612
+ if (resolved === "/dev/null") return allow();
613
+
614
+ const cwdWithSep = cwd.endsWith("/") ? cwd : cwd + "/";
615
+ if (resolved !== cwd && !resolved.startsWith(cwdWithSep)) {
616
+ if (allowPaths.some((ap) => resolved === ap || resolved.startsWith(ap.endsWith("/") ? ap : ap + "/"))) return allow();
617
+ return deny(`Access outside project directory blocked: ${resolved}`);
618
+ }
619
+ return allow();
620
+ }
621
+
622
+ function blockWorkOnMain(ctx: PolicyContext): PolicyResult {
623
+ if (ctx.toolName !== "Bash") return allow();
624
+ const cmd = getCommand(ctx);
625
+ if (!GIT_COMMIT_MERGE_RE.test(cmd)) return allow();
626
+
627
+ const cwd = ctx.session?.cwd;
628
+ if (!cwd) return allow();
629
+
630
+ try {
631
+ let branch = gitBranchCache.get(cwd);
632
+ if (branch === undefined) {
633
+ branch = execSync("git rev-parse --abbrev-ref HEAD", {
634
+ cwd,
635
+ encoding: "utf8",
636
+ timeout: 3000,
637
+ }).trim();
638
+ gitBranchCache.set(cwd, branch);
639
+ }
640
+ const protectedBranches = ((ctx.params?.protectedBranches ?? ["main", "master"]) as string[]);
641
+ if (protectedBranches.includes(branch)) {
642
+ return deny(
643
+ `Git ${cmd.match(/git\s+(\S+)/)?.[1] ?? "operation"} on ${branch} is blocked. Create a feature branch first.`,
644
+ );
645
+ }
646
+ } catch {
647
+ return allow();
648
+ }
649
+ return allow();
650
+ }
651
+
652
+ function blockFailproofaiCommands(ctx: PolicyContext): PolicyResult {
653
+ if (ctx.toolName !== "Bash") return allow();
654
+ const cmd = getCommand(ctx);
655
+
656
+ // Block direct failproofai CLI invocations
657
+ if (FAILPROOFAI_CLI_RE.test(cmd)) {
658
+ return deny("Running failproofai CLI commands is blocked");
659
+ }
660
+
661
+ // Block package-manager uninstallation of failproofai
662
+ if (FAILPROOFAI_UNINSTALL_RE.test(cmd)) {
663
+ return deny("Uninstalling failproofai is blocked");
664
+ }
665
+
666
+ return allow();
667
+ }
668
+
669
+ // Maximum size of the per-session tool-call sidecar before we stop updating it.
670
+ // If exceeded, repeated-call detection degrades gracefully (allows through) rather
671
+ // than growing the file unboundedly.
672
+ const TOOL_CALL_TRACKER_MAX_BYTES = 65_536; // 64 KB
673
+
674
+ async function warnRepeatedToolCalls(ctx: PolicyContext): Promise<PolicyResult> {
675
+ const THRESHOLD = 3;
676
+ const transcriptPath = ctx.session?.transcriptPath;
677
+ if (!transcriptPath || !ctx.toolName || !ctx.toolInput) return allow();
678
+
679
+ // Sidecar file tracks { fingerprint: count } — O(1) per call vs O(transcript) per call.
680
+ const trackerPath = `${transcriptPath}.tool-calls.json`;
681
+ const fingerprint = JSON.stringify({ tool: ctx.toolName, input: ctx.toolInput });
682
+
683
+ let counts: Record<string, number> = {};
684
+ try {
685
+ const raw = await readFile(trackerPath, "utf8");
686
+ counts = JSON.parse(raw) as Record<string, number>;
687
+ } catch { /* first call or unreadable — start fresh */ }
688
+
689
+ const prevCount = counts[fingerprint] ?? 0;
690
+ if (prevCount >= THRESHOLD) {
691
+ return instruct(
692
+ `STOP: You have already called ${ctx.toolName} ${prevCount} times with identical parameters. This is wasteful and unproductive. Do NOT repeat this call — use a different approach or ask the user for clarification.`,
693
+ );
694
+ }
695
+
696
+ counts[fingerprint] = prevCount + 1;
697
+ try {
698
+ const serialized = JSON.stringify(counts);
699
+ if (serialized.length <= TOOL_CALL_TRACKER_MAX_BYTES) {
700
+ await writeFile(trackerPath, serialized, "utf8");
701
+ }
702
+ } catch { /* non-fatal */ }
703
+
704
+ return allow();
705
+ }
706
+
707
+ function warnGitAmend(ctx: PolicyContext): PolicyResult {
708
+ if (ctx.toolName !== "Bash") return allow();
709
+ const cmd = getCommand(ctx);
710
+ if (GIT_AMEND_RE.test(cmd)) {
711
+ return instruct(
712
+ "STOP: This command amends the last commit, which rewrites git history. If this commit has already been pushed to a shared branch, this will cause divergence for other contributors. Confirm with the user before executing.",
713
+ );
714
+ }
715
+ return allow();
716
+ }
717
+
718
+ function warnGitStashDrop(ctx: PolicyContext): PolicyResult {
719
+ if (ctx.toolName !== "Bash") return allow();
720
+ const cmd = getCommand(ctx);
721
+ if (GIT_STASH_DROP_RE.test(cmd)) {
722
+ return instruct(
723
+ "STOP: This command permanently deletes stashed changes (git stash drop/clear). Stash entries cannot be recovered after deletion. Confirm with the user before executing.",
724
+ );
725
+ }
726
+ return allow();
727
+ }
728
+
729
+ function warnAllFilesStaged(ctx: PolicyContext): PolicyResult {
730
+ if (ctx.toolName !== "Bash") return allow();
731
+ const cmd = getCommand(ctx);
732
+ if (GIT_ADD_ALL_RE.test(cmd)) {
733
+ return instruct(
734
+ "STOP: This command stages all files in the working tree (git add -A / --all / .). This may inadvertently include build artifacts, generated files, or sensitive files not covered by .gitignore. Confirm with the user before executing.",
735
+ );
736
+ }
737
+ return allow();
738
+ }
739
+
740
+ function warnSchemaAlteration(ctx: PolicyContext): PolicyResult {
741
+ if (ctx.toolName !== "Bash") return allow();
742
+ const cmd = getCommand(ctx);
743
+ if (!SQL_TOOL_RE.test(cmd)) return allow();
744
+ if (SCHEMA_ALTER_RE.test(cmd)) {
745
+ return instruct(
746
+ "STOP: This command contains a schema-altering SQL statement (ALTER TABLE with column or rename operation). Schema changes on production databases are irreversible or disruptive. Confirm with the user before executing.",
747
+ );
748
+ }
749
+ return allow();
750
+ }
751
+
752
+ function warnGlobalPackageInstall(ctx: PolicyContext): PolicyResult {
753
+ if (ctx.toolName !== "Bash") return allow();
754
+ const cmd = getCommand(ctx);
755
+ const isGlobal =
756
+ NPM_GLOBAL_RE.test(cmd) ||
757
+ YARN_GLOBAL_RE.test(cmd) ||
758
+ PNPM_GLOBAL_RE.test(cmd) ||
759
+ BUN_GLOBAL_RE.test(cmd) ||
760
+ CARGO_INSTALL_RE.test(cmd) ||
761
+ // Bare 'pip install' respects the active venv when one is present;
762
+ // only flag explicit system-level flags (--user, --break-system-packages).
763
+ PIP_SYSTEM_RE.test(cmd);
764
+ if (isGlobal) {
765
+ return instruct(
766
+ "STOP: This command installs a package globally, which modifies the system-wide environment outside the project. This can conflict with other projects or system tools. Confirm with the user before executing.",
767
+ );
768
+ }
769
+ return allow();
770
+ }
771
+
772
+ function warnBackgroundProcess(ctx: PolicyContext): PolicyResult {
773
+ if (ctx.toolName !== "Bash") return allow();
774
+ const cmd = getCommand(ctx);
775
+ const isBackground =
776
+ NOHUP_RE.test(cmd) ||
777
+ SCREEN_DETACH_RE.test(cmd) ||
778
+ TMUX_DETACH_RE.test(cmd) ||
779
+ DISOWN_RE.test(cmd) ||
780
+ BACKGROUND_AMPERSAND_RE.test(cmd);
781
+ if (isBackground) {
782
+ return instruct(
783
+ "STOP: This command starts a background or detached process (nohup, screen -d, tmux -d, or trailing &). Background processes persist after Claude's session and may be difficult to track or stop. Confirm with the user before executing.",
784
+ );
785
+ }
786
+ return allow();
787
+ }
788
+
789
+ // -- Registry --
790
+
791
+ export const BUILTIN_POLICIES: BuiltinPolicyDefinition[] = [
792
+ {
793
+ name: "sanitize-jwt",
794
+ description: "Stop Claude from reading JWTs in tool responses",
795
+ fn: sanitizeJwt,
796
+ match: { events: ["PostToolUse"] },
797
+ defaultEnabled: true,
798
+ category: "Sanitize",
799
+ },
800
+ {
801
+ name: "sanitize-api-keys",
802
+ description: "Stop Claude from reading API keys (OpenAI, Anthropic, GitHub, AWS, Stripe, Google) in tool responses",
803
+ fn: sanitizeApiKeys,
804
+ match: { events: ["PostToolUse"] },
805
+ defaultEnabled: true,
806
+ category: "Sanitize",
807
+ params: {
808
+ additionalPatterns: {
809
+ type: "pattern[]",
810
+ description: "Additional API key patterns to scrub, each with { regex, label }",
811
+ default: [],
812
+ },
813
+ } satisfies PolicyParamsSchema,
814
+ },
815
+ {
816
+ name: "sanitize-connection-strings",
817
+ description: "Stop Claude from reading database connection strings with embedded credentials in tool responses",
818
+ fn: sanitizeConnectionStrings,
819
+ match: { events: ["PostToolUse"] },
820
+ defaultEnabled: true,
821
+ category: "Sanitize",
822
+ },
823
+ {
824
+ name: "sanitize-private-key-content",
825
+ description: "Stop Claude from reading PEM private key content in tool responses",
826
+ fn: sanitizePrivateKeyContent,
827
+ match: { events: ["PostToolUse"] },
828
+ defaultEnabled: true,
829
+ category: "Sanitize",
830
+ },
831
+ {
832
+ name: "sanitize-bearer-tokens",
833
+ description: "Stop Claude from reading Authorization Bearer tokens in tool responses",
834
+ fn: sanitizeBearerTokens,
835
+ match: { events: ["PostToolUse"] },
836
+ defaultEnabled: true,
837
+ category: "Sanitize",
838
+ },
839
+ {
840
+ name: "protect-env-vars",
841
+ description: "Prevent commands that read environment variables",
842
+ fn: protectEnvVars,
843
+ match: { events: ["PreToolUse"], toolNames: ["Bash"] },
844
+ defaultEnabled: true,
845
+ category: "Environment",
846
+ },
847
+ {
848
+ name: "block-env-files",
849
+ description: "Block reading/writing .env files",
850
+ fn: blockEnvFiles,
851
+ match: { events: ["PreToolUse"] },
852
+ defaultEnabled: true,
853
+ category: "Environment",
854
+ },
855
+ {
856
+ name: "block-read-outside-cwd",
857
+ description: "Block file reads outside the session working directory",
858
+ fn: blockReadOutsideCwd,
859
+ match: { events: ["PreToolUse"], toolNames: ["Read", "Glob", "Grep", "Bash"] },
860
+ defaultEnabled: false,
861
+ category: "Environment",
862
+ params: {
863
+ allowPaths: {
864
+ type: "string[]",
865
+ description: "Absolute paths outside cwd that are allowed to be read",
866
+ default: [],
867
+ },
868
+ } satisfies PolicyParamsSchema,
869
+ },
870
+ {
871
+ name: "block-sudo",
872
+ description: "Block sudo commands",
873
+ fn: blockSudo,
874
+ match: { events: ["PreToolUse"], toolNames: ["Bash"] },
875
+ defaultEnabled: true,
876
+ category: "Dangerous Commands",
877
+ params: {
878
+ allowPatterns: {
879
+ type: "string[]",
880
+ description: "Sudo command patterns to allow, matched token-by-token (e.g. 'sudo systemctl status')",
881
+ default: [],
882
+ },
883
+ } satisfies PolicyParamsSchema,
884
+ },
885
+ {
886
+ name: "block-curl-pipe-sh",
887
+ description: "Block piping downloads to shell",
888
+ fn: blockCurlPipeSh,
889
+ match: { events: ["PreToolUse"], toolNames: ["Bash"] },
890
+ defaultEnabled: true,
891
+ category: "Dangerous Commands",
892
+ },
893
+ {
894
+ name: "block-rm-rf",
895
+ description: "Prevent catastrophic deletions",
896
+ fn: blockRmRf,
897
+ match: { events: ["PreToolUse"], toolNames: ["Bash"] },
898
+ defaultEnabled: false,
899
+ category: "Dangerous Commands",
900
+ params: {
901
+ allowPaths: {
902
+ type: "string[]",
903
+ description: "Paths that are allowed to be recursively deleted",
904
+ default: [],
905
+ },
906
+ } satisfies PolicyParamsSchema,
907
+ },
908
+ {
909
+ name: "block-failproofai-commands",
910
+ description: "Block failproofai CLI commands and uninstallation",
911
+ fn: blockFailproofaiCommands,
912
+ match: { events: ["PreToolUse"], toolNames: ["Bash"] },
913
+ defaultEnabled: true,
914
+ category: "Dangerous Commands",
915
+ },
916
+ {
917
+ name: "block-secrets-write",
918
+ description: "Block writing secret key files",
919
+ fn: blockSecretsWrite,
920
+ match: { events: ["PreToolUse"], toolNames: ["Write"] },
921
+ defaultEnabled: false,
922
+ category: "Dangerous Commands",
923
+ params: {
924
+ additionalPatterns: {
925
+ type: "string[]",
926
+ description: "Additional filename patterns (substrings) to block",
927
+ default: [],
928
+ },
929
+ } satisfies PolicyParamsSchema,
930
+ },
931
+ {
932
+ name: "block-push-master",
933
+ description: "Block pushing to main/master",
934
+ fn: blockPushMaster,
935
+ match: { events: ["PreToolUse"], toolNames: ["Bash"] },
936
+ defaultEnabled: true,
937
+ category: "Git",
938
+ params: {
939
+ protectedBranches: {
940
+ type: "string[]",
941
+ description: "Branch names to protect from direct pushes",
942
+ default: ["main", "master"],
943
+ },
944
+ } satisfies PolicyParamsSchema,
945
+ },
946
+ {
947
+ name: "block-force-push",
948
+ description: "Prevent force-pushing to any branch",
949
+ fn: blockForcePush,
950
+ match: { events: ["PreToolUse"], toolNames: ["Bash"] },
951
+ defaultEnabled: false,
952
+ category: "Git",
953
+ },
954
+ {
955
+ name: "block-work-on-main",
956
+ description: "Block git commits and merges on main/master branch",
957
+ fn: blockWorkOnMain,
958
+ match: { events: ["PreToolUse"], toolNames: ["Bash"] },
959
+ defaultEnabled: false,
960
+ category: "Git",
961
+ params: {
962
+ protectedBranches: {
963
+ type: "string[]",
964
+ description: "Branch names where commits/merges are blocked",
965
+ default: ["main", "master"],
966
+ },
967
+ } satisfies PolicyParamsSchema,
968
+ },
969
+ {
970
+ name: "warn-git-amend",
971
+ description: "Warns before amending git commits, which rewrites history",
972
+ fn: warnGitAmend,
973
+ match: { events: ["PreToolUse"], toolNames: ["Bash"] },
974
+ defaultEnabled: false,
975
+ category: "Git",
976
+ },
977
+ {
978
+ name: "warn-git-stash-drop",
979
+ description: "Warns before permanently deleting stashed changes",
980
+ fn: warnGitStashDrop,
981
+ match: { events: ["PreToolUse"], toolNames: ["Bash"] },
982
+ defaultEnabled: false,
983
+ category: "Git",
984
+ },
985
+ {
986
+ name: "warn-all-files-staged",
987
+ description: "Warns before staging all working tree files with git add -A / . / --all",
988
+ fn: warnAllFilesStaged,
989
+ match: { events: ["PreToolUse"], toolNames: ["Bash"] },
990
+ defaultEnabled: false,
991
+ category: "Git",
992
+ },
993
+ {
994
+ name: "warn-destructive-sql",
995
+ description: "Warn before executing destructive SQL (DROP/TRUNCATE/DELETE without WHERE) via database clients",
996
+ fn: warnDestructiveSql,
997
+ match: { events: ["PreToolUse"], toolNames: ["Bash"] },
998
+ defaultEnabled: false,
999
+ category: "Database",
1000
+ },
1001
+ {
1002
+ name: "warn-schema-alteration",
1003
+ description: "Warns before SQL schema changes (ALTER TABLE with column or rename operations)",
1004
+ fn: warnSchemaAlteration,
1005
+ match: { events: ["PreToolUse"], toolNames: ["Bash"] },
1006
+ defaultEnabled: false,
1007
+ category: "Database",
1008
+ },
1009
+ {
1010
+ name: "warn-package-publish",
1011
+ description: "Warn before publishing packages to public registries (npm, PyPI, crates.io, RubyGems, etc.)",
1012
+ fn: warnPackagePublish,
1013
+ match: { events: ["PreToolUse"], toolNames: ["Bash"] },
1014
+ defaultEnabled: false,
1015
+ category: "Packages & System",
1016
+ },
1017
+ {
1018
+ name: "warn-global-package-install",
1019
+ description: "Warns before installing packages globally (npm -g, cargo install, etc.)",
1020
+ fn: warnGlobalPackageInstall,
1021
+ match: { events: ["PreToolUse"], toolNames: ["Bash"] },
1022
+ defaultEnabled: false,
1023
+ category: "Packages & System",
1024
+ },
1025
+ {
1026
+ name: "warn-large-file-write",
1027
+ description: "Warn before writing files larger than 1MB (configurable via thresholdKb param)",
1028
+ fn: warnLargeFileWrite,
1029
+ match: { events: ["PreToolUse"], toolNames: ["Write"] },
1030
+ defaultEnabled: false,
1031
+ category: "Packages & System",
1032
+ params: {
1033
+ thresholdKb: {
1034
+ type: "number",
1035
+ description: "File size threshold in KB above which a warning is issued",
1036
+ default: 1024,
1037
+ },
1038
+ } satisfies PolicyParamsSchema,
1039
+ },
1040
+ {
1041
+ name: "warn-background-process",
1042
+ description: "Warns before starting detached or background processes",
1043
+ fn: warnBackgroundProcess,
1044
+ match: { events: ["PreToolUse"], toolNames: ["Bash"] },
1045
+ defaultEnabled: false,
1046
+ category: "Packages & System",
1047
+ },
1048
+ {
1049
+ name: "warn-repeated-tool-calls",
1050
+ description: "Warn when the same tool is called 3+ times with identical parameters",
1051
+ fn: warnRepeatedToolCalls,
1052
+ match: { events: ["PreToolUse"] },
1053
+ defaultEnabled: false,
1054
+ category: "AI Behavior",
1055
+ },
1056
+ ];
1057
+
1058
+ export function registerBuiltinPolicies(enabledNames: string[]): void {
1059
+ const enabledSet = new Set(enabledNames);
1060
+ for (const policy of BUILTIN_POLICIES) {
1061
+ if (enabledSet.has(policy.name)) {
1062
+ registerPolicy(policy.name, policy.description, policy.fn, policy.match);
1063
+ }
1064
+ }
1065
+ }
1066
+
1067
+ /** Clears the git branch cache. Exposed for test isolation only. */
1068
+ export function clearGitBranchCache(): void {
1069
+ gitBranchCache.clear();
1070
+ }