Problem
OnboardingView erstellt einen eigenen @StateObject var hostManager = HostManager(), der unabhängig von der Hauptinstanz in ContentView lebt. Verbindungen, die über den manuellen oder Tailscale-Weg im Onboarding aufgebaut werden, gehen verloren, sobald das Onboarding-Fenster geschlossen wird.
Der Setup-Code-Weg ist nicht betroffen (ruft AppDelegate.handleSetupCode → echten HostManager).
Lösung
HostManager-Instanz von ContentView / AppDelegate durchreichen (z.B. via @EnvironmentObject oder Init-Parameter)
- Lokalen
@StateObject in OnboardingView entfernen
- Sicherstellen, dass nach Onboarding-Abschluss die Verbindung aktiv bleibt
Betroffene Dateien
Sources/ClawsyMac/Onboarding/OnboardingView.swift
Sources/ClawsyMac/ClawsyApp.swift (Fenster-Erstellung)
Hinweise
- Betrifft nur Nutzer, die über manuellen/Tailscale-Weg onboarden (Minderheit)
- Setup Code ist der empfohlene Standardweg und funktioniert korrekt
Aus Codebase-Review Finding #13 (MEDIUM)
Problem
OnboardingViewerstellt einen eigenen@StateObject var hostManager = HostManager(), der unabhängig von der Hauptinstanz inContentViewlebt. Verbindungen, die über den manuellen oder Tailscale-Weg im Onboarding aufgebaut werden, gehen verloren, sobald das Onboarding-Fenster geschlossen wird.Der Setup-Code-Weg ist nicht betroffen (ruft
AppDelegate.handleSetupCode→ echten HostManager).Lösung
HostManager-Instanz vonContentView/AppDelegatedurchreichen (z.B. via@EnvironmentObjectoder Init-Parameter)@StateObjectinOnboardingViewentfernenBetroffene Dateien
Sources/ClawsyMac/Onboarding/OnboardingView.swiftSources/ClawsyMac/ClawsyApp.swift(Fenster-Erstellung)Hinweise
Aus Codebase-Review Finding #13 (MEDIUM)