4 months ago
1075b0fremoveInstallation soft-deleted the repos but left the user_installations row, so hasInstallation stayed true with zero repos: onboarding spun forever on "syncing the repos you just granted" with NO install button — the user could never reinstall (hit in prod by a cofounder who uninstalled to reinstall). The link is a live-ownership pointer; on installation.deleted it must go. Reinstalling issues a fresh installation id and re-links cleanly. Test: install → uninstall ⇒ hasInstallation false, repos empty.
Parent90e73d7