Commit Graph

  • b713bdcf52 бэкап-снимок: прод-правки (перед пушем SMS-лимитера) main Mikhail 2026-10-09 21:11:39 +0000
  • 34463bbc4a fix(логистика): бейдж обзвона не висит на согласованной заявке dev Hermes 2026-10-05 15:00:30 +0200
  • 5170c4fc93 sms-second: не ждать вторую СМС при выключенной кампании — снятие очереди в second_sms_skipped ops 2026-10-04 14:30:35 +0000
  • d9327f320c SMS: сериализация отправки между кампаниями под аккаунтный лимит sms.ru (8 SMS за 10 минут суммарно) hermes 2026-10-04 13:20:07 +0000
  • f55b43e716 SMS: проактивный лимитер sms.ru (8 SMS на номер за 10 минут) перед отправкой root 2026-10-04 12:12:16 +0000
  • 50c9a68e9f docs: отчёт по аналитике коммуникаций — что было не так и что исправлено Hermes 2026-10-03 00:43:57 +0200
  • c8e9e697ad fix(analytics): подписи каналов согласования — робот и старые записи не сырыми ключами Hermes 2026-10-03 00:39:14 +0200
  • bf2b3559ae fix(analytics): честные цифры согласований — без согласования, тестовые звонки, открытия ссылки, единый канал Hermes 2026-10-03 00:34:57 +0200
  • 6dba84f22a fix(analytics): клиентские каналы согласования подписаны, а не сырыми ключами Hermes 2026-10-02 15:24:29 +0200
  • f2a9249bba fix(client): согласование по ссылке падало с ReferenceError src is not defined Hermes 2026-10-02 15:18:22 +0200
  • 4cc91b6dc8 style(client): под штрих-кодом кода выдачи убраны цифры Hermes 2026-09-30 19:04:46 +0200
  • 7799f4227a feat(client): код выдачи — штрих-код EAN-13, код в начале значения Hermes 2026-09-30 15:41:26 +0200
  • dbac57ba2a feat(client): штрих-код под кодом выдачи (самовывоз) Hermes 2026-09-30 14:18:05 +0200
  • 4cf5c0ffab feat(autocall): локация без звонков помечена «Не звоним (город)» Hermes 2026-09-29 17:40:58 +0200
  • 20e942235a feat(delivery): видно, чем согласовали заказ — пуш / SMS / звонок / логист Hermes 2026-09-29 11:54:04 +0200
  • c3df1fc0e1 feat(analytics): «Путь заказа» — воронка по ступеням обработки Hermes 2026-09-29 11:03:24 +0200
  • 48fb7ad662 style(analytics): короткие подписи колонок в таблице попыток на мобильном Hermes 2026-09-29 10:30:05 +0200
  • 41ac30c090 style(analytics): мобильная раскладка списков воронки — без горизонтальной прокрутки Hermes 2026-09-29 10:28:35 +0200
  • 188db318e3 feat(analytics): воронка коммуникаций на странице «Аналитика» Hermes 2026-09-29 10:23:01 +0200
  • 5979b03f9f style(registry): дата и половина дня в колонке «Дата» — двумя строками Hermes 2026-09-28 23:20:53 +0200
  • 3b90b79f9f fix(registry): дата и время самовывоза в реестре групп Hermes 2026-09-28 23:17:39 +0200
  • 6944386b3b feat(admin): дни недели в окне звонков автодозвона Hermes 2026-09-28 22:53:34 +0200
  • d1799ca738 test(autocall): детерминированная проверка окна обзвона Hermes 2026-09-28 22:34:44 +0200
  • 341ac14607 fix(autocall): не звонить вне разрешённого окна Hermes 2026-09-28 22:31:48 +0200
  • 16141fe5b4 feat(client): шаг «Звонок» в цепочке заказа Hermes 2026-09-28 14:56:17 +0200
  • 6d8992dfad fix(autocall): результат тестового звонка больше не пишется в боевой заказ Hermes 2026-09-28 13:11:56 +0200
  • 52c8f16a74 test(client): актуализировать ожидания DeliveryChoiceFlow (устаревшие тексты) + кейс самовывоза Hermes 2026-09-28 12:28:55 +0200
  • 8e99bd1f32 fix(auth): lock — функция-заглушка вместо строки 'no-lock' (без Web Locks API клиент падал) Hermes 2026-09-28 12:27:12 +0200
  • 8fa05f1746 test(client): чистые тесты invitationReference + страница согласования запускается в jsdom Hermes 2026-09-28 12:25:06 +0200
  • d98c44c9fd feat(client): номер доставки и код выдачи + «Доставка» вместо «Счета»; в SMS — {order} и {code} Hermes 2026-09-28 12:21:51 +0200
  • b69e5172d6 chore: сохранить SQL аудита истории в репозитории + убрать мусор из индекса Hermes 2026-09-28 11:34:45 +0200
  • a1d1c3f7a2 chore(sw): v118 — выкладка фронта из dev-сборки (возврат автодозвона + шаблоны SMS) Hermes 2026-09-28 11:31:08 +0200
  • cf5bf31008 feat(sms): текст SMS по типу отгрузки — свои шаблоны для доставки и самовывоза Hermes 2026-09-28 10:50:32 +0200
  • ece302d512 fix(autocall): самовывоз пишет только pickup_date Hermes 2026-09-25 17:30:29 +0200
  • 7e719e6b43 fix(autocall): день робота → дата без сдвига; окно не считаем при пустом графике Hermes 2026-09-25 16:56:21 +0200
  • 21eade5d3f fix(autocall): в истории заказа слот тоже показываем датой Hermes 2026-09-25 16:23:13 +0200
  • 3a4cceb9a4 feat(autocall-log): пишем дату согласованного слота (chosen_date) в журнал звонков Hermes 2026-09-25 16:16:43 +0200
  • 462c2b4892 feat(autocall): основной транк обзвона — GSM-модуль клиента (goip5), Miranda запасной Hermes 2026-09-25 16:16:43 +0200
  • 004050c0ff fix(autocall): карточка показывает реальный день слота, а не «завтра» Hermes 2026-09-25 16:16:43 +0200
  • 2067ff7d89 fix(sms): кампании больше не долбят один номер бесконечно (код 107 у сотен SMS) hermes 2026-09-21 17:28:46 +0200
  • c58f2b0629 fix(ui): закрытый баннер SMS больше не возвращается (отпечаток без суммы), баланс один на всех страницах; feat(autocall): статусы «не выбрал день» / «не выбрал время» / «и то и другое» (БД + бейдж + фильтр) Hermes 2026-09-17 12:32:53 +0200
  • 775a72ea29 fix(autocall): «ручное управление» — это НЕ согласованный заказ; кнопку автодозвона по нему больше не блокирует (ошибка из прошлой правки) Hermes 2026-09-17 12:04:00 +0200
  • 512aab9ff2 fix(sms): заказы больше не висят в «1-е приглашение отправлено» — в ручную работу переводим от последнего контакта и только по включённым каналам (SMS/автодозвон); заказ, где дата уже выбрана, роботу не звоним Hermes 2026-09-16 17:15:43 +0200
  • e35b3d885f fix(autocall): заявку «позвонить сейчас» не закрываем — при закрытом окне звонка блокируем кнопку автодозвона с объяснением (по правилу владельца) Hermes 2026-09-16 16:47:49 +0200
  • dacd43165c fix(autocall): заявка «позвонить сейчас» с закрытым окном звонка больше не висит вечно в очереди — планировщик закрывает её, карточка честно говорит «звонить больше не о чем» + кнопка «всё равно позвонить» Hermes 2026-09-16 16:39:28 +0200
  • b965216181 feat(sms): в карточке объяснён статус «ручное управление» без ошибок отправки — SMS не отправлялись, согласование шло без SMS Hermes 2026-09-16 16:30:02 +0200
  • 4192e44998 feat(sms): понятные причины ошибок в карточке доставки — техстроки планировщика (code=106, not delivered, limit exceeded) переводятся в человеческие Hermes 2026-09-16 16:19:17 +0200
  • 5c98a54895 feat(autocall): звонок клиенту, если SMS не ушло (отсчёт от последней попытки) + статусы «не выбрал день/время» вместо «не нажал цифру» Hermes 2026-09-16 16:14:34 +0200
  • 7ab3debbb3 fix(logistics): понятные статусы автодозвона в реестре доставок — своя подпись у каждого исхода, «не звонили» только по ожидающим заказам, убраны формулировки удалённых сценариев; единый список подписей для фильтра и бейджа Hermes 2026-09-16 11:03:28 +0200
  • aeb4bbf63f fix(autocall): убраны сценарии «0» и «9» из диалога и из презентации; пауза между звонками 1 час; граница половины дня 13:00; в презентации готовность по обмену с 1С, без готовности в субботу Hermes 2026-09-16 10:36:01 +0200
  • 833d2dcd44 fix(autocall): в презентации готовность приходит по обмену с 1С, а не отметкой менеджера; PDF и HTML собираются из одного файла содержания Hermes 2026-09-15 18:02:22 +0200
  • d9ded99e81 docs(autocall): HTML-версия презентации из общего файла содержания (deck_content.py), проверка совпадения текста с PDF Hermes 2026-09-15 15:50:19 +0200
  • ed89222834 docs(autocall): презентация «Автодозвон: как это работает» (PDF, 16 слайдов) + скрипт сборки и проверки вёрстки Hermes 2026-09-15 15:38:49 +0200
  • 8e9a0f6dab fix(autocall): ручной звонок из карточки звонит клиенту (тестовый режим только для массового обзвона) + видимый процесс звонка в карточке Hermes 2026-09-15 15:26:20 +0200
  • 5a71fbceba docs(ats): образцы звучания собираются из списка файлов AGI-харнесса + скрипт сборки (в ручном образце «в пятницу» вместо «сегодня») Hermes 2026-09-15 09:56:37 +0200
  • 47b3ccf28f fix(autocall): убран сценарий «0 — позвать менеджера» — такой цифры в диалоге нет, менеджер подключается только эскалацией Hermes 2026-09-15 09:50:26 +0200
  • 44f58ce9e7 fix(autocall): доставка предлагает реальные рабочие дни графика (пт → пн/вт), эскалация по настройкам админки, WAIT FOR DIGIT и «0 — менеджер» Hermes 2026-09-15 09:40:43 +0200
  • 3706f64ca7 feat(orders): блок про SMS смотрит на баланс счёта — гасится после пополнения, закрывается крестиком, предупреждает о низком балансе (эдж-функция sms-balance) Hermes 2026-09-14 15:58:30 +0200
  • dc262d2be7 feat(orders): причина неудачной отправки SMS — в карточке заказа и блоком над таблицей наборов (код 201 = кончились средства) Hermes 2026-09-14 15:40:15 +0200
  • 6ebdc41667 fix(ats): название компании «Супер Сам» (пробел) — выбор владельца, залито на АТС Hermes 2026-09-14 14:51:31 +0200
  • f9395d7d05 fix(ats): название компании раздельно в озвучках (Супер, Сам) + инструкция по генерации и проверке озвучек Hermes 2026-09-14 14:27:26 +0200
  • 1660cced66 feat(schedule): дни SMS в ЛК реально управляют рассылками — скрипты читают sms_days из графика Hermes 2026-09-14 14:14:37 +0200
  • 1a310e5f5a fix(pickup): окно самовывоза в рабочих днях (пятница → пт, пн, вт) у робота и в ссылке; тесты окна Hermes 2026-09-14 13:59:13 +0200
  • 11167516a3 feat(schedule): рабочие часы склада и доставки в админке — открытие/закрытие, границы половин, отсечка «сегодня»; робот и ссылка клиента читают часы Hermes 2026-09-14 13:15:49 +0200
  • 794c3ce5e3 fix(autocall,client): рабочие дни из графика админки — самовывоз пн-пт у робота и ссылки, доставка в ссылке читает график; тексты панели «Рабочие дни» Hermes 2026-09-11 15:53:03 +0200
  • 270ab39abc fix(autocall): самовывоз только по рабочим дням графика + робот называет реальные дни; страница клиента читает график Hermes 2026-09-11 15:40:29 +0200
  • 139c895290 feat(autocall): локации — переключатели звонков по городам в админке (авто-дозвон), гео-правила общие с SMS Hermes 2026-09-11 11:59:44 +0200
  • f62a6b525b feat(autocall): окно самовывоза 3 дня (сегодня/завтра/послезавтра), даты из диалога, гео-исключения как у SMS Hermes 2026-09-11 11:29:49 +0200
  • feb3fc1b07 fix(agi): обрыв диалога — отдаём результат в БД (иначе звонок задним числом записывался как «не взял трубку») Hermes 2026-09-11 11:05:57 +0200
  • c4e2c4a181 feat(autocall): самовывоз — тип звонка pkp/dlv из карточки заказа, выключатель самовывоза, тип в логе и очереди Hermes 2026-09-11 10:53:53 +0200
  • 46a3609233 fix(autocall): исход «не взял трубку» — добор истёкших заявок + детект объявления оператора в AGI Hermes 2026-09-10 15:27:59 +0200
  • 73b9512f15 fix(orders): список не пустеет при возврате — кэш отдаёт обёртку {data,error}, состояние не стирается Hermes 2026-09-10 15:04:47 +0200
  • 52dc913fa7 fix(autocall): бейдж в таблице — «Автодозвон ✅ / ❌» вместо «слот от робота» Hermes 2026-09-10 14:53:44 +0200
  • 9d1c74eda0 fix(autocall): сводка показывает последний успешный звонок; текст в сводке переносится вместо обрезки Hermes 2026-09-10 13:15:47 +0200
  • f378fd05ef fix(autocall): блок «Автодозвон» не появлялся в карточке, если порядок блоков сохранён в localStorage — мердж с дефолтом Hermes 2026-09-10 11:32:14 +0200
  • c7a35cdd29 feat(autocall): история звонков в карточке — как у SMS (попытки, слот, сценарий, длительность) Hermes 2026-09-10 11:28:39 +0200
  • 04f78f7367 feat(filters): два отдельных фильтра «Статус SMS» и «Статус автодозвона» вместо «Прозвонить» Hermes 2026-09-09 14:49:31 +0200
  • 587e12f562 feat(filters): единое поле «Период» без лейблов + упрощённый фильтр «Прозвонить» Hermes 2026-09-09 11:59:32 +0200
  • 64bcda8eed feat(autocall): статус автодозвона в карточке (как у SMS) + фильтр «Прозвонить» в таблице + выравнивание переключателя Hermes 2026-09-08 13:04:01 +0200
  • 1552c21d99 feat(autocall): автодозвон в карточке доставки — история действий, цепочка этапов, сводка статусов Hermes 2026-09-08 12:28:38 +0200
  • 5dbeae84f4 feat(autocall): исключения автодозвона — таблица, UI в настройках, проверка в планировщике, бейдж в реестре/карточке Hermes 2026-09-08 11:16:16 +0200
  • 95af771596 perf(autocall): таймер 60с + fast-path (молча, если очередь пуста и кампания выключена) Hermes 2026-09-02 11:42:58 +0200
  • 5e4bfc1af0 feat(autocall): показ последних тест-звонков + честный статус задержки планировщика Hermes 2026-09-02 11:37:16 +0200
  • 0d8e0f9d40 feat(autocall): тестовый звонок из UI для мегаадмина — autocall_queue nullable + is_test_call, TestCallPanel с окном результата Hermes 2026-09-02 11:10:06 +0200
  • 4ed7f64a37 feat(autocall): добавить autocall_queue (ручной звонок через планировщик). Миграция 20260902 + чтение очереди в scheduler Hermes 2026-09-02 10:56:02 +0200
  • 75476c9d70 fix(auth): добавить dev.mkn8n.ru в ALLOWED_ORIGINS (CORS Origin not allowed) Hermes 2026-09-01 22:52:12 +0200
  • 76fd38ceaa docs(ats): ss-dialog.agi с getvar + send_result (curl в БД при фиксации выбора) Hermes 2026-09-01 22:50:43 +0200
  • a08612ef0d fix(autocall): edge fn обновляет по uniqueid вместо дубликата (клиент бросает трубку после выбора) Hermes 2026-09-01 22:50:39 +0200
  • d6c3e02f24 docs(ats): diffs for Pasha — SS-Autocall-Slot context, AGI curl, pbx_spool autoload Hermes 2026-09-01 21:55:00 +0200
  • 6435679161 feat(autocall): раздел «Коммуникации» с вкладками SMS/Автодозвон/Аналитика, бейджи, карточка заказа, edge fn autocall-result, миграция БД Hermes 2026-09-01 21:34:39 +0200
  • 7ce06873ce fix(deploy): dev deploy.sh must build dev container, not prod Hermes 2026-09-01 21:08:28 +0200
  • eb1b39e035 fix(sms): manual campaign grace period 30min for link_ready (FIX-4 was never applied) root 2026-09-01 11:09:41 +0000
  • 2fda27a329 fix(login): request-otp must insert otp_code (NOT NULL) for send_pin email Hermes 2026-08-21 16:35:04 +0200
  • a505ce6ca7 merge main (edge function fix) Hermes 2026-08-21 14:25:21 +0200
  • dc0f7f51c5 fix(client): allow self-booking in manual-confirmation status Hermes 2026-08-21 14:25:16 +0200
  • f35a84084b chore(sw): bump cache to v116 Hermes 2026-08-21 14:11:24 +0200
  • 6ca8bd545e fix(call): show & persist 'called' status Hermes 2026-08-21 14:09:54 +0200
  • f5a06188a2 fix: align row-2 controls by bottom edge of input fields (SMS + toggle flush with dates) Hermes 2026-08-19 13:02:30 +0200
  • ebff56c749 fix: SMS dropdown text fits, align hide toggle on row, no skeleton flash on toggle Hermes 2026-08-19 12:52:38 +0200
  • 46fac18e28 ui: restructure filters — search wider on row 1, SMS + hide-completed toggle switch on row 2 Hermes 2026-08-19 12:36:27 +0200