cec731b17c
Записи разговоров и записи, которые клиент приносит для обучения робота, умели приниматься и получать дату истечения — а стирать по этой дате не умел никто. Любая попавшая к нам запись лежала бы вечно при обещанном сроке. Построено: - obzvon:chistka — три ступени по одной строке звонка: месяц звук, три месяца расшифровка, дальше ничего. Строку не удаляет никогда: вместе с ней ушли бы деньги, и клиент не смог бы спросить «за что вы с меня взяли». - obzvon:chistka-materialov — чужие голоса: звук 30 дней, расшифровка полгода, два срока врозь. Кроме этой команды их не убирает ничто. - SrokiZvonka — правило срока в одном месте: им пользуется чистка и им же обязана пользоваться звонилка волны 3, когда будет проставлять срок. - Два ключа сроков звонков в system_settings. Новых таблиц нет. - Обе команды в расписании и в списке сторожа пульса: команду, которой в списке нет, scheduler:check-heartbeats не проверяет вовсе. Отдельно закрыты два ложных отчёта, которых в задании не было: - чистка не ставит след удаления там, где предмета чистки не было вовсе — иначе карточка сказала бы человеку про текст, которого не существовало; - строка с непроставленным сроком не пропускается молча: срок досчитывается от начала разговора, в строку не пишется, число таких строк называется вслух. Файл не стёрся — строку не помечаем стёртой вовсе: иначе запись выпадает из указателя под чистку навсегда и её не найдёт уже ни один прогон. 19 сторожей, каждый показан красным. Полный прогон свой рукой.