{"ok":true,...}.Chats tab has all turns. Leads tab has one row each from chat and form, tagged and prioritized.Loading...
Non-chat path. Same backend, same Leads tab, same tagging, submitted as a single payload instead of a conversation.
verification_failed (Turnstile keys mismatched between site and secret), or 500 from Apps Script (check the Executions log).<lead> sentinel. Check the Chats tab for the raw assistant turns. If the sentinel is there but malformed, tighten the niche prompt in getPromptBody. If it's missing entirely, the prompt's completion contract isn't strong enough.doPost run. Likely an exception in saveLead or a permission issue with Gmail.localhost as an allowed hostname in the Turnstile dashboard, or deploy to a Cloudflare Pages preview URL.