feat(vscode): Add codeful sdk resolution from local nuget packages, remove old dependencies#9295
Open
andrew-eldridge wants to merge 2 commits into
Open
feat(vscode): Add codeful sdk resolution from local nuget packages, remove old dependencies#9295andrew-eldridge wants to merge 2 commits into
andrew-eldridge wants to merge 2 commits into
Conversation
…r/ dependencies for nupkg and references
Contributor
🤖 AI PR Validation ReportPR Review ResultsThank you for your submission! Here's detailed feedback on your PR title and body compliance:✅ PR Title
❌ Commit Type
❌ Risk Level
✅ What & Why
|
| Section | Status | Recommendation |
|---|---|---|
| Title | ✅ | No change required |
| Commit Type | ❌ | Keep only one commit type checked; feature is appropriate |
| Risk Level | ❌ | Select exactly one risk level; recommended: Medium |
| What & Why | ✅ | No change required |
| Impact of Change | Add clearer user/developer/system impact details | |
| Test Plan | ✅ | Unit tests present; no E2E needed |
| Contributors | ✅ | Add others only if applicable |
| Screenshots/Videos | ✅ | Not required for this change |
Please update the PR body to select a risk level and tighten the impact section, then resubmit. Thank you!
Last updated: Fri, 19 Jun 2026 00:07:50 GMT
Contributor
🤖 AI PR Validation ReportPR Review ResultsThank you for your submission! Here's detailed feedback on your PR title and body compliance:✅ PR Title
|
| Section | Status | Recommendation |
|---|---|---|
| Title | ✅ | |
| Commit Type | ✅ | |
| Risk Level | ❌ | Select exactly one risk level; High is recommended for this change. |
| What & Why | ✅ | |
| Impact of Change | Add more explicit user/developer/system impact details. | |
| Test Plan | ✅ | |
| Contributors | ✅ | |
| Screenshots/Videos | ✅ |
Please update the PR body to select a single risk level (recommended: High) and optionally expand the impact section for clarity. Once that is fixed, this PR body will comply with the expected template.
Last updated: Thu, 18 Jun 2026 23:26:58 GMT
Contributor
|
📊 Coverage check completed. See workflow run for details. |
Contributor
There was a problem hiding this comment.
Pull request overview
This PR updates the VS Code designer’s codeful workflow/LSP integration to stop shipping a fixed Microsoft.Azure.Workflows.Sdk nupkg inside the extension and instead resolve the SDK nupkg from the user’s project/NuGet caches, while removing the legacy nuget.config + dependency-folder SDK flow.
Changes:
- Add SDK resolution utilities to locate the
Microsoft.Azure.Workflows.Sdkversion from the project’s.csprojand resolve the corresponding cached.nupkgpath. - Remove legacy “extension-shipped SDK nupkg” behavior: delete the nuget.config template, stop copying the SDK into runtime dependencies, and remove related cache invalidation hooks.
- Rename/install path updates around the LSP server install step (
installLSPSDK→installLSPServer) and update affected tests.
Reviewed changes
Copilot reviewed 20 out of 21 changed files in this pull request and generated 3 comments.
Show a summary per file
| File | Description |
|---|---|
| apps/vs-code-designer/src/constants.ts | Removes legacy lspDirectory constant used by the old extension-shipped SDK path. |
| apps/vs-code-designer/src/assets/CodefulProjectTemplate/ProgramFile | Removes workflow builder placeholder section from the template. |
| apps/vs-code-designer/src/assets/CodefulProjectTemplate/nuget | Deletes the legacy nuget.config template that pointed to extension SDK packages. |
| apps/vs-code-designer/src/app/utils/sdkResolution.ts | New utility to resolve SDK version from .csproj and locate the cached .nupkg. |
| apps/vs-code-designer/src/app/utils/languageServerProtocol.ts | Removes SDK copy logic; keeps only LSP server extraction and renames installer API. |
| apps/vs-code-designer/src/app/utils/codeful.ts | Removes legacy SDK cache invalidation flow; retains codeful project detection/parsing utilities. |
| apps/vs-code-designer/src/app/utils/test/sdkResolution.test.ts | Adds unit tests for SDK resolution behavior and fallbacks. |
| apps/vs-code-designer/src/app/utils/test/languageServerProtocol.test.ts | Updates tests to match new “install server only” behavior. |
| apps/vs-code-designer/src/app/utils/test/codeful.test.ts | Removes tests for deleted SDK cache invalidation functionality. |
| apps/vs-code-designer/src/app/languageServer/languageServer.ts | Switches SDK nupkg discovery to resolveSdkFromProject and updates arg construction. |
| apps/vs-code-designer/src/app/languageServer/test/languageServer.test.ts | Updates tests to mock project-based SDK resolution instead of scanning dependency folders. |
| apps/vs-code-designer/src/app/commands/publishCodefulProject.ts | Removes call to the deleted SDK cache invalidation helper. |
| apps/vs-code-designer/src/app/commands/createWorkflow/createCodefulWorkflow/createCodefulWorkflowSteps/codefulWorkflowCreateStep.ts | Removes nuget.config creation/merging step for codeful project creation. |
| apps/vs-code-designer/src/app/commands/createWorkflow/createCodefulWorkflow/createCodefulWorkflowSteps/test/codefulWorkflowCreateStep.test.ts | Removes tests for deleted nuget.config behavior. |
| apps/vs-code-designer/src/app/commands/createNewCodeProject/CodeProjectBase/CreateLogicAppWorkspace.ts | Stops generating nuget.config and removes Program.cs workflow builder substitution. |
| apps/vs-code-designer/src/app/commands/createNewCodeProject/CodeProjectBase/test/CreateLogicAppWorkspace.test.ts | Updates template expectations (no workflow builder placeholder, no nuget.config). |
| apps/vs-code-designer/src/app/commands/buildCustomCodeFunctionsProject.ts | Removes call to the deleted SDK cache invalidation helper. |
| apps/vs-code-designer/src/app/commands/binaries/validateAndInstallBinaries.ts | Renames the LSP installation step to installLSPServer and updates telemetry/progress text. |
| apps/vs-code-designer/src/app/commands/binaries/test/validateAndInstallBinaries.test.ts | Updates mocks/assertions for installLSPServer. |
| apps/vs-code-designer/src/app/commands/test/publishCodefulProject.test.ts | Updates mocks/assertions after removing SDK cache invalidation from publish flow. |
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.
Commit Type
Risk Level
What & Why
Impact of Change
Test Plan
Contributors
@andrew-eldridge