- -
- 100%
- +
— Шесть восстановлений?
— Шесть запросов, — сказала Ася. — Четыре завершились, два прервались. Задача в 01:46 — более ранний срез. Один из завершённых — у твоей мамы.
— Ты можешь подтвердить, что их было шесть?
— Могу. Но выгрузку уже забрали.
Вера посмотрела на дверь переговорной. За стеклом Роман разговаривал по телефону, отвернувшись от коридора. Он улыбался собеседнику.
— Почему ты сохранила номер задачи? — спросила Вера.
— Потому что знала, что он её закроет.
— Ты предвидела, что он закроет именно это обращение?
— Нет. Я предвидела, что он закроет любое обращение, которое мешает пятнице.
Ася забрала остывший кофе и пошла к своему столу.
Вера осталась у стеклянной стены. В панели инцидентов по-прежнему горел зелёный статус: «Единичный случай».
Она открыла карточку и добавила комментарий: Прошу сохранить все журналы маршрутизации и версии голосового профиля до завершения проверки. Основание: повторяющиеся ночные запросы; данные о числе событий расходятся между системами.
Пальцы на клавиатуре остановились над кнопкой отправки.
Она знала, что после этого комментария её имя останется в истории надолго. Если выяснится, что она ошиблась, это будет её ошибка. Если она промолчит и кто-то потеряет деньги, это тоже будет её выбор.
Вера нажала «Отправить».
В ту же секунду статус задачи изменился.
Доступ ограничен владельцем продукта.
Глава 4. Голос брата
Вера написала Матвею в 08:54.
Ты делал модель моего голоса для «Рядом»?
Он ответил не сразу.
Где ты?
На работе.
Это не место.
Вера посмотрела на закрытую карточку инцидента. После разговора с Романом она не могла открыть ни сводку, ни историю изменений. Только собственный комментарий и красную плашку: ДОСТУП ОГРАНИЧЕН.
В студии. Буду через час.
Студия Матвея находилась в бывшем административном здании у трамвайного кольца. На первом этаже работали ремонт телефонов и мини-пекарня; выше, за дверью с облупившейся надписью «Звук», помещались три комнаты, две вокальные кабины и кухня с чайником, который свистел даже выключенным.
Матвей открыл не сразу. На нём были большие наушники, а за спиной, в звукоизолированной кабине, горела красная лампа записи.
— Ты записываешься?
— Уже нет.
— Тогда почему лампа горит?
— Потому что я забыл выключить.
Он снял наушники и пропустил её внутрь. На мониторе жёлтым была выделена строка: «Он узнал её голос раньше, чем увидел лицо». Вера прочитала её.
— Художественное совпадение? — спросила она.
— Заказчик любит, когда совпадает с жизнью.
Он закрыл текст.
Вера не стала садиться.
— Ты делал модель моего голоса?
Матвей подвинул к себе кружку. На ней была нарисована нота, у которой отломился хвостик.
— Да.
Ответ прозвучал без защиты. От этого стало хуже.
— Когда?
— В конце зимы. Подрядчик «Линии» заказал проверку голосового восстановления. Нужен был тестовый профиль сотрудника. Мне прислали исходные фразы и карточку согласия.
— Чьё согласие?
— Там было написано, что сотрудник дал разрешение на тестирование.
— Ты видел моё имя?
Матвей провёл большим пальцем по сколу на кружке.
— В имени пакета. Не в договоре.
— И всё равно продолжил.
— Да.
Вера посмотрела на него. Матвей не отвёл глаз, но и не попытался объяснить. Это было на него не похоже. Обычно он умел заполнить тишину шуткой, сравнением или историей о заказчике, который хотел «голос как у молодого Шаляпина, но чтобы современно». Сейчас он молчал.
— Почему ты не сказал мне?
— Подписал соглашение о конфиденциальности. И решил, что если согласие оформлено, то всё нормально.
— Ты поверил бумаге, не спросив меня.
— Да.
Она наконец села. Между ними стоял микрофон на подставке, похожий на третьего участника разговора.
— Что именно ты сделал?
Матвей открыл рабочую папку на компьютере. Вера увидела несколько файлов с сухими названиями: исходный голосовой образец, проверка профиля Веры, передача профиля Веры. Последний был помечен серым значком облака.
— Тестовый голосовой профиль, — сказал он. — Не полноценный двойник. Набор коротких фраз для проверки сценария. Модель могла произнести то, что требовалось в тесте, и несколько похожих вариантов. Мне сказали, что она будет запускаться только в изолированной среде.
— Ты проверил, что её удалили?
— Я получил акт об удалении.
— Это не то же самое, что проверить.
— Знаю.
Он открыл таблицу с актом, но не повернул экран к ней. Вера не попросила показать ей таблицу: она ещё не понимала, какие данные вправе видеть, а какие — нет, и не хотела, чтобы Матвей решил, будто её возмущает не само нарушение, а невозможность контролировать происходящее.
— Я могу показать тебе только результат теста, — сказал он. — Без исходников. Это мой проект, и там есть материалы, которые мне не принадлежат.
— Покажи результат.
Матвей открыл аудиоплеер.
— Это тестовая фраза. В готовом продукте её не должно быть.
Он нажал на воспроизведение.
Из колонок прозвучал голос Веры:
— Я рядом. Продолжай.
Она замерла.
Фраза была короткой. Голос — низким, тёплым, с чуть хриплым началом на слове «рядом». Именно так Вера говорила, когда хотела успокоить мать и не хотела признавать, что сама нервничает.
— Это я говорила?
— Да. В исходном тестовом наборе было что-то похожее.
— «Я рядом»?
— Возможно, точная фраза. Я не составлял исходник. Мне прислали пакет.
— А вторую часть?
— «Продолжай»? Её тоже. Или близкую. Не помню.
— Ты слышал запись, которой вчера звонили маме?
— Нет.
— Тогда не делай выводов.
— Я и не делаю. Я говорю, что такую фразу моя модель могла собрать. Но у меня не было доступа к настоящему сценарию восстановления. Я проверял один вариант по техническому заданию.
Вера слушала ещё раз — уже не голос, а паузы между словами. «Я рядом» звучало почти без воздуха. На втором слове была крошечная ступенька, как будто голос переставил ногу на лестнице. Она не могла сказать, была ли эта ступенька в её собственной речи или появилась при обработке.
— Насколько близко? — спросила она.
— Для случайного человека — очень. Для тебя — не знаю.
— Я эксперт по голосам, Матвей.
— А я брат. Это не делает нас объективными.
Возразить было нечем.
— У тебя осталась модель?
— Файл теста — да. Сам профиль должен был быть удалён. Я сохранил только демонстрационный голосовой файл, потому что заказчик просил внести правки после первичной сдачи.
— Ты сказал, что получил акт об удалении.
— Мне прислали его позже. А потом попросили оставить голосовой файл до запуска, если понадобится сравнение. Я решил, что это не то же самое, что держать исходную модель.
— Ты решил.
— Да.
Вера встала и подошла к двери кабины. Внутри всё было обито серым материалом, в углу стоял складной стул. На пюпитре лежал распечатанный текст с несколькими пометками. Здесь можно было произнести любую фразу, и она сразу превращалась в отдельный файл, который затем отправлялся заказчику. Человеческий голос, разложенный на работу и сроки.
— Когда ты понял, что профиль мой? — спросила она.
— Когда получил исходные фразы. Там были слова, которые ты часто говоришь на презентациях. Я написал подрядчику. Они ответили, что согласие есть и я должен выполнять только техническое задание.
— И ты поверил им.
— Я хотел поверить.
Матвей опустил взгляд на экран. На секунду Вере показалось, что он сейчас начнёт оправдываться, но он только закрыл аудиоплеер.
— Я не звонил маме, — сказал он. — И не знаю, кто это сделал.
— Я не говорила, что ты звонил.
— Но подумала.
Вера не ответила.
— Ты думаешь, что я мог использовать модель против мамы? — спросил он.
— Я думаю, что у тебя была модель. Я думаю, что её не должны были оставлять. И я думаю, что ты не сказал мне правду, пока я не спросила.
Матвей кивнул.
— Это честно.
Он снова открыл папку, на этот раз — журнал заказа. Строки были сокращены; часть полей закрыта пометкой «данные подрядчика». Матвей прокрутил до последней страницы.
— Вот сообщение после сдачи. Я его вчера не заметил.
Вера подошла ближе. Текст был короткий:
Профиль Веры сохраняется до конца пилотного периода. Не удалять до завершения проверки в рабочем контуре. При запросах на повторный тест обращаться к координатору основной очереди.
Ниже стояло время отправки: три недели назад.
— «Рабочий контур» — это что? — спросила Вера.
— Я не знаю. В задании было написано «пилотная среда». Я не должен был видеть ничего кроме тестового стенда.
— А основная очередь?
— Очередь поддержки, наверное. Или внутренний номер координатора. Я не спрашивал.
Вера перечитала строку. Три недели назад профиль должен был быть удалён. Вместо этого его оставили до конца пилота, а теперь выяснилось, что пилотные запросы шли через один и тот же маршрут контактного центра.
Матвей сел перед экраном.
— Я могу отправить тебе копию сообщения.
— Не отправляй ничего из проекта в личную почту. Сначала я оформлю запрос через службу безопасности.
— Ты же не можешь открыть задачу.
— Тогда оформлю её через Асю.
— А если Роман закроет и эту?
Вера посмотрела на брата.
— Тогда будет понятно, что именно он пытается закрыть.
Матвей нажал на строку с номером проекта. Открылось небольшое окно с техническим статусом, которое он раньше не прокручивал до конца.
В правом нижнем углу мигнула серая надпись:
Последний доступ к профилю Веры: сегодня, 01:13. Контур: основная очередь.
Вера перестала дышать.
— Это точно не твой вход? — спросила она.
— Точно. Я спал.
— Профиль должен был быть только в тестовой среде.
Матвей повернул к ней экран.
— Тогда кто-то запустил его в рабочем контуре.
Глава 5. Основная очередь
Ася согласилась встретиться не в офисе.
— Если Роман уже ограничил доступ, он увидит, что мы снова открыли карточку, — сказала она по телефону. — И нет, это не паранойя. Там есть журнал просмотров.
— Где ты?
— Внизу, у кофейни.
— Я думала, ты сказала не в офисе.
— Я сказала не в переговорной.
Кофейня занимала угол первого этажа бизнес-центра. В обед там собирались сотрудники с бейджами, курьеры и люди, которые приходили на встречи «на пять минут» и задерживались на час. Ася сидела у стены, спиной к окну, и держала перед собой закрытый ноутбук.
— Ты принесла журналы? — спросила Вера.
— Нет. Я принесла голову. Журналы остались в системе.
Это была разумная осторожность. Вера села напротив.
— Что такое основная очередь?
— Не человек. Очередь.
— Какая именно?
— Ночная эскалация восстановления. Если обычный оператор не может завершить процедуру, запрос переходит туда. Это очередь подрядчика с доступом к части пилотных сценариев.
— С какого времени?
— Не знаю. Обозначение старое. В новом справочнике его уже нет.
— Почему?
Ася помолчала.
— В прошлом квартале очередь вывели из обычной поддержки. Её оставили для тестирования сложных случаев. По документам — только в тестовой среде.
Вера положила ладони на стол.
— А профиль Матвея был в рабочем контуре.
— Да.
— И в момент, когда начался запрос у мамы.
Ася кивнула.
Официант поставил между ними кофе. Вера не притронулась к чашке.
— Что ты увидела ночью? — спросила она.
— Не клиентские данные. Только сводку. Шесть восстановлений через «Рядом». Два прервались, четыре завершились. Все прошли через основную очередь.
— В презентации Романа было четыре события.
— Он показал четыре завершённых. Но не сказал, что ещё два дошли до той же очереди и остановились до конца.
— Почему они остановились?
— В одном случае клиент сам завершил сессию. Во втором оператор закрыл её после дополнительной проверки.
— Что за проверка?
— Не знаю. Я не видела содержания звонков.
Вера откинулась на спинку стула. Четыре завершённых восстановления и два прерванных. Все через одну ночь. Все через очередь, которой не должно было быть в рабочем контуре.
— Ты кому-нибудь сообщила?
— Да. Вчера вечером создала задачу на сохранение журналов и проверку доступа подрядчика. Её закрыли.
— Романом.
— Да.
— Ты можешь открыть её снова?
— Могу. Но если добавлю ту же формулировку, он закроет её второй раз. Если назову это утечкой без доказательств, он закроет меня вместе с задачей.
Вера посмотрела на неё. Ася не просила защиты и не жаловалась. Она просто описывала ограничения так, как Вера привыкла описывать ограничения системы.
— Тогда не будем писать «утечка», — сказала Вера. — Напишем, что нужно сохранить журнал использования профиля Веры и проверить, почему тестовая очередь получила производственный доступ. Это факты.
— И твоя мать?
— В обращении укажем конфликт интересов. Я не буду запрашивать её запись.
— А если они всё равно запретят?
— Тогда у нас будет ещё один факт.
Ася впервые улыбнулась.
— Ты всегда так говоришь, когда злишься?
— Только когда очень стараюсь не злиться.
Они открыли служебную форму на ноутбуке Аси. Доступ к разделу сохранения журналов у неё ещё оставался. Вера диктовала формулировки, Ася проверяла каждую по правилам. Ни имён клиентов, ни голосовых фрагментов, ни предположений о виновных. Только время, очередь, версия профиля и разница между тестовой и рабочей средой.
Перед отправкой Ася остановилась.
— Есть ещё одна вещь.
— Какая?
— У второго прерванного обращения клиент попросил не соединять его с доверенным родственником.
— Почему?
— В служебной заметке написано: «Слышал голос дочери, но дочь сейчас рядом». Оператор остановил восстановление.
Вера почувствовала, как по спине прошёл холод.
— Значит, человек позвонил, услышал голос, похожий на голос дочери, и понял, что что-то не так.
— Или понял, что дочь рядом, — сказала Ася. — Формулировка не очень ясная.
— Почему ты не включила это в ночную сводку?
— Я не знала, что ты захочешь это слышать.
— Я хочу знать всё, что не нарушает чужую приватность.
— Тогда это нужно запросить официально. У меня только обезличенная заметка и служебная отметка о маршруте.
Вера кивнула. Она хотела узнать, кто этот клиент и что именно он услышал. Но теперь каждый дополнительный шаг проходил через систему, которой она не доверяла.
Ася отправила запрос на сохранение журналов.
На экране появилось подтверждение: Задача создана. Ответственный — служба сопровождения подрядчиков.
Имя ответственного раскрылось через несколько секунд.
Кирилл Серов.
Ася закрыла ноутбук.
— Ты его знаешь? — спросила Вера.
— Видела пару раз на встречах. Он отвечает за ночную поддержку у подрядчика. Очень вежливый. Всегда говорит, что у операторов нет доступа к голосовым профилям.
— А основная очередь?
— Формально — нет. Фактически, судя по журналу, кто-то из этой очереди запускал профиль Веры.
Вера посмотрела на имя ещё раз. Кирилл Серов. Ниже система показывала время последнего изменения задачи: 02:11 — та самая минута, когда Роман переклассифицировал обращение её матери.
— Кто закрыл твою задачу прошлой ночью? — спросила она.
— Роман.
— А кто теперь отвечает за сохранение журналов?
— Кирилл.
Вера наконец взяла чашку. Кофе успел остыть.
— Они разделили следы между собой, — сказала она.
— Или это обычное распределение ответственности, — ответила Ася.
— Ты в это веришь?
Ася посмотрела на закрытый ноутбук.
— Я хочу верить. Это не одно и то же.
Телефон Веры завибрировал. Сообщение от Романа:
Увидел новую задачу. До завершения внутренней проверки прошу не обсуждать её с подрядчиком напрямую. Вопросы направляй через меня.
Вера показала экран Асе.
— Он ответил раньше, чем система назначила Кирилла? — спросила та.
Вера проверила время. Сообщение пришло в 12:26. Задачу назначили на Кирилла в 12:24.
Две минуты.
Вера не стала отвечать. Она сохранила сообщение в служебной карточке и попросила Асю не выгружать ничего нового без официального разрешения.
На улице, за стеклом кофейни, шёл мелкий дождь. Люди раскрывали зонты, прятали телефоны в карманы и торопились к остановке.
— Если основная очередь работала в рабочем контуре, Кирилл должен знать, кто её туда включил, — сказала Ася.
— Или кто попросил.
— Ты собираешься звонить ему?
— Нет. Пока мы не получим ответ через задачу, я не буду идти к подрядчику напрямую.
— А если ответа не будет?
Вера посмотрела на экран, где всё ещё светилось сообщение Романа.
— Тогда поймём, что молчание тоже часть ответа.
Она убрала телефон.
Впервые с ночи у неё появилось не только подозрение, но и направление.
Основная очередь.
Кирилл Серов.
И два человека, которые очень быстро решили, что проверять больше нечего.
Глава 6. Репетиция
Вера не стала отвечать Кириллу напрямую.
Она попросила Асю назначить встречу через официальную задачу и пригласить Романа. Если разговор будет только между ней и подрядчиком, его можно будет назвать личной проверкой. Если за столом окажутся все, кому положено отвечать за пилот, останется хотя бы протокол.
Кирилл подключился к видеоконференции ровно в 14:00. За его спиной была белая стена без логотипа и календарь с пейзажем. Сам он выглядел так, словно заранее знал, что именно будет сказано, и просто ждал своей очереди.
— Спасибо, что нашли время, — произнёс он. — Понимаю, что ситуация неприятная. Мы готовы помочь разобраться.
Вера отметила интонацию. Не фальшивую, не неестественную — отработанную. Так говорят люди, которым часто приходится начинать разговор с чужой тревоги.
Роман открыл встречу.
— Цель простая: сверить маршрут ночных обращений и определить, нужен ли дополнительный аудит. Пока не называем это утечкой или атакой. У нас нет оснований.
— Согласна, — сказала Вера. — Поэтому я и хочу понять, что такое основная очередь.
Кирилл улыбнулся. Не ей — камере.
— Техническая очередь ночной эскалации. Это не отдельная группа, которая работает с голосовыми профилями. Если обычный оператор не может закрыть восстановление, запрос автоматически попадает к нам. Мы видим статус и можем помочь оператору пройти стандартный сценарий.
— Вы видите сведения о доверенном контакте? — спросила Вера.
— Только те, что необходимы для сопровождения запроса.
— Имя, номер телефона, причину восстановления?
— Имя и статус. Не исходную аудиозапись.
— А тестовые профили?
Кирилл моргнул — один раз, быстро.
— У подрядчика нет прав запускать тестовые профили в рабочем контуре.
Роман откинулся на спинку кресла.
— Это важно. Рабочий профиль может подключить только продуктовая команда «Линии».
Вера посмотрела на него.
— Тогда почему профиль Веры был доступен через основную очередь в 01:13?
— Мы не подтверждали, что он был доступен именно через очередь, — сказал Роман.
— Это видно в журнале Матвея.
— Журнал подрядчика ещё не проверен.
Кирилл слегка наклонился к камере.
— Если вы говорите о сессии в 01:13, это, вероятно, была репетиция. В ночном окне мы проверяли прохождение восстановления перед запуском.
Вера не пошевелилась.
Ася, сидевшая рядом, перевела взгляд на экран. Роман посмотрел на Кирилла. На мгновение все трое замолчали.
— Вы сказали «репетиция», — произнесла Вера. — В задаче этого слова нет.
Кирилл не потерял улыбку.
— Это обычный термин для тестового прогона.
— В рабочем контуре?
— Не должно было быть.
— Но было?
Роман вмешался:
— Вера, не превращай предварительную сверку в допрос. Мы ещё не установили, что профиль использовали для подтверждения клиентского действия.
— Я не спрашиваю, использовали ли его. Я спрашиваю, зачем подрядчику понадобилась репетиция в рабочем контуре.
— Никому не понадобилась, — ответил Роман. — Возможно, это тестовый маркер, который ошибочно попал в журнал.
Кирилл кивнул.
— Такое бывает при переключении между средами. Мы проверим.
— Когда?
— После того, как получим официальный запрос на аудит, — сказал Роман. — Сейчас у нас только предварительные данные.
Вера посмотрела на форму встречи. В поле «повестка» стояло: Сверка маршрута ночных обращений. Ни слова о тестовом профиле. Ни слова о времени 01:13. Ни слова о том, что одна из клиенток — её мать.
— Хорошо, — сказала она. — Тогда зафиксируем: подрядчик отрицает доступ к тестовым голосовым профилям. Руководитель продукта подтверждает, что доступ к рабочему контуру есть только у продуктовой команды «Линии». При этом профиль Веры был использован в рабочем контуре в 01:13.
— Не был использован, — поправил Роман. — Был отмечен.
— Разница будет понятна после аудита.
— Именно. До аудита мы не делаем выводов.
Встреча закончилась через минуту. Кирилл попрощался первым, затем отключился Роман. Ася подождала, пока в углу исчезнет значок записи.
— Он назвал это репетицией, — сказала она.
— Да.
— А в календаре репетиции нет.
— Ты проверила?
— Пока мы говорили. Ночного теста не было ни в плане пилота, ни в расписании поддержки.
— Может, тест был вне расписания.
— Тогда почему Кирилл сразу назвал его репетицией?
Вера закрыла форму встречи.
— Потому что знает, что происходило в 01:13.
— Или потому что заранее подготовил объяснение.
— Это почти одно и то же.
Ася открыла служебный календарь сопровождения. Вера не стала смотреть на клиентские карточки; она следила только за строками расписания.
В ночь на понедельник основная очередь должна была работать в режиме дежурного сопровождения. В 01:13 значилась плановая техническая пауза. Ни одного теста. Ни одного звонка. Ни одного сотрудника, назначенного на репетицию.
— Кто был на смене? — спросила Вера.
Ася открыла список ответственных.
— Дежурный оператор — общая служебная учётная запись. Супервизор — Кирилл Серов.
— Имя оператора есть?
— Только в системе подрядчика. У меня нет разрешения на просмотр персональных данных сотрудников.
Вера уважала эту границу. Сегодня ей особенно не хотелось, чтобы расследование превращалось в ещё одно нарушение правил.
— Тогда запросим через задачу.
— Я уже запросила.
Ася показала экран. В тикете, созданном ею утром, появился новый комментарий:
Запрос на идентификацию дежурного исполнителя отклонён до завершения внутренней проверки. Основание: ограничение персональных данных подрядчика.
— Кто отклонил? — спросила Вера.
— Роман.
За окном переговорной кто-то прошёл с коробкой, полной рекламных буклетов к запуску. На обложке была изображена пожилая женщина с телефоном и подпись: «Рядом — когда близким нужна помощь».
Вера посмотрела на буклеты и вспомнила мамин голос: «Он был живой».
— Запроси не имя оператора, — сказала она. — Запроси подтверждение, что в 01:13 основная очередь работала только в дежурном режиме. Без персональных данных.
Ася набрала текст.
— Думаешь, так пропустят?
— Не знаю. Но если откажут, это тоже будет ответ.
Вера поднялась.
— Ты куда?
— К маме. Потом в службу безопасности.
— Роман запретил тебе обсуждать пилот с участниками.
— Он запретил мне обсуждать его с клиентами. Я не собираюсь спрашивать маму о чём-то, чего нет в согласованной форме. Я поеду как дочь.
Ася кивнула.
У двери Вера остановилась.
— Не открывай журнал основной очереди без разрешения. И не оставайся одна с этим тикетом.
— Ты мне сейчас запрещаешь работать?
— Нет. Я прошу тебя не становиться следующей записью, которую кто-то тихо закроет.
На телефоне Веры появилось новое сообщение от матери: «Мне позвонил банк. Сказали, что заявка принята. Я ничего не нажимала».
Вера набрала ответ: «Хорошо. Я еду к тебе».
В тот же момент обновилась задача Аси.
Запрос на подтверждение ночного режима основной очереди принят.
Ответственный: Кирилл Серов.
Срок ответа: три рабочих дня.




