> ## Documentation Index
> Fetch the complete documentation index at: https://docs.tenderly.co/llms.txt
> Use this file to discover all available pages before exploring further.

# Симуляционные бандлы

> Запускайте до пяти симулируемых транзакций с общим состоянием, где каждый шаг видит предыдущие изменения. Создавайте и изучайте многошаговые сценарии в builder'е симуляций.

Симуляционный бандл запускает до **пяти транзакций последовательно с общим состоянием**: каждый шаг видит изменения состояния, внесённые предыдущим шагом. Используйте бандл всякий раз, когда одна транзакция зависит от другой, например approve, разрешающее последующий `transferFrom`, или депозит, который тратит последующее снятие.

Бандлы используют тот же builder, что и одиночные симуляции. Одиночная симуляция — это просто бандл из одного шага, поэтому при добавлении дополнительных шагов в редакторе ничего не меняется.

<Frame caption="Бандл из трёх шагов: session strip вверху, step rail слева и результат сфокусированного шага справа.">
  <img src="https://mintcdn.com/tenderly/XsEZlaGXYskrtN68/images/simulator-ui/sim-bundle-builder-3steps.webp?fit=max&auto=format&n=XsEZlaGXYskrtN68&q=85&s=fb17e42a65febce9f35464edd350a95f" alt="Simulator UI showing three steps in the bundle rail and step results on the right" width="1600" height="1000" data-path="images/simulator-ui/sim-bundle-builder-3steps.webp" />
</Frame>

## Построение бандла

Начните с **Simulator → New Simulation** и настройте первый шаг как обычно. Затем расширьте бандл из rail'а слева:

* **Добавьте шаг** кнопкой **+** под карточками шагов.
* **Импортируйте транзакцию** кнопкой импорта: вставьте существующий хеш транзакции или сырую полезную нагрузку, и её входы загрузятся как новый шаг.
* **Измените порядок** шагов, перетаскивая их карточки. Шаги выполняются в порядке rail'а.

Каждый шаг независим во всём, кроме состояния: у него собственный переключатель Decoded/Raw, собственное переопределение **From** и собственный набор [cheatcodes](/simulator-ui/parameters#cheatcodes) (переопределения газа и value, пополнение адресов, манипулирование блоком и меткой времени, переопределения состояния, access lists). Cheatcodes выполняются непосредственно перед своим шагом.

Бандл — это единица выполнения: нажатие **Simulate** запускает все шаги сразу, по порядку, в сети и блоке, настроенных в session strip.

## Чтение результатов

После запуска каждая карточка шага в rail'е показывает значок результата:

| Значок          | Значение                                                                           |
| --------------- | ---------------------------------------------------------------------------------- |
| Зелёная галочка | Шаг выполнен успешно.                                                              |
| Красный ✗       | Шаг откатился или завершился до EVM (неправильный calldata, неизвестный контракт). |

Нажмите на любую карточку шага, чтобы сфокусироваться на его индивидуальном результате в правой панели: декодированный вывод, использованный газ и вкладки Events, State, Fund Flow и Gas Profiler для этого шага.

Состояние течёт только вперёд. Баланс, минтованный в шаге 1, виден шагам с 2 по 5, но откат в более позднем шаге не отменяет результаты предыдущих шагов в отображаемом выводе; вид каждого шага отражает состояние в его позиции в последовательности.

## Бандлы в истории симуляций

Выполненные бандлы появляются в списке **Simulator** как единая строка `Bundle (N txs)`, показывающая общую сеть, блок и количество вызовов. Разверните строку, чтобы увидеть каждый шаг как отдельную запись с индивидуальным статусом и функцией.

<Frame caption="Список Simulator: развёрнутый бандл, показывающий строки по шагам, со свёрнутыми строками Bundle (3 txs) ниже.">
  <img src="https://mintcdn.com/tenderly/5rOzguRoBTCVuzKW/images/simulator-ui/sim-bundle-history.webp?fit=max&auto=format&n=5rOzguRoBTCVuzKW&q=85&s=61815de215655590f9ffdc2eaa77d239" alt="Simulator list with an expanded bundle row showing individual mint, approve, and transferFrom steps, and collapsed Bundle rows with call counts" width="1512" height="982" data-path="images/simulator-ui/sim-bundle-history.webp" />
</Frame>

## Ограничения

* Пять шагов на бандл.
* Cheatcodes применяются к шагу. Поверхности cheatcodes уровня бандла нет.
* Бандлы stateless между запусками: повторный запуск снова начинается с настроенного блока. Для постоянного окружения, которое накапливает состояние между множеством транзакций, используйте [Virtual Environments](/virtual-environments/overview).

## Проработанный пример

[Simulate a Token Mint, Approve, and TransferFrom Bundle](/simulations/guides/mint-approve-transfer-bundle) создаёт полный 3-шаговый бандл DAI, включая переопределение состояния, позволяющее mint успешно выполниться, и пошаговые результаты.

Чтобы запускать бандлы программно, см. [Bundled Simulations](/simulations/bundled-simulations) в Simulation API.
