From ea92eb2244fe892e9f9890fd43f958909f19efe9 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Catriel=20M=C3=BCller?= Date: Thu, 11 Jun 2026 10:46:28 -0300 Subject: [PATCH] chore: remove implementation plan --- .kilo/plans/1781184434428-neon-island.md | 24 ------------------------ 1 file changed, 24 deletions(-) delete mode 100644 .kilo/plans/1781184434428-neon-island.md diff --git a/.kilo/plans/1781184434428-neon-island.md b/.kilo/plans/1781184434428-neon-island.md deleted file mode 100644 index c175e33ae4..0000000000 --- a/.kilo/plans/1781184434428-neon-island.md +++ /dev/null @@ -1,24 +0,0 @@ -# Prevent Bun downgrades during upstream merges - -## Goal - -Ensure `script/upstream/merge.ts` keeps the newer root `packageManager` Bun version across Kilo and upstream: accept an upstream upgrade, preserve Kilo when upstream is older, and fail before finalizing if the merged result is below either input. - -## Implementation - -1. Update `script/upstream/transforms/transform-package-json.ts` with a small, exported Bun package-manager reconciliation helper that: - - Applies only to the root `package.json`. - - Parses `bun@` values and compares them with the existing version comparison logic. - - Selects the newer value from Kilo/base and upstream, preserving the original full `packageManager` string. - - Treats malformed or missing values conservatively so an unparseable upstream value cannot replace a valid Kilo value. - - Records a transform change when it restores a newer Kilo version. -2. Invoke that helper in every root package reconciliation path: conflicted package transformation, pre-merge package transformation, and post-merge reconciliation. This makes an upstream `bun@1.3.15` upgrade flow through while preventing an upstream `bun@1.3.13` from replacing Kilo's `bun@1.3.14`. -3. Add a final guard in `script/upstream/merge.ts`, after successful package reconciliation and before finalization/push, that compares the working-tree Bun version with both the base commit and pristine upstream target. Abort with a clear error if the result is lower than the newest valid input, protecting against future transform/rerere regressions. -4. Extend `script/upstream/transforms/transform-package-json.test.ts` with focused cases for Kilo-newer, upstream-newer, equal, non-root, and malformed package-manager values. Cover the final comparison/guard through an exported pure assertion helper rather than mocking git. -5. Update `script/upstream/README.md` to document the newest-Bun-wins behavior and the no-downgrade final validation. - -## Validation - -- Run `bun test script/upstream/transforms/transform-package-json.test.ts`. -- Run the repository typecheck (`bun run typecheck`) to validate the updated transform and merge orchestration types. -- No changeset is needed because this only changes internal upstream-merge tooling.