# ADR-003: Event Bus + Durable Workflow Orchestration

## Status
Accepted

## Date
2026-02-21

## Author
GPUaaS Core Team

## Context
Provisioning and billing are long-running and failure-prone. Request/response-only orchestration is fragile.

## Decision
Adopt event-driven workflows with durable orchestration. Use event bus for domain events and worker-driven async processing.

## Consequences
- Improves resilience and retry/compensation handling.
- Requires idempotency discipline and DLQ/replay operations.
- Adds complexity but prevents hidden coupling and timeout-driven failures.

## Alternatives Considered
- In-process timers and direct orchestration: rejected for reliability/scale.
- Pure cron + synchronous APIs: rejected for poor failure handling.
