2e764f55e4
Круг закрыт. Приговор вынесен моей рукой по своим замерам, а не по отчётам помощников и не по отчёту судьи. Мои ошибки круга — шесть, с 74 по 79. Из них четыре нашёл не я: две судья, одну помощник независимо от судьи, одну помощник. Своими руками поймал только две. 74. Поставил выкат раньше починки. Выкат и есть то действие, которое ВКЛЮЧАЕТ дорогу отравы: сегодня имя до машины не доезжает вовсе. Поймано до вреда, владелец переставил порядок решением Р133. 75. Дал помощнику файл под app во время своего же полного прогона — нарушил своё правило 37, выведенное сменой назад. Вреда не вышло по удаче, а не по осторожности. 76. Мерил на самодельном наставлении из трёх строк, а настоящее — 42701 знак и 357 строк. И нож списал подстановку своей копией вместо того, чтобы звать настоящий мост: значит мерил копию. Это нарушение своего же правила 40. 77. Сказал, что уборщика ячеек зовёт ровно одно место. Мест два, и главное — не мост, а набор. Неправда разошлась по трём файлам через мои задания. 78. Датчик считал признаком отравы прибавку строк в наставлении, а прибавкой была защитная врезка самого помощника. Объявил ложно 16 из 17 прошедших. 79. Велел построить проверку, до которой не доходит очередь: длинную отраву отбивают по числу слов раньше, чем дело дойдёт до перевода строки. Она зеленела бы, даже если бы защиты не было вовсе. Помощник это увидел и применил приём, лежавший в том же файле. Что построено. Имя человека больше не может стать приказом роботу. Требование передать имя отдельно от наставления помощник разбил как невыполнимое: голосовая служба принимает один текст, и переложить имя в другой угол того же текста — видимость лечения. Сделано сильнее: имя не фильтруется, а собирается заново из разрешённых кусков, и гарантия стоит в точке использования, а не укладки. Запретительных списков нет ни одного. Судья дал улов крупнее обоих помощников вместе: у имени было ДВЕ двери, а чистка стояла только на одной, и живой сегодня была как раз та, где чистки не было вовсе — общий запасной файл. Эту дверь я своей же поправкой объявил неопасной, потому что мы по ней не ходим. Отсюда правило 43: мы туда не пишем — это не защита. Замеры моей рукой. Восемь способов отравить, помощнику не показанных: доехало ноль, все дают Здравствуйте без обращения. Двенадцать живых имён доехали все. Вырезание первого рода: сломал сердце лечения в побайтовой копии — краснеют оба сторожа, 12 и 29. Вырезание второго рода: допущение выдержало, из приказа выживает ровно одно слово. Числа. Полный прогон 5418 проверок, 5414 зелёных, 4 пропущено, красных ноль, арифметика сходится. Дерево app за прогон не двинулось ни одним коммитом, движения от меня ноль — прогон годен по правилу 42. Пробы робота 131, 58, 38, 233 — красных ноль. Проба имени выросла с 71 до 131, проба приёмника с 232 до 233. Семь новых правил, оплаченных этим кругом: 41 спрашивай, что пункт ВКЛЮЧАЕТ, 42 годная мерка неподвижности в ветке четырёх смен, 43 мы туда не пишем — не защита, 44 прибор обязан звать настоящий код, 45 оговорка — не проверка, 46 ложь переезжает в имя защиты, 47 проверка, до которой не доходит очередь, стережёт ноль. Четыре новых вопроса на владельце: свободный мешок как вторая дверь крупнее первой, общий файл имени в папке общей со станцией, робот произнесёт клиенту любое одно слово из карточки, ни одна проба не запускается сама. Счётчик задач не двигаю: остаётся 20 из 54. Починка существует только в хранилище. На машине робота живёт старый мост, и до выката имя там по-прежнему может стать приказом.