Testing artifacts · 2026-08-21 · Peyton WP prod

Connection Health Settle-Window Gating — click-through results

Real browser (Claude-in-Chrome computer-use) against https://platform.mystflo.com. Target: PR #3649 (merged 2026-08-18, deployed). Plan: docs/testing/click-through/connection-health-gating-3643-3641.md. Full findings: docs/testing/click-through/connection-health-gating-3643-3641-findings-2026-08-21.md.

Fixture reality did not match the authored plan. TMPL-BRST01/TMPL-BRVX01 (the plan's candidate Google-requiring templates) are Brain-page inline sections, not wizard-activatable — confirmed by direct DB read and by clicking into the Brain page. No other public template requires Google Account. Every scenario below ran on a substitute fixture (Waitlist+Launch's Storage/Google Sheets row, and On-Brand Support's Connect tab) or was BLOCKED where no substitute existed (the AI-provider picker, and a second QA account credential).

Scoring rollup

ScenarioResultNotes
CT-CONNHEALTH-01 — flagship: wizard fresh-open after warming unrelated cachePASS (substitute fixture)3/3 clean runs, zero false flashes
CT-CONNHEALTH-02 — wizard AppRow chips baselinePASS (substitute fixture)Same surface — no un-warmed variant available
CT-CONNHEALTH-03 — modal Connections tabPASS (substitute rows)Retreat Launch Kit has zero connect-app rows; used On-Brand Support instead
CT-CONNHEALTH-04 — AI-provider pickerBLOCKEDPicker doesn't exist in live UI (AUTO-only AI gate, expected)
CT-CONNHEALTH-05 — Team/Library badgesPASSNo false flash; no badge exists on this surface to begin with
CT-CONNHEALTH-06 — settled-state stabilityPASS10s+ wait + scroll interaction, no flip-back

CT-CONNHEALTH-01/02 — substitute fixture

/connects fully warmed and settled first (Google Workspace row Healthy, drive.file scope confirmed), then a fresh full-page navigation straight into the Waitlist+Launch wizard's Connect step. Repeated 3× total. The Storage: Google Sheets row (backed by the same Google connection via the storage-as-connector pattern) read Connected in every captured frame, including the earliest post-click screenshot — zero false “Missing Drive access”/Reconnect flashes.

/connects page, all 6 connections healthy, Google Workspace shows Sheets/Docs/Drive scopes
/connects fully settled — Google Workspace Healthy, drive.file scope present (cache-warming step)
Waitlist + Launch Connect tab, Storage row shows Google Sheets Connected
Waitlist + Launch → Connect tab, fresh mount right after warming /connects — Storage: Google Sheets reads Connected, no flash

CT-CONNHEALTH-03 — substitute rows

Retreat Launch Kit's Connect tab (the plan's named target) has required_apps=[] — only an AI Model row, no OAuth rows to watch. Substituted On-Brand Support's Connect tab (WhatsApp Business, AI Model, Slack — all real connected apps). 2 fresh modal opens, zero flashes, zero console errors.

On-Brand Support Connect tab — WhatsApp Business, AI Model, Slack all show Connected
On-Brand Support → Connect tab, fresh modal open — all rows Connected, no flash

CT-CONNHEALTH-04 — BLOCKED

The AI Model row's dropdown offers only disabled “Disconnect” / “Switch account…” options — no gemini/openai/anthropic list exists to click into. Matches the known AUTO-only AI launch gate; not a PR regression.

AI Model dropdown showing Disconnect and Switch account options, both disabled with explanatory text
AI Model dropdown — no provider picker exists; both options disabled ("coming later" / "default option at the moment")

Reference — Pulse Active tab

Card layout for context (used to reach the On-Brand Support and Retreat Launch Kit detail modals).

Pulse Active tab showing three assistant cards: On-Brand Support, Retreat Launch Kit, Event Booking
Pulse → Active tab

Findings to file

  1. No public template requiring Google Account routes through the standard ActivationWizard. TMPL-BRST01/TMPL-BRVX01 are the only two, both Brain-inline. The Google drive.file-scope settle-window check this PR fixed has zero catalog-reachable wizard regression surface right now.
  2. Retreat Launch Kit's Connect tab has no OAuth rows (required_apps=[]) — any future settle-window test naming it as a target needs revision.

Full findings markdown →