chore(claude-do): [A3] Settings + Update-Check: OperationStatus für Skill-Inst

Vorgaben: `docs/superpowers/plans/2026-08-11-operation-feedback.md`, Gruppe A, Entwurf A3. P0-1 ist gemergt: `src/ClaudeDo.Ui/Services/OperationStatus.cs` + `src/ClaudeDo.Ui/Views/Controls/OperationIndicator.axaml`.

SCOPE-ÄNDERUNG (Nutzer, 2026-08-12): OnlineInbox Sign-In/Sign-Out ist AUS DEM SCOPE GENOMMEN — vorerst unwichtig. `ViewModels/Modals/Settings/OnlineInboxSettingsViewModel.cs` und die

ClaudeDo-Task: 2356806f-f16e-4652-b615-4562e95c3a65
This commit is contained in:
Mika Kuns
2026-08-12 09:55:04 +02:00
parent 5fca459579
commit ec4cbcbaf9
12 changed files with 201 additions and 54 deletions
@@ -377,6 +377,10 @@ public sealed partial class IslandsShellViewModel : ViewModelBase, IDisposable
RefreshBannerFromStatus();
}
};
_updateCheck.Op.PropertyChanged += (_, e) =>
{
if (e.PropertyName == nameof(OperationStatus.IsRunning)) CheckForUpdatesCommand.NotifyCanExecuteChanged();
};
// Fire-and-forget startup check — never block UI.
_ = Task.Run(async () =>
{
@@ -578,7 +582,9 @@ public sealed partial class IslandsShellViewModel : ViewModelBase, IDisposable
finally { _usageMonitorOpen = false; }
}
[RelayCommand]
private bool CanCheckForUpdates() => !_updateCheck.Op.IsRunning;
[RelayCommand(CanExecute = nameof(CanCheckForUpdates))]
private async Task CheckForUpdatesAsync()
{
await _updateCheck.CheckNowAsync(CancellationToken.None);