Skip to content

Conversation

@andrew-eldridge
Copy link
Contributor

@andrew-eldridge andrew-eldridge commented Nov 21, 2025

Fixes #6824

Commit Type

  • feature - New functionality
  • fix - Bug fix
  • refactor - Code restructuring without behavior change
  • perf - Performance improvement
  • docs - Documentation update
  • test - Test-related changes
  • chore - Maintenance/tooling

Risk Level

  • Low - Minor changes, limited scope
  • Medium - Moderate changes, some user impact
  • High - Major changes, significant user/system impact

What & Why

Adds the following initialization steps at end of 'Create new project' flow:

  • Prompts for azure connector details
  • Starts design-time host for the new project

Impact of Change

  • Users: Fixes incongruency between 'Create new workspace' and 'Create new project' where the latter doesn't immediately get azure connector details or start design-time
  • Developers: N/A
  • System: N/A

Test Plan

  • Unit tests added/updated
  • E2E tests added/updated
  • Manual testing completed
  • Tested in:

Contributors

@andrew-eldridge

@andrew-eldridge andrew-eldridge added the VSCode Issues or PRs specific to VS Code extension label Nov 21, 2025
Copilot AI review requested due to automatic review settings November 21, 2025 19:38
@andrew-eldridge andrew-eldridge added risk:low Low risk change with minimal impact bug Something isn't working labels Nov 21, 2025
@github-actions
Copy link

github-actions bot commented Nov 21, 2025

🤖 AI PR Validation Report

PR Review Results

Thank you for your submission! Here's detailed feedback on your PR title and body compliance:

PR Title

  • Current: fix(vscode): Prompt for azure connector details and start design-time host on new projects
  • Issue: None — the title is clear, follows conventional commit style, and accurately summarizes the change.
  • Recommendation: No change required. (Optional: you can shorten to fix(vscode): prompt for Azure connector and start design-time host on new projects to match project capitalization preferences.)

Commit Type

  • Properly selected (fix).
  • Only one option was selected which is correct.

Risk Level

  • The PR body marks Low and the PR has the label risk:low — these match.
  • Note: based on the code changes (starting a design-time host and prompting for connector details), this is still reasonable as Low given the small diff (7 additions, 0 deletions). If the new calls change runtime behavior (start background processes, open ports, or prompt blocking behavior), consider bumping to Medium and adding more tests. I recommend verifying that the functions invoked do not introduce new cross-platform/runtime side effects.

⚠️ What & Why

  • Current: Adds initialization steps at the end of the 'Create new project' flow: prompts for Azure connector details and starts the design-time host.
  • Issue: The description is brief but acceptable. Could be slightly more explicit about user-visible behavior (e.g., does the prompt block the flow? Are credentials saved?).
  • Recommendation: Expand by 1–2 sentences explaining whether the prompt is modal (blocking) and whether the design-time host is started synchronously or in the background. Example: "Prompts the user for Azure connector details (blocking prompt shown after project creation) and starts the design-time host process in the background so the new project is ready for local debugging."

Impact of Change

  • The PR body lists Users/Developers/System with N/A for Developers/System. That is acceptable but a bit light.
  • Recommendation: Add a short note for Developers and System to help reviewers and maintainers understand potential impacts:
    • Users: Prompts for Azure connector details after creating a project and starts the design-time host automatically so projects behave like newly created workspaces.
    • Developers: Ensure async calls are handled correctly (see below). Consider adding a small integration/unit test to confirm the new flow is invoked.
    • System: The design-time host may open a local port/process — document the start behavior and how it can be disabled if necessary.

Test Plan

  • Assessment: Fails. The PR shows only "Manual testing completed" and no automated unit or E2E tests were added.
  • Issue: For code changes that modify project initialization flows and start background services, the PR must either include automated tests (unit or E2E) or provide a clear justification why automated tests are not feasible. The current PR does not provide such justification.
  • Recommendation: Do one of the following:
    • Add unit tests (or mocks) covering the new calls to ensure the azure connector prompt is initiated and the design-time host start is invoked (mock the startDesignTimeApi call). OR
    • Add an E2E test that verifies the create-project flow triggers the prompt and design-time host start (recommended for the host-start behavior). OR
    • Provide a clear explanation in the Test Plan why automated tests are not feasible for this change (e.g., OS/process restrictions) and describe the manual test steps you performed in detail (include commands, platforms tested, and evidence such as logs or a short video). Example manual test steps: steps to create a new project in VS Code, expected prompt, expected log lines that show design-time host started, how to stop it, OS tested on, etc.

Because the PR modifies runtime behavior (starts a host), automated coverage or a detailed manual verification rationale is required before merging.

⚠️ Contributors

  • Assessment: Contributors section lists @andrew-eldridge — OK.
  • Recommendation: (Optional) If others (PMs, designers, reviewers) contributed, tag them.

⚠️ Screenshots/Videos

  • Assessment: No screenshots/videos provided. For this change it's optional unless there is a visible UI change; since this PR prompts users and starts a host, consider adding a short screenshot or a short GIF showing the prompt appearing and/or the success message/log to speed review.

Specific Code Observations (action required)

I reviewed the diff and found two direct calls newly added inside createLogicAppProject:

  • getAzureConnectorDetailsForLocalProject(context, logicAppFolderPath);
  • startDesignTimeApi(logicAppFolderPath);

Potential issues and recommendations:

  1. Await/Promise handling
    • The code calls these functions without awaiting them. If these helper functions are async (likely, since prompting and starting a host typically return Promises), not awaiting them may cause race conditions and the final info message is shown immediately:
      vscode.window.showInformationMessage(localize('finishedCreating', 'Finished creating project.'));
    • Recommendation: If these functions return Promises, await them (or handle errors) before showing the success message. Example: await getAzureConnectorDetailsForLocalProject(...); await startDesignTimeApi(...); or if you intentionally want the host to start in background, document that and make startDesignTimeApi fire-and-forget but ensure errors are handled/logged.
  2. Error handling
    • Ensure both calls surface errors into the user-visible logs or telemetry. Starting a design-time host could fail due to a port in use or missing prerequisites. Add try/catch around these calls and provide meaningful messages.
  3. Side effects and environment requirements
    • Starting the design-time host may require local tooling (func runtime, Docker, etc.). Document prerequisites in the PR body and add guard checks in code to avoid surprising failures.
  4. Tests
    • As above, add unit tests that mock getAzureConnectorDetailsForLocalProject and startDesignTimeApi and verify they are invoked in the create flow. Add at least one integration/E2E test or detailed manual test steps for starting the design-time host (including how to teardown).

Summary Table

Section Status Recommendation
Title None
Commit Type None
Risk Level Verify side-effects of starting design-time host; consider raising to Medium if it modifies system state significantly.
What & Why Expand one sentence describing blocking vs background behavior.
Impact of Change Add short developer/system notes describing side effects.
Test Plan Add unit/E2E tests or provide detailed justification + manual test steps/evidence.
Contributors Optional tags if others contributed.
Screenshots/Videos ⚠️ Optional: add a short screenshot or GIF showing the prompt/host start.

Final message
This PR is close to passing the PR-body checklist. The title, commit type, and risk label are correct and consistent. However, I cannot pass the PR because:

  • The Test Plan lacks automated tests or a clear justification for why only manual testing was used. Please either add unit/E2E tests or provide detailed manual test steps and evidence.
  • The code calls getAzureConnectorDetailsForLocalProject(...) and startDesignTimeApi(...) without awaiting or handling errors. Please confirm whether these functions are synchronous or async. If async, please await them or explicitly handle background execution and add error handling and tests.

Please update the PR with the requested changes and then remove the needs-pr-update label (if you keep it, that indicates the author knows updates are needed). Once updated, re-request review and I will re-run this checklist.

Thank you for the clear commit message and concise PR body — small changes suggested will make this ready to merge.


Last updated: Tue, 13 Jan 2026 23:50:53 GMT

@github-actions
Copy link

🤖 AI PR Validation Report

PR Review Results

Thank you for your submission! Here's detailed feedback on your PR title and body compliance:

PR Title

  • Current: fix(vscode): Prompt for azure connector details and start design-time host on new projects
  • Issue: Title is specific, includes area affected, nature of fix, and scope
  • Recommendation: None needed. This is an ideal PR title.

Commit Type

  • Properly selected (fix)
  • Only one selected, which is correct

Risk Level

  • Risk level "Low" is selected. PR is labeled "Risk:Low", and based on the code change (small, targeted, 7 additions, no deletions, scope limited to initialization after project creation), this is appropriate.

What & Why

  • Current: Adds the following initialization steps at end of 'Create new project' flow:
  • Prompts for azure connector details
  • Starts design-time host for the new project
  • Issue: Clear, brief, describes what was changed and why (adds missing initialization step).
  • Recommendation: None needed.

Impact of Change

  • Clear indication of impact to users (addressing missing initialization after project creation), developers (N/A), and system (N/A).
  • Recommendation: Users: Clear
    • Developers: N/A, but could explicitly state if there are any expected developer-facing changes or workflow impact (optional)
    • System: N/A, but if system behavior changes (dependencies, broader impact), mention (optional)

Test Plan

  • "Manual testing completed" is checked, which is common for small workflow fixes. No unit/E2E test required for a simple UX fix.

Contributors

  • @andrew-eldridge listed
  • Minimal, but if more contributors (PM, Design) helped, tagging them is appreciated (optional)

Screenshots/Videos

  • Not needed for backend/initialization workflow change. Section left blank, this passes.

Summary Table

Section Status Recommendation
Title None
Commit Type None
Risk Level None
What & Why None
Impact of Change None
Test Plan None
Contributors Optional: Tag PMs/designers if they contributed
Screenshots/Videos None

The PR passes all body and title checks, and the risk level is correct. No changes required. Thank you for maintaining clear, concise documentation in your PR!


Last updated: Fri, 21 Nov 2025 19:38:41 GMT

Copy link
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This PR fixes an inconsistency between the "Create new workspace" and "Create new project" flows by adding Azure connector details prompting and design-time host initialization to the project creation process. Previously, these initialization steps were only performed for workspace creation, leaving newly created projects without immediate Azure connector configuration or a running design-time API.

Key changes:

  • Added calls to getAzureConnectorDetailsForLocalProject() and startDesignTimeApi() at the end of the createLogicAppProject() function
  • Added a blank line formatting improvement in azureConnectorWizard.ts

Reviewed changes

Copilot reviewed 2 out of 2 changed files in this pull request and generated 1 comment.

File Description
apps/vs-code-designer/src/app/commands/workflows/azureConnectorWizard.ts Minor formatting change - added blank line after function definition
apps/vs-code-designer/src/app/commands/createNewCodeProject/CodeProjectBase/CreateLogicAppProjects.ts Added Azure connector details prompting and design-time API initialization calls after project creation, with necessary imports

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

bug Something isn't working needs-pr-update risk:low Low risk change with minimal impact VSCode Issues or PRs specific to VS Code extension

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Options like "host.json" and "local.settings.json" under workflow_designtime are not appearing as expected.

3 participants