You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
This directory tracks changes to server-only components (webapp, supervisor, coordinator, etc.) that are not captured by changesets. Changesets only track published npm packages — server changes would otherwise go undocumented.
4
+
5
+
## When to add a file
6
+
7
+
**Server-only PRs**: If your PR only changes `apps/webapp/`, `apps/supervisor/`, `apps/coordinator/`, or other server components (and does NOT change anything in `packages/`), add a `.server-changes/` file.
8
+
9
+
**Mixed PRs** (both packages and server): Just add a changeset as usual. No `.server-changes/` file needed — the changeset covers it.
10
+
11
+
**Package-only PRs**: Just add a changeset as usual.
12
+
13
+
## File format
14
+
15
+
Create a markdown file with a descriptive name:
16
+
17
+
```
18
+
.server-changes/fix-batch-queue-stalls.md
19
+
```
20
+
21
+
With this format:
22
+
23
+
```markdown
24
+
---
25
+
area: webapp
26
+
type: fix
27
+
---
28
+
29
+
Speed up batch queue processing by removing stalls and fixing retry race
Require the user is an admin during an impersonation session. Previously only the impersonation cookie was checked; now the real user's admin flag is verified on every request. If admin has been revoked, the session falls back to the real user's ID.
Copy file name to clipboardExpand all lines: CHANGESETS.md
+34-9Lines changed: 34 additions & 9 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -1,24 +1,49 @@
1
-
# Changesets
1
+
# Changesets and Server Changes
2
2
3
-
Trigger.dev uses [changesets](https://github.com/changesets/changesets) to manage updated our packages and releasing them to npm.
3
+
Trigger.dev uses [changesets](https://github.com/changesets/changesets) to manage package versions and releasing them to npm. For server-only changes, we use a lightweight `.server-changes/` convention.
4
4
5
-
## Adding a changeset
5
+
## Adding a changeset (package changes)
6
6
7
7
To add a changeset, use `pnpm run changeset:add` and follow the instructions [here](https://github.com/changesets/changesets/blob/main/docs/adding-a-changeset.md). Please only ever select one of our public packages when adding a changeset.
8
8
9
-
## Release instructions (local only)
9
+
## Adding a server change (server-only changes)
10
10
11
-
Based on the instructions [here](https://github.com/changesets/changesets/blob/main/docs/intro-to-using-changesets.md)
11
+
If your PR only changes server components (`apps/webapp/`, `apps/supervisor/`, etc.) and does NOT change any published packages, add a `.server-changes/` file instead of a changeset:
For **mixed PRs** (both packages and server): just add a changeset. No `.server-changes/` file needed.
28
+
29
+
See `.server-changes/README.md` for full documentation.
30
+
31
+
## When to add which
32
+
33
+
| PR changes | What to add |
34
+
|---|---|
35
+
| Only packages (`packages/`) | Changeset (`pnpm run changeset:add`) |
36
+
| Only server (`apps/`) |`.server-changes/` file |
37
+
| Both packages and server | Just the changeset |
15
38
16
39
## Release instructions (CI)
17
40
18
41
Please follow the best-practice of adding changesets in the same commit as the code making the change with `pnpm run changeset:add`, as it will allow our release.yml CI workflow to function properly:
19
42
20
-
- Anytime new changesets are added in a commit in the `main` branch, the [release.yml](./.github/workflows/release.yml) workflow will run and will automatically create/update a PR with a fresh run of `pnpm run changeset:version`.
21
-
- When the version PR is merged into `main`, the release.yml workflow will automatically run `pnpm run changeset:release` to build and release packages to npm.
43
+
- Anytime new changesets are added in a commit in the `main` branch, the [changesets-pr.yml](./.github/workflows/changesets-pr.yml) workflow will run and will automatically create/update a PR with a fresh run of `pnpm run changeset:version`.
44
+
- The release PR body is automatically enhanced with a clean, deduplicated summary that includes both package changes and `.server-changes/` entries.
45
+
- Consumed `.server-changes/` files are removed on the `changeset-release/main` branch — the same way changesets deletes `.changeset/*.md` files. When the release PR merges, they're gone from main.
46
+
- When the version PR is merged into `main`, the [release.yml](./.github/workflows/release.yml) workflow will automatically build, release packages to npm, and create a single unified GitHub release.
Copy file name to clipboardExpand all lines: CONTRIBUTING.md
+33Lines changed: 33 additions & 0 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -267,6 +267,39 @@ You will be prompted to select which packages to include in the changeset. Only
267
267
268
268
Most of the time the changes you'll make are likely to be categorized as patch releases. If you feel like there is the need for a minor or major release of the package based on the changes being made, add the changeset as such and it will be discussed during PR review.
269
269
270
+
## Adding server changes
271
+
272
+
Changesets only track published npm packages. If your PR only changes server components (`apps/webapp/`, `apps/supervisor/`, `apps/coordinator/`, etc.) with no package changes, add a `.server-changes/` file so the change appears in release notes.
0 commit comments