Версия источника: 4880e8b4372c96001c2e052be28b68a95d31252b
Синхронизировано: 2026-11-09T11:15:07.649Z
Источник: https://github.com/sergey-from-riders/vibecoding-base/tree/4880e8b4372c96001c2e052be28b68a95d31252b

<a id="caching-outbox"></a>

# Transactional outbox

## Коротко

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

## Плохо

```text
Заказ сохранён. Сбой перед публикацией события.
```

## Хорошо

```text
Транзакция: заказ + запись outbox.
Worker доставляет событие и отмечает результат.
```

## Почему

Outbox закрывает разрыв между сохранением БД и последующей отправкой.

## Когда применять

Доставка всё равно может повториться; получатель должен поддерживать дедупликацию.

## Как проверить

- После аварии событие доставляется без второго бизнес-эффекта?

## Человек

Определяет требуемую гарантию доставки и процедуру сверки.

## Агент

Реализует восстановление и обработку повторов, проверяет сбой зависимости и возвращение в рабочее состояние.

Контроль результата:

- После аварии событие доставляется без второго бизнес-эффекта?

## Источники

- [Implement the Transactional Outbox pattern with Dataverse - Power Platform](https://learn.microsoft.com/en-us/power-platform/architecture/reference-architectures/transactional-outbox-pattern)

Уровень: Зависит от задачи. Проверено: 2026-11-09. Изменено: 2026-11-09.

[Исходный файл](https://github.com/sergey-from-riders/vibecoding-base/blob/4880e8b4372c96001c2e052be28b68a95d31252b/registry/standards/backend/worker/rules/outbox.md)
