2026-08-19 · BLOCKED — Workshop Personalize+Connect verified, Activate blocked on a live WhatsApp/Meta credential rejection.
| Scenario | Verdict |
|---|---|
| CT-ICBF-01 Workshop activate | FAIL — blocked at Activate |
| CT-ICBF-01b Workshop form + Storage + DB | BLOCKED (not reached) |
| CT-ICBF-02 / 02b Event | BLOCKED (not started) |
| CT-ICBF-03 / 03b Retreat | BLOCKED (not started) |
https://wa.me/16318181081?text=Hi!%20I'd%20like%20to%20book%20a%20seat%20for%20Wheel-Throwing%20for%20Beginners — decoded prefill matches the plan verbatimin_chat selected, own_form confirmed unselectedClicking Activate returns: "Reconnect WhatsApp to finish activating — The booking form didn't go live — your WhatsApp connection expired. The assistant is not on." Full clean rollback confirmed in Postgres (no assistants row created).
Root cause traced to src/lib/userFriendlyErrors.ts — the backend's Meta Graph API submission for the launch-message template is rejected with a credential/token-class reason. This contradicts what /connects and the connected_apps table both report ("Connected · Healthy", valid phone/WABA ids). See the findings markdown for full detail and recommendations.
scripts/reset-test-account.sh was missing a generation_runs delete step (table added #2982, after the script was written) — blocked every reset for any test account with a completed generation run. Fixed, verified, re-ran successfully.Full findings: docs/testing/click-through/in-chat-booking-flow-findings-2026-08-19.md