Commit Graph

  • 54c35e281a 🔖 release: 1.5.0 v1.5.0 AndreyandClaude Fable 5.1 2026-09-13 00:43:11 +03:00
  • 5396dda8ad ✨ feat(updates): обновление установки из интерфейса AndreyandClaude Fable 5.1 2026-09-13 00:43:11 +03:00
  • 29164db094 🔖 release: 1.4.0 v1.4.0 AndreyandClaude Fable 5.1 2026-09-13 00:03:55 +03:00
  • c5a53ccec5 ✨ feat(identity): SVG в качестве логотипа организации AndreyandClaude Fable 5.1 2026-09-13 00:03:54 +03:00
  • 049217505a 🔇 fix(worker): пауза после сбоя опроса подключения и тишина в журнале AndreyandClaude Fable 5.1 2026-09-13 00:03:54 +03:00
  • 132c684630 🔖 release: 1.3.1 v1.3.1 AndreyandClaude Fable 5.1 2026-09-12 23:18:43 +03:00
  • bfe90e9abd 💄 fix(knowledge): пустое состояние библиотеки снова по центру AndreyandClaude Fable 5.1 2026-09-12 23:18:43 +03:00
  • 5b49904d6a 🐛 fix(identity): адрес установки виден соседним процессам сразу, а не через 10 секунд AndreyandClaude Fable 5.1 2026-09-12 23:18:43 +03:00
  • cd50cce5a8 ⬆️ ci(actions): версии actions под Node.js 24 AndreyandClaude Fable 5.1 2026-09-12 18:55:51 +03:00
  • a4ca7e9373 🔖 release: 1.3.0 v1.3.0 AndreyandClaude Fable 5.1 2026-09-12 16:19:01 +03:00
  • 145c44a17d ✨ feat(internal-ui): несколько организаций — переключатель, разделы администратора установки, приглашения AndreyandClaude Fable 5.1 2026-09-12 14:37:52 +03:00
  • ac824e192c 🔒 feat(deploy): три тома секретов и разрешение upstream в nginx на каждом запросе AndreyandClaude Fable 5.1 2026-09-12 14:37:38 +03:00
  • 3e790af6e5 ✉️ feat(identity): приглашения в организацию — существующие учётные записи и владелец из провижининга AndreyandClaude Fable 5.1 2026-09-12 14:37:25 +03:00
  • 1390ccc426 🔒 fix(tenancy): гранты платформенной роли, backend-app только ролью app, организация видна в своём контексте AndreyandClaude Fable 5.1 2026-09-12 14:37:10 +03:00
  • 2e52bdaea0 👥 feat(identity): администратор установки и настройки инсталляции на /api/v1/instance/ AndreyandClaude Fable 5.1 2026-09-12 14:36:51 +03:00
  • 5bf3d9b572 🔖 release: 1.2.1 v1.2.1 AndreyandClaude Opus 5 2026-09-12 03:36:56 +03:00
  • 6d94aa1f9f 🚨 fix(lint): порядок импортов по конфигурации из корня репозитория AndreyandClaude Opus 5 2026-09-12 03:20:50 +03:00
  • 0e6a3db9a6 🌐 feat(i18n): язык ответов агента, английское демо и язык в мастере v1.2.0 AndreyandClaude Opus 5 2026-09-12 03:12:18 +03:00
  • d7f87719de 🔖 release: 1.1.0 v1.1.0 AndreyandClaude Opus 5 2026-09-10 00:37:21 +03:00
  • 6c3dec7339 🌐 feat(i18n): язык интерфейса — русский и английский AndreyandClaude Opus 5 2026-09-10 00:36:52 +03:00
  • f91b3da27a 📄 docs(license): AGPL-3.0 AndreyandClaude Fable 5.1 2026-09-09 19:52:11 +03:00
  • c19bf642c7 💚 fix(ci): digest базовых образов брался по шаблону, который печатал сам себя v1.0.0 AndreyandClaude Fable 5.1 2026-09-09 19:24:08 +03:00
  • 347447b827 🔖 release: 1.0.0 AndreyandClaude Fable 5.1 2026-09-09 19:20:16 +03:00
  • a41da36cc4 📝 docs(readme): продуктовый README на английском и русском AndreyandClaude Fable 5.1 2026-09-09 19:09:57 +03:00
  • 5f7bd03cb5 🔀 merge: установка одной командой, разбор аудита, линтер в CI Andrey 2026-09-09 18:09:08 +03:00
  • d0a338b26f 🔥 chore(repo): убрать GitLab и служебный каталог агента из репозитория AndreyandClaude Opus 5 2026-09-09 18:08:50 +03:00
  • 482fa73d95 🚨 fix(lint): привести код к своей же конфигурации ruff и включить её в CI AndreyandClaude Opus 5 2026-09-09 07:39:18 +03:00
  • 3e62ce1ed5 🔧 fix(repo): поправить комментарий в .gitattributes AndreyandClaude Opus 5 2026-09-09 07:01:37 +03:00
  • bd40ff38fe 🔧 fix(repo): переводы строк в .py — только LF AndreyandClaude Opus 5 2026-09-09 07:00:53 +03:00
  • 87a4359b04 🗑️ chore(audit): убрать временный чек-лист AndreyandClaude Opus 5 2026-09-09 06:40:06 +03:00
  • 00e4501a50 📝 docs(audit): чек-лист аудита закрыт целиком AndreyandClaude Opus 5 2026-09-09 06:39:55 +03:00
  • f74d242988 ✅ fix(tests): признак «мастер пройден» не кэшируется в тестах AndreyandClaude Opus 5 2026-09-09 06:12:01 +03:00
  • cc03c5fa3d 🔒 fix(security): границы, которые обходились через соседний эндпоинт AndreyandClaude Opus 5 2026-09-09 05:35:16 +03:00
  • 8fe66385d6 ✨ feat(release): установка на чистый хост одной командой AndreyandClaude Opus 5 2026-09-09 04:55:17 +03:00
  • a141cd4f50 Merge branch 'fix/calls-audio-layout-and-lifecycle' into main Andrey 2026-09-09 04:02:52 +03:00
  • 77552dfad4 ♻️ refactor(calls): статус видеозвонка считается без мнимой мемоизации AndreyandClaude Opus 5 2026-09-09 04:00:14 +03:00
  • 48003f9bab 🐛 fix(calls): устройства отпускаются после отбоя, экран звонка на токенах AndreyandClaude Opus 5 2026-09-09 03:57:32 +03:00
  • 3461556446 🐛 fix(calls): окно аудиозвонка держит пропорцию и переживает обрыв AndreyandClaude Opus 5 2026-09-09 03:35:20 +03:00
  • ee9cbf0995 ⚡ perf(realtime): всплеск событий приводит к одному обновлению AndreyandClaude Opus 5 2026-09-09 02:34:39 +03:00
  • 03825dfbd5 ⚡ perf(realtime): обновление по событию вместо опроса AndreyandClaude Opus 5 2026-09-09 02:33:28 +03:00
  • f3cbf1658c ⚡ perf(db): порядок инбокса по индексу, страницы без N+1 AndreyandClaude Opus 5 2026-09-09 02:12:34 +03:00
  • ed78617722 ✨ feat(pickers): поиск в выборе ответственного и передаче владения AndreyandClaude Opus 5 2026-09-09 01:39:11 +03:00
  • 776bc89514 ⚡ perf(knowledge): библиотека знаний — страница и фильтры на сервере AndreyandClaude Opus 5 2026-09-09 01:30:02 +03:00
  • e6a6bf77b6 ⚡ perf(ui): списки отдаются страницами, фильтры считает база AndreyandClaude Opus 5 2026-09-09 00:05:02 +03:00
  • 0636ef5fa9 ⚡ perf(conversations): история и инбокс грузятся окнами, а не целиком AndreyandClaude Opus 5 2026-09-08 23:00:08 +03:00
  • b601a72608 🚚 chore(repo): вернуть выпавшие при переносе корня файлы AndreyandClaude Opus 5 2026-09-08 21:51:41 +03:00
  • 53129701a2 🚚 chore(repo)!: корень репозитория перенесён в code/chatballs AndreyandClaude Opus 5 2026-09-08 21:11:05 +03:00
  • c01bf8aef6 🔥 chore(db): мёртвые поля отменённых доменов удалены из схемы AndreyandClaude Opus 5 2026-09-08 20:44:01 +03:00
  • 2976856760 ✅ fix(scripts): check.ps1 действительно проверяет, а не делает вид AndreyandClaude Opus 5 2026-09-08 20:10:00 +03:00
  • fd7687446c ✅ test(e2e): сценарии internal-ui переписаны под контакт-центр AndreyandClaude Opus 5 2026-09-08 19:41:28 +03:00
  • 6a93cfcbd7 ✅ fix(tests): pytest-сьют backend снова запускается целиком AndreyandClaude Opus 5 2026-09-08 19:26:57 +03:00
  • b2bc951f68 🔧 fix(design): макет «Сотрудники» получил комплект дизайн-системы AndreyandClaude Opus 5 2026-09-08 18:26:48 +03:00
  • 90be94af43 🔥 chore: прежние имена продукта убраны из отслеживаемых файлов AndreyandClaude Opus 5 2026-09-08 18:22:56 +03:00
  • e088ead06f 📝 docs: идентификаторы проектных документов приведены к CHATBALLS AndreyandClaude Opus 5 2026-09-08 18:13:33 +03:00
  • b09fcb6f10 🔥 chore: снесён скрипт переименования CustoCRM → Chatballs AndreyandClaude Opus 5 2026-09-08 17:25:38 +03:00
  • 486492c1d3 🔒 fix(identity): ключ шифрования секретов в БД перестал следовать за SECRET_KEY AndreyandClaude Opus 5 2026-09-08 17:22:43 +03:00
  • a2e6672424 🔥 chore: .env убран отовсюду — установка не читает файл с переменными AndreyandClaude Opus 5 2026-09-08 17:22:29 +03:00
  • 03914fba09 ⚡ perf(conversations): расшифровка ждёт провайдера без транзакции AndreyandClaude Opus 5 2026-09-08 13:58:39 +03:00
  • 3659ce564a 🔒 fix(calls): сокет сигналинга не ждёт аутентификации вечно AndreyandClaude Opus 5 2026-09-08 13:58:39 +03:00
  • 037be19786 ⚡ perf(identity): перебор только живых сессий, воркер чистит просроченные AndreyandClaude Opus 5 2026-09-08 13:58:20 +03:00
  • 642c49bc4a 🔒 fix(support): файлы статей — inline только картинки, тип не от клиента AndreyandClaude Opus 5 2026-09-08 13:58:20 +03:00
  • 9606be8bc9 🔒 fix(identity): код TOTP принимается один раз AndreyandClaude Opus 5 2026-09-08 13:58:02 +03:00
  • 936ddf38dd 🔒 fix(deploy): заголовки безопасности возвращены в location nginx AndreyandClaude Opus 5 2026-09-08 13:57:50 +03:00
  • 28909f6951 🐛 fix(events): X-Correlation-Id из запроса больше не валит запись аудита AndreyandClaude Opus 5 2026-09-08 13:57:50 +03:00
  • 64f94756a7 🔒 fix(http): по TLS сильнее защищённое имя cookie, Vary не затирается AndreyandClaude Opus 5 2026-09-08 13:57:38 +03:00
  • cbb16e3862 🔒 fix(integrations): исходящие только по http/https и мимо внутренней сети AndreyandClaude Opus 5 2026-09-08 13:57:27 +03:00
  • 6f422ac67c 🔒 fix(webchat): виджет открыт миру — origin по заголовкам, лимиты, срок сессии AndreyandClaude Opus 5 2026-09-08 13:57:10 +03:00
  • a9139c5c66 💄 fix(agents): «Выключить агента» и «Удалить» — в меню карточки AndreyandClaude Opus 5 2026-09-08 03:15:47 +03:00
  • cd11232fd6 💄 fix(agents): поля инструкций — семь строк, правила десять AndreyandClaude Opus 5 2026-09-08 03:11:49 +03:00
  • 96615877bf 💄 fix(agents): поля инструкций выше — правила пишут абзацами AndreyandClaude Opus 5 2026-09-08 03:08:43 +03:00
  • d1f3c73de9 💄 fix(contacts): правка карточки — поля стандарта форм в две колонки AndreyandClaude Opus 5 2026-09-08 03:04:48 +03:00
  • eb5b00b8f7 💄 fix(ui): стрелки «назад» и «вперёд» — свои глифы вместо поворота шеврона AndreyandClaude Opus 5 2026-09-08 02:55:28 +03:00
  • 98ba6fcf1e 💄 fix(contacts): карточка контакта — счётчики вкладок, служебные коды и левый шеврон AndreyandClaude Opus 5 2026-09-08 02:49:23 +03:00
  • 5a73f7ebb9 ✨ feat(ui): появление содержимого во всех разделах, а не только в Чате AndreyandClaude Opus 5 2026-09-08 02:20:24 +03:00
  • 082b6f7ae5 🔧 chore(migrations): состояние conversations догоняет модель — MessageKind.FILE AndreyandClaude Opus 5 2026-09-08 02:10:05 +03:00
  • 324198d6df 💄 fix(notifications): шторка слипалась — ритм списка и интерлиньяж AndreyandClaude Opus 5 2026-09-08 02:04:16 +03:00
  • c512d5a0f5 ✅ test(audit): все три списка фильтров проверяются на повторы AndreyandClaude Opus 5 2026-09-08 02:04:03 +03:00
  • 1696e1e8fe 🐛 fix(audit): сотрудник в фильтре журнала дублировался по числу его действий AndreyandClaude Opus 5 2026-09-08 01:56:29 +03:00
  • d662340d4b ✨ feat(audit): фильтры, страницы и читаемые события в журнале действий AndreyandClaude Opus 5 2026-09-08 01:49:31 +03:00
  • d204965427 💄 fix(profile): страница по центру в общем ритме 1220px AndreyandClaude Opus 5 2026-09-08 01:49:04 +03:00
  • 630f0d90ca 💄 fix(settings): одна ширина на все разделы и по центру области AndreyandClaude Opus 5 2026-09-08 01:26:00 +03:00
  • eaee6a9f7b 💄 refactor(settings): раздел «Платформа» — настройки инсталляции вон из «Организации» AndreyandClaude Opus 5 2026-09-08 01:18:39 +03:00
  • 146052916b 🔥 refactor: снос сущности Product и авторизованного in-product чата (ADR-HUB-0045) AndreyandClaude Opus 5 2026-09-08 00:39:12 +03:00
  • 41a4b0dd84 ✨ feat: запуск без .env — всё настраивается в UI, и порталы по дизайну Andrey 2026-09-07 20:37:37 +03:00
  • 3672463363 ✨ feat(ui): Агенты и Сотрудники по дизайн-базлайну v2, общий поиск и фильтр списков AndreyandClaude Opus 5 2026-09-06 18:57:17 +03:00
  • 1a86906829 💄 feat(portals): тема Ocean со своим шрифтом Nunito AndreyandClaude Opus 5 2026-09-06 17:45:45 +03:00
  • 9fdcf88771 ✨ feat(portals): визуальные темы порталов — каталог тем и выбор в настройках AndreyandClaude Opus 5 2026-09-06 17:16:38 +03:00
  • 8a8486b676 💄 fix(ui): порталы и знания в формате нового чата AndreyandClaude Fable 5.1 2026-09-06 04:02:06 +03:00
  • 04bf264176 ✨ feat(ui): контакты в формате чата — фото, описание, компания, город, правка; маршруты /contacts и /portals AndreyandClaude Fable 5.1 2026-09-06 03:52:55 +03:00
  • 715e6a3f04 💄 feat(ui): «Порталы» с иконкой глобуса, загрузчик-логотип вместо «Загрузка…» AndreyandClaude Fable 5.1 2026-09-06 03:41:06 +03:00
  • a4c67dcff6 💄 fix(ui): попап фото заново, бар пользователя без роли, вкладки списка без вертикального скролла AndreyandClaude Fable 5.1 2026-09-06 03:26:11 +03:00
  • 222b0762b6 💄 feat(ui): модель расшифровки в AI-провайдере, композер до 7 строк, попап фото, анимация смены диалога, ширины панелей AndreyandClaude Fable 5.1 2026-09-06 03:18:38 +03:00
  • 2bfe69c80a ✨ feat(chat): AI отвечает на голосовые по стенограмме, голосовые и файлы в портале поддержки, настройка «Голосовые и звонки» AndreyandClaude Fable 5.1 2026-09-06 02:50:32 +03:00
  • 9874f0013e ✨ feat(chat): голосовые во всех каналах — почта вложением, перехват диалога как у текста, TG-аудио/видео файлами AndreyandClaude Fable 5.1 2026-09-06 02:15:13 +03:00
  • 5be03dd993 ✨ feat(chat): файлы и фото в диалоге — «Прикрепить» в композере, приём из TG/MAX/почты/виджета AndreyandClaude Fable 5.1 2026-09-06 02:04:45 +03:00
  • a834328e7d ✨ feat(storage): хранилище файлов — локальный диск по умолчанию, внешнее S3 из «Настроек» AndreyandClaude Fable 5.1 2026-09-06 01:19:27 +03:00
  • b57bbc30a6 🚚 chore: папка макетов — Chatballs Baseline v2 AndreyandClaude Fable 5.1 2026-09-06 00:47:45 +03:00
  • 0a8fde42cd 🧹 docs: без вендора — README и ссылки на документы; удалён контент агентов вендора (content/) AndreyandClaude Fable 5.1 2026-09-06 00:45:49 +03:00
  • ed4393d22a 🧹 test: фикстуры без имён вендора и его продуктов (Acme, example.com) AndreyandClaude Fable 5.1 2026-09-06 00:39:24 +03:00
  • a891947016 🧹 chore!: продукт без привязок к вендору — домены, почта, продукты, скоупы, события виджета AndreyandClaude Fable 5.1 2026-09-06 00:33:22 +03:00