next
- Migration incomplete: 3 synchronous cookies() reads in app/(account)/layout.tsx.
- Major version: next 15 → 16.
Evidence trail
Every step Darwin took, from the records it keeps
Found behind latest
next 15.5.4 is declared in package.json; the registry's latest is 16.0.1.
Compared the release's API
Next.js 16 renames middleware to proxy and removes synchronous access to cookies(), headers() and params. The migration covered 9 of 12 uses; 3 in app/(account)/layout.tsx need a design decision about streaming.
Candidate Result Reason 16.0.1 Probable middleware.ts is renamed proxy.ts; synchronous cookies() and params access are removed (12 uses found) Vercel: middleware becomes proxy; request APIs are async only
middleware.ts is renamed proxy.ts, and synchronous access to cookies(), headers(), draftMode() and params is removed.
− const theme = cookies().get("theme")+ const theme = (await cookies()).get("theme")Evidence: Upgrade guide (docs/app/guides/upgrading/version-16) · Type declarations (next/headers.d.ts: cookies(): Promise<ReadonlyRequestCookies>)
Validation found a regression
Each check ran on the unmodified repository first; only checks that pass there judge the change. One repair attempt ran after the first failure.
Check From Unmodified With change Tests pnpm build ci.yml · build Passed Passed — pnpm test ci.yml · unit Passed Failed 684 Already failing before the change, so not counted against it: pnpm test:e2e
Opened #405 as a draft
Next.js 16: rename middleware to proxy, await request APIs (partial). Your repository's own CI judged it: CI failed
Check Workflow Verdict Note unit ci.yml Regression app/(account)/layout.test.tsx: cookies() returned a Promise e2e e2e.yml Already failing also fails on main (secret PLAYWRIGHT_BASE_URL) build ci.yml Passed 3 min Waiting for a person to merge
Held for a human: the migration ended manual. A draft PR states what is left.
Summary
- Repository
- acme/web-app
- Present
- 15.5.4
- Latest
- 16.0.1
- Proposed
- 16.0.1
- Kind
- Code migration
- Checked
- Oct 29, 02:12 UTC
- Pull request
- Draft#405
- Reviewers
- lee
For agents
The same record, over MCP
dovel_get_update({
id: "web-app--next"
})