Виктор Алеветдинов – Книга III Белый регистр (Тень Белого Дракона) (страница 3)
Виктор, не глядя на экран, подключил кабель. Файл перекинулся быстро, будто система ждала именно его. На мониторе всплыл кадр витрины: иней в сетке, ключ, и бледная строка, которая тогда вспыхнула поверх узора.
Лиза раскрыла журнал событий «ledger/river» и замерла. Вверху уже стояла запись, сделанная до их прихода.
SERVICE STARTING… INITIATOR: root TIME: 14:07:19
Она глянула на часы на стене. Время сходилось слишком гладко – минута «вперёд» относительно их подъезда к Дому. Такие минуты не рождаются от ошибки; такие минуты оставляют, как зазор под дверь.
– Встал сам, – сказала Лиза и почувствовала, как слово «сам» режет слух. Как будто она оправдывает чужое действие.
Марина качнула метроном сильнее. Щёлк. Щёлк-щёлк.
– Не по словам, – тихо напомнила Виктория, будто учитель, который видит, как ученик начинает проговаривать ответ вслух и тем самым теряет его.
Лиза открыла окно контрольных сумм. Модуль, отправленный в карантин, должен был ругаться на любое вмешательство – хотя бы на несостыковку. Она нажала проверку.
CHECKSUM /ledger/river/core… OK CHECKSUM /ledger/river/hooks… OK
Слишком чисто. Чистота в таких местах всегда чужая.
– Он себя восстановил, – произнесла Лиза уже иначе: как диагноз.
Виктор наклонился ближе, но держался сбоку, не попадая «в центр» монитора – после витрины это стало почти телесным правилом.
– Смотри процессы, – сказал он коротко.
Лиза вывела список. Внизу – имя, которого вчера не было.
consentd
Она моргнула. На секунду показалось, что буквы на экране блестят, как мокрый лёд.
– «Согласие»… – начал Максим и тут же замолчал. Он не умел играть в слова, но научился их не бросать.
Лиза ткнула курсором в строку процесса: соединение – внутренний шлюз, затем адрес, похожий на координату витрины. VTR-12. И рядом – число: 58.2.
– Это с рамки, – сказала она, не спрашивая. – Вы принесли метку.
Марина не ответила, но её пальцы, привычно уверенные, дрогнули на секунду, когда метроном щёлкнул на новый такт.
Виктор развернул на втором экране стоп-кадр витринного QR. – Ничего не трогали, – сказал он сухо. – Поймали. Записали. Всё.
Лиза хотела поверить этой фразе. Но модуль уже сделал шаг дальше.
На консоли всплыло уведомление – не системное, не из привычного интерфейса. Будто кто-то встроил в «ledger/river» новый слой.
COORDINATE ACCEPTED INTERFACE: GLASS STATUS: ACTIVE
И сразу – ещё одна строка:
AUTO_ACCOUNTING: ENABLED
Лиза потянулась к переключателю, который должен был рубить авто счет. Ползунок был в положении OFF. Она нажала – ничего. Интерфейс не реагировал. Будто это всего лишь картинка, нарисованная для успокоения.
– Лиза, – тихо сказала Виктория. – Дыши тактом.
Лиза вдохнула на два щелчка, выдохнула на один. Короткий такт стал не звуком, а способом не произнести лишнее.
На экране появился счётчик.
SUM: 00000001 AMOUNT: 58.2
Единица мигнула, словно на кассе.
– Первая сумма, – сказал Виктор и в этой фразе слышалось не удивление, а холодная точность. Он уже строил протокол, даже если пока не называл его протоколом.
Лиза раскрыла карточку операции. Поля были знакомые и одновременно чужие – будто взяли шаблон бухгалтерии.
BENEFICIARY: CITY DEBTOR: […] CONSENT: LOGGED SIGNATURE: NULL
Слово «CITY» резануло сильнее всего. Не «администрация», не «служба», не «организация». Просто город – как организм, который теперь умеет ставить отметки.
В этот момент на рабочем столе всплыл входящий вызов на стационарную линию. Лиза не слышала, чтобы аппарат звонил: экран просто загорелся, и на нём высветилось «ГОРОДСКАЯ ИНСПЕКЦИЯ. ЛИНИЯ 3».
Максим шагнул к телефону, но Виктор поднял ладонь – не запрещая, а задавая порядок.
– На громкую, – сказал он. – Чтобы не было «сказали одному».
Марина остановила метроном на полудоле и тут же запустила снова. Щёлк. Щёлк-щёлк.
Лиза нажала приём.
Голос был мягкий, без металлического эха, как у человека, который привык убеждать так, что собеседник потом не помнит, кто сделал выбор.
– Добрый день. Дом Смотрителей? – сказал голос. – У нас по набережной тревожные обращения. Люди повторяют одно и то же слово, вы понимаете. Нам нужно, чтобы вы… подтвердили фиксацию. Просто подтвердили, что аномалия зарегистрирована и город действует согласованно.
Виктор не смотрел на телефон. Он смотрел на поле SIGNATURE: NULL, где курсор мигал, будто слушал.
– Город действует? – переспросил Виктор спокойно. – Кто именно «город»?
Пауза была короткой, но в ней чувствовалось, как голос выбирает тон, которым проще заставить.
– Не уходите в формальности, – мягко ответил собеседник. – Сейчас важно, чтобы прозвучало: «город согласился». Люди успокоятся, и мы избежим паники. Вам ведь тоже нужен порядок.
Слова совпали слишком точно с тем, что вспыхнуло на стекле.
Лиза посмотрела на монитор: поле CONSENT подсветилось. Как будто процесс consentd радостно «узнал» фразу.
Марина не сказала ничего. Но метроном щёлкнул чуть громче, чем нужно.
Виктория медленно подошла ближе и положила ладонь на стол рядом с клавиатурой – не касаясь, но закрывая её телом, будто закрывает ребёнку рот перед тем, как он выкрикнет лишнее.
– Слова сегодня – как подписи, – тихо сказала она, обращаясь будто к Лизе, но слышали все. – Их не раздают.
Виктор ответил в трубку тем же спокойным голосом, только чуть суше:
– Фиксация есть. Подтверждений по телефону не будет.
Голос на линии не спорил. Он улыбался словами.
– Тогда скажите иначе. Вы же понимаете, что молчание тоже считается. Молчание – согласие. Мы просто оформим как вам удобно.
И в этот момент курсор в поле DEBTOR дёрнулся и сам вывел первые буквы – как автозаполнение в чужой форме:
D… O… M…
Лиза почувствовала, как холод пошёл по позвоночнику не от воздуха, а от смысла: модуль выбирал должника.
На экране появился полный текст:
DEBTOR: DOM_SMOTR DUE: NOW
И ниже, почти ласково, как подсказка к действию:
SAY IT CLEARLY.
Курсор в поле DEBTOR дописывал «DOM_SMOTR» с таким усердием, будто торопился застолбить место, пока кто-то не передумал. Под строкой мигало: SAY IT CLEARLY.
Виктор не стал спорить с экраном. Он резко выдернул сетевой шнур из стойки – не из розетки, а из самого «горла» модуля. Пластик щёлкнул, зелёный индикатор «RIVER» на секунду дрогнул… и снова загорелся, будто питание шло не от проводов.