механизация больше не разрешает удалять норму
- META-9 снят: удаление оставляло подписчика, пришедшего после, без нормы и без проверки, а «механизировано у всех» канону не проверить — списка подписчиков у него нет по построению - META-8 переписан в запрет: норма остаётся в правиле, чем бы её ни проверяли; линтер сообщает, что нарушено, но не что требуется (META-6) - МЕХАНИЗИРОВАНО объявлена свойством репозитория: в тексте конвенции отметки нет, её место — запись о механизации ниже маркера (META-7)
This commit is contained in:
@@ -112,9 +112,9 @@ prefix: META
|
||||
|
||||
### META-3. Новая конвенция пишется там, где заболело
|
||||
|
||||
**СЛЕДУЕТ.** Первые шаги пути «находка → конвенция → правило линтера →
|
||||
удаление прозы» делаются в репозитории, где случилась находка; в канон
|
||||
продвигается общая часть.
|
||||
**СЛЕДУЕТ.** Первые шаги пути «находка → конвенция → правило линтера»
|
||||
делаются в репозитории, где случилась находка; в канон продвигается общая
|
||||
часть.
|
||||
|
||||
**ПОЧЕМУ.** Правило, написанное сразу в общем виде, не проверено ни одним
|
||||
применением, и условие применимости у него придумано, а не найдено, —
|
||||
@@ -228,8 +228,9 @@ prefix: META
|
||||
|
||||
**ПОЧЕМУ.** Линтер не забывает, ничего не стоит на каждом прогоне и краснеет
|
||||
до ревью, а не на нём: там, где проверка пишется, она дешевле самого
|
||||
внимательного чтения, и путь «находка → конвенция → проверка → удаление
|
||||
прозы» кончается ею (META-9). Условием ступени она при этом не является:
|
||||
внимательного чтения, и путь «находка → конвенция → проверка» кончается ею.
|
||||
Норму она при этом не заменяет и не отменяет (META-8). Условием ступени
|
||||
механизация не является:
|
||||
проверяющий по умолчанию — читатель правила (META-6), а если требовать
|
||||
скрипт, весь канон стоит в СЛЕДУЕТ до того дня, когда скрипты появятся.
|
||||
Ступень говорит о важности нормы, а не о состоянии инструментов.
|
||||
@@ -245,36 +246,25 @@ prefix: META
|
||||
читатель догадывается сам, к какому утверждению относится проверка, — и
|
||||
догадывается по-разному.
|
||||
|
||||
### META-8. Формулировка не удаляется из канона, пока механизирована не у всех
|
||||
### META-8. Норма из канона не удаляется, чем бы она ни проверялась
|
||||
|
||||
**НЕ ДОЛЖЕН.** Норма остаётся в каноне, пока хотя бы у одного потребителя
|
||||
машинной проверки нет.
|
||||
**НЕ ДОЛЖЕН.** Формулировка нормы остаётся в правиле независимо от того, кто и
|
||||
чем её проверяет.
|
||||
|
||||
**ПОЧЕМУ.** У кого линтера нет, тот после удаления остаётся без правила
|
||||
вообще: ни проверки, ни текста. Механизация у одного потребителя ничего не
|
||||
говорит о прочих, поэтому удалять по факту «у нас уже проверяется» —
|
||||
значит чинить свой файл за чужой счёт.
|
||||
|
||||
Списка подписчиков канон по построению не знает, поэтому факт «механизировано
|
||||
у всех» устанавливается обходом репозиториев вручную — это часть работы по
|
||||
удалению нормы, а не то, что можно проверить машиной (см. `LANGUAGE.md`,
|
||||
состояние МЕХАНИЗИРОВАНО).
|
||||
|
||||
### META-9. Общая механизация разрешает удалить норму из канона
|
||||
|
||||
**ДОПУСКАЕТСЯ.** Правило, уехавшее в общий конфиг линтера или в общую роль,
|
||||
удаляется из канона.
|
||||
|
||||
**ПОЧЕМУ.** Формулировка, дублирующая работающую у всех проверку,
|
||||
размазывает внимание: файл на несколько сотен строк заставляет человека и
|
||||
агента добросовестно вычитывать тривиальное именование и не доходить до
|
||||
формы решения. Явное разрешение нужно, чтобы META-8 не читался как запрет
|
||||
удалять вообще.
|
||||
**ПОЧЕМУ.** Проверяющий по умолчанию — читатель правила (META-6), и удаление
|
||||
нормы забирает у него ровно то, чем он проверяет: линтер сообщает, что
|
||||
нарушено, но не сообщает, что требуется. Условие «механизировано у всех»
|
||||
спасти не может: оно измеряется в день удаления, а подписчики появляются
|
||||
после. Репозиторий, подключившийся через год, получил бы правило без нормы и
|
||||
без проверки — заголовок с обоснованием и никакого способа узнать, что́ именно
|
||||
предписано, кроме git-истории канона, до которой он не дойдёт. Списка
|
||||
подписчиков у канона к тому же нет по построению, так что «у всех» ему всё
|
||||
равно не проверить.
|
||||
|
||||
### META-10. Обоснование не удаляется никогда
|
||||
|
||||
**НЕ ДОЛЖЕН.** Блок ПОЧЕМУ остаётся и после того, как норма уехала в
|
||||
линтер.
|
||||
**НЕ ДОЛЖЕН.** Блок ПОЧЕМУ остаётся и после того, как правило стало
|
||||
проверяться линтером.
|
||||
|
||||
**ПОЧЕМУ.** Линтер сообщает, что нарушено, но не сообщает, зачем правило
|
||||
существует. Без обоснования не видно, когда причина отпала, — проверка
|
||||
@@ -397,3 +387,4 @@ prefix: META
|
||||
|---|---|---|
|
||||
| META-16 | имя файла — kebab-case | вреда от нарушения нет (META-25); осталось прозой в «Оформлении» |
|
||||
| META-26 | запрет слов обязательства в обосновании | правило о заглавных уже делает строчное слово ненормативным, а форму обоснования рамками не ограничивают |
|
||||
| META-9 | общая механизация разрешала удалить норму из канона | снято 2026-07-26: удаление оставляло будущего подписчика без нормы и без проверки, а «механизировано у всех» канону не проверить (META-8) |
|
||||
|
||||
Reference in New Issue
Block a user