Skip to main content

BulkEnrollBridgeNotBuiltin

Thrown by BulkEnrollmentProcessor::enroll() when a subscriber batch targets a show whose active bridge is not the built-in membership (operator ruling 2026-09-14). Thrown before any row is processed, so nothing is created: no WordPress user, subscription, token or welcome email, and no benecaster_bulk_enrollment_complete. Extends InvalidArgumentException, so code already catching the processor’s existing refusal (an unknown token type) catches this one too — check instanceof to tell them apart if you need to offer the follower import instead. Constructor takes the show ID and the active bridge slug and exposes both as public readonly properties, $show_id (int) and $active_bridge (string, ‘’ when no bridge is active).