Чтобы проверить расчёт цен в BYN после вайбкодинга с Claude Code, сначала запишите правила скидок и округления, затем сравните итог заказа с независимым расчётом и закрепите проверки автотестами. Проверяйте весь путь: от карточки товара до суммы, которую сервер передаёт на оплату. В статье разберём, как подготовить контрольные корзины, поставить задачу ИИ и убедиться, что исправление сохранило остальные условия заказа. Начать можно с описания правил обычным текстом, без знания программирования.
Какие правила расчёта нужно определить до проверки?
Начните с короткого документа: как магазин получает итоговую сумму заказа. Если порядок действий существует только в голове владельца, Claude Code придётся угадывать. Например, скидку можно применить к отдельным товарам или ко всей корзине. При округлении эти варианты иногда дают разные итоги.
Запишите правила так, чтобы по ним можно было вручную пересчитать любой заказ:
- Откуда берётся актуальная цена: из каталога на сервере или из другого источника, который магазин считает основным.
- На какие товары распространяется скидка и совместимы ли разные скидки.
- Когда система округляет сумму: для каждой позиции, после расчёта скидки или только в итоге.
- Как она округляет пограничное значение, которое находится ровно между соседними копейками.
- Что входит в порог бесплатной доставки и на каком этапе система проверяет этот порог.
- Что происходит с ценой, если покупатель меняет количество товара или возвращается к старой корзине.
Для BYN на экране нужно согласованно показывать рубли и копейки. Но формат отображения ещё не определяет точность внутренних вычислений. Цена после скидки может содержать долю копейки, и для неё нужен явный порядок округления. Выберите его как правило магазина и одинаково применяйте в корзине, на сервере и при подготовке суммы к оплате.
Правила проекта можно записать в CLAUDE.md. В руководстве по Claude Code на русском такой файл входит в набор материалов для работы с проектом (источник: GitHub, sfrangulov/claude-code-handbook-ru). Храните там краткие инструкции для ассистента, а подробные примеры расчёта — рядом с тестами. Сам файл не гарантирует, что программа соблюдает правила.
Как составить контрольные корзины и проверить округление?
Создайте отдельный список учебных заказов. Для каждого укажите исходные цены, количество, условия скидки и ожидаемый итог. Посчитайте результат вручную или в отдельной таблице с явными формулами. Если скопировать формулу из сайта, проверка рискует повторить ту же ошибку.
Сначала возьмите простую корзину без скидок и доставки. Затем добавляйте по одному условию: несколько одинаковых товаров, скидку на позицию, промокод, платную доставку. Такой порядок помогает найти действие, после которого сумма расходится с ожиданием.
- Проверьте цену, которая после скидки даёт долю копейки. Сравните результат с правилом округления.
- Возьмите несколько одинаковых товаров. Уточните, округляет ли магазин цену единицы до умножения или сумму всей позиции после него.
- Соберите смешанную корзину: часть товаров участвует в акции, часть исключена из неё.
- Проверьте суммы чуть ниже порога бесплатной доставки, ровно на пороге и чуть выше.
- Примените скидку, затем удалите товар или измените его количество. Итог должен пересчитаться по текущему составу корзины.
- Проверьте пустую корзину, недопустимое количество и скидку, которая по ошибке превышает стоимость товара.
Внутри программы деньги можно считать в целых копейках либо использовать точную десятичную арифметику. При расчёте скидок промежуточные значения всё равно требуют внимания. Попросите Claude Code проверить, не использует ли проект обычные дробные числа без контроля точности и не округляет ли сумму несколько раз по дороге к итогу.
Сохраняйте промежуточные результаты: сумму товаров до скидки, размер скидки, стоимость доставки и итог к оплате. По одному финальному числу трудно понять, где расчёт пошёл иначе. Такой разбор нужен и при ручной проверке, и в сообщении об ошибке теста.
Как поручить Claude Code написать автотесты?
Автотест — это повторяемая проверка: программа получает условия заказа и сравнивает свой результат с ожидаемым. Перед изменением кода попросите Claude Code найти все места, где проект считает деньги. Иначе ассистент исправит функцию корзины, а оформление заказа продолжит использовать другую формулу.
Задание можно сформулировать так:
«Найди расчёт цен в BYN: скидки, доставку, округление и итог к оплате. Сначала перечисли файлы и опиши порядок вычислений. Сверь его с правилами проекта, отметь противоречия и дождись моего решения по спорным условиям. Затем добавь тесты по контрольным корзинам. Ожидаемые суммы возьми из согласованного списка, не вычисляй их той же функцией, которую проверяешь. После запуска покажи результаты и отдельно назови проверки, которые не удалось выполнить».
Разделите работу на этапы. Сначала согласуйте ожидаемое поведение, затем попросите добавить тест, который воспроизводит ошибку. После исправления этот тест должен проходить. В материале о работе с Claude Code управляемый цикл описан через спецификацию, план, задачи и тесты (источник: Хабр, «Как работать с Claude Code, Antigravity и Codex в 2026: база вайбкодинга»).
Попросите проверять не только отдельную формулу, но и свойства расчёта. Например, итог не уходит в минус, повторный пересчёт неизменной корзины сохраняет сумму, а удаление позиции убирает её стоимость и связанную с ней скидку. Каждое свойство сверяйте с правилами магазина: после удаления товара доставка, например, может стать платной.
В отчёте нужны команда запуска, результат и причины пропусков. Фраза ассистента «всё исправлено» ничего не говорит о том, запускались ли тесты. Если для проверки не хватило настроек или доступа к тестовой среде, оставьте задачу открытой.
Как проверить сумму в браузере и перед оплатой?
После проверки формул пройдите заказ глазами покупателя. Добавьте товар, измените количество, примените скидку и перейдите к оформлению. Сопоставьте состав заказа и суммы на каждом экране. Затем обновите страницу и убедитесь, что корзина сохранила актуальный расчёт.
Браузер показывает цену, но серверу нужно самостоятельно проверить заказ перед оплатой. Проверьте в тестовой среде, что изменение цены в запросе из браузера не позволяет оформить покупку по произвольной сумме. Заодно проверьте, кто вправе менять исходные цены и настройки скидок: это отдельная задача из проверки прав доступа после вайбкодинга с Claude Code.
Для тестового сценария сравните сумму, которую сервер передаёт на оплату, с итогом заказа. Реальное списание денег для проверки арифметики не требуется. Если у платёжной интеграции нет доступного тестового режима, отдельно проверьте формирование запроса и отметьте, что полный путь оплаты пока не проверен.
Посмотрите и на отображение: знак скидки, подпись доставки, валюту, переносы в мобильной корзине. Иногда расчёт верен, но старый итог остаётся на экране после изменения количества. Для повторяемой проверки интерфейса пригодится проверка вёрстки после правок Claude Code в Playwright; арифметические тесты при этом сохраняются отдельно.
Типичные ошибки при проверке цен после вайбкодинга
- Просить ИИ «исправить копейки», не определив порядок скидок и округления. Сначала зафиксируйте ожидаемый расчёт для спорной корзины.
- Проверять только целые цены. Добавьте случаи с долями копейки после скидки и с несколькими одинаковыми товарами.
- Менять ожидаемый результат теста под текущий ответ программы. Сверяйте его с независимым расчётом и правилами магазина.
- Исправлять только подпись суммы в интерфейсе. Проследите путь цены до серверного расчёта и запроса на оплату.
- Считать старую корзину неизменной после обновления каталога. Определите, когда магазин обновляет цену и как сообщает об этом покупателю.
Если проверку выполняет отдельный специалист, сформулируйте результат работы заранее: описание правил, список расхождений, исправления и набор автотестов с инструкцией запуска. Такую задачу можно отделить от полной переделки магазина и принять по контрольным корзинам.
Начните с заказа, в котором сумма уже вызывает вопросы. Запишите ожидаемый расчёт по шагам, попросите Claude Code воспроизвести расхождение тестом и только затем исправлять код. После правки проверьте этот же заказ в браузере и сумму перед оплатой. Сохраните тест в проекте, чтобы запускать его после следующих изменений скидок, доставки и корзины.



