CalDAV выглядит как “просто календарь”, пока не попробуешь сделать один клиент сразу для Google, Apple, Яндекса и Mail.ru.
И вот тут начинается чёрный кейс: стандарт RFC 4791 есть, а единый API — нет. Каждый провайдер тянет одеяло на себя: разные форматы событий, свои правила по повторяющимся встречам, отличия в timezone, синке удалений и даже в том, как отдают одни и те же поля.
Что в итоге ломается:
— один и тот же event может приехать в разном виде;
— recurrence rules приходится патчить под каждого;
— “удалил в одном месте” не значит “исчезло везде”;
— тесты на одном аккаунте ничего не доказывают.
Вывод для growth/продукта простой: если строите интеграцию с “стандартом”, считайте, что вы подключаете 4–10 разных продуктов, а не один протокол. И заранее закладывайте отдельный слой адаптеров, нормализацию данных и мониторинг расхождений. ⚠️
Иначе “простая синхронизация” быстро превращается в поддержку зоопарка из edge cases.
Growth Room
@GrowthRoomHub
CalDAV выглядит как “просто календарь”, пока не попробуешь сделать один клиент сразу для Google, Apple, Яндекс
Этот пост опубликован в Telegram-канале Growth Room. Подписаться можно по ссылке: @GrowthRoomHub.