Skip to content

chore: upgrade rspack 1.6.0#84210

Merged
bgw merged 30 commits intovercel:canaryfrom
SyMind:upgrade-rspack-v1.5.7
Nov 6, 2025
Merged

chore: upgrade rspack 1.6.0#84210
bgw merged 30 commits intovercel:canaryfrom
SyMind:upgrade-rspack-v1.5.7

Conversation

@SyMind
Copy link
Copy Markdown
Contributor

@SyMind SyMind commented Sep 25, 2025

  1. Fixed the incremental update bug in buildChunkGraph.
  2. Fixed a bug in Rspack's built-in CssChunkingPlugin.

For detailed release information, please see https://github.com/web-infra-dev/rspack/releases.

Note: All the faulty Rspack test cases on GitHub, from what I can see, either time out or also produce errors in Rspack version 1.5.0.

@ijjk
Copy link
Copy Markdown
Member

ijjk commented Sep 25, 2025

Failing test suites

Commit: 0b0fc8e | About building and testing Next.js

pnpm test test/integration/edge-runtime-dynamic-code/test/index.test.ts(rspack)

  • Edge route usage of dynamic code evaluation > development mode > shows a warning when running code with eval
  • Edge route usage of dynamic code evaluation > development mode > shows a warning when running WebAssembly.compile
  • Edge route usage of dynamic code evaluation > development mode > shows a warning when running WebAssembly.instantiate with a buffer parameter
  • Middleware usage of dynamic code evaluation > development mode > shows a warning when running code with eval
  • Middleware usage of dynamic code evaluation > development mode > shows a warning when running WebAssembly.compile
  • Middleware usage of dynamic code evaluation > development mode > shows a warning when running WebAssembly.instantiate with a buffer parameter
Expand output

● Middleware usage of dynamic code evaluation › development mode › shows a warning when running code with eval

expect(received).toContain(expected) // indexOf

Expected substring: "Dynamic Code Evaluation (e. g. 'eval', 'new Function') not allowed in Edge Runtime"
Received string:    ""

  103 |           expect(await extractValue(res)).toEqual(100)
  104 |           await waitFor(500)
> 105 |           expect(output).toContain(EVAL_ERROR)
      |                          ^
  106 |           if (title === 'Middleware') {
  107 |             expect(output).toContain(
  108 |               isTurbopack

  at Object.toContain (integration/edge-runtime-dynamic-code/test/index.test.ts:105:26)

● Middleware usage of dynamic code evaluation › development mode › shows a warning when running WebAssembly.compile

expect(received).toContain(expected) // indexOf

Expected substring: "Dynamic WASM code generation (e. g. 'WebAssembly.compile') not allowed in Edge Runtime"
Received string:    ""

  165 |           expect(await extractValue(res)).toEqual(81)
  166 |           await waitFor(500)
> 167 |           expect(output).toContain(WASM_COMPILE_ERROR)
      |                          ^
  168 |           if (title === 'Middleware') {
  169 |             // Turbopack produces incorrect mappings in the sourcemap.
  170 |             expect(output).toContain(

  at Object.toContain (integration/edge-runtime-dynamic-code/test/index.test.ts:167:26)

● Middleware usage of dynamic code evaluation › development mode › shows a warning when running WebAssembly.instantiate with a buffer parameter

expect(received).toContain(expected) // indexOf

Expected substring: "Dynamic WASM code generation ('WebAssembly.instantiate' with a buffer parameter) not allowed in Edge Runtime"
Received string:    ""

  223 |           expect(await extractValue(res)).toEqual(81)
  224 |           await waitFor(500)
> 225 |           expect(output).toContain(WASM_INSTANTIATE_ERROR)
      |                          ^
  226 |           if (title === 'Middleware') {
  227 |             expect(output).toContain(
  228 |               isTurbopack

  at Object.toContain (integration/edge-runtime-dynamic-code/test/index.test.ts:225:26)

● Edge route usage of dynamic code evaluation › development mode › shows a warning when running code with eval

expect(received).toContain(expected) // indexOf

Expected substring: "Dynamic Code Evaluation (e. g. 'eval', 'new Function') not allowed in Edge Runtime"
Received string:    " GET /api/route?case=using-eval 200 in 604ms
"

  103 |           expect(await extractValue(res)).toEqual(100)
  104 |           await waitFor(500)
> 105 |           expect(output).toContain(EVAL_ERROR)
      |                          ^
  106 |           if (title === 'Middleware') {
  107 |             expect(output).toContain(
  108 |               isTurbopack

  at Object.toContain (integration/edge-runtime-dynamic-code/test/index.test.ts:105:26)

● Edge route usage of dynamic code evaluation › development mode › shows a warning when running WebAssembly.compile

expect(received).toContain(expected) // indexOf

Expected substring: "Dynamic WASM code generation (e. g. 'WebAssembly.compile') not allowed in Edge Runtime"
Received string:    " GET /api/route?case=using-webassembly-compile 200 in 5ms
"

  165 |           expect(await extractValue(res)).toEqual(81)
  166 |           await waitFor(500)
> 167 |           expect(output).toContain(WASM_COMPILE_ERROR)
      |                          ^
  168 |           if (title === 'Middleware') {
  169 |             // Turbopack produces incorrect mappings in the sourcemap.
  170 |             expect(output).toContain(

  at Object.toContain (integration/edge-runtime-dynamic-code/test/index.test.ts:167:26)

● Edge route usage of dynamic code evaluation › development mode › shows a warning when running WebAssembly.instantiate with a buffer parameter

expect(received).toContain(expected) // indexOf

Expected substring: "Dynamic WASM code generation ('WebAssembly.instantiate' with a buffer parameter) not allowed in Edge Runtime"
Received string:    " GET /api/route?case=using-webassembly-instantiate-with-buffer 200 in 7ms
"

  223 |           expect(await extractValue(res)).toEqual(81)
  224 |           await waitFor(500)
> 225 |           expect(output).toContain(WASM_INSTANTIATE_ERROR)
      |                          ^
  226 |           if (title === 'Middleware') {
  227 |             expect(output).toContain(
  228 |               isTurbopack

  at Object.toContain (integration/edge-runtime-dynamic-code/test/index.test.ts:225:26)

pnpm test test/integration/edge-runtime-configurable-guards/test/index.test.ts(rspack)

  • Edge runtime configurable guards > Edge API using lib with allowed, used dynamic code > still warns in dev at runtime
  • Edge runtime configurable guards > Edge API using lib with unallowed, used dynamic code > warns in dev at runtime
  • Edge runtime configurable guards > Edge API with allowed, used dynamic code > still warns in dev at runtime
  • Edge runtime configurable guards > Middleware using lib with allowed, used dynamic code > still warns in dev at runtime
  • Edge runtime configurable guards > Middleware using lib with unallowed, used dynamic code > warns in dev at runtime
  • Edge runtime configurable guards > Middleware with allowed, used dynamic code > still warns in dev at runtime
  • Edge runtime configurable guards > Multiple functions with different configurations > warns in dev for allowed code
  • Edge runtime configurable guards > Multiple functions with different configurations > warns in dev for unallowed code
Expand output

● Edge runtime configurable guards › Multiple functions with different configurations › warns in dev for allowed code

expect(received).toContain(expected) // indexOf

Expected substring: "Dynamic Code Evaluation (e. g. 'eval', 'new Function') not allowed in Edge Runtime"
Received string:    "   ▲ Next.js 16.0.2-canary.7 (Rspack)
   - Local:         http://[::1]:36069
   - Network:       http://[::]:36069·
 ✓ Starting...
 ⚠ The \"middleware\" file convention is deprecated. Please use \"proxy\" instead. Learn more: https://nextjs.org/docs/messages/middleware-to-proxy
 ✓ Ready in 766ms
 GET / 200 in 371ms (compile: 280ms, proxy.ts: 64ms, render: 27ms)
"

  92 |       expect(res.status).toBe(200)
  93 |       await retry(async () => {
> 94 |         expect(context.logs.output).toContain(
     |                                     ^
  95 |           `Dynamic Code Evaluation (e. g. 'eval', 'new Function') not allowed in Edge Runtime`
  96 |         )
  97 |       })

  at toContain (integration/edge-runtime-configurable-guards/test/index.test.ts:94:37)
  at fn (lib/next-test-utils.ts:797:20)
  at Object.<anonymous> (integration/edge-runtime-configurable-guards/test/index.test.ts:93:7)

● Edge runtime configurable guards › Multiple functions with different configurations › warns in dev for unallowed code

expect(received).toContain(expected) // indexOf

Expected substring: "Dynamic Code Evaluation (e. g. 'eval', 'new Function') not allowed in Edge Runtime"
Received string:    "   ▲ Next.js 16.0.2-canary.7 (Rspack)
   - Local:         http://[::1]:35359
   - Network:       http://[::]:35359·
 ✓ Starting...
 ⚠ The \"middleware\" file convention is deprecated. Please use \"proxy\" instead. Learn more: https://nextjs.org/docs/messages/middleware-to-proxy
 ✓ Ready in 694ms
 GET /api/route 200 in 216ms (proxy.ts: 66ms)
"

  103 |       expect(res.status).toBe(200)
  104 |       await retry(async () => {
> 105 |         expect(context.logs.output).toContain(
      |                                     ^
  106 |           `Dynamic Code Evaluation (e. g. 'eval', 'new Function') not allowed in Edge Runtime`
  107 |         )
  108 |       })

  at toContain (integration/edge-runtime-configurable-guards/test/index.test.ts:105:37)
  at fn (lib/next-test-utils.ts:797:20)
  at Object.<anonymous> (integration/edge-runtime-configurable-guards/test/index.test.ts:104:7)

● Edge runtime configurable guards › Edge API with allowed, used dynamic code › still warns in dev at runtime

expect(received).toContain(expected) // indexOf

Expected substring: "Dynamic Code Evaluation (e. g. 'eval', 'new Function') not allowed in Edge Runtime"
Received string:    "   ▲ Next.js 16.0.2-canary.7 (Rspack)
   - Local:         http://[::1]:34279
   - Network:       http://[::]:34279·
 ✓ Starting...
 ⚠ The \"middleware\" file convention is deprecated. Please use \"proxy\" instead. Learn more: https://nextjs.org/docs/messages/middleware-to-proxy
 ✓ Ready in 721ms
 GET /api/route 200 in 226ms
"

  228 |       expect(res.status).toBe(200)
  229 |       // eslint-disable-next-line jest/no-standalone-expect
> 230 |       expect(context.logs.output).toContain(
      |                                   ^
  231 |         `Dynamic Code Evaluation (e. g. 'eval', 'new Function') not allowed in Edge Runtime`
  232 |       )
  233 |     })

  at Object.toContain (integration/edge-runtime-configurable-guards/test/index.test.ts:230:35)

● Edge runtime configurable guards › Middleware with allowed, used dynamic code › still warns in dev at runtime

expect(received).toContain(expected) // indexOf

Expected substring: "Dynamic Code Evaluation (e. g. 'eval', 'new Function') not allowed in Edge Runtime"
Received string:    "   ▲ Next.js 16.0.2-canary.7 (Rspack)
   - Local:         http://[::1]:44773
   - Network:       http://[::]:44773·
 ✓ Starting...
 ⚠ The \"middleware\" file convention is deprecated. Please use \"proxy\" instead. Learn more: https://nextjs.org/docs/messages/middleware-to-proxy
 ✓ Ready in 688ms
 GET / 200 in 352ms (compile: 266ms, proxy.ts: 59ms, render: 27ms)
"

  228 |       expect(res.status).toBe(200)
  229 |       // eslint-disable-next-line jest/no-standalone-expect
> 230 |       expect(context.logs.output).toContain(
      |                                   ^
  231 |         `Dynamic Code Evaluation (e. g. 'eval', 'new Function') not allowed in Edge Runtime`
  232 |       )
  233 |     })

  at Object.toContain (integration/edge-runtime-configurable-guards/test/index.test.ts:230:35)

● Edge runtime configurable guards › Edge API using lib with allowed, used dynamic code › still warns in dev at runtime

expect(received).toContain(expected) // indexOf

Expected substring: "Dynamic Code Evaluation (e. g. 'eval', 'new Function') not allowed in Edge Runtime"
Received string:    "   ▲ Next.js 16.0.2-canary.7 (Rspack)
   - Local:         http://[::1]:33675
   - Network:       http://[::]:33675·
 ✓ Starting...
 ⚠ The \"middleware\" file convention is deprecated. Please use \"proxy\" instead. Learn more: https://nextjs.org/docs/messages/middleware-to-proxy
 ✓ Ready in 762ms
 GET /api/route 200 in 237ms
"

  228 |       expect(res.status).toBe(200)
  229 |       // eslint-disable-next-line jest/no-standalone-expect
> 230 |       expect(context.logs.output).toContain(
      |                                   ^
  231 |         `Dynamic Code Evaluation (e. g. 'eval', 'new Function') not allowed in Edge Runtime`
  232 |       )
  233 |     })

  at Object.toContain (integration/edge-runtime-configurable-guards/test/index.test.ts:230:35)

● Edge runtime configurable guards › Middleware using lib with allowed, used dynamic code › still warns in dev at runtime

expect(received).toContain(expected) // indexOf

Expected substring: "Dynamic Code Evaluation (e. g. 'eval', 'new Function') not allowed in Edge Runtime"
Received string:    "   ▲ Next.js 16.0.2-canary.7 (Rspack)
   - Local:         http://[::1]:36207
   - Network:       http://[::]:36207·
 ✓ Starting...
 ⚠ The \"middleware\" file convention is deprecated. Please use \"proxy\" instead. Learn more: https://nextjs.org/docs/messages/middleware-to-proxy
 ✓ Ready in 687ms
 GET / 200 in 344ms (compile: 261ms, proxy.ts: 59ms, render: 23ms)
"

  228 |       expect(res.status).toBe(200)
  229 |       // eslint-disable-next-line jest/no-standalone-expect
> 230 |       expect(context.logs.output).toContain(
      |                                   ^
  231 |         `Dynamic Code Evaluation (e. g. 'eval', 'new Function') not allowed in Edge Runtime`
  232 |       )
  233 |     })

  at Object.toContain (integration/edge-runtime-configurable-guards/test/index.test.ts:230:35)

● Edge runtime configurable guards › Edge API using lib with unallowed, used dynamic code › warns in dev at runtime

expect(received).toContain(expected) // indexOf

Expected substring: "Dynamic Code Evaluation (e. g. 'eval', 'new Function') not allowed in Edge Runtime"
Received string:    "   ▲ Next.js 16.0.2-canary.7 (Rspack)
   - Local:         http://[::1]:33447
   - Network:       http://[::]:33447·
 ✓ Starting...
 ⚠ The \"middleware\" file convention is deprecated. Please use \"proxy\" instead. Learn more: https://nextjs.org/docs/messages/middleware-to-proxy
 ✓ Ready in 702ms
 GET /api/route 200 in 197ms
"

  424 |       expect(res.status).toBe(200)
  425 |       // eslint-disable-next-line jest/no-standalone-expect
> 426 |       expect(context.logs.output).toContain(
      |                                   ^
  427 |         `Dynamic Code Evaluation (e. g. 'eval', 'new Function') not allowed in Edge Runtime`
  428 |       )
  429 |     })

  at Object.toContain (integration/edge-runtime-configurable-guards/test/index.test.ts:426:35)

● Edge runtime configurable guards › Middleware using lib with unallowed, used dynamic code › warns in dev at runtime

expect(received).toContain(expected) // indexOf

Expected substring: "Dynamic Code Evaluation (e. g. 'eval', 'new Function') not allowed in Edge Runtime"
Received string:    "   ▲ Next.js 16.0.2-canary.7 (Rspack)
   - Local:         http://[::1]:44021
   - Network:       http://[::]:44021·
 ✓ Starting...
 ⚠ The \"middleware\" file convention is deprecated. Please use \"proxy\" instead. Learn more: https://nextjs.org/docs/messages/middleware-to-proxy
 ✓ Ready in 647ms
 GET / 200 in 293ms (compile: 220ms, proxy.ts: 52ms, render: 22ms)
"

  424 |       expect(res.status).toBe(200)
  425 |       // eslint-disable-next-line jest/no-standalone-expect
> 426 |       expect(context.logs.output).toContain(
      |                                   ^
  427 |         `Dynamic Code Evaluation (e. g. 'eval', 'new Function') not allowed in Edge Runtime`
  428 |       )
  429 |     })

  at Object.toContain (integration/edge-runtime-configurable-guards/test/index.test.ts:426:35)

pnpm test test/integration/env-config/test/index.test.ts(rspack)

  • Env Config > development mode > with hot reload > should trigger HMR correctly when NEXT_PUBLIC_ env is changed
Expand output

● Env Config › development mode › with hot reload › should trigger HMR correctly when NEXT_PUBLIC_ env is changed

TIMED OUT: replaced

another

undefined

  724 |   }
  725 |   console.error('TIMED OUT CHECK: ', { regex, content, lastErr })
> 726 |   throw new Error('TIMED OUT: ' + regex + '\n\n' + content + '\n\n' + lastErr)
      |         ^
  727 | }
  728 |
  729 | export class File {

  at check (lib/next-test-utils.ts:726:9)
  at Object.<anonymous> (integration/env-config/test/index.test.ts:315:13)

pnpm test test/integration/css-features/test/css-modules.test.ts(rspack)

  • CSS Modules: Importing Invalid Global CSS > production mode > should fail to build
Expand output

● CSS Modules: Importing Invalid Global CSS › production mode › should fail to build

expect(received).toContain(expected) // indexOf

Expected substring: "pages/styles.css"
Received string:    "Failed to compile.·
× Module build failed:
  ╰─▶   × CssSyntaxError
        │
        │ (1:1) Selector \"a\" is not pure (pure selectors must contain at least one local class or id)
        │
        │ > 1 | a {
        │     | ^
        │   2 |   all: initial;
        │   3 | }
        │·
./pages/styles.module.css
  × Module build failed:
  ╰─▶   × Error: Module build failed:
        │     at /root/actions-runner/_work/next.js/next.js/node_modules/.pnpm/@rspack+core@1.6.0_@swc+helpers@0.5.15/node_modules/@rspack/core/dist/index.js:3290:107·······
Import trace for requested module:
./pages/styles.module.css··
> Build failed because of Rspack errors
"

  139 |           expect(code).not.toBe(0)
  140 |           expect(stderr).toContain('Failed to compile')
> 141 |           expect(stderr).toContain('pages/styles.css')
      |                          ^
  142 |           expect(stderr).toContain('Selector "a" is not pure')
  143 |         })
  144 |       }

  at Object.toContain (integration/css-features/test/css-modules.test.ts:141:26)

pnpm test test/integration/required-server-files-ssr-404/test/index.test.ts(rspack)

  • Required Server Files > production mode > should output required-server-files manifest correctly
  • Required Server Files > production mode > should render SSR page correctly
  • Required Server Files > production mode > should render dynamic SSR page correctly
  • Required Server Files > production mode > should render fallback page correctly
  • Required Server Files > production mode > should render SSR page correctly with x-matched-path
  • Required Server Files > production mode > should render dynamic SSR page correctly with x-matched-path
  • Required Server Files > production mode > should render fallback page correctly with x-matched-path and routes-matches
  • Required Server Files > production mode > should return data correctly with x-matched-path
  • Required Server Files > production mode > should render fallback optional catch-all route correctly with x-matched-path and routes-matches
  • Required Server Files > production mode > should return data correctly with x-matched-path for optional catch-all route
  • Required Server Files > production mode > should not apply trailingSlash redirect
  • Required Server Files > production mode > should normalize catch-all rewrite query values correctly
  • Required Server Files > production mode > should bubble error correctly for gip page
  • Required Server Files > production mode > should bubble error correctly for gssp page
  • Required Server Files > production mode > should bubble error correctly for gsp page
  • Required Server Files > production mode > should normalize optional values correctly for SSP page
  • Required Server Files > production mode > should normalize optional values correctly for SSG page
  • Required Server Files > production mode > should normalize optional values correctly for API page
  • Required Server Files > production mode > should match the index page correctly
  • Required Server Files > production mode > should match the root dynamic page correctly
  • Required Server Files > production mode > should handle 404s properly
  • Required Server Files > production mode > partial optional catch-all route > should render /partial-catch-all/hello.com
  • Required Server Files > production mode > partial optional catch-all route > should render /partial-catch-all/hello.com/hello
  • Required Server Files > production mode > partial optional catch-all route > should render /partial-catch-all/hello.com/hello/world
Expand output

● Required Server Files › production mode › should output required-server-files manifest correctly

command failed with code 1 signal null
   ▲ Next.js 16.0.2-canary.7 (Rspack)

   Running TypeScript ...
   Creating an optimized production build ...
 ✓ Compiled successfully in 1775.0ms
   Collecting page data using 19 workers ...
set config 0.5601678534363583 { hello: 'world' }
set config 0.8285671954448199 { hello: 'world' }
set config 0.48069996468793774 { hello: 'world' }
set config 0.985940160241207 { hello: 'world' }
set config 0.4375868203756921 { hello: 'world' }
set config 0.5307078233981295 { hello: 'world' }
set config 0.6229278098136941 { hello: 'world' }
set config 0.3733185992315238 { hello: 'world' }
set config 0.8491867233709078 { hello: 'world' }
set config 0.47393844613455505 { hello: 'world' }
set config 0.5239445508432738 { hello: 'world' }
set config 0.5869758601568276 { hello: 'world' }
set config 0.7591055516899177 { hello: 'world' }
returning config 0.5869758601568276 { hello: 'world' }
set config 0.636377088831211 { hello: 'world' }
Warning: You have opted-out of Automatic Static Optimization due to `getInitialProps` in `pages/_app`. This does not opt-out pages with `getStaticProps`
Read more: https://nextjs.org/docs/messages/opt-out-auto-static-optimization

   Generating static pages using 19 workers (0/9) ...
set config 0.9296265642919235 { hello: 'world' }
   Generating static pages using 19 workers (2/9) 
   Generating static pages using 19 workers (4/9) 
   Generating static pages using 19 workers (6/9) 
 ✓ Generating static pages using 19 workers (9/9) in 727.8ms
   Finalizing page optimization ...
   Collecting build traces ...

> Build error occurred
[Error: ENOENT: no such file or directory, copyfile '/root/actions-runner/_work/next.js/next.js/test/integration/required-server-files-ssr-404/.next/lock' -> '/root/actions-runner/_work/next.js/next.js/test/integration/required-server-files-ssr-404/.next/standalone/test/integration/required-server-files-ssr-404/.next/lock'] {
  errno: -2,
  code: 'ENOENT',
  syscall: 'copyfile',
  path: '/root/actions-runner/_work/next.js/next.js/test/integration/required-server-files-ssr-404/.next/lock',
  dest: '/root/actions-runner/_work/next.js/next.js/test/integration/required-server-files-ssr-404/.next/standalone/test/integration/required-server-files-ssr-404/.next/lock'
}

  323 |       ) {
  324 |         return reject(
> 325 |           new Error(
      |           ^
  326 |             `command failed with code ${code} signal ${signal}\n${mergedStdio}`
  327 |           )
  328 |         )

  at ChildProcess.<anonymous> (lib/next-test-utils.ts:325:11)

● Required Server Files › production mode › should render SSR page correctly

command failed with code 1 signal null
   ▲ Next.js 16.0.2-canary.7 (Rspack)

   Running TypeScript ...
   Creating an optimized production build ...
 ✓ Compiled successfully in 1775.0ms
   Collecting page data using 19 workers ...
set config 0.5601678534363583 { hello: 'world' }
set config 0.8285671954448199 { hello: 'world' }
set config 0.48069996468793774 { hello: 'world' }
set config 0.985940160241207 { hello: 'world' }
set config 0.4375868203756921 { hello: 'world' }
set config 0.5307078233981295 { hello: 'world' }
set config 0.6229278098136941 { hello: 'world' }
set config 0.3733185992315238 { hello: 'world' }
set config 0.8491867233709078 { hello: 'world' }
set config 0.47393844613455505 { hello: 'world' }
set config 0.5239445508432738 { hello: 'world' }
set config 0.5869758601568276 { hello: 'world' }
set config 0.7591055516899177 { hello: 'world' }
returning config 0.5869758601568276 { hello: 'world' }
set config 0.636377088831211 { hello: 'world' }
Warning: You have opted-out of Automatic Static Optimization due to `getInitialProps` in `pages/_app`. This does not opt-out pages with `getStaticProps`
Read more: https://nextjs.org/docs/messages/opt-out-auto-static-optimization

   Generating static pages using 19 workers (0/9) ...
set config 0.9296265642919235 { hello: 'world' }
   Generating static pages using 19 workers (2/9) 
   Generating static pages using 19 workers (4/9) 
   Generating static pages using 19 workers (6/9) 
 ✓ Generating static pages using 19 workers (9/9) in 727.8ms
   Finalizing page optimization ...
   Collecting build traces ...

> Build error occurred
[Error: ENOENT: no such file or directory, copyfile '/root/actions-runner/_work/next.js/next.js/test/integration/required-server-files-ssr-404/.next/lock' -> '/root/actions-runner/_work/next.js/next.js/test/integration/required-server-files-ssr-404/.next/standalone/test/integration/required-server-files-ssr-404/.next/lock'] {
  errno: -2,
  code: 'ENOENT',
  syscall: 'copyfile',
  path: '/root/actions-runner/_work/next.js/next.js/test/integration/required-server-files-ssr-404/.next/lock',
  dest: '/root/actions-runner/_work/next.js/next.js/test/integration/required-server-files-ssr-404/.next/standalone/test/integration/required-server-files-ssr-404/.next/lock'
}

  323 |       ) {
  324 |         return reject(
> 325 |           new Error(
      |           ^
  326 |             `command failed with code ${code} signal ${signal}\n${mergedStdio}`
  327 |           )
  328 |         )

  at ChildProcess.<anonymous> (lib/next-test-utils.ts:325:11)

● Required Server Files › production mode › should render dynamic SSR page correctly

command failed with code 1 signal null
   ▲ Next.js 16.0.2-canary.7 (Rspack)

   Running TypeScript ...
   Creating an optimized production build ...
 ✓ Compiled successfully in 1775.0ms
   Collecting page data using 19 workers ...
set config 0.5601678534363583 { hello: 'world' }
set config 0.8285671954448199 { hello: 'world' }
set config 0.48069996468793774 { hello: 'world' }
set config 0.985940160241207 { hello: 'world' }
set config 0.4375868203756921 { hello: 'world' }
set config 0.5307078233981295 { hello: 'world' }
set config 0.6229278098136941 { hello: 'world' }
set config 0.3733185992315238 { hello: 'world' }
set config 0.8491867233709078 { hello: 'world' }
set config 0.47393844613455505 { hello: 'world' }
set config 0.5239445508432738 { hello: 'world' }
set config 0.5869758601568276 { hello: 'world' }
set config 0.7591055516899177 { hello: 'world' }
returning config 0.5869758601568276 { hello: 'world' }
set config 0.636377088831211 { hello: 'world' }
Warning: You have opted-out of Automatic Static Optimization due to `getInitialProps` in `pages/_app`. This does not opt-out pages with `getStaticProps`
Read more: https://nextjs.org/docs/messages/opt-out-auto-static-optimization

   Generating static pages using 19 workers (0/9) ...
set config 0.9296265642919235 { hello: 'world' }
   Generating static pages using 19 workers (2/9) 
   Generating static pages using 19 workers (4/9) 
   Generating static pages using 19 workers (6/9) 
 ✓ Generating static pages using 19 workers (9/9) in 727.8ms
   Finalizing page optimization ...
   Collecting build traces ...

> Build error occurred
[Error: ENOENT: no such file or directory, copyfile '/root/actions-runner/_work/next.js/next.js/test/integration/required-server-files-ssr-404/.next/lock' -> '/root/actions-runner/_work/next.js/next.js/test/integration/required-server-files-ssr-404/.next/standalone/test/integration/required-server-files-ssr-404/.next/lock'] {
  errno: -2,
  code: 'ENOENT',
  syscall: 'copyfile',
  path: '/root/actions-runner/_work/next.js/next.js/test/integration/required-server-files-ssr-404/.next/lock',
  dest: '/root/actions-runner/_work/next.js/next.js/test/integration/required-server-files-ssr-404/.next/standalone/test/integration/required-server-files-ssr-404/.next/lock'
}

  323 |       ) {
  324 |         return reject(
> 325 |           new Error(
      |           ^
  326 |             `command failed with code ${code} signal ${signal}\n${mergedStdio}`
  327 |           )
  328 |         )

  at ChildProcess.<anonymous> (lib/next-test-utils.ts:325:11)

● Required Server Files › production mode › should render fallback page correctly

command failed with code 1 signal null
   ▲ Next.js 16.0.2-canary.7 (Rspack)

   Running TypeScript ...
   Creating an optimized production build ...
 ✓ Compiled successfully in 1775.0ms
   Collecting page data using 19 workers ...
set config 0.5601678534363583 { hello: 'world' }
set config 0.8285671954448199 { hello: 'world' }
set config 0.48069996468793774 { hello: 'world' }
set config 0.985940160241207 { hello: 'world' }
set config 0.4375868203756921 { hello: 'world' }
set config 0.5307078233981295 { hello: 'world' }
set config 0.6229278098136941 { hello: 'world' }
set config 0.3733185992315238 { hello: 'world' }
set config 0.8491867233709078 { hello: 'world' }
set config 0.47393844613455505 { hello: 'world' }
set config 0.5239445508432738 { hello: 'world' }
set config 0.5869758601568276 { hello: 'world' }
set config 0.7591055516899177 { hello: 'world' }
returning config 0.5869758601568276 { hello: 'world' }
set config 0.636377088831211 { hello: 'world' }
Warning: You have opted-out of Automatic Static Optimization due to `getInitialProps` in `pages/_app`. This does not opt-out pages with `getStaticProps`
Read more: https://nextjs.org/docs/messages/opt-out-auto-static-optimization

   Generating static pages using 19 workers (0/9) ...
set config 0.9296265642919235 { hello: 'world' }
   Generating static pages using 19 workers (2/9) 
   Generating static pages using 19 workers (4/9) 
   Generating static pages using 19 workers (6/9) 
 ✓ Generating static pages using 19 workers (9/9) in 727.8ms
   Finalizing page optimization ...
   Collecting build traces ...

> Build error occurred
[Error: ENOENT: no such file or directory, copyfile '/root/actions-runner/_work/next.js/next.js/test/integration/required-server-files-ssr-404/.next/lock' -> '/root/actions-runner/_work/next.js/next.js/test/integration/required-server-files-ssr-404/.next/standalone/test/integration/required-server-files-ssr-404/.next/lock'] {
  errno: -2,
  code: 'ENOENT',
  syscall: 'copyfile',
  path: '/root/actions-runner/_work/next.js/next.js/test/integration/required-server-files-ssr-404/.next/lock',
  dest: '/root/actions-runner/_work/next.js/next.js/test/integration/required-server-files-ssr-404/.next/standalone/test/integration/required-server-files-ssr-404/.next/lock'
}

  323 |       ) {
  324 |         return reject(
> 325 |           new Error(
      |           ^
  326 |             `command failed with code ${code} signal ${signal}\n${mergedStdio}`
  327 |           )
  328 |         )

  at ChildProcess.<anonymous> (lib/next-test-utils.ts:325:11)

● Required Server Files › production mode › should render SSR page correctly with x-matched-path

command failed with code 1 signal null
   ▲ Next.js 16.0.2-canary.7 (Rspack)

   Running TypeScript ...
   Creating an optimized production build ...
 ✓ Compiled successfully in 1775.0ms
   Collecting page data using 19 workers ...
set config 0.5601678534363583 { hello: 'world' }
set config 0.8285671954448199 { hello: 'world' }
set config 0.48069996468793774 { hello: 'world' }
set config 0.985940160241207 { hello: 'world' }
set config 0.4375868203756921 { hello: 'world' }
set config 0.5307078233981295 { hello: 'world' }
set config 0.6229278098136941 { hello: 'world' }
set config 0.3733185992315238 { hello: 'world' }
set config 0.8491867233709078 { hello: 'world' }
set config 0.47393844613455505 { hello: 'world' }
set config 0.5239445508432738 { hello: 'world' }
set config 0.5869758601568276 { hello: 'world' }
set config 0.7591055516899177 { hello: 'world' }
returning config 0.5869758601568276 { hello: 'world' }
set config 0.636377088831211 { hello: 'world' }
Warning: You have opted-out of Automatic Static Optimization due to `getInitialProps` in `pages/_app`. This does not opt-out pages with `getStaticProps`
Read more: https://nextjs.org/docs/messages/opt-out-auto-static-optimization

   Generating static pages using 19 workers (0/9) ...
set config 0.9296265642919235 { hello: 'world' }
   Generating static pages using 19 workers (2/9) 
   Generating static pages using 19 workers (4/9) 
   Generating static pages using 19 workers (6/9) 
 ✓ Generating static pages using 19 workers (9/9) in 727.8ms
   Finalizing page optimization ...
   Collecting build traces ...

> Build error occurred
[Error: ENOENT: no such file or directory, copyfile '/root/actions-runner/_work/next.js/next.js/test/integration/required-server-files-ssr-404/.next/lock' -> '/root/actions-runner/_work/next.js/next.js/test/integration/required-server-files-ssr-404/.next/standalone/test/integration/required-server-files-ssr-404/.next/lock'] {
  errno: -2,
  code: 'ENOENT',
  syscall: 'copyfile',
  path: '/root/actions-runner/_work/next.js/next.js/test/integration/required-server-files-ssr-404/.next/lock',
  dest: '/root/actions-runner/_work/next.js/next.js/test/integration/required-server-files-ssr-404/.next/standalone/test/integration/required-server-files-ssr-404/.next/lock'
}

  323 |       ) {
  324 |         return reject(
> 325 |           new Error(
      |           ^
  326 |             `command failed with code ${code} signal ${signal}\n${mergedStdio}`
  327 |           )
  328 |         )

  at ChildProcess.<anonymous> (lib/next-test-utils.ts:325:11)

● Required Server Files › production mode › should render dynamic SSR page correctly with x-matched-path

command failed with code 1 signal null
   ▲ Next.js 16.0.2-canary.7 (Rspack)

   Running TypeScript ...
   Creating an optimized production build ...
 ✓ Compiled successfully in 1775.0ms
   Collecting page data using 19 workers ...
set config 0.5601678534363583 { hello: 'world' }
set config 0.8285671954448199 { hello: 'world' }
set config 0.48069996468793774 { hello: 'world' }
set config 0.985940160241207 { hello: 'world' }
set config 0.4375868203756921 { hello: 'world' }
set config 0.5307078233981295 { hello: 'world' }
set config 0.6229278098136941 { hello: 'world' }
set config 0.3733185992315238 { hello: 'world' }
set config 0.8491867233709078 { hello: 'world' }
set config 0.47393844613455505 { hello: 'world' }
set config 0.5239445508432738 { hello: 'world' }
set config 0.5869758601568276 { hello: 'world' }
set config 0.7591055516899177 { hello: 'world' }
returning config 0.5869758601568276 { hello: 'world' }
set config 0.636377088831211 { hello: 'world' }
Warning: You have opted-out of Automatic Static Optimization due to `getInitialProps` in `pages/_app`. This does not opt-out pages with `getStaticProps`
Read more: https://nextjs.org/docs/messages/opt-out-auto-static-optimization

   Generating static pages using 19 workers (0/9) ...
set config 0.9296265642919235 { hello: 'world' }
   Generating static pages using 19 workers (2/9) 
   Generating static pages using 19 workers (4/9) 
   Generating static pages using 19 workers (6/9) 
 ✓ Generating static pages using 19 workers (9/9) in 727.8ms
   Finalizing page optimization ...
   Collecting build traces ...

> Build error occurred
[Error: ENOENT: no such file or directory, copyfile '/root/actions-runner/_work/next.js/next.js/test/integration/required-server-files-ssr-404/.next/lock' -> '/root/actions-runner/_work/next.js/next.js/test/integration/required-server-files-ssr-404/.next/standalone/test/integration/required-server-files-ssr-404/.next/lock'] {
  errno: -2,
  code: 'ENOENT',
  syscall: 'copyfile',
  path: '/root/actions-runner/_work/next.js/next.js/test/integration/required-server-files-ssr-404/.next/lock',
  dest: '/root/actions-runner/_work/next.js/next.js/test/integration/required-server-files-ssr-404/.next/standalone/test/integration/required-server-files-ssr-404/.next/lock'
}

  323 |       ) {
  324 |         return reject(
> 325 |           new Error(
      |           ^
  326 |             `command failed with code ${code} signal ${signal}\n${mergedStdio}`
  327 |           )
  328 |         )

  at ChildProcess.<anonymous> (lib/next-test-utils.ts:325:11)

● Required Server Files › production mode › should render fallback page correctly with x-matched-path and routes-matches

command failed with code 1 signal null
   ▲ Next.js 16.0.2-canary.7 (Rspack)

   Running TypeScript ...
   Creating an optimized production build ...
 ✓ Compiled successfully in 1775.0ms
   Collecting page data using 19 workers ...
set config 0.5601678534363583 { hello: 'world' }
set config 0.8285671954448199 { hello: 'world' }
set config 0.48069996468793774 { hello: 'world' }
set config 0.985940160241207 { hello: 'world' }
set config 0.4375868203756921 { hello: 'world' }
set config 0.5307078233981295 { hello: 'world' }
set config 0.6229278098136941 { hello: 'world' }
set config 0.3733185992315238 { hello: 'world' }
set config 0.8491867233709078 { hello: 'world' }
set config 0.47393844613455505 { hello: 'world' }
set config 0.5239445508432738 { hello: 'world' }
set config 0.5869758601568276 { hello: 'world' }
set config 0.7591055516899177 { hello: 'world' }
returning config 0.5869758601568276 { hello: 'world' }
set config 0.636377088831211 { hello: 'world' }
Warning: You have opted-out of Automatic Static Optimization due to `getInitialProps` in `pages/_app`. This does not opt-out pages with `getStaticProps`
Read more: https://nextjs.org/docs/messages/opt-out-auto-static-optimization

   Generating static pages using 19 workers (0/9) ...
set config 0.9296265642919235 { hello: 'world' }
   Generating static pages using 19 workers (2/9) 
   Generating static pages using 19 workers (4/9) 
   Generating static pages using 19 workers (6/9) 
 ✓ Generating static pages using 19 workers (9/9) in 727.8ms
   Finalizing page optimization ...
   Collecting build traces ...

> Build error occurred
[Error: ENOENT: no such file or directory, copyfile '/root/actions-runner/_work/next.js/next.js/test/integration/required-server-files-ssr-404/.next/lock' -> '/root/actions-runner/_work/next.js/next.js/test/integration/required-server-files-ssr-404/.next/standalone/test/integration/required-server-files-ssr-404/.next/lock'] {
  errno: -2,
  code: 'ENOENT',
  syscall: 'copyfile',
  path: '/root/actions-runner/_work/next.js/next.js/test/integration/required-server-files-ssr-404/.next/lock',
  dest: '/root/actions-runner/_work/next.js/next.js/test/integration/required-server-files-ssr-404/.next/standalone/test/integration/required-server-files-ssr-404/.next/lock'
}

  323 |       ) {
  324 |         return reject(
> 325 |           new Error(
      |           ^
  326 |             `command failed with code ${code} signal ${signal}\n${mergedStdio}`
  327 |           )
  328 |         )

  at ChildProcess.<anonymous> (lib/next-test-utils.ts:325:11)

● Required Server Files › production mode › should return data correctly with x-matched-path

command failed with code 1 signal null
   ▲ Next.js 16.0.2-canary.7 (Rspack)

   Running TypeScript ...
   Creating an optimized production build ...
 ✓ Compiled successfully in 1775.0ms
   Collecting page data using 19 workers ...
set config 0.5601678534363583 { hello: 'world' }
set config 0.8285671954448199 { hello: 'world' }
set config 0.48069996468793774 { hello: 'world' }
set config 0.985940160241207 { hello: 'world' }
set config 0.4375868203756921 { hello: 'world' }
set config 0.5307078233981295 { hello: 'world' }
set config 0.6229278098136941 { hello: 'world' }
set config 0.3733185992315238 { hello: 'world' }
set config 0.8491867233709078 { hello: 'world' }
set config 0.47393844613455505 { hello: 'world' }
set config 0.5239445508432738 { hello: 'world' }
set config 0.5869758601568276 { hello: 'world' }
set config 0.7591055516899177 { hello: 'world' }
returning config 0.5869758601568276 { hello: 'world' }
set config 0.636377088831211 { hello: 'world' }
Warning: You have opted-out of Automatic Static Optimization due to `getInitialProps` in `pages/_app`. This does not opt-out pages with `getStaticProps`
Read more: https://nextjs.org/docs/messages/opt-out-auto-static-optimization

   Generating static pages using 19 workers (0/9) ...
set config 0.9296265642919235 { hello: 'world' }
   Generating static pages using 19 workers (2/9) 
   Generating static pages using 19 workers (4/9) 
   Generating static pages using 19 workers (6/9) 
 ✓ Generating static pages using 19 workers (9/9) in 727.8ms
   Finalizing page optimization ...
   Collecting build traces ...

> Build error occurred
[Error: ENOENT: no such file or directory, copyfile '/root/actions-runner/_work/next.js/next.js/test/integration/required-server-files-ssr-404/.next/lock' -> '/root/actions-runner/_work/next.js/next.js/test/integration/required-server-files-ssr-404/.next/standalone/test/integration/required-server-files-ssr-404/.next/lock'] {
  errno: -2,
  code: 'ENOENT',
  syscall: 'copyfile',
  path: '/root/actions-runner/_work/next.js/next.js/test/integration/required-server-files-ssr-404/.next/lock',
  dest: '/root/actions-runner/_work/next.js/next.js/test/integration/required-server-files-ssr-404/.next/standalone/test/integration/required-server-files-ssr-404/.next/lock'
}

  323 |       ) {
  324 |         return reject(
> 325 |           new Error(
      |           ^
  326 |             `command failed with code ${code} signal ${signal}\n${mergedStdio}`
  327 |           )
  328 |         )

  at ChildProcess.<anonymous> (lib/next-test-utils.ts:325:11)

● Required Server Files › production mode › should render fallback optional catch-all route correctly with x-matched-path and routes-matches

command failed with code 1 signal null
   ▲ Next.js 16.0.2-canary.7 (Rspack)

   Running TypeScript ...
   Creating an optimized production build ...
 ✓ Compiled successfully in 1775.0ms
   Collecting page data using 19 workers ...
set config 0.5601678534363583 { hello: 'world' }
set config 0.8285671954448199 { hello: 'world' }
set config 0.48069996468793774 { hello: 'world' }
set config 0.985940160241207 { hello: 'world' }
set config 0.4375868203756921 { hello: 'world' }
set config 0.5307078233981295 { hello: 'world' }
set config 0.6229278098136941 { hello: 'world' }
set config 0.3733185992315238 { hello: 'world' }
set config 0.8491867233709078 { hello: 'world' }
set config 0.47393844613455505 { hello: 'world' }
set config 0.5239445508432738 { hello: 'world' }
set config 0.5869758601568276 { hello: 'world' }
set config 0.7591055516899177 { hello: 'world' }
returning config 0.5869758601568276 { hello: 'world' }
set config 0.636377088831211 { hello: 'world' }
Warning: You have opted-out of Automatic Static Optimization due to `getInitialProps` in `pages/_app`. This does not opt-out pages with `getStaticProps`
Read more: https://nextjs.org/docs/messages/opt-out-auto-static-optimization

   Generating static pages using 19 workers (0/9) ...
set config 0.9296265642919235 { hello: 'world' }
   Generating static pages using 19 workers (2/9) 
   Generating static pages using 19 workers (4/9) 
   Generating static pages using 19 workers (6/9) 
 ✓ Generating static pages using 19 workers (9/9) in 727.8ms
   Finalizing page optimization ...
   Collecting build traces ...

> Build error occurred
[Error: ENOENT: no such file or directory, copyfile '/root/actions-runner/_work/next.js/next.js/test/integration/required-server-files-ssr-404/.next/lock' -> '/root/actions-runner/_work/next.js/next.js/test/integration/required-server-files-ssr-404/.next/standalone/test/integration/required-server-files-ssr-404/.next/lock'] {
  errno: -2,
  code: 'ENOENT',
  syscall: 'copyfile',
  path: '/root/actions-runner/_work/next.js/next.js/test/integration/required-server-files-ssr-404/.next/lock',
  dest: '/root/actions-runner/_work/next.js/next.js/test/integration/required-server-files-ssr-404/.next/standalone/test/integration/required-server-files-ssr-404/.next/lock'
}

  323 |       ) {
  324 |         return reject(
> 325 |           new Error(
      |           ^
  326 |             `command failed with code ${code} signal ${signal}\n${mergedStdio}`
  327 |           )
  328 |         )

  at ChildProcess.<anonymous> (lib/next-test-utils.ts:325:11)

● Required Server Files › production mode › partial optional catch-all route › should render /partial-catch-all/hello.com

command failed with code 1 signal null
   ▲ Next.js 16.0.2-canary.7 (Rspack)

   Running TypeScript ...
   Creating an optimized production build ...
 ✓ Compiled successfully in 1775.0ms
   Collecting page data using 19 workers ...
set config 0.5601678534363583 { hello: 'world' }
set config 0.8285671954448199 { hello: 'world' }
set config 0.48069996468793774 { hello: 'world' }
set config 0.985940160241207 { hello: 'world' }
set config 0.4375868203756921 { hello: 'world' }
set config 0.5307078233981295 { hello: 'world' }
set config 0.6229278098136941 { hello: 'world' }
set config 0.3733185992315238 { hello: 'world' }
set config 0.8491867233709078 { hello: 'world' }
set config 0.47393844613455505 { hello: 'world' }
set config 0.5239445508432738 { hello: 'world' }
set config 0.5869758601568276 { hello: 'world' }
set config 0.7591055516899177 { hello: 'world' }
returning config 0.5869758601568276 { hello: 'world' }
set config 0.636377088831211 { hello: 'world' }
Warning: You have opted-out of Automatic Static Optimization due to `getInitialProps` in `pages/_app`. This does not opt-out pages with `getStaticProps`
Read more: https://nextjs.org/docs/messages/opt-out-auto-static-optimization

   Generating static pages using 19 workers (0/9) ...
set config 0.9296265642919235 { hello: 'world' }
   Generating static pages using 19 workers (2/9) 
   Generating static pages using 19 workers (4/9) 
   Generating static pages using 19 workers (6/9) 
 ✓ Generating static pages using 19 workers (9/9) in 727.8ms
   Finalizing page optimization ...
   Collecting build traces ...

> Build error occurred
[Error: ENOENT: no such file or directory, copyfile '/root/actions-runner/_work/next.js/next.js/test/integration/required-server-files-ssr-404/.next/lock' -> '/root/actions-runner/_work/next.js/next.js/test/integration/required-server-files-ssr-404/.next/standalone/test/integration/required-server-files-ssr-404/.next/lock'] {
  errno: -2,
  code: 'ENOENT',
  syscall: 'copyfile',
  path: '/root/actions-runner/_work/next.js/next.js/test/integration/required-server-files-ssr-404/.next/lock',
  dest: '/root/actions-runner/_work/next.js/next.js/test/integration/required-server-files-ssr-404/.next/standalone/test/integration/required-server-files-ssr-404/.next/lock'
}

  323 |       ) {
  324 |         return reject(
> 325 |           new Error(
      |           ^
  326 |             `command failed with code ${code} signal ${signal}\n${mergedStdio}`
  327 |           )
  328 |         )

  at ChildProcess.<anonymous> (lib/next-test-utils.ts:325:11)

● Required Server Files › production mode › partial optional catch-all route › should render /partial-catch-all/hello.com/hello

command failed with code 1 signal null
   ▲ Next.js 16.0.2-canary.7 (Rspack)

   Running TypeScript ...
   Creating an optimized production build ...
 ✓ Compiled successfully in 1775.0ms
   Collecting page data using 19 workers ...
set config 0.5601678534363583 { hello: 'world' }
set config 0.8285671954448199 { hello: 'world' }
set config 0.48069996468793774 { hello: 'world' }
set config 0.985940160241207 { hello: 'world' }
set config 0.4375868203756921 { hello: 'world' }
set config 0.5307078233981295 { hello: 'world' }
set config 0.6229278098136941 { hello: 'world' }
set config 0.3733185992315238 { hello: 'world' }
set config 0.8491867233709078 { hello: 'world' }
set config 0.47393844613455505 { hello: 'world' }
set config 0.5239445508432738 { hello: 'world' }
set config 0.5869758601568276 { hello: 'world' }
set config 0.7591055516899177 { hello: 'world' }
returning config 0.5869758601568276 { hello: 'world' }
set config 0.636377088831211 { hello: 'world' }
Warning: You have opted-out of Automatic Static Optimization due to `getInitialProps` in `pages/_app`. This does not opt-out pages with `getStaticProps`
Read more: https://nextjs.org/docs/messages/opt-out-auto-static-optimization

   Generating static pages using 19 workers (0/9) ...
set config 0.9296265642919235 { hello: 'world' }
   Generating static pages using 19 workers (2/9) 
   Generating static pages using 19 workers (4/9) 
   Generating static pages using 19 workers (6/9) 
 ✓ Generating static pages using 19 workers (9/9) in 727.8ms
   Finalizing page optimization ...
   Collecting build traces ...

> Build error occurred
[Error: ENOENT: no such file or directory, copyfile '/root/actions-runner/_work/next.js/next.js/test/integration/required-server-files-ssr-404/.next/lock' -> '/root/actions-runner/_work/next.js/next.js/test/integration/required-server-files-ssr-404/.next/standalone/test/integration/required-server-files-ssr-404/.next/lock'] {
  errno: -2,
  code: 'ENOENT',
  syscall: 'copyfile',
  path: '/root/actions-runner/_work/next.js/next.js/test/integration/required-server-files-ssr-404/.next/lock',
  dest: '/root/actions-runner/_work/next.js/next.js/test/integration/required-server-files-ssr-404/.next/standalone/test/integration/required-server-files-ssr-404/.next/lock'
}

  323 |       ) {
  324 |         return reject(
> 325 |           new Error(
      |           ^
  326 |             `command failed with code ${code} signal ${signal}\n${mergedStdio}`
  327 |           )
  328 |         )

  at ChildProcess.<anonymous> (lib/next-test-utils.ts:325:11)

● Required Server Files › production mode › partial optional catch-all route › should render /partial-catch-all/hello.com/hello/world

command failed with code 1 signal null
   ▲ Next.js 16.0.2-canary.7 (Rspack)

   Running TypeScript ...
   Creating an optimized production build ...
 ✓ Compiled successfully in 1775.0ms
   Collecting page data using 19 workers ...
set config 0.5601678534363583 { hello: 'world' }
set config 0.8285671954448199 { hello: 'world' }
set config 0.48069996468793774 { hello: 'world' }
set config 0.985940160241207 { hello: 'world' }
set config 0.4375868203756921 { hello: 'world' }
set config 0.5307078233981295 { hello: 'world' }
set config 0.6229278098136941 { hello: 'world' }
set config 0.3733185992315238 { hello: 'world' }
set config 0.8491867233709078 { hello: 'world' }
set config 0.47393844613455505 { hello: 'world' }
set config 0.5239445508432738 { hello: 'world' }
set config 0.5869758601568276 { hello: 'world' }
set config 0.7591055516899177 { hello: 'world' }
returning config 0.5869758601568276 { hello: 'world' }
set config 0.636377088831211 { hello: 'world' }
Warning: You have opted-out of Automatic Static Optimization due to `getInitialProps` in `pages/_app`. This does not opt-out pages with `getStaticProps`
Read more: https://nextjs.org/docs/messages/opt-out-auto-static-optimization

   Generating static pages using 19 workers (0/9) ...
set config 0.9296265642919235 { hello: 'world' }
   Generating static pages using 19 workers (2/9) 
   Generating static pages using 19 workers (4/9) 
   Generating static pages using 19 workers (6/9) 
 ✓ Generating static pages using 19 workers (9/9) in 727.8ms
   Finalizing page optimization ...
   Collecting build traces ...

> Build error occurred
[Error: ENOENT: no such file or directory, copyfile '/root/actions-runner/_work/next.js/next.js/test/integration/required-server-files-ssr-404/.next/lock' -> '/root/actions-runner/_work/next.js/next.js/test/integration/required-server-files-ssr-404/.next/standalone/test/integration/required-server-files-ssr-404/.next/lock'] {
  errno: -2,
  code: 'ENOENT',
  syscall: 'copyfile',
  path: '/root/actions-runner/_work/next.js/next.js/test/integration/required-server-files-ssr-404/.next/lock',
  dest: '/root/actions-runner/_work/next.js/next.js/test/integration/required-server-files-ssr-404/.next/standalone/test/integration/required-server-files-ssr-404/.next/lock'
}

  323 |       ) {
  324 |         return reject(
> 325 |           new Error(
      |           ^
  326 |             `command failed with code ${code} signal ${signal}\n${mergedStdio}`
  327 |           )
  328 |         )

  at ChildProcess.<anonymous> (lib/next-test-utils.ts:325:11)

● Required Server Files › production mode › should return data correctly with x-matched-path for optional catch-all route

command failed with code 1 signal null
   ▲ Next.js 16.0.2-canary.7 (Rspack)

   Running TypeScript ...
   Creating an optimized production build ...
 ✓ Compiled successfully in 1775.0ms
   Collecting page data using 19 workers ...
set config 0.5601678534363583 { hello: 'world' }
set config 0.8285671954448199 { hello: 'world' }
set config 0.48069996468793774 { hello: 'world' }
set config 0.985940160241207 { hello: 'world' }
set config 0.4375868203756921 { hello: 'world' }
set config 0.5307078233981295 { hello: 'world' }
set config 0.6229278098136941 { hello: 'world' }
set config 0.3733185992315238 { hello: 'world' }
set config 0.8491867233709078 { hello: 'world' }
set config 0.47393844613455505 { hello: 'world' }
set config 0.5239445508432738 { hello: 'world' }
set config 0.5869758601568276 { hello: 'world' }
set config 0.7591055516899177 { hello: 'world' }
returning config 0.5869758601568276 { hello: 'world' }
set config 0.636377088831211 { hello: 'world' }
Warning: You have opted-out of Automatic Static Optimization due to `getInitialProps` in `pages/_app`. This does not opt-out pages with `getStaticProps`
Read more: https://nextjs.org/docs/messages/opt-out-auto-static-optimization

   Generating static pages using 19 workers (0/9) ...
set config 0.9296265642919235 { hello: 'world' }
   Generating static pages using 19 workers (2/9) 
   Generating static pages using 19 workers (4/9) 
   Generating static pages using 19 workers (6/9) 
 ✓ Generating static pages using 19 workers (9/9) in 727.8ms
   Finalizing page optimization ...
   Collecting build traces ...

> Build error occurred
[Error: ENOENT: no such file or directory, copyfile '/root/actions-runner/_work/next.js/next.js/test/integration/required-server-files-ssr-404/.next/lock' -> '/root/actions-runner/_work/next.js/next.js/test/integration/required-server-files-ssr-404/.next/standalone/test/integration/required-server-files-ssr-404/.next/lock'] {
  errno: -2,
  code: 'ENOENT',
  syscall: 'copyfile',
  path: '/root/actions-runner/_work/next.js/next.js/test/integration/required-server-files-ssr-404/.next/lock',
  dest: '/root/actions-runner/_work/next.js/next.js/test/integration/required-server-files-ssr-404/.next/standalone/test/integration/required-server-files-ssr-404/.next/lock'
}

  323 |       ) {
  324 |         return reject(
> 325 |           new Error(
      |           ^
  326 |             `command failed with code ${code} signal ${signal}\n${mergedStdio}`
  327 |           )
  328 |         )

  at ChildProcess.<anonymous> (lib/next-test-utils.ts:325:11)

● Required Server Files › production mode › should not apply trailingSlash redirect

command failed with code 1 signal null
   ▲ Next.js 16.0.2-canary.7 (Rspack)

   Running TypeScript ...
   Creating an optimized production build ...
 ✓ Compiled successfully in 1775.0ms
   Collecting page data using 19 workers ...
set config 0.5601678534363583 { hello: 'world' }
set config 0.8285671954448199 { hello: 'world' }
set config 0.48069996468793774 { hello: 'world' }
set config 0.985940160241207 { hello: 'world' }
set config 0.4375868203756921 { hello: 'world' }
set config 0.5307078233981295 { hello: 'world' }
set config 0.6229278098136941 { hello: 'world' }
set config 0.3733185992315238 { hello: 'world' }
set config 0.8491867233709078 { hello: 'world' }
set config 0.47393844613455505 { hello: 'world' }
set config 0.5239445508432738 { hello: 'world' }
set config 0.5869758601568276 { hello: 'world' }
set config 0.7591055516899177 { hello: 'world' }
returning config 0.5869758601568276 { hello: 'world' }
set config 0.636377088831211 { hello: 'world' }
Warning: You have opted-out of Automatic Static Optimization due to `getInitialProps` in `pages/_app`. This does not opt-out pages with `getStaticProps`
Read more: https://nextjs.org/docs/messages/opt-out-auto-static-optimization

   Generating static pages using 19 workers (0/9) ...
set config 0.9296265642919235 { hello: 'world' }
   Generating static pages using 19 workers (2/9) 
   Generating static pages using 19 workers (4/9) 
   Generating static pages using 19 workers (6/9) 
 ✓ Generating static pages using 19 workers (9/9) in 727.8ms
   Finalizing page optimization ...
   Collecting build traces ...

> Build error occurred
[Error: ENOENT: no such file or directory, copyfile '/root/actions-runner/_work/next.js/next.js/test/integration/required-server-files-ssr-404/.next/lock' -> '/root/actions-runner/_work/next.js/next.js/test/integration/required-server-files-ssr-404/.next/standalone/test/integration/required-server-files-ssr-404/.next/lock'] {
  errno: -2,
  code: 'ENOENT',
  syscall: 'copyfile',
  path: '/root/actions-runner/_work/next.js/next.js/test/integration/required-server-files-ssr-404/.next/lock',
  dest: '/root/actions-runner/_work/next.js/next.js/test/integration/required-server-files-ssr-404/.next/standalone/test/integration/required-server-files-ssr-404/.next/lock'
}

  323 |       ) {
  324 |         return reject(
> 325 |           new Error(
      |           ^
  326 |             `command failed with code ${code} signal ${signal}\n${mergedStdio}`
  327 |           )
  328 |         )

  at ChildProcess.<anonymous> (lib/next-test-utils.ts:325:11)

● Required Server Files › production mode › should normalize catch-all rewrite query values correctly

command failed with code 1 signal null
   ▲ Next.js 16.0.2-canary.7 (Rspack)

   Running TypeScript ...
   Creating an optimized production build ...
 ✓ Compiled successfully in 1775.0ms
   Collecting page data using 19 workers ...
set config 0.5601678534363583 { hello: 'world' }
set config 0.8285671954448199 { hello: 'world' }
set config 0.48069996468793774 { hello: 'world' }
set config 0.985940160241207 { hello: 'world' }
set config 0.4375868203756921 { hello: 'world' }
set config 0.5307078233981295 { hello: 'world' }
set config 0.6229278098136941 { hello: 'world' }
set config 0.3733185992315238 { hello: 'world' }
set config 0.8491867233709078 { hello: 'world' }
set config 0.47393844613455505 { hello: 'world' }
set config 0.5239445508432738 { hello: 'world' }
set config 0.5869758601568276 { hello: 'world' }
set config 0.7591055516899177 { hello: 'world' }
returning config 0.5869758601568276 { hello: 'world' }
set config 0.636377088831211 { hello: 'world' }
Warning: You have opted-out of Automatic Static Optimization due to `getInitialProps` in `pages/_app`. This does not opt-out pages with `getStaticProps`
Read more: https://nextjs.org/docs/messages/opt-out-auto-static-optimization

   Generating static pages using 19 workers (0/9) ...
set config 0.9296265642919235 { hello: 'world' }
   Generating static pages using 19 workers (2/9) 
   Generating static pages using 19 workers (4/9) 
   Generating static pages using 19 workers (6/9) 
 ✓ Generating static pages using 19 workers (9/9) in 727.8ms
   Finalizing page optimization ...
   Collecting build traces ...

> Build error occurred
[Error: ENOENT: no such file or directory, copyfile '/root/actions-runner/_work/next.js/next.js/test/integration/required-server-files-ssr-404/.next/lock' -> '/root/actions-runner/_work/next.js/next.js/test/integration/required-server-files-ssr-404/.next/standalone/test/integration/required-server-files-ssr-404/.next/lock'] {
  errno: -2,
  code: 'ENOENT',
  syscall: 'copyfile',
  path: '/root/actions-runner/_work/next.js/next.js/test/integration/required-server-files-ssr-404/.next/lock',
  dest: '/root/actions-runner/_work/next.js/next.js/test/integration/required-server-files-ssr-404/.next/standalone/test/integration/required-server-files-ssr-404/.next/lock'
}

  323 |       ) {
  324 |         return reject(
> 325 |           new Error(
      |           ^
  326 |             `command failed with code ${code} signal ${signal}\n${mergedStdio}`
  327 |           )
  328 |         )

  at ChildProcess.<anonymous> (lib/next-test-utils.ts:325:11)

● Required Server Files › production mode › should bubble error correctly for gip page

command failed with code 1 signal null
   ▲ Next.js 16.0.2-canary.7 (Rspack)

   Running TypeScript ...
   Creating an optimized production build ...
 ✓ Compiled successfully in 1775.0ms
   Collecting page data using 19 workers ...
set config 0.5601678534363583 { hello: 'world' }
set config 0.8285671954448199 { hello: 'world' }
set config 0.48069996468793774 { hello: 'world' }
set config 0.985940160241207 { hello: 'world' }
set config 0.4375868203756921 { hello: 'world' }
set config 0.5307078233981295 { hello: 'world' }
set config 0.6229278098136941 { hello: 'world' }
set config 0.3733185992315238 { hello: 'world' }
set config 0.8491867233709078 { hello: 'world' }
set config 0.47393844613455505 { hello: 'world' }
set config 0.5239445508432738 { hello: 'world' }
set config 0.5869758601568276 { hello: 'world' }
set config 0.7591055516899177 { hello: 'world' }
returning config 0.5869758601568276 { hello: 'world' }
set config 0.636377088831211 { hello: 'world' }
Warning: You have opted-out of Automatic Static Optimization due to `getInitialProps` in `pages/_app`. This does not opt-out pages with `getStaticProps`
Read more: https://nextjs.org/docs/messages/opt-out-auto-static-optimization

   Generating static pages using 19 workers (0/9) ...
set config 0.9296265642919235 { hello: 'world' }
   Generating static pages using 19 workers (2/9) 
   Generating static pages using 19 workers (4/9) 
   Generating static pages using 19 workers (6/9) 
 ✓ Generating static pages using 19 workers (9/9) in 727.8ms
   Finalizing page optimization ...
   Collecting build traces ...

> Build error occurred
[Error: ENOENT: no such file or directory, copyfile '/root/actions-runner/_work/next.js/next.js/test/integration/required-server-files-ssr-404/.next/lock' -> '/root/actions-runner/_work/next.js/next.js/test/integration/required-server-files-ssr-404/.next/standalone/test/integration/required-server-files-ssr-404/.next/lock'] {
  errno: -2,
  code: 'ENOENT',
  syscall: 'copyfile',
  path: '/root/actions-runner/_work/next.js/next.js/test/integration/required-server-files-ssr-404/.next/lock',
  dest: '/root/actions-runner/_work/next.js/next.js/test/integration/required-server-files-ssr-404/.next/standalone/test/integration/required-server-files-ssr-404/.next/lock'
}

  323 |       ) {
  324 |         return reject(
> 325 |           new Error(
      |           ^
  326 |             `command failed with code ${code} signal ${signal}\n${mergedStdio}`
  327 |           )
  328 |         )

  at ChildProcess.<anonymous> (lib/next-test-utils.ts:325:11)

● Required Server Files › production mode › should bubble error correctly for gssp page

command failed with code 1 signal null
   ▲ Next.js 16.0.2-canary.7 (Rspack)

   Running TypeScript ...
   Creating an optimized production build ...
 ✓ Compiled successfully in 1775.0ms
   Collecting page data using 19 workers ...
set config 0.5601678534363583 { hello: 'world' }
set config 0.8285671954448199 { hello: 'world' }
set config 0.48069996468793774 { hello: 'world' }
set config 0.985940160241207 { hello: 'world' }
set config 0.4375868203756921 { hello: 'world' }
set config 0.5307078233981295 { hello: 'world' }
set config 0.6229278098136941 { hello: 'world' }
set config 0.3733185992315238 { hello: 'world' }
set config 0.8491867233709078 { hello: 'world' }
set config 0.47393844613455505 { hello: 'world' }
set config 0.5239445508432738 { hello: 'world' }
set config 0.5869758601568276 { hello: 'world' }
set config 0.7591055516899177 { hello: 'world' }
returning config 0.5869758601568276 { hello: 'world' }
set config 0.636377088831211 { hello: 'world' }
Warning: You have opted-out of Automatic Static Optimization due to `getInitialProps` in `pages/_app`. This does not opt-out pages with `getStaticProps`
Read more: https://nextjs.org/docs/messages/opt-out-auto-static-optimization

   Generating static pages using 19 workers (0/9) ...
set config 0.9296265642919235 { hello: 'world' }
   Generating static pages using 19 workers (2/9) 
   Generating static pages using 19 workers (4/9) 
   Generating static pages using 19 workers (6/9) 
 ✓ Generating static pages using 19 workers (9/9) in 727.8ms
   Finalizing page optimization ...
   Collecting build traces ...

> Build error occurred
[Error: ENOENT: no such file or directory, copyfile '/root/actions-runner/_work/next.js/next.js/test/integration/required-server-files-ssr-404/.next/lock' -> '/root/actions-runner/_work/next.js/next.js/test/integration/required-server-files-ssr-404/.next/standalone/test/integration/required-server-files-ssr-404/.next/lock'] {
  errno: -2,
  code: 'ENOENT',
  syscall: 'copyfile',
  path: '/root/actions-runner/_work/next.js/next.js/test/integration/required-server-files-ssr-404/.next/lock',
  dest: '/root/actions-runner/_work/next.js/next.js/test/integration/required-server-files-ssr-404/.next/standalone/test/integration/required-server-files-ssr-404/.next/lock'
}

  323 |       ) {
  324 |         return reject(
> 325 |           new Error(
      |           ^
  326 |             `command failed with code ${code} signal ${signal}\n${mergedStdio}`
  327 |           )
  328 |         )

  at ChildProcess.<anonymous> (lib/next-test-utils.ts:325:11)

● Required Server Files › production mode › should bubble error correctly for gsp page

command failed with code 1 signal null
   ▲ Next.js 16.0.2-canary.7 (Rspack)

   Running TypeScript ...
   Creating an optimized production build ...
 ✓ Compiled successfully in 1775.0ms
   Collecting page data using 19 workers ...
set config 0.5601678534363583 { hello: 'world' }
set config 0.8285671954448199 { hello: 'world' }
set config 0.48069996468793774 { hello: 'world' }
set config 0.985940160241207 { hello: 'world' }
set config 0.4375868203756921 { hello: 'world' }
set config 0.5307078233981295 { hello: 'world' }
set config 0.6229278098136941 { hello: 'world' }
set config 0.3733185992315238 { hello: 'world' }
set config 0.8491867233709078 { hello: 'world' }
set config 0.47393844613455505 { hello: 'world' }
set config 0.5239445508432738 { hello: 'world' }
set config 0.5869758601568276 { hello: 'world' }
set config 0.7591055516899177 { hello: 'world' }
returning config 0.5869758601568276 { hello: 'world' }
set config 0.636377088831211 { hello: 'world' }
Warning: You have opted-out of Automatic Static Optimization due to `getInitialProps` in `pages/_app`. This does not opt-out pages with `getStaticProps`
Read more: https://nextjs.org/docs/messages/opt-out-auto-static-optimization

   Generating static pages using 19 workers (0/9) ...
set config 0.9296265642919235 { hello: 'world' }
   Generating static pages using 19 workers (2/9) 
   Generating static pages using 19 workers (4/9) 
   Generating static pages using 19 workers (6/9) 
 ✓ Generating static pages using 19 workers (9/9) in 727.8ms
   Finalizing page optimization ...
   Collecting build traces ...

> Build error occurred
[Error: ENOENT: no such file or directory, copyfile '/root/actions-runner/_work/next.js/next.js/test/integration/required-server-files-ssr-404/.next/lock' -> '/root/actions-runner/_work/next.js/next.js/test/integration/required-server-files-ssr-404/.next/standalone/test/integration/required-server-files-ssr-404/.next/lock'] {
  errno: -2,
  code: 'ENOENT',
  syscall: 'copyfile',
  path: '/root/actions-runner/_work/next.js/next.js/test/integration/required-server-files-ssr-404/.next/lock',
  dest: '/root/actions-runner/_work/next.js/next.js/test/integration/required-server-files-ssr-404/.next/standalone/test/integration/required-server-files-ssr-404/.next/lock'
}

  323 |       ) {
  324 |         return reject(
> 325 |           new Error(
      |           ^
  326 |             `command failed with code ${code} signal ${signal}\n${mergedStdio}`
  327 |           )
  328 |         )

  at ChildProcess.<anonymous> (lib/next-test-utils.ts:325:11)

● Required Server Files › production mode › should normalize optional values correctly for SSP page

command failed with code 1 signal null
   ▲ Next.js 16.0.2-canary.7 (Rspack)

   Running TypeScript ...
   Creating an optimized production build ...
 ✓ Compiled successfully in 1775.0ms
   Collecting page data using 19 workers ...
set config 0.5601678534363583 { hello: 'world' }
set config 0.8285671954448199 { hello: 'world' }
set config 0.48069996468793774 { hello: 'world' }
set config 0.985940160241207 { hello: 'world' }
set config 0.4375868203756921 { hello: 'world' }
set config 0.5307078233981295 { hello: 'world' }
set config 0.6229278098136941 { hello: 'world' }
set config 0.3733185992315238 { hello: 'world' }
set config 0.8491867233709078 { hello: 'world' }
set config 0.47393844613455505 { hello: 'world' }
set config 0.5239445508432738 { hello: 'world' }
set config 0.5869758601568276 { hello: 'world' }
set config 0.7591055516899177 { hello: 'world' }
returning config 0.5869758601568276 { hello: 'world' }
set config 0.636377088831211 { hello: 'world' }
Warning: You have opted-out of Automatic Static Optimization due to `getInitialProps` in `pages/_app`. This does not opt-out pages with `getStaticProps`
Read more: https://nextjs.org/docs/messages/opt-out-auto-static-optimization

   Generating static pages using 19 workers (0/9) ...
set config 0.9296265642919235 { hello: 'world' }
   Generating static pages using 19 workers (2/9) 
   Generating static pages using 19 workers (4/9) 
   Generating static pages using 19 workers (6/9) 
 ✓ Generating static pages using 19 workers (9/9) in 727.8ms
   Finalizing page optimization ...
   Collecting build traces ...

> Build error occurred
[Error: ENOENT: no such file or directory, copyfile '/root/actions-runner/_work/next.js/next.js/test/integration/required-server-files-ssr-404/.next/lock' -> '/root/actions-runner/_work/next.js/next.js/test/integration/required-server-files-ssr-404/.next/standalone/test/integration/required-server-files-ssr-404/.next/lock'] {
  errno: -2,
  code: 'ENOENT',
  syscall: 'copyfile',
  path: '/root/actions-runner/_work/next.js/next.js/test/integration/required-server-files-ssr-404/.next/lock',
  dest: '/root/actions-runner/_work/next.js/next.js/test/integration/required-server-files-ssr-404/.next/standalone/test/integration/required-server-files-ssr-404/.next/lock'
}

  323 |       ) {
  324 |         return reject(
> 325 |           new Error(
      |           ^
  326 |             `command failed with code ${code} signal ${signal}\n${mergedStdio}`
  327 |           )
  328 |         )

  at ChildProcess.<anonymous> (lib/next-test-utils.ts:325:11)

● Required Server Files › production mode › should normalize optional values correctly for SSG page

command failed with code 1 signal null
   ▲ Next.js 16.0.2-canary.7 (Rspack)

   Running TypeScript ...
   Creating an optimized production build ...
 ✓ Compiled successfully in 1775.0ms
   Collecting page data using 19 workers ...
set config 0.5601678534363583 { hello: 'world' }
set config 0.8285671954448199 { hello: 'world' }
set config 0.48069996468793774 { hello: 'world' }
set config 0.985940160241207 { hello: 'world' }
set config 0.4375868203756921 { hello: 'world' }
set config 0.5307078233981295 { hello: 'world' }
set config 0.6229278098136941 { hello: 'world' }
set config 0.3733185992315238 { hello: 'world' }
set config 0.8491867233709078 { hello: 'world' }
set config 0.47393844613455505 { hello: 'world' }
set config 0.5239445508432738 { hello: 'world' }
set config 0.5869758601568276 { hello: 'world' }
set config 0.7591055516899177 { hello: 'world' }
returning config 0.5869758601568276 { hello: 'world' }
set config 0.636377088831211 { hello: 'world' }
Warning: You have opted-out of Automatic Static Optimization due to `getInitialProps` in `pages/_app`. This does not opt-out pages with `getStaticProps`
Read more: https://nextjs.org/docs/messages/opt-out-auto-static-optimization

   Generating static pages using 19 workers (0/9) ...
set config 0.9296265642919235 { hello: 'world' }
   Generating static pages using 19 workers (2/9) 
   Generating static pages using 19 workers (4/9) 
   Generating static pages using 19 workers (6/9) 
 ✓ Generating static pages using 19 workers (9/9) in 727.8ms
   Finalizing page optimization ...
   Collecting build traces ...

> Build error occurred
[Error: ENOENT: no such file or directory, copyfile '/root/actions-runner/_work/next.js/next.js/test/integration/required-server-files-ssr-404/.next/lock' -> '/root/actions-runner/_work/next.js/next.js/test/integration/required-server-files-ssr-404/.next/standalone/test/integration/required-server-files-ssr-404/.next/lock'] {
  errno: -2,
  code: 'ENOENT',
  syscall: 'copyfile',
  path: '/root/actions-runner/_work/next.js/next.js/test/integration/required-server-files-ssr-404/.next/lock',
  dest: '/root/actions-runner/_work/next.js/next.js/test/integration/required-server-files-ssr-404/.next/standalone/test/integration/required-server-files-ssr-404/.next/lock'
}

  323 |       ) {
  324 |         return reject(
> 325 |           new Error(
      |           ^
  326 |             `command failed with code ${code} signal ${signal}\n${mergedStdio}`
  327 |           )
  328 |         )

  at ChildProcess.<anonymous> (lib/next-test-utils.ts:325:11)

● Required Server Files › production mode › should normalize optional values correctly for API page

command failed with code 1 signal null
   ▲ Next.js 16.0.2-canary.7 (Rspack)

   Running TypeScript ...
   Creating an optimized production build ...
 ✓ Compiled successfully in 1775.0ms
   Collecting page data using 19 workers ...
set config 0.5601678534363583 { hello: 'world' }
set config 0.8285671954448199 { hello: 'world' }
set config 0.48069996468793774 { hello: 'world' }
set config 0.985940160241207 { hello: 'world' }
set config 0.4375868203756921 { hello: 'world' }
set config 0.5307078233981295 { hello: 'world' }
set config 0.6229278098136941 { hello: 'world' }
set config 0.3733185992315238 { hello: 'world' }
set config 0.8491867233709078 { hello: 'world' }
set config 0.47393844613455505 { hello: 'world' }
set config 0.5239445508432738 { hello: 'world' }
set config 0.5869758601568276 { hello: 'world' }
set config 0.7591055516899177 { hello: 'world' }
returning config 0.5869758601568276 { hello: 'world' }
set config 0.636377088831211 { hello: 'world' }
Warning: You have opted-out of Automatic Static Optimization due to `getInitialProps` in `pages/_app`. This does not opt-out pages with `getStaticProps`
Read more: https://nextjs.org/docs/messages/opt-out-auto-static-optimization

   Generating static pages using 19 workers (0/9) ...
set config 0.9296265642919235 { hello: 'world' }
   Generating static pages using 19 workers (2/9) 
   Generating static pages using 19 workers (4/9) 
   Generating static pages using 19 workers (6/9) 
 ✓ Generating static pages using 19 workers (9/9) in 727.8ms
   Finalizing page optimization ...
   Collecting build traces ...

> Build error occurred
[Error: ENOENT: no such file or directory, copyfile '/root/actions-runner/_work/next.js/next.js/test/integration/required-server-files-ssr-404/.next/lock' -> '/root/actions-runner/_work/next.js/next.js/test/integration/required-server-files-ssr-404/.next/standalone/test/integration/required-server-files-ssr-404/.next/lock'] {
  errno: -2,
  code: 'ENOENT',
  syscall: 'copyfile',
  path: '/root/actions-runner/_work/next.js/next.js/test/integration/required-server-files-ssr-404/.next/lock',
  dest: '/root/actions-runner/_work/next.js/next.js/test/integration/required-server-files-ssr-404/.next/standalone/test/integration/required-server-files-ssr-404/.next/lock'
}

  323 |       ) {
  324 |         return reject(
> 325 |           new Error(
      |           ^
  326 |             `command failed with code ${code} signal ${signal}\n${mergedStdio}`
  327 |           )
  328 |         )

  at ChildProcess.<anonymous> (lib/next-test-utils.ts:325:11)

● Required Server Files › production mode › should match the index page correctly

command failed with code 1 signal null
   ▲ Next.js 16.0.2-canary.7 (Rspack)

   Running TypeScript ...
   Creating an optimized production build ...
 ✓ Compiled successfully in 1775.0ms
   Collecting page data using 19 workers ...
set config 0.5601678534363583 { hello: 'world' }
set config 0.8285671954448199 { hello: 'world' }
set config 0.48069996468793774 { hello: 'world' }
set config 0.985940160241207 { hello: 'world' }
set config 0.4375868203756921 { hello: 'world' }
set config 0.5307078233981295 { hello: 'world' }
set config 0.6229278098136941 { hello: 'world' }
set config 0.3733185992315238 { hello: 'world' }
set config 0.8491867233709078 { hello: 'world' }
set config 0.47393844613455505 { hello: 'world' }
set config 0.5239445508432738 { hello: 'world' }
set config 0.5869758601568276 { hello: 'world' }
set config 0.7591055516899177 { hello: 'world' }
returning config 0.5869758601568276 { hello: 'world' }
set config 0.636377088831211 { hello: 'world' }
Warning: You have opted-out of Automatic Static Optimization due to `getInitialProps` in `pages/_app`. This does not opt-out pages with `getStaticProps`
Read more: https://nextjs.org/docs/messages/opt-out-auto-static-optimization

   Generating static pages using 19 workers (0/9) ...
set config 0.9296265642919235 { hello: 'world' }
   Generating static pages using 19 workers (2/9) 
   Generating static pages using 19 workers (4/9) 
   Generating static pages using 19 workers (6/9) 
 ✓ Generating static pages using 19 workers (9/9) in 727.8ms
   Finalizing page optimization ...
   Collecting build traces ...

> Build error occurred
[Error: ENOENT: no such file or directory, copyfile '/root/actions-runner/_work/next.js/next.js/test/integration/required-server-files-ssr-404/.next/lock' -> '/root/actions-runner/_work/next.js/next.js/test/integration/required-server-files-ssr-404/.next/standalone/test/integration/required-server-files-ssr-404/.next/lock'] {
  errno: -2,
  code: 'ENOENT',
  syscall: 'copyfile',
  path: '/root/actions-runner/_work/next.js/next.js/test/integration/required-server-files-ssr-404/.next/lock',
  dest: '/root/actions-runner/_work/next.js/next.js/test/integration/required-server-files-ssr-404/.next/standalone/test/integration/required-server-files-ssr-404/.next/lock'
}

  323 |       ) {
  324 |         return reject(
> 325 |           new Error(
      |           ^
  326 |             `command failed with code ${code} signal ${signal}\n${mergedStdio}`
  327 |           )
  328 |         )

  at ChildProcess.<anonymous> (lib/next-test-utils.ts:325:11)

● Required Server Files › production mode › should match the root dynamic page correctly

command failed with code 1 signal null
   ▲ Next.js 16.0.2-canary.7 (Rspack)

   Running TypeScript ...
   Creating an optimized production build ...
 ✓ Compiled successfully in 1775.0ms
   Collecting page data using 19 workers ...
set config 0.5601678534363583 { hello: 'world' }
set config 0.8285671954448199 { hello: 'world' }
set config 0.48069996468793774 { hello: 'world' }
set config 0.985940160241207 { hello: 'world' }
set config 0.4375868203756921 { hello: 'world' }
set config 0.5307078233981295 { hello: 'world' }
set config 0.6229278098136941 { hello: 'world' }
set config 0.3733185992315238 { hello: 'world' }
set config 0.8491867233709078 { hello: 'world' }
set config 0.47393844613455505 { hello: 'world' }
set config 0.5239445508432738 { hello: 'world' }
set config 0.5869758601568276 { hello: 'world' }
set config 0.7591055516899177 { hello: 'world' }
returning config 0.5869758601568276 { hello: 'world' }
set config 0.636377088831211 { hello: 'world' }
Warning: You have opted-out of Automatic Static Optimization due to `getInitialProps` in `pages/_app`. This does not opt-out pages with `getStaticProps`
Read more: https://nextjs.org/docs/messages/opt-out-auto-static-optimization

   Generating static pages using 19 workers (0/9) ...
set config 0.9296265642919235 { hello: 'world' }
   Generating static pages using 19 workers (2/9) 
   Generating static pages using 19 workers (4/9) 
   Generating static pages using 19 workers (6/9) 
 ✓ Generating static pages using 19 workers (9/9) in 727.8ms
   Finalizing page optimization ...
   Collecting build traces ...

> Build error occurred
[Error: ENOENT: no such file or directory, copyfile '/root/actions-runner/_work/next.js/next.js/test/integration/required-server-files-ssr-404/.next/lock' -> '/root/actions-runner/_work/next.js/next.js/test/integration/required-server-files-ssr-404/.next/standalone/test/integration/required-server-files-ssr-404/.next/lock'] {
  errno: -2,
  code: 'ENOENT',
  syscall: 'copyfile',
  path: '/root/actions-runner/_work/next.js/next.js/test/integration/required-server-files-ssr-404/.next/lock',
  dest: '/root/actions-runner/_work/next.js/next.js/test/integration/required-server-files-ssr-404/.next/standalone/test/integration/required-server-files-ssr-404/.next/lock'
}

  323 |       ) {
  324 |         return reject(
> 325 |           new Error(
      |           ^
  326 |             `command failed with code ${code} signal ${signal}\n${mergedStdio}`
  327 |           )
  328 |         )

  at ChildProcess.<anonymous> (lib/next-test-utils.ts:325:11)

● Required Server Files › production mode › should handle 404s properly

command failed with code 1 signal null
   ▲ Next.js 16.0.2-canary.7 (Rspack)

   Running TypeScript ...
   Creating an optimized production build ...
 ✓ Compiled successfully in 1775.0ms
   Collecting page data using 19 workers ...
set config 0.5601678534363583 { hello: 'world' }
set config 0.8285671954448199 { hello: 'world' }
set config 0.48069996468793774 { hello: 'world' }
set config 0.985940160241207 { hello: 'world' }
set config 0.4375868203756921 { hello: 'world' }
set config 0.5307078233981295 { hello: 'world' }
set config 0.6229278098136941 { hello: 'world' }
set config 0.3733185992315238 { hello: 'world' }
set config 0.8491867233709078 { hello: 'world' }
set config 0.47393844613455505 { hello: 'world' }
set config 0.5239445508432738 { hello: 'world' }
set config 0.5869758601568276 { hello: 'world' }
set config 0.7591055516899177 { hello: 'world' }
returning config 0.5869758601568276 { hello: 'world' }
set config 0.636377088831211 { hello: 'world' }
Warning: You have opted-out of Automatic Static Optimization due to `getInitialProps` in `pages/_app`. This does not opt-out pages with `getStaticProps`
Read more: https://nextjs.org/docs/messages/opt-out-auto-static-optimization

   Generating static pages using 19 workers (0/9) ...
set config 0.9296265642919235 { hello: 'world' }
   Generating static pages using 19 workers (2/9) 
   Generating static pages using 19 workers (4/9) 
   Generating static pages using 19 workers (6/9) 
 ✓ Generating static pages using 19 workers (9/9) in 727.8ms
   Finalizing page optimization ...
   Collecting build traces ...

> Build error occurred
[Error: ENOENT: no such file or directory, copyfile '/root/actions-runner/_work/next.js/next.js/test/integration/required-server-files-ssr-404/.next/lock' -> '/root/actions-runner/_work/next.js/next.js/test/integration/required-server-files-ssr-404/.next/standalone/test/integration/required-server-files-ssr-404/.next/lock'] {
  errno: -2,
  code: 'ENOENT',
  syscall: 'copyfile',
  path: '/root/actions-runner/_work/next.js/next.js/test/integration/required-server-files-ssr-404/.next/lock',
  dest: '/root/actions-runner/_work/next.js/next.js/test/integration/required-server-files-ssr-404/.next/standalone/test/integration/required-server-files-ssr-404/.next/lock'
}

  323 |       ) {
  324 |         return reject(
> 325 |           new Error(
      |           ^
  326 |             `command failed with code ${code} signal ${signal}\n${mergedStdio}`
  327 |           )
  328 |         )

  at ChildProcess.<anonymous> (lib/next-test-utils.ts:325:11)

● Test suite failed to run

ENOENT: no such file or directory, rename '/root/actions-runner/_work/next.js/next.js/test/integration/required-server-files-ssr-404/pages-bak' -> '/root/actions-runner/_work/next.js/next.js/test/integration/required-server-files-ssr-404/pages'

pnpm test test/integration/ondemand/test/index.test.ts(rspack)

  • On Demand Entries > should compile pages for JSON page requests
Expand output

● On Demand Entries › should compile pages for JSON page requests

expect(received).toInclude(expected)

Expected string to include:
  "pages/about"
Received:
  "static/chunks/turbopack-test_integration_ondemand_pages_about_f88ff4c2._.js"

  1234 |   expect(pageFile).toEndWith('.js')
  1235 |   if (!process.env.IS_TURBOPACK_TEST) {
> 1236 |     expect(pageFile).toInclude(`pages${page === '' ? '/index' : page}`)
       |                      ^
  1237 |   }
  1238 |   if (!pageFile) {
  1239 |     throw new Error(`No page file for page ${page}`)

  at toInclude (lib/next-test-utils.ts:1236:22)
  at Object.<anonymous> (integration/ondemand/test/index.test.ts:54:52)

pnpm test test/integration/css/test/basic-global-support.test.ts(rspack)

  • CSS URL via file-loader > production mode > useLightnincsss(true) > should've emitted expected files
  • Nested @import() Global Support > production mode > useLightnincsss(true) > should've emitted a single CSS file
Expand output

● Nested @import() Global Support › production mode › useLightnincsss(true) › should've emitted a single CSS file

expect(received).toMatchInlineSnapshot(snapshot)

Snapshot name: `Nested @import() Global Support production mode useLightnincsss(true) should've emitted a single CSS file 1`

- Snapshot  - 1
+ Received  + 1

  [
    "/_next/static/css/HASH.css:
- .red-text{color:purple;font-weight:bolder;color:red}.blue-text{color:orange;font-weight:bolder;color:#00f}",
+ .red-text{color:red;font-weight:bolder}.blue-text{color:#00f;font-weight:bolder}",
  ]

  406 |             `)
  407 |           } else if (useLightningcss) {
> 408 |             expect(cssContent).toMatchInlineSnapshot(`
      |                                ^
  409 |              [
  410 |                "/_next/static/css/HASH.css:
  411 |              .red-text{color:purple;font-weight:bolder;color:red}.blue-text{color:orange;font-weight:bolder;color:#00f}",

  at Object.toMatchInlineSnapshot (integration/css/test/basic-global-support.test.ts:408:32)

● CSS URL via file-loader › production mode › useLightnincsss(true) › should've emitted expected files

expect(received).toMatchInlineSnapshot(snapshot)

Snapshot name: `CSS URL via \`file-loader\` production mode useLightnincsss(true) should've emitted expected files 1`

- Snapshot  - 1
+ Received  + 1

  [
    "/_next/static/css/HASH.css:
- .red-text{color:red;background-image:url(/_next/static/media/dark.6b01655b.svg),url(/_next/static/media/dark2.6b01655b.svg)}.blue-text{color:orange;background-image:url(/_next/static/media/light.2da1d3d6.svg);font-weight:bolder;color:#00f}",
+ .red-text{color:red;background-image:url(/_next/static/media/dark.6b01655b.svg),url(/_next/static/media/dark2.6b01655b.svg)}.blue-text{color:#00f;background-image:url(/_next/static/media/light.2da1d3d6.svg);font-weight:bolder}",
  ]

  573 |             `)
  574 |           } else if (useLightningcss) {
> 575 |             expect(cssContent).toMatchInlineSnapshot(`
      |                                ^
  576 |              [
  577 |                "/_next/static/css/HASH.css:
  578 |              .red-text{color:red;background-image:url(/_next/static/media/dark.6b01655b.svg),url(/_next/static/media/dark2.6b01655b.svg)}.blue-text{color:orange;background-image:url(/_next/static/media/light.2da1d3d6.svg);font-weight:bolder;color:#00f}",

  at Object.toMatchInlineSnapshot (integration/css/test/basic-global-support.test.ts:575:32)

@ijjk
Copy link
Copy Markdown
Member

ijjk commented Sep 25, 2025

Stats from current PR

Default Build (Increase detected ⚠️)
General
vercel/next.js canary SyMind/next.js upgrade-rspack-v1.5.7 Change
buildDuration 20.3s 17.3s N/A
buildDurationCached 15.9s 12.9s N/A
nodeModulesSize 453 MB 453 MB N/A
nextStartRea..uration (ms) 682ms 686ms N/A
Client Bundles (main, webpack) Overall increase ⚠️
vercel/next.js canary SyMind/next.js upgrade-rspack-v1.5.7 Change
436-HASH.js gzip 5.32 kB 5.32 kB N/A
4779.HASH.js gzip 169 B 169 B
9760-HASH.js gzip 54.4 kB 54.7 kB ⚠️ +310 B
c57d0559-HASH.js gzip 62.3 kB 62.3 kB N/A
framework-HASH.js gzip 59.8 kB 59.8 kB
main-app-HASH.js gzip 253 B 255 B N/A
main-HASH.js gzip 39.8 kB 39.9 kB N/A
webpack-HASH.js gzip 1.69 kB 1.69 kB
Overall change 116 kB 116 kB ⚠️ +310 B
Legacy Client Bundles (polyfills)
vercel/next.js canary SyMind/next.js upgrade-rspack-v1.5.7 Change
polyfills-HASH.js gzip 39.4 kB 39.4 kB
Overall change 39.4 kB 39.4 kB
Client Pages
vercel/next.js canary SyMind/next.js upgrade-rspack-v1.5.7 Change
_app-HASH.js gzip 193 B 194 B N/A
_error-HASH.js gzip 182 B 182 B
css-HASH.js gzip 334 B 334 B
dynamic-HASH.js gzip 1.81 kB 1.81 kB N/A
edge-ssr-HASH.js gzip 255 B 254 B N/A
head-HASH.js gzip 350 B 351 B N/A
hooks-HASH.js gzip 384 B 384 B
image-HASH.js gzip 4.78 kB 4.77 kB N/A
index-HASH.js gzip 260 B 259 B N/A
link-HASH.js gzip 2.5 kB 2.5 kB N/A
routerDirect..HASH.js gzip 316 B 320 B N/A
script-HASH.js gzip 388 B 388 B
withRouter-HASH.js gzip 316 B 314 B N/A
1afbb74e6ecf..834.css gzip 106 B 106 B
Overall change 1.39 kB 1.39 kB
Client Build Manifests
vercel/next.js canary SyMind/next.js upgrade-rspack-v1.5.7 Change
_buildManifest.js gzip 718 B 720 B N/A
Overall change 0 B 0 B
Rendered Page Sizes
vercel/next.js canary SyMind/next.js upgrade-rspack-v1.5.7 Change
index.html gzip 524 B 522 B N/A
link.html gzip 538 B 538 B
withRouter.html gzip 520 B 518 B N/A
Overall change 538 B 538 B
Edge SSR bundle Size Overall increase ⚠️
vercel/next.js canary SyMind/next.js upgrade-rspack-v1.5.7 Change
edge-ssr.js gzip 128 kB 128 kB N/A
page.js gzip 255 kB 257 kB ⚠️ +1.79 kB
Overall change 255 kB 257 kB ⚠️ +1.79 kB
Middleware size Overall increase ⚠️
vercel/next.js canary SyMind/next.js upgrade-rspack-v1.5.7 Change
middleware-b..fest.js gzip 636 B 638 B N/A
middleware-r..fest.js gzip 156 B 156 B
middleware.js gzip 32.8 kB 33 kB ⚠️ +121 B
edge-runtime..pack.js gzip 846 B 846 B
Overall change 33.8 kB 34 kB ⚠️ +121 B
Next Runtimes Overall increase ⚠️
vercel/next.js canary SyMind/next.js upgrade-rspack-v1.5.7 Change
app-page-exp...dev.js gzip 295 kB 295 kB N/A
app-page-exp..prod.js gzip 154 kB 155 kB ⚠️ +116 B
app-page-tur...dev.js gzip 295 kB 295 kB N/A
app-page-tur..prod.js gzip 154 kB 155 kB ⚠️ +122 B
app-page-tur...dev.js gzip 292 kB 292 kB N/A
app-page-tur..prod.js gzip 153 kB 153 kB ⚠️ +118 B
app-page.run...dev.js gzip 292 kB 292 kB N/A
app-page.run..prod.js gzip 153 kB 153 kB ⚠️ +114 B
app-route-ex...dev.js gzip 70.7 kB 70.7 kB N/A
app-route-ex..prod.js gzip 49.4 kB 49.4 kB N/A
app-route-tu...dev.js gzip 70.8 kB 70.7 kB N/A
app-route-tu..prod.js gzip 49.4 kB 49.5 kB N/A
app-route-tu...dev.js gzip 70.4 kB 70.4 kB N/A
app-route-tu..prod.js gzip 49.2 kB 49.3 kB N/A
app-route.ru...dev.js gzip 70.4 kB 70.4 kB N/A
app-route.ru..prod.js gzip 49.2 kB 49.2 kB N/A
dist_client_...dev.js gzip 326 B 326 B
dist_client_...dev.js gzip 328 B 328 B
dist_client_...dev.js gzip 320 B 320 B
dist_client_...dev.js gzip 318 B 318 B
pages-api-tu...dev.js gzip 43.3 kB 43.2 kB N/A
pages-api-tu..prod.js gzip 33.2 kB 33.1 kB N/A
pages-api.ru...dev.js gzip 43.3 kB 43.2 kB N/A
pages-api.ru..prod.js gzip 33.1 kB 33.1 kB N/A
pages-turbo....dev.js gzip 52.8 kB 52.8 kB N/A
pages-turbo...prod.js gzip 40.1 kB 40.1 kB N/A
pages.runtim...dev.js gzip 52.8 kB 52.7 kB N/A
pages.runtim..prod.js gzip 40.1 kB 40.1 kB N/A
server.runti..prod.js gzip 78.9 kB 78.9 kB N/A
Overall change 616 kB 616 kB ⚠️ +470 B
build cache Overall increase ⚠️
vercel/next.js canary SyMind/next.js upgrade-rspack-v1.5.7 Change
0.pack gzip 3.25 MB 3.25 MB N/A
index.pack gzip 93.8 kB 95.9 kB ⚠️ +2.12 kB
Overall change 93.8 kB 95.9 kB ⚠️ +2.12 kB
Diff details
Diff for page.js

Diff too large to display

Diff for middleware.js

Diff too large to display

Diff for edge-ssr.js
failed to diff
Diff for dynamic-HASH.js
@@ -1,7 +1,7 @@
 (self["webpackChunk_N_E"] = self["webpackChunk_N_E"] || []).push([
   [2291],
   {
-    /***/ 1033: /***/ (
+    /***/ 431: /***/ (
       __unused_webpack_module,
       __unused_webpack_exports,
       __webpack_require__
@@ -9,7 +9,7 @@
       (window.__NEXT_P = window.__NEXT_P || []).push([
         "/dynamic",
         function () {
-          return __webpack_require__(6490);
+          return __webpack_require__(8084);
         },
       ]);
       if (false) {
@@ -18,7 +18,7 @@
       /***/
     },
 
-    /***/ 5323: /***/ (
+    /***/ 2699: /***/ (
       __unused_webpack_module,
       exports,
       __webpack_require__
@@ -60,7 +60,7 @@ WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE
       const _react = /*#__PURE__*/ _interop_require_default._(
         __webpack_require__(2223)
       );
-      const _loadablecontextsharedruntime = __webpack_require__(9289);
+      const _loadablecontextsharedruntime = __webpack_require__(3785);
       function resolve(obj) {
         return obj && obj.default ? obj.default : obj;
       }
@@ -293,73 +293,34 @@ WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE
       /***/
     },
 
-    /***/ 6490: /***/ (
+    /***/ 3785: /***/ (
       __unused_webpack_module,
-      __webpack_exports__,
+      exports,
       __webpack_require__
     ) => {
       "use strict";
-      __webpack_require__.r(__webpack_exports__);
-      /* harmony export */ __webpack_require__.d(__webpack_exports__, {
-        /* harmony export */ __N_SSP: () => /* binding */ __N_SSP,
-        /* harmony export */ default: () => __WEBPACK_DEFAULT_EXPORT__,
-        /* harmony export */
+      /* __next_internal_client_entry_do_not_use__  cjs */
+      Object.defineProperty(exports, "__esModule", {
+        value: true,
       });
-      /* harmony import */ var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__ =
-        __webpack_require__(1503);
-      /* harmony import */ var next_dynamic__WEBPACK_IMPORTED_MODULE_1__ =
-        __webpack_require__(7320);
-      /* harmony import */ var next_dynamic__WEBPACK_IMPORTED_MODULE_1___default =
-        /*#__PURE__*/ __webpack_require__.n(
-          next_dynamic__WEBPACK_IMPORTED_MODULE_1__
-        );
-
-      const DynamicHello = next_dynamic__WEBPACK_IMPORTED_MODULE_1___default()(
-        () =>
-          __webpack_require__
-            .e(/* import() */ 4779)
-            .then(__webpack_require__.bind(__webpack_require__, 4779))
-            .then((mod) => mod.Hello),
-        {
-          loadableGenerated: {
-            webpack: () => [/*require.resolve*/ 4779],
-          },
-        }
+      Object.defineProperty(exports, "LoadableContext", {
+        enumerable: true,
+        get: function () {
+          return LoadableContext;
+        },
+      });
+      const _interop_require_default = __webpack_require__(1532);
+      const _react = /*#__PURE__*/ _interop_require_default._(
+        __webpack_require__(2223)
       );
-      const Page = () =>
-        /*#__PURE__*/ (0, react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxs)(
-          react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.Fragment,
-          {
-            children: [
-              /*#__PURE__*/ (0,
-              react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx)("p", {
-                children: "testing next/dynamic size",
-              }),
-              /*#__PURE__*/ (0,
-              react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx)(
-                DynamicHello,
-                {}
-              ),
-            ],
-          }
-        );
-      var __N_SSP = true;
-      /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = Page;
-
-      /***/
-    },
-
-    /***/ 7320: /***/ (
-      module,
-      __unused_webpack_exports,
-      __webpack_require__
-    ) => {
-      module.exports = __webpack_require__(7340);
+      const LoadableContext = _react.default.createContext(null);
+      if (false) {
+      } //# sourceMappingURL=loadable-context.shared-runtime.js.map
 
       /***/
     },
 
-    /***/ 7340: /***/ (module, exports, __webpack_require__) => {
+    /***/ 6828: /***/ (module, exports, __webpack_require__) => {
       "use strict";
 
       Object.defineProperty(exports, "__esModule", {
@@ -392,7 +353,7 @@ WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE
         __webpack_require__(2223)
       );
       const _loadablesharedruntime = /*#__PURE__*/ _interop_require_default._(
-        __webpack_require__(5323)
+        __webpack_require__(2699)
       );
       const isServerSide = "object" === "undefined";
       // Normalize loader to return the module as form { default: Component } for `React.lazy`.
@@ -492,29 +453,68 @@ WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE
       /***/
     },
 
-    /***/ 9289: /***/ (
+    /***/ 7514: /***/ (
+      module,
+      __unused_webpack_exports,
+      __webpack_require__
+    ) => {
+      module.exports = __webpack_require__(6828);
+
+      /***/
+    },
+
+    /***/ 8084: /***/ (
       __unused_webpack_module,
-      exports,
+      __webpack_exports__,
       __webpack_require__
     ) => {
       "use strict";
-      /* __next_internal_client_entry_do_not_use__  cjs */
-      Object.defineProperty(exports, "__esModule", {
-        value: true,
-      });
-      Object.defineProperty(exports, "LoadableContext", {
-        enumerable: true,
-        get: function () {
-          return LoadableContext;
-        },
+      __webpack_require__.r(__webpack_exports__);
+      /* harmony export */ __webpack_require__.d(__webpack_exports__, {
+        /* harmony export */ __N_SSP: () => /* binding */ __N_SSP,
+        /* harmony export */ default: () => __WEBPACK_DEFAULT_EXPORT__,
+        /* harmony export */
       });
-      const _interop_require_default = __webpack_require__(1532);
-      const _react = /*#__PURE__*/ _interop_require_default._(
-        __webpack_require__(2223)
+      /* harmony import */ var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__ =
+        __webpack_require__(1503);
+      /* harmony import */ var next_dynamic__WEBPACK_IMPORTED_MODULE_1__ =
+        __webpack_require__(7514);
+      /* harmony import */ var next_dynamic__WEBPACK_IMPORTED_MODULE_1___default =
+        /*#__PURE__*/ __webpack_require__.n(
+          next_dynamic__WEBPACK_IMPORTED_MODULE_1__
+        );
+
+      const DynamicHello = next_dynamic__WEBPACK_IMPORTED_MODULE_1___default()(
+        () =>
+          __webpack_require__
+            .e(/* import() */ 9573)
+            .then(__webpack_require__.bind(__webpack_require__, 9573))
+            .then((mod) => mod.Hello),
+        {
+          loadableGenerated: {
+            webpack: () => [/*require.resolve*/ 9573],
+          },
+        }
       );
-      const LoadableContext = _react.default.createContext(null);
-      if (false) {
-      } //# sourceMappingURL=loadable-context.shared-runtime.js.map
+      const Page = () =>
+        /*#__PURE__*/ (0, react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxs)(
+          react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.Fragment,
+          {
+            children: [
+              /*#__PURE__*/ (0,
+              react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx)("p", {
+                children: "testing next/dynamic size",
+              }),
+              /*#__PURE__*/ (0,
+              react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx)(
+                DynamicHello,
+                {}
+              ),
+            ],
+          }
+        );
+      var __N_SSP = true;
+      /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = Page;
 
       /***/
     },
@@ -524,7 +524,7 @@ WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE
     /******/ var __webpack_exec__ = (moduleId) =>
       __webpack_require__((__webpack_require__.s = moduleId));
     /******/ __webpack_require__.O(0, [636, 6593, 8792], () =>
-      __webpack_exec__(1033)
+      __webpack_exec__(431)
     );
     /******/ var __webpack_exports__ = __webpack_require__.O();
     /******/ _N_E = __webpack_exports__;
Diff for edge-ssr-HASH.js
@@ -1,24 +1,7 @@
 (self["webpackChunk_N_E"] = self["webpackChunk_N_E"] || []).push([
   [676],
   {
-    /***/ 1819: /***/ (
-      __unused_webpack_module,
-      __unused_webpack_exports,
-      __webpack_require__
-    ) => {
-      (window.__NEXT_P = window.__NEXT_P || []).push([
-        "/edge-ssr",
-        function () {
-          return __webpack_require__(7521);
-        },
-      ]);
-      if (false) {
-      }
-
-      /***/
-    },
-
-    /***/ 7521: /***/ (
+    /***/ 983: /***/ (
       __unused_webpack_module,
       __webpack_exports__,
       __webpack_require__
@@ -37,13 +20,30 @@
 
       /***/
     },
+
+    /***/ 985: /***/ (
+      __unused_webpack_module,
+      __unused_webpack_exports,
+      __webpack_require__
+    ) => {
+      (window.__NEXT_P = window.__NEXT_P || []).push([
+        "/edge-ssr",
+        function () {
+          return __webpack_require__(983);
+        },
+      ]);
+      if (false) {
+      }
+
+      /***/
+    },
   },
   /******/ (__webpack_require__) => {
     // webpackRuntimeModules
     /******/ var __webpack_exec__ = (moduleId) =>
       __webpack_require__((__webpack_require__.s = moduleId));
     /******/ __webpack_require__.O(0, [636, 6593, 8792], () =>
-      __webpack_exec__(1819)
+      __webpack_exec__(985)
     );
     /******/ var __webpack_exports__ = __webpack_require__.O();
     /******/ _N_E = __webpack_exports__;
Diff for head-HASH.js
@@ -1,34 +1,7 @@
 (self["webpackChunk_N_E"] = self["webpackChunk_N_E"] || []).push([
   [5350],
   {
-    /***/ 619: /***/ (
-      __unused_webpack_module,
-      __unused_webpack_exports,
-      __webpack_require__
-    ) => {
-      (window.__NEXT_P = window.__NEXT_P || []).push([
-        "/head",
-        function () {
-          return __webpack_require__(9891);
-        },
-      ]);
-      if (false) {
-      }
-
-      /***/
-    },
-
-    /***/ 7997: /***/ (
-      module,
-      __unused_webpack_exports,
-      __webpack_require__
-    ) => {
-      module.exports = __webpack_require__(6705);
-
-      /***/
-    },
-
-    /***/ 9891: /***/ (
+    /***/ 1417: /***/ (
       __unused_webpack_module,
       __webpack_exports__,
       __webpack_require__
@@ -43,7 +16,7 @@
       /* harmony import */ var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__ =
         __webpack_require__(1503);
       /* harmony import */ var next_head__WEBPACK_IMPORTED_MODULE_1__ =
-        __webpack_require__(7997);
+        __webpack_require__(5171);
       /* harmony import */ var next_head__WEBPACK_IMPORTED_MODULE_1___default =
         /*#__PURE__*/ __webpack_require__.n(
           next_head__WEBPACK_IMPORTED_MODULE_1__
@@ -76,13 +49,40 @@
 
       /***/
     },
+
+    /***/ 1937: /***/ (
+      __unused_webpack_module,
+      __unused_webpack_exports,
+      __webpack_require__
+    ) => {
+      (window.__NEXT_P = window.__NEXT_P || []).push([
+        "/head",
+        function () {
+          return __webpack_require__(1417);
+        },
+      ]);
+      if (false) {
+      }
+
+      /***/
+    },
+
+    /***/ 5171: /***/ (
+      module,
+      __unused_webpack_exports,
+      __webpack_require__
+    ) => {
+      module.exports = __webpack_require__(7505);
+
+      /***/
+    },
   },
   /******/ (__webpack_require__) => {
     // webpackRuntimeModules
     /******/ var __webpack_exec__ = (moduleId) =>
       __webpack_require__((__webpack_require__.s = moduleId));
     /******/ __webpack_require__.O(0, [636, 6593, 8792], () =>
-      __webpack_exec__(619)
+      __webpack_exec__(1937)
     );
     /******/ var __webpack_exports__ = __webpack_require__.O();
     /******/ _N_E = __webpack_exports__;
Diff for hooks-HASH.js
@@ -1,24 +1,7 @@
 (self["webpackChunk_N_E"] = self["webpackChunk_N_E"] || []).push([
   [9804],
   {
-    /***/ 1679: /***/ (
-      __unused_webpack_module,
-      __unused_webpack_exports,
-      __webpack_require__
-    ) => {
-      (window.__NEXT_P = window.__NEXT_P || []).push([
-        "/hooks",
-        function () {
-          return __webpack_require__(4655);
-        },
-      ]);
-      if (false) {
-      }
-
-      /***/
-    },
-
-    /***/ 4655: /***/ (
+    /***/ 1598: /***/ (
       __unused_webpack_module,
       __webpack_exports__,
       __webpack_require__
@@ -76,13 +59,30 @@
 
       /***/
     },
+
+    /***/ 3925: /***/ (
+      __unused_webpack_module,
+      __unused_webpack_exports,
+      __webpack_require__
+    ) => {
+      (window.__NEXT_P = window.__NEXT_P || []).push([
+        "/hooks",
+        function () {
+          return __webpack_require__(1598);
+        },
+      ]);
+      if (false) {
+      }
+
+      /***/
+    },
   },
   /******/ (__webpack_require__) => {
     // webpackRuntimeModules
     /******/ var __webpack_exec__ = (moduleId) =>
       __webpack_require__((__webpack_require__.s = moduleId));
     /******/ __webpack_require__.O(0, [636, 6593, 8792], () =>
-      __webpack_exec__(1679)
+      __webpack_exec__(3925)
     );
     /******/ var __webpack_exports__ = __webpack_require__.O();
     /******/ _N_E = __webpack_exports__;
Diff for image-HASH.js
@@ -1,24 +1,7 @@
 (self["webpackChunk_N_E"] = self["webpackChunk_N_E"] || []).push([
   [2983],
   {
-    /***/ 797: /***/ (
-      __unused_webpack_module,
-      __unused_webpack_exports,
-      __webpack_require__
-    ) => {
-      (window.__NEXT_P = window.__NEXT_P || []).push([
-        "/image",
-        function () {
-          return __webpack_require__(5999);
-        },
-      ]);
-      if (false) {
-      }
-
-      /***/
-    },
-
-    /***/ 1713: /***/ (__unused_webpack_module, exports) => {
+    /***/ 881: /***/ (__unused_webpack_module, exports) => {
       "use strict";
       /**
        * A shared function, used on both client and server, to generate a SVG blur placeholder.
@@ -58,7 +41,7 @@
       /***/
     },
 
-    /***/ 2263: /***/ (module, exports, __webpack_require__) => {
+    /***/ 1511: /***/ (module, exports, __webpack_require__) => {
       "use strict";
 
       Object.defineProperty(exports, "__esModule", {
@@ -136,7 +119,137 @@
       /***/
     },
 
-    /***/ 2728: /***/ (module, exports, __webpack_require__) => {
+    /***/ 1744: /***/ (
+      __unused_webpack_module,
+      exports,
+      __webpack_require__
+    ) => {
+      "use strict";
+
+      Object.defineProperty(exports, "__esModule", {
+        value: true,
+      });
+      Object.defineProperty(exports, "default", {
+        enumerable: true,
+        get: function () {
+          return _default;
+        },
+      });
+      const _findclosestquality = __webpack_require__(7054);
+      function defaultLoader({ config, src, width, quality }) {
+        if (
+          src.startsWith("/") &&
+          src.includes("?") &&
+          config.localPatterns?.length === 1 &&
+          config.localPatterns[0].pathname === "**" &&
+          config.localPatterns[0].search === ""
+        ) {
+          throw Object.defineProperty(
+            new Error(
+              `Image with src "${src}" is using a query string which is not configured in images.localPatterns.` +
+                `\nRead more: https://nextjs.org/docs/messages/next-image-unconfigured-localpatterns`
+            ),
+            "__NEXT_ERROR_CODE",
+            {
+              value: "E871",
+              enumerable: false,
+              configurable: true,
+            }
+          );
+        }
+        if (false) {
+        }
+        const q = (0, _findclosestquality.findClosestQuality)(quality, config);
+        return `${config.path}?url=${encodeURIComponent(
+          src
+        )}&w=${width}&q=${q}${
+          src.startsWith("/_next/static/media/") && false ? 0 : ""
+        }`;
+      }
+      // We use this to determine if the import is the default loader
+      // or a custom loader defined by the user in next.config.js
+      defaultLoader.__next_img_default = true;
+      const _default = defaultLoader; //# sourceMappingURL=image-loader.js.map
+
+      /***/
+    },
+
+    /***/ 2388: /***/ (
+      __unused_webpack_module,
+      __webpack_exports__,
+      __webpack_require__
+    ) => {
+      "use strict";
+      // ESM COMPAT FLAG
+      __webpack_require__.r(__webpack_exports__);
+
+      // EXPORTS
+      __webpack_require__.d(__webpack_exports__, {
+        __N_SSP: () => /* binding */ __N_SSP,
+        default: () => /* binding */ pages_image,
+      });
+
+      // EXTERNAL MODULE: ./node_modules/.pnpm/react@19.2.0/node_modules/react/jsx-runtime.js
+      var jsx_runtime = __webpack_require__(1503);
+      // EXTERNAL MODULE: ./node_modules/.pnpm/next@file+..+diff-repo+packages+next+next-packed.tgz_react-dom@19.2.0_react@19.2.0__react@19.2.0/node_modules/next/image.js
+      var next_image = __webpack_require__(3866);
+      var image_default = /*#__PURE__*/ __webpack_require__.n(next_image); // ./pages/nextjs.png
+      /* harmony default export */ const nextjs = {
+        src: "/_next/static/media/nextjs.cae0b805.png",
+        height: 1347,
+        width: 1626,
+        blurDataURL:
+          "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAgAAAAHCAMAAAACh/xsAAAAD1BMVEX////x8fH6+vrb29vo6Oh8o70bAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAH0lEQVR4nGNgwARMjIyMjCAGCzMzMwsTRISJCcRABwAEcAAkLCQfgAAAAABJRU5ErkJggg==",
+        blurWidth: 8,
+        blurHeight: 7,
+      }; // ./pages/image.js
+      function ImagePage(props) {
+        return /*#__PURE__*/ (0, jsx_runtime.jsxs)(jsx_runtime.Fragment, {
+          children: [
+            /*#__PURE__*/ (0, jsx_runtime.jsx)("h1", {
+              children: "next/image example",
+            }),
+            /*#__PURE__*/ (0, jsx_runtime.jsx)(image_default(), {
+              src: nextjs,
+              placeholder: "blur",
+            }),
+          ],
+        });
+      }
+      var __N_SSP = true;
+      /* harmony default export */ const pages_image = ImagePage;
+
+      /***/
+    },
+
+    /***/ 3866: /***/ (
+      module,
+      __unused_webpack_exports,
+      __webpack_require__
+    ) => {
+      module.exports = __webpack_require__(6888);
+
+      /***/
+    },
+
+    /***/ 4483: /***/ (
+      __unused_webpack_module,
+      __unused_webpack_exports,
+      __webpack_require__
+    ) => {
+      (window.__NEXT_P = window.__NEXT_P || []).push([
+        "/image",
+        function () {
+          return __webpack_require__(2388);
+        },
+      ]);
+      if (false) {
+      }
+
+      /***/
+    },
+
+    /***/ 6600: /***/ (module, exports, __webpack_require__) => {
       "use strict";
       /* __next_internal_client_entry_do_not_use__  cjs */
       Object.defineProperty(exports, "__esModule", {
@@ -158,17 +271,17 @@
         __webpack_require__(9507)
       );
       const _head = /*#__PURE__*/ _interop_require_default._(
-        __webpack_require__(6705)
+        __webpack_require__(7505)
       );
-      const _getimgprops = __webpack_require__(3556);
-      const _imageconfig = __webpack_require__(3157);
-      const _imageconfigcontextsharedruntime = __webpack_require__(9323);
-      const _warnonce = __webpack_require__(6173);
-      const _routercontextsharedruntime = __webpack_require__(6046);
+      const _getimgprops = __webpack_require__(9588);
+      const _imageconfig = __webpack_require__(2645);
+      const _imageconfigcontextsharedruntime = __webpack_require__(5451);
+      const _warnonce = __webpack_require__(7549);
+      const _routercontextsharedruntime = __webpack_require__(5470);
       const _imageloader = /*#__PURE__*/ _interop_require_default._(
-        __webpack_require__(3744)
+        __webpack_require__(1744)
       );
-      const _usemergedref = __webpack_require__(2263);
+      const _usemergedref = __webpack_require__(1511);
       // This is replaced by webpack define plugin
       const configEnv = {
         deviceSizes: [640, 750, 828, 1080, 1200, 1920, 2048, 3840],
@@ -495,7 +608,96 @@
       /***/
     },
 
-    /***/ 3556: /***/ (
+    /***/ 6888: /***/ (
+      __unused_webpack_module,
+      exports,
+      __webpack_require__
+    ) => {
+      "use strict";
+
+      Object.defineProperty(exports, "__esModule", {
+        value: true,
+      });
+      0 && 0;
+      function _export(target, all) {
+        for (var name in all)
+          Object.defineProperty(target, name, {
+            enumerable: true,
+            get: all[name],
+          });
+      }
+      _export(exports, {
+        default: function () {
+          return _default;
+        },
+        getImageProps: function () {
+          return getImageProps;
+        },
+      });
+      const _interop_require_default = __webpack_require__(1532);
+      const _getimgprops = __webpack_require__(9588);
+      const _imagecomponent = __webpack_require__(6600);
+      const _imageloader = /*#__PURE__*/ _interop_require_default._(
+        __webpack_require__(1744)
+      );
+      function getImageProps(imgProps) {
+        const { props } = (0, _getimgprops.getImgProps)(imgProps, {
+          defaultLoader: _imageloader.default,
+          // This is replaced by webpack define plugin
+          imgConf: {
+            deviceSizes: [640, 750, 828, 1080, 1200, 1920, 2048, 3840],
+            imageSizes: [32, 48, 64, 96, 128, 256, 384],
+            qualities: [75],
+            path: "/_next/image",
+            loader: "default",
+            dangerouslyAllowSVG: false,
+            unoptimized: false,
+          },
+        });
+        // Normally we don't care about undefined props because we pass to JSX,
+        // but this exported function could be used by the end user for anything
+        // so we delete undefined props to clean it up a little.
+        for (const [key, value] of Object.entries(props)) {
+          if (value === undefined) {
+            delete props[key];
+          }
+        }
+        return {
+          props,
+        };
+      }
+      const _default = _imagecomponent.Image; //# sourceMappingURL=image-external.js.map
+
+      /***/
+    },
+
+    /***/ 7054: /***/ (__unused_webpack_module, exports) => {
+      "use strict";
+
+      Object.defineProperty(exports, "__esModule", {
+        value: true,
+      });
+      Object.defineProperty(exports, "findClosestQuality", {
+        enumerable: true,
+        get: function () {
+          return findClosestQuality;
+        },
+      });
+      function findClosestQuality(quality, config) {
+        const q = quality || 75;
+        if (!config?.qualities?.length) {
+          return q;
+        }
+        return config.qualities.reduce(
+          (prev, cur) => (Math.abs(cur - q) < Math.abs(prev - q) ? cur : prev),
+          0
+        );
+      } //# sourceMappingURL=find-closest-quality.js.map
+
+      /***/
+    },
+
+    /***/ 9588: /***/ (
       __unused_webpack_module,
       exports,
       __webpack_require__
@@ -511,9 +713,9 @@
           return getImgProps;
         },
       });
-      const _warnonce = __webpack_require__(6173);
-      const _imageblursvg = __webpack_require__(1713);
-      const _imageconfig = __webpack_require__(3157);
+      const _warnonce = __webpack_require__(7549);
+      const _imageblursvg = __webpack_require__(881);
+      const _imageconfig = __webpack_require__(2645);
       const VALID_LOADING_VALUES =
         /* unused pure expression or super */ null && [
           "lazy",
@@ -943,215 +1145,13 @@
 
       /***/
     },
-
-    /***/ 3744: /***/ (
-      __unused_webpack_module,
-      exports,
-      __webpack_require__
-    ) => {
-      "use strict";
-
-      Object.defineProperty(exports, "__esModule", {
-        value: true,
-      });
-      Object.defineProperty(exports, "default", {
-        enumerable: true,
-        get: function () {
-          return _default;
-        },
-      });
-      const _findclosestquality = __webpack_require__(8494);
-      function defaultLoader({ config, src, width, quality }) {
-        if (
-          src.startsWith("/") &&
-          src.includes("?") &&
-          config.localPatterns?.length === 1 &&
-          config.localPatterns[0].pathname === "**" &&
-          config.localPatterns[0].search === ""
-        ) {
-          throw Object.defineProperty(
-            new Error(
-              `Image with src "${src}" is using a query string which is not configured in images.localPatterns.` +
-                `\nRead more: https://nextjs.org/docs/messages/next-image-unconfigured-localpatterns`
-            ),
-            "__NEXT_ERROR_CODE",
-            {
-              value: "E871",
-              enumerable: false,
-              configurable: true,
-            }
-          );
-        }
-        if (false) {
-        }
-        const q = (0, _findclosestquality.findClosestQuality)(quality, config);
-        return `${config.path}?url=${encodeURIComponent(
-          src
-        )}&w=${width}&q=${q}${
-          src.startsWith("/_next/static/media/") && false ? 0 : ""
-        }`;
-      }
-      // We use this to determine if the import is the default loader
-      // or a custom loader defined by the user in next.config.js
-      defaultLoader.__next_img_default = true;
-      const _default = defaultLoader; //# sourceMappingURL=image-loader.js.map
-
-      /***/
-    },
-
-    /***/ 4292: /***/ (
-      module,
-      __unused_webpack_exports,
-      __webpack_require__
-    ) => {
-      module.exports = __webpack_require__(7896);
-
-      /***/
-    },
-
-    /***/ 5999: /***/ (
-      __unused_webpack_module,
-      __webpack_exports__,
-      __webpack_require__
-    ) => {
-      "use strict";
-      // ESM COMPAT FLAG
-      __webpack_require__.r(__webpack_exports__);
-
-      // EXPORTS
-      __webpack_require__.d(__webpack_exports__, {
-        __N_SSP: () => /* binding */ __N_SSP,
-        default: () => /* binding */ pages_image,
-      });
-
-      // EXTERNAL MODULE: ./node_modules/.pnpm/react@19.2.0/node_modules/react/jsx-runtime.js
-      var jsx_runtime = __webpack_require__(1503);
-      // EXTERNAL MODULE: ./node_modules/.pnpm/next@file+..+main-repo+packages+next+next-packed.tgz_react-dom@19.2.0_react@19.2.0__react@19.2.0/node_modules/next/image.js
-      var next_image = __webpack_require__(4292);
-      var image_default = /*#__PURE__*/ __webpack_require__.n(next_image); // ./pages/nextjs.png
-      /* harmony default export */ const nextjs = {
-        src: "/_next/static/media/nextjs.cae0b805.png",
-        height: 1347,
-        width: 1626,
-        blurDataURL:
-          "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAgAAAAHCAMAAAACh/xsAAAAD1BMVEX////x8fH6+vrb29vo6Oh8o70bAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAH0lEQVR4nGNgwARMjIyMjCAGCzMzMwsTRISJCcRABwAEcAAkLCQfgAAAAABJRU5ErkJggg==",
-        blurWidth: 8,
-        blurHeight: 7,
-      }; // ./pages/image.js
-      function ImagePage(props) {
-        return /*#__PURE__*/ (0, jsx_runtime.jsxs)(jsx_runtime.Fragment, {
-          children: [
-            /*#__PURE__*/ (0, jsx_runtime.jsx)("h1", {
-              children: "next/image example",
-            }),
-            /*#__PURE__*/ (0, jsx_runtime.jsx)(image_default(), {
-              src: nextjs,
-              placeholder: "blur",
-            }),
-          ],
-        });
-      }
-      var __N_SSP = true;
-      /* harmony default export */ const pages_image = ImagePage;
-
-      /***/
-    },
-
-    /***/ 7896: /***/ (
-      __unused_webpack_module,
-      exports,
-      __webpack_require__
-    ) => {
-      "use strict";
-
-      Object.defineProperty(exports, "__esModule", {
-        value: true,
-      });
-      0 && 0;
-      function _export(target, all) {
-        for (var name in all)
-          Object.defineProperty(target, name, {
-            enumerable: true,
-            get: all[name],
-          });
-      }
-      _export(exports, {
-        default: function () {
-          return _default;
-        },
-        getImageProps: function () {
-          return getImageProps;
-        },
-      });
-      const _interop_require_default = __webpack_require__(1532);
-      const _getimgprops = __webpack_require__(3556);
-      const _imagecomponent = __webpack_require__(2728);
-      const _imageloader = /*#__PURE__*/ _interop_require_default._(
-        __webpack_require__(3744)
-      );
-      function getImageProps(imgProps) {
-        const { props } = (0, _getimgprops.getImgProps)(imgProps, {
-          defaultLoader: _imageloader.default,
-          // This is replaced by webpack define plugin
-          imgConf: {
-            deviceSizes: [640, 750, 828, 1080, 1200, 1920, 2048, 3840],
-            imageSizes: [32, 48, 64, 96, 128, 256, 384],
-            qualities: [75],
-            path: "/_next/image",
-            loader: "default",
-            dangerouslyAllowSVG: false,
-            unoptimized: false,
-          },
-        });
-        // Normally we don't care about undefined props because we pass to JSX,
-        // but this exported function could be used by the end user for anything
-        // so we delete undefined props to clean it up a little.
-        for (const [key, value] of Object.entries(props)) {
-          if (value === undefined) {
-            delete props[key];
-          }
-        }
-        return {
-          props,
-        };
-      }
-      const _default = _imagecomponent.Image; //# sourceMappingURL=image-external.js.map
-
-      /***/
-    },
-
-    /***/ 8494: /***/ (__unused_webpack_module, exports) => {
-      "use strict";
-
-      Object.defineProperty(exports, "__esModule", {
-        value: true,
-      });
-      Object.defineProperty(exports, "findClosestQuality", {
-        enumerable: true,
-        get: function () {
-          return findClosestQuality;
-        },
-      });
-      function findClosestQuality(quality, config) {
-        const q = quality || 75;
-        if (!config?.qualities?.length) {
-          return q;
-        }
-        return config.qualities.reduce(
-          (prev, cur) => (Math.abs(cur - q) < Math.abs(prev - q) ? cur : prev),
-          0
-        );
-      } //# sourceMappingURL=find-closest-quality.js.map
-
-      /***/
-    },
   },
   /******/ (__webpack_require__) => {
     // webpackRuntimeModules
     /******/ var __webpack_exec__ = (moduleId) =>
       __webpack_require__((__webpack_require__.s = moduleId));
     /******/ __webpack_require__.O(0, [636, 6593, 8792], () =>
-      __webpack_exec__(797)
+      __webpack_exec__(4483)
     );
     /******/ var __webpack_exports__ = __webpack_require__.O();
     /******/ _N_E = __webpack_exports__;
Diff for link-HASH.js
@@ -1,7 +1,338 @@
 (self["webpackChunk_N_E"] = self["webpackChunk_N_E"] || []).push([
   [4672],
   {
-    /***/ 69: /***/ (module, exports, __webpack_require__) => {
+    /***/ 1511: /***/ (module, exports, __webpack_require__) => {
+      "use strict";
+
+      Object.defineProperty(exports, "__esModule", {
+        value: true,
+      });
+      Object.defineProperty(exports, "useMergedRef", {
+        enumerable: true,
+        get: function () {
+          return useMergedRef;
+        },
+      });
+      const _react = __webpack_require__(2223);
+      function useMergedRef(refA, refB) {
+        const cleanupA = (0, _react.useRef)(null);
+        const cleanupB = (0, _react.useRef)(null);
+        // NOTE: In theory, we could skip the wrapping if only one of the refs is non-null.
+        // (this happens often if the user doesn't pass a ref to Link/Form/Image)
+        // But this can cause us to leak a cleanup-ref into user code (previously via `<Link legacyBehavior>`),
+        // and the user might pass that ref into ref-merging library that doesn't support cleanup refs
+        // (because it hasn't been updated for React 19)
+        // which can then cause things to blow up, because a cleanup-returning ref gets called with `null`.
+        // So in practice, it's safer to be defensive and always wrap the ref, even on React 19.
+        return (0, _react.useCallback)(
+          (current) => {
+            if (current === null) {
+              const cleanupFnA = cleanupA.current;
+              if (cleanupFnA) {
+                cleanupA.current = null;
+                cleanupFnA();
+              }
+              const cleanupFnB = cleanupB.current;
+              if (cleanupFnB) {
+                cleanupB.current = null;
+                cleanupFnB();
+              }
+            } else {
+              if (refA) {
+                cleanupA.current = applyRef(refA, current);
+              }
+              if (refB) {
+                cleanupB.current = applyRef(refB, current);
+              }
+            }
+          },
+          [refA, refB]
+        );
+      }
+      function applyRef(refA, current) {
+        if (typeof refA === "function") {
+          const cleanup = refA(current);
+          if (typeof cleanup === "function") {
+            return cleanup;
+          } else {
+            return () => refA(null);
+          }
+        } else {
+          refA.current = current;
+          return () => {
+            refA.current = null;
+          };
+        }
+      }
+      if (
+        (typeof exports.default === "function" ||
+          (typeof exports.default === "object" && exports.default !== null)) &&
+        typeof exports.default.__esModule === "undefined"
+      ) {
+        Object.defineProperty(exports.default, "__esModule", {
+          value: true,
+        });
+        Object.assign(exports.default, exports);
+        module.exports = exports.default;
+      } //# sourceMappingURL=use-merged-ref.js.map
+
+      /***/
+    },
+
+    /***/ 2025: /***/ (
+      __unused_webpack_module,
+      __unused_webpack_exports,
+      __webpack_require__
+    ) => {
+      (window.__NEXT_P = window.__NEXT_P || []).push([
+        "/link",
+        function () {
+          return __webpack_require__(4591);
+        },
+      ]);
+      if (false) {
+      }
+
+      /***/
+    },
+
+    /***/ 3267: /***/ (module, exports, __webpack_require__) => {
+      "use strict";
+
+      Object.defineProperty(exports, "__esModule", {
+        value: true,
+      });
+      Object.defineProperty(exports, "getDomainLocale", {
+        enumerable: true,
+        get: function () {
+          return getDomainLocale;
+        },
+      });
+      const _normalizetrailingslash = __webpack_require__(2371);
+      const basePath =
+        /* unused pure expression or super */ null && (false || "");
+      function getDomainLocale(path, locale, locales, domainLocales) {
+        if (false) {
+        } else {
+          return false;
+        }
+      }
+      if (
+        (typeof exports.default === "function" ||
+          (typeof exports.default === "object" && exports.default !== null)) &&
+        typeof exports.default.__esModule === "undefined"
+      ) {
+        Object.defineProperty(exports.default, "__esModule", {
+          value: true,
+        });
+        Object.assign(exports.default, exports);
+        module.exports = exports.default;
+      } //# sourceMappingURL=get-domain-locale.js.map
+
+      /***/
+    },
+
+    /***/ 4591: /***/ (
+      __unused_webpack_module,
+      __webpack_exports__,
+      __webpack_require__
+    ) => {
+      "use strict";
+      __webpack_require__.r(__webpack_exports__);
+      /* harmony export */ __webpack_require__.d(__webpack_exports__, {
+        /* harmony export */ __N_SSP: () => /* binding */ __N_SSP,
+        /* harmony export */ default: () => __WEBPACK_DEFAULT_EXPORT__,
+        /* harmony export */
+      });
+      /* harmony import */ var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__ =
+        __webpack_require__(1503);
+      /* harmony import */ var next_link__WEBPACK_IMPORTED_MODULE_1__ =
+        __webpack_require__(6929);
+      /* harmony import */ var next_link__WEBPACK_IMPORTED_MODULE_1___default =
+        /*#__PURE__*/ __webpack_require__.n(
+          next_link__WEBPACK_IMPORTED_MODULE_1__
+        );
+
+      function aLink(props) {
+        return /*#__PURE__*/ (0,
+        react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxs)("div", {
+          children: [
+            /*#__PURE__*/ (0,
+            react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx)("h3", {
+              children: "A Link page!",
+            }),
+            /*#__PURE__*/ (0,
+            react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx)(
+              next_link__WEBPACK_IMPORTED_MODULE_1___default(),
+              {
+                href: "/",
+                children: "Go to /",
+              }
+            ),
+          ],
+        });
+      }
+      var __N_SSP = true;
+      /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = aLink;
+
+      /***/
+    },
+
+    /***/ 6929: /***/ (
+      module,
+      __unused_webpack_exports,
+      __webpack_require__
+    ) => {
+      module.exports = __webpack_require__(8885);
+
+      /***/
+    },
+
+    /***/ 7686: /***/ (module, exports, __webpack_require__) => {
+      "use strict";
+
+      Object.defineProperty(exports, "__esModule", {
+        value: true,
+      });
+      Object.defineProperty(exports, "useIntersection", {
+        enumerable: true,
+        get: function () {
+          return useIntersection;
+        },
+      });
+      const _react = __webpack_require__(2223);
+      const _requestidlecallback = __webpack_require__(901);
+      const hasIntersectionObserver =
+        typeof IntersectionObserver === "function";
+      const observers = new Map();
+      const idList = [];
+      function createObserver(options) {
+        const id = {
+          root: options.root || null,
+          margin: options.rootMargin || "",
+        };
+        const existing = idList.find(
+          (obj) => obj.root === id.root && obj.margin === id.margin
+        );
+        let instance;
+        if (existing) {
+          instance = observers.get(existing);
+          if (instance) {
+            return instance;
+          }
+        }
+        const elements = new Map();
+        const observer = new IntersectionObserver((entries) => {
+          entries.forEach((entry) => {
+            const callback = elements.get(entry.target);
+            const isVisible =
+              entry.isIntersecting || entry.intersectionRatio > 0;
+            if (callback && isVisible) {
+              callback(isVisible);
+            }
+          });
+        }, options);
+        instance = {
+          id,
+          observer,
+          elements,
+        };
+        idList.push(id);
+        observers.set(id, instance);
+        return instance;
+      }
+      function observe(element, callback, options) {
+        const { id, observer, elements } = createObserver(options);
+        elements.set(element, callback);
+        observer.observe(element);
+        return function unobserve() {
+          elements.delete(element);
+          observer.unobserve(element);
+          // Destroy observer when there's nothing left to watch:
+          if (elements.size === 0) {
+            observer.disconnect();
+            observers.delete(id);
+            const index = idList.findIndex(
+              (obj) => obj.root === id.root && obj.margin === id.margin
+            );
+            if (index > -1) {
+              idList.splice(index, 1);
+            }
+          }
+        };
+      }
+      function useIntersection({ rootRef, rootMargin, disabled }) {
+        const isDisabled = disabled || !hasIntersectionObserver;
+        const [visible, setVisible] = (0, _react.useState)(false);
+        const elementRef = (0, _react.useRef)(null);
+        const setElement = (0, _react.useCallback)((element) => {
+          elementRef.current = element;
+        }, []);
+        (0, _react.useEffect)(() => {
+          if (hasIntersectionObserver) {
+            if (isDisabled || visible) return;
+            const element = elementRef.current;
+            if (element && element.tagName) {
+              const unobserve = observe(
+                element,
+                (isVisible) => isVisible && setVisible(isVisible),
+                {
+                  root: rootRef?.current,
+                  rootMargin,
+                }
+              );
+              return unobserve;
+            }
+          } else {
+            if (!visible) {
+              const idleCallback = (0,
+              _requestidlecallback.requestIdleCallback)(() => setVisible(true));
+              return () =>
+                (0, _requestidlecallback.cancelIdleCallback)(idleCallback);
+            }
+          }
+          // eslint-disable-next-line react-hooks/exhaustive-deps
+        }, [isDisabled, rootMargin, rootRef, visible, elementRef.current]);
+        const resetVisible = (0, _react.useCallback)(() => {
+          setVisible(false);
+        }, []);
+        return [setElement, visible, resetVisible];
+      }
+      if (
+        (typeof exports.default === "function" ||
+          (typeof exports.default === "object" && exports.default !== null)) &&
+        typeof exports.default.__esModule === "undefined"
+      ) {
+        Object.defineProperty(exports.default, "__esModule", {
+          value: true,
+        });
+        Object.assign(exports.default, exports);
+        module.exports = exports.default;
+      } //# sourceMappingURL=use-intersection.js.map
+
+      /***/
+    },
+
+    /***/ 8101: /***/ (__unused_webpack_module, exports) => {
+      "use strict";
+
+      Object.defineProperty(exports, "__esModule", {
+        value: true,
+      });
+      Object.defineProperty(exports, "errorOnce", {
+        enumerable: true,
+        get: function () {
+          return errorOnce;
+        },
+      });
+      let errorOnce = (_) => {};
+      if (false) {
+      } //# sourceMappingURL=error-once.js.map
+
+      /***/
+    },
+
+    /***/ 8885: /***/ (module, exports, __webpack_require__) => {
       "use strict";
       /* __next_internal_client_entry_do_not_use__  cjs */
       Object.defineProperty(exports, "__esModule", {
@@ -28,17 +359,17 @@
       const _react = /*#__PURE__*/ _interop_require_wildcard._(
         __webpack_require__(2223)
       );
-      const _resolvehref = __webpack_require__(2275);
-      const _islocalurl = __webpack_require__(3179);
-      const _formaturl = __webpack_require__(5486);
-      const _utils = __webpack_require__(3708);
-      const _addlocale = __webpack_require__(8225);
-      const _routercontextsharedruntime = __webpack_require__(6046);
-      const _useintersection = __webpack_require__(2678);
-      const _getdomainlocale = __webpack_require__(4499);
-      const _addbasepath = __webpack_require__(7434);
-      const _usemergedref = __webpack_require__(2263);
-      const _erroronce = __webpack_require__(2197);
+      const _resolvehref = __webpack_require__(7379);
+      const _islocalurl = __webpack_require__(4843);
+      const _formaturl = __webpack_require__(9374);
+      const _utils = __webpack_require__(3116);
+      const _addlocale = __webpack_require__(8065);
+      const _routercontextsharedruntime = __webpack_require__(5470);
+      const _useintersection = __webpack_require__(7686);
+      const _getdomainlocale = __webpack_require__(3267);
+      const _addbasepath = __webpack_require__(1450);
+      const _usemergedref = __webpack_require__(1511);
+      const _erroronce = __webpack_require__(8101);
       const prefetched = new Set();
       function prefetch(router, href, as, options) {
         if (false) {
@@ -416,344 +747,13 @@
 
       /***/
     },
-
-    /***/ 2197: /***/ (__unused_webpack_module, exports) => {
-      "use strict";
-
-      Object.defineProperty(exports, "__esModule", {
-        value: true,
-      });
-      Object.defineProperty(exports, "errorOnce", {
-        enumerable: true,
-        get: function () {
-          return errorOnce;
-        },
-      });
-      let errorOnce = (_) => {};
-      if (false) {
-      } //# sourceMappingURL=error-once.js.map
-
-      /***/
-    },
-
-    /***/ 2263: /***/ (module, exports, __webpack_require__) => {
-      "use strict";
-
-      Object.defineProperty(exports, "__esModule", {
-        value: true,
-      });
-      Object.defineProperty(exports, "useMergedRef", {
-        enumerable: true,
-        get: function () {
-          return useMergedRef;
-        },
-      });
-      const _react = __webpack_require__(2223);
-      function useMergedRef(refA, refB) {
-        const cleanupA = (0, _react.useRef)(null);
-        const cleanupB = (0, _react.useRef)(null);
-        // NOTE: In theory, we could skip the wrapping if only one of the refs is non-null.
-        // (this happens often if the user doesn't pass a ref to Link/Form/Image)
-        // But this can cause us to leak a cleanup-ref into user code (previously via `<Link legacyBehavior>`),
-        // and the user might pass that ref into ref-merging library that doesn't support cleanup refs
-        // (because it hasn't been updated for React 19)
-        // which can then cause things to blow up, because a cleanup-returning ref gets called with `null`.
-        // So in practice, it's safer to be defensive and always wrap the ref, even on React 19.
-        return (0, _react.useCallback)(
-          (current) => {
-            if (current === null) {
-              const cleanupFnA = cleanupA.current;
-              if (cleanupFnA) {
-                cleanupA.current = null;
-                cleanupFnA();
-              }
-              const cleanupFnB = cleanupB.current;
-              if (cleanupFnB) {
-                cleanupB.current = null;
-                cleanupFnB();
-              }
-            } else {
-              if (refA) {
-                cleanupA.current = applyRef(refA, current);
-              }
-              if (refB) {
-                cleanupB.current = applyRef(refB, current);
-              }
-            }
-          },
-          [refA, refB]
-        );
-      }
-      function applyRef(refA, current) {
-        if (typeof refA === "function") {
-          const cleanup = refA(current);
-          if (typeof cleanup === "function") {
-            return cleanup;
-          } else {
-            return () => refA(null);
-          }
-        } else {
-          refA.current = current;
-          return () => {
-            refA.current = null;
-          };
-        }
-      }
-      if (
-        (typeof exports.default === "function" ||
-          (typeof exports.default === "object" && exports.default !== null)) &&
-        typeof exports.default.__esModule === "undefined"
-      ) {
-        Object.defineProperty(exports.default, "__esModule", {
-          value: true,
-        });
-        Object.assign(exports.default, exports);
-        module.exports = exports.default;
-      } //# sourceMappingURL=use-merged-ref.js.map
-
-      /***/
-    },
-
-    /***/ 2369: /***/ (
-      __unused_webpack_module,
-      __webpack_exports__,
-      __webpack_require__
-    ) => {
-      "use strict";
-      __webpack_require__.r(__webpack_exports__);
-      /* harmony export */ __webpack_require__.d(__webpack_exports__, {
-        /* harmony export */ __N_SSP: () => /* binding */ __N_SSP,
-        /* harmony export */ default: () => __WEBPACK_DEFAULT_EXPORT__,
-        /* harmony export */
-      });
-      /* harmony import */ var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__ =
-        __webpack_require__(1503);
-      /* harmony import */ var next_link__WEBPACK_IMPORTED_MODULE_1__ =
-        __webpack_require__(6691);
-      /* harmony import */ var next_link__WEBPACK_IMPORTED_MODULE_1___default =
-        /*#__PURE__*/ __webpack_require__.n(
-          next_link__WEBPACK_IMPORTED_MODULE_1__
-        );
-
-      function aLink(props) {
-        return /*#__PURE__*/ (0,
-        react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxs)("div", {
-          children: [
-            /*#__PURE__*/ (0,
-            react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx)("h3", {
-              children: "A Link page!",
-            }),
-            /*#__PURE__*/ (0,
-            react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx)(
-              next_link__WEBPACK_IMPORTED_MODULE_1___default(),
-              {
-                href: "/",
-                children: "Go to /",
-              }
-            ),
-          ],
-        });
-      }
-      var __N_SSP = true;
-      /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = aLink;
-
-      /***/
-    },
-
-    /***/ 2678: /***/ (module, exports, __webpack_require__) => {
-      "use strict";
-
-      Object.defineProperty(exports, "__esModule", {
-        value: true,
-      });
-      Object.defineProperty(exports, "useIntersection", {
-        enumerable: true,
-        get: function () {
-          return useIntersection;
-        },
-      });
-      const _react = __webpack_require__(2223);
-      const _requestidlecallback = __webpack_require__(4213);
-      const hasIntersectionObserver =
-        typeof IntersectionObserver === "function";
-      const observers = new Map();
-      const idList = [];
-      function createObserver(options) {
-        const id = {
-          root: options.root || null,
-          margin: options.rootMargin || "",
-        };
-        const existing = idList.find(
-          (obj) => obj.root === id.root && obj.margin === id.margin
-        );
-        let instance;
-        if (existing) {
-          instance = observers.get(existing);
-          if (instance) {
-            return instance;
-          }
-        }
-        const elements = new Map();
-        const observer = new IntersectionObserver((entries) => {
-          entries.forEach((entry) => {
-            const callback = elements.get(entry.target);
-            const isVisible =
-              entry.isIntersecting || entry.intersectionRatio > 0;
-            if (callback && isVisible) {
-              callback(isVisible);
-            }
-          });
-        }, options);
-        instance = {
-          id,
-          observer,
-          elements,
-        };
-        idList.push(id);
-        observers.set(id, instance);
-        return instance;
-      }
-      function observe(element, callback, options) {
-        const { id, observer, elements } = createObserver(options);
-        elements.set(element, callback);
-        observer.observe(element);
-        return function unobserve() {
-          elements.delete(element);
-          observer.unobserve(element);
-          // Destroy observer when there's nothing left to watch:
-          if (elements.size === 0) {
-            observer.disconnect();
-            observers.delete(id);
-            const index = idList.findIndex(
-              (obj) => obj.root === id.root && obj.margin === id.margin
-            );
-            if (index > -1) {
-              idList.splice(index, 1);
-            }
-          }
-        };
-      }
-      function useIntersection({ rootRef, rootMargin, disabled }) {
-        const isDisabled = disabled || !hasIntersectionObserver;
-        const [visible, setVisible] = (0, _react.useState)(false);
-        const elementRef = (0, _react.useRef)(null);
-        const setElement = (0, _react.useCallback)((element) => {
-          elementRef.current = element;
-        }, []);
-        (0, _react.useEffect)(() => {
-          if (hasIntersectionObserver) {
-            if (isDisabled || visible) return;
-            const element = elementRef.current;
-            if (element && element.tagName) {
-              const unobserve = observe(
-                element,
-                (isVisible) => isVisible && setVisible(isVisible),
-                {
-                  root: rootRef?.current,
-                  rootMargin,
-                }
-              );
-              return unobserve;
-            }
-          } else {
-            if (!visible) {
-              const idleCallback = (0,
-              _requestidlecallback.requestIdleCallback)(() => setVisible(true));
-              return () =>
-                (0, _requestidlecallback.cancelIdleCallback)(idleCallback);
-            }
-          }
-          // eslint-disable-next-line react-hooks/exhaustive-deps
-        }, [isDisabled, rootMargin, rootRef, visible, elementRef.current]);
-        const resetVisible = (0, _react.useCallback)(() => {
-          setVisible(false);
-        }, []);
-        return [setElement, visible, resetVisible];
-      }
-      if (
-        (typeof exports.default === "function" ||
-          (typeof exports.default === "object" && exports.default !== null)) &&
-        typeof exports.default.__esModule === "undefined"
-      ) {
-        Object.defineProperty(exports.default, "__esModule", {
-          value: true,
-        });
-        Object.assign(exports.default, exports);
-        module.exports = exports.default;
-      } //# sourceMappingURL=use-intersection.js.map
-
-      /***/
-    },
-
-    /***/ 4499: /***/ (module, exports, __webpack_require__) => {
-      "use strict";
-
-      Object.defineProperty(exports, "__esModule", {
-        value: true,
-      });
-      Object.defineProperty(exports, "getDomainLocale", {
-        enumerable: true,
-        get: function () {
-          return getDomainLocale;
-        },
-      });
-      const _normalizetrailingslash = __webpack_require__(1379);
-      const basePath =
-        /* unused pure expression or super */ null && (false || "");
-      function getDomainLocale(path, locale, locales, domainLocales) {
-        if (false) {
-        } else {
-          return false;
-        }
-      }
-      if (
-        (typeof exports.default === "function" ||
-          (typeof exports.default === "object" && exports.default !== null)) &&
-        typeof exports.default.__esModule === "undefined"
-      ) {
-        Object.defineProperty(exports.default, "__esModule", {
-          value: true,
-        });
-        Object.assign(exports.default, exports);
-        module.exports = exports.default;
-      } //# sourceMappingURL=get-domain-locale.js.map
-
-      /***/
-    },
-
-    /***/ 6691: /***/ (
-      module,
-      __unused_webpack_exports,
-      __webpack_require__
-    ) => {
-      module.exports = __webpack_require__(69);
-
-      /***/
-    },
-
-    /***/ 6771: /***/ (
-      __unused_webpack_module,
-      __unused_webpack_exports,
-      __webpack_require__
-    ) => {
-      (window.__NEXT_P = window.__NEXT_P || []).push([
-        "/link",
-        function () {
-          return __webpack_require__(2369);
-        },
-      ]);
-      if (false) {
-      }
-
-      /***/
-    },
   },
   /******/ (__webpack_require__) => {
     // webpackRuntimeModules
     /******/ var __webpack_exec__ = (moduleId) =>
       __webpack_require__((__webpack_require__.s = moduleId));
     /******/ __webpack_require__.O(0, [636, 6593, 8792], () =>
-      __webpack_exec__(6771)
+      __webpack_exec__(2025)
     );
     /******/ var __webpack_exports__ = __webpack_require__.O();
     /******/ _N_E = __webpack_exports__;
Diff for routerDirect-HASH.js
@@ -1,7 +1,34 @@
 (self["webpackChunk_N_E"] = self["webpackChunk_N_E"] || []).push([
   [188],
   {
-    /***/ 97: /***/ (
+    /***/ 417: /***/ (
+      __unused_webpack_module,
+      __unused_webpack_exports,
+      __webpack_require__
+    ) => {
+      (window.__NEXT_P = window.__NEXT_P || []).push([
+        "/routerDirect",
+        function () {
+          return __webpack_require__(5491);
+        },
+      ]);
+      if (false) {
+      }
+
+      /***/
+    },
+
+    /***/ 1840: /***/ (
+      module,
+      __unused_webpack_exports,
+      __webpack_require__
+    ) => {
+      module.exports = __webpack_require__(3252);
+
+      /***/
+    },
+
+    /***/ 5491: /***/ (
       __unused_webpack_module,
       __webpack_exports__,
       __webpack_require__
@@ -16,7 +43,7 @@
       /* harmony import */ var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__ =
         __webpack_require__(1503);
       /* harmony import */ var next_router__WEBPACK_IMPORTED_MODULE_1__ =
-        __webpack_require__(7798);
+        __webpack_require__(1840);
       /* harmony import */ var next_router__WEBPACK_IMPORTED_MODULE_1___default =
         /*#__PURE__*/ __webpack_require__.n(
           next_router__WEBPACK_IMPORTED_MODULE_1__
@@ -35,40 +62,13 @@
 
       /***/
     },
-
-    /***/ 4283: /***/ (
-      __unused_webpack_module,
-      __unused_webpack_exports,
-      __webpack_require__
-    ) => {
-      (window.__NEXT_P = window.__NEXT_P || []).push([
-        "/routerDirect",
-        function () {
-          return __webpack_require__(97);
-        },
-      ]);
-      if (false) {
-      }
-
-      /***/
-    },
-
-    /***/ 7798: /***/ (
-      module,
-      __unused_webpack_exports,
-      __webpack_require__
-    ) => {
-      module.exports = __webpack_require__(9300);
-
-      /***/
-    },
   },
   /******/ (__webpack_require__) => {
     // webpackRuntimeModules
     /******/ var __webpack_exec__ = (moduleId) =>
       __webpack_require__((__webpack_require__.s = moduleId));
     /******/ __webpack_require__.O(0, [636, 6593, 8792], () =>
-      __webpack_exec__(4283)
+      __webpack_exec__(417)
     );
     /******/ var __webpack_exports__ = __webpack_require__.O();
     /******/ _N_E = __webpack_exports__;
Diff for script-HASH.js
@@ -1,17 +1,7 @@
 (self["webpackChunk_N_E"] = self["webpackChunk_N_E"] || []).push([
   [1209],
   {
-    /***/ 5964: /***/ (
-      module,
-      __unused_webpack_exports,
-      __webpack_require__
-    ) => {
-      module.exports = __webpack_require__(2010);
-
-      /***/
-    },
-
-    /***/ 7758: /***/ (
+    /***/ 1312: /***/ (
       __unused_webpack_module,
       __webpack_exports__,
       __webpack_require__
@@ -26,7 +16,7 @@
       /* harmony import */ var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__ =
         __webpack_require__(1503);
       /* harmony import */ var next_script__WEBPACK_IMPORTED_MODULE_1__ =
-        __webpack_require__(5964);
+        __webpack_require__(2398);
       /* harmony import */ var next_script__WEBPACK_IMPORTED_MODULE_1___default =
         /*#__PURE__*/ __webpack_require__.n(
           next_script__WEBPACK_IMPORTED_MODULE_1__
@@ -59,7 +49,17 @@
       /***/
     },
 
-    /***/ 8803: /***/ (
+    /***/ 2398: /***/ (
+      module,
+      __unused_webpack_exports,
+      __webpack_require__
+    ) => {
+      module.exports = __webpack_require__(8954);
+
+      /***/
+    },
+
+    /***/ 4305: /***/ (
       __unused_webpack_module,
       __unused_webpack_exports,
       __webpack_require__
@@ -67,7 +67,7 @@
       (window.__NEXT_P = window.__NEXT_P || []).push([
         "/script",
         function () {
-          return __webpack_require__(7758);
+          return __webpack_require__(1312);
         },
       ]);
       if (false) {
@@ -81,7 +81,7 @@
     /******/ var __webpack_exec__ = (moduleId) =>
       __webpack_require__((__webpack_require__.s = moduleId));
     /******/ __webpack_require__.O(0, [636, 6593, 8792], () =>
-      __webpack_exec__(8803)
+      __webpack_exec__(4305)
     );
     /******/ var __webpack_exports__ = __webpack_require__.O();
     /******/ _N_E = __webpack_exports__;
Diff for withRouter-HASH.js
@@ -1,7 +1,7 @@
 (self["webpackChunk_N_E"] = self["webpackChunk_N_E"] || []).push([
   [3263],
   {
-    /***/ 184: /***/ (
+    /***/ 358: /***/ (
       __unused_webpack_module,
       __webpack_exports__,
       __webpack_require__
@@ -16,7 +16,7 @@
       /* harmony import */ var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__ =
         __webpack_require__(1503);
       /* harmony import */ var next_router__WEBPACK_IMPORTED_MODULE_1__ =
-        __webpack_require__(7798);
+        __webpack_require__(1840);
       /* harmony import */ var next_router__WEBPACK_IMPORTED_MODULE_1___default =
         /*#__PURE__*/ __webpack_require__.n(
           next_router__WEBPACK_IMPORTED_MODULE_1__
@@ -35,7 +35,17 @@
       /***/
     },
 
-    /***/ 3163: /***/ (
+    /***/ 1840: /***/ (
+      module,
+      __unused_webpack_exports,
+      __webpack_require__
+    ) => {
+      module.exports = __webpack_require__(3252);
+
+      /***/
+    },
+
+    /***/ 4041: /***/ (
       __unused_webpack_module,
       __unused_webpack_exports,
       __webpack_require__
@@ -43,7 +53,7 @@
       (window.__NEXT_P = window.__NEXT_P || []).push([
         "/withRouter",
         function () {
-          return __webpack_require__(184);
+          return __webpack_require__(358);
         },
       ]);
       if (false) {
@@ -51,23 +61,13 @@
 
       /***/
     },
-
-    /***/ 7798: /***/ (
-      module,
-      __unused_webpack_exports,
-      __webpack_require__
-    ) => {
-      module.exports = __webpack_require__(9300);
-
-      /***/
-    },
   },
   /******/ (__webpack_require__) => {
     // webpackRuntimeModules
     /******/ var __webpack_exec__ = (moduleId) =>
       __webpack_require__((__webpack_require__.s = moduleId));
     /******/ __webpack_require__.O(0, [636, 6593, 8792], () =>
-      __webpack_exec__(3163)
+      __webpack_exec__(4041)
     );
     /******/ var __webpack_exports__ = __webpack_require__.O();
     /******/ _N_E = __webpack_exports__;
Diff for 436-HASH.js

Diff too large to display

Diff for 9760-HASH.js
failed to diff
Diff for main-HASH.js

Diff too large to display

Diff for app-page-exp..ntime.dev.js
failed to diff
Diff for app-page-exp..time.prod.js

Diff too large to display

Diff for app-page-tur..ntime.dev.js
failed to diff
Diff for app-page-tur..time.prod.js

Diff too large to display

Diff for app-page-tur..ntime.dev.js
failed to diff
Diff for app-page-tur..time.prod.js

Diff too large to display

Diff for app-page.runtime.dev.js
failed to diff
Diff for app-page.runtime.prod.js

Diff too large to display

Diff for app-route-ex..ntime.dev.js

Diff too large to display

Diff for app-route-ex..time.prod.js

Diff too large to display

Diff for app-route-tu..ntime.dev.js

Diff too large to display

Diff for app-route-tu..time.prod.js

Diff too large to display

Diff for app-route-tu..ntime.dev.js

Diff too large to display

Diff for app-route-tu..time.prod.js

Diff too large to display

Diff for app-route.runtime.dev.js

Diff too large to display

Diff for app-route.ru..time.prod.js

Diff too large to display

Diff for pages-api-tu..ntime.dev.js

Diff too large to display

Diff for pages-api-tu..time.prod.js

Diff too large to display

Diff for pages-api.runtime.dev.js

Diff too large to display

Diff for pages-api.ru..time.prod.js

Diff too large to display

Diff for pages-turbo...ntime.dev.js

Diff too large to display

Diff for pages-turbo...time.prod.js

Diff too large to display

Diff for pages.runtime.dev.js

Diff too large to display

Diff for pages.runtime.prod.js

Diff too large to display

Diff for server.runtime.prod.js

Diff too large to display

Commit: 0b0fc8e

@ijjk ijjk added the tests label Sep 25, 2025
@SyMind SyMind changed the title chore: upgrade rspack 1.5.7 chore: upgrade rspack 1.5.8 Sep 30, 2025
@SyMind SyMind force-pushed the upgrade-rspack-v1.5.7 branch from 384c948 to fb0b741 Compare September 30, 2025 02:36
@SyMind SyMind force-pushed the upgrade-rspack-v1.5.7 branch from 55b3ac3 to 4d2acfe Compare October 14, 2025 08:35
@codspeed-hq
Copy link
Copy Markdown

codspeed-hq bot commented Oct 15, 2025

CodSpeed Performance Report

Merging #84210 will degrade performances by 5.75%

Comparing SyMind:upgrade-rspack-v1.5.7 (04d8638) with canary (1b9eb60)

Summary

⚡ 1 improvement
❌ 1 regression
✅ 6 untouched
⏩ 12 skipped1

⚠️ Please fix the performance issues or acknowledge them on CodSpeed.

Benchmarks breakdown

Mode Benchmark BASE HEAD Change
Simulation app-page-turbo.runtime.prod.js[full] 732.6 ms 777.2 ms -5.75%
Simulation jsonwebtoken.js[tracing] 324.3 ms 301 ms +7.75%

Footnotes

  1. 12 benchmarks were skipped, so the baseline results were used instead. If they were deleted from the codebase, click here and archive them to remove them from the performance reports.

@SyMind SyMind force-pushed the upgrade-rspack-v1.5.7 branch from ff7d6f6 to 523958f Compare October 15, 2025 06:04
@SyMind SyMind force-pushed the upgrade-rspack-v1.5.7 branch from 523958f to 5fe5f55 Compare October 15, 2025 08:15
@SyMind SyMind force-pushed the upgrade-rspack-v1.5.7 branch from 4ae0f88 to 77990f2 Compare November 2, 2025 13:46
@SyMind SyMind changed the title chore: upgrade rspack 1.5.8 chore: upgrade rspack 1.6.0 Nov 3, 2025
@SyMind SyMind marked this pull request as ready for review November 3, 2025 07:51
@SyMind SyMind marked this pull request as draft November 3, 2025 07:52
@SyMind SyMind force-pushed the upgrade-rspack-v1.5.7 branch from c7f2798 to 3b7af0e Compare November 5, 2025 08:33
@SyMind SyMind marked this pull request as ready for review November 5, 2025 10:20
@bgw bgw enabled auto-merge (squash) November 5, 2025 18:07
@bgw bgw disabled auto-merge November 5, 2025 21:15
@bgw bgw enabled auto-merge (squash) November 5, 2025 22:01
@bgw bgw merged commit ed41ac1 into vercel:canary Nov 6, 2025
293 of 315 checks passed
huozhi pushed a commit that referenced this pull request Nov 12, 2025
1. Fixed the incremental update bug in buildChunkGraph.
2. Fixed a bug in Rspack's built-in CssChunkingPlugin.

For detailed release information, please see
https://github.com/web-infra-dev/rspack/releases.

Note: All the faulty Rspack test cases on GitHub, from what I can see,
either time out or also produce errors in Rspack version 1.5.0.

---------

Co-authored-by: Benjamin Woodruff <benjamin.woodruff@vercel.com>
huozhi pushed a commit that referenced this pull request Nov 12, 2025
1. Fixed the incremental update bug in buildChunkGraph.
2. Fixed a bug in Rspack's built-in CssChunkingPlugin.

For detailed release information, please see
https://github.com/web-infra-dev/rspack/releases.

Note: All the faulty Rspack test cases on GitHub, from what I can see,
either time out or also produce errors in Rspack version 1.5.0.

---------

Co-authored-by: Benjamin Woodruff <benjamin.woodruff@vercel.com>
@github-actions github-actions bot locked as resolved and limited conversation to collaborators Nov 20, 2025
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants