Same failure in the macOS desktop app, plus a second bug that stops it from recovering.
Steps
- On a tailnet with HTTPS certificates disabled, turn on Tailscale HTTPS (port 443) in Settings → Connections and confirm.
- The backend relaunches and
tailscale servefails.tailscale certreturns "your Tailscale account does not support getting TLS certs". The switch shows off, anddesktop-settings.jsonnow has"tailscaleServeEnabled": true. - Enable HTTPS certificates in the Tailscale admin console.
- Turn the switch on and confirm Setup again. The dialog closes and nothing else happens. There is no relaunch and no
tailscale servecall, and the switch stays off.
The dialog says T3 Code will restart the local backend, but setTailscaleServeEnabled returns requiresRelaunch: result.changed (apps/desktop/src/backend/DesktopServerExposure.ts:532 on d7202109). The saved flag and port already match from step 1, so nothing relaunches. The server calls ensureTailscaleServe only at startup (apps/server/src/server.ts:781), so Serve stays off until the user quits and reopens the app. Quitting and reopening fixed it here.
#14746 hits the same no-op relaunch in its DNS case. #15027 changes which state the switch reads but not the relaunch, so after it lands, step 4 would show the switch already on with a health note, and the only way to retry would be to turn it off and on again.
A possible fix is to relaunch whenever the user confirms Enable, for example requiresRelaunch: result.changed || input.enabled, which matches what the dialog says.
T3 Code 0.0.46-nightly.20261007.2787, macOS 26.5, Tailscale 1.102.4.