Skip to content

[pull] canary from vercel:canary#1078

Merged
pull[bot] merged 6 commits into
code:canaryfrom
vercel:canary
May 27, 2026
Merged

[pull] canary from vercel:canary#1078
pull[bot] merged 6 commits into
code:canaryfrom
vercel:canary

Conversation

@pull

@pull pull Bot commented May 27, 2026

Copy link
Copy Markdown

See Commits and Changes for more details.


Created by pull[bot] (v2.0.0-alpha.4)

Can you help keep this open source service alive? 💖 Please sponsor : )

icyJoseph and others added 6 commits May 27, 2026 19:22
I've seen people asking about `transpilePackages` before, and now we
got: #93542

This PR attempt to make its usage clearer.
… rule (#94113)

Agent friction report flagged three gaps in the instant-nav loop's
third-lever guidance:

- "on the I/O function" wasn't precise enough. The directive needs to
enclose the `cookies()` / `headers()` / `searchParams` read, not
whatever function does the downstream fetch. When those are split across
frames (page reads cookies, helper does the fetch), the natural reading
puts `'use cache: private'` on the helper alone and the page stays
dynamic. Compiles fine, types fine — only runtime tells you.
- The doc says private-cache results live in the browser only, never on
the server. Skill didn't mention this, and without it the
runtime-prefetch combo doesn't really make sense (why would
link-visibility resolve a server-keyed cache?).
- Verify recipe said "after-shot must visibly differ." Identical shots
can also mean no I/O resolved either time — stale TLS sockets, DB
unreachable, etc. Added a check-logs-first guard before iterating on
code shape.

Also a separate gotcha bullet in `SKILL.md`: dev doesn't fire prefetch
traffic at all (see `packages/next/src/client/components/links.ts:247`),
so the network tab won't tell you whether your code works. Use the
cookie-locked SPA-nav recipe instead.

Skill markdown only. No runtime changes.

<!-- NEXT_JS_LLM_PR -->
We're using 16 core machines, our `TEST_CONCURRENCY` of 8 is arbitrary.
This tries increasing that to 12.

- GH Actions for 8 (control, #94142):
https://github.com/vercel/next.js/actions/workflows/build_and_test.yml?query=branch%3Abgw%2Ftest-concurrency-8
- GH Actions for 12 (this branch):
https://github.com/vercel/next.js/actions/workflows/build_and_test.yml?query=branch%3Abgw%2Ftest-concurrency-12
- GH Actions for 16 (#94133):
https://github.com/vercel/next.js/actions/workflows/build_and_test.yml?query=branch%3Abgw%2Ftest-concurrency-16

It appeared that (across a couple of runs) that `TEST_CONCURRENCY=16`
*may* lead to more test failures. Plausibly this could be due to
timeouts. `TEST_CONCURRENCY=12` does not appear to be causing noticeably
more failures than usual, and seems to be slightly speeding things up.

Datadog SQL:

```
SELECT
  SUM(duration) / 1000 / 1000 / 1000 / 60 as minutes,
  branch,
  ci_pipeline_id
FROM dd.ci_pipelines(
    columns => ARRAY ['@ci.pipeline.id', '@duration', '@git.branch'],
    event_type => 'step',
    filter => '@git.repository.id_v2:github.com/vercel/next.js @ci.pipeline.name:build-and-test @ci.provider.instance:github-actions @ci.pipeline.id:(26473602379-1 OR 26484229016-1 OR 26485947297-1 OR 26493064901-1 OR 26492002693-1 OR 26485986756-1 OR 26485929595-1 OR 26484214883-1 OR 26480156826-1)',
    from_timestamp => now() - INTERVAL '30 days',
    to_timestamp => now()
  ) AS (
    ci_pipeline_id VARCHAR,
    duration BIGINT,
    branch VARCHAR
  )
GROUP BY branch, ci_pipeline_id ORDER BY branch;
```

<img width="1193" height="807" alt="Screenshot 2026-05-26 at 11 07
05 PM"
src="https://github.com/user-attachments/assets/bbd75ee1-9766-48a8-90da-6225908de251"
/>
[diff
react/react@75b0945b...c0cd4d5d](react/react@75b0945...c0cd4d5)

<details>
<summary>React upstream changes</summary>

- react/react#36328
- react/react#36542
- react/react#36544

</details>

---------

Co-authored-by: next-js-bot[bot] <279046576+next-js-bot[bot]@users.noreply.github.com>
… name, not just a hash and run number (#93957)

This should make the output of `gh cache list` a lot clearer. Without
this, it's not obvious where these cache keys are coming from.
@pull pull Bot locked and limited conversation to collaborators May 27, 2026
@pull pull Bot added the ⤵️ pull label May 27, 2026
@pull pull Bot merged commit 3127d71 into code:canary May 27, 2026
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.

5 participants