О платформе
Sales Platform — единая площадка продаж: воронка, сделки, клиенты, документы и финансы.
Система заменяет разрозненные папки Total Commander единой базой данных с веб-интерфейсом
и API для ИИ-агентов. Единственная цель платформы — больше зарабатывать.
Платформа создана на базе Marketing Platform в рамках DOS (Алексей Гапеев).
Включает мультиаккаунтную аутентификацию (как Google), управление пользователями,
кастомизацию темы и API для интеграций.
Разработка ведётся с 2026 года. Текущий стек:
Laravel 13.22.0 + Blade + MariaDB 10.6.
Информация о системе
Версия платформы
v0.54.0
Версия PHP
8.4.27
Стек
Laravel 13.22.0 + Blade
База данных
MariaDB 10.6 / 10.11
Авторизация
Bcrypt + Сессии + Known Accounts
Сервер
VDS 185.66.68.122 · Ubuntu 22.04
Полезные ссылки
История версий
v0.54.0
30.09.2026
MINOR
-
•
Система касаний «повод вместо таймера» (Задание 148): квалифицированному клиенту больше нельзя предлагать «напомнить о себе» только потому, что он молчит. Касание разрешено по ПОВОДУ — новый кейс под ниши клиента, который ему ещё не отправляли, — и по ЖИВОМУ каналу. Нет повода — система молчит осознанно и объясняет почему, без кнопки напоминания
-
•
Справочник ниш (таблица niches, связь lead_niche) — у лида их несколько, и без них система не знает, какие кейсы ему показывать; состояние no_niches помечает это как единственный блокер. Кейсы вносятся вручную в платформу (cases, case_niche, lead_case), повторно уже отправленный кейс поводом не считается
-
•
Здоровье канала по реальному отклику за 90 дней: касание считается ОДНИМ исходящим днём по каналу из трёх источников (Message.sent_at, follow-up sent_at, Communication.outbound_at) — дубли одного касания больше не выдают канал за исчерпанный. 2 касания без ответа — канал не работает (channel_dead, писать в него нельзя), есть ответы — weak или working, при неработающем канале показываются запасные контакты
-
•
Ритм: для квалифицированных и тёплых лидов пауза 30 дней после касания с ценностью вместо старого правила «3 дня тишины»; для новых и квалифицирующихся старое правило сохранено. Новые состояния: awaiting_value (ждём повода), value_ready (можно касаться), channel_weak, channel_dead, no_niches, nurture (работаем с клиентом)
-
•
Новые страницы «Система касаний» (/sales/touch-plan) и «Касания» по лиду (/sales/leads/{id}/touch-plan): каналы с вердиктом, выбор ниш, пул доступных кейсов, отметка «Отправлен клиенту» и возврат кейса в поводы. Уведомления lead_attention больше не приходят, когда повода нет
-
•
Исправлены тупиковые кнопки на странице лида: вместо href="#" кнопка действия ведёт к форме ниш или к созданию сообщения; сидер ниш и кейсов идемпотентен — повторный запуск не помечает будущие кейсы как использованные
-
•
Версия платформы поднята до 0.54.0 (config + cache-buster + changelog /about + changelog.md + README + тесты)
v0.53.2
30.09.2026
PATCH
-
•
«Рабочий стол» — обычный пункт меню (Задание 147, по обратной связи): у пункта в боковом меню был отдельный модификатор с постоянной рамкой, заливкой и жирным начертанием, из-за чего он читался как системное сообщение, а не как пункт меню. Модификатор удалён из разметки и из общих стилей — теперь пункт оформлен как остальные и отличается только подсветкой текущей страницы
-
•
Версия платформы поднята до 0.53.2 (config + cache-buster + changelog /about + changelog.md + README + тесты)
v0.53.1
30.09.2026
PATCH
-
•
Минимальный шрифт платформы — 14px (Задание 147, продолжение): по методике «02 Правила разработки» (мета-правило 6) в views и css нет font-size меньше 14px. Поднято 142 локальных значения (11–13px) в 24 файлах разметки, в том числе метка уведомления лида, которая печаталась шрифтом 11px. Причина разнобоя — локальные хардкод-override’ы в blade: в public/css/app.css пол уже 14px, поэтому дизайн-система выглядела исправной, а отдельные блоки её обходили
-
•
Вёрстка не поехала: точечно подправлены 16 мест, где рост шрифта мог вызвать переполнение — длинные метки уведомлений переносятся вместо выхода за карточку на мобильном, круги шагов 30→32 и 20→22px, колонки с процентами расширены (min-width 40→46 и 34→42px), паддинги бейджей подогнаны под новый кегль
-
•
Пол 14px защищён тестом MinimumFontSizeTest (скан исходников + сквозная проверка отрендеренной страницы /notifications, регрессия поймана на намеренной проверке); единственное исключение сканера — сгенерированный бандл Tailwind в заглушке welcome.blade.php
-
•
Исправлен баг cache-buster: в layouts/app.blade.php ссылки на стили и скрипт были захардкожены (?v=0.52.1) и не двигались с версией — с 0.52.1 браузер мог отдавать старые CSS и JS из кэша под тем же URL. Теперь URL собирается из config(platform.version)
-
•
Версия платформы поднята до 0.53.1 (config + cache-buster + changelog /about + changelog.md + README + тесты)
v0.53.0
29.09.2026
MINOR
-
•
Уведомление о лиде по машине состояний (Задание 147): одно уведомление lead_attention_{id} вместо двух безусловных сборщиков; состояние берётся из Lead::pathState() — ждёт ответа (красный), первое касание (синий/жёлтый/красный по часам), пора напомнить (жёлтый), ждём клиента (зелёный, без уведомления); свежий лид младше 12 ч не тревожит, архивные, потерянные и конвертированные исключены, отбор идёт до ограничения по количеству
-
•
Подсказка и действия в карточке уведомления: hint и кнопки «Работать» + «Отпустить (в архив)»; те же действия в выпадающем списке колокольчика, архив — POST /sales/leads/{id}/archive с CSRF и подтверждением
-
•
Палитра и контраст: App\Support\Palette (text(), decor()) — 48 цветовых методов в 23 моделях переведены на токены public/css/app.css, добавлены токены для тёмной темы; убраны 39 запрещённых тонов из 22 файлов разметки; статусные шкалы (сделки, договоры, счета) больше не схлопываются — тест PaletteContrastTest
-
•
Версия платформы поднята до 0.53.0 (config + cache-buster + changelog /about + changelog.md + README + тесты)
v0.52.1
29.09.2026
PATCH
-
•
Направления и проекты — с платформы задач (Задание 145): со страниц «Направления» (/directions) и «Проекты» (/projects) убраны кнопки «+ Создать направление» и «+ Создать проект» — направления и проекты заводятся на платформе задач (task.ipd.test) и приходят в отдел продаж синхронизацией. Вместо кнопок создания — «Синхронизация с платформой задач» («Получить данные», POST /sales/projects/sync) и баннер «Данные с платформы задач» с временем обновления (автосинк 09:35); на странице направлений — пояснение экосистемы (Маркетинг — отдельная инфраструктура, Интерактивные поставки — услуга студии, Видеопроизводство — направление не ведётся); у карточек направлений убрано меню редактирования/удаления (администрации направлений на платформе нет)
-
•
Версия платформы поднята до 0.52.1 (config + cache-buster + changelog /about + changelog.md + README + тесты)
v0.52.0
28.09.2026
MINOR
-
•
Формы редактирования компаний и людей — во вкладках (Задание 144): компания — «Основная информация», «Сегмент и направление», «Контакты», «Реквизиты», «Total Commander», «Заметки и ИИ», «Данные и история»; человек — «Основные данные», «Роль и профиль», «Контакты и каналы», «Общение», «Заметки и ИИ», «Данные и история». Вкладка «Данные и история» (только у существующих записей) показывает статистику, сделки (демо-сделки с бейджем и не входят в цифры) и историю изменений из ActivityLog
-
•
Стиль вкладок — как у карточки проекта на task.ipd.test (pet-card/pet-tabs, общие partial edit_tabs_css/edit_tabs_js), работает диплинк по #таб; данные сохраняются одной кнопкой в липком футере — все вкладки одна форма; методология продаж поведена к 1.0.8 (правило 19 «Вкладки»), общие данные — к v1.8.1
-
•
Версия платформы поднята до 0.52.0 (config + cache-buster + changelog /about + changelog.md + README + тесты)
v0.51.0
28.09.2026
MINOR
-
•
«Перевести в лида» на карточке клиента (Задание 143, по обратной связи Алексея: любой клиент — это тот, кто платил, а не записавшийся в клиенты). Если по записи в разделе «Клиенты» не было оплат — это пока лид на раннем этапе воронки. В карточке клиента (кнопка-подсказка «Это клиент или лид? Оплат не зафиксировано» + пункт в меню действий «Перевести в лида») запись переводится в раздел «Лиды»: существующий конвертированный лид возвращается в активные (статус «Квалифицирован», отвязывается от клиента), либо создаётся новый лид из данных клиента (компания, контактное лицо, реквизиты, канал). Компания помечается «Потенциальной», данные не теряются
-
•
Клиенты со статусом «Потенциальный» не считаются настоящими клиентами: механизм «человек одновременно и в лидах, и в клиентах» больше не предлагает перенести таких людей в раздел клиентов (клиент — тот, кто платил, Задание 143)
-
•
Действие логируется в ActivityLog (действие moved_to_lead, подпись «Переведён в лида») и отправляет уведомление SalesEvent «Лид возвращён из клиентов / Новый лид из клиента»; версия платформы поднята до 0.51.0 (config + cache-buster + changelog /about + changelog.md + README + тесты)
v0.49.4
28.09.2026
PATCH
-
•
Время и цвет дедлайна (Задание 141, по обратной связи Алексея): сколько осталось до дедлайна и сам дедлайн (дата/время) теперь цветные по светофору — 🟢 зелёный «вписываемся в срок» (normal, осталось больше суток), 🟡 янтарный «дедлайн скоро» (warning), 🔴 красный «горит/просрочено» (critical/overdue); чёрный/серый — дедлайна нет. Цвет идёт по «пути времени»: чип остатка времени в шапке карточки задачи (hero-chip--green/--amber/--red по deadlineColor, метод TaskPlatformTask::deadlineColor), значение дедлайна в мете карточки (task-meta-tile__value--green/--amber/--red) и в списке задач (tk-chip--green у «Осталось X дн», tk-meta-item--green)
-
•
Исправлено дублирование «осталось Осталось 5:45» на карточке задачи: блок «Дедлайн горит» строит текст из deadlineCountdownLabel («Осталось 5:45») без лишнего префикса «осталось»
-
•
Само время в тексте-решении подсвечено цветом: цифры счётчика «4:42» в блоке «Что сделать» выделены жирным и цветом светофора (task-urgent__count) — красным при «Дедлайн горит»/«Задача просрочена», янтарным при «Дедлайн скоро»; в текст просроченной задачи добавлен счётчик «Просрочена на 2:10»
-
•
Методологии «03 Стиль интерфейса», «04 Темы и дизайн» + README v1.0.6 дополнены правилом «светофор времени: зелёный — вписываемся, жёлтый — скоро, красный — горит, серый — нет дедлайна»; версия платформы поднята до 0.49.4 (config + cache-buster + changelog /about + changelog.md + README + тесты)
v0.49.3
28.09.2026
PATCH
-
•
Кнопки-решения в разделе задач — серые контрастные, а не красные (Задание 140, по обратной связи Алексея): «К шагам — N осталось» и «Отметить выполненной» на карточке задачи, а также «К шагам»/«Разобрать»/«Решить задачу по продажам» в списке задач теперь всегда серые (btn--primary / btn--hero), красный остался только текстом проблемы — на чипе дедлайна и в блоке «Задача просрочена»
-
•
«Добавить шаг» — отдельная страница /sales/tasks/{task}/steps/create (редкий функционал): с карточки задачи инлайн-форма убрана, вместо неё — серая неконтрастная кнопка-ссылка; на странице те же поля (название, комментарий), POST идёт на существующий /sales/tasks/{task}/steps
-
•
Бейдж «с платформы задач» у шагов импортированных с платформы стал нейтральным серым (chip), а не синим; цвет — только текст проблемы
-
•
Методологии «02 Правила разработки», «03 Стиль интерфейса», «04 Темы и дизайн» + README v1.0.5 дополнены правилом «кнопка-решение — контрастная серая, красный — текст проблемы, сначала текст потом кнопка»; версия платформы поднята до 0.49.3 (config + cache-buster + changelog /about + changelog.md + README + тесты)
v0.49.2
27.09.2026
PATCH
-
•
Правка лида «Услуга» (Задание 138, по обратной связи Алексея): у лида 7 «Егор Савинский» была указана услуга «amoCRM», хотя клиент этой услугой не пользуется. Поле «Услуга» в карточке лида стало кликабельным и ведёт на отдельную страницу /sales/leads/{lead}/service — там видно, что это за услуга (название и описание из справочника услуг), и её можно выбрать из списка услуг
-
•
Единый справочник услуг App\Support\Services: 15 услуг студии с названием и описанием (три продукта, линейка L1–L4, видео, SEO, CRM и др.); значение хранится в leads.desired_service как название услуги, на странице услуги — select из справочника с сохранением текущего значения (если оно не из списка — подсказка выбрать корректную услугу); в большой форме лида у поля «Интересующая услуга» список-подсказка (datalist)
-
•
Действия логируются в ActivityLog (услуга обновлена, действие desired_service_updated с подписью «Услуга обновлена»); версия платформы поднята до 0.49.2 (config + cache-buster + changelog /about + changelog.md + README + тесты)
v0.49.1
27.09.2026
PATCH
-
•
На странице сравнения синхронизации /sales/tasks/sync/preview у каждой задачи из блока «Конфликты правок» добавлены две ссылки: «Где данные на платформе задач» (открывает задачу на task.ipd.test, первоисточник, target=_blank) и «Карточка в продажах» (открывает задачу в разделе «Планировка задач» sales.ipd.test) — чтобы зрительно найти, где спряталась проблема (например, задача или проект уже завершены на платформе задач, а в продажах осталась старая правка с перенесённым дедлайном)
-
•
Пояснение блока «Конфликты правок» дополнено: чаще всего проблема прячется в том, что задача/проект уже завершена на платформе задач, а в продажах осталась старая ручная правка (красное поле). Открытая подсказка у каждой задачи: «Проблема прячется в одном из этих полей… откройте обе ссылки и сверьте глазами»
-
•
Методология «03 Стиль интерфейса» (правила ссылок) и README (раздел «Синхронизация с платформой задач») дополнены: на странице сравнения у конфликтов показываются две ссылки — на первоисточник (платформа задач) и на карточку продаж; версия платформы поднята до 0.49.1 (config + cache-buster + changelog /about + changelog.md + README + тесты)
v0.49.0
26.09.2026
MINOR
-
•
Путь пользователя в разделе задач (Задание 136): убрана кнопка-заглушка «Открыть карточку» — открытие карточки делает название (имя задачи — ссылка на карточку)
-
•
Дедлайн наверху: у карточки с активным дедлайном первым в шапке — чип остатка времени (tk-chip--red при overdue/critical, tk-chip--amber при warning, текст «Осталось 2 дн 23 ч» / «Осталось 6:19»); строка дедлайна в мете красится tk-meta-item--red/tk-meta-item--amber
-
•
Задачи с ближайшими дедлайнами собраны наверх страницы блоком «Сроки подходят — решите задачу» (чип остатка времени + название-ссылка + кнопка-действие) — красная и янтарная зоны видны с одного взгляда
-
•
Кнопка в футере карточки появляется только когда есть действие: «К шагам — N осталось» (btn--danger при overdue/critical, btn--primary при warning) или «Решить задачу по продажам» (btn--danger, просрочено и шагов нет); сделано / спокойный дедлайн — кнопки нет
-
•
Методологии «02 Правила разработки», «03 Стиль интерфейса», «04 Темы и дизайн» + README v1.0.2 дополнены правилом «кнопка только с действием, дедлайн наверх» (правило 14); версия поднята до 0.49.0 (config + cache-buster + changelog /about + changelog.md + README + тесты)
-
•
Сайт в «сильный серый» (Задание 135, по обратной связи Алексея): весь сайт продаж приведён к нейтральной серо-бело-чёрной палитре — цветные заливки, подложки, «пузырьки» бейджей и пёстрые рамки заменены серым чипом (--color-chip-bg) с цветным текстом
-
•
Правило: цвет — только текст. Красный/зелёный/янтарный остаются как сигнал текстом на нейтральном чипе; любой цветовой сигнал обязано сопровождать действие — малая кнопка-решение рядом (например, баннер «Требует внимания» и «Скоро срок» на /proactive/{id} получили кнопки «Отметить выполненным» и «Перенести» через POST /proactive/{rec}/done и /proactive/{rec}/postpone)
-
•
Зачищены все разделы: рабочий стол, проекты, задачи, лиды (статус/вердикт/сегмент-фильтры, квалификация, переписка), клиенты и люди (аватары, роль- и психотип-бейджи), компании и воронка, доверие, финансы, направления, proactive-, communication- и notification-экраны, уведомления, API-ключи, настройки Total Commander
-
•
CSS: бейджи-тернарники, сигнальные чипы (.signal--red/yellow/green), алерты, тосты, чипы приоритетов, пузыри чата, стрелки схемы синхронизации, заливки прогресс-баров — нейтральные, цвет остался только текстом и сигнальной кромкой
-
•
Методологии «02 Правила разработки», «03 Стиль интерфейса», «04 Темы и дизайн» дополнены правилом «Серый — цвет платформы», закреплён реестр исключений (кнопки-решения опасных действий); версия платформы поднята до 0.48.0 (config + cache-buster + changelog /about + changelog.md + README + тесты)
v0.47.5
25.09.2026
MINOR
-
•
Синхронизация — наглядная и понятная (Задание 133, по обратной связи Алексея): блок «Конфликты правок» в шаге сравнения объясняет, что такое «локальная правка» (это ваша ручная правка полей прямо в разделе «Планировка задач» на прикладной платформе sales.ipd.test), откуда и куда идут данные
-
•
На странице сравнения появилась схема «Откуда и куда идут данные» (SVG с анимацией): платформа задач → продажи (sales.ipd.test). Зелёная стрелка «Запишется» (новые задачи, начало, дедлайн, статус, прогресс, горизонт) с бегущей точкой; красная стрелка с крестом «Не запишется» — поля, изменённые вручную, остаются вашими
-
•
В diff-строках указано направление: зелёные «сейчас → с платформы задач» со штампом «запишется»; красные «в продажах ≠ на платформе задач» со штампом «не запишется · останется ваша правка» (убрано зачёркивание, которое путало)
-
•
Перед кнопкой «Синхронизировать выбранные» — вердикт «Что произойдёт после нажатия»: новые задачи добавятся, зелёные поля обновятся с платформы задач, красные останутся вашими, отмеченные устаревшие удалятся; в подсказке указано направление синхронизации
-
•
Версия платформы поднята до 0.47.5 (config + cache-buster + changelog /about + changelog.md + README + тесты)
v0.47.4
25.09.2026
MINOR
-
•
Сайт в нейтральных цветах (Задание 132, по обратной связи Алексея): фон оформления больше не красится в синий — платформа серо-бело-чёрная, современный серый. Синий (--color-primary) остался только у ссылок
-
•
Шапка карточки задачи и проекта (task-hero / pj-hero) — нейтральный серый градиент вместо синего; чипы, код-бейдж и кнопки героя — в серой гамме, текст читаемый в светлой и тёмной теме
-
•
Кнопки и активные элементы по всей платформе переведены на нейтральный слот (--color-btn-bg/--color-btn-ink): btn--primary, активные табы/фильтры, переключатели, аватары; фокус-рамки — --color-border-strong
-
•
Одна целевая кнопка на странице, и она заметная: при красном сигнале срочности на карточке задачи красные кнопки-решения «К шагам — N осталось» и «Отметить выполненной» (правило 12: красный всегда ведёт к действию)
-
•
Цветными остались только маленькие акценты: светофор-статусы, статус-чипы, дедлайн-счётчики, графики воронки; методологии «03 Стиль интерфейса» и «04 Темы и дизайн» дополнены правилом нейтральной палитры
-
•
Версия платформы поднята до 0.47.4 (config + cache-buster + changelog /about + changelog.md + README + тесты)
v0.47.3
25.09.2026
MINOR
-
•
Красный — только на дедлайн, фон нейтральный (по обратной связи Алексея, Задание 131): шапка карточки задачи больше не заливается красным/янтарным цветом, а сигналом становится сам счётчик дедлайна — чип «Осталось 0:26» / «Просрочена на …» в шапке окрашивается в красный (янтарный — меньше 24 ч), текст виден на спокойном фоне, легко принять решение
-
•
Блок-решение предлагает действие: «Что сделать: …» — что именно сделать (пройти шаги ниже, закрыть задачу), с кнопками «К шагам — N осталось» и «Проверить дедлайн»
-
•
Версия платформы поднята до 0.47.3 (config + cache-buster + changelog /about + changelog.md + README + тесты)
v0.47.2
25.09.2026
MINOR
-
•
Светофор дедлайнов на карточке задачи (Задание 130): шапка подсвечивается по состоянию срока — красный (просрочена или менее 8 часов), янтарный (менее 24 часов), зелёный (выполнена)
-
•
Живой счётчик на карточке и в списке задач: «Осталось 4:15» / «Просрочена на 3:11» (больше суток — «осталось 2 дн 5 ч»), считается от дедлайна
-
•
Блок-решение «Задача просрочена» / «Дедлайн горит» / «Дедлайн скоро» с текстом и кнопками «К шагам — N осталось» (если есть незакрытые шаги) и «Проверить дедлайн», по правилу 12 методологии: красный дедлайн всегда с блоком-решением
-
•
Версия платформы поднята до 0.47.2 (config + cache-buster + changelog /about + changelog.md + README + тесты)
v0.47.1
25.09.2026
MINOR
-
•
Синхронизация одной задачи (Задание 129): на карточке задачи (/sales/tasks/{id}) добавлена кнопка «Синхронизировать» — тянет свежие данные именно этой задачи с платформы задач (поля, дедлайн, шаги), уважая локальные правки (local_edits), и показывает отчёт, что изменилось: дедлайн/начало/статус «было → стало», добавленные/обновлённые шаги, предупреждение, если локальная правка защищена от перезаписи (у вас «…», на платформе «…») — чтобы было понятно, где ошибка прячется: дедлайн такой на самом деле или данные не обновились
-
•
На карточке задачи добавлен чип-ссылка «Открыть на платформе задач»: ведёт прямо на страницу задачи на task.ipd.test (первоисточник, target=_blank), чтобы можно было сослаться на задачу на платформе одним кликом
-
•
Версия платформы поднята до 0.47.1 (config + cache-buster + changelog /about + changelog.md + README + тесты)
v0.47.0
25.09.2026
MINOR
-
•
Баннер свежести данных с платформы задач на рабочем столе (Задание 128): блок «Данные с платформы задач» показывает время последней синхронизации (task_platform_tasks_last_synced_at) и кнопку «Получить данные» (ведёт в мастер /sales/tasks/sync)
-
•
Порог свежести 1 час: пока данные получены в течение последнего часа — блок зелёный «данные актуальны» (кнопка серая btn--ghost); прошёл час и больше — янтарный «данные устарели» (кнопка синяя btn--primary) с подсказкой, что воронка, «Требуют внимания» и план могут быть неактуальны, если задачи меняли на task.ipd.test
-
•
Методология разработки платформы Продажи (R:\DOS\07 Разработчик 2\Продажи\Методология разработки платформы\) — папка по образцу Production и Бобёра Боба: README (правила 1–12), 01 Среда и команды, 02 Правила разработки, 03 Стиль интерфейса, 04 Темы и дизайн, Рабочий стол — диагностическая карта продаж
-
•
Версия платформы поднята до 0.47.0 (config + cache-buster + changelog /about + changelog.md + README + тесты)
v0.46.0
25.09.2026
MINOR
-
•
Корзина счетов компании (Задание 126): неоплаченные счета компании (статусы issued/unpaid) можно убирать в корзину — плашка «Счёт №... не оплачен» гаснет, а сам счёт мягко удаляется (данные и суммы сохраняются), причина, дата и автор удаления логируются
-
•
Механика — soft-delete счёта: колонки company_invoices.trashed_at + trash_reason, методы CompanyInvoice::trash()/restoreFromTrash()/isTrashed(), реестр и плашки фильтруются по whereNull(trashed_at); кнопка «В корзину» (с причиной) на строке счёта, блок «Корзина» на /company/invoices с возможностью восстановить счёт и увидеть, когда он был выставлен (issue_date)
-
•
Логирование: перенос в корзину и восстановление фиксируются в ActivityLog (сущность CompanyInvoice, действия trashed/restored, причина)
-
•
Версия платформы поднята до 0.46.0 (config + cache-buster + changelog /about + changelog.md + README + тесты)
v0.45.1
25.09.2026
MINOR
-
•
Экосистема «Сетка касаний ⇄ Факт» (Задание 125): фактическое исходящее касание — сообщение с direction=outgoing, status=sent и sent_at — автоматически закрывает ровно один открытый follow-up цели (сетки касаний), если его срок (due_at) уже пришёл
-
•
Закрытие считает только «созревшие» цели: follow-up со status=pending, без sent_at и с due_at <= времени касания; одно касание = один follow-up (повторный вызов идемпотентен, касание не «накапливает» несколько закрытий)
-
•
Механика подключена в MessageController::store (карточка лида → добавление касания), CommunicationController::storeReply (ответ в раунде) и LeadController::show (ретро-синхронизация существующих фактических касаний)
-
•
Статус follow-up становится done с проставлением sent_at/sent_channel из фактического касания; синхронизация с раундом коммуникации (FollowUpCommunicationSync) сохранена, activity-log не пишется (сервис идемпотентен)
-
•
Версия платформы поднята до 0.45.1 (config + cache-buster + changelog /about + changelog.md + README + тесты)
v0.45.0
24.09.2026
MINOR
-
•
Лиды в архив (Задание 124): в меню добавлен раздел «Архив» /sales/leads/archive — отдельные карточки архивных лидов с именем, статусом, датой архивации и причиной, кнопка «Вернуть из архива», inline-форма смены причины
-
•
Кебаб-меню лида: «В архив» (POST /sales/leads/{id}/archive) спрашивает причину, «Вернуть из архива» (POST /sales/leads/{id}/restore); архивация закрывает открытые напоминания лида; на карточке архивного лида — жёлтый баннер с причиной и кнопкой возврата
-
•
Механика — смена «статуса не используется»: добавлены колонки leads.archived_at + leads.archive_note, статусы лидов остаются нетронутыми; скоупы Lead::archived()/active(), методы archive()/restoreFromArchive()/updateArchiveNote()
-
•
Архивные лиды исключены из активных списков, воронки продаж, напоминаний (включая счётчики и рассылку по просроченным), статистики квалификации, дашборда, систем коммуникаций и уведомлений, сервисов Proactive и People relations
-
•
Версия платформы поднята до 0.45.0 (config + cache-buster + changelog /about + тесты + README)
v0.44.0
23.09.2026
MINOR
-
•
Люди ↔ лиды ↔ клиенты (Задание 120): один человек не может быть одновременно лидом и клиентом — система находит «двойников» и подсказывает на странице лидов «Смотрите, N человек находятся и в лидах, и в клиентах — перенести в раздел клиентов?»
-
•
Кнопка «Да, перенести» (POST /sales/leads/{id}/move-to-client): лид привязывается к найденному клиенту (client_id) и помечается «Конвертирован» без создания новой сделки — методология «путь клиента» (лид → купил → клиент → повторные покупки), без квалификации на платформе продаж (ею занимается отдел маркетинга)
-
•
Автодообновление: лиды с client_id, но ещё не переведённые в «Конвертирован», приводятся в соответствие при расчёте подсказки (ActivityLog auto_converted)
-
•
Поиск двойника по приоритету: явная привязка → люди клиентов (email/телефон/ФИО по набору слов) → компании (реквизиты/контактное лицо/название)
-
•
Новый раздел «Люди» /sales/people в левом меню — единый реестр людей продаж: люди компаний + контактные лица активных лидов + ответственные на проектах платформы задач, у каждого пометки роли (клиент/лид/платформа задач) и признак двойника
-
•
Сервис App\Services\PeopleRelationsService: duplicateLeads, findClientForLead, moveLeadToClient, autoConvertAttachedLeads, registry; события ActivityLog (moved_to_client/auto_converted) и SalesEvent (converted)
-
•
Методология 09 «Люди лиды клиенты» (R:\DOS\07 Разработчик 2\Продажи\); версия платформы поднята до 0.44.0 (config + cache-buster + changelog /about + тесты + README)
v0.43.0
23.09.2026
MINOR
-
•
Визуальный обходчик синхронизации в 4 шага (Задание 120): на странице «Получить данные с платформы задач» и «Отправить данные на платформу задач» — степпер-линия Прочесть данные → Сравнение → Синхронизация → Отчёт с цветовыми статусами шагов (розовый чек — выполнен, синий — идёт, серый — будущий, красный — ошибка)
-
•
Прогресс-линия и бегущие проценты при нажатии «Запустить синхронизацию»/«Отправить выбранные»: панель «циферки бегут, процент бежит», затем система применяет выбранные изменения и открывает отчёт
-
•
Предварительная проверка перед запуском (зелёный/жёлтый/красный): интеграция (API-ключ), локальная копия задач, локальные проекты направления «Продажи», возраст последнего снимка с платформы
-
•
Шаг сравнения: блок «Что прибавится в отделе продаж» — новые проекты и люди направления «Продажи» чипами; смерд-статусы карточек сводки (будет добавлено/конфликтов/исчезло)
-
•
Страницы-отчёты: зелёный баннер завершения, степпер со всеми четырьмя выполненными шагами, обратные ссылки «отправить на платформу задач» / «получить данные» (двусторонний механизм)
-
•
Исправлена ошибка «Call to a member function format() on string» при применении синхронизации: даты снимка платформы приходят строкой — приведение через toDateString
-
•
Версия платформы поднята до 0.43.0 (config + cache-buster + changelog /about + тесты + README)
v0.42.0
23.09.2026
MINOR
-
•
Человекочитаемое время «как давно» вместо сырого float (Задание 119): страницы каналов и системы коммуникаций/уведомлений, сводки, карточки и строки каналов — «12 часов назад», «1 день 4 часа назад» вместо «0.50650413347222 дн. назад». CommunicationNorms::humanizeAgo + humanNumber; версия 0.42.0
v0.41.1
22.09.2026
PATCH
-
•
Каналы переписки в «Системе коммуникаций» (Задание 118): четыре канала — Переписка в Telegram / Электронная переписка / Переписка в WhatsApp / Переписка в Viber с нормой «раз в неделю» (7 дней) под ключами correspondence_telegram|email|whatsapp|viber — без коллизии с каналами уведомлений (своя периодичность, свои доказательства в TC-подпапке «01 Переписка\…»)
-
•
История канала переписки объединяет Message.sent_at (любое направление) и Communication.outbound_at по базовому каналу; разделы /sales/leads/{id}/communications-system/correspondence_* с записью касания, «Открыть переписку» (центр сообщений) и «Написать в …»
-
•
Статус коммуникаций видит переписку: просроченная переписка по лиду 16 «МедРГ» (Telegram 22.09) учтена; периодичность переписки необязательна и не «гасит» незаполненные встречу/Zoom/созвон
-
•
Для лида 16 в CRM зафиксированы два касания Telegram 22.09 (исходящее напоминание 10:30 + ответ Александра 10:33); канон — в базе знаний продаж
-
•
Версия платформы поднята до 0.41.1 (config + cache-buster + changelog /about + тест + README)
v0.41.0
22.09.2026
MINOR
-
•
Разделы каналов двух систем сопровождения (Задание 117)
-
•
Система коммуникаций — 3 раздела каналов: /sales/leads/{id}/communications-system/{meeting|zoom|call} — состояние по периодичности, вся история касаний канала, запланированное, доказательства и запись касания прямо из раздела
-
•
Система уведомлений — 6 разделов каналов: /sales/leads/{id}/notifications-system/{telegram|email|whatsapp|viber|social|sms} — вся история отправок канала (follow-up done, Message.sent_at, Communication.outbound_at), доказательства и запись отправки прямо из раздела
-
•
Строки каналов на карточке лида («Данные сопровождения») стали ссылками на свои разделы; «Открыть раздел» в карточках каналов на страницах систем
-
•
Запись касания/отправки из раздела: return_to=channel возвращает пользователя на страницу раздела, со страницы системы — к карточке канала (#channel-…)
-
•
Тесты LeadSystemsPageTest +6; версия платформы поднята до 0.41.0
v0.40.1
22.09.2026
PATCH
-
•
Сводка «Система уведомлений» на карточке лида считает реальные отправки (Задание 116): сервер больше не пишет «Не работает — нет отправок», когда клиенту фактически писали
-
•
Причина: сводка учитывала только напоминания follow-up со статусом done, а страница «Система уведомлений» дополнительно видела отправленные сообщения (Message.sent_at) и исходящие записи переписки (Communication.outbound_at) — карточка расходилась со страницей
-
•
LeadCommunicationStatus::lastNotificationTouch/lastNotificationPerChannel — единый источник по трём видам отправок; notificationState оценивает периодичность по каналу последней фактической отправки (не только по основному каналу)
-
•
Сводка «Система уведомлений» раскрывается по каналам (Telegram/Email/WhatsApp/Viber/Соцсети/SMS) — как уже раскрыта «Система коммуникаций» (встреча/Zoom/созвон): у карточки оба контура в едином виде
-
•
Кейс лида 16 «МедРГ»: отправки по email (22.09) теперь видны в сводке как «В порядке», а не «нет отправок»
-
•
Версия платформы поднята до 0.40.1
v0.40.0
22.09.2026
MINOR
-
•
«Основной канал общения» на карточке лида (Задание 115): канал, где реально идёт переписка/диалог с клиентом (Telegram/Viber/WhatsApp/Email/созвон), выставляется прямо на карточке в блоке «Каналы коммуникаций и уведомлений» и виден бейджем в шапке карточки
-
•
Отдельно от «системы уведомлений» (рассылка) и «системы коммуникаций» (живые касания): основой канал — то место, куда пишем клиенту и где ждём ответа; пример лида 16 «МедРГ» — КП ушло на email, а клиент пишет в Viber
-
•
Бейдж «основной канал не выбран» подсвечивает лиды без выставленного канала; на страницах notifications-system и communications-system — баннер с текущим основным каналом и ссылкой на изменение
-
•
POST /sales/leads/{lead}/main-channel (LeadSystemsController::updateMainChannel) — сохранение с валидацией по справочнику каналов и записью в ActivityLog
-
•
Версия платформы поднята до 0.40.0
v0.39.0
22.09.2026
MINOR
-
•
Осознанная двухсторонняя синхронизация с платформой задач (Задание 114): вместо мгновенной кнопки «Получить данные» — четыре отдельных шага: страница получения → сравнение (что изменится, конфликты правок красным) → подтверждение галочками → отчёт
-
•
Импорт (с платформы задач в продажи): новые/изменённые/удалённые задачи, конфликты с локальными правками (local_edits) не перезаписываются автоматически, защита от «потери» задач при резком уменьшении снимка платформы
-
•
Экспорт (из продаж на платформу задач): шаги верхнего уровня (новые создаются, изменённые обновляются), правки полей (название/начало/дедлайн/горизонт) и закрытие выполненных задач — через новые write-эндпоинты API платформы задач
-
•
API платформы задач (task.ipd) доработан: POST /api/v1/tasks/{taskId}/update, POST /api/v1/tasks/{taskId}/steps, POST /api/v1/steps/{stepId}/update — ключи на русском, ActivityLog, пересчёт прогресса
-
•
Старый мгновенный синк (POST /sales/tasks/sync) сохранён для обратной совместимости, но кнопка ведёт на осознанный путь
-
•
Версия платформы поднята до 0.39.0
v0.38.2
22.09.2026
PATCH
-
•
Исправлен переключатель «управление системой коммуникаций» на карточке лида (Задание 113): снятая галочка канала (например, WhatsApp) снова возвращалась после перезагрузки
-
•
Причина: галочка не передавала свою новое состояние — форма всегда отправляла «отписан = 0» из скрытого поля, поэтому выключение канала не сохранялось
-
•
Теперь галочка передаёт действительное состояние на канал (опен-аут включается снятием галочки, включается повторной установкой), скрытое поле — только запасное значение «отписан»
-
•
Переключатель стал интерактивным (AJAX): галочка сохраняет состояние без перезагрузки страницы, карточка меняет фон/подпись на месте, скролл не сбивается — удобно менять несколько каналов подряд
-
•
Версия платформы поднята до 0.38.2
v0.38.1
19.09.2026
PATCH
-
•
Исправлены «неправильные цифры» по срокам касаний (Задание 112): слово «молчит» считалось от последнего сообщения со статусом «Отправлено», а фактическая дата отправки — это заполненный sent_at, даже если сообщение помечено черновиком (пользователь вручную записал отправку письма из своей почты)
-
•
Единое правило для всех алгоритмов: факт касания = непустой sent_at (дата отправки), статус workflow на подсчёт дней не влияет — согласованы lastOutgoingTouch, нормы каналов (lastChannelActivityAt), «ждёт моего ответа» (awaitingMyReply), цикл доверия (TrustService) и счётчики почты
-
•
Версия платформы поднята до 0.38.1
v0.38.0
16.09.2026
MINOR
-
•
Компоновщик промтов для нейросети (Задание 110): на странице «Создать сообщение» появляется кнопка «Создать промт» — правильная архитектура подачи контекста нейросети из 5 ступеней: что это за продукт/платформа → кто я (продавец) → проект → человек (ЛПР: психотип, стиль, метод ответа) → ситуация (последний диалог)
-
•
Новый сервис PromptComposerService (app/Services) — единый промт одним markdown-файлом для одного сообщения нейросети + каскад из 5 отдельных ступеней (нейросеть принимает контекст частями по ходу диалога), копирование и скачивание каждой ступени
-
•
Данные для промта берутся из папки клиента в Total Commander — README (карта папки), 00 Статус и план, 01 Факты, КП, журнал переписки и последнее сообщение (04 Переписка) — с датами обновления файлов; если папки нет — только данные реестра платформы
-
•
Исправлено: продавец в контексте нейросети был «из Минска» — теперь актуальные реквизиты: ООО «Студия ИПД», г. Брест, ул. 2-ая Заводская, 9, УНП 291457456, сайт ipd.by
-
•
Панель промта — вторичные (ghost) кнопки, единственная синяя кнопка «Скопировать данные» шага 1 не тронута: путь «данные → ответ → отправка» работает как раньше
-
•
Версия платформы поднята до 0.38.0
v0.37.1
16.09.2026
PATCH
-
•
Создание сообщения (Задание 109): страница переработана в пошаговый «путь клиента» — «Данные для нейросети → Ответ нейросети → Отправка»
-
•
Степпер пути сверху: активный (синий), выполненный (зелёная галочка), будущий (серый); выполнили действие — появился следующий шаг
-
•
Одна синяя кнопка на активный шаг: «Скопировать данные» (шаг 1) → «Дальше: канал и время» (шаг 2) → «Отправлено» (шаг 3); шаги 2–3 скрыты до выполнения предыдущего
-
•
Поля канал/направление/дата/время отправки появляются только на шаге отправки — с пояснением «зачем» (нужно для учёта переписки); тема — только для email
-
•
Написана методология «Разработка» (R:\DOS\07 Разработчик 2\Продажи\Разработка\README.md) — одна целевая кнопка, шаги раскрываются, нужная информация в нужное время
-
•
Версия платформы поднята до 0.37.1
v0.37.0
16.09.2026
MINOR
-
•
Создание сообщения (Задание 108): полная переработка страницы /sales/leads/{id}/messages/create — система заранее собирает все данные по лиду в markdown-пак для нейросети (ChatGPT)
-
•
Контекст-пак: данные лида, компания, контактное лицо (ЛПР), проекты, переписка, напоминания, раунды общения, собранные данные о клиенте, текущая ситуация и рекомендация по частоте; инструкция для нейросети
-
•
Новый сервис AiMessageContextService (app/Services) — собирает markdown-блок из всех источников: переписки, напоминаний, карточек лида/компании/ЛПР; копирование в буфер + скачивание .md
-
•
Умный канал по умолчанию: форма теперь предвыбирает последний фактический канал переписки (а не «telegram» вслепую); канал лида → telegram по умолчанию
-
•
Пошаговый флоу: 1) скопируйте данные → 2) отправьте в ChatGPT → 3) вставьте ответ → 4) отправьте клиенту → нажмите «Отправлено»
-
•
Версия платформы поднята до 0.37.0
v0.36.1
16.09.2026
PATCH
-
•
Управление сообщениями (Задание 107): редактирование сообщения — на отдельной странице /sales/messages/{id}/edit (свой URL вместо раскрывающейся формы внутри переписки)
-
•
Страница редактирования показывает само сообщение: канал, направление, статус, тему, текст, фактическую дату/время касания; одна кнопка «Сохранить», возврат в переписку
-
•
Исправлено: теперь указанная пользователем дата сохраняется как есть (раньше при сохранении черновика с датой она терялась)
-
•
Версия платформы поднята до 0.36.1
v0.36.0
16.09.2026
MINOR
-
•
Проекты направления «Продажи» (Задание 106): новый раздел «Проекты» в левом меню — локальная копия проектов направления «Продажи» с платформы задач, кнопка «Получить данные», автосинк ежедневно в 09:35
-
•
Карточка проекта: стадия жизненного цикла (продажи → производство → поддержка), человек (ЛПР) со ссылкой /person/{id}, ссылка на первоисточник https://task.ipd.test/project/{id}, прогресс, дедлайн, количество задач, описание, задачи проекта
-
•
Список проектов с фильтрами (стадия, статус, поиск), KPI-сводка, отсев личных и чужих проектов, метка актуальности данных
-
•
Заправлен публичный API платформы задач (GET /api/v1/projects) полем stage жизненного цикла проекта
-
•
Версия платформы поднята до 0.36.0
v0.35.1
15.09.2026
PATCH
-
•
Красный favicon платформы (Задание 105): вкладка sales.ipd.test теперь отличается цветом от других платформ — красная плитка с белым логотипом-квадратиком (сетка 2×2) во всех размерах (favicon.svg/ico/png, apple-touch-icon); цвета направлений: продажи — красный (огонь/движение)
-
•
Версия платформы поднята до 0.35.1
v0.35.0
14.09.2026
MINOR
-
•
Сегментация целевой аудитории (Задание 102): экраны лидов и компаний получили два новых поля — сегмент по типу клиента (физлицо/фрилансер, ИП, ООО/малый, средний, крупный, госсектор) и направление (медицина, ветеринария, строительство, торговля, производство, IT, образование, услуги и др.); методология — L:\Система\11 Продажи\01 Методология\13 Сегментация целевой аудитории (ЦА) - Сайты.md
-
•
Фильтры в списке лидов по сегменту и направлению со счётчиками, бейджи на карточке лида и компании, поля в формах лида и компании, перенос сегмента и направления при конвертации лида в клиента, колонки «Сегмент» и «Направление» в выгрузке Total Commander (разделы «Лиды» и «Клиенты»)
-
•
Справочник сегментов и направлений — единый класс App\Support\TargetAudience; данные лида 16 «МедРГ» (ООО, медицина и медтехника) обновлены по директиве Алексея
-
•
Версия платформы поднята до 0.35.0
v0.34.2
14.09.2026
PATCH
-
•
Данные продажи по лиду 16 «МедРГ» (Александр Позняков) обновлены по директиве Алексея (Задание 101): зафиксировано исходящее сообщение Viber от 14.09 — презентация КП «три варианта развития сайта» с бюджетами (корпоративный сайт 2 400 BYN / интерактивная платформа от 5 000 BYN / максимальная экосистема от 8 000 BYN), уточняющие вопросы сняты, интеграции и хостинг/домен — на стороне студии
-
•
Методология продаж «Как я продаю: три продукта» записана в L:\Система\11 Продажи\01 Методология\12 Три продукта (как я продаю).md и в базу знаний L:\Система\07 Знания\02 Продажи\README.md
-
•
Версия платформы поднята до 0.34.2
v0.34.0
13.09.2026
MINOR
-
•
Декомпозиция шагов (Задание 98): шаги с платформы задач раскладываются на под-шаги внутри карточки задачи (дерево с галочками)
-
•
Под-шаг: название, описание с Markdown/ссылками, своя галочка «сделано», удаление; у шага видно счётчик «N из M под-шагов»
-
•
Галочка родительского шага каскадом отмечает/снимает все его под-шаги, прогресс задачи считается по «листьям» (под-шаги и шаги без под-шагов)
-
•
Под-шаги — локальная декомпозиция продаж (external_step_id = null): при синке с платформой задач не трогаются, назад не передаются
-
•
Пример занят: задача 20260911-0012 «Первое касание Александру Познякову» разложена на под-шаги с ссылками и данными
-
•
Локальные правки задачи: названия, начало, дедлайн и горизонт можно редактировать в карточке («Редактировать» в шапке); изменённые поля помечаются бейджем «изменено локально» и синхронизация (авто-синк 09:30 и «Получить данные») их не перезаписывает
-
•
Версия платформы поднята до 0.34.0
v0.33.1
13.09.2026
MINOR
-
•
Задачи с платформы задач (Задание 97): работа с задачами теперь внутри платформы продаж. Внешние ссылки на task.ipd.test убраны из списка — осталась вспомогательная ссылка «Открыть на платформе задач» в карточке
-
•
Декомпозиция: каждая задача раскладывается на свои шаги внутри платформы продаж (своя разбивка, пример Алексея «покрасить стену → 20 шагов»); шаги можно добавлять, отмечать выполненными, удалять; прогресс задачи показывается по шагам, если они есть
-
•
Обратная запись «загрузить назад»: кнопка «Отметить выполненной» закрывает задачу на платформе задач через публичный API (POST /api/v1/tasks/{id}/complete) — платформа задач видит, что задача выполнена
-
•
Версия платформы поднята до 0.33.1
v0.33.0
13.09.2026
MINOR
-
•
Задачи с платформы задач (Задание 96): раздел «Задачи» в левом меню, кнопка «Получить данные», локальная копия задач направления «Продажи» с платформы задач (статус, прогресс, горизонт, дедлайн), метка актуальности данных, подсветка просроченных
-
•
Версия платформы поднята до 0.33.0
v0.32.1
11.09.2026
PATCH
-
•
Функционал сообщений (Задание 92): действия сообщения (копировать, редактировать, пометить отправленным / вернуть в черновик, удалить) убраны из строки с кнопками в кебаб-меню (⋮) — больше никакой путаницы с кнопкой «Черновик» у уже отправленных сообщений
-
•
Кнопка «Скопировать» у каждого сообщения (в кебаб-меню) — текст сообщения целиком копируется в буфер обмена
-
•
Редактирование сообщения исправлено: форма открывается пунктом «Редактировать» в кебаб-меню и работает без inline-кнопок
-
•
Даты в истории сообщений теперь с годом (ДД.ММ.ГГГГ ЧЧ:ММ) — на карточке лида и в переписке почты
-
•
Правила стиля для писем от имени Алексея записаны в инструкции по продажам: без «я/мы/нас», всегда явные дата и время
-
•
Версия платформы поднята до 0.32.1
v0.32.0
11.09.2026
MINOR
-
•
«Почта» (Задание 91): новый раздел для быстрой переписки с лидами по email — реестр лидов с email и последними письмами, составление письма (тема + текст с Markdown), кнопка «Скопировать письмо» для отправки из своей почты, «Сохранить черновик» и «Отметить отправленным» (запись попадает в историю лида)
-
•
Подготовлен готовый черновик письма лиду «МедРГ» (Александр Позняков) — про материалы и примеры сайтов, которые не дошли (ситуация с корпоративным Telegram)
-
•
Пункт «Письма» добавлен в новую секцию «Почта» бокового меню
-
•
Версия платформы поднята до 0.32.0
v0.31.1
11.09.2026
PATCH
-
•
Таймер «ждём клиента» (Задание 90): для состояния «мы отправили» добавлен обратный отсчёт до напоминания по правилу «3 дней тишины» — окно 72 часа с момента последнего исходящего касания, шкала прогресса и подпись давности касания
-
•
После 72 часов тишины состояние переходит в жёлтое «Клиент молчит — пора напомнить о себе» (граница теперь считается по часам, а не по округлённым дням)
-
•
Версия платформы поднята до 0.31.1
v0.31.0
11.09.2026
MINOR
-
•
Дизайн карточки лида (Задание 90): аватар стал нейтральным (не зависит от статуса — статус показывают текст и кнопки)
-
•
«Откуда знают» вынесено отдельным полноширинным примечанием в карточке лида с лимитом строк и кнопкой «Показать полностью» — длинный текст больше не растягивает карточку
-
•
В карточке лида теперь видны счётчики: сколько сайтов (основной + найденные по клиенту, «+N ещё» с переходом в «Данные по клиенту») и сколько email (первый помечен как «осн.»)
-
•
Блок «Где мы сейчас» стал «живым»: цвет кнопки и заголовка зависит от возраста лида (синий — в норме до 12 ч, жёлтый — 12–24 ч, красный — просрочено более 24 ч), добавлен обратный отсчёт до конца окна первого касания (24 ч) с шкалой прогресса
-
•
Версия платформы поднята до 0.31.0
v0.30.3
10.09.2026
PATCH
-
•
Разведка по лиду «МедРГ» (Задание 88): новый функционал сбора информации о лиде — данные по клиенту расширены полями YouTube, VK, найденные сайты, рынки, ниши, вилка бюджета, интеграции, сроки, дорожная карта, фото и разведзаметки; зафиксированы данные по ООО «МедРГ» (4 сайта, 2 рынка, 2 ниши, бюджет 2400–6000 BYN, Bitrix24, срок — запуск к Новому году) и прикреплён скрин заявки; показан фото-роут /sales/leads/{lead}/photo
v0.30.2
10.09.2026
PATCH
-
•
Заявка с сайта «МедРГ» (Задание 87): добавлен лид Александр Позняков (ООО «МедРГ», Полоцк — оптовые поставки рентгенологического оборудования, AGFA HealthCare) с контактами, источником, каналом и папкой лида в Total Commander; зафиксирован созвон 10.09 (обратный звонок с сайта ~16:00) и подготовлен черновик первого касания в Telegram
v0.30.1
10.09.2026
PATCH
-
•
Даты в сообщениях (Задание 86): в карточке лида у каждого сообщения в форме «Редактировать» появились поля «Дата отправки» и «Время отправки» — можно выставить фактическую дату и время, когда сообщение было отправлено (например, 8 сентября в 13:37), отдельно дату и отдельно время
v0.30.0
10.09.2026
MINOR
-
•
Total Commander + Git + голосовое управление (Задание 85): выгрузка в Total Commander дополнена разделом «Цель дня (коммерческий минимум)» — норматив канала (напоминания, звонки, Zoom, очные контакты) и фактически сделанное сегодня
-
•
Выгрузка в Total Commander дополнена разделом «Проактивные задачи» — активные рекомендации платформы (деньги, продажи, активность) со статусом, сроком и суммой
-
•
Платформа развёрнута в git-репозиторий (история версий и откатов): исходный код версии 0.30.0 сохранён, репозиторий связан с bare-хранилищем в папке d:\git\
-
•
Раздел настроек «Total Commander» дополнен инструкцией работы с данными в обе стороны: платформа → папки (выгрузка снапшотов) и папки → платформа (агент читает markdown как источник правды)
v0.29.0
10.09.2026
MINOR
-
•
Экосистема Total Commander (Задание 84): новый раздел настроек «/settings/totalcmd» — реестр папок Total Commander (11 Продажи, 02 Клиенты, 03 Люди и связи, 07 Знания\02 Продажи, 09 Финансы, 12 Направления, Студия ИПД) с назначением, чтением/записью, статусом папки на диске и датой последней выгрузки
-
•
Таблица ссылок «сколько и где»: для клиентов, лидов, людей, проектов, договоров, счетов, актов и доказательств — сколько записей указывают на папки в Total Commander, сколько уникальных путей, сколько реально существует на диске, примеры путей
-
•
Выгрузка данных платформы в Total Commander: кнопка «Выгрузить все данные» (или по папке) пишет актуальные данные sales.ipd.test в служебную подпапку каждой папки (Platforma), обновляя дату «Обновлено»; весь раздел доступен через пункт меню «Total Commander» в блоке Управление
v0.28.1
09.09.2026
PATCH
-
•
Рабочий стол: цветофор (светофор) — красный, жёлтый, зелёный, серый для навигации. Убран фиолетовый цвет. Синий — только для ссылок, кнопки нейтральные (серые)
-
•
Воронка продаж на рабочем столе: конверсия между этапами (стрелки с процентами), цветофор этапов (требует действия / в работе / выполнено / ожидает), ссылки на воронку
-
•
Время: убран зелёный цвет — часы и дата в нейтральном стиле
-
•
Доверие: убран фиолетовый, нейтральный стиль блока
-
•
Проактивные рекомендации: убран фиолетовый, нейтральный стиль
v0.28.0
09.09.2026
MINOR
-
•
Доверие (Задание 81): новый раздел /sales/trust — доверие строится из реальных фактов и касаний, а не деклараций. Цикл доверия «рассылка → напоминание → звонок → встреча → предложение» показывает фактически выполненные касания за сегодня и за 7 дней на основе сообщений, follow-up напоминаний, журнала событий коммуникаций и сделок-предложений
-
•
Коммерческий минимум дня: карточки-цели (персональные напоминания, звонки холодным/тёплым, 2 дистанционные Zoom-встречи, очные контакты осеннего цикла-2026) с прогрессом «выполнено/ещё нет» и ссылками на задачи task.ipd.test
-
•
Зонирование: Брест · очно vs Дистанционно · Zoom vs Другие города и страны — где реально происходили очные и дистанционные встречи за 30 дней
-
•
Доверие по маркетингу: кейсы (реальные клиенты с оплаченными сделками) и последние отзывы клиентов с оценкой и настроением
-
•
Лента фактов: последние проведённые события коммуникаций за 14 дней со ссылками на карточки; кнопки быстрой записи касания (звонок / Zoom / очная встреча)
-
•
На рабочем столе компактный блок «Доверие — реальные касания сегодня» с счётчиками этапов и зон; пункт «Доверие» добавлен в меню «Продажи»
v0.27.0
09.09.2026
MINOR
-
•
Воронка продаж (Задание 77): новая страница /sales/funnel — путь клиента от заявки до денег: 7 этапов (входящие заявки → квалификация → квалифицированы → сделка/КП → договор → счёт → оплачено) с цифрами, суммой бюджета, конверсией в следующий этап и потерянными лидами/сделками
-
•
Метрики воронки: потенциал (бюджет в работе), полученные деньги, средний чек (бюджет сделки и факт оплаты), LTV по платящим клиентам, средний цикл — сколько лиды/сделки находятся в воронке, заявки по источникам (маркетинг → трафик)
-
•
На рабочем столе блок «Воронка продаж» СРАЗУ СВЕРХУ: этапы с количеством, суммами и конверсией в оплату; пункт «Воронка продаж» добавлен в меню «Продажи»
v0.26.0
09.09.2026
MINOR
-
•
Интеграция «Продажи ⇄ Платформа Задач» (Задание 76): карточка клиента /sales/client/{id} показывает блок «Платформа задач (task.ipd.test)» — человек из категории «Люди», его проекты (статус, прогресс, дедлайн, направление с цветом, просрочки) и задачи в работе со ссылками на task.ipd.test
-
•
Связь человека: продажи находят человека в платформе задач по email клиента (или контакта) через новое API задачника /api/v1/people?email=…
-
•
Новый сервис TaskPlatformService: HTTP-запрос к task.ipd.test (X-API-Key), кеширование ответа на 10 минут, graceful-падение при недоступности платформы задач
v0.14.3
01.09.2026
PATCH
-
•
Карточка рекомендации: поле «Доказательство» стало полноширинным textarea вместо узкого поля ввода — удобно вписывать текст/ссылку подтверждения
-
•
Умная подсказка по плановому расходу: в карточке рекомендации показываются уже проведённые операции того же месяца (статус «проведено», сумма, дата, категория) — система видит, что средства по плану уже списаны
-
•
Кнопка-подсказка «Сделано: средства списаны» в карточке планового расхода: заполняет доказательство готовым текстом «Средства списаны, проведено в движении средств» и отмечает рекомендацию выполненной
v0.14.2
31.08.2026
PATCH
-
•
В кебаб-меню карточки лида (⋮) добавлена кнопка «Демо данные»: позволяет одним действием пометить и удалить тестовый/вымышленный лид из системы с подтверждением — для быстрой очистки демо-данных
v0.14.1
31.08.2026
PATCH
-
•
Кебаб-меню (⋮) на карточке рекомендации — теперь в правом верхнем углу карточки (как на рабочем столе и в списке /proactive), а не внизу рядом с «Согласен, делаю»
-
•
В кебаб-меню каждой рекомендации добавлена кнопка «Демо данные» (для плановых расходов — «Удалить демо-платёж»): позволяет пометить и удалить демо/тестовую рекомендацию с подтверждением, действие единое для всех типов (сделка, счёт, follow-up, сообщение)
v0.14.0
31.08.2026
MINOR
-
•
Рабочий стол — система уведомления и распределения, а не управления: проактивные рекомендации больше не имеют прямых кнопок «Согласен, делаю / Пока не актуально / Сделано / Ещё нет». Вместо них у каждой карточки — кебаб-меню (⋮ вертикальные три точки) в правом верхнем углу со вторичными действиями: «Отклонить», «Удалить демо-платёж», «Ещё не сделано»
-
•
Добавлен «путь клиента» (кликабельные ссылки) в карточки рекомендаций на рабочем столе и в /proactive: по сделке/счёту/follow-up/сообщению выводится кликабельное имя клиента (например «ООО Ключи →»), ведущее в карточку клиента; номера расчётных счетов и реквизиты стали кликабельными ссылками на движение средств
-
•
Основная кнопка на карточке рекомендации — одна: «Подробнее →» (переход к деталям, реквизитам, расчётному счёту); на странице рекомендации основные действия — «Согласен, делаю» и «Сделано» (с доказательством), второстепенные (отклонить/удалить демо/перенести) — в кебаб-меню
-
•
Страница проекта: основная кнопка теперь «Редактировать» (вместо «Завершить»); «Завершить/Восстановить/В архив/Удалить/Передать в отдел сервиса» — в кебаб-меню. На карточке проекта блок «Показатели продаж (KPI / чек-лист)»
-
•
Редактирование проекта: добавлены поля «KPI выполнен», «Результат KPI», «Чек-лист пройден», «Чек-лист (что сделано)», «Отдел (воронка)» и «Заметки для отдела сервиса»; новые колонки проектов kpi_done/kpi_result/checklist_done/checklist_text/department/service_notes/service_handoff_at
-
•
Цикл воронки (маркетинг → продажи → разработка/производство → сервис → снова продажи): действие «Передать в отдел сервиса» переносит данные проекта из отдела продаж в отдел сервиса (department/служебный статус) — обещанная продажа передаётся на исполнение
-
•
Рабочий стол помогает лучше продавать: новый блок «Продажи: план и потенциал (сколько могу заработать)» — заработано за месяц, план, % выполнения плана, потенциал в воронке, остаток до плана, оплачено по сделкам; в «Умном автопилоте продаж» имена клиентов стали кликабельными ссылками
v0.13.0
31.08.2026
MINOR
-
•
Система продажных уведомлений (проактивные): колокольчик/страница «Уведомления» теперь динамически сканируют данные продаж и показывают реальную нагрузку вместо «1» — просроченные follow-up, предстоящие действия на сегодня, неотправленные сообщения (черновики/ожидающие), лиды, ожидающие квалификации, «залипшие» лиды без активности, сделки с счетами к оплате и просроченной оплатой, неоплаченные счета клиентам
-
•
Новый сервис SalesNotificationService: собирает уведомления каждого типа с категоризацией, сортировкой по приоритету (сначала просроченное/критичное) и стабильным ключом (overdue_followup_7 и т.п.); прочитанность хранится в новой таблице notification_read_status по паре (пользователь, ключ)
-
•
Новая таблица/модель notification_read_status (миграция, индекс user_id+notification_key) — когда условие исчезает, уведомление само пропадает; когда появляется вновь — снова становится непрочитанным
-
•
API колокольчика: GET /api/sales-notifications, GET /api/sales-notifications/unread-count, POST /api/sales-notifications/read и /read-all — dropdown подгружает продажные уведомления, badge показывает сумму непрочитанных (событийные + продажные)
-
•
Страница /notifications: сверху блок «Продажи — требуют внимания» с иконками типов и кнопками «Прочитать»/«Прочитать все», ниже системные событийные уведомления
-
•
Колокольчик в шапке: продажные уведомления в приоритетном блоке + системные ниже, значок-бейдж с общим количеством; обновление счётчика каждые 60 сек
v0.12.3
30.08.2026
PATCH
-
•
Визуальный стиль действия: всплывающие toast-уведомления в правом верхнем углу на всей платформе — плавное появление (слайд справа), автозакрытие через ~3,8 сек с плавным исчезновением, зелёный для успешных действий (сохранено/удалено/сделано) и красный для ошибок
-
•
Единый стек уведомлений (.toaster) в layouts/app.blade.php: обрабатывает flash success/error/status/warning в один стильный компонент с иконкой и кнопкой закрытия
-
•
Глобальный JS-хелпер toast(title, type) и dismissToast(el) — можно показывать уведомление из любого скрипта (например, после AJAX-действий)
-
•
Уведомления статусов проактивных рекомендаций (/proactive) переведены с блочных алертов на toast; страница входа тоже использует единый стиль toast
v0.12.2
29.08.2026
PATCH
-
•
Финансы: страница контрагента /sales/finance/counterparty/{name} — клик по получателю (контрагенту) в движениях средств открывает список всех платежей к нему/от него, итоги по категориям, сальдо по контрагенту
-
•
Получатели (контрагенты) стали кликабельными ссылками в «Движении средств» (/company/movements) и в «Последних операциях» на странице Финансы (/sales/finance)
-
•
Кнопка «Удалить» у каждой операции движения средств — позволяет убрать ошибочные/демо-платежи (например, плановые подписки OpenAI/n8n) точечно, маршрут POST /company/movements/{id}/delete
v0.12.1
28.08.2026
MINOR
-
•
Total Commander маркер для людей и лидов: поля «Папка в Total Commander» (folder_path) у персон и лидов + бейджи «✔ TC» / «TC—» в карточках и списках
-
•
Проставлены сопоставления папок Total Commander: клиентам, лидам (01 Лиды) и людям автоматически подставлены пути из просканированных папок TC (по совпадению имён)
-
•
Карточка человека: блок «Total Commander (источник правды)» с бейджем есть/нет папки, кнопкой «Открыть в Total Commander»
-
•
Карточка лида: блок «Total Commander (источник правды)» с бейджем и кнопкой «Открыть в Total Commander», пункт «Открыть папку TC» в кебаб-меню
-
•
Список лидов и список людей: бейджи «✔ TC» / «TC—» рядом с карточками
-
•
Эндпоинты /sales/leads/{id}/open-folder и /sales/people/{id}/open-folder — открыть папку в Total Commander (или проводнике)
v0.12.0
28.08.2026
MINOR
-
•
Показатель «Total Commander» (источник правды): у каждой компании поле «Папка в Total Commander» — наличие папки означает, что клиент реальный, а не выдуманные демо-данные
-
•
Клиент ВипЛэйбл снабжён реальными данными из его папки в TC (ООО «ВипЛэйбл», г. Брест, ул. Гоздецкого 15а; УНП 291110182; Пётр Колодич, +375297900019; vip_label@mail.ru; viplabel.by) вместо фейковых/пустых
-
•
Карточка клиента: блок «Total Commander» с бейджем есть/нет папки, кнопкой «Открыть в Total Commander» и «Заданием для ИИ» (собрать материал, записать в TC, просканировать) с копированием
-
•
Рабочий стол: блок «Total Commander (источник правды)» — сводка «клиенты в TC / без папки (демо?)» со списками и переходом
-
•
Список компаний: бейдж «✔ TC» / «TC—» для каждой компании, показывающий, есть ли привязанная папка в Total Commander
-
•
Эндпоинт /sales/client/{id}/open-folder — открыть папку клиента в Total Commander (или проводнике)
-
•
Формы компании и валидация расширены полями folder_path и ai_task
v0.11.0
27.08.2026
MINOR
-
•
Детальные страницы событий «Счета к оплате»: данные счёта, реквизиты для оплаты, полный текст напоминания с копированием, перечень статусов
-
•
Ссылка «Первоисточник задачи» на детальной странице события (для VipLabel — задача 10509, https://task.ipd.test/task/10509)
-
•
Ссылка «Подробнее →» в каждой строке реестра «Счета к оплате»
-
•
Кебаб-меню (⋮) доработано: переведено на единый компонент (лиды, проекты, направления, соцсети, пользователи, почтовые ящики, API-ключи, exchange, счета)
-
•
Исправлен запуск кебаб-меню: добавлен обработчик открытия меню (делегированный клик в app.js) — ранее ⋮ не раскрывался
-
•
Кэш-бастер для статических файлов css/app.css и js/app.js (версия в URL) — правки подхватываются без сброса кэша браузера
v0.10.2
27.08.2026
MINOR
-
•
Кебаб-меню (⋮) по всей платформе: редактирование/удаление компаний и персон, лидов, проектов, направлений, соцсетей, пользователей, почтовых ящиков, API-ключей спрятаны в выпадающее меню
-
•
Переиспользуемый компонент кебаб-меню (partials/kebab), глобальные стили и обработчик закрытия, спрайт SVG-иконок подключён глобально
-
•
Авто-напоминания об оплате счетов: модуль «Счета к оплате» — авто-детекция неоплаченных счетов, уведомления (Финансы), реестр с готовым текстом напоминания для клиента (копируется), статусы напомнено/оплачен/пропущен
-
•
Реальный счёт VipLabel 80 BYN (переезд сайта на хостинг) и авто-уведомление о необходимости напомнить клиенту об оплате
v0.10.1
27.08.2026
PATCH
-
•
Рабочий стол вынесен отдельным пунктом в сайдбаре — выше раздела «Навигация», как отдельная точка входа
-
•
Живое время на рабочем столе: день недели, дата, часы:минуты:секунды, контекст (рабочий/выходной день, время суток)
-
•
Подсказки по времени: что уместно делать сейчас (начало/конец рабочего дня, выходной)
-
•
Рекомендации получили ссылку «Подробнее» и светофор статуса: красный = просрочено, жёлтый = скоро срок, зелёный = актуально
-
•
Кнопка «Отклонить» заменена на нейтральную «Пока не актуально» (серый, а не критический красный)
-
•
ProactiveService расширен: рекомендации по сделкам (просрочка оплаты, неотправленные сообщения), компании (неоплаченные счета, подписки), активности (просроченные действия) — всего до 15+
-
•
Прогресс проектов — светофор: красный <33%, жёлтый 33–66%, зелёный >66%, серый = нет прогресса
v0.10.0
27.08.2026
MINOR
-
•
Проактивная система рекомендаций: модель ProactiveRecommendation, миграция, контроллер
-
•
Механика подтверждения: предложено → согласен → сделано/не сделано/отклонено, с запросом доказательства
-
•
Виджеты на дашборде: рекомендации по деньгам (конвертация RUB→BYN), продажам (follow-up), с точными датами и № счетов
-
•
Прогноз конвертации: номер счёта BY63 ALFA...1027 0000 → BY48 ALFA...2027 0000, комиссия, к зачислению
-
•
Page /proactive: история рекомендаций с разделами активные / сделано / отклонено
-
•
Сервис ProactiveService: авто-генерация рекомендаций по финансам и продажам (фильтр дублей)
v0.9.0
27.08.2026
MINOR
-
•
Экосистема финансов: BankAccount + BankTransaction модели, миграции, сидер
-
•
Реальные счета: BYN (BY48 ALFA 3012 2631 3900 2027 0000 — 61.64 BYN) и RUB (BY63 ALFA 3012 2631 3900 1027 0000 — 16 414.52 RUB)
-
•
Последние операции из Альфа-Банка: переоценки RUB, комиссии за пакет «Включайся» (20 BYN/мес)
-
•
Конвертер RUB→BYN на странице финансов (курс НБРБ: 100 RUB = 3.50 BYN)
-
•
Прогноз движений: запланированные операции (зарплата, комиссии, конвертация)
-
•
Дашборд: Блок 1 обновлён — реальные балансы по счетам вместо фиктивных цифр
v0.8.3
26.08.2026
PATCH
-
•
Минимальный шрифт 14px по всей платформе: все blade-шаблоны (sales, dashboard, api_keys, company, exchange, settings, reports, mailboxes, project)
-
•
Контрастность текста ≥6:1 — --color-text: #0f172a (15.3:1), --color-text-muted: #475569 (~5.9:1), success/warning/danger усилены
-
•
Исправлена контрасность sidebar-секций (rgba → #94a3b8), sidebar текст, account-menu email
-
•
Форматные метки (10–11px) → 14px: notifs, badges, chips, stat-amount, social-cards, code-previews (кроме <code>/<pre>)
v0.8.2
26.08.2026
MINOR
-
•
Центр правды: модуль Сообщения — модель Message, контроллер, роуты, чат-интерфейс на карточке лида
-
•
Статусы сообщений: draft / pending / sent / failed с индикацией на списке лидов (бейдж «не отправлено»)
-
•
Композитор сообщений: канал (Telegram/Email/Телефон/Viber), направление (исходящее/входящее), тема, текст
-
•
Отметка «Отправлено/Черновик»: одна кнопка — статус обновляется, фиксируется время отправки
-
•
История сообщений: чат-вид с bubble, цветными аватарами каналов, бейджем «ИИ» для AI-агентов
-
•
Сидер: 22 реальных сообщения для 8 лидов (КОМПО, Отец Николай, АгроБетон, Бобер Боб, Медтехника, Ришелье Стиль)
v0.8.1
26.08.2026
PATCH
-
•
Исправление валидности HTML: карточки лидов — div вместо вложенных <a> (убрана невалидная вложенность)
-
•
Фильтрация лидов: активный фильтр с описанием источника/вердикта/статуса и кнопкой «Сбросить»
-
•
Сегментация: полные счётчики по всем лидам (не только отфильтрованным)
-
•
Подготовка сообщений для клиентов: КОМПО, Ришелье Стиль, Отец Николай, Бобер Боб
v0.8.0
26.08.2026
MINOR
-
•
Радикальный редизайн карточки лида: SVG-иконки вместо эмодзи, kebab-меню на каждой карточке
-
•
Расширенное редактирование лида: contact_person, website, telegram, address, source_detail, links (JSON), tags (JSON)
-
•
История переписки/поддержки: чат-вид с bubble-сообщениями (входящие/исходящие), канал, тон, статус
-
•
Hero-секция: аватар, бейджи (источник, статус, вердикт), теги, действия (квалификация, конвертация, кебаб-меню)
-
•
Инфо-грид: Email, телефон, Telegram, сайт, услуга, бюджет, откуда знают, адрес, даты
-
•
Напоминания (follow-up): переработанный дизайн с иконками, формой добавления, статусами просрочено/скоро
-
•
История квалификаций: карточки с color-bar, таблица баллов, метод (BANT/CHAMP/MEDDIC)
-
•
Миграция: contact_person, website, telegram, address, source_detail, links, tags
v0.7.1
25.08.2026
PATCH
-
•
Обновление данных клиентов из отчётов Продавца (System 16): 125 заданий, 124 отчёта за 12.07-24.08.2026
-
•
Актуализация контактов: Татьяна (Ришелье Стиль), Михаил (Медтехника), Егор (Бобер Боб), Отец Николай (Каменецкое)
-
•
Обновление статусов: Бобер Боб (17 дней тишины), Ришелье Стиль (горящий сайт), Медтехника (12+ дней тишины)
-
•
Follow-up: напоминания для Бобер Боб (реквизиты), Ришелье Стиль (три варианта), Медтехника (оплата), Каменецкое (ответ)
-
•
Шаблоны сообщений из практики Продавца: конкретика > «вода», предоплата обязательна, 48-72 часа follow-up
v0.7.0
25.08.2026
MINOR
-
•
Импорт реальных лидов из файловой системы Алексея (14 лидов: Venchester, Марина, КОМПО, Отец Николай, АгроБетон, Бобер Боб, Jetpeel, Mysteria, Медтехника, Ришелье Стиль, АльденаГрупп)
-
•
Рекомендации методологии для каждого лида: BANT/CHAMP/MEDDIC с обоснованием
-
•
Реальные примеры квалификации: Бобер Боб (CHAMP, 7/8), АгроБетон (BANT, 5/8), Venchester (BANT, 2/8)
-
•
Дашборд лидов: панель методологии, фильтр по методу, цветовая индикация горячих/тёплых
-
•
Карточка лида: рекомендация метода с кнопкой «Квалифицировать через CHAMP/MEDDIC/BANT»
-
•
Форма квалификации: реальные примеры из практики Алексея (Бобер Боб, АгроБетон, Venchester)
-
•
Follow-up: напоминания для АгроБетон (День 3, День 7) и КОМПО (отправка письма)
-
•
Seeder: реальные лиды из L:\Система\02 Клиенты\ с привязкой к методологии
v0.6.1
25.08.2026
MINOR
-
•
Три методологии квалификации лидов: BANT (быстрый фистр), CHAMP (через боли клиента), MEDDIC (глубокий анализ для крупных сделок)
-
•
Формы квалификации: BANT (4 критерия), CHAMP (4 критерия через проблемы), MEDDIC (6 элементов — метрики, покупатель, критерии, процесс, боль, чемпион)
-
•
Выбор методологии при квалификации: интерактивная карточка с описанием каждого метода и таблицей сравнения
-
•
История квалификаций: отображение типа методологии (BANT/CHAMP/MEDDIC) с цветовой маркировкой
v0.6.0
25.08.2026
MINOR
-
•
Квалификация лидов (BANT): входящие обращения → оценка Budget/Authority/Need/Timing (0-8) → горячий/тёплый/холодный → конвертация в клиента и сделку
-
•
Центр напоминаний (follow-up): задачи по типу (звонок, email, сообщение, встреча), фильтры (просроченные, сегодня, неделя), приоритеты, привязка к лидам и людям
-
•
Новый раздел «Лиды» в боковом меню: список лидов, статистика (конверсия, горячие, тёплые), фильтры по статусу
-
•
Карточка лида: контакт, сообщение клиента, история квалификаций, напоминания, конвертация в клиента одной кнопкой
-
•
Форма квалификации BANT: наглядная оценка 4 критериев с комментариями
v0.5.4
11.08.2026
MINOR
-
•
Favicon и PWA: современный набор иконок — favicon.ico (16/32/48), favicon-16/32/48, favicon.svg, apple-touch-icon.png (180), favicon-192x192 и favicon-512x512 (Android/маска), site.webmanifest (установка как приложение), browserconfig.xml, theme-color и application-name
-
•
Логотип-воронка (3 ромба) как фирменный знак платформы — виден в браузере и на больших устройствах
v0.5.2
05.08.2026
MAJOR
-
•
Второй расчётный счёт в RUB («Альфа Касса», BY48 ALFA 3012 2631 3900 2027 0000): на балансе отображаются оба счёта — BYN 432,64 и RUB 16 414,52 (эквивалент ≈ 598,19 BYN)
-
•
Учёт валютных поступлений: движение средств с валютами (currency, rate_nbrb, amount_byn), эквивалент в BYN по курсу НБРБ 3,6443 за 100 RUB
-
•
Подсказки и уведомления о действиях с деньгами: валюта RUB vs BYN, продать банку по курсу покупки 3,57 (≈ 586,00 BYN) или оставить на валютном счёте; налоги и зарплата — в BYN
-
•
Учёт обязательств по предоплате: договор 16/07-2026 «Бобер Боб» — аванс получен 05.08.2026 (счёт №01/08-2026, мемориальный ордер №84) → идти по этапам производства
-
•
Уведомления «Финансы»: валютное поступление отражено в колокольчике уведомлений
v0.5.1
05.08.2026
MAJOR
-
•
Напоминания (follow-up): у сообщений появился план следующего действия — просроченные, сегодня и ближайшие 7 дней на дашборде (Блок 4)
-
•
Светофор ситуаций: у каждой персоны и клиента сигнал — серый (нет данных), красный (просрочено: счёт, проект, напоминание), жёлтый (долг, биллинг, ждём ответа, нет контакта 14 дней), зелёный (всё хорошо)
-
•
Вкладка «Компании»: компании (юр. данные, УНП, сайт), внутри — проекты, внутри — люди; CRUD компаний, статистика и сигналы по каждой
-
•
Финансы по проекту: сделки привязаны к проекту (deals.project_id), блок «Бюджет / Оплачено / Долг» на карточке проекта и клиента
-
•
Импорт переписки: массовое добавление сообщений из телеграма/почты (формат «ДД.ММ.ГГГГ ЧЧ:ММ | в/ис | текст») с автоопределением направления
-
•
Сырые данные: голосовые, промты ИИ, файлы и фото прикрепляются к сообщению (attachments) и отображаются в переписке
v0.5.0
05.08.2026
MAJOR
-
•
Экосистема «Клиенты»: у клиента несколько проектов, внутри проекта — люди (ЛПР и участники) с ролями
-
•
Карточка персоны: контакты, должность, психотип, дата рождения и нумерология (число судьбы), канал общения, стиль, тон, «любит / не любит», как платит
-
•
История переписки по каждому человеку: входящие/исходящие, канал, тон, статус, план следующего действия
-
•
Сколько денег принёс клиент: оплачено / долг / бюджет по сделкам компании — прямо в карточке человека
-
•
Блок «Контекст для нейросети» с готовой инструкцией (ai_prompt): копируется одной кнопкой и передаётся нейросетям для ведения переписки в стиле клиента
-
•
API для ИИ-агентов: /api/clients (список людей с фильтрами) и /api/clients/{id} (полный контекст: профиль, стиль, финансы, история, ai_prompt)
-
•
Шаблонные данные: 8 клиентских проектов, 14 людей по разным должностям и психотипам, 30+ сообщений переписки
-
•
Новые таблицы: client_projects (связь клиент↔проект), people (люди клиентов), client_messages (история переписки)
v0.4.2
05.08.2026
MINOR
-
•
Калькуляция зарплаты директора: на руки (по умолчанию 400 BYN) → начислено, налоги 13%/1%/34%/0,6%, комиссия банка, доступно и прогноз остатка
-
•
Калькулятор «на руки» на странице движения средств (параметр ?salary=): проверка любой суммы, расчёт и прогноз
-
•
Система уведомлений о нюансах учёта: не хватает средств, деньги сняты но документы не оформлены, просроченные платёжки, штрафы ИМНС, комиссия, расхождение учёта с выпиской
-
•
Уточнение по снятию наличных 300 BYN: полная стоимость с учётом налогов 40,77 + на руки 300 + комиссия 3 = 343,77 BYN
v0.4.1
04.08.2026
MINOR
-
•
Факт за август 2026: 4 платёжки исполнены 04.08.2026 по выписке (подоходный 45,36; ФСЗН 34% 118,62; ФСЗН 1% 3,48; Белгосстрах 2,10)
-
•
Баланс по выписке обновлён до 432,64 BYN (было 602,20), 4 платёжки учтены как исполненные
-
•
Штрафы ИМНС 135,00 и 22,50 BYN добавлены как операции «вне банка» (оплата наличными как физлицо, на р/с не влияют)
-
•
Признак «влияет на р/с» (affects_bank): штрафы наличными не искажают баланс и прогноз
-
•
На вьюхе движения: категория «Штраф», канал «Вне банка», фактические налоги помечены «факт»
v0.4.0
04.08.2026
MAJOR
-
•
Зачисление зарплаты директора и оплата налогов: план из 4 платёжек (подоходный 13%, ФСЗН 34%, ФСЗН 1%, Белгосстрах 0,6%)
-
•
Авторасчёт начисления зарплаты: на руки = начислено × 0,86 (формула по реальной выписке июня 2026)
-
•
Движение средств приведено к реальным выпискам Альфа-Банка: март–июль 2026 (операции, суммы, контрагенты)
-
•
Поступление 600 BYN 31.07.2026 (Медтехника, счёт 04/07-2026), баланс по выписке 602,20 BYN
-
•
Прогноз остатка после выплаты зарплаты, кнопка «Отметить исполненной» для плановых операций
v0.3.0
04.08.2026
MAJOR
-
•
Новый раздел «ООО Студия ИПД»: реквизиты, расчётный счёт, баланс, движение средств, договоры, счета
-
•
Синхронизация с папкой Total Commander: сканирование по кнопке, журнал, статистика изменений
-
•
Просмотр структуры папки в браузере: навигация, поиск, категории (договоры, счета, финансы, налоги)
-
•
Кнопка «Открыть в Total Commander»
-
•
Новые таблицы: company_requisites, company_contracts, company_invoices, company_money_movements, folder_syncs, folder_entries
-
•
Реальные данные из папки: 3 договора 2026, 4 счёта, движение средств (июнь 2026)
v0.2.0
04.08.2026
MAJOR
-
•
Главный дашборд директора: 3 блока (Текущие деньги, Направления Доход/Расход, Автопилот продаж)
-
•
Модуль «Клиенты» (CRM): УНП, контакты, история сделок
-
•
Модуль «Сделки»: воронка из 5 этапов (Лид→Оффер→Договор→Счёт→Оплачено)
-
•
Модуль «Финансы»: доход/расход по направлениям, чистая прибыль
-
•
Новые таблицы: clients, deals, finance_records
-
•
Переписан сидер: 6 направлений, 7 клиентов с УНП, 12 сделок, 30+ финансовых записей
-
•
Боковое меню: раздел «Продажи» (Клиенты, Сделки, Финансы)
v0.1.0
03.08.2026
MAJOR
-
•
Sales Platform создана на базе Marketing Platform: Laravel 13, миграции, модели, CRUD
-
•
Окружение: sales.ipd.test (Herd), MariaDB 10.11.11 (DBngin), БД sales_ipd
-
•
Направления и проекты: создание, редактирование, просмотр
-
•
Дашборд со статистикой
-
•
API для ИИ-агентов: /api/projects, /api/directions, /api/search
-
•
ActionController (POST /api/action) для CRUD-операций
Студия ИПД · 2026