Skip to content

Windows FMA - Windsurf - #46401

Merged
allenhouchins merged 5 commits into
mainfrom
win-fma-windsurf
May 29, 2026
Merged

Windows FMA - Windsurf#46401
allenhouchins merged 5 commits into
mainfrom
win-fma-windsurf

Conversation

@harrisonravazzolo

@harrisonravazzolo harrisonravazzolo commented May 28, 2026

Copy link
Copy Markdown
Member

Summary by CodeRabbit

  • New Features

    • Added Windows support for Windsurf as a managed app (version 2.3.15) with packaged manifest and installer metadata.
    • Added automated silent install and uninstall flows for Windows.
  • Bug Fixes

    • Improved post-install/uninstall process handling to avoid file-locks.
    • Enhanced uninstall detection and exit-code handling to better report success/failure.

Review Change Stack

@harrisonravazzolo
harrisonravazzolo marked this pull request as ready for review May 28, 2026 22:48

@claude claude Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

Claude Code Review

This repository is configured for manual code reviews. Comment @claude review to trigger a review and subscribe this PR to future pushes, or @claude review once for a one-time review.

Tip: disable this comment in your organization's Code Review settings.

@coderabbitai

coderabbitai Bot commented May 28, 2026

Copy link
Copy Markdown
Contributor

Caution

Review failed

Pull request was closed or merged during review

No actionable comments were generated in the recent review. 🎉

ℹ️ Recent review info
⚙️ Run configuration

Configuration used: Path: .coderabbit.yaml

Review profile: CHILL

Plan: Pro

Run ID: 6f6835d3-34c2-4fe2-95ca-70da34d10e69

📥 Commits

Reviewing files that changed from the base of the PR and between 7be371e and 12f769d.

📒 Files selected for processing (1)
  • ee/maintained-apps/outputs/windsurf/windows.json

Walkthrough

This PR adds winget support for Windsurf on Windows: a winget input manifest, a silent install PowerShell script that runs the Inno installer and treats exit codes 0/3010 as success, a registry-driven uninstall PowerShell script that locates the installed product, stops running processes, parses and enforces Inno silent flags, and maps exit codes 0/3010/1641 to success, plus updated generated outputs embedding scripts and metadata for Windsurf version 2.3.15.

🚥 Pre-merge checks | ✅ 4 | ❌ 1

❌ Failed checks (1 warning)

Check name Status Explanation Resolution
Description check ⚠️ Warning The pull request description is completely missing. No description was provided by the author, leaving reviewers without context about the changes, related issues, or testing performed. Add a pull request description following the repository template, including related issue reference, completion of applicable checklist items, testing details, and any relevant notes for reviewers.
✅ Passed checks (4 passed)
Check name Status Explanation
Title check ✅ Passed The title 'Windows FMA - Windsurf' is specific and directly relates to the changeset, which adds a Windsurf installer/uninstaller for Windows using the FMA (Fleet Maintenance Architecture) pattern.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.
Linked Issues check ✅ Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check ✅ Passed Check skipped because no linked issues were found for this pull request.

✏️ Tip: You can configure your own custom pre-merge checks in the settings.

✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch win-fma-windsurf

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

@coderabbitai coderabbitai Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Actionable comments posted: 1

🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

Inline comments:
In `@ee/maintained-apps/inputs/winget/scripts/windsurf_uninstall.ps1`:
- Around line 28-31: The current guard exits if $selected.UninstallString is
missing, which incorrectly skips entries that only provide
$selected.QuietUninstallString; change the check to require neither uninstall
field is present (i.e., treat it as missing only when both
$selected.UninstallString and $selected.QuietUninstallString are null/empty).
Update the conditional that references $selected and $selected.UninstallString
to instead check both $selected.UninstallString and
$selected.QuietUninstallString before calling Write-Host/Exit so later logic can
prefer QuietUninstallString when available.
🪄 Autofix (Beta)

Fix all unresolved CodeRabbit comments on this PR:

  • Push a commit to this branch (recommended)
  • Create a new PR with the fixes

ℹ️ Review info
⚙️ Run configuration

Configuration used: Path: .coderabbit.yaml

Review profile: CHILL

Plan: Pro

Run ID: 963193f2-dd3f-4dfb-9c2e-6944b7414b2c

📥 Commits

Reviewing files that changed from the base of the PR and between c3f7c5c and 045341d.

📒 Files selected for processing (5)
  • ee/maintained-apps/inputs/winget/scripts/windsurf_install.ps1
  • ee/maintained-apps/inputs/winget/scripts/windsurf_uninstall.ps1
  • ee/maintained-apps/inputs/winget/windsurf.json
  • ee/maintained-apps/outputs/apps.json
  • ee/maintained-apps/outputs/windsurf/windows.json

Comment thread ee/maintained-apps/inputs/winget/scripts/windsurf_uninstall.ps1 Outdated
fleet-release
fleet-release previously approved these changes May 29, 2026
@github-actions

Copy link
Copy Markdown
Contributor

Script Diff Results

ee/maintained-apps/outputs/windsurf/windows.json

=== Install Script (no changes) ===
=== Uninstall // 52e64cb5 -> bb230cc3 ===

--- /tmp/old.O2gt8d	2026-05-29 03:16:55.507705284 +0000
+++ /tmp/new.Fcp74l	2026-05-29 03:16:55.507705284 +0000
@@ -25,7 +25,7 @@
     }
 }
 
-if (-not $selected -or -not $selected.UninstallString) {
+if (-not $selected -or (-not $selected.UninstallString -and -not $selected.QuietUninstallString)) {
     Write-Host "Uninstall entry not found for $softwareNameLike"
     Exit 0
 }

@allenhouchins
allenhouchins merged commit a93ea69 into main May 29, 2026
12 of 13 checks passed
@allenhouchins
allenhouchins deleted the win-fma-windsurf branch May 29, 2026 03:22
This was referenced Jun 1, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants