Repository navigation
Derive the manifest's versioned paths from id and version at build time - #11
Merged
Merged
Conversation
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.
Fixes #10.
manifest.jsoncarries two paths shaped<id>/<version>/…—backend.assemblyDirand eachskills[].folder. The host stages the bundle to<ExtensionStudioPath>/<id>/<version>/, so both move every timeversionis bumped, and nothing kept them in sync.build-extension.shnow derives both when it writes the bundle manifest, in the samejqcall that pinssdkVersion. It prints aNOTE:per field when the source manifest disagrees, so drift is visible rather than silently repaired. For skills only the first two path segments are replaced, so each entry'sskills/<name>tail survives, and a manifest with noskillsarray is left alone rather than given an empty one.skills[].folderis in the same pass because it fails more quietly.SeedSkillFolderAsyncopens withif (!Directory.Exists(folderAbs)) return;, so a stale value returns without logging. On a fresh host the extension loads and the skill is never seeded. On a host still holding the old version, the old skill is seeded.Also corrects
02-authoring-guide.md, which told you to bumpversionon every backend code change without mentioning either path.No behavior change for a manifest that was already correct, which is all of the samples — they're pinned at
0.1.0and consistent today. Nothing in the loader or its tests is touched, and checked-in manifests are left alone since the derivation happens at bundle time.