Skip to content

#87: Presentation Settings must not trigger Local rebuilds - #88

Merged
Unthred merged 3 commits into
mainfrom
feature/87-settings-presentation-no-rebuild
Aug 27, 2026
Merged

#87: Presentation Settings must not trigger Local rebuilds#88
Unthred merged 3 commits into
mainfrom
feature/87-settings-presentation-no-rebuild

Conversation

@Unthred

@Unthred Unthred commented Aug 27, 2026

Copy link
Copy Markdown
Owner

Summary

  • Root cause: Settings Save always reused launch (StopAllStartActiveBuildAsync).
  • SettingsApplyImpactClassifier + exhaustive SettingsApplyImpactCatalog (75 persisted leaf paths).
  • HardRestart only for Local process/watcher identity: Id, Local active, RootFolder/ProjectFile/LaunchProfile/ExtraDotNetArgs, RunMode, WatchExcludeSegments.
  • SoftRuntime for Azure/monitor/display names and Local policy knobs read live via UpdateDefinition (RunTests, TestProjectFile, restart flags, BuildControlMode, FileChanges, lock/repair, StartOnLaunch, UI prefs).
  • Reflection coverage + per-path mutation tests fail if a new persisted property is unclassified.
  • Known limitation (follow-up): no remount-without-rebuild path yet — HardRestart may still build when StartOnLaunch is on.

Classification corrections (audit)

Property family Was Now
RunTests / TestProjectFile Hard Soft
RestartOnCrash / MaxRetries / AutoRestart* / RestartAppAfterRebuild Hard Soft
BuildControlMode / FileChanges / StartOnLaunch Hard Soft
ReleaseOutputLocks / AutoRepairCorruptedOutput Hard Soft
Azure-only add/active (prior commit) Hard Soft
Local UI prefs (prior commit) Hard Soft

Manual (accepted)

  • ByProject ↔ ByOperation + no-op save — no Local rebuild

Test plan

  • Focused SettingsApplyImpactClassifierTests 95 passed
  • Full ship-check 676 passed (Release)
  • Catalog covers every discovered persisted leaf path

Closes #87

Simon McConnell added 3 commits August 27, 2026 10:00
…cal.

Stop treating every save as launch: TrayMenuLayout/theme and Azure/monitor soft updates skip StopAll+StartActive.
Classify every persisted AppSettings leaf; Soft Local UI prefs; Azure-only membership no longer HardRestarts; fail tests when a property is added without catalog impact.
@Unthred
Unthred merged commit 34db49d into main Aug 27, 2026
4 checks passed
@Unthred
Unthred deleted the feature/87-settings-presentation-no-rebuild branch August 27, 2026 10:09
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.

Bug: presentation-only Settings changes trigger local rebuilds

1 participant