From 3179e34e8c2f5ef455b956a8b461f13def0b4423 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Matheus=20Vila=C3=A7a=20de=20Jesus?= Date: Sun, 25 Oct 2026 19:16:56 -0300 Subject: [PATCH 1/2] chore: start #641 From 8c0b30c6a44dc5be487252c022f824d955463c12 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Matheus=20Vila=C3=A7a=20de=20Jesus?= Date: Sun, 25 Oct 2026 19:18:28 -0300 Subject: [PATCH 2/2] fix: changeset policy test accepts an empty changeset dir (#641) --- packages/ui/tests/migrations.test.ts | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/packages/ui/tests/migrations.test.ts b/packages/ui/tests/migrations.test.ts index d0a2a32c..774b6e11 100644 --- a/packages/ui/tests/migrations.test.ts +++ b/packages/ui/tests/migrations.test.ts @@ -77,10 +77,13 @@ describe("release policy (#382)", () => { it("every pending changeset in .changeset/ passes the policy", () => { const dir = join(ROOT, ".changeset"); const ids = new Set(entries.map((e) => e.id)); + // An empty directory is valid: `bun run release` consumes every changeset, and the release commit + // must still pass the pre-push validate (#641). const files = readdirSync(dir).filter((f) => f.endsWith(".md") && f !== "README.md"); - expect(files.length).toBeGreaterThan(0); - for (const f of files) - expect(checkChangeset(readFileSync(join(dir, f), "utf8"), ids), f).toBeUndefined(); + const failures = files + .map((f) => [f, checkChangeset(readFileSync(join(dir, f), "utf8"), ids)]) + .filter(([, problem]) => problem !== undefined); + expect(failures).toEqual([]); }); it("every breaking line of a released major links a migration id", () => {