stripe: auto-sync webhook endpoint enabled_events on startup
Adding a new case in the webhook handler used to require also clicking
into the Stripe dashboard to subscribe the endpoint to that event,
which is easy to forget — adding customer.deleted in the previous
commit was the immediate trigger.
EVENTS_HANDLED in stripe.js is now the single source of truth.
syncWebhookEvents() runs at startup, finds the endpoint matching
${PUBLIC_URL}/webhooks/stripe, and extends its enabled_events with
anything missing. Non-destructive: existing events stay, '*' is
respected, no endpoint match logs a clear "create one" warning.