Run the pipeline against a new target URL without Clay wired in. Reuses the configured sending/reading inbox — only the URL, approver, test lead, and booking link change per run. See architecture.html for the as-built system, or architecture-2.0.html for the scale-up roadmap.
Pre-launch readiness — sending domain, Bedrock access, schedules, inbox pool, Clay, Calendar, and open approvals. Nothing here sends mail except the Bedrock ping (a single tiny "ok" request).
Fetches the URL, derives an ICP with Bedrock, and emails the approver a one-click approve link. Sourcing (Clay) never starts until that link is clicked — this form doesn't skip that gate.
Bypasses Clay entirely — same dedupe/suppression logic, but you type the "prospect" instead of Clay sourcing them. The campaign must already be approved (step 1's email link).
Runs the same batch step the EventBridge schedule would run anyway (personalize every 10 min, send every few min, reply-poll every 5 min) — on demand, so you're not waiting on the clock while testing.
new → personalized → sent → pending_reply_review → replied → meeting_booked (or suppressed).
One line per inbox: email,app-password,dailyCap (dailyCap optional, defaults to 10). Passwords are Google App Passwords, not the account password — same as the one already configured for the shared inbox. Leave the password blank on a line (email,,dailyCap) to just change an existing inbox's daily cap.
Runs the full pipeline end to end, including the standard ICP-approval email — the only difference from a real campaign is what happens after approval: Clay sources exactly 1 real contact matching the derived ICP, the email is personalized for that real person, but it is only ever sent to the receiver address(es) below. The real contact's inbox is never emailed, and nothing is written to the real leads table.