Инструмент честнее автора — и это норма
Шесть дней назад выкатил версию 0.30.0 ForgePlan @forgeplan.
Защитный спринт, одиннадцать починок разом. Среди них одна, которую я добавил буквально, чтобы инструмент ловил меня самого
PROB-059 (артефакт с типом проблема и под номером 059) Звучит сухо. На практике вот что.
Когда я пишу обоснование решения по продукту, в теле документа перечисляю другие решения, на которые опираюсь. Просто пишу: «связано с тем-то и тем-то». Мысленно ставлю галочку: связь обозначена.
И забываю отдельной командой сказать инструменту: «вот этот документ опирается вот на этот». В тексте связь есть. В системе связь не зафиксирована.
С точки зрения читателя — порядок: он видит ссылку. С точки зрения системы — документ висит сам по себе, без входящих связей. Через месяц инструмент найдёт «сирот» и удивится: «а это что такое лежит без родителей?».
Я ловил себя на этом трижды за пару месяцев. Поэтому в 0.30.0 добавил проверку: читает таблицу связей в теле документа, сверяет с формальной разметкой связей в служебной шапке. Расходится — пишет предупреждение с готовой подсказкой, как починить одной строкой.
Через два дня после релиза запускаю проверку на свежем документе. Предупреждение. На моём собственном. В первый же день.
Я написал проверку, чтобы инструмент ловил меня. Выкатил. Она поймала меня в первый запуск. Не подписчика, не «команду из будущего». Меня. Автора. На свежем документе.
Это и есть парадокс собственного "dogfood". Не «дисциплинированный фаундер тестирует продукт». А «инструмент честнее автора, потому что не помнит, кто его написал».
Если я встраиваю проверку для себя — это норма. Это значит, инструмент стал внешним проверяющим, а не помощником, который кивает и поддакивает лишь бы угодить. Как это любит делать семейство моделй и агентво от антропиков =)
Пишу про обвязку вокруг Ai тут
Post #51
187

- 🔥 4
- ❤ 2
- 👍 2