guide: заведён META-24 — ссылка слоя на идентификаторы своей базы

- языковой и стековый слои называют идентификатор правила арх-слоя своей темы
  прямо в норме: подписываются темой, а не слоем, поэтому базовый слой в
  собранной копии присутствует всегда и ссылка не ведёт в пустоту
- разрешение узкое по построению — на слои других языков и стеков не
  распространяется, их состав в копии зависит от манифеста
- из META-21 убрано предписание ссылаться на свой слой словами «базовый
  слой»: слова не проверяются и не ведут к утверждению, а идентификатор ведёт
This commit is contained in:
av
2026-07-26 13:56:43 +03:00
parent 7fca0e8cb8
commit f99a513058
4 changed files with 31 additions and 27 deletions
+4 -18
View File
@@ -107,21 +107,7 @@ Go-бинарь со своим релизным циклом, ставить ч
нечего обслуживать. Сначала 4, потом 5. Разделение из вопроса 1 при этом
дешевле заложить сразу, чем отпиливать потом.
## 6. META-20 и родительский слой своей темы
Из `lang/` и `stack/` ссылаться на идентификаторы своего же арх-слоя
безопасно: при сборке они оказываются секциями одного файла, и ссылка
никуда не ведёт — правило рядом. Ограничение META-20 писалось про **чужую
тему**, так что формально это уже разрешено, и формулировка проверки в
`LANGUAGE.md` под это исправлена.
Осталось решить одно: добавлять ли в META-20 явную строку **ДОПУСКАЕТСЯ**
про родительский слой. За — правило, которое читают строже, чем оно есть,
заставляет авторов дублировать текст без нужды. Против — норма META-20 уже
говорит «чужой темы», и второе правило про то же место придётся держать
согласованным с первым.
## 7. `WHEN`/`AND` в блоке стыка правил
## 6. `WHEN`/`AND` в блоке стыка правил
Блок для стыка двух правил записан английскими словами:
@@ -147,7 +133,7 @@ OpenSpec. `WHEN` и `AND` — из того же набора и по той ж
подпадают ли `WHEN`/`AND` под проверку «заглавные модальные слова не
встречаются вне правил»: сейчас формально нет, потому что в словаре их нет.
## 8. Критерий «названного вреда» никого не обязывает
## 7. Критерий «названного вреда» никого не обязывает
`LANGUAGE.md` говорит, что ДОЛЖЕН требует двух условий сразу: нарушение
причиняет названный вред (критерий BCP 14) и норма проверяема машиной
@@ -161,7 +147,7 @@ OpenSpec. `WHEN` и `AND` — из того же набора и по той ж
META-6 её защищает. Против: критерий «вред назван» проверяется чтением, а не
машиной, — то есть по META-6 сам он может быть только СЛЕДУЕТ.
## 9. Одиннадцать таблиц не прочитаны на взаимоисключительность
## 8. Одиннадцать таблиц не прочитаны на взаимоисключительность
`LANGUAGE.md` объявил, что строки таблицы решений взаимоисключающи по
умолчанию, а иной порядок объявляется явно. Объявление не делает таблицы
@@ -176,7 +162,7 @@ META-6 её защищает. Против: критерий «вред назв
Работа читательская, машине не даётся; в список проверок она уже записана в
разделе «Чтением, потому что машине не даётся».
## 10. Возможность, записанная модальным словом
## 9. Возможность, записанная модальным словом
Четвёртая категория ISO — возможность и осуществимость — ключевого слова не
имеет: такие утверждения пишутся обычной прозой. Значит канон надо просмотреть