diff --git a/EventHubFrontSpec.md b/EventHubFrontSpec.md index e93b9c5..42d1d6f 100644 --- a/EventHubFrontSpec.md +++ b/EventHubFrontSpec.md @@ -157,7 +157,12 @@ CONTROL→bookings. Контент: free gaps / события сегодня / **v2 (Front#51):** отказ от дуги (тап другой свободной ячейки / свайп недели) пишет штраф часу и мастеру в `localStorage` (`eh.timeArc.skips`) — дуга переезжает. ≥2 confirmed записей к одному `specialist_id` бустят его слоты. Месяц: тепло `data-time-arc-heat` на днях со скоренным часом. Personal: призрак «тот же час +7д» после прошедшего confirmed визита; тап открывает студию. -**v3 (дуга между календарями):** `/following` сортирует студии по ближайшему Time Arc; тап открывает неделю студии с курсором на этом дне (`data-time-arc` как в v1). Discover остаётся списком: на строке calendar — «когда» (`data-time-arc-when`), без общей сетки нескольких студий. Ghosts владельца считаются по активной студии (переключение календаря не смешивает паттерны). По-прежнему без LLM / Back AI. +**v3 (дуга между календарями):** `/following` сортирует студии по ближайшему Time Arc +(`start_time`); баннер «Ближайший час» — **min** среди подписок, без дубля `when` +на той же строке списка. `/search`: баннер nearest — другая студия, чем первая +карточка выдачи (если совпадает — следующий hint); Discover остаётся списком +с `data-time-arc-when` на остальных calendar-строках. Тап открывает неделю студии +с курсором на этом дне. Ghosts владельца по активной студии. Без LLM / Back AI. **v4 (Front#53):** pending occupancy тянет demand-ghosts на тот же час в свободные дни текущей ISO-недели (`data-time-arc-demand`). Long-press пустого часа week/day у владельца commercial — локальный разбор фразы → phrase-ghost (`data-time-arc-phrase`); клик и long-press месяца по-прежнему открывают create. Специалист на чужой студии: дуга на своём будущем pending-слоте. Без LLM / AiRouter.