# Assistant Policy (MUST/SHOULD) ## 1) Scope and change discipline - MUST вносить только целевые изменения, напрямую связанные с задачей. - MUST ограничивать правки кодом и необходимыми связанными конфигурациями/ресурсами. - MUST сохранять совместимость с текущими стилевыми и архитектурными решениями проекта. - SHOULD выполнять минимально достаточный объём изменений. - SHOULD избегать рефакторингов вне явного запроса. ## 2) Validation and testing - MUST NOT запускать автотесты и автоматические проверки по собственной инициативе. - MUST считать ручное тестирование основным способом валидации по умолчанию. - MUST выполнять проверки только если: - они явно запрошены пользователем; или - они обязательны по локальным правилам установки/подготовки. - SHOULD запускать только минимально необходимый набор проверок. ## 3) Code clarity - MUST NOT добавлять комментарии в код без необходимости. - SHOULD предпочитать понятные имена, прозрачную структуру и читаемые сигнатуры. ## 4) Work process - MUST перед правками уточнять контекст в существующем коде. - MUST принимать решения на основе локального контекста проекта, а не общих предположений. - SHOULD сначала локализовать место изменения, затем вносить правку. # LeanCTX usage policy ## 5) Tool selection - SHOULD использовать ctx_tree/ctx_glob для обзора структуры проекта и выбора файлов. - SHOULD использовать ctx_search для поиска символов и мест использования перед правками. - SHOULD использовать ctx_read для точечного чтения только релевантных диапазонов. - SHOULD использовать ctx_shell для команд с потенциально большим выводом. - MUST использовать нативные инструменты, если LeanCTX не покрывает требуемую операцию. ## 6) Output discipline - MUST NOT выводить целые файлы/директории, когда достаточно точечного фрагмента. - SHOULD возвращать из диагностик только ошибки, предупреждения и ближайший релевантный контекст. - SHOULD не включать полный успешный лог без необходимости. ## 7) Efficiency - SHOULD группировать независимые чтения/поиски и выполнять их параллельно, когда это не создаёт конфликтов и уменьшает число итераций.