failproofai 1.0.12 → 1.0.13-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 (306) hide show
  1. package/.next/standalone/.next/BUILD_ID +1 -1
  2. package/.next/standalone/.next/build-manifest.json +13 -13
  3. package/.next/standalone/.next/prerender-manifest.json +4 -4
  4. package/.next/standalone/.next/required-server-files.json +1 -1
  5. package/.next/standalone/.next/server/app/_global-error/page/build-manifest.json +2 -2
  6. package/.next/standalone/.next/server/app/_global-error/page/server-reference-manifest.json +1 -1
  7. package/.next/standalone/.next/server/app/_global-error/page.js +2 -1
  8. package/.next/standalone/.next/server/app/_global-error/page.js.nft.json +1 -1
  9. package/.next/standalone/.next/server/app/_global-error/page_client-reference-manifest.js +1 -1
  10. package/.next/standalone/.next/server/app/_global-error.html +1 -1
  11. package/.next/standalone/.next/server/app/_global-error.rsc +2 -2
  12. package/.next/standalone/.next/server/app/_global-error.segments/__PAGE__.segment.rsc +2 -2
  13. package/.next/standalone/.next/server/app/_global-error.segments/_full.segment.rsc +2 -2
  14. package/.next/standalone/.next/server/app/_global-error.segments/_tree.segment.rsc +1 -1
  15. package/.next/standalone/.next/server/app/_not-found/page/build-manifest.json +2 -2
  16. package/.next/standalone/.next/server/app/_not-found/page/server-reference-manifest.json +1 -1
  17. package/.next/standalone/.next/server/app/_not-found/page.js +4 -3
  18. package/.next/standalone/.next/server/app/_not-found/page.js.nft.json +1 -1
  19. package/.next/standalone/.next/server/app/_not-found/page_client-reference-manifest.js +1 -1
  20. package/.next/standalone/.next/server/app/_not-found.html +1 -1
  21. package/.next/standalone/.next/server/app/_not-found.rsc +3 -3
  22. package/.next/standalone/.next/server/app/_not-found.segments/_full.segment.rsc +3 -3
  23. package/.next/standalone/.next/server/app/_not-found.segments/_not-found/__PAGE__.segment.rsc +2 -2
  24. package/.next/standalone/.next/server/app/_not-found.segments/_tree.segment.rsc +1 -1
  25. package/.next/standalone/.next/server/app/api/audit/invite/route.js +6 -5
  26. package/.next/standalone/.next/server/app/api/audit/invite/route.js.nft.json +1 -1
  27. package/.next/standalone/.next/server/app/api/audit/run/route.js +27 -26
  28. package/.next/standalone/.next/server/app/api/audit/run/route.js.nft.json +1 -1
  29. package/.next/standalone/.next/server/app/api/audit/status/route.js +4 -3
  30. package/.next/standalone/.next/server/app/api/audit/status/route.js.nft.json +1 -1
  31. package/.next/standalone/.next/server/app/api/auth/login-request/route.js +6 -5
  32. package/.next/standalone/.next/server/app/api/auth/login-request/route.js.nft.json +1 -1
  33. package/.next/standalone/.next/server/app/api/auth/login-verify/route.js +6 -5
  34. package/.next/standalone/.next/server/app/api/auth/login-verify/route.js.nft.json +1 -1
  35. package/.next/standalone/.next/server/app/api/auth/logout/route.js +6 -5
  36. package/.next/standalone/.next/server/app/api/auth/logout/route.js.nft.json +1 -1
  37. package/.next/standalone/.next/server/app/api/auth/status/route.js +6 -5
  38. package/.next/standalone/.next/server/app/api/auth/status/route.js.nft.json +1 -1
  39. package/.next/standalone/.next/server/app/api/download/[project]/[session]/route.js +4 -3
  40. package/.next/standalone/.next/server/app/api/download/[project]/[session]/route.js.nft.json +1 -1
  41. package/.next/standalone/.next/server/app/audit/page/build-manifest.json +2 -2
  42. package/.next/standalone/.next/server/app/audit/page/server-reference-manifest.json +2 -2
  43. package/.next/standalone/.next/server/app/audit/page.js +7 -6
  44. package/.next/standalone/.next/server/app/audit/page.js.nft.json +1 -1
  45. package/.next/standalone/.next/server/app/audit/page_client-reference-manifest.js +1 -1
  46. package/.next/standalone/.next/server/app/index.html +1 -1
  47. package/.next/standalone/.next/server/app/index.rsc +3 -3
  48. package/.next/standalone/.next/server/app/index.segments/__PAGE__.segment.rsc +2 -2
  49. package/.next/standalone/.next/server/app/index.segments/_full.segment.rsc +3 -3
  50. package/.next/standalone/.next/server/app/index.segments/_tree.segment.rsc +1 -1
  51. package/.next/standalone/.next/server/app/page/build-manifest.json +2 -2
  52. package/.next/standalone/.next/server/app/page/server-reference-manifest.json +1 -1
  53. package/.next/standalone/.next/server/app/page.js +6 -5
  54. package/.next/standalone/.next/server/app/page.js.nft.json +1 -1
  55. package/.next/standalone/.next/server/app/page_client-reference-manifest.js +1 -1
  56. package/.next/standalone/.next/server/app/policies/page/build-manifest.json +2 -2
  57. package/.next/standalone/.next/server/app/policies/page/server-reference-manifest.json +14 -14
  58. package/.next/standalone/.next/server/app/policies/page.js +5 -4
  59. package/.next/standalone/.next/server/app/policies/page.js.nft.json +1 -1
  60. package/.next/standalone/.next/server/app/policies/page_client-reference-manifest.js +1 -1
  61. package/.next/standalone/.next/server/app/project/[name]/page/build-manifest.json +2 -2
  62. package/.next/standalone/.next/server/app/project/[name]/page/server-reference-manifest.json +1 -1
  63. package/.next/standalone/.next/server/app/project/[name]/page.js +21 -20
  64. package/.next/standalone/.next/server/app/project/[name]/page.js.nft.json +1 -1
  65. package/.next/standalone/.next/server/app/project/[name]/page_client-reference-manifest.js +1 -1
  66. package/.next/standalone/.next/server/app/project/[name]/session/[sessionId]/page/build-manifest.json +2 -2
  67. package/.next/standalone/.next/server/app/project/[name]/session/[sessionId]/page/react-loadable-manifest.json +2 -2
  68. package/.next/standalone/.next/server/app/project/[name]/session/[sessionId]/page/server-reference-manifest.json +2 -2
  69. package/.next/standalone/.next/server/app/project/[name]/session/[sessionId]/page.js +10 -9
  70. package/.next/standalone/.next/server/app/project/[name]/session/[sessionId]/page.js.nft.json +1 -1
  71. package/.next/standalone/.next/server/app/project/[name]/session/[sessionId]/page_client-reference-manifest.js +1 -1
  72. package/.next/standalone/.next/server/app/projects/page/build-manifest.json +2 -2
  73. package/.next/standalone/.next/server/app/projects/page/server-reference-manifest.json +1 -1
  74. package/.next/standalone/.next/server/app/projects/page.js +7 -6
  75. package/.next/standalone/.next/server/app/projects/page.js.nft.json +1 -1
  76. package/.next/standalone/.next/server/app/projects/page_client-reference-manifest.js +1 -1
  77. package/.next/standalone/.next/server/app/settings/page/build-manifest.json +2 -2
  78. package/.next/standalone/.next/server/app/settings/page/server-reference-manifest.json +8 -8
  79. package/.next/standalone/.next/server/app/settings/page.js +6 -5
  80. package/.next/standalone/.next/server/app/settings/page.js.nft.json +1 -1
  81. package/.next/standalone/.next/server/app/settings/page_client-reference-manifest.js +1 -1
  82. package/.next/standalone/.next/server/chunks/{[externals]__0vt9i6fqinjne._.js → [externals]__1h83uo-b1b6-2._.js} +1 -1
  83. package/.next/standalone/.next/server/chunks/[externals]__214wn4wh2x79y._.js +3 -0
  84. package/.next/standalone/.next/server/chunks/{[externals]__1rlxpymm37wel._.js → [root-of-the-server]__031qp1lkow_kc._.js} +2 -2
  85. package/.next/standalone/.next/server/chunks/[root-of-the-server]__038kwryp970nh._.js +3 -0
  86. package/.next/standalone/.next/server/chunks/{[root-of-the-server]__0_hsnj_a2mvl_._.js → [root-of-the-server]__03s1za0hn71yp._.js} +2 -2
  87. package/.next/standalone/.next/server/chunks/{[root-of-the-server]__0wg9dk8x8bnau._.js → [root-of-the-server]__07a0sa6fuw5_b._.js} +2 -2
  88. package/.next/standalone/.next/server/chunks/[root-of-the-server]__08atcie7jzswm._.js +3 -0
  89. package/.next/standalone/.next/server/chunks/[root-of-the-server]__08dchfudh2_4f._.js +1 -1
  90. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0car70pylmvor._.js +3 -0
  91. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0spt0kv8azrpl._.js +1 -1
  92. package/.next/standalone/.next/server/chunks/{[root-of-the-server]__12kq3x-h7t7i1._.js → [root-of-the-server]__0yvyp5b7jmlc4._.js} +2 -2
  93. package/.next/standalone/.next/server/chunks/{[root-of-the-server]__02vous7mpi2xm._.js → [root-of-the-server]__145vo_drnuvas._.js} +2 -2
  94. package/.next/standalone/.next/server/chunks/{[externals]__0h0p9dmv_e7r7._.js → [root-of-the-server]__1a2d0ewycsp6k._.js} +2 -2
  95. package/.next/standalone/.next/server/chunks/{[externals]__1_407huhlmj1m._.js → [root-of-the-server]__1am_1tz0o0aqz._.js} +2 -2
  96. package/.next/standalone/.next/server/chunks/{[root-of-the-server]__03i5o4a840guz._.js → [root-of-the-server]__1gxfzuvpyw30j._.js} +1 -1
  97. package/.next/standalone/.next/server/chunks/[root-of-the-server]__1j6kfp0vzu5rw._.js +3 -0
  98. package/.next/standalone/.next/server/chunks/[root-of-the-server]__1l0ayum_hqqsw._.js +3 -0
  99. package/.next/standalone/.next/server/chunks/[root-of-the-server]__1lh8c0mmhdrbj._.js +3 -0
  100. package/.next/standalone/.next/server/chunks/[root-of-the-server]__1o9rznwc0w7og._.js +3 -0
  101. package/.next/standalone/.next/server/chunks/{[root-of-the-server]__0f_4g-vazrvxv._.js → [root-of-the-server]__1o_622x0fglpr._.js} +1 -1
  102. package/.next/standalone/.next/server/chunks/[root-of-the-server]__1oclamblhzhrf._.js +68 -0
  103. package/.next/standalone/.next/server/chunks/[root-of-the-server]__1v1-l-83czzsr._.js +63 -0
  104. package/.next/standalone/.next/server/chunks/{[root-of-the-server]__1a5zkndjwlc13._.js → [root-of-the-server]__1wwi53kkqhnfi._.js} +1 -1
  105. package/.next/standalone/.next/server/chunks/{_1y590mjzpkbos._.js → _02sa8fcu9_9xo._.js} +2 -2
  106. package/.next/standalone/.next/server/chunks/_0tovk6q0miud6._.js +1 -1
  107. package/.next/standalone/.next/server/chunks/_0trp3ycqv17cl._.js +1 -1
  108. package/.next/standalone/.next/server/chunks/_1-2owkp-1_987._.js +1 -1
  109. package/.next/standalone/.next/server/chunks/_13ltj8a9z92o8._.js +1 -1
  110. package/.next/standalone/.next/server/chunks/_15k37au70vjvg._.js +1 -1
  111. package/.next/standalone/.next/server/chunks/_18rfu4__wjhwb._.js +1 -1
  112. package/.next/standalone/.next/server/chunks/_1ek68lnh2daur._.js +2 -2
  113. package/.next/standalone/.next/server/chunks/_1fz8m31sndkcu._.js +1 -1
  114. package/.next/standalone/.next/server/chunks/_1ogwigfb0163w._.js +1 -1
  115. package/.next/standalone/.next/server/chunks/_1vslkoe35wok6._.js +1 -1
  116. package/.next/standalone/.next/server/chunks/node_modules_@opentelemetry_api_build_esm_index_0oo58a7rymoxh.js +3 -0
  117. package/.next/standalone/.next/server/chunks/node_modules_@opentelemetry_api_build_esm_index_1jp9ij0_ddtgk.js +3 -0
  118. package/.next/standalone/.next/server/chunks/node_modules_posthog-node_dist_entrypoints_index_node_mjs_01r25oigsgz07._.js +2 -2
  119. package/.next/standalone/.next/server/chunks/node_modules_posthog-node_dist_entrypoints_index_node_mjs_09z9-p77cu37y._.js +2 -2
  120. package/.next/standalone/.next/server/chunks/package_json_[json]_cjs_1nxcc4vkpxxu7._.js +1 -1
  121. package/.next/standalone/.next/server/chunks/ssr/{[root-of-the-server]__0ffu2-38y03ic._.js → [root-of-the-server]__021vebe-4il8s._.js} +1 -1
  122. package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__075uro8t92s0_._.js +14 -0
  123. package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__08ch3staq3ejw._.js +1 -1
  124. package/.next/standalone/.next/server/chunks/ssr/{[externals]__12qr51qgrrt6o._.js → [root-of-the-server]__097i34ct1o88x._.js} +2 -2
  125. package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__0alpzjn3450sr._.js +3 -0
  126. package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__0aup10z2o8zc1._.js +3 -0
  127. package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__0bigvy9xmv2ka._.js +1 -1
  128. package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__0bioghlkjf7s7._.js +3 -0
  129. package/.next/standalone/.next/server/chunks/ssr/{[root-of-the-server]__01j58mdcdw0vn._.js → [root-of-the-server]__0ed1zh4scn7-k._.js} +1 -1
  130. package/.next/standalone/.next/server/chunks/ssr/{[root-of-the-server]__0naevg4bcoh54._.js → [root-of-the-server]__0evgy902m9h5e._.js} +2 -2
  131. package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__0h86bl2qf0k_o._.js +1 -1
  132. package/.next/standalone/.next/server/chunks/ssr/{[root-of-the-server]__167mipqmjprq5._.js → [root-of-the-server]__0mhtkwwx1pxcq._.js} +2 -2
  133. package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__0nhm28v58ty9z._.js +3 -0
  134. package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__0pia5h3p8re4c._.js +1 -1
  135. package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__0vse4qi496ol-._.js +3 -0
  136. package/.next/standalone/.next/server/chunks/ssr/{[root-of-the-server]__17r4zrwanhp6r._.js → [root-of-the-server]__0yb3u36xjy3b9._.js} +1 -1
  137. package/.next/standalone/.next/server/chunks/ssr/{[root-of-the-server]__0g8b0kyorya-t._.js → [root-of-the-server]__0ywj2u6ovfm_5._.js} +1 -1
  138. package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__1-ey9fgesfbc0._.js +1 -1
  139. package/.next/standalone/.next/server/chunks/ssr/{[root-of-the-server]__0zn1d4blhd3bu._.js → [root-of-the-server]__10v5cyxvj64j4._.js} +1 -1
  140. package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__15usvs-ms-0hf._.js +1 -1
  141. package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__16gb3_92zvk5x._.js +1 -1
  142. package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__190xwrr5zrfi3._.js +3 -0
  143. package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__1avi2kypusyb_._.js +1 -1
  144. package/.next/standalone/.next/server/chunks/ssr/{[root-of-the-server]__1vx7o8ukefudh._.js → [root-of-the-server]__1guwlpkyurdn9._.js} +1 -1
  145. package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__1k96jctukf65_._.js +3 -0
  146. package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__1r7drlqli-ado._.js +1 -1
  147. package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__1sj-wn2jp6va5._.js +3 -0
  148. package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__1vofkb2oq7p7e._.js +1 -1
  149. package/.next/standalone/.next/server/chunks/ssr/{[root-of-the-server]__1s2-ck3k3rsoo._.js → [root-of-the-server]__20dt376-socef._.js} +1 -1
  150. package/.next/standalone/.next/server/chunks/ssr/{[root-of-the-server]__1lnfv02ucky7m._.js → [root-of-the-server]__2158020r_amn9._.js} +1 -1
  151. package/.next/standalone/.next/server/chunks/ssr/{_1d98fyfrcaqhy._.js → _0bc4f4quq6w47._.js} +2 -2
  152. package/.next/standalone/.next/server/chunks/ssr/_0eoura3_9gjb-._.js +1 -1
  153. package/.next/standalone/.next/server/chunks/ssr/_0ouu886szh6yj._.js +1 -1
  154. package/.next/standalone/.next/server/chunks/ssr/_0pedwblqdoh58._.js +1 -1
  155. package/.next/standalone/.next/server/chunks/ssr/_1_ozgifqv1ssi._.js +1 -1
  156. package/.next/standalone/.next/server/chunks/ssr/_1djqs9i27e4kg._.js +1 -1
  157. package/.next/standalone/.next/server/chunks/ssr/_next-internal_server_app_policies_page_actions_1sp2-yo5_vm5f.js +2 -2
  158. package/.next/standalone/.next/server/chunks/ssr/app_actions_get-scheduled-audit_ts_0ei9snixb5fd-._.js +1 -1
  159. package/.next/standalone/.next/server/chunks/ssr/app_audit__components_audit-dashboard_tsx_0p9ud47q0xq5w._.js +1 -1
  160. package/.next/standalone/.next/server/chunks/ssr/app_global-error_tsx_1kp6l3x33jqb6._.js +1 -1
  161. package/.next/standalone/.next/server/chunks/ssr/app_policies_hooks-client_tsx_19dqvpcz0uxur._.js +1 -1
  162. package/.next/standalone/.next/server/chunks/ssr/app_settings_02tf1h47jmhhd._.js +1 -1
  163. package/.next/standalone/.next/server/chunks/ssr/{node_modules_09s4n108bqreq._.js → node_modules_0ptcnmeaxvd_a._.js} +22 -2
  164. package/.next/standalone/.next/server/chunks/ssr/node_modules_@opentelemetry_api_build_esm_index_0ntwr8lzj6p2i.js +3 -0
  165. package/.next/standalone/.next/server/chunks/ssr/{node_modules_html-to-image_es_index_0tqc05n832v7a.js → node_modules_html-to-image_es_index_1jwgv0pf-gy96.js} +1 -1
  166. package/.next/standalone/.next/server/chunks/ssr/node_modules_next_0bz67659f5z-3._.js +32 -0
  167. package/.next/standalone/.next/server/chunks/ssr/node_modules_next_dist_0janj0i6dqko7._.js +3 -3
  168. package/.next/standalone/.next/server/chunks/ssr/node_modules_next_dist_0ocrceo0c9psx._.js +32 -0
  169. package/.next/standalone/.next/server/chunks/ssr/node_modules_next_dist_1alv566ojmz5j._.js +32 -0
  170. package/.next/standalone/.next/server/chunks/ssr/node_modules_next_dist_1khq67j4vo9y4._.js +3 -0
  171. package/.next/standalone/.next/server/chunks/ssr/node_modules_next_dist_shared_lib_0ftnv26hg1lry._.js +3 -0
  172. package/.next/standalone/.next/server/chunks/ssr/node_modules_posthog-node_dist_entrypoints_index_node_mjs_0dagmbznysrc2._.js +1 -1
  173. package/.next/standalone/.next/server/chunks/ssr/node_modules_posthog-node_dist_entrypoints_index_node_mjs_11bnuznb72p7z._.js +2 -2
  174. package/.next/standalone/.next/server/chunks/ssr/package_json_[json]_cjs_013tntikdft59._.js +1 -1
  175. package/.next/standalone/.next/server/middleware-build-manifest.js +13 -13
  176. package/.next/standalone/.next/server/middleware.js +2 -2
  177. package/.next/standalone/.next/server/pages/404.html +1 -1
  178. package/.next/standalone/.next/server/pages/500.html +1 -1
  179. package/.next/standalone/.next/server/preview-props.json +3 -3
  180. package/.next/standalone/.next/server/server-reference-manifest.js +1 -1
  181. package/.next/standalone/.next/server/server-reference-manifest.json +23 -23
  182. package/.next/standalone/.next/static/chunks/0cbom4-ijx_a_.js +1 -0
  183. package/.next/standalone/.next/static/chunks/0u5weo5jdn2s8.js +1 -0
  184. package/.next/standalone/.next/static/chunks/{0el9n3h9_zp5m.js → 18-icoqze51kl.js} +1 -1
  185. package/.next/standalone/.next/static/chunks/2d-u90dt4-8rd.js +6 -0
  186. package/.next/standalone/.next/static/chunks/2n-bzb7pxe7hu.js +1 -0
  187. package/.next/standalone/.next/static/chunks/{0umzct31duk5g.js → 2zc7lg-jq353g.js} +1 -1
  188. package/.next/standalone/.next/static/chunks/{27cavoc8paelg.js → 33djjf12bhcsv.js} +1 -1
  189. package/.next/standalone/.next/static/chunks/{0wobqgosirs8p.js → 38u_i3j5funpi.js} +1 -1
  190. package/.next/standalone/.next/static/chunks/3symuj7t4js-c.js +1 -0
  191. package/.next/standalone/.next/static/chunks/{1kduj74-715jh.js → 3vzut6zpdrvtx.js} +1 -1
  192. package/.next/standalone/.next/static/chunks/{063al_q720fkj.js → 3xgxl1s_in776.js} +2 -2
  193. package/.next/standalone/SECURITY.md +20 -4
  194. package/.next/standalone/fp-cloud-cli/CHANGELOG.md +15 -1
  195. package/.next/standalone/fp-cloud-cli/fp_cli/_version.py +1 -1
  196. package/.next/standalone/fp-cloud-cli/uv.lock +4 -4
  197. package/.next/standalone/hermes-plugin/plugin.yaml +1 -1
  198. package/.next/standalone/node_modules/@next/env/package.json +1 -1
  199. package/.next/standalone/node_modules/next/dist/build/swc/index.js +1 -1
  200. package/.next/standalone/node_modules/next/dist/compiled/next-server/app-page-turbo-experimental.runtime.prod.js +24 -24
  201. package/.next/standalone/node_modules/next/dist/compiled/next-server/app-page-turbo.runtime.prod.js +26 -26
  202. package/.next/standalone/node_modules/next/dist/compiled/next-server/app-route-turbo.runtime.prod.js +3 -3
  203. package/.next/standalone/node_modules/next/dist/compiled/next-server/pages-turbo.runtime.prod.js +13 -13
  204. package/.next/standalone/node_modules/next/dist/lib/patch-incorrect-lockfile.js +3 -3
  205. package/.next/standalone/node_modules/next/dist/server/app-render/app-render.js +41 -40
  206. package/.next/standalone/node_modules/next/dist/server/app-render/async-local-storage.js +1 -1
  207. package/.next/standalone/node_modules/next/dist/server/app-render/dynamic-rendering-validation.js +814 -0
  208. package/.next/standalone/node_modules/next/dist/server/app-render/dynamic-rendering.js +1 -799
  209. package/.next/standalone/node_modules/next/dist/server/base-server.js +39 -5
  210. package/.next/standalone/node_modules/next/dist/server/config.js +1 -1
  211. package/.next/standalone/node_modules/next/dist/server/dev/hot-reloader-turbopack.js +2 -2
  212. package/.next/standalone/node_modules/next/dist/server/dev/hot-reloader-webpack.js +1 -1
  213. package/.next/standalone/node_modules/next/dist/server/lib/app-info-log.js +1 -1
  214. package/.next/standalone/node_modules/next/dist/server/lib/dedupe-fetch.js +4 -43
  215. package/.next/standalone/node_modules/next/dist/server/lib/patch-fetch-symbol.js +13 -0
  216. package/.next/standalone/node_modules/next/dist/server/lib/patch-fetch.js +3 -7
  217. package/.next/standalone/node_modules/next/dist/server/lib/router-server.js +3 -3
  218. package/.next/standalone/node_modules/next/dist/server/lib/router-utils/instrumentation-globals.external.js +77 -12
  219. package/.next/standalone/node_modules/next/dist/server/lib/start-server.js +1 -1
  220. package/.next/standalone/node_modules/next/dist/server/lib/trace/constants.js +12 -0
  221. package/.next/standalone/node_modules/next/dist/server/lib/trace/tracer.js +30 -14
  222. package/.next/standalone/node_modules/next/dist/server/next-server.js +10 -11
  223. package/.next/standalone/node_modules/next/dist/server/route-modules/pages/pages-handler.js +29 -23
  224. package/.next/standalone/node_modules/next/dist/server/route-modules/route-module.js +85 -8
  225. package/.next/standalone/node_modules/next/dist/server/use-cache/use-cache-wrapper.js +1 -1
  226. package/.next/standalone/node_modules/next/dist/server/web/adapter.js +124 -65
  227. package/.next/standalone/node_modules/next/dist/server/web/forward-trace-context.js +102 -0
  228. package/.next/standalone/node_modules/next/dist/telemetry/anonymous-meta.js +1 -1
  229. package/.next/standalone/node_modules/next/dist/telemetry/events/swc-load-failure.js +1 -1
  230. package/.next/standalone/node_modules/next/dist/telemetry/events/version.js +2 -2
  231. package/.next/standalone/node_modules/next/package.json +10 -10
  232. package/.next/standalone/node_modules/react/cjs/react.production.js +1 -1
  233. package/.next/standalone/node_modules/react/package.json +1 -1
  234. package/.next/standalone/node_modules/react-dom/cjs/react-dom-server-legacy.browser.production.js +1 -1
  235. package/.next/standalone/node_modules/react-dom/cjs/react-dom-server-legacy.node.production.js +1 -1
  236. package/.next/standalone/node_modules/react-dom/cjs/react-dom-server.browser.production.js +31 -27
  237. package/.next/standalone/node_modules/react-dom/cjs/react-dom-server.edge.production.js +33 -27
  238. package/.next/standalone/node_modules/react-dom/cjs/react-dom-server.node.production.js +38 -30
  239. package/.next/standalone/node_modules/react-dom/cjs/react-dom.production.js +1 -1
  240. package/.next/standalone/node_modules/react-dom/package.json +2 -2
  241. package/.next/standalone/package.json +10 -10
  242. package/.next/standalone/sdk/python/CHANGELOG.md +8 -4
  243. package/.next/standalone/sdk/python/failproofai_sdk/evaluator/source.py +2 -2
  244. package/.next/standalone/sdk/python/pyproject.toml +2 -7
  245. package/.next/standalone/sdk/python/skill/references/frameworks.md +0 -15
  246. package/.next/standalone/sdk/python/tests/test_docs.py +1 -4
  247. package/.next/standalone/sdk/python/tests/test_evaluator_source.py +1 -1
  248. package/.next/standalone/sdk/python/tests/test_packaging.py +4 -7
  249. package/.next/standalone/sdk/python/tests/test_zero_dependencies.py +2 -13
  250. package/.next/standalone/sdk/python/uv.lock +43 -905
  251. package/.next/standalone/sdk/typescript/CHANGELOG.md +52 -0
  252. package/.next/standalone/sdk/typescript/integration/fixtures/ai-4/package-lock.json +176 -68
  253. package/.next/standalone/sdk/typescript/integration/fixtures/ai-4/package.json +2 -2
  254. package/.next/standalone/sdk/typescript/integration/fixtures/ai-5/package-lock.json +3 -3
  255. package/.next/standalone/sdk/typescript/integration/fixtures/ai-5/package.json +1 -1
  256. package/.next/standalone/sdk/typescript/integration/fixtures/langchain-0.3/package-lock.json +115 -98
  257. package/.next/standalone/sdk/typescript/integration/fixtures/langchain-0.3/package.json +3 -3
  258. package/.next/standalone/sdk/typescript/integration/fixtures/langchain-dup-core/package-lock.json +4 -4
  259. package/.next/standalone/sdk/typescript/integration/fixtures/langchain-dup-core/package.json +1 -1
  260. package/.next/standalone/sdk/typescript/integration/fixtures/llamaindex-0.11/package-lock.json +171 -149
  261. package/.next/standalone/sdk/typescript/integration/fixtures/llamaindex-0.11/package.json +5 -2
  262. package/.next/standalone/sdk/typescript/integration/fixtures/mastra-1/package-lock.json +27 -15
  263. package/.next/standalone/sdk/typescript/integration/fixtures/mastra-1/package.json +2 -1
  264. package/.next/standalone/sdk/typescript/integration/fixtures/runtimes/deno-npm.ts +1 -1
  265. package/.next/standalone/server.js +1 -1
  266. package/README.md +0 -6
  267. package/dist/cli.mjs +12 -11
  268. package/dist/worker.mjs +1 -1
  269. package/hermes-plugin/plugin.yaml +1 -1
  270. package/openclaw-plugin/daemon-client.js +254 -0
  271. package/openclaw-plugin/hooks.js +187 -0
  272. package/openclaw-plugin/index.js +17 -211
  273. package/package.json +10 -10
  274. package/scripts/sync-agent-cli-harnesses-prompt.md +26 -31
  275. package/src/hooks/enforcement-capability.ts +1 -1
  276. package/src/hooks/integrations.ts +5 -2
  277. package/.next/standalone/.codex/hooks.json +0 -76
  278. package/.next/standalone/.cursor/hooks.json +0 -47
  279. package/.next/standalone/.factory/hooks.json +0 -112
  280. package/.next/standalone/.next/server/chunks/[externals]__1x24dzcbbq6-g._.js +0 -3
  281. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0__a_je8fsn65._.js +0 -3
  282. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0l-oi4gdtmlo5._.js +0 -3
  283. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0t9ufnv5hi2hq._.js +0 -327
  284. package/.next/standalone/.next/server/chunks/[root-of-the-server]__1aaw59g-5uty7._.js +0 -322
  285. package/.next/standalone/.next/server/chunks/[root-of-the-server]__1hqpg6vgmfexv._.js +0 -3
  286. package/.next/standalone/.next/server/chunks/ssr/[externals]__0ilfh9mfnzsth._.js +0 -3
  287. package/.next/standalone/.next/server/chunks/ssr/[externals]__0ohnuzsaozaca._.js +0 -3
  288. package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__0pwj2h2efe5f-._.js +0 -14
  289. package/.next/standalone/.next/server/chunks/ssr/node_modules_next_0zuikgt2xho-v._.js +0 -271
  290. package/.next/standalone/.next/server/chunks/ssr/node_modules_next_dist_158jo-9mwvgad._.js +0 -291
  291. package/.next/standalone/.next/server/chunks/ssr/node_modules_next_dist_19r82zsxo2jj1._.js +0 -291
  292. package/.next/standalone/.next/server/chunks/ssr/node_modules_next_dist_1dupwucoqt5qm._.js +0 -3
  293. package/.next/standalone/.next/server/chunks/ssr/node_modules_next_dist_shared_lib_03w27x2kh17_8._.js +0 -23
  294. package/.next/standalone/.next/static/chunks/0k7g_8x3o6gd-.js +0 -1
  295. package/.next/standalone/.next/static/chunks/12rug3jilwqzs.js +0 -1
  296. package/.next/standalone/.next/static/chunks/2701amhrbsbot.js +0 -1
  297. package/.next/standalone/.next/static/chunks/2ve23a7keupjw.js +0 -1
  298. package/.next/standalone/.next/static/chunks/3bv6xaoitjpnh.js +0 -6
  299. package/.next/standalone/.opencode/opencode.json +0 -4
  300. package/.next/standalone/.opencode/plugins/failproofai.mjs +0 -210
  301. package/.next/standalone/.pi/settings.json +0 -5
  302. package/.next/standalone/node_modules/react/cjs/react.development.js +0 -1330
  303. package/scripts/dev-hook.mjs +0 -333
  304. /package/.next/standalone/.next/static/{D7LY1YSrw96ZxKSpxxrFw → 1n2dyfTQb0MDajeqlipJy}/_buildManifest.js +0 -0
  305. /package/.next/standalone/.next/static/{D7LY1YSrw96ZxKSpxxrFw → 1n2dyfTQb0MDajeqlipJy}/_clientMiddlewareManifest.js +0 -0
  306. /package/.next/standalone/.next/static/{D7LY1YSrw96ZxKSpxxrFw → 1n2dyfTQb0MDajeqlipJy}/_ssgManifest.js +0 -0
@@ -38,7 +38,6 @@ function _interop_require_default(obj) {
38
38
  }
39
39
  const getHandler = ({ srcPage: originalSrcPage, config, userland, routeModule, isFallbackError, getStaticPaths, getStaticProps, getServerSideProps })=>{
40
40
  return async function handler(req, res, ctx) {
41
- var _serverFilesManifest_config_experimental, _serverFilesManifest_config, _parsedUrl_pathname;
42
41
  if (ctx.requestMeta) {
43
42
  (0, _requestmeta.setRequestMeta)(req, ctx.requestMeta);
44
43
  }
@@ -56,6 +55,23 @@ const getHandler = ({ srcPage: originalSrcPage, config, userland, routeModule, i
56
55
  srcPage = '/';
57
56
  }
58
57
  const multiZoneDraftMode = process.env.__NEXT_MULTI_ZONE_DRAFT_MODE;
58
+ // Registering `instrumentation.ts` usually installs the tracer provider, so
59
+ // do it before starting the request span. The span is started before
60
+ // `prepare`, so route module preparation is part of the request's trace.
61
+ // When this request triggers registration, the lifecycle spans of
62
+ // `instrumentation.ts` are emitted inside the request span.
63
+ const { instrumentation } = await routeModule.ensureInstrumentation(req, {
64
+ deferSpans: true
65
+ });
66
+ return routeModule.traceRequest(req, {
67
+ tracer: (0, _tracer.getTracer)(),
68
+ spanName: `${req.method || 'GET'} ${srcPage}`,
69
+ httpTarget: req.url,
70
+ instrumentation
71
+ }, (requestSpan, requestRootSpan)=>handleRequest(req, res, ctx, srcPage, multiZoneDraftMode, requestSpan, requestRootSpan));
72
+ };
73
+ async function handleRequest(req, res, ctx, srcPage, multiZoneDraftMode, requestSpan, requestRootSpan) {
74
+ var _serverFilesManifest_config_experimental, _serverFilesManifest_config, _parsedUrl_pathname;
59
75
  const prepareResult = await routeModule.prepare(req, res, {
60
76
  srcPage,
61
77
  multiZoneDraftMode
@@ -133,7 +149,6 @@ const getHandler = ({ srcPage: originalSrcPage, config, userland, routeModule, i
133
149
  isIsrFallback = false;
134
150
  }
135
151
  const tracer = (0, _tracer.getTracer)();
136
- const activeSpan = tracer.getActiveScopeSpan();
137
152
  const isWrappedByNextServer = Boolean(routerServerContext == null ? void 0 : routerServerContext.isWrappedByNextServer);
138
153
  const method = req.method || 'GET';
139
154
  const resolvedUrl = (0, _formaturl.formatUrl)({
@@ -141,7 +156,6 @@ const getHandler = ({ srcPage: originalSrcPage, config, userland, routeModule, i
141
156
  // make sure to only add query values from original URL
142
157
  query: hasStaticProps ? {} : originalQuery
143
158
  });
144
- let parentSpan;
145
159
  const handleResponse = async (span)=>{
146
160
  const responseGenerator = async ({ previousCacheEntry })=>{
147
161
  var _previousCacheEntry_value;
@@ -545,32 +559,24 @@ const getHandler = ({ srcPage: originalSrcPage, config, userland, routeModule, i
545
559
  'next.span_name': name
546
560
  });
547
561
  span.updateName(name);
548
- // Propagate http.route to the parent span if one exists
549
- // (e.g. a platform-created HTTP span in adapter
562
+ // Propagate http.route to the request's root span if it isn't
563
+ // the request span (e.g. a platform-created HTTP span in adapter
550
564
  // deployments).
551
- if (parentSpan && parentSpan !== span) {
552
- parentSpan.setAttribute('http.route', route);
553
- parentSpan.updateName(name);
565
+ if (requestRootSpan && requestRootSpan !== span) {
566
+ requestRootSpan.setAttribute('http.route', route);
567
+ requestRootSpan.updateName(name);
554
568
  }
555
569
  })();
556
570
  }
557
571
  };
558
- // TODO: activeSpan code path is for when wrapped by
559
- // next-server can be removed when this is no longer used
560
- if (isWrappedByNextServer && activeSpan) {
561
- await handleResponse(activeSpan);
562
- } else {
563
- parentSpan = tracer.getActiveScopeSpan();
564
- await tracer.withPropagatedContext(req.headers, ()=>tracer.trace(_constants.BaseServerSpan.handleRequest, {
565
- spanName: `${method} ${srcPage}`,
566
- kind: _tracer.SpanKind.SERVER,
567
- attributes: {
568
- 'http.method': method,
569
- 'http.target': req.url
570
- }
571
- }, handleResponse), undefined, !isWrappedByNextServer);
572
+ // When invoked directly, the request span was started before `prepare`;
573
+ // record the request target as normalized by it. next-server's request
574
+ // span already has it.
575
+ if (!isWrappedByNextServer && req.url !== undefined) {
576
+ requestSpan == null ? void 0 : requestSpan.setAttribute('http.target', req.url);
572
577
  }
573
- };
578
+ await handleResponse(requestSpan);
579
+ }
574
580
  };
575
581
 
576
582
  //# sourceMappingURL=pages-handler.js.map
@@ -356,33 +356,110 @@ class RouteModule {
356
356
  deploymentId
357
357
  };
358
358
  }
359
+ /**
360
+ * Runs a route handler that was invoked directly (e.g. by an adapter or a
361
+ * deployment, without next-server) inside its request span
362
+ * (`BaseServer.handleRequest`).
363
+ *
364
+ * The span is started before `fn` calls `prepare`, so everything done for
365
+ * the request, including route module preparation, belongs to the request's
366
+ * trace. When the handler is wrapped by next-server, which already started
367
+ * the request span, `fn` runs inside that active span instead.
368
+ *
369
+ * Callers must await `ensureInstrumentation` before calling this: on the
370
+ * first request, registering `instrumentation.ts` usually installs the
371
+ * tracer provider, and a span started earlier would not be recorded. With
372
+ * the `instrumentation` it returned, the request span is backdated to cover
373
+ * registration, and the lifecycle spans of `instrumentation.ts` are children
374
+ * of the request span when this request triggered registration.
375
+ *
376
+ * `fn` receives the request span and the request's root span: the span that
377
+ * was active when the handler was invoked (next-server's request span, or a
378
+ * platform-created HTTP span), or the request span itself when there is no
379
+ * such span.
380
+ *
381
+ * `tracer` must be the caller's tracer: route modules are bundled with their
382
+ * own copy of the tracer, whose root span bookkeeping (e.g.
383
+ * `getRootSpanAttributes`) the caller can't see.
384
+ *
385
+ * @internal - only called by the Next.js build templates. Kept out of the
386
+ * published type declarations, which can't reference the tracer's types.
387
+ */ async traceRequest(req, { tracer, spanName, httpTarget, instrumentation }, fn) {
388
+ var _this_getRouterServerContext;
389
+ const activeSpan = tracer.getActiveScopeSpan();
390
+ const isWrappedByNextServer = Boolean((_this_getRouterServerContext = this.getRouterServerContext(req)) == null ? void 0 : _this_getRouterServerContext.isWrappedByNextServer);
391
+ // TODO: activeSpan code path is for when wrapped by
392
+ // next-server can be removed when this is no longer used
393
+ if (isWrappedByNextServer && activeSpan) {
394
+ return fn(activeSpan, activeSpan);
395
+ }
396
+ return tracer.withPropagatedContext(req.headers, ()=>tracer.trace(_constants1.BaseServerSpan.handleRequest, {
397
+ spanName,
398
+ kind: _tracer.SpanKind.SERVER,
399
+ startTime: instrumentation == null ? void 0 : instrumentation.startTime,
400
+ attributes: {
401
+ 'http.method': req.method || 'GET',
402
+ 'http.target': httpTarget
403
+ }
404
+ }, (span)=>{
405
+ var _instrumentation_emitSpans;
406
+ instrumentation == null ? void 0 : (_instrumentation_emitSpans = instrumentation.emitSpans) == null ? void 0 : _instrumentation_emitSpans.call(instrumentation);
407
+ return fn(span, activeSpan ?? span);
408
+ }), undefined, !isWrappedByNextServer);
409
+ }
359
410
  prepare(req, res, options) {
360
411
  return (0, _tracer.getTracer)().trace(_constants1.RouteModuleSpan.prepare, {
361
412
  spanName: 'prepare route module'
362
413
  }, ()=>this.prepareImpl(req, res, options));
363
414
  }
364
- async prepareImpl(req, res, { srcPage, multiZoneDraftMode }) {
365
- var _req_headers_xforwardedproto, _nextConfig_experimental;
415
+ /**
416
+ * Makes sure `instrumentation.ts` is registered for the Node.js runtime.
417
+ * Safe to call more than once per request. Returns the absolute project
418
+ * directory (`undefined` in the edge runtime, which handles loading
419
+ * instrumentation at the edge adapter level).
420
+ *
421
+ * With `deferSpans` (callers of `traceRequest`), it also returns the
422
+ * `instrumentation` to pass to `traceRequest`: when this call triggered
423
+ * registration, the lifecycle spans of `instrumentation.ts` are not emitted
424
+ * yet but emitted inside the request span.
425
+ *
426
+ * @internal - called by `prepare` and by the Next.js build templates before
427
+ * `traceRequest`.
428
+ */ async ensureInstrumentation(req, { deferSpans = false } = {}) {
366
429
  let absoluteProjectDir;
367
- // edge runtime handles loading instrumentation at the edge adapter level
430
+ const instrumentation = deferSpans ? {
431
+ startTime: performance.timeOrigin + performance.now()
432
+ } : undefined;
368
433
  if (process.env.NEXT_RUNTIME !== 'edge') {
369
- if (res) {
370
- (0, _patchsetheader.patchSetHeaderWithCookieSupport)(req, res);
371
- }
372
434
  const { join, relative } = require('node:path');
373
435
  absoluteProjectDir = join(/* turbopackIgnore: true */ process.cwd(), (0, _requestmeta.getRequestMeta)(req, 'relativeProjectDir') || this.relativeProjectDir);
374
436
  const absoluteDistDir = (0, _requestmeta.getRequestMeta)(req, 'distDir');
375
437
  if (absoluteDistDir) {
376
438
  this.distDir = relative(absoluteProjectDir, absoluteDistDir);
377
439
  }
378
- const { ensureInstrumentationRegistered } = await import('../lib/router-utils/instrumentation-globals.external.js');
440
+ const { ensureInstrumentationRegistered, ensureInstrumentationRegisteredWithDeferredSpans } = await import('../lib/router-utils/instrumentation-globals.external.js');
379
441
  // ensure instrumentation is registered and pass
380
442
  // onRequestError below. Awaited so any caller of `RouteModule.prepare`
381
443
  // that bypasses `BaseServer.handleRequest` (where this is also awaited
382
444
  // via `prepareImpl`) still observes the instrumentation hook completing
383
445
  // before the userland route handler runs.
384
- await ensureInstrumentationRegistered(absoluteProjectDir, this.distDir);
446
+ if (instrumentation) {
447
+ instrumentation.emitSpans = await ensureInstrumentationRegisteredWithDeferredSpans(absoluteProjectDir, this.distDir);
448
+ } else {
449
+ await ensureInstrumentationRegistered(absoluteProjectDir, this.distDir);
450
+ }
451
+ }
452
+ return {
453
+ absoluteProjectDir,
454
+ instrumentation
455
+ };
456
+ }
457
+ async prepareImpl(req, res, { srcPage, multiZoneDraftMode }) {
458
+ var _req_headers_xforwardedproto, _nextConfig_experimental;
459
+ if (process.env.NEXT_RUNTIME !== 'edge' && res) {
460
+ (0, _patchsetheader.patchSetHeaderWithCookieSupport)(req, res);
385
461
  }
462
+ const { absoluteProjectDir } = await this.ensureInstrumentation(req);
386
463
  const manifests = (0, _tracer.getTracer)().trace(_constants1.RouteModuleSpan.loadManifests, {
387
464
  spanName: 'load route manifests'
388
465
  }, ()=>this.loadManifests(srcPage, absoluteProjectDir));
@@ -84,7 +84,7 @@ function _interop_require_wildcard(obj, nodeInterop) {
84
84
  }
85
85
  return newObj;
86
86
  }
87
- const nextVersion = "16.4.2";
87
+ const nextVersion = "16.4.3";
88
88
  /**
89
89
  * Encapsulates a pending cache invocation for deduping. Manages lazy stream
90
90
  * tee-ing (via fork()) and metadata access for both intra-request and
@@ -39,6 +39,7 @@ const _invarianterror = require("../../shared/lib/invariant-error");
39
39
  const _tracer = require("../lib/trace/tracer");
40
40
  const _constants = require("../lib/trace/constants");
41
41
  const _webonclose = require("./web-on-close");
42
+ const _forwardtracecontext = require("./forward-trace-context");
42
43
  const _getedgepreviewprops = require("./get-edge-preview-props");
43
44
  const _builtinrequestcontext = require("../after/builtin-request-context");
44
45
  const _implicittags = require("../lib/implicit-tags");
@@ -81,9 +82,15 @@ const headersGetter = {
81
82
  keys: (headers)=>Array.from(headers.keys()),
82
83
  get: (headers, key)=>headers.get(key) ?? undefined
83
84
  };
85
+ function isMiddlewarePage(page) {
86
+ return page === '/middleware' || page === '/src/middleware' || page === '/proxy' || page === '/src/proxy';
87
+ }
84
88
  let propagator = (request, fn)=>{
85
- const tracer = (0, _tracer.getTracer)();
86
- return tracer.withPropagatedContext(request.headers, fn, headersGetter);
89
+ // An active (host) span wins over a `traceparent` the request carries: the
90
+ // header can't be trusted to override, e.g., an APM's or the platform's
91
+ // server span. The middleware forwards the context it continues to the
92
+ // downstream request (the render), so both stay in one trace.
93
+ return (0, _tracer.getTracer)().withPropagatedContext(request.headers, fn, headersGetter);
87
94
  };
88
95
  let testApisIntercepted = false;
89
96
  function ensureTestApisIntercepted() {
@@ -208,79 +215,123 @@ async function adapter(params) {
208
215
  });
209
216
  let response;
210
217
  let cookiesFromResponse;
218
+ // The trace context of the span the middleware span and the downstream
219
+ // request share as their parent, to forward to the downstream request (see
220
+ // `forwardTraceContextToRequest`), and the request headers as the
221
+ // middleware received them.
222
+ let forwardedTraceContext;
223
+ let forwardedRequestHeaders;
211
224
  response = await propagator(request, ()=>{
212
225
  // we only care to make async storage available for middleware
213
- const isMiddleware = params.page === '/middleware' || params.page === '/src/middleware' || params.page === '/proxy' || params.page === '/src/proxy';
226
+ const isMiddleware = isMiddlewarePage(params.page);
214
227
  if (isMiddleware) {
215
228
  // if we're in an edge function, we only get a subset of `nextConfig` (no `experimental`),
216
229
  // so we have to inject it via DefinePlugin.
217
230
  // in `next start` this will be passed normally (see `NextNodeServer.runMiddleware`).
218
231
  const waitUntil = event.waitUntil.bind(event);
219
232
  const closeController = new _webonclose.CloseController();
220
- return (0, _tracer.getTracer)().trace(_constants.MiddlewareSpan.execute, {
221
- spanName: `middleware ${request.method}`,
222
- attributes: {
223
- 'http.target': request.nextUrl.pathname,
224
- 'http.method': request.method
233
+ const tracer = (0, _tracer.getTracer)();
234
+ const executeMiddleware = ()=>{
235
+ // The middleware span and the downstream request (the render) are
236
+ // siblings: they share the currently active context as their parent.
237
+ // That is an active host span, otherwise the request's `traceparent`
238
+ // (incoming, or written by next-server's middleware-invoke pass), or
239
+ // the root span inserted below. When this request registered
240
+ // `instrumentation.ts`, its lifecycle spans are children of the
241
+ // middleware span, which is backdated to cover registration.
242
+ const receivedHeaders = new Headers(request.headers);
243
+ forwardedTraceContext = (0, _forwardtracecontext.getSharedParentTraceContext)(receivedHeaders, tracer.getTraceContextHeaders());
244
+ if (forwardedTraceContext) {
245
+ // Snapshot before the handler can mutate `request.headers`.
246
+ forwardedRequestHeaders = receivedHeaders;
225
247
  }
226
- }, async ()=>{
227
- try {
228
- var _params_request_nextConfig_experimental, _params_request_nextConfig;
229
- const onUpdateCookies = (cookies)=>{
230
- cookiesFromResponse = cookies;
231
- };
232
- const previewProps = (0, _getedgepreviewprops.getEdgePreviewProps)();
233
- const page = '/' // Fake Work
234
- ;
235
- const fallbackRouteParams = null;
236
- const implicitTags = await (0, _implicittags.getImplicitTags)(page, request.nextUrl.pathname, fallbackRouteParams);
237
- const requestStore = (0, _requeststore.createRequestStoreForAPI)(request, request.nextUrl, implicitTags, onUpdateCookies, previewProps, // Edge route handlers can't use `"use cache"`, so there's no HMR
238
- // refresh hash to thread through here.
239
- undefined);
240
- const workStore = (0, _workstore.createWorkStore)({
241
- page,
242
- renderOpts: {
243
- cacheLifeProfiles: proxyCacheLifeProfiles,
244
- // Proxy doesn't do static generation, so this value does not
245
- // apply here. 0 is a sentinel: if something ever reads it,
246
- // it'll surface loudly instead of silently using a misleading
247
- // default.
248
- staticPageGenerationTimeout: 0,
249
- cacheComponents: false,
250
- // Proxy doesn't run instant validation; the level value is
251
- // irrelevant here.
252
- // TODO: remove validationLevel and other global config from renderOpts
253
- validationLevel: 'warning',
254
- experimental: {
255
- isRoutePPREnabled: false,
256
- authInterrupts: !!((_params_request_nextConfig = params.request.nextConfig) == null ? void 0 : (_params_request_nextConfig_experimental = _params_request_nextConfig.experimental) == null ? void 0 : _params_request_nextConfig_experimental.authInterrupts),
257
- // Proxy doesn't fill Cache Components entries, so this value
258
- // is never read. 0 is a sentinel: if something ever reads it,
259
- // the cache fill will time out immediately and surface the
260
- // bug.
261
- useCacheTimeout: 0,
262
- durableUseCacheEntries: false
248
+ return tracer.trace(_constants.MiddlewareSpan.execute, {
249
+ spanName: `middleware ${request.method}`,
250
+ startTime: params.emitInstrumentationSpans ? params.requestStartTime : undefined,
251
+ attributes: {
252
+ 'http.target': request.nextUrl.pathname,
253
+ 'http.method': request.method
254
+ }
255
+ }, async ()=>{
256
+ params.emitInstrumentationSpans == null ? void 0 : params.emitInstrumentationSpans.call(params);
257
+ try {
258
+ var _params_request_nextConfig_experimental, _params_request_nextConfig;
259
+ const onUpdateCookies = (cookies)=>{
260
+ cookiesFromResponse = cookies;
261
+ };
262
+ const previewProps = (0, _getedgepreviewprops.getEdgePreviewProps)();
263
+ const page = '/' // Fake Work
264
+ ;
265
+ const fallbackRouteParams = null;
266
+ const implicitTags = await (0, _implicittags.getImplicitTags)(page, request.nextUrl.pathname, fallbackRouteParams);
267
+ const requestStore = (0, _requeststore.createRequestStoreForAPI)(request, request.nextUrl, implicitTags, onUpdateCookies, previewProps, // Edge route handlers can't use `"use cache"`, so there's no HMR
268
+ // refresh hash to thread through here.
269
+ undefined);
270
+ const workStore = (0, _workstore.createWorkStore)({
271
+ page,
272
+ renderOpts: {
273
+ cacheLifeProfiles: proxyCacheLifeProfiles,
274
+ // Proxy doesn't do static generation, so this value does not
275
+ // apply here. 0 is a sentinel: if something ever reads it,
276
+ // it'll surface loudly instead of silently using a misleading
277
+ // default.
278
+ staticPageGenerationTimeout: 0,
279
+ cacheComponents: false,
280
+ // Proxy doesn't run instant validation; the level value is
281
+ // irrelevant here.
282
+ // TODO: remove validationLevel and other global config from renderOpts
283
+ validationLevel: 'warning',
284
+ experimental: {
285
+ isRoutePPREnabled: false,
286
+ authInterrupts: !!((_params_request_nextConfig = params.request.nextConfig) == null ? void 0 : (_params_request_nextConfig_experimental = _params_request_nextConfig.experimental) == null ? void 0 : _params_request_nextConfig_experimental.authInterrupts),
287
+ // Proxy doesn't fill Cache Components entries, so this value
288
+ // is never read. 0 is a sentinel: if something ever reads it,
289
+ // the cache fill will time out immediately and surface the
290
+ // bug.
291
+ useCacheTimeout: 0,
292
+ durableUseCacheEntries: false
293
+ },
294
+ waitUntil,
295
+ onClose: closeController.onClose.bind(closeController),
296
+ onAfterTaskError: undefined
263
297
  },
264
- waitUntil,
265
- onClose: closeController.onClose.bind(closeController),
266
- onAfterTaskError: undefined
267
- },
268
- isPrefetchRequest: request.headers.get(_approuterheaders.NEXT_ROUTER_PREFETCH_HEADER) === '1',
269
- buildId: buildId ?? '',
270
- deploymentId: deploymentId ?? '',
271
- previouslyRevalidatedTags: []
272
- });
273
- return await _workasyncstorageexternal.workAsyncStorage.run(workStore, ()=>_workunitasyncstorageexternal.workUnitAsyncStorage.run(requestStore, params.handler, request, event));
274
- } finally{
275
- // middleware cannot stream, so we can consider the response closed
276
- // as soon as the handler returns.
277
- // we can delay running it until a bit later --
278
- // if it's needed, we'll have a `waitUntil` lock anyway.
279
- setTimeout(()=>{
280
- closeController.dispatchClose();
281
- }, 0);
282
- }
283
- });
298
+ isPrefetchRequest: request.headers.get(_approuterheaders.NEXT_ROUTER_PREFETCH_HEADER) === '1',
299
+ buildId: buildId ?? '',
300
+ deploymentId: deploymentId ?? '',
301
+ previouslyRevalidatedTags: []
302
+ });
303
+ return await _workasyncstorageexternal.workAsyncStorage.run(workStore, ()=>_workunitasyncstorageexternal.workUnitAsyncStorage.run(requestStore, params.handler, request, event));
304
+ } finally{
305
+ // middleware cannot stream, so we can consider the response closed
306
+ // as soon as the handler returns.
307
+ // we can delay running it until a bit later --
308
+ // if it's needed, we'll have a `waitUntil` lock anyway.
309
+ setTimeout(()=>{
310
+ closeController.dispatchClose();
311
+ }, 0);
312
+ }
313
+ });
314
+ };
315
+ if (tracer.isOpenTelemetryEnabled() && !tracer.hasActiveSpanContext()) {
316
+ // Middleware invoked separately from the render without any trace
317
+ // context (no incoming `traceparent`, no host span): insert a root
318
+ // span for the request. Its context is forwarded to the render, so the
319
+ // middleware and the render are siblings in one trace instead of two
320
+ // independent root spans. It's named after the method only (like
321
+ // next-server's request span before its route is known): the path
322
+ // would make the span name high-cardinality. It is backdated to when
323
+ // the request was received, to cover registering `instrumentation.ts`.
324
+ return tracer.trace(_constants.NextSpan.request, {
325
+ spanName: request.method,
326
+ kind: _tracer.SpanKind.SERVER,
327
+ startTime: params.requestStartTime,
328
+ attributes: {
329
+ 'http.target': request.nextUrl.pathname,
330
+ 'http.method': request.method
331
+ }
332
+ }, executeMiddleware);
333
+ }
334
+ return executeMiddleware();
284
335
  }
285
336
  return params.handler(request, event);
286
337
  });
@@ -385,6 +436,14 @@ async function adapter(params) {
385
436
  }
386
437
  }
387
438
  const finalResponse = response ? response : _response.NextResponse.next();
439
+ if (forwardedRequestHeaders) {
440
+ // Make the downstream request (render) a sibling of the middleware span
441
+ // in the same trace. Every host applies these request-header overrides to
442
+ // the render, including next-server's router server, so this works
443
+ // whether or not the host invokes the middleware separately from the
444
+ // render.
445
+ (0, _forwardtracecontext.forwardTraceContextToRequest)(finalResponse.headers, forwardedRequestHeaders, forwardedTraceContext);
446
+ }
388
447
  // Flight headers are not overridable / removable so they are applied at the end.
389
448
  const middlewareOverrideHeaders = finalResponse.headers.get('x-middleware-override-headers');
390
449
  const overwrittenHeaders = [];
@@ -0,0 +1,102 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", {
3
+ value: true
4
+ });
5
+ 0 && (module.exports = {
6
+ forwardTraceContextToRequest: null,
7
+ getSharedParentTraceContext: null
8
+ });
9
+ function _export(target, all) {
10
+ for(var name in all)Object.defineProperty(target, name, {
11
+ enumerable: true,
12
+ get: all[name]
13
+ });
14
+ }
15
+ _export(exports, {
16
+ forwardTraceContextToRequest: function() {
17
+ return forwardTraceContextToRequest;
18
+ },
19
+ getSharedParentTraceContext: function() {
20
+ return getSharedParentTraceContext;
21
+ }
22
+ });
23
+ const OVERRIDE_HEADERS = 'x-middleware-override-headers';
24
+ const REQUEST_HEADER_PREFIX = 'x-middleware-request-';
25
+ // The trace ID and parent ID of a W3C `traceparent`
26
+ // (`version-traceid-parentid-flags`), lower-cased.
27
+ function getTraceparentIds(traceparent) {
28
+ const [, traceId, parentId] = (traceparent == null ? void 0 : traceparent.toLowerCase().split('-')) ?? [];
29
+ return traceId && parentId ? `${traceId}-${parentId}` : undefined;
30
+ }
31
+ function getSharedParentTraceContext(requestHeaders, activeTraceContext) {
32
+ if (!activeTraceContext) {
33
+ return undefined;
34
+ }
35
+ const receivedTraceparent = requestHeaders.get('traceparent');
36
+ const receivedIds = getTraceparentIds(receivedTraceparent);
37
+ if (receivedTraceparent && receivedIds && receivedIds === getTraceparentIds(activeTraceContext.traceparent)) {
38
+ const receivedTracestate = requestHeaders.get('tracestate');
39
+ return receivedTracestate ? {
40
+ traceparent: receivedTraceparent,
41
+ tracestate: receivedTracestate
42
+ } : {
43
+ traceparent: receivedTraceparent,
44
+ tracestate: undefined
45
+ };
46
+ }
47
+ return activeTraceContext;
48
+ }
49
+ function forwardTraceContextToRequest(responseHeaders, requestHeaders, traceContext) {
50
+ if (!traceContext) {
51
+ return;
52
+ }
53
+ // Redirects and direct responses have no downstream request.
54
+ if (!responseHeaders.has('x-middleware-next') && !responseHeaders.has('x-middleware-rewrite')) {
55
+ return;
56
+ }
57
+ const userOverrides = responseHeaders.get(OVERRIDE_HEADERS);
58
+ // An empty override list is ignored by hosts (no headers are replaced), so
59
+ // treat it like no overrides rather than turning it into "only the trace
60
+ // context headers".
61
+ if (!userOverrides) {
62
+ if (requestHeaders.get('traceparent') === traceContext.traceparent && requestHeaders.get('tracestate') === (traceContext.tracestate ?? null)) {
63
+ // The downstream request already carries the trace context.
64
+ return;
65
+ }
66
+ const keys = [];
67
+ for (const [key, value] of requestHeaders){
68
+ if (!isTraceHeader(key)) {
69
+ responseHeaders.set(REQUEST_HEADER_PREFIX + key, value);
70
+ keys.push(key);
71
+ }
72
+ }
73
+ setTraceContextOverrides(responseHeaders, keys, traceContext);
74
+ return;
75
+ }
76
+ const keys = userOverrides.split(',').map((key)=>key.trim()).filter(Boolean);
77
+ if (keys.includes('traceparent') && responseHeaders.get(REQUEST_HEADER_PREFIX + 'traceparent') !== requestHeaders.get('traceparent')) {
78
+ // The user explicitly set the `traceparent`: keep both trace headers as
79
+ // the user set them.
80
+ return;
81
+ }
82
+ setTraceContextOverrides(responseHeaders, keys.filter((key)=>!isTraceHeader(key)), traceContext);
83
+ }
84
+ function isTraceHeader(key) {
85
+ return key === 'traceparent' || key === 'tracestate';
86
+ }
87
+ // Lists the trace context's `traceparent` and `tracestate` (or no
88
+ // `tracestate`, if it has none) as request-header overrides, after `keys`
89
+ // (the other overridden headers).
90
+ function setTraceContextOverrides(responseHeaders, keys, traceContext) {
91
+ responseHeaders.set(REQUEST_HEADER_PREFIX + 'traceparent', traceContext.traceparent);
92
+ keys.push('traceparent');
93
+ if (traceContext.tracestate) {
94
+ responseHeaders.set(REQUEST_HEADER_PREFIX + 'tracestate', traceContext.tracestate);
95
+ keys.push('tracestate');
96
+ } else {
97
+ responseHeaders.delete(REQUEST_HEADER_PREFIX + 'tracestate');
98
+ }
99
+ responseHeaders.set(OVERRIDE_HEADERS, keys.join(','));
100
+ }
101
+
102
+ //# sourceMappingURL=forward-trace-context.js.map
@@ -82,7 +82,7 @@ async function getAnonymousMeta() {
82
82
  isWsl: _iswsl.default,
83
83
  isCI: _ciinfo.isCI,
84
84
  ciName: _ciinfo.isCI && _ciinfo.name || null,
85
- nextVersion: "16.4.2",
85
+ nextVersion: "16.4.3",
86
86
  agentName: await (0, _agentname.getAgentName)()
87
87
  };
88
88
  return traits;
@@ -38,7 +38,7 @@ async function eventSwcLoadFailure(event) {
38
38
  telemetry.record({
39
39
  eventName: EVENT_PLUGIN_PRESENT,
40
40
  payload: {
41
- nextVersion: "16.4.2",
41
+ nextVersion: "16.4.3",
42
42
  glibcVersion,
43
43
  installedSwcPackages,
44
44
  arch: process.arch,
@@ -12,12 +12,12 @@ const EVENT_VERSION = 'NEXT_CLI_SESSION_STARTED';
12
12
  function eventCliSession(nextConfig, event) {
13
13
  var _nextConfig_experimental, _nextConfig_experimental_staleTimes, _nextConfig_experimental_staleTimes1, _nextConfig_reactCompiler, _nextConfig_reactCompiler1;
14
14
  // This should be an invariant, if it fails our build tooling is broken.
15
- if (typeof "16.4.2" !== 'string') {
15
+ if (typeof "16.4.3" !== 'string') {
16
16
  return [];
17
17
  }
18
18
  const { images, i18n } = nextConfig || {};
19
19
  const payload = {
20
- nextVersion: "16.4.2",
20
+ nextVersion: "16.4.3",
21
21
  nodeVersion: process.version,
22
22
  cliCommand: event.cliCommand,
23
23
  isSrcDir: event.isSrcDir,
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "next",
3
- "version": "16.4.2",
3
+ "version": "16.4.3",
4
4
  "description": "The React Framework",
5
5
  "main": "./dist/server/next.js",
6
6
  "license": "MIT",
@@ -82,7 +82,7 @@
82
82
  "next": "./dist/bin/next"
83
83
  },
84
84
  "dependencies": {
85
- "@next/env": "16.4.2",
85
+ "@next/env": "16.4.3",
86
86
  "@swc/helpers": "0.5.23",
87
87
  "baseline-browser-mapping": "^2.9.19",
88
88
  "caniuse-lite": "^1.0.30001579",
@@ -113,14 +113,14 @@
113
113
  },
114
114
  "optionalDependencies": {
115
115
  "sharp": "^0.35.5",
116
- "@next/swc-darwin-arm64": "16.4.2",
117
- "@next/swc-darwin-x64": "16.4.2",
118
- "@next/swc-linux-arm64-gnu": "16.4.2",
119
- "@next/swc-linux-arm64-musl": "16.4.2",
120
- "@next/swc-linux-x64-gnu": "16.4.2",
121
- "@next/swc-linux-x64-musl": "16.4.2",
122
- "@next/swc-win32-arm64-msvc": "16.4.2",
123
- "@next/swc-win32-x64-msvc": "16.4.2"
116
+ "@next/swc-darwin-arm64": "16.4.3",
117
+ "@next/swc-darwin-x64": "16.4.3",
118
+ "@next/swc-linux-arm64-gnu": "16.4.3",
119
+ "@next/swc-linux-arm64-musl": "16.4.3",
120
+ "@next/swc-linux-x64-gnu": "16.4.3",
121
+ "@next/swc-linux-x64-musl": "16.4.3",
122
+ "@next/swc-win32-arm64-msvc": "16.4.3",
123
+ "@next/swc-win32-x64-msvc": "16.4.3"
124
124
  },
125
125
  "keywords": [
126
126
  "react",
@@ -562,4 +562,4 @@ exports.useSyncExternalStore = function (
562
562
  exports.useTransition = function () {
563
563
  return ReactSharedInternals.H.useTransition();
564
564
  };
565
- exports.version = "19.3.0";
565
+ exports.version = "19.3.1";