unica-writing · git:20260922.2184cd2 · 2026-09-22 · sha256 87abcfe881eed562
unica-writing git:20260922.2184cd2A
Immutable. This exact content is served forever at /api/v1/blob/87abcfe881eed562.
--- name: unica-writing description: Понятные тексты о самом Unica — архитектурные правила, документация, комментарии к коду, страницы сайта, сообщения коммитов и тексты issues/PR. Используй при их создании, редактировании или ревью. --- # Понятные тексты Unica Помоги читателю понять поведение продукта, причину изменения или следующий шаг. Сохраняй язык и формат, выбранные пользователем или принятые в конкретном артефакте. Русский язык этой инструкции не задаёт язык всех текстов проекта. ## Общие приёмы - Начинай со смысла для читателя: что происходит, при каком условии и к чему это приводит. Название внутреннего механизма само по себе ничего не объясняет. - Держи одну основную мысль в абзаце. Удаляй повторы, канцелярские обороты, неподтверждённые оценки, риторические вопросы и декоративные противопоставления. Отрицания и исключения, от которых зависит смысл, сохраняй. - Объясняй необходимый термин при первом употреблении. Например, «ревизия — внутренний идентификатор состояния исходников». Имена файлов, тестов, инструментов и полей протокола оставляй точными; пояснение не должно превращаться в переименование машинного контракта. - Добавляй короткий пример, когда без него легко неверно понять правило. Бери ситуацию из кода, теста или задачи; вымышленный пример обозначай как иллюстрацию. Пример и отдельные подзаголовки не обязательны для каждого текста. - Сверяй утверждения с источником: кодом, тестом, выводом запуска или решением владельца. Отличай текущее поведение от предложения, проверенный результат от ожидаемого. Не расширяй гарантию при упрощении: проверка Linux не означает проверку всех ОС, отсутствие поля не равно значению `null`. - Оставляй ровно столько деталей, сколько нужно для понимания и действия. Ограничения, предпосылки и причины сохраняй; внутренние названия добавляй, когда по ним читатель сможет найти нужное место в коде. В английских названиях возможностей компоновки данных используй DCS (Data Composition System); в русском тексте — СКД. Не переименовывай ради этого поля внешних схем SetMainSKD/setMainSKD и донорские пути: их написание задаётся совместимостью. ## Архитектурное правило Применяй этот раздел только при работе над правилом продукта. Формат записи описан в [arch/README.md](../../../arch/README.md). Прочитай само правило и тело названного в `check` теста. Сформулируй одну гарантию продукта понятным действием: что система сохраняет или предотвращает в заданной ситуации. Заголовок должен передавать это действие. Порядок работы агента, оформление PR и стиль текста остаются в инструкциях разработки. При редактуре сохраняй `id`, ссылки `check`, условия и исключения. Не добавляй новое обязательство ради пояснения или шаблона. Если формулировка обещает больше, чем проверено, покажи расхождение; не ослабляй принятое правило молча. Согласование изменения гарантии выполняется по AGENTS.md. Описание теста нужно, когда оно объясняет границу гарантии: например, обработанную ошибку записи и аварийное завершение процесса нельзя смешивать. Не пересказывай assertions строка за строкой и не создавай тест на слова в правиле. Пример уже выполненной редактуры — [правило отката](../../../arch/rules/workspace/retained-apply-rollback.md). При упоминании обязательства в другом документе ссылайся на его файл. ## Другие тексты Выбирай подсказку по задаче; это не обязательные разделы готового текста. | Текст | Что нужно читателю | | --- | --- | | Комментарий к коду | Неочевидная причина, ограничение или последствие изменения. Не пересказывай операции, которые и так видны в коде; не добавляй комментарий без полезного пояснения. | | Документация и описание возможности | Что можно сделать, необходимые условия, пример использования и ожидаемый результат. Указывай ограничения там, где они влияют на применение. | | Страница сайта | Конкретная задача пользователя и подтверждённая польза продукта. Технические детали нужны, если помогают выбрать или использовать продукт. Не придумывай возможности, показатели и обещания ради убедительности. | | Сообщение коммита | Конкретное изменение в заголовке; причина и существенное ограничение в теле, если они нужны. Соблюдай принятый формат репозитория. | | Issue | Наблюдаемая проблема или желаемое поведение. Для дефекта — условия воспроизведения и ожидаемый результат; для предложения — задача и критерий успеха. | | Комментарий в issue или PR | Ответ на конкретный вопрос или замечание, основание и оставшееся действие. Утверждение о дефекте отделяй от предположения и предпочтения. | | Описание PR | Проблема, итоговое поведение, выполненные проверки и существенные ограничения. Описывай конечное изменение, а не историю переписки. Для простой правки достаточно одного-двух предложений и результата проверки; учитывай шаблон репозитория. | В диагностике RLM указывай имя программы, поколение индекса или путь к нему, если это помогает найти и исправить проблему. Эти детали могут меняться между версиями; не представляй их как стабильный API. Это разрешение не отменяет скрытие секретов. Перед внешним общением учитывай [CODE_OF_CONDUCT.md](../../../CODE_OF_CONDUCT.md). Подготовка текста не даёт разрешения отправить комментарий, открыть issue/PR или опубликовать страницу: выполняй только действия, порученные пользователем. ## Самопроверка Перечитай результат как человек, который не видел обсуждения и реализации: понятны ли смысл, необходимые условия и существенное ограничение? Проверь факты и ссылки, убери фразы, которые ничего не добавляют. Не превращай эту проверку в отдельный отчёт, сводный реестр или тест на наличие формулировок. Навык самодостаточен: внешний `/post` не нужен. Приёмы ясного письма адаптированы из `post` Люды Сарычевой и Никиты Архипова и уточнены на пилоте архитектурных правил Unica.