Our invite link url is `https://comm.app/invite/:secret`.
In our prod setup, we forward all the traffic from `comm.app` to `localhost:3000/commlanding`, which means that our invite link gets replaced by `localhost:3000/commlanding/invite/:secret` and that means that we should handle this route in landing router. It doesn't hurt to also support it in web router - `/invite/:secret` gets replaced later by `/handle/invite/:secret`, so it doesn't cause any issue, but has a benefit that in some other configs would still work.
In `inviteResponder` for web, we were assuming that the route is handled by web router. This is no longer the case, and we have to explicitly forward to web url.
The final issue was that, our invite links for iOS and Android were configured for `web.comm.app` domain instead of `comm.app`. This requires updating `inviteResponder` for iOS (as there's a link url), and `Comm.entitlements`. In order to avoid redirecting all the traffic from `comm.app` to the mobile app, we have to introduce some filtering: for iOS, we modify AASA file to only handle `/invite` route. For Android, we set `pathPrefix` in Manifest.