cloudflare/vinext

App Router: parallel route slots drop dynamic params (`catchAll`/`[...slug]`)

Fermée

#1 536 ouverte le 22 mai 2026

 (0 commentaire) (0 réaction) (0 personne assignée)TypeScript (384 forks)github user discovery
adapter-api-e2ehelp wanted

Métriques du dépôt

Stars
 (8 625 étoiles)
Métriques de merge PR
 (Merge moyen 1j 1h) (462 PRs mergées en 30 j)

Description

This issue was created by an agent analysing CI failures from the Next.js Deploy Suite (vinext main vs Next.js v16.2.6, 2026-05-22).

Problem

Pages under a parallel slot with a catch-all dynamic segment receive a params object that omits the dynamic key entirely. The matched catchAll: ['sub','folder'] array is dropped both on initial SSR and on client navigations, leaving only the static keys.

Parallel slot's catchAll params key dropped from `params`

Estimated Impact

~2 test failures across the deploy suite.

Affected Test Suites

  • test/e2e/app-dir/parallel-route-navigations/parallel-route-navigations.test.ts (2 failures)

Recommendation

  1. Reproduce first in vinext's own test suite. Add a @slot/[...catchAll]/page.tsx and assert params.catchAll is populated on SSR and after client nav.

  2. Pass dynamic params through the parallel-slot resolver. When matching parallel slots, accumulate dynamic params from the slot path into params rather than only the children path.


Part of #1328.

Guide contributeur