changesetlisted
Install: claude install-skill stijnvanhulle/agents
# Changeset skill
A changeset is the release note for a change. Whoever reads it is upgrading a package, not
reviewing the diff.
## 1. Does the change need one
A change that reaches a versioned package does. Docs, CI, and tests do not. When you are not
sure, check whether the package is in the workspace and not listed under `ignore` in
`.changeset/config.json`, since private packages can be versioned too.
## 2. Pick the bump
| Bump | For | Example |
| --- | --- | --- |
| `patch` | A fix | The resolver no longer caches a miss |
| `minor` | New behavior existing code survives | A new `unionType` option |
| `major` | A rename, a removal, or a changed default | `enumType` now defaults to `asConst` |
Use the bump from the command when it is `patch`, `minor`, or `major`. When none was passed, or
the table does not pick one on its own, follow the `ask` skill: offer `patch`,
`minor`, and `major`, likely answer first. Do not default to `patch` and report it as a guess.
List only the packages you changed.
## 3. Write the file
`.changeset/<slug>.md`, named for whoever reads `git log`, so `plugin-resolver-cache.md` beats
`fix.md`.
````md
---
'@scope/core': minor
---
Add `unionType` so one type covers every variant of a discriminated schema.
- Accepts `unionType: 'asConst' | 'asLiteral'`, defaulting to `asConst`.
- Leaves output unchanged when the option is not set.
```typescript
// Before
export type PetDog = { type: 'dog'; bark: string }
export type PetCat = { type: 'cat';