Decouple CI webhook ingestion with Kafka: stateless receivers, per-ref partition keys, idempotent consumers, dead-letter queues, and production lessons.