Провести рефакторинг
Используйте этот сценарий, когда нужно улучшить структуру существующего кода без изменения его поведения: переименовать сущности, разделить большую функцию или класс, убрать дублирование, упростить зависимости либо подготовить код к следующему изменению.
Что подготовить
- укажите код или модуль, который нужно улучшить;
- объясните, какое поведение должно сохраниться;
- перечислите ограничения совместимости, особенно для публичного API;
- назовите тесты, сборку или пользовательский сценарий для проверки;
- задайте Edit Scope, если изменения должны остаться в определённой части проекта.
Если тестов недостаточно, сначала попросите агента определить рискованные сценарии. Для большого рефакторинга полезно добавить тесты, фиксирующие текущее поведение, до изменения реализации.
Составьте план
- Попросите агента изучить целевой код, его использования и связанные тесты.
- Сформулируйте ожидаемую структуру и то, что менять нельзя.
- Для большого изменения сначала используйте режим Plan: разбейте работу на небольшие шаги с отдельной проверкой каждого шага.
- Согласуйте, допустимы ли изменения публичного API, форматов данных и конфигурации.
Пример запроса:
Подготовь рефакторинг этого сервиса без изменения поведения.
Сначала найди его использования и связанные тесты. Предложи небольшие шаги,
для каждого укажи риск и способ проверки. Публичный API менять нельзя.
Внесите изменения
Выполняйте рефакторинг небольшими связными шагами. После каждого шага запускайте наиболее узкую проверку, которая подтверждает сохранение поведения.
Если шаг включает переименование класса, метода, поля или другого символа, попросите Veai использовать рефакторинг IDE, а не текстовую замену:
Veai может переименовать символ через рефакторинг IDE и обновить связанные объявления, использования и импорты.
Не объединяйте структурное изменение с несвязанным форматированием, обновлением зависимостей или новой функциональностью: такой diff сложнее проверить и откатить.
Проверьте результат
Откройте Agent Changes и убедитесь, что:
- внешнее поведение кода не изменилось;
- правки относятся к согласованной цели;
- объявления, использования и импорты остались согласованными;
- в проекте не появились дублирующие или временные реализации;
- связанные тесты и сборка проходят.
После крупного рефакторинга запустите более широкий набор тестов и Auto Review. Если изменение затрагивает публичный API, отдельно проверьте внешних потребителей и требования обратной совместимости.
Критерий готовности
Рефакторинг завершён, когда структура кода стала ближе к согласованной цели, поведение подтверждено тестами или другим воспроизводимым сценарием, публичные контракты сохранены либо изменены намеренно, а в diff нет несвязанных правок.
Подробно о функциях
Как Veai выполняет безопасные переименования через IDE, описано на странице «Рефакторинг символов». Для поиска связанных мест используйте поиск по проекту, а для проверки — конфигурации запуска IDE.
Связанные страницы: