Содержание руководства
Что получитеПонятная причина ошибки, исправленный код и результаты проверки.

Сообщение «что-то сломалось» оставляет агенту слишком много неизвестного. Полезная постановка задачи включает шаги воспроизведения, фактический результат и ожидаемое поведение. Разберём это на небольшой функции расчёта суммы заказа со скидкой.

01

Что подготовить

  • Скачайте учебный пример: в нём есть функция JavaScript, описание ошибки и контрольные значения.
  • Для своего проекта предоставьте нужный репозиторий или файлы, команду запуска и ограничения изменения.
  • Опишите воспроизведение так, чтобы другой человек смог получить ту же ошибку.

В исходниках используются учебные данные. Замените их своими, когда освоите процесс.

02

Попросите подтвердить проблему

Сначала Octo должна проверить исходный сценарий. В учебном примере скидка 10 означает 10 процентов, но функция использует её как готовую долю. Фактический результат расходится с ожидаемым.

Если выполнение кода недоступно, попросите прямо отделить анализ от запуска. Не принимайте предположение о поведении за результат реально выполненной проверки.

Задание для Octo
В приложенном учебном примере неверно считается сумма со скидкой. Воспроизведи ошибку на приведённых входных данных. Объясни причину, затем внеси минимальное исправление. Не расширяй задачу новыми возможностями. Если код не удалось выполнить, явно укажи это.

03

Проверьте исходный и соседние случаи

После исправления нужно снова получить сумму для того заказа, который считался неверно. Затем проверить нулевую скидку, полную скидку и сумму с копейками.

В рабочем проекте дополнительно запустите его существующие проверки. Попросите перечислить, что выполнялось и что осталось непроверенным. Это помогает оценить практическую готовность изменения.

Задание для Octo
Проверь исправленную функцию на всех контрольных примерах из файла. Покажи вход, ожидаемый и фактический результат. Объясни изменение в коде и перечисли ограничения, которые не покрывает эта учебная функция.

04

Пример результата

Учебный пример · Ориентир для проверки

Контрольные значения

  • Заказ на 2 000 ₽ со скидкой 10% должен дать 1 800 ₽.
  • Заказ на 2 000 ₽ без скидки — 2 000 ₽; со скидкой 100% — 0 ₽.
  • Заказ на 199,90 ₽ со скидкой 15% — 169,92 ₽ при округлении до копеек.
05

Главный нюанс и проверка

Изменённый код и успешная сборка ещё не доказывают исправление. Важна проверка того сценария, который ломался. Для денежных расчётов в реальном продукте отдельно определяют правила округления и представление сумм; учебная функция не заменяет эту часть проектирования.

Перед тем как использовать результат

  • Причина соответствует наблюдаемому поведению.
  • Исходный сценарий после исправления даёт ожидаемый результат.
  • Проверены граничные случаи, указанные в задании.
  • Из отчёта понятно, какие проверки выполнены, а какие нет.
06

Как повторить на своей задаче

Сохраните формат постановки задачи: контекст, воспроизведение, ожидание, границы изменения и проверка. Его удобно использовать для следующих ошибок. Для размещения собственного небольшого сервиса переходите к уроку Octo Apps с Postgres.

Попробуйте этот сценарий

Скачайте исходник, скопируйте задание и отправьте его Octo вместе с файлом.

Следующий шагРазверните сервис с Postgres и обновите его