CI/CD & Automation (DORA Elite)
Automated pipelines that let teams ship many times a day with low risk — measured by the DORA metrics — via trunk-based development, canary/blue-green releases, and automated rollback.
Definition
Per Web Development Best Practices 2026: Engineering Guide, 2026 CI/CD centers on DORA elite benchmarks: daily (or more) deploys, lead time <1 h, MTTR <1 h, change-failure rate <15%. Default patterns: trunk-based development + short-lived branches with feature flags (LaunchDarkly/Flagsmith) for dark launches; a fully automated pipeline on every PR (lint/format, typecheck, unit/integration, E2E, SAST/DAST/SCA, axe-core); blue-green or canary deploys (5%→20%→100%) with automatic rollback on error-rate/perf regression; GitOps (ArgoCD/Flux/Terraform) for infra; and observability (Sentry/Datadog/OpenTelemetry) with defined SLOs plus post-deploy synthetic monitoring.
Failure modes to avoid: long-lived branches (merge hell), no automated rollback, skipping post-deploy validation, over-testing (>10-min builds), and no observability. Established (DORA is a widely-cited research standard).
Key Properties
- DORA elite: daily+ deploys, <1 h lead time & MTTR, <15% change-failure.
- Trunk-based + feature flags; main always deployable.
- Automated gates in CI (tests + security scans + a11y); block on critical.
- Canary/blue-green + auto-rollback on SLO breach.
- Observability + GitOps as table stakes.
Examples from Sources
| Example | Source |
|---|---|
| Canary rollout 5%→20%→100% with auto-rollback on >5% error rate | Web Development Best Practices 2026: Engineering Guide |
| Secure pipeline blocks merge on critical SAST/DAST/SCA | Web Development Best Practices 2026: Engineering Guide |
In the Sources
| Source | Context |
|---|---|
| Web Development Best Practices 2026: Engineering Guide | Pillar 6 (CI/CD & Automation); overlaps Pillar 3 (security gates). |
Related
Concepts: OWASP Top 10:2025 & Security by Design, Clean Code & Maintainability, Web Architecture & Scalability, Core Web Vitals Entities: Vercel, TypeScript