diff --git a/.github/workflows/pr-checks.yml b/.github/workflows/pr-checks.yml
index b7d4230d40..0132b1b88d 100644
--- a/.github/workflows/pr-checks.yml
+++ b/.github/workflows/pr-checks.yml
@@ -22,22 +22,56 @@ jobs:
pull-requests: read
steps:
+ - name: Check changed files
+ env:
+ GH_TOKEN: ${{ github.token }}
+ id: changed-files
+ run: |
+ changed_files="$(gh pr diff "${{ github.event.pull_request.number }}" --repo "$GITHUB_REPOSITORY" --name-only)"
+
+ touches_scripts="false"
+ touches_packages="false"
+
+ while IFS= read -r file; do
+ case "$file" in
+ scripts/*) touches_scripts="true" ;;
+ packages/*) touches_packages="true" ;;
+ esac
+ done <<< "$changed_files"
+
+ if [ "$touches_scripts" = "true" ] && [ "$touches_packages" = "true" ]; then
+ echo "PR checks cannot safely run when a PR changes both scripts/ and packages/."
+ echo "Please split automation changes and package changes into separate PRs."
+ exit 1
+ elif [ "$touches_scripts" = "true" ]; then
+ echo "PR touches scripts/ without touching packages/; skipping community helper checks."
+ echo '{"prNumber":${{ github.event.pull_request.number }},"actions":[]}' > pr-checks-result.json
+ echo "mode=skip" >> "$GITHUB_OUTPUT"
+ else
+ echo "mode=run" >> "$GITHUB_OUTPUT"
+ fi
+
- name: Checkout repo
+ if: steps.changed-files.outputs.mode == 'run'
uses: actions/checkout@v7
- name: Setup pnpm
+ if: steps.changed-files.outputs.mode == 'run'
uses: pnpm/action-setup@v6
- name: Setup node
+ if: steps.changed-files.outputs.mode == 'run'
uses: actions/setup-node@v6
with:
node-version-file: ".nvmrc"
cache: pnpm
- name: Install deps
+ if: steps.changed-files.outputs.mode == 'run'
run: pnpm install --frozen-lockfile
- name: Run checks
+ if: steps.changed-files.outputs.mode == 'run'
env:
GITHUB_TOKEN: ${{ github.token }}
PR_NUMBER: ${{ github.event.pull_request.number }}
diff --git a/CHANGELOG.md b/CHANGELOG.md
index f1548a9f61..0c4875750f 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -16,6 +16,9 @@ We manage release notes in this file instead of the paginated Github Releases Pa
Table of Contents
- [React Router Releases](#react-router-releases)
+ - [v8.1.0](#v810)
+ - [Agent Skills Installation via `create-react-router`](#agent-skills-installation-via-create-react-router)
+ - [Observability Metadata](#observability-metadata)
- [v8.0.1](#v801)
- [v8.0.0](#v800)
- [Baseline Support](#baseline-support)
@@ -104,6 +107,70 @@ We manage release notes in this file instead of the paginated Github Releases Pa
+## v8.1.0
+
+Date: 2026-06-29
+
+### What's Changed
+
+#### Agent Skills Installation via `create-react-router`
+
+`create-react-router` can now setup the React Router [Agent Skill](https://github.com/remix-run/react-router/tree/main/.agents/skills/react-router) in your new project. Interactive shells will issue a prompt on whether to include the skills, and they will be included by default with when running with `--yes` or in non-interactive shells. You can skip the skill addition with the `--no-agent-skills` CLI flag.
+
+#### Observability Metadata
+
+The Instrumentation APIs `info` parameter usually corresponds roughly to the inputs to the thing being instrumented (`handler`, `loader`, etc.). For route level instrumentations such as loaders, this contains useful information like the `pattern` (i.e., `/blog/:slug`) that allows you to report information that is easily aggregated by pattern, instead of having to manually deduce one from the request url.
+
+However, for outer layers such as the `handler` or a router `navigate` call - we can't provide a `pattern` because we haven't yet done any route matching, so it wasn't easy to report at those levels based on a generic route pattern.
+
+The internal instrumentation results now contain relevant metadata in `result.meta` for these outer instrumentation layers. For server `handler` instrumentations, we also expose the `statusCode` of the outgoing HTTP response:
+
+```ts
+export const instrumentations = [
+ {
+ handler(handler) {
+ handler.instrument({
+ async request(handleRequest) {
+ let result = await handleRequest();
+
+ // Available to server `handler`, and router `navigate`/`fetch` instrumentations
+ let normalizedUrl = result.meta?.url;
+ let routePattern = result.meta?.pattern;
+ let routeParams = result.meta?.params;
+
+ // Available to server `handler` only
+ let statusCode = result.statusCode;
+ },
+ });
+ },
+ },
+];
+```
+
+Please see the [docs](https://reactrouter.com/how-to/instrumentation#result-metadata) for more information.
+
+### Minor Changes
+
+- `react-router` - Return route metadata from server request, client navigation, and client fetcher instrumentations ([#15235](https://github.com/remix-run/react-router/pull/15235))
+ - Adds result metadata after instrumented calls complete, including the URL, matched route pattern, and params
+ - Adds known HTTP status codes to server request handler instrumentation results
+- `create-react-router` - Add a default-on CLI option to include the official React Router agent skill in generated projects ([#15213](https://github.com/remix-run/react-router/pull/15213))
+ - New projects include `.agents/skills/react-router` by default when running with `--yes` or in non-interactive shells
+ - Interactive runs prompt to include the skill, defaulting to yes
+ - Use `--no-agent-skills` to skip copying the skill
+
+### Patch Changes
+
+- `@react-router/dev` - Fix a regression with the new prerendering plugin where the `react-router.config.ts` `buildEnd` hook would run before prerendering was completed ([#15211](https://github.com/remix-run/react-router/pull/15211))
+- `@react-router/dev` - Fixed `react-router typegen` crashes under the Bun runtime when Babel default imports are already unwrapped ([#15214](https://github.com/remix-run/react-router/pull/15214))
+- `@react-router/dev` - Replace the deprecated `envFile:false` Vite config with `envDir:false` to eliminate a deprecation warning when using vite@8.1.0+ ([#15230](https://github.com/remix-run/react-router/pull/15230))
+- `@react-router/dev` - Only add the `"node"` Vite server condition for Framework mode apps that declare a Node server adapter dependency ([#15242](https://github.com/remix-run/react-router/pull/15242))
+ - This prevents non-Node SSR runtimes from resolving Node-specific package exports by default
+- `@react-router/serve` - Use Node's built-in networking APIs to find an available port and remove the `get-port` dependency ([#15239](https://github.com/remix-run/react-router/pull/15239))
+- `create-react-router` - Use Node's built-in utilities for CLI argument parsing, ANSI-stripping, and child process execution to remove the `arg`, `strip-ansi`, and `execa` dependencies ([#15231](https://github.com/remix-run/react-router/pull/15231))
+
+**Full Changelog**: [`v8.0.1...v8.1.0`](https://github.com/remix-run/react-router/compare/react-router@8.0.1...react-router@8.1.0)
+
## v8.0.1
Date: 2026-06-18
diff --git a/packages/create-react-router/.changes/minor.agent-skills.md b/packages/create-react-router/.changes/minor.agent-skills.md
deleted file mode 100644
index dbccc8b34f..0000000000
--- a/packages/create-react-router/.changes/minor.agent-skills.md
+++ /dev/null
@@ -1,5 +0,0 @@
-Add a default-on CLI option to include the official React Router agent skill in generated projects.
-
-- New projects include `.agents/skills/react-router` by default when running with `--yes` or in non-interactive shells.
-- Interactive runs prompt to include the skill, defaulting to yes.
-- Use `--no-agent-skills` to skip copying the skill.
diff --git a/packages/create-react-router/.changes/patch.use-node-parse-args.md b/packages/create-react-router/.changes/patch.use-node-parse-args.md
deleted file mode 100644
index 86980802f4..0000000000
--- a/packages/create-react-router/.changes/patch.use-node-parse-args.md
+++ /dev/null
@@ -1 +0,0 @@
-Use Node's built-in utilities for CLI argument parsing, ANSI-stripping, and child process execution to remove the `arg`, `strip-ansi`, and `execa` dependencies.
diff --git a/packages/create-react-router/CHANGELOG.md b/packages/create-react-router/CHANGELOG.md
index d2ad382a70..9a3996c9e4 100644
--- a/packages/create-react-router/CHANGELOG.md
+++ b/packages/create-react-router/CHANGELOG.md
@@ -1,5 +1,18 @@
# `create-react-router`
+## v8.1.0
+
+### Minor Changes
+
+- Add a default-on CLI option to include the official React Router agent skill in generated projects ([#15213](https://github.com/remix-run/react-router/pull/15213))
+ - New projects include `.agents/skills/react-router` by default when running with `--yes` or in non-interactive shells
+ - Interactive runs prompt to include the skill, defaulting to yes
+ - Use `--no-agent-skills` to skip copying the skill
+
+### Patch Changes
+
+- Use Node's built-in utilities for CLI argument parsing, ANSI-stripping, and child process execution to remove the `arg`, `strip-ansi`, and `execa` dependencies ([#15231](https://github.com/remix-run/react-router/pull/15231))
+
## v8.0.1
### Patch Changes
diff --git a/packages/create-react-router/package.json b/packages/create-react-router/package.json
index 5b5b10e09f..a282395c79 100644
--- a/packages/create-react-router/package.json
+++ b/packages/create-react-router/package.json
@@ -1,7 +1,7 @@
{
"name": "create-react-router",
"type": "module",
- "version": "8.0.1",
+ "version": "8.1.0",
"description": "Create a new React Router app",
"homepage": "https://reactrouter.com",
"bugs": {
diff --git a/packages/react-router-architect/CHANGELOG.md b/packages/react-router-architect/CHANGELOG.md
index 5212dbb44f..ebedd043d6 100644
--- a/packages/react-router-architect/CHANGELOG.md
+++ b/packages/react-router-architect/CHANGELOG.md
@@ -1,5 +1,13 @@
# `@react-router/architect`
+## v8.1.0
+
+### Patch Changes
+
+- Updated dependencies:
+ - [`react-router@8.1.0`](https://github.com/remix-run/react-router/releases/tag/react-router@8.1.0)
+ - [`@react-router/node@8.1.0`](https://github.com/remix-run/react-router/releases/tag/@react-router/node@8.1.0)
+
## v8.0.1
### Patch Changes
diff --git a/packages/react-router-architect/package.json b/packages/react-router-architect/package.json
index 49f6223109..d21551ec8a 100644
--- a/packages/react-router-architect/package.json
+++ b/packages/react-router-architect/package.json
@@ -1,7 +1,7 @@
{
"name": "@react-router/architect",
"type": "module",
- "version": "8.0.1",
+ "version": "8.1.0",
"description": "Architect server request handler for React Router",
"bugs": {
"url": "https://github.com/remix-run/react-router/issues"
diff --git a/packages/react-router-cloudflare/CHANGELOG.md b/packages/react-router-cloudflare/CHANGELOG.md
index a445375b34..1e06837081 100644
--- a/packages/react-router-cloudflare/CHANGELOG.md
+++ b/packages/react-router-cloudflare/CHANGELOG.md
@@ -1,5 +1,12 @@
# `@react-router/cloudflare`
+## v8.1.0
+
+### Patch Changes
+
+- Updated dependencies:
+ - [`react-router@8.1.0`](https://github.com/remix-run/react-router/releases/tag/react-router@8.1.0)
+
## v8.0.1
### Patch Changes
diff --git a/packages/react-router-cloudflare/package.json b/packages/react-router-cloudflare/package.json
index 537596c13f..5eeddace80 100644
--- a/packages/react-router-cloudflare/package.json
+++ b/packages/react-router-cloudflare/package.json
@@ -1,7 +1,7 @@
{
"name": "@react-router/cloudflare",
"type": "module",
- "version": "8.0.1",
+ "version": "8.1.0",
"description": "Cloudflare platform abstractions for React Router",
"bugs": {
"url": "https://github.com/remix-run/react-router/issues"
diff --git a/packages/react-router-dev/.changes/patch.build-end-after-prerender.md b/packages/react-router-dev/.changes/patch.build-end-after-prerender.md
deleted file mode 100644
index d93d15b962..0000000000
--- a/packages/react-router-dev/.changes/patch.build-end-after-prerender.md
+++ /dev/null
@@ -1 +0,0 @@
-Fix a regression with the new prerendering plugin where the `react-router.config.ts` `buildEnd` hook would run before prerendering was completed
diff --git a/packages/react-router-dev/.changes/patch.bun-babel-default-imports.md b/packages/react-router-dev/.changes/patch.bun-babel-default-imports.md
deleted file mode 100644
index 46f2ee79f3..0000000000
--- a/packages/react-router-dev/.changes/patch.bun-babel-default-imports.md
+++ /dev/null
@@ -1 +0,0 @@
-Fixed `react-router typegen` crashes under the Bun runtime when Babel default imports are already unwrapped.
diff --git a/packages/react-router-dev/.changes/patch.fix-envfile-warning-appeared-vite810.md b/packages/react-router-dev/.changes/patch.fix-envfile-warning-appeared-vite810.md
deleted file mode 100644
index da1044700a..0000000000
--- a/packages/react-router-dev/.changes/patch.fix-envfile-warning-appeared-vite810.md
+++ /dev/null
@@ -1 +0,0 @@
-Replace the deprecated `envFile:false` Vite config with `envDir:false` to eliminate a deprecation warning when using vite@8.1.0+
diff --git a/packages/react-router-dev/.changes/patch.vite-node-external-conditions.md b/packages/react-router-dev/.changes/patch.vite-node-external-conditions.md
deleted file mode 100644
index 63b2e4c502..0000000000
--- a/packages/react-router-dev/.changes/patch.vite-node-external-conditions.md
+++ /dev/null
@@ -1,3 +0,0 @@
-Only add the `"node"` Vite server condition for Framework mode apps that declare a Node server adapter dependency
-
-This prevents non-Node SSR runtimes from resolving Node-specific package exports by default.
diff --git a/packages/react-router-dev/CHANGELOG.md b/packages/react-router-dev/CHANGELOG.md
index 0ac3bd9a96..83213fd938 100644
--- a/packages/react-router-dev/CHANGELOG.md
+++ b/packages/react-router-dev/CHANGELOG.md
@@ -1,5 +1,19 @@
# `@react-router/dev`
+## v8.1.0
+
+### Patch Changes
+
+- Fix a regression with the new prerendering plugin where the `react-router.config.ts` `buildEnd` hook would run before prerendering was completed ([#15211](https://github.com/remix-run/react-router/pull/15211))
+- Fixed `react-router typegen` crashes under the Bun runtime when Babel default imports are already unwrapped ([#15214](https://github.com/remix-run/react-router/pull/15214))
+- Replace the deprecated `envFile:false` Vite config with `envDir:false` to eliminate a deprecation warning when using vite@8.1.0+ ([#15230](https://github.com/remix-run/react-router/pull/15230))
+- Only add the `"node"` Vite server condition for Framework mode apps that declare a Node server adapter dependency ([#15242](https://github.com/remix-run/react-router/pull/15242))
+ - This prevents non-Node SSR runtimes from resolving Node-specific package exports by default
+- Updated dependencies:
+ - [`react-router@8.1.0`](https://github.com/remix-run/react-router/releases/tag/react-router@8.1.0)
+ - [`@react-router/node@8.1.0`](https://github.com/remix-run/react-router/releases/tag/@react-router/node@8.1.0)
+ - [`@react-router/serve@8.1.0`](https://github.com/remix-run/react-router/releases/tag/@react-router/serve@8.1.0)
+
## v8.0.1
### Patch Changes
diff --git a/packages/react-router-dev/package.json b/packages/react-router-dev/package.json
index 85e251e1e9..381d4e83f3 100644
--- a/packages/react-router-dev/package.json
+++ b/packages/react-router-dev/package.json
@@ -1,7 +1,7 @@
{
"name": "@react-router/dev",
"type": "module",
- "version": "8.0.1",
+ "version": "8.1.0",
"description": "Dev tools and CLI for React Router",
"keywords": [
"react",
diff --git a/packages/react-router-express/CHANGELOG.md b/packages/react-router-express/CHANGELOG.md
index 886cfb1de4..ef65397247 100644
--- a/packages/react-router-express/CHANGELOG.md
+++ b/packages/react-router-express/CHANGELOG.md
@@ -1,5 +1,13 @@
# `@react-router/express`
+## v8.1.0
+
+### Patch Changes
+
+- Updated dependencies:
+ - [`react-router@8.1.0`](https://github.com/remix-run/react-router/releases/tag/react-router@8.1.0)
+ - [`@react-router/node@8.1.0`](https://github.com/remix-run/react-router/releases/tag/@react-router/node@8.1.0)
+
## v8.0.1
### Patch Changes
diff --git a/packages/react-router-express/package.json b/packages/react-router-express/package.json
index 75e11a4dfc..34c8fd1db7 100644
--- a/packages/react-router-express/package.json
+++ b/packages/react-router-express/package.json
@@ -1,7 +1,7 @@
{
"name": "@react-router/express",
"type": "module",
- "version": "8.0.1",
+ "version": "8.1.0",
"description": "Express server request handler for React Router",
"bugs": {
"url": "https://github.com/remix-run/react-router/issues"
diff --git a/packages/react-router-fs-routes/CHANGELOG.md b/packages/react-router-fs-routes/CHANGELOG.md
index 1dcf7dad87..9fa7fbbb79 100644
--- a/packages/react-router-fs-routes/CHANGELOG.md
+++ b/packages/react-router-fs-routes/CHANGELOG.md
@@ -1,5 +1,12 @@
# `@react-router/fs-routes`
+## v8.1.0
+
+### Patch Changes
+
+- Updated dependencies:
+ - [`@react-router/dev@8.1.0`](https://github.com/remix-run/react-router/releases/tag/@react-router/dev@8.1.0)
+
## v8.0.1
### Patch Changes
diff --git a/packages/react-router-fs-routes/package.json b/packages/react-router-fs-routes/package.json
index 00609bc202..b4b63af1b4 100644
--- a/packages/react-router-fs-routes/package.json
+++ b/packages/react-router-fs-routes/package.json
@@ -1,7 +1,7 @@
{
"name": "@react-router/fs-routes",
"type": "module",
- "version": "8.0.1",
+ "version": "8.1.0",
"description": "File system routing conventions for React Router, for use within routes.ts",
"bugs": {
"url": "https://github.com/remix-run/react-router/issues"
diff --git a/packages/react-router-node/CHANGELOG.md b/packages/react-router-node/CHANGELOG.md
index ff6c9afe16..baa5cbdb92 100644
--- a/packages/react-router-node/CHANGELOG.md
+++ b/packages/react-router-node/CHANGELOG.md
@@ -1,5 +1,12 @@
# `@react-router/node`
+## v8.1.0
+
+### Patch Changes
+
+- Updated dependencies:
+ - [`react-router@8.1.0`](https://github.com/remix-run/react-router/releases/tag/react-router@8.1.0)
+
## v8.0.1
### Patch Changes
diff --git a/packages/react-router-node/package.json b/packages/react-router-node/package.json
index 9682997ee1..bb824bcd1c 100644
--- a/packages/react-router-node/package.json
+++ b/packages/react-router-node/package.json
@@ -1,7 +1,7 @@
{
"name": "@react-router/node",
"type": "module",
- "version": "8.0.1",
+ "version": "8.1.0",
"description": "Node.js platform abstractions for React Router",
"bugs": {
"url": "https://github.com/remix-run/react-router/issues"
diff --git a/packages/react-router-remix-routes-option-adapter/CHANGELOG.md b/packages/react-router-remix-routes-option-adapter/CHANGELOG.md
index bd935d047c..917d97f27a 100644
--- a/packages/react-router-remix-routes-option-adapter/CHANGELOG.md
+++ b/packages/react-router-remix-routes-option-adapter/CHANGELOG.md
@@ -1,5 +1,12 @@
# `@react-router/remix-config-routes-adapter`
+## v8.1.0
+
+### Patch Changes
+
+- Updated dependencies:
+ - [`@react-router/dev@8.1.0`](https://github.com/remix-run/react-router/releases/tag/@react-router/dev@8.1.0)
+
## v8.0.1
### Patch Changes
diff --git a/packages/react-router-remix-routes-option-adapter/package.json b/packages/react-router-remix-routes-option-adapter/package.json
index c0be299b18..444d452930 100644
--- a/packages/react-router-remix-routes-option-adapter/package.json
+++ b/packages/react-router-remix-routes-option-adapter/package.json
@@ -1,7 +1,7 @@
{
"name": "@react-router/remix-routes-option-adapter",
"type": "module",
- "version": "8.0.1",
+ "version": "8.1.0",
"description": "Adapter for Remix's \"routes\" config option, for use within routes.ts",
"bugs": {
"url": "https://github.com/remix-run/react-router/issues"
diff --git a/packages/react-router-serve/.changes/patch.remove-get-port.md b/packages/react-router-serve/.changes/patch.remove-get-port.md
deleted file mode 100644
index 0824fa9572..0000000000
--- a/packages/react-router-serve/.changes/patch.remove-get-port.md
+++ /dev/null
@@ -1 +0,0 @@
-Use Node's built-in networking APIs to find an available port and remove the `get-port` dependency.
diff --git a/packages/react-router-serve/CHANGELOG.md b/packages/react-router-serve/CHANGELOG.md
index e0d1f51e1b..7fbde4acd1 100644
--- a/packages/react-router-serve/CHANGELOG.md
+++ b/packages/react-router-serve/CHANGELOG.md
@@ -1,5 +1,15 @@
# `@react-router/serve`
+## v8.1.0
+
+### Patch Changes
+
+- Use Node's built-in networking APIs to find an available port and remove the `get-port` dependency ([#15239](https://github.com/remix-run/react-router/pull/15239))
+- Updated dependencies:
+ - [`react-router@8.1.0`](https://github.com/remix-run/react-router/releases/tag/react-router@8.1.0)
+ - [`@react-router/express@8.1.0`](https://github.com/remix-run/react-router/releases/tag/@react-router/express@8.1.0)
+ - [`@react-router/node@8.1.0`](https://github.com/remix-run/react-router/releases/tag/@react-router/node@8.1.0)
+
## v8.0.1
### Patch Changes
diff --git a/packages/react-router-serve/package.json b/packages/react-router-serve/package.json
index c572c3a277..49c3e8732e 100644
--- a/packages/react-router-serve/package.json
+++ b/packages/react-router-serve/package.json
@@ -1,7 +1,7 @@
{
"name": "@react-router/serve",
"type": "module",
- "version": "8.0.1",
+ "version": "8.1.0",
"description": "Production application server for React Router",
"bugs": {
"url": "https://github.com/remix-run/react-router/issues"
diff --git a/packages/react-router/.changes/minor.instrumentation-meta.md b/packages/react-router/.changes/minor.instrumentation-meta.md
deleted file mode 100644
index c7ce47290e..0000000000
--- a/packages/react-router/.changes/minor.instrumentation-meta.md
+++ /dev/null
@@ -1,5 +0,0 @@
-Return route metadata from server request, client navigation, and client fetcher instrumentations
-
-- Adds result metadata after instrumented calls complete, including the URL,
- matched route pattern, and params.
-- Adds known HTTP status codes to server request handler instrumentation results.
diff --git a/packages/react-router/CHANGELOG.md b/packages/react-router/CHANGELOG.md
index a348e2e47b..14c58666f2 100644
--- a/packages/react-router/CHANGELOG.md
+++ b/packages/react-router/CHANGELOG.md
@@ -1,5 +1,13 @@
# `react-router`
+## v8.1.0
+
+### Minor Changes
+
+- Return route metadata from server request, client navigation, and client fetcher instrumentations ([#15235](https://github.com/remix-run/react-router/pull/15235))
+ - Adds result metadata after instrumented calls complete, including the URL, matched route pattern, and params
+ - Adds known HTTP status codes to server request handler instrumentation results
+
## v8.0.1
### Patch Changes
diff --git a/packages/react-router/package.json b/packages/react-router/package.json
index 173f68aa64..9fd6c022e1 100644
--- a/packages/react-router/package.json
+++ b/packages/react-router/package.json
@@ -1,7 +1,7 @@
{
"name": "react-router",
"type": "module",
- "version": "8.0.1",
+ "version": "8.1.0",
"description": "Declarative routing for React",
"keywords": [
"react",
diff --git a/scripts/pr.ts b/scripts/pr.ts
index 0da0c9dc53..fd544e6706 100644
--- a/scripts/pr.ts
+++ b/scripts/pr.ts
@@ -144,6 +144,9 @@ async function changeFileCheck(ctx: CheckContext): Promise {
}
let files = await getPrFiles(ctx.prNumber);
+ let touchesPackageFiles = files.some((f) =>
+ f.filename.startsWith("packages/"),
+ );
let regex =
/^packages\/[^/]+\/\.changes\/(major|minor|patch|unstable)\.[^/]+\.md$/;
let summaries: ChangeFileSummary[] = files
@@ -162,6 +165,11 @@ async function changeFileCheck(ctx: CheckContext): Promise {
console.log(`changeFileCheck: found ${summaries.length} change files`);
+ if (summaries.length === 0 && !touchesPackageFiles) {
+ console.log("changeFileCheck: no package files changed");
+ return [];
+ }
+
let body = CHANGE_FILE_MISSING_COMMENT;
if (summaries.length > 0) {