Repairs the chain after MIGRATION_V11 was edited in place (b35f9bcb5):
it first shipped creating paywall_events, and a store that reached v11
then never runs the renamed text, so it has no event_queue and drops
every funnel event. Idempotent on purpose — a store migrated after the
edit already has event_queue (with queued events to keep). The paywall
rail is gone and nothing drains paywall_events, so it is dropped.
Never edit a migration that has shipped; append one like this.
Session events and attribute mutations carry the wire identity they were
recorded under, so each drains under its own subscriber and log_out
has nothing to discard (it used to clear both, losing whatever the 30 s
flush had not sent yet). Recreated rather than altered: rows buffered
before this carry no identity to post them under.