Hmm
Well I guess the first thing I’d check is that the cookie exists to be sent (in response to a prior set-cookie header from the domain). You could check that in your browser, look at your domain, and see if the cookie is listed. That should show its properties too. For example if it’s set for a path /xyz and your app is now not at that path (as a result of the move), the cookie would not be sent and so the server would not receive it. Or if any other attribute it has indicate why the browser would not send it.
On the other hand, if you look at the network tab and click the request that should have it, and indeed see the browser is sending the cookie … but the server is not receiving it … that’s odd. Since Fly’s proxy wouldn’t remove it - it would pass the headers along to your app, as-is. The only thing I can think of there is maybe if you are using signed and/or encrypted cookies in your app (not sure what nextjs defaults to), and the secret used to verify the cookie signature is not set in Fly (e.g in a secret ENV) but is in your local env, the cookie could be sent to the app on Fly but not appear because the signature failed. So it would be dropped by a middleware. Total guesses I’m afraid!