fix: omit SDK from upstream changesets

This commit is contained in:
Mark IJbema
2026-06-15 18:14:20 +02:00
parent f42789d0ef
commit 425ced4292
4 changed files with 12 additions and 14 deletions
+2 -2
View File
@@ -69,7 +69,7 @@ After merging upstream opencode releases, use `opencode-changesets.ts` to turn t
bun script/upstream/opencode-changesets.ts 1.17.0 1.17.7
```
The script fetches releases from `anomalyco/opencode`, selects published releases in the semver range `(from, to]`, and writes one `.changeset/opencode-vX-Y-Z-to-vX-Y-Z.md` file for the whole range. It merges notes from every release into shared `##` sections and `###` categories, so all `Core` bugfixes in the range appear under one `## Core` / `### Bugfixes` block. It defaults to patch changesets for the fixed release group, `@kilocode/cli` and `kilo-code`. Generated notes omit contributor thank-you blocks and the upstream `Desktop` section by default because Kilo does not ship the opencode desktop app.
The script fetches releases from `anomalyco/opencode`, selects published releases in the semver range `(from, to]`, and writes one `.changeset/opencode-vX-Y-Z-to-vX-Y-Z.md` file for the whole range. It merges notes from every release into shared `##` sections and `###` categories, so all `Core` bugfixes in the range appear under one `## Core` / `### Bugfixes` block. It defaults to patch changesets for the fixed release group, `@kilocode/cli` and `kilo-code`. Generated notes omit contributor thank-you blocks and the upstream `Desktop` and `SDK` sections by default because Kilo does not ship the opencode desktop app and SDK release notes are not user-facing for Kilo.
Preview without writing files:
@@ -85,7 +85,7 @@ Useful options:
| `--package <name>` | Add a changeset package; repeat for multiple packages |
| `--bump <major|minor|patch>` | Set the generated changeset bump type |
| `--drop-section <heading>` | Omit a markdown `##` section by heading; repeat for multiple sections |
| `--no-default-drop-section` | Disable the default dropped sections, such as `Desktop` |
| `--no-default-drop-section` | Disable the default dropped sections, such as `Desktop` and `SDK` |
| `--force` | Overwrite existing generated changeset files |
| `--include-prerelease` | Include prerelease GitHub releases |
+7 -3
View File
@@ -31,7 +31,7 @@ describe("opencode changesets", () => {
to: "1.2.2",
packages: ["@kilocode/cli", "kilo-code"],
bump: "patch",
drop: ["Desktop"],
drop: ["Desktop", "SDK"],
}),
).toBe(`---
"@kilocode/cli": patch
@@ -63,6 +63,10 @@ Changes from opencode v1.2.1 to v1.2.2 upstream:
- Drop misc
## SDK
- Drop sdk
**Thank you to 1 community contributor:**
- @user:
@@ -74,7 +78,7 @@ Changes from opencode v1.2.1 to v1.2.2 upstream:
to: "1.2.2",
packages: ["@kilocode/cli"],
bump: "patch",
drop: ["Desktop", "Misc"],
drop: ["Desktop", "Misc", "SDK"],
}),
).toBe(`---
"@kilocode/cli": patch
@@ -130,7 +134,7 @@ Changes from opencode v1.2.1 to v1.2.2 upstream:
to: "1.2.2",
packages: ["@kilocode/cli"],
bump: "patch",
drop: ["Desktop"],
drop: ["Desktop", "SDK"],
}),
).toBe(`---
"@kilocode/cli": patch
+3 -3
View File
@@ -40,8 +40,8 @@ Options:
--repo <owner/repo> GitHub repository (default: anomalyco/opencode)
--package <name> Changeset package (repeatable; defaults to @kilocode/cli and kilo-code)
--bump <type> Changeset bump type: major, minor, patch (default: patch)
--drop-section <heading> Omit a markdown ## section by heading (repeatable; defaults to Desktop)
--no-default-drop-section Do not drop the default Desktop section
--drop-section <heading> Omit a markdown ## section by heading (repeatable; defaults to Desktop and SDK)
--no-default-drop-section Do not drop the default Desktop and SDK sections
--dry-run Print changesets without writing files
--force Overwrite existing generated changeset files
--include-prerelease Include prerelease GitHub releases
@@ -261,7 +261,7 @@ function opts() {
root: path.resolve(import.meta.dir, "../.."),
packages: parsed.values.package?.length ? parsed.values.package : ["@kilocode/cli", "kilo-code"],
bump,
drop: [...(parsed.values["no-default-drop-section"] ? [] : ["Desktop"]), ...(parsed.values["drop-section"] ?? [])],
drop: [...(parsed.values["no-default-drop-section"] ? [] : ["Desktop", "SDK"]), ...(parsed.values["drop-section"] ?? [])],
dry: parsed.values["dry-run"],
force: parsed.values.force,
prerelease: parsed.values["include-prerelease"],