Справочник SENAR: Шаблон стандартов кода
Организации РЕКОМЕНДУЕТСЯ вести документ стандартов кода, загружаемый в контекст каждого AI-агента (Правило 15, L2). Этот шаблон — отправная точка, основанная на аудитах продакшен-кода, сгенерированного AI.
Как использовать
- Скопируйте этот шаблон в конфигурацию агента вашего проекта (например,
.claude/references/code-standards.md) - Адаптируйте правила под ваш стек (Python, TypeScript, Go и т.д.)
- Добавьте конвенции, специфичные для проекта
- Убедитесь, что документ загружается в каждую сессию агента автоматически
Разделы шаблона
Документу стандартов кода РЕКОМЕНДУЕТСЯ охватывать:
| Раздел | Что определить | Примеры правил |
|---|---|---|
| Безопасность | Валидация ввода, контроль доступа, доверие к заголовкам, предотвращение инъекций | Никогда не доверять HTTP-заголовкам для решений безопасности без валидации через прокси |
| Архитектура | Ограничения размера файлов/функций, SRP, внедрение зависимостей | Максимум 400 строк/файл, максимум 50 строк/функция |
| База данных | Безопасность запросов, паттерны миграций, ограниченные запросы | Всегда использовать параметризованные запросы; всегда устанавливать LIMIT |
| API | Проверки аутентификации, валидация схемы, обработка ошибок | Каждый эндпоинт: проверить аутентификацию И доступ к ресурсу |
| Конкурентность | Потокобезопасность, жизненный цикл ресурсов, иммутабельность данных | Общее мутабельное состояние требует блокировок |
| Предметная область | Валидация вывода LLM, обработка событий и т.д. | Валидировать вывод LLM перед передачей далее |
| Тестирование | Регрессионные тесты, границы моков, качество утверждений | Каждое исправление ОБЯЗАНО включать регрессионный тест |
| Конфигурация | Валидация при запуске, безопасные значения по умолчанию | Аварийное завершение при отсутствии конфигурации безопасности |
Ключевой принцип
Каждое правило в документе стандартов кода РЕКОМЕНДУЕТСЯ иметь за собой реальный дефект. Теоретические правила игнорируют; правила, подкреплённые опытом, — соблюдают.
Дополнительные проверки времени выполнения см. в Гиде SENAR, Глава 2 (Чеклист проверки вывода AI).