Skip to content

[pull] canary from vercel:canary#1213

Merged
pull[bot] merged 5 commits into
code:canaryfrom
vercel:canary
Jul 14, 2026
Merged

[pull] canary from vercel:canary#1213
pull[bot] merged 5 commits into
code:canaryfrom
vercel:canary

Conversation

@pull

@pull pull Bot commented Jul 14, 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 5 commits July 14, 2026 12:03
Link pointing back to its own section.
### What?

Add a repository skill for building local React stable and experimental
bundles, syncing them into Next.js, and verifying the integration.

### Why?

Testing upstream React changes in Next.js requires a precise bundle
list, both React release channels, and the repository-pinned pnpm
version. Capturing the workflow as a skill makes it repeatable and
avoids global pnpm versions bypassing workspace linking.

### How?

Add `$react-sync` with a reusable build helper and document it in
`AGENTS.md`. The sync command puts the Corepack shim first on `PATH` so
nested pnpm commands use the version pinned by Next.js.

### Verification

- `bash -n .agents/skills/react-sync/scripts/build-for-next.sh`
- `python3
~/.codex/skills/.system/skill-creator/scripts/quick_validate.py
.agents/skills/react-sync`
- Prettier check for `AGENTS.md` and `SKILL.md`
- Full local React build and `pnpm sync-react` workflow completed
successfully
- `pnpm --filter=next build`

<!-- NEXT_JS_LLM_PR -->
This statement was unnecessarily strict
## What?

Adds the experimental Request Insights panel to the Next.js DevTools
overlay.

The panel provides:

- A retained request list with stable selection as new requests arrive.
- A “Page load” marker for the exact initial document request.
- An end-to-end trace timeline that follows the recorded span hierarchy.
- A focused default view of high-level spans and a verbose view for
deeper investigation.
- Fetch, cache, request, status, duration, and span-count details.
- Readable sub-millisecond durations and consistent right-aligned
request metrics.

This PR is intentionally limited to the Request Insights UI. Additional
OpenTelemetry coverage, span display names, and Server Action tracing
are split into the dependent PRs below.

## Why?

The Request Insights data was already available to tools, but inspecting
it required consuming the development endpoint or CLI output. The
DevTools panel makes the same request, fetch, cache, and timing
information directly inspectable while developing an application.

The focused/verbose split keeps the default trace useful for
understanding the request lifecycle without hiding the lower-level spans
needed for investigation.

## How?

- Adds a Request Insights panel and request list to the DevTools
overlay.
- Builds timeline rows from recorded parent/child relationships instead
of assigning synthetic sections.
- Uses the request’s full duration as the timeline range and clips
outlier spans to that range.
- Merges recorded fetch metrics with their corresponding fetch spans.
- Preserves the selected request ID until that request is no longer
retained.
- Compares `request.requestId` with `self.__next_r` to identify only the
initial document request.

## Stack

The first four Request Insights foundation PRs have already merged. The
remaining review stack is:

1. **#93978 — Request Insights UI (this PR)**
2. #95765 — Missing OpenTelemetry spans
3. #95766 — Human-readable OpenTelemetry span names
4. #95767 — Server Action tracing and resolution

## Verification

- `pnpm --filter=next build`
- `pnpm exec jest
packages/next/src/next-devtools/dev-overlay/components/request-insights/trace-viewer.test.ts
--runInBand`

<!-- NEXT_JS_LLM -->

---------

Co-authored-by: Tim Neutkens <tim@timneutkens.nl>
The error page did not mention an alternative for Route Handlers.
@pull pull Bot locked and limited conversation to collaborators Jul 14, 2026
@pull pull Bot added the ⤵️ pull label Jul 14, 2026
@pull pull Bot merged commit 303f7ff into code:canary Jul 14, 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.

3 participants