Design Decisions (ADRs)
Architecture Decision Records (ADRs) capture the key technical decisions, their context, alternatives considered, and consequences. Each ADR follows the standard format: Status → Context → Decision → Consequences.
ADR Index
Section titled “ADR Index” ADR-0001: Cost-Optimized Architecture Hub-spoke topology with WAF Cost Optimization as primary pillar
ADR-0002: Bicep Implementation Subscription-scope deployment, module structure, AVM mandate
ADR-0003: AVM Firewall Migration Sequential resource creation to resolve provisioning race conditions
ADR-0004: Deployment Ordering Serialized Firewall → VPN deployment to avoid VNet update conflicts
ADR-0005: Terraform Dual-Track Ship Terraform alongside Bicep for partner flexibility
ADR-0006: Single-Root Composition Terraform single root vs. Bicep two-template split
Summary Table
Section titled “Summary Table”| ADR | Status | Date | Key Decision |
|---|---|---|---|
| ADR-0001 | Proposed | 2026-01-27 | Hub-spoke with cost-optimized SKUs, WAF Cost 9/10 |
| ADR-0002 | Implemented | 2026-01-28 | Subscription-scope Bicep, AVM-first, conditional modules |
| ADR-0003 | Accepted | 2026-01-30 | AVM for Firewall with sequential PIP → Policy → Firewall |
| ADR-0004 | Accepted | 2026-02-02 | dependsOn serialization for Firewall → VPN in full scenario |
| ADR-0005 | Implemented | 2026-04-17 | Terraform dual-track with functional parity, mutual exclusion |
| ADR-0006 | Implemented | 2026-04-17 | Single Terraform root composing MG + subscription scopes |