Skip to content

feat: update-newest fix, Microsoft 365 Copilot removal, Windows 11 Debloat tab - #42

Merged
carterscode merged 3 commits into
mainfrom
feat/debloat-and-update-fix
Jun 15, 2026
Merged

feat: update-newest fix, Microsoft 365 Copilot removal, Windows 11 Debloat tab#42
carterscode merged 3 commits into
mainfrom
feat/debloat-and-update-fix

Conversation

@carterscode

Copy link
Copy Markdown
Owner

Summary

Three pieces of work from a single request.

1. Fix update version-skipping (fix/update)

UpdateService.CheckLatestAsync called GitHub's /releases/latest, which returns the release flagged latest by publish date, not the highest semver. If releases ever publish out of order (a re-run workflow, a backported hotfix, an edited release), the updater could hand back an older line — the cause of the reported 1.38 → 1.39 → 1.40 hop instead of jumping straight to newest.

Now it enumerates all releases, drops drafts/prereleases/asset-less entries, and selects the strictly-highest stable semver above the installed version. Selection logic extracted into pure, unit-tested ParseReleases / SelectBestUpdate methods.

2. Microsoft 365 Copilot app removal

Added the Appx package Microsoft.MicrosoftOfficeHub (the renamed Office Hub launcher Microsoft auto-pushed to Windows 11) to WindowsAiAppCatalog. Removing it leaves installed Office apps untouched. Surfaces automatically on the Windows AI tab via the existing per-package monitor.

3. Windows 11 Debloat tab (+ research-driven additions)

New Debloat tab with two labeled sections, plus two Privacy-tab additions and six more opt-in services. All toggles are reversible, off + unmonitored by default (zero behavior change until opt-in), and none touch Windows Update, security, or networking.

Ads, nags & suggested content (HKCU, no UAC): suggested content / silent app installs, lock-screen Spotlight ads, "finish setting up your device" SCOOBE nag, Start menu recommendations & recent files, File Explorer OneDrive/Office ad banners, Windows feedback request popups.

Background bloat (HKLM policy, one UAC prompt): Widgets / News and interests, Edge startup boost & background mode.

Privacy data collection (Privacy tab): online (cloud) speech recognition, inking & typing personalization (deliberately avoids RestrictImplicitTextCollection, which is owned by the existing ai.inputinsights monitor).

Services (opt-in, not in preset): Payments/NFC, Phone Service, WIA scanners, Parental Controls, Kiosk Mode, Distributed Link Tracking.

Each monitor follows the IMonitoredSetting pattern with full SettingDocs mechanism/apply/verify + long-form catalog docs; docs/SETTINGS-REFERENCE.md regenerated with a new Debloat section.

Testing

dotnet build (warnings-as-errors) clean; full xUnit suite green at 441 tests (38 new across update/debloat/service coverage).

Notes

  • Debloat toggles are intentionally left out of the one-click gaming preset, matching the existing Privacy-tab convention (the preset shouldn't silently disable Widgets/Edge via UAC).
  • Reconciled "each in its own tab" vs "new Debloat tab" as one Debloat tab with two sections + Privacy items on the Privacy tab.

🤖 Generated with Claude Code

CheckLatestAsync hit GitHub's /releases/latest, which returns the release
flagged latest by publish date -- not the highest semver. If releases ever
publish out of order (backported hotfix, re-run workflow, edited release),
the updater could hand back an older line, producing the version-skipping a
user reported (1.38 -> 1.39, then immediately prompted for 1.40).

Now enumerate all releases, drop drafts/prereleases/asset-less entries, and
pick the strictly-highest stable semver above the installed version. Selection
logic is extracted into pure ParseReleases/SelectBestUpdate methods with unit
coverage.
…re services

Microsoft 365 Copilot: add the Microsoft.MicrosoftOfficeHub Appx package (the
renamed Office Hub launcher Microsoft auto-pushed to Windows 11) to the AI-app
removal catalog. Flows through the existing per-package monitor/UI/docs pattern;
removing it leaves installed Office programs untouched.

Services: add six machine-wide, no-gaming-purpose services as opt-in catalog
entries (not in the one-click preset, since they depend on hardware/features):
SEMgrSvc (Payments/NFC), PhoneSvc, stisvc (WIA scanners), WpcMonSvc (Parental
Controls), AssignedAccessManagerSvc (Kiosk), TrkWks (Distributed Link Tracking).

Regenerated docs/SETTINGS-REFERENCE.md.
…bloat

New 'Debloat' tab with two sections, plus two Privacy-tab additions. Ten new
registry monitors, all reversible, all off + unmonitored by default (zero
behavior change until opt-in). None touch updates, security, or networking.

Ads, nags & suggested content (HKCU, no UAC):
- Suggested content & silent app installs (ContentDeliveryManager batch)
- Lock screen tips / Spotlight ads
- 'Finish setting up your device' SCOOBE nag
- Start menu recommendations & recent files
- File Explorer OneDrive/Office ad banners
- Windows feedback request popups

Background bloat (HKLM policy, one UAC prompt):
- Widgets / News and interests
- Edge startup boost & background mode

Privacy data collection (Privacy tab):
- Online (cloud) speech recognition
- Inking & typing personalization (avoids the value owned by ai.inputinsights)

Each monitor follows the IMonitoredSetting pattern with full SettingDocs
mechanism/apply/verify + long-form catalog docs. Added a Debloat section to the
generated SETTINGS-REFERENCE.md. Not added to the one-click gaming preset
(matching the Privacy-tab convention). 27 new tests; full suite green (441).

@github-advanced-security github-advanced-security AI 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.

CodeQL found more than 20 potential problems in the proposed changes. Check the Files changed tab for more details.

@carterscode
carterscode merged commit f1f16e6 into main Jun 15, 2026
5 checks passed
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.

2 participants