fix idempotency in the source recipe