conductor-oss 0.61.21 → 0.61.22

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 (343) hide show
  1. package/node_modules/@conductor-oss/core/package.json +1 -1
  2. package/package.json +6 -6
  3. package/web/.next/standalone/node_modules/@img/sharp-libvips-linux-x64/README.md +46 -0
  4. package/web/.next/standalone/node_modules/@img/sharp-libvips-linux-x64/lib/glib-2.0/include/glibconfig.h +219 -0
  5. package/web/.next/standalone/node_modules/@img/{sharp-libvips-linuxmusl-x64/lib/libvips-cpp.so.8.17.3 → sharp-libvips-linux-x64/lib/libvips-cpp.so.8.18.3} +0 -0
  6. package/web/.next/standalone/node_modules/@img/sharp-libvips-linux-x64/package.json +2 -2
  7. package/web/.next/standalone/node_modules/@img/sharp-libvips-linux-x64/versions.json +20 -20
  8. package/web/.next/standalone/node_modules/@img/sharp-libvips-linuxmusl-x64/README.md +46 -0
  9. package/web/.next/standalone/node_modules/@img/sharp-libvips-linuxmusl-x64/lib/glib-2.0/include/glibconfig.h +219 -0
  10. package/web/.next/standalone/node_modules/@img/{sharp-libvips-linux-x64/lib/libvips-cpp.so.8.17.3 → sharp-libvips-linuxmusl-x64/lib/libvips-cpp.so.8.18.3} +0 -0
  11. package/web/.next/standalone/node_modules/@img/sharp-libvips-linuxmusl-x64/package.json +2 -2
  12. package/web/.next/standalone/node_modules/@img/sharp-libvips-linuxmusl-x64/versions.json +20 -20
  13. package/web/.next/standalone/node_modules/@img/sharp-linux-x64/index.cjs +1 -0
  14. package/web/.next/standalone/node_modules/@img/sharp-linux-x64/lib/sharp-linux-x64-0.35.0.node +0 -0
  15. package/web/.next/standalone/node_modules/@img/sharp-linux-x64/package.json +6 -5
  16. package/web/.next/standalone/node_modules/@img/sharp-linuxmusl-x64/index.cjs +1 -0
  17. package/web/.next/standalone/node_modules/@img/sharp-linuxmusl-x64/lib/sharp-linuxmusl-x64-0.35.0.node +0 -0
  18. package/web/.next/standalone/node_modules/@img/sharp-linuxmusl-x64/package.json +6 -5
  19. package/web/.next/standalone/node_modules/@next/env/package.json +8 -9
  20. package/web/.next/standalone/node_modules/next/dist/build/swc/index.js +1 -1
  21. package/web/.next/standalone/node_modules/next/dist/build/webpack-config.js +3 -3
  22. package/web/.next/standalone/node_modules/next/dist/client/dev/debug-channel.js +102 -2
  23. package/web/.next/standalone/node_modules/next/dist/compiled/http-proxy/index.js +5 -5
  24. package/web/.next/standalone/node_modules/next/dist/compiled/next-server/app-page-experimental.runtime.prod.js +11 -10
  25. package/web/.next/standalone/node_modules/next/dist/compiled/next-server/app-page-turbo-experimental.runtime.prod.js +12 -11
  26. package/web/.next/standalone/node_modules/next/dist/compiled/next-server/app-page-turbo.runtime.prod.js +14 -13
  27. package/web/.next/standalone/node_modules/next/dist/compiled/next-server/app-page.runtime.prod.js +11 -10
  28. package/web/.next/standalone/node_modules/next/dist/compiled/next-server/app-route.runtime.prod.js +2 -2
  29. package/web/.next/standalone/node_modules/next/dist/compiled/next-server/pages-turbo.runtime.prod.js +9 -9
  30. package/web/.next/standalone/node_modules/next/dist/compiled/next-server/pages.runtime.prod.js +9 -9
  31. package/web/.next/standalone/node_modules/next/dist/lib/patch-incorrect-lockfile.js +3 -3
  32. package/web/.next/standalone/node_modules/next/dist/server/app-render/action-handler.js +147 -42
  33. package/web/.next/standalone/node_modules/next/dist/server/app-render/manifests-singleton.js +52 -4
  34. package/web/.next/standalone/node_modules/next/dist/server/config-schema.js +1 -1
  35. package/web/.next/standalone/node_modules/next/dist/server/config-shared.js +0 -2
  36. package/web/.next/standalone/node_modules/next/dist/server/config.js +1 -1
  37. package/web/.next/standalone/node_modules/next/dist/server/dev/hot-reloader-turbopack.js +2 -2
  38. package/web/.next/standalone/node_modules/next/dist/server/dev/hot-reloader-webpack.js +1 -1
  39. package/web/.next/standalone/node_modules/next/dist/server/image-optimizer.js +8 -27
  40. package/web/.next/standalone/node_modules/next/dist/server/lib/app-info-log.js +1 -1
  41. package/web/.next/standalone/node_modules/next/dist/server/lib/encode-cache-tag.js +45 -0
  42. package/web/.next/standalone/node_modules/next/dist/server/lib/implicit-tags.js +6 -3
  43. package/web/.next/standalone/node_modules/next/dist/server/lib/incremental-cache/index.js +90 -53
  44. package/web/.next/standalone/node_modules/next/dist/server/lib/patch-fetch.js +20 -3
  45. package/web/.next/standalone/node_modules/next/dist/server/lib/router-utils/proxy-request.js +4 -0
  46. package/web/.next/standalone/node_modules/next/dist/server/lib/start-server.js +1 -1
  47. package/web/.next/standalone/node_modules/next/dist/shared/lib/errors/canary-only-config-error.js +1 -1
  48. package/web/.next/standalone/node_modules/next/dist/shared/lib/router/router.js +8 -1
  49. package/web/.next/standalone/node_modules/next/dist/shared/lib/router/utils/prepare-destination.js +2 -1
  50. package/web/.next/standalone/node_modules/next/dist/shared/lib/server-reference-info.js +12 -0
  51. package/web/.next/standalone/node_modules/next/dist/telemetry/anonymous-meta.js +1 -1
  52. package/web/.next/standalone/node_modules/next/dist/telemetry/events/swc-load-failure.js +1 -1
  53. package/web/.next/standalone/node_modules/next/dist/telemetry/events/version.js +2 -2
  54. package/web/.next/standalone/node_modules/next/package.json +10 -252
  55. package/web/.next/standalone/node_modules/postcss/lib/container.js +81 -34
  56. package/web/.next/standalone/node_modules/postcss/lib/fromJSON.js +76 -23
  57. package/web/.next/standalone/node_modules/postcss/lib/input.js +13 -4
  58. package/web/.next/standalone/node_modules/postcss/lib/lazy-result.js +55 -13
  59. package/web/.next/standalone/node_modules/postcss/lib/node.js +105 -60
  60. package/web/.next/standalone/node_modules/postcss/lib/previous-map.js +11 -2
  61. package/web/.next/standalone/node_modules/postcss/lib/processor.js +1 -1
  62. package/web/.next/standalone/node_modules/postcss/lib/stringifier.js +90 -25
  63. package/web/.next/standalone/node_modules/postcss/package.json +1 -1
  64. package/web/.next/standalone/node_modules/sharp/{lib/channel.js → dist/channel.cjs} +1 -1
  65. package/web/.next/standalone/node_modules/sharp/{lib/colour.js → dist/colour.cjs} +1 -1
  66. package/web/.next/standalone/node_modules/sharp/{lib/composite.js → dist/composite.cjs} +2 -1
  67. package/web/.next/standalone/node_modules/sharp/{lib/constructor.js → dist/constructor.cjs} +41 -29
  68. package/web/.next/standalone/node_modules/sharp/dist/index.cjs +25 -0
  69. package/web/.next/standalone/node_modules/sharp/{lib/input.js → dist/input.cjs} +19 -14
  70. package/web/.next/standalone/node_modules/sharp/{lib/libvips.js → dist/libvips.cjs} +35 -30
  71. package/web/.next/standalone/node_modules/sharp/{lib/operation.js → dist/operation.cjs} +6 -35
  72. package/web/.next/standalone/node_modules/sharp/{lib/output.js → dist/output.cjs} +142 -14
  73. package/web/.next/standalone/node_modules/sharp/{lib/resize.js → dist/resize.cjs} +19 -1
  74. package/web/.next/standalone/node_modules/sharp/dist/sharp.cjs +164 -0
  75. package/web/.next/standalone/node_modules/sharp/{lib/utility.js → dist/utility.cjs} +11 -7
  76. package/web/.next/standalone/node_modules/{semver → sharp/node_modules/semver}/classes/range.js +24 -4
  77. package/web/.next/standalone/node_modules/{semver → sharp/node_modules/semver}/classes/semver.js +19 -2
  78. package/web/.next/standalone/node_modules/sharp/node_modules/semver/functions/clean.js +8 -0
  79. package/web/.next/standalone/node_modules/sharp/node_modules/semver/functions/compare-build.js +9 -0
  80. package/web/.next/standalone/node_modules/sharp/node_modules/semver/functions/compare-loose.js +5 -0
  81. package/web/.next/standalone/node_modules/sharp/node_modules/semver/functions/diff.js +60 -0
  82. package/web/.next/standalone/node_modules/sharp/node_modules/semver/functions/inc.js +21 -0
  83. package/web/.next/standalone/node_modules/sharp/node_modules/semver/functions/major.js +5 -0
  84. package/web/.next/standalone/node_modules/sharp/node_modules/semver/functions/minor.js +5 -0
  85. package/web/.next/standalone/node_modules/sharp/node_modules/semver/functions/patch.js +5 -0
  86. package/web/.next/standalone/node_modules/sharp/node_modules/semver/functions/prerelease.js +8 -0
  87. package/web/.next/standalone/node_modules/sharp/node_modules/semver/functions/rcompare.js +5 -0
  88. package/web/.next/standalone/node_modules/sharp/node_modules/semver/functions/rsort.js +5 -0
  89. package/web/.next/standalone/node_modules/sharp/node_modules/semver/functions/sort.js +5 -0
  90. package/web/.next/standalone/node_modules/sharp/node_modules/semver/functions/truncate.js +48 -0
  91. package/web/.next/standalone/node_modules/sharp/node_modules/semver/functions/valid.js +8 -0
  92. package/web/.next/standalone/node_modules/sharp/node_modules/semver/index.js +93 -0
  93. package/web/.next/standalone/node_modules/{semver → sharp/node_modules/semver}/internal/re.js +1 -1
  94. package/web/.next/standalone/node_modules/{semver → sharp/node_modules/semver}/package.json +4 -4
  95. package/web/.next/standalone/node_modules/sharp/node_modules/semver/preload.js +4 -0
  96. package/web/.next/standalone/node_modules/sharp/node_modules/semver/ranges/gtr.js +6 -0
  97. package/web/.next/standalone/node_modules/sharp/node_modules/semver/ranges/intersects.js +9 -0
  98. package/web/.next/standalone/node_modules/sharp/node_modules/semver/ranges/ltr.js +6 -0
  99. package/web/.next/standalone/node_modules/sharp/node_modules/semver/ranges/max-satisfying.js +27 -0
  100. package/web/.next/standalone/node_modules/sharp/node_modules/semver/ranges/min-satisfying.js +26 -0
  101. package/web/.next/standalone/node_modules/sharp/node_modules/semver/ranges/min-version.js +63 -0
  102. package/web/.next/standalone/node_modules/sharp/node_modules/semver/ranges/outside.js +82 -0
  103. package/web/.next/standalone/node_modules/sharp/node_modules/semver/ranges/simplify.js +49 -0
  104. package/web/.next/standalone/node_modules/sharp/node_modules/semver/ranges/subset.js +249 -0
  105. package/web/.next/standalone/node_modules/sharp/node_modules/semver/ranges/to-comparators.js +10 -0
  106. package/web/.next/standalone/node_modules/sharp/node_modules/semver/ranges/valid.js +13 -0
  107. package/web/.next/standalone/node_modules/sharp/package.json +60 -49
  108. package/web/.next/standalone/package.json +3 -2
  109. package/web/.next/standalone/packages/web/.next/BUILD_ID +1 -1
  110. package/web/.next/standalone/packages/web/.next/app-path-routes-manifest.json +7 -7
  111. package/web/.next/standalone/packages/web/.next/build-manifest.json +4 -4
  112. package/web/.next/standalone/packages/web/.next/prerender-manifest.json +3 -3
  113. package/web/.next/standalone/packages/web/.next/react-loadable-manifest.json +5 -5
  114. package/web/.next/standalone/packages/web/.next/required-server-files.json +6 -1
  115. package/web/.next/standalone/packages/web/.next/server/app/__clerk/[[...path]]/route.js.nft.json +1 -1
  116. package/web/.next/standalone/packages/web/.next/server/app/_global-error/page.js.nft.json +1 -1
  117. package/web/.next/standalone/packages/web/.next/server/app/_global-error/page_client-reference-manifest.js +1 -1
  118. package/web/.next/standalone/packages/web/.next/server/app/_global-error.html +1 -1
  119. package/web/.next/standalone/packages/web/.next/server/app/_global-error.rsc +1 -1
  120. package/web/.next/standalone/packages/web/.next/server/app/_global-error.segments/_full.segment.rsc +1 -1
  121. package/web/.next/standalone/packages/web/.next/server/app/_global-error.segments/_global-error/__PAGE__.segment.rsc +1 -1
  122. package/web/.next/standalone/packages/web/.next/server/app/_global-error.segments/_global-error.segment.rsc +1 -1
  123. package/web/.next/standalone/packages/web/.next/server/app/_global-error.segments/_head.segment.rsc +1 -1
  124. package/web/.next/standalone/packages/web/.next/server/app/_global-error.segments/_index.segment.rsc +1 -1
  125. package/web/.next/standalone/packages/web/.next/server/app/_global-error.segments/_tree.segment.rsc +1 -1
  126. package/web/.next/standalone/packages/web/.next/server/app/_not-found/page.js +1 -1
  127. package/web/.next/standalone/packages/web/.next/server/app/_not-found/page.js.nft.json +1 -1
  128. package/web/.next/standalone/packages/web/.next/server/app/_not-found/page_client-reference-manifest.js +1 -1
  129. package/web/.next/standalone/packages/web/.next/server/app/api/access/route.js.nft.json +1 -1
  130. package/web/.next/standalone/packages/web/.next/server/app/api/agents/route.js.nft.json +1 -1
  131. package/web/.next/standalone/packages/web/.next/server/app/api/app-update/route.js.nft.json +1 -1
  132. package/web/.next/standalone/packages/web/.next/server/app/api/attachments/route.js.nft.json +1 -1
  133. package/web/.next/standalone/packages/web/.next/server/app/api/auth/profile/route.js.nft.json +1 -1
  134. package/web/.next/standalone/packages/web/.next/server/app/api/boards/comments/route.js.nft.json +1 -1
  135. package/web/.next/standalone/packages/web/.next/server/app/api/boards/route.js.nft.json +1 -1
  136. package/web/.next/standalone/packages/web/.next/server/app/api/bridge/bridges/[bridgeId]/route.js.nft.json +1 -1
  137. package/web/.next/standalone/packages/web/.next/server/app/api/bridge/bridges/route.js.nft.json +1 -1
  138. package/web/.next/standalone/packages/web/.next/server/app/api/bridge/devices/[deviceId]/app-update/route.js.nft.json +1 -1
  139. package/web/.next/standalone/packages/web/.next/server/app/api/bridge/devices/[deviceId]/repair/route.js.nft.json +1 -1
  140. package/web/.next/standalone/packages/web/.next/server/app/api/bridge/devices/[deviceId]/route.js.nft.json +1 -1
  141. package/web/.next/standalone/packages/web/.next/server/app/api/bridge/devices/[deviceId]/service-restart/route.js.nft.json +1 -1
  142. package/web/.next/standalone/packages/web/.next/server/app/api/bridge/devices/claims/complete/route.js.nft.json +1 -1
  143. package/web/.next/standalone/packages/web/.next/server/app/api/bridge/devices/code/route.js.nft.json +1 -1
  144. package/web/.next/standalone/packages/web/.next/server/app/api/bridge/devices/route.js.nft.json +1 -1
  145. package/web/.next/standalone/packages/web/.next/server/app/api/bridges/route.js.nft.json +1 -1
  146. package/web/.next/standalone/packages/web/.next/server/app/api/config/route.js.nft.json +1 -1
  147. package/web/.next/standalone/packages/web/.next/server/app/api/context-files/open/route.js.nft.json +1 -1
  148. package/web/.next/standalone/packages/web/.next/server/app/api/context-files/route.js.nft.json +1 -1
  149. package/web/.next/standalone/packages/web/.next/server/app/api/events/route.js.nft.json +1 -1
  150. package/web/.next/standalone/packages/web/.next/server/app/api/executor/health/route.js.nft.json +1 -1
  151. package/web/.next/standalone/packages/web/.next/server/app/api/filesystem/directory/route.js.nft.json +1 -1
  152. package/web/.next/standalone/packages/web/.next/server/app/api/filesystem/pick-directory/route.js.nft.json +1 -1
  153. package/web/.next/standalone/packages/web/.next/server/app/api/github/projects/route.js.nft.json +1 -1
  154. package/web/.next/standalone/packages/web/.next/server/app/api/github/projects/sync/route.js.nft.json +1 -1
  155. package/web/.next/standalone/packages/web/.next/server/app/api/github/repos/route.js.nft.json +1 -1
  156. package/web/.next/standalone/packages/web/.next/server/app/api/github/webhook/route.js.nft.json +1 -1
  157. package/web/.next/standalone/packages/web/.next/server/app/api/health/boards/route.js.nft.json +1 -1
  158. package/web/.next/standalone/packages/web/.next/server/app/api/health/sessions/route.js.nft.json +1 -1
  159. package/web/.next/standalone/packages/web/.next/server/app/api/notifications/route.js.nft.json +1 -1
  160. package/web/.next/standalone/packages/web/.next/server/app/api/preferences/route.js.nft.json +1 -1
  161. package/web/.next/standalone/packages/web/.next/server/app/api/project-notes/backlinks/route.js.nft.json +1 -1
  162. package/web/.next/standalone/packages/web/.next/server/app/api/project-notes/daily/route.js.nft.json +1 -1
  163. package/web/.next/standalone/packages/web/.next/server/app/api/project-notes/file/route.js.nft.json +1 -1
  164. package/web/.next/standalone/packages/web/.next/server/app/api/project-notes/graph/route.js.nft.json +1 -1
  165. package/web/.next/standalone/packages/web/.next/server/app/api/project-notes/open/route.js.nft.json +1 -1
  166. package/web/.next/standalone/packages/web/.next/server/app/api/project-notes/route.js.nft.json +1 -1
  167. package/web/.next/standalone/packages/web/.next/server/app/api/projects/[id]/dispatcher/approve/route.js.nft.json +1 -1
  168. package/web/.next/standalone/packages/web/.next/server/app/api/projects/[id]/dispatcher/bindings/route.js.nft.json +1 -1
  169. package/web/.next/standalone/packages/web/.next/server/app/api/projects/[id]/dispatcher/feed/route.js.nft.json +1 -1
  170. package/web/.next/standalone/packages/web/.next/server/app/api/projects/[id]/dispatcher/feed/stream/route.js.nft.json +1 -1
  171. package/web/.next/standalone/packages/web/.next/server/app/api/projects/[id]/dispatcher/integration/route.js.nft.json +1 -1
  172. package/web/.next/standalone/packages/web/.next/server/app/api/projects/[id]/dispatcher/interrupt/route.js.nft.json +1 -1
  173. package/web/.next/standalone/packages/web/.next/server/app/api/projects/[id]/dispatcher/preferences/route.js.nft.json +1 -1
  174. package/web/.next/standalone/packages/web/.next/server/app/api/projects/[id]/dispatcher/reject/route.js.nft.json +1 -1
  175. package/web/.next/standalone/packages/web/.next/server/app/api/projects/[id]/dispatcher/route.js.nft.json +1 -1
  176. package/web/.next/standalone/packages/web/.next/server/app/api/projects/[id]/dispatcher/send/route.js.nft.json +1 -1
  177. package/web/.next/standalone/packages/web/.next/server/app/api/projects/[id]/dispatcher/tasks/[task]/handoff/route.js.nft.json +1 -1
  178. package/web/.next/standalone/packages/web/.next/server/app/api/projects/[id]/dispatcher/tasks/[task]/route.js.nft.json +1 -1
  179. package/web/.next/standalone/packages/web/.next/server/app/api/projects/[id]/dispatcher/tasks/route.js.nft.json +1 -1
  180. package/web/.next/standalone/packages/web/.next/server/app/api/projects/[id]/dispatchers/route.js.nft.json +1 -1
  181. package/web/.next/standalone/packages/web/.next/server/app/api/projects/[id]/open/route.js.nft.json +1 -1
  182. package/web/.next/standalone/packages/web/.next/server/app/api/projects/[id]/route.js.nft.json +1 -1
  183. package/web/.next/standalone/packages/web/.next/server/app/api/projects/[id]/setup/route.js.nft.json +1 -1
  184. package/web/.next/standalone/packages/web/.next/server/app/api/projects/route.js.nft.json +1 -1
  185. package/web/.next/standalone/packages/web/.next/server/app/api/repositories/[id]/route.js.nft.json +1 -1
  186. package/web/.next/standalone/packages/web/.next/server/app/api/repositories/route.js.nft.json +1 -1
  187. package/web/.next/standalone/packages/web/.next/server/app/api/sessions/[id]/actions/route.js.nft.json +1 -1
  188. package/web/.next/standalone/packages/web/.next/server/app/api/sessions/[id]/archive/route.js.nft.json +1 -1
  189. package/web/.next/standalone/packages/web/.next/server/app/api/sessions/[id]/checks/route.js.nft.json +1 -1
  190. package/web/.next/standalone/packages/web/.next/server/app/api/sessions/[id]/diff/route.js.nft.json +1 -1
  191. package/web/.next/standalone/packages/web/.next/server/app/api/sessions/[id]/files/route.js.nft.json +1 -1
  192. package/web/.next/standalone/packages/web/.next/server/app/api/sessions/[id]/keys/route.js.nft.json +1 -1
  193. package/web/.next/standalone/packages/web/.next/server/app/api/sessions/[id]/kill/route.js.nft.json +1 -1
  194. package/web/.next/standalone/packages/web/.next/server/app/api/sessions/[id]/output/route.js.nft.json +1 -1
  195. package/web/.next/standalone/packages/web/.next/server/app/api/sessions/[id]/output/stream/route.js.nft.json +1 -1
  196. package/web/.next/standalone/packages/web/.next/server/app/api/sessions/[id]/preview/dom/route.js.nft.json +1 -1
  197. package/web/.next/standalone/packages/web/.next/server/app/api/sessions/[id]/preview/route.js.nft.json +1 -1
  198. package/web/.next/standalone/packages/web/.next/server/app/api/sessions/[id]/preview/screenshot/route.js.nft.json +1 -1
  199. package/web/.next/standalone/packages/web/.next/server/app/api/sessions/[id]/restore/route.js.nft.json +1 -1
  200. package/web/.next/standalone/packages/web/.next/server/app/api/sessions/[id]/route.js.nft.json +1 -1
  201. package/web/.next/standalone/packages/web/.next/server/app/api/sessions/[id]/send/route.js.nft.json +1 -1
  202. package/web/.next/standalone/packages/web/.next/server/app/api/sessions/[id]/terminal/relay/route.js.nft.json +1 -1
  203. package/web/.next/standalone/packages/web/.next/server/app/api/sessions/[id]/terminal/snapshot/route.js.nft.json +1 -1
  204. package/web/.next/standalone/packages/web/.next/server/app/api/sessions/[id]/terminal/token/route.js.nft.json +1 -1
  205. package/web/.next/standalone/packages/web/.next/server/app/api/sessions/[id]/terminal/ttyd/route.js.nft.json +1 -1
  206. package/web/.next/standalone/packages/web/.next/server/app/api/sessions/[id]/terminal/ttyd/token/route.js.nft.json +1 -1
  207. package/web/.next/standalone/packages/web/.next/server/app/api/sessions/[id]/terminal/ttyd/ws/route.js.nft.json +1 -1
  208. package/web/.next/standalone/packages/web/.next/server/app/api/sessions/route.js.nft.json +1 -1
  209. package/web/.next/standalone/packages/web/.next/server/app/api/skills/activate/route.js.nft.json +1 -1
  210. package/web/.next/standalone/packages/web/.next/server/app/api/skills/catalog/route.js.nft.json +1 -1
  211. package/web/.next/standalone/packages/web/.next/server/app/api/skills/deactivate/route.js.nft.json +1 -1
  212. package/web/.next/standalone/packages/web/.next/server/app/api/skills/install/route.js.nft.json +1 -1
  213. package/web/.next/standalone/packages/web/.next/server/app/api/skills/installed/route.js.nft.json +1 -1
  214. package/web/.next/standalone/packages/web/.next/server/app/api/skills/session-active/route.js.nft.json +1 -1
  215. package/web/.next/standalone/packages/web/.next/server/app/api/skills/uninstall/route.js.nft.json +1 -1
  216. package/web/.next/standalone/packages/web/.next/server/app/api/spawn/route.js.nft.json +1 -1
  217. package/web/.next/standalone/packages/web/.next/server/app/api/workspaces/branches/route.js.nft.json +1 -1
  218. package/web/.next/standalone/packages/web/.next/server/app/api/workspaces/route.js.nft.json +1 -1
  219. package/web/.next/standalone/packages/web/.next/server/app/bridge/connect/page.js +1 -1
  220. package/web/.next/standalone/packages/web/.next/server/app/bridge/connect/page.js.nft.json +1 -1
  221. package/web/.next/standalone/packages/web/.next/server/app/bridge/connect/page_client-reference-manifest.js +1 -1
  222. package/web/.next/standalone/packages/web/.next/server/app/bridge/install.ps1/route.js.nft.json +1 -1
  223. package/web/.next/standalone/packages/web/.next/server/app/bridge/install.sh/route.js.nft.json +1 -1
  224. package/web/.next/standalone/packages/web/.next/server/app/embed/terminal/[id]/page.js +1 -1
  225. package/web/.next/standalone/packages/web/.next/server/app/embed/terminal/[id]/page.js.nft.json +1 -1
  226. package/web/.next/standalone/packages/web/.next/server/app/embed/terminal/[id]/page_client-reference-manifest.js +1 -1
  227. package/web/.next/standalone/packages/web/.next/server/app/icon.svg/route.js.nft.json +1 -1
  228. package/web/.next/standalone/packages/web/.next/server/app/page.js +1 -1
  229. package/web/.next/standalone/packages/web/.next/server/app/page.js.nft.json +1 -1
  230. package/web/.next/standalone/packages/web/.next/server/app/page_client-reference-manifest.js +1 -1
  231. package/web/.next/standalone/packages/web/.next/server/app/sessions/[id]/page.js +2 -2
  232. package/web/.next/standalone/packages/web/.next/server/app/sessions/[id]/page.js.nft.json +1 -1
  233. package/web/.next/standalone/packages/web/.next/server/app/sessions/[id]/page_client-reference-manifest.js +1 -1
  234. package/web/.next/standalone/packages/web/.next/server/app/settings/bridge/page.js +1 -1
  235. package/web/.next/standalone/packages/web/.next/server/app/settings/bridge/page.js.nft.json +1 -1
  236. package/web/.next/standalone/packages/web/.next/server/app/settings/bridge/page_client-reference-manifest.js +1 -1
  237. package/web/.next/standalone/packages/web/.next/server/app/sign-in/[[...sign-in]]/page.js +1 -1
  238. package/web/.next/standalone/packages/web/.next/server/app/sign-in/[[...sign-in]]/page.js.nft.json +1 -1
  239. package/web/.next/standalone/packages/web/.next/server/app/sign-in/[[...sign-in]]/page_client-reference-manifest.js +1 -1
  240. package/web/.next/standalone/packages/web/.next/server/app/sign-in/hosted/page.js +1 -1
  241. package/web/.next/standalone/packages/web/.next/server/app/sign-in/hosted/page.js.nft.json +1 -1
  242. package/web/.next/standalone/packages/web/.next/server/app/sign-in/hosted/page_client-reference-manifest.js +1 -1
  243. package/web/.next/standalone/packages/web/.next/server/app/sign-in/sso-callback/page.js +1 -1
  244. package/web/.next/standalone/packages/web/.next/server/app/sign-in/sso-callback/page.js.nft.json +1 -1
  245. package/web/.next/standalone/packages/web/.next/server/app/sign-in/sso-callback/page_client-reference-manifest.js +1 -1
  246. package/web/.next/standalone/packages/web/.next/server/app/sign-up/[[...sign-up]]/page.js +1 -1
  247. package/web/.next/standalone/packages/web/.next/server/app/sign-up/[[...sign-up]]/page.js.nft.json +1 -1
  248. package/web/.next/standalone/packages/web/.next/server/app/sign-up/[[...sign-up]]/page_client-reference-manifest.js +1 -1
  249. package/web/.next/standalone/packages/web/.next/server/app/unlock/page.js +1 -1
  250. package/web/.next/standalone/packages/web/.next/server/app/unlock/page.js.nft.json +1 -1
  251. package/web/.next/standalone/packages/web/.next/server/app/unlock/page_client-reference-manifest.js +1 -1
  252. package/web/.next/standalone/packages/web/.next/server/app-paths-manifest.json +7 -7
  253. package/web/.next/standalone/packages/web/.next/server/chunks/2512.js +3 -3
  254. package/web/.next/standalone/packages/web/.next/server/chunks/3303.js +1 -1
  255. package/web/.next/standalone/packages/web/.next/server/chunks/3698.js +5 -3
  256. package/web/.next/standalone/packages/web/.next/server/chunks/3786.js +2 -2
  257. package/web/.next/standalone/packages/web/.next/server/chunks/4135.js +1 -0
  258. package/web/.next/standalone/packages/web/.next/server/chunks/6108.js +1 -0
  259. package/web/.next/standalone/packages/web/.next/server/chunks/6472.js +1 -1
  260. package/web/.next/standalone/packages/web/.next/server/chunks/7776.js +1 -1
  261. package/web/.next/standalone/packages/web/.next/server/chunks/9455.js +1 -1
  262. package/web/.next/standalone/packages/web/.next/server/chunks/9672.js +1 -0
  263. package/web/.next/standalone/packages/web/.next/server/middleware-build-manifest.js +1 -1
  264. package/web/.next/standalone/packages/web/.next/server/middleware-react-loadable-manifest.js +1 -1
  265. package/web/.next/standalone/packages/web/.next/server/middleware.js +4 -4
  266. package/web/.next/standalone/packages/web/.next/server/next-font-manifest.js +1 -1
  267. package/web/.next/standalone/packages/web/.next/server/next-font-manifest.json +1 -1
  268. package/web/.next/standalone/packages/web/.next/server/pages/500.html +1 -1
  269. package/web/.next/standalone/packages/web/.next/server/server-reference-manifest.js +1 -1
  270. package/web/.next/standalone/packages/web/.next/server/server-reference-manifest.json +1 -1
  271. package/web/.next/standalone/packages/web/.next/static/chunks/{34443.c71c524d5fcc197f.js → 34443.564640d49e48dac8.js} +1 -1
  272. package/web/.next/standalone/packages/web/.next/static/chunks/41696.3e691c667c1e7b81.js +1 -0
  273. package/web/.next/standalone/packages/web/.next/static/chunks/49829.b59a66a75b0144d4.js +1 -0
  274. package/web/.next/standalone/packages/web/.next/static/chunks/{61968-84de5fd1d154571d.js → 61968-1d55f423ea1ad7fb.js} +1 -1
  275. package/web/.next/standalone/packages/web/.next/static/chunks/76892-83c29ea9e142a212.js +1 -0
  276. package/web/.next/{static/chunks/79593-c8c8ed0f8829c660.js → standalone/packages/web/.next/static/chunks/79593-7e4d5cc53d59e150.js} +2 -2
  277. package/web/.next/standalone/packages/web/.next/static/chunks/9016-c4fa23038e6de72b.js +1 -0
  278. package/web/.next/standalone/packages/web/.next/static/chunks/app/{layout-1d6034a5d57a2849.js → layout-e2267e076be36fa0.js} +1 -1
  279. package/web/.next/standalone/packages/web/.next/static/chunks/app/page-f3925343b6c5eaa9.js +1 -0
  280. package/web/.next/standalone/packages/web/.next/static/chunks/app/sessions/[id]/page-b1d7e1d41fba2817.js +1 -0
  281. package/web/.next/standalone/packages/web/.next/static/chunks/{main-e776ff7a08a61c77.js → main-0a70c45f3b60fdcf.js} +1 -1
  282. package/web/.next/{static/chunks/webpack-c447583f01d6313b.js → standalone/packages/web/.next/static/chunks/webpack-44f612e7df6dfe22.js} +1 -1
  283. package/web/.next/standalone/packages/web/.next/static/css/07568bac52bbf79f.css +1 -0
  284. package/web/.next/standalone/packages/web/package.json +2 -1
  285. package/web/.next/standalone/packages/web/server.js +1 -1
  286. package/web/.next/static/chunks/{34443.c71c524d5fcc197f.js → 34443.564640d49e48dac8.js} +1 -1
  287. package/web/.next/static/chunks/41696.3e691c667c1e7b81.js +1 -0
  288. package/web/.next/static/chunks/49829.b59a66a75b0144d4.js +1 -0
  289. package/web/.next/static/chunks/{61968-84de5fd1d154571d.js → 61968-1d55f423ea1ad7fb.js} +1 -1
  290. package/web/.next/static/chunks/76892-83c29ea9e142a212.js +1 -0
  291. package/web/.next/{standalone/packages/web/.next/static/chunks/79593-c8c8ed0f8829c660.js → static/chunks/79593-7e4d5cc53d59e150.js} +2 -2
  292. package/web/.next/static/chunks/9016-c4fa23038e6de72b.js +1 -0
  293. package/web/.next/static/chunks/app/{layout-1d6034a5d57a2849.js → layout-e2267e076be36fa0.js} +1 -1
  294. package/web/.next/static/chunks/app/page-f3925343b6c5eaa9.js +1 -0
  295. package/web/.next/static/chunks/app/sessions/[id]/page-b1d7e1d41fba2817.js +1 -0
  296. package/web/.next/static/chunks/{main-e776ff7a08a61c77.js → main-0a70c45f3b60fdcf.js} +1 -1
  297. package/web/.next/{standalone/packages/web/.next/static/chunks/webpack-c447583f01d6313b.js → static/chunks/webpack-44f612e7df6dfe22.js} +1 -1
  298. package/web/.next/static/css/07568bac52bbf79f.css +1 -0
  299. package/web/.next/standalone/node_modules/@img/sharp-linux-x64/LICENSE +0 -191
  300. package/web/.next/standalone/node_modules/@img/sharp-linux-x64/lib/sharp-linux-x64.node +0 -0
  301. package/web/.next/standalone/node_modules/@img/sharp-linuxmusl-x64/LICENSE +0 -191
  302. package/web/.next/standalone/node_modules/@img/sharp-linuxmusl-x64/lib/sharp-linuxmusl-x64.node +0 -0
  303. package/web/.next/standalone/node_modules/sharp/lib/index.js +0 -16
  304. package/web/.next/standalone/node_modules/sharp/lib/sharp.js +0 -121
  305. package/web/.next/standalone/packages/web/.next/server/chunks/1364.js +0 -1
  306. package/web/.next/standalone/packages/web/.next/server/chunks/4013.js +0 -1
  307. package/web/.next/standalone/packages/web/.next/server/chunks/9398.js +0 -1
  308. package/web/.next/standalone/packages/web/.next/static/chunks/28386-0121205400994756.js +0 -1
  309. package/web/.next/standalone/packages/web/.next/static/chunks/41696.08fe09203aaf1a18.js +0 -1
  310. package/web/.next/standalone/packages/web/.next/static/chunks/84322.a03fd8fc2bb2e8d7.js +0 -1
  311. package/web/.next/standalone/packages/web/.next/static/chunks/9016-2b7d7b8b143a8323.js +0 -1
  312. package/web/.next/standalone/packages/web/.next/static/chunks/app/page-0ba7acf47a6b3ac6.js +0 -1
  313. package/web/.next/standalone/packages/web/.next/static/chunks/app/sessions/[id]/page-aeb1ccc1a89248d5.js +0 -1
  314. package/web/.next/standalone/packages/web/.next/static/css/895fa8ff3c08143e.css +0 -1
  315. package/web/.next/static/chunks/28386-0121205400994756.js +0 -1
  316. package/web/.next/static/chunks/41696.08fe09203aaf1a18.js +0 -1
  317. package/web/.next/static/chunks/84322.a03fd8fc2bb2e8d7.js +0 -1
  318. package/web/.next/static/chunks/9016-2b7d7b8b143a8323.js +0 -1
  319. package/web/.next/static/chunks/app/page-0ba7acf47a6b3ac6.js +0 -1
  320. package/web/.next/static/chunks/app/sessions/[id]/page-aeb1ccc1a89248d5.js +0 -1
  321. package/web/.next/static/css/895fa8ff3c08143e.css +0 -1
  322. /package/web/.next/standalone/node_modules/sharp/{lib/is.js → dist/is.cjs} +0 -0
  323. /package/web/.next/standalone/node_modules/{semver → sharp/node_modules/semver}/classes/comparator.js +0 -0
  324. /package/web/.next/standalone/node_modules/{semver → sharp/node_modules/semver}/functions/cmp.js +0 -0
  325. /package/web/.next/standalone/node_modules/{semver → sharp/node_modules/semver}/functions/coerce.js +0 -0
  326. /package/web/.next/standalone/node_modules/{semver → sharp/node_modules/semver}/functions/compare.js +0 -0
  327. /package/web/.next/standalone/node_modules/{semver → sharp/node_modules/semver}/functions/eq.js +0 -0
  328. /package/web/.next/standalone/node_modules/{semver → sharp/node_modules/semver}/functions/gt.js +0 -0
  329. /package/web/.next/standalone/node_modules/{semver → sharp/node_modules/semver}/functions/gte.js +0 -0
  330. /package/web/.next/standalone/node_modules/{semver → sharp/node_modules/semver}/functions/lt.js +0 -0
  331. /package/web/.next/standalone/node_modules/{semver → sharp/node_modules/semver}/functions/lte.js +0 -0
  332. /package/web/.next/standalone/node_modules/{semver → sharp/node_modules/semver}/functions/neq.js +0 -0
  333. /package/web/.next/standalone/node_modules/{semver → sharp/node_modules/semver}/functions/parse.js +0 -0
  334. /package/web/.next/standalone/node_modules/{semver → sharp/node_modules/semver}/functions/satisfies.js +0 -0
  335. /package/web/.next/standalone/node_modules/{semver → sharp/node_modules/semver}/internal/constants.js +0 -0
  336. /package/web/.next/standalone/node_modules/{semver → sharp/node_modules/semver}/internal/debug.js +0 -0
  337. /package/web/.next/standalone/node_modules/{semver → sharp/node_modules/semver}/internal/identifiers.js +0 -0
  338. /package/web/.next/standalone/node_modules/{semver → sharp/node_modules/semver}/internal/lrucache.js +0 -0
  339. /package/web/.next/standalone/node_modules/{semver → sharp/node_modules/semver}/internal/parse-options.js +0 -0
  340. /package/web/.next/standalone/packages/web/.next/static/{bUZhqJ_eDpMX4oqHwonGR → 2imqEtZncw17IjW1PZEh4}/_buildManifest.js +0 -0
  341. /package/web/.next/standalone/packages/web/.next/static/{bUZhqJ_eDpMX4oqHwonGR → 2imqEtZncw17IjW1PZEh4}/_ssgManifest.js +0 -0
  342. /package/web/.next/static/{bUZhqJ_eDpMX4oqHwonGR → 2imqEtZncw17IjW1PZEh4}/_buildManifest.js +0 -0
  343. /package/web/.next/static/{bUZhqJ_eDpMX4oqHwonGR → 2imqEtZncw17IjW1PZEh4}/_ssgManifest.js +0 -0
@@ -72,7 +72,7 @@ async function fetchPkgInfo(pkg) {
72
72
  });
73
73
  }
74
74
  const data = await res.json();
75
- const versionData = data.versions["16.2.6"];
75
+ const versionData = data.versions["16.2.11"];
76
76
  return {
77
77
  os: versionData.os,
78
78
  cpu: versionData.cpu,
@@ -100,7 +100,7 @@ async function patchIncorrectLockfile(dir) {
100
100
  const expectedSwcPkgs = Object.keys(_packagejson.optionalDependencies || {}).filter((pkg)=>pkg.startsWith('@next/swc-'));
101
101
  const patchDependency = (pkg, pkgData)=>{
102
102
  lockfileParsed.dependencies[pkg] = {
103
- version: "16.2.6",
103
+ version: "16.2.11",
104
104
  resolved: pkgData.tarball,
105
105
  integrity: pkgData.integrity,
106
106
  optional: true
@@ -108,7 +108,7 @@ async function patchIncorrectLockfile(dir) {
108
108
  };
109
109
  const patchPackage = (pkg, pkgData)=>{
110
110
  lockfileParsed.packages[pkg] = {
111
- version: "16.2.6",
111
+ version: "16.2.11",
112
112
  resolved: pkgData.tarball,
113
113
  integrity: pkgData.integrity,
114
114
  cpu: pkgData.cpu,
@@ -125,7 +125,6 @@ function addRevalidationHeader(res, { workStore, requestStore }) {
125
125
  /**
126
126
  * Forwards a server action request to a separate worker. Used when the requested action is not available in the current worker.
127
127
  */ async function createForwardedActionResponse(req, res, host, workerPathname, basePath) {
128
- var _getRequestMeta;
129
128
  if (!host) {
130
129
  throw Object.defineProperty(new Error('Invariant: Missing `host` header from a forwarded Server Actions request.'), "__NEXT_ERROR_CODE", {
131
130
  value: "E226",
@@ -138,13 +137,35 @@ function addRevalidationHeader(res, { workStore, requestStore }) {
138
137
  // we use this to skip rendering the flight tree so that we don't update the UI
139
138
  // with the response from the forwarded worker
140
139
  forwardedHeaders.set('x-action-forwarded', '1');
141
- const proto = ((_getRequestMeta = (0, _requestmeta.getRequestMeta)(req, 'initProtocol')) == null ? void 0 : _getRequestMeta.replace(/:+$/, '')) || 'https';
142
- // For standalone or the serverful mode, use the internal origin directly
143
- // other than the host headers from the request.
144
- const origin = process.env.__NEXT_PRIVATE_ORIGIN || `${proto}://${host.value}`;
140
+ // TODO: Remove __NEXT_PRIVATE_ORIGIN
141
+ let origin = process.env.__NEXT_PRIVATE_ORIGIN;
142
+ if (origin === undefined) {
143
+ const initUrl = (0, _requestmeta.getRequestMeta)(req, 'initURL');
144
+ if (initUrl !== undefined) {
145
+ try {
146
+ const parsedUrl = new URL(initUrl);
147
+ origin = parsedUrl.origin;
148
+ } catch (error) {
149
+ throw Object.defineProperty(new Error('Could not determine origin for forwarded Server Actions request. This can happen if port or hostname are not configured for this server.', {
150
+ cause: error
151
+ }), "__NEXT_ERROR_CODE", {
152
+ value: "E1148",
153
+ enumerable: false,
154
+ configurable: true
155
+ });
156
+ }
157
+ } else {
158
+ throw Object.defineProperty(new _invarianterror.InvariantError('Missing initURL'), "__NEXT_ERROR_CODE", {
159
+ value: "E1147",
160
+ enumerable: false,
161
+ configurable: true
162
+ });
163
+ }
164
+ }
145
165
  const fetchUrl = new URL(`${origin}${basePath}${workerPathname}`);
146
166
  try {
147
- var _response_headers_get;
167
+ var _response_headers_get, // Since we aren't consuming the response body, we cancel it to avoid memory leaks
168
+ _response_body;
148
169
  let body;
149
170
  if (// The type check here ensures that `req` is correctly typed, and the
150
171
  // environment variable check provides dead code elimination.
@@ -188,10 +209,15 @@ function addRevalidationHeader(res, { workStore, requestStore }) {
188
209
  }
189
210
  }
190
211
  return new _flightrenderresult.FlightRenderResult(response.body);
191
- } else {
192
- var // Since we aren't consuming the response body, we cancel it to avoid memory leaks
193
- _response_body;
194
- (_response_body = response.body) == null ? void 0 : _response_body.cancel();
212
+ }
213
+ (_response_body = response.body) == null ? void 0 : _response_body.cancel();
214
+ // Pass the action-not-found marker through so the client throws
215
+ // UnrecognizedActionError instead of a generic "unexpected response".
216
+ if (response.headers.get(_approuterheaders.NEXT_ACTION_NOT_FOUND_HEADER) === '1') {
217
+ res.setHeader(_approuterheaders.NEXT_ACTION_NOT_FOUND_HEADER, '1');
218
+ res.setHeader('content-type', 'text/plain');
219
+ res.statusCode = 404;
220
+ return _renderresult.default.fromStatic('Server action not found.', 'text/plain');
195
221
  }
196
222
  } catch (err) {
197
223
  // we couldn't stream the forwarded response, so we'll just return an empty response
@@ -239,7 +265,6 @@ async function createRedirectRenderResult(req, res, originalHost, redirectUrl, r
239
265
  // `basePath` we treat it as an app-relative redirect;
240
266
  const appRelativeRedirectUrl = getAppRelativeRedirectUrl(basePath, originalHost, redirectUrl, currentPathname);
241
267
  if (appRelativeRedirectUrl) {
242
- var _getRequestMeta;
243
268
  if (!originalHost) {
244
269
  throw Object.defineProperty(new Error('Invariant: Missing `host` header from a forwarded Server Actions request.'), "__NEXT_ERROR_CODE", {
245
270
  value: "E226",
@@ -249,10 +274,31 @@ async function createRedirectRenderResult(req, res, originalHost, redirectUrl, r
249
274
  }
250
275
  const forwardedHeaders = getForwardedHeaders(req, res);
251
276
  forwardedHeaders.set(_approuterheaders.RSC_HEADER, '1');
252
- const proto = ((_getRequestMeta = (0, _requestmeta.getRequestMeta)(req, 'initProtocol')) == null ? void 0 : _getRequestMeta.replace(/:+$/, '')) || 'https';
253
- // For standalone or the serverful mode, use the internal origin directly
254
- // other than the host headers from the request.
255
- const origin = process.env.__NEXT_PRIVATE_ORIGIN || `${proto}://${originalHost.value}`;
277
+ // TODO: Remove __NEXT_PRIVATE_ORIGIN
278
+ let origin = process.env.__NEXT_PRIVATE_ORIGIN;
279
+ if (origin === undefined) {
280
+ const initUrl = (0, _requestmeta.getRequestMeta)(req, 'initURL');
281
+ if (initUrl !== undefined) {
282
+ try {
283
+ const parsedUrl = new URL(initUrl);
284
+ origin = parsedUrl.origin;
285
+ } catch (error) {
286
+ throw Object.defineProperty(new Error('Could not determine origin for forwarded Server Actions request. This can happen if port or hostname are not configured for this server.', {
287
+ cause: error
288
+ }), "__NEXT_ERROR_CODE", {
289
+ value: "E1148",
290
+ enumerable: false,
291
+ configurable: true
292
+ });
293
+ }
294
+ } else {
295
+ throw Object.defineProperty(new _invarianterror.InvariantError('Missing initURL'), "__NEXT_ERROR_CODE", {
296
+ value: "E1147",
297
+ enumerable: false,
298
+ configurable: true
299
+ });
300
+ }
301
+ }
256
302
  const fetchUrl = new URL(`${origin}${appRelativeRedirectUrl.pathname}${appRelativeRedirectUrl.search}`);
257
303
  if (workStore.pendingRevalidatedTags) {
258
304
  var _workStore_incrementalCache_prerenderManifest_preview, _workStore_incrementalCache_prerenderManifest, _workStore_incrementalCache;
@@ -364,7 +410,8 @@ async function handleAction({ req, res, ComponentMod, generateFlight, workStore,
364
410
  }
365
411
  // If the app has no server actions at all, we can 404 early.
366
412
  if (!hasServerActions()) {
367
- return handleUnrecognizedFetchAction(getActionNotFoundError(actionId));
413
+ const error = actionId !== null && !(0, _serverreferenceinfo.mightBeServerReferenceId)(actionId) ? (0, _manifestssingleton.getInvalidServerReferenceIdError)(actionId) : (0, _manifestssingleton.getActionNotFoundError)(actionId);
414
+ return handleUnrecognizedFetchAction(error);
368
415
  }
369
416
  if (workStore.isStaticGeneration) {
370
417
  throw Object.defineProperty(new Error("Invariant: server actions can't be handled during static rendering"), "__NEXT_ERROR_CODE", {
@@ -445,10 +492,14 @@ async function handleAction({ req, res, ComponentMod, generateFlight, workStore,
445
492
  res.setHeader('Cache-Control', 'no-cache, no-store, max-age=0, must-revalidate');
446
493
  const { actionAsyncStorage } = ComponentMod;
447
494
  const actionWasForwarded = Boolean(req.headers['x-action-forwarded']);
448
- if (actionId) {
495
+ // Only attempt to forward if this request has not already been forwarded.
496
+ // Otherwise middleware that rewrites the action POST can cause the receiving
497
+ // worker to forward again, looping indefinitely.
498
+ if (actionId && !actionWasForwarded) {
449
499
  const forwardedWorker = (0, _manifestssingleton.selectWorkerForForwarding)(actionId, page);
450
- // If forwardedWorker is truthy, it means there isn't a worker for the action
451
- // in the current handler, so we forward the request to a worker that has the action.
500
+ // If forwardedWorker is truthy, it means there isn't a worker for the
501
+ // action in the current handler, so we forward the request to a worker that
502
+ // has the action.
452
503
  if (forwardedWorker) {
453
504
  return {
454
505
  type: 'done',
@@ -463,6 +514,10 @@ async function handleAction({ req, res, ComponentMod, generateFlight, workStore,
463
514
  // We only use these for fetch actions -- MPA actions handle them inside `decodeAction`.
464
515
  let actionModId;
465
516
  let boundActionArguments = [];
517
+ const defaultBodySizeLimit = '1 MB';
518
+ const bodySizeLimit = (serverActions == null ? void 0 : serverActions.bodySizeLimit) ?? defaultBodySizeLimit;
519
+ const bodySizeLimitBytes = bodySizeLimit !== defaultBodySizeLimit ? require('next/dist/compiled/bytes').parse(bodySizeLimit) : 1024 * 1024 // 1 MB
520
+ ;
466
521
  if (// The type check here ensures that `req` is correctly typed, and the
467
522
  // environment variable check provides dead code elimination.
468
523
  process.env.NEXT_RUNTIME === 'edge' && (0, _helpers.isWebNextRequest)(req)) {
@@ -473,13 +528,48 @@ async function handleAction({ req, res, ComponentMod, generateFlight, workStore,
473
528
  configurable: true
474
529
  });
475
530
  }
476
- // TODO: add body limit
477
531
  // Use react-server-dom-webpack/server
478
532
  const { createTemporaryReferenceSet, decodeReply, decodeAction, decodeFormState } = ComponentMod;
479
533
  temporaryReferences = createTemporaryReferenceSet();
480
534
  if (isMultipartAction) {
481
535
  // TODO-APP: Add streaming support
482
- const formData = await req.request.formData();
536
+ // Read the body stream with size tracking to enforce bodySizeLimitBytes.
537
+ // We cannot call req.request.formData() directly as that would bypass
538
+ // the body size limit entirely.
539
+ const edgeChunks = [];
540
+ let edgeBodySize = 0;
541
+ const edgeReader = req.body.getReader();
542
+ while(true){
543
+ const { done, value } = await edgeReader.read();
544
+ if (done) break;
545
+ edgeBodySize += value.byteLength;
546
+ if (edgeBodySize > bodySizeLimitBytes) {
547
+ const { ApiError } = require('../api-utils');
548
+ throw Object.defineProperty(new ApiError(413, `Body exceeded ${bodySizeLimit} limit.\n` + `To configure the body size limit for Server Actions, see: https://nextjs.org/docs/app/api-reference/next-config-js/serverActions#bodysizelimit`), "__NEXT_ERROR_CODE", {
549
+ value: "E394",
550
+ enumerable: false,
551
+ configurable: true
552
+ });
553
+ }
554
+ edgeChunks.push(value);
555
+ }
556
+ // Reconstruct a Blob from the buffered chunks and parse formData from it.
557
+ // Note: we must pass the original Content-Type as an explicit header
558
+ // rather than relying on the Blob's `type`. The Blob constructor
559
+ // normalizes `type` to ASCII lowercase per the File API spec, which
560
+ // would lowercase the multipart boundary parameter (e.g.
561
+ // `boundary=----WebKitFormBoundaryAbCdEf`). The body bytes contain the
562
+ // original mixed-case boundary delimiter, so a lowercased boundary
563
+ // would fail to match and `formData()` would throw. An explicit header
564
+ // on the Request takes precedence over the Blob's normalized type.
565
+ const edgeBodyBlob = new Blob(edgeChunks);
566
+ const formData = await new Request('http://n/', {
567
+ method: 'POST',
568
+ headers: {
569
+ 'content-type': req.headers['content-type'] ?? ''
570
+ },
571
+ body: edgeBodyBlob
572
+ }).formData();
483
573
  if (isFetchAction) {
484
574
  // A fetch action with a multipart body.
485
575
  try {
@@ -537,12 +627,22 @@ async function handleAction({ req, res, ComponentMod, generateFlight, workStore,
537
627
  // In practice, this happens if `encodeReply` returned a string instead of FormData,
538
628
  // which can happen for very simple JSON-like values that don't need multiple flight rows.
539
629
  const chunks = [];
630
+ let nonMultipartBodySize = 0;
540
631
  const reader = req.body.getReader();
541
632
  while(true){
542
633
  const { done, value } = await reader.read();
543
634
  if (done) {
544
635
  break;
545
636
  }
637
+ nonMultipartBodySize += value.byteLength;
638
+ if (nonMultipartBodySize > bodySizeLimitBytes) {
639
+ const { ApiError } = require('../api-utils');
640
+ throw Object.defineProperty(new ApiError(413, `Body exceeded ${bodySizeLimit} limit.\n` + `To configure the body size limit for Server Actions, see: https://nextjs.org/docs/app/api-reference/next-config-js/serverActions#bodysizelimit`), "__NEXT_ERROR_CODE", {
641
+ value: "E394",
642
+ enumerable: false,
643
+ configurable: true
644
+ });
645
+ }
546
646
  chunks.push(value);
547
647
  }
548
648
  const actionData = Buffer.concat(chunks).toString('utf-8');
@@ -562,10 +662,6 @@ async function handleAction({ req, res, ComponentMod, generateFlight, workStore,
562
662
  // state prefix in minimal mode), use it instead of req.body
563
663
  const actionBodyFromMeta = (0, _requestmeta.getRequestMeta)(req, 'actionBody');
564
664
  const body = actionBodyFromMeta ? Readable.from(actionBodyFromMeta) : req.body;
565
- const defaultBodySizeLimit = '1 MB';
566
- const bodySizeLimit = (serverActions == null ? void 0 : serverActions.bodySizeLimit) ?? defaultBodySizeLimit;
567
- const bodySizeLimitBytes = bodySizeLimit !== defaultBodySizeLimit ? require('next/dist/compiled/bytes').parse(bodySizeLimit) : 1024 * 1024 // 1 MB
568
- ;
569
665
  let size = 0;
570
666
  const sizeLimitTransform = new Transform({
571
667
  transform (chunk, encoding, callback) {
@@ -917,7 +1013,6 @@ async function executeActionAndPrepareForRender(action, args, workStore, request
917
1013
  * the action came from a different deployment. It could also simply be an invalid POST request that is not a server action.
918
1014
  * In either case, we'll throw an error to be handled by the caller.
919
1015
  */ function getActionModIdOrError(actionId, serverModuleMap) {
920
- var _serverModuleMap_actionId;
921
1016
  // if we're missing the action ID header, we can't do any further processing
922
1017
  if (!actionId) {
923
1018
  throw Object.defineProperty(new _invarianterror.InvariantError("Missing 'next-action' header."), "__NEXT_ERROR_CODE", {
@@ -926,28 +1021,28 @@ async function executeActionAndPrepareForRender(action, args, workStore, request
926
1021
  configurable: true
927
1022
  });
928
1023
  }
929
- const actionModId = (_serverModuleMap_actionId = serverModuleMap[actionId]) == null ? void 0 : _serverModuleMap_actionId.id;
930
- if (!actionModId) {
931
- throw getActionNotFoundError(actionId);
1024
+ const entry = serverModuleMap[actionId];
1025
+ if (entry == null) {
1026
+ // The proxy throws for malformed IDs and IDs that are missing from the
1027
+ // manifest. It only returns undefined when the ID collides with a
1028
+ // well-known property name (e.g. `toString`) that the proxy excludes from
1029
+ // server reference validation so that framework reflection probes don't
1030
+ // throw. Next.js never produces such an ID, so this is almost certainly a
1031
+ // probe with a known-bad ID. Repeat the manifest's throw logic here so the
1032
+ // caller gets a diagnosable error instead of a `TypeError`.
1033
+ throw (0, _serverreferenceinfo.mightBeServerReferenceId)(actionId) ? (0, _manifestssingleton.getActionNotFoundError)(actionId) : (0, _manifestssingleton.getInvalidServerReferenceIdError)(actionId);
932
1034
  }
933
- return actionModId;
934
- }
935
- function getActionNotFoundError(actionId) {
936
- return Object.defineProperty(new Error(`Failed to find Server Action${actionId ? ` "${actionId}"` : ''}. This request might be from an older or newer deployment.\nRead more: https://nextjs.org/docs/messages/failed-to-find-server-action`), "__NEXT_ERROR_CODE", {
937
- value: "E974",
938
- enumerable: false,
939
- configurable: true
940
- });
1035
+ return entry.id;
941
1036
  }
942
1037
  const $ACTION_ = '$ACTION_';
943
1038
  const $ACTION_REF_ = '$ACTION_REF_';
944
1039
  const $ACTION_ID_ = '$ACTION_ID_';
945
- const ACTION_ID_EXPECTED_LENGTH = 42;
946
1040
  /**
947
1041
  * This function mirrors logic inside React's decodeAction and should be kept in sync with that.
948
1042
  * It pre-parses the FormData to ensure that any action IDs referred to are actual action IDs for
949
1043
  * this Next.js application.
950
1044
  */ function areAllActionIdsValid(mpaFormData, serverModuleMap) {
1045
+ let seenActionRefs = 0;
951
1046
  let hasAtLeastOneAction = false;
952
1047
  // Before we attempt to decode the payload for a possible MPA action, assert that all
953
1048
  // action IDs are valid IDs. If not we should disregard the payload
@@ -962,6 +1057,12 @@ const ACTION_ID_EXPECTED_LENGTH = 42;
962
1057
  }
963
1058
  hasAtLeastOneAction = true;
964
1059
  } else if (key.startsWith($ACTION_REF_)) {
1060
+ if (++seenActionRefs > 2) {
1061
+ // We only expect to see at most 2 $ACTION_REF_ fields in the form data:
1062
+ // one from <form action="..." method="post">
1063
+ // and one from <input action="..." type="submit">
1064
+ return false;
1065
+ }
965
1066
  // Bound args case
966
1067
  const actionDescriptorField = $ACTION_ + key.slice($ACTION_REF_.length) + ':0';
967
1068
  const actionFields = mpaFormData.getAll(actionDescriptorField);
@@ -986,10 +1087,13 @@ function isInvalidStringActionDescriptor(actionDescriptor, serverModuleMap) {
986
1087
  return true;
987
1088
  }
988
1089
  const from = ACTION_DESCRIPTOR_ID_PREFIX.length;
989
- const to = from + ACTION_ID_EXPECTED_LENGTH;
1090
+ const to = actionDescriptor.indexOf('"', from);
1091
+ if (to === -1) {
1092
+ return true;
1093
+ }
990
1094
  // We expect actionDescriptor to be '{"id":"<actionId>",...}'
991
1095
  const actionId = actionDescriptor.slice(from, to);
992
- if (actionId.length !== ACTION_ID_EXPECTED_LENGTH || actionDescriptor[to] !== '"') {
1096
+ if (!(0, _serverreferenceinfo.mightBeServerReferenceId)(actionId)) {
993
1097
  return true;
994
1098
  }
995
1099
  const entry = serverModuleMap[actionId];
@@ -1002,11 +1106,12 @@ function isInvalidActionIdFieldName(actionIdFieldName, serverModuleMap) {
1002
1106
  // The field name must always start with $ACTION_ID_ but since it is
1003
1107
  // the id is extracted from the key of the field we have already validated
1004
1108
  // this before entering this function
1005
- if (actionIdFieldName.length !== $ACTION_ID_.length + ACTION_ID_EXPECTED_LENGTH) {
1109
+ const actionId = actionIdFieldName.slice($ACTION_ID_.length);
1110
+ if (!(0, _serverreferenceinfo.mightBeServerReferenceId)(actionId)) {
1006
1111
  // this field name has too few or too many characters
1112
+ // or it is otherwise in the wrong format
1007
1113
  return true;
1008
1114
  }
1009
- const actionId = actionIdFieldName.slice($ACTION_ID_.length);
1010
1115
  const entry = serverModuleMap[actionId];
1011
1116
  if (entry == null) {
1012
1117
  return true;
@@ -3,7 +3,9 @@ Object.defineProperty(exports, "__esModule", {
3
3
  value: true
4
4
  });
5
5
  0 && (module.exports = {
6
+ getActionNotFoundError: null,
6
7
  getClientReferenceManifest: null,
8
+ getInvalidServerReferenceIdError: null,
7
9
  getServerActionsManifest: null,
8
10
  getServerModuleMap: null,
9
11
  selectWorkerForForwarding: null,
@@ -16,9 +18,15 @@ function _export(target, all) {
16
18
  });
17
19
  }
18
20
  _export(exports, {
21
+ getActionNotFoundError: function() {
22
+ return getActionNotFoundError;
23
+ },
19
24
  getClientReferenceManifest: function() {
20
25
  return getClientReferenceManifest;
21
26
  },
27
+ getInvalidServerReferenceIdError: function() {
28
+ return getInvalidServerReferenceIdError;
29
+ },
22
30
  getServerActionsManifest: function() {
23
31
  return getServerActionsManifest;
24
32
  },
@@ -36,7 +44,36 @@ const _invarianterror = require("../../shared/lib/invariant-error");
36
44
  const _apppaths = require("../../shared/lib/router/utils/app-paths");
37
45
  const _pathhasprefix = require("../../shared/lib/router/utils/path-has-prefix");
38
46
  const _removepathprefix = require("../../shared/lib/router/utils/remove-path-prefix");
47
+ const _serverreferenceinfo = require("../../shared/lib/server-reference-info");
48
+ const _reflectutils = require("../../shared/lib/utils/reflect-utils");
39
49
  const _workasyncstorageexternal = require("./work-async-storage.external");
50
+ function getActionNotFoundError(actionId) {
51
+ return Object.defineProperty(new Error(`Failed to find Server Action${actionId ? ` "${actionId}"` : ''}. This request might be from an older or newer deployment.\nRead more: https://nextjs.org/docs/messages/failed-to-find-server-action`), "__NEXT_ERROR_CODE", {
52
+ value: "E974",
53
+ enumerable: false,
54
+ configurable: true
55
+ });
56
+ }
57
+ function getInvalidServerReferenceIdError(id) {
58
+ // `id` is arbitrary client-provided input. Unlike the not-found case, it has
59
+ // not passed the length gate and can reach this error via a malformed server
60
+ // reference in an action payload, so it may be of any length and contain
61
+ // control characters. `JSON.stringify` escapes newlines and quotes so it
62
+ // can't forge log lines, and truncating overly long ids prevents log
63
+ // flooding. Ids at or below the cap are logged in full so that we only add an
64
+ // ellipsis to ids that are meaningfully longer than the truncated length.
65
+ const encoded = JSON.stringify(id.length > MAX_LOGGED_SERVER_REFERENCE_ID_LENGTH ? id.slice(0, TRUNCATED_SERVER_REFERENCE_ID_LENGTH) + '…' : id);
66
+ return Object.defineProperty(new Error(`The Server Reference ID did not match the expected format. Received ${encoded}.\nRead more: https://nextjs.org/docs/messages/failed-to-find-server-action`), "__NEXT_ERROR_CODE", {
67
+ value: "E1144",
68
+ enumerable: false,
69
+ configurable: true
70
+ });
71
+ }
72
+ // Ids at or below the cap are logged in full. Longer ids are truncated to the
73
+ // shorter length and marked with an ellipsis, so the cap leaves headroom over
74
+ // the truncated length rather than ellipsizing ids that are barely too long.
75
+ const MAX_LOGGED_SERVER_REFERENCE_ID_LENGTH = 100;
76
+ const TRUNCATED_SERVER_REFERENCE_ID_LENGTH = 90;
40
77
  // This is a global singleton that is, among other things, also used to
41
78
  // encode/decode bound args of server function closures. This can't be using a
42
79
  // AsyncLocalStorage as it might happen at the module level.
@@ -148,12 +185,23 @@ function createProxiedClientReferenceManifest(clientReferenceManifestsPerRoute)
148
185
  * our manifest contains a lot of internal Next.js data that are relevant to the
149
186
  * runtime, workers, etc. that React doesn't need to know.
150
187
  */ function createServerModuleMap() {
151
- return new Proxy({}, {
152
- get: (_, id)=>{
188
+ return new Proxy(Object.create(null), {
189
+ get: (target, id, receiver)=>{
153
190
  var _getServerActionsManifest__id, _getServerActionsManifest_;
191
+ // React's debug serialization can probe the module map like a plain object.
192
+ // These probes are not server reference lookups.
193
+ if (typeof id !== 'string') {
194
+ return Reflect.get(target, id, receiver);
195
+ }
196
+ if (_reflectutils.wellKnownProperties.has(id)) {
197
+ return Reflect.get(target, id, receiver);
198
+ }
199
+ if (!(0, _serverreferenceinfo.mightBeServerReferenceId)(id)) {
200
+ throw getInvalidServerReferenceIdError(id);
201
+ }
154
202
  const workers = (_getServerActionsManifest_ = getServerActionsManifest()[process.env.NEXT_RUNTIME === 'edge' ? 'edge' : 'node']) == null ? void 0 : (_getServerActionsManifest__id = _getServerActionsManifest_[id]) == null ? void 0 : _getServerActionsManifest__id.workers;
155
203
  if (!workers) {
156
- return undefined;
204
+ throw getActionNotFoundError(id);
157
205
  }
158
206
  const workStore = _workasyncstorageexternal.workAsyncStorage.getStore();
159
207
  let workerEntry;
@@ -170,7 +218,7 @@ function createProxiedClientReferenceManifest(clientReferenceManifestsPerRoute)
170
218
  workerEntry = Object.values(workers).at(0);
171
219
  }
172
220
  if (!workerEntry) {
173
- return undefined;
221
+ throw getActionNotFoundError(id);
174
222
  }
175
223
  const { moduleId, async } = workerEntry;
176
224
  return {
@@ -257,7 +257,6 @@ const experimentalSchema = {
257
257
  imgOptTimeoutInSeconds: _zod.z.number().int().optional(),
258
258
  imgOptMaxInputPixels: _zod.z.number().int().optional(),
259
259
  imgOptSequentialRead: _zod.z.boolean().optional().nullable(),
260
- imgOptSkipMetadata: _zod.z.boolean().optional().nullable(),
261
260
  isrFlushToDisk: _zod.z.boolean().optional(),
262
261
  largePageDataBytes: _zod.z.number().optional(),
263
262
  linkNoTouchStart: _zod.z.boolean().optional(),
@@ -363,6 +362,7 @@ const experimentalSchema = {
363
362
  turbopackImportTypeText: _zod.z.boolean().optional(),
364
363
  turbopackUseBuiltinBabel: _zod.z.boolean().optional(),
365
364
  turbopackUseBuiltinSass: _zod.z.boolean().optional(),
365
+ turbopackLocalPostcssConfig: _zod.z.boolean().optional(),
366
366
  turbopackModuleIds: _zod.z.enum([
367
367
  'named',
368
368
  'deterministic'
@@ -207,7 +207,6 @@ const defaultConfig = Object.freeze({
207
207
  imgOptTimeoutInSeconds: 7,
208
208
  imgOptMaxInputPixels: 268402689,
209
209
  imgOptSequentialRead: null,
210
- imgOptSkipMetadata: null,
211
210
  isrFlushToDisk: true,
212
211
  workerThreads: false,
213
212
  proxyTimeout: undefined,
@@ -313,7 +312,6 @@ function getNextConfigRuntime(config) {
313
312
  imgOptConcurrency: ex.imgOptConcurrency,
314
313
  imgOptMaxInputPixels: ex.imgOptMaxInputPixels,
315
314
  imgOptSequentialRead: ex.imgOptSequentialRead,
316
- imgOptSkipMetadata: ex.imgOptSkipMetadata,
317
315
  imgOptTimeoutInSeconds: ex.imgOptTimeoutInSeconds,
318
316
  proxyClientMaxBodySize: ex.proxyClientMaxBodySize,
319
317
  proxyTimeout: ex.proxyTimeout,
@@ -1106,7 +1106,7 @@ async function applyModifyConfig(config, phase, silent) {
1106
1106
  }
1107
1107
  config = await adapterMod.modifyConfig(config, {
1108
1108
  phase,
1109
- nextVersion: "16.2.6"
1109
+ nextVersion: "16.2.11"
1110
1110
  });
1111
1111
  }
1112
1112
  }
@@ -240,7 +240,7 @@ async function createHotReloaderTurbopack(opts, serverFields, distDir, resetFetc
240
240
  }
241
241
  const hasRewrites = opts.fsChecker.rewrites.afterFiles.length > 0 || opts.fsChecker.rewrites.beforeFiles.length > 0 || opts.fsChecker.rewrites.fallback.length > 0;
242
242
  const hotReloaderSpan = (0, _trace.trace)('hot-reloader', undefined, {
243
- version: "16.2.6"
243
+ version: "16.2.11"
244
244
  });
245
245
  // Ensure the hotReloaderSpan is flushed immediately as it's the parentSpan for all processing
246
246
  // of the current `next dev` invocation.
@@ -294,7 +294,7 @@ async function createHotReloaderTurbopack(opts, serverFields, distDir, resetFetc
294
294
  writeRoutesHashesManifest: false,
295
295
  currentNodeJsVersion,
296
296
  isPersistentCachingEnabled: (0, _utils2.isFileSystemCacheEnabledForDev)(opts.nextConfig),
297
- nextVersion: "16.2.6",
297
+ nextVersion: "16.2.11",
298
298
  serverHmr: serverFastRefresh
299
299
  }, {
300
300
  memoryLimit: (_opts_nextConfig_experimental = opts.nextConfig.experimental) == null ? void 0 : _opts_nextConfig_experimental.turbopackMemoryLimit,
@@ -234,7 +234,7 @@ class HotReloaderWebpack {
234
234
  this.previewProps = previewProps;
235
235
  this.rewrites = rewrites;
236
236
  this.hotReloaderSpan = (0, _trace.trace)('hot-reloader', undefined, {
237
- version: "16.2.6"
237
+ version: "16.2.11"
238
238
  });
239
239
  // Ensure the hotReloaderSpan is flushed immediately as it's the parentSpan for all processing
240
240
  // of the current `next dev` invocation.
@@ -292,7 +292,7 @@ async function deleteFromCacheDir(cacheDir, cacheKey) {
292
292
  _log.error(`Failed to delete cache key ${cacheKey}`, err);
293
293
  });
294
294
  }
295
- async function detectContentType(buffer, skipMetadata, concurrency) {
295
+ async function detectContentType(buffer) {
296
296
  if (buffer.byteLength === 0) {
297
297
  return null;
298
298
  }
@@ -465,21 +465,12 @@ async function detectContentType(buffer, skipMetadata, concurrency) {
465
465
  ].every((b, i)=>buffer[i] === b)) {
466
466
  return JP2;
467
467
  }
468
- let format;
469
- format = (0, _detector.detector)(buffer);
470
- if (!format && !skipMetadata) {
471
- const sharp = getSharp(concurrency);
472
- const meta = await sharp(buffer).metadata().catch((_)=>null);
473
- format = meta == null ? void 0 : meta.format;
474
- }
468
+ const format = (0, _detector.detector)(buffer.subarray(0, 1024));
475
469
  switch(format){
476
- case 'avif':
477
- return AVIF;
478
470
  case 'webp':
479
471
  return WEBP;
480
472
  case 'png':
481
473
  return PNG;
482
- case 'jpeg':
483
474
  case 'jpg':
484
475
  return JPEG;
485
476
  case 'gif':
@@ -492,28 +483,14 @@ async function detectContentType(buffer, skipMetadata, concurrency) {
492
483
  case 'jp2':
493
484
  return JP2;
494
485
  case 'tiff':
495
- case 'tif':
496
486
  return TIFF;
497
- case 'pdf':
498
- return PDF;
499
487
  case 'bmp':
500
488
  return BMP;
501
489
  case 'ico':
502
490
  return ICO;
503
491
  case 'icns':
504
492
  return ICNS;
505
- case 'dcraw':
506
- case 'dz':
507
- case 'exr':
508
- case 'fits':
509
493
  case 'heif':
510
- case 'input':
511
- case 'magick':
512
- case 'openslide':
513
- case 'ppm':
514
- case 'rad':
515
- case 'raw':
516
- case 'v':
517
494
  case 'cur':
518
495
  case 'dds':
519
496
  case 'j2c':
@@ -522,8 +499,12 @@ async function detectContentType(buffer, skipMetadata, concurrency) {
522
499
  case 'psd':
523
500
  case 'tga':
524
501
  case undefined:
502
+ return null // unsupported formats
503
+ ;
525
504
  default:
526
- return null;
505
+ format; // exhaustive check
506
+ return null // impossible to reach
507
+ ;
527
508
  }
528
509
  }
529
510
  class ImageOptimizerCache {
@@ -1072,7 +1053,7 @@ async function imageOptimizer(imageUpstream, paramsResult, nextConfig, opts) {
1072
1053
  const { href, quality, width, mimeType } = paramsResult;
1073
1054
  const { buffer: upstreamBuffer, etag: upstreamEtag } = imageUpstream;
1074
1055
  const maxAge = Math.max(nextConfig.images.minimumCacheTTL, getMaxAge(imageUpstream.cacheControl));
1075
- const upstreamType = await detectContentType(upstreamBuffer, nextConfig.experimental.imgOptSkipMetadata, nextConfig.experimental.imgOptConcurrency);
1056
+ const upstreamType = await detectContentType(upstreamBuffer);
1076
1057
  if (!upstreamType || !upstreamType.startsWith('image/') || upstreamType.includes(',')) {
1077
1058
  if (!opts.silent) {
1078
1059
  _log.error("The requested resource isn't a valid image for", href, 'received', upstreamType);
@@ -85,7 +85,7 @@ function logStartInfo({ networkUrl, appUrl, envInfo, logBundler }) {
85
85
  if (parts.length > 0) {
86
86
  versionSuffix = ` (${parts.join(', ')})`;
87
87
  }
88
- _log.bootstrap(`${(0, _picocolors.bold)((0, _picocolors.purple)(`${_log.prefixes.ready} Next.js ${"16.2.6"}`))}${versionSuffix}`);
88
+ _log.bootstrap(`${(0, _picocolors.bold)((0, _picocolors.purple)(`${_log.prefixes.ready} Next.js ${"16.2.11"}`))}${versionSuffix}`);
89
89
  if (appUrl) {
90
90
  _log.bootstrap(`- Local: ${appUrl}`);
91
91
  }