You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
I have a somewhat simple contact form that stops working somewhere around 24 hours after being deployed. After it stops working, it will act like it's working from the browser perspective by immediately showing a successful response (faster than usual) but no email will be sent and all the console.log()s that should show up will not appear in Vercel's deployment logs.
I'm using SvelteKit's form action to process submissions via Superforms w/ Zod for validation, Recaptcha V3 for bot filtration, and Nodemailer + an SMTP server for email delivery. I also have ISR enabled with expiration set to never.
The main culprit appears to be ISR, because if I disable it by removing the config in page.server.ts, the form continues to work beyond one day. Am I not supposed to use server-side form actions with ISR? I didn't see anything about that in the docs. I prefer having the page pre-render via ISR because I do have a little bit of content that pulls from Sanity that will rarely change, if ever, that I don't want to be refetched all the time.
Reproduction
I made a simplified reproduction repo on GitLab, you just need to provide vercel the environment variables listed in dev.env (values not provided) and deploy/preview build it on Vercel. As mentioned, it will work perfectly for about the first 24 hours, then it fails to function while showing the success message in the browser.
Logs
Apr 23 22:33:33.02 200 | form-example-mauve.vercel.app | GET | /__data.json
Apr 23 22:33:32.93 200 | form-example-mauve.vercel.app | POST | /
Describe the bug
I have a somewhat simple contact form that stops working somewhere around 24 hours after being deployed. After it stops working, it will act like it's working from the browser perspective by immediately showing a successful response (faster than usual) but no email will be sent and all the console.log()s that should show up will not appear in Vercel's deployment logs.
I'm using SvelteKit's form action to process submissions via Superforms w/ Zod for validation, Recaptcha V3 for bot filtration, and Nodemailer + an SMTP server for email delivery. I also have ISR enabled with expiration set to never.
The main culprit appears to be ISR, because if I disable it by removing the config in page.server.ts, the form continues to work beyond one day. Am I not supposed to use server-side form actions with ISR? I didn't see anything about that in the docs. I prefer having the page pre-render via ISR because I do have a little bit of content that pulls from Sanity that will rarely change, if ever, that I don't want to be refetched all the time.
Reproduction
I made a simplified reproduction repo on GitLab, you just need to provide vercel the environment variables listed in dev.env (values not provided) and deploy/preview build it on Vercel. As mentioned, it will work perfectly for about the first 24 hours, then it fails to function while showing the success message in the browser.
Logs
Expected (when working):
System Info
Severity
serious, but I can work around it
Additional Information
No response
The text was updated successfully, but these errors were encountered: