Repository navigation
fix(platform-cli): pin next 16.4.3 and Bun 1.4.4; let sync record a reconciled file - #26
Merged
Merged
Conversation
…econciled file The preset pinned next 16.3.6 and the product template Bun 1.4.1, so doctor failed products that had already moved to the patched releases (MediaLit runs next 16.4.3 through a security override and Bun 1.4.4). The template, its workflows and the preset now use next 16.4.3 and Bun 1.4.4; the platform repo's own toolchain moves to Bun 1.4.4 too. sync treated a managed file whose hash differed from the manifest as a conflict even when the file already matched the template, so a product could not reconcile a conflict by hand without editing the recorded hash. A file that matches the template is now never a conflict.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Why
platform-cli doctorfails on MediaLit'smain, so itsverifycheck is red (seen on codelitdev/medialit#244). Two causes:external_mismatch:next: the preset pinsnextto exactly 16.3.6. MediaLit runs 16.4.3 through a security override, anddoctorhas no exceptions, so the only fix on the product side would be downgrading.managed_hash_mismatchonplatform-conformance.yml: MediaLit moved CI to Bun 1.4.4 for a security fix, but the template pins 1.4.1.syncreports the file as a conflict, and it still does after the file is made to match the template exactly, because the recorded hash belongs to the old content. Reconciling by hand meant editing the hash in.codelit-platform.jsonyourself.What
next16.4.3 in the product template;sync-preset.mjscarries it into the preset'sexternal.packageManager,engines,@types/bun, both workflows), in the preset'sruntime, increate's metadata check, and in this repo's own toolchain (CI, release, packed-consumer scripts).sync: a managed file that already matches the template is never a conflict, so the nextsyncrecords a hand-reconciled file. Real drift is still a conflict and nothing is written. New test:records a drifted managed file reconciled by hand to the template.Testing
bun run verifypasses: lint, preset check, typecheck, tests (platform-cli: 18), build, packed-package checks.doctorno longer reportsnext.syncrecords it with no conflict anddoctorreturns{"ok":true,"issues":[]}.After release
In MediaLit: run
bunx @codelitdev/platform-cli@<new version> sync, makeplatform-conformance.ymlmatch the template if it reports a conflict, then runsyncagain.