# Canary Deployment

Record: `arch:canary-deployment`
Kind: pattern
Layer: [Correctness Core](https://banes-lab.com/records/layer/correctness-core.md)
Severity: contextual
Scope: deployment, release
Canonical: https://banes-lab.com/ontology#arch-canary-deployment

## Repair

- Refactored by: Add Canary Stage, Add Automated Guardrails
- Detected by: no staged traffic policy
- Violated by: full rollout without health/error guard
- Measured by: canary error budget, rollback trigger rate
- Enforced by: deployment pipeline

## requires

- [Traffic Splitting](https://banes-lab.com/records/lex/traffic-splitting.md)
- [Observability](https://banes-lab.com/records/arch/observability.md)

## reinforces

- [Progressive Delivery](https://banes-lab.com/records/lex/progressive-delivery.md)

## enables

- [Controlled Exposure](https://banes-lab.com/records/lex/controlled-exposure.md)

## conflicts-with

- [Big-Bang Deployment](https://banes-lab.com/records/lex/big-bang-deployment.md)
- [Big-Bang Release](https://banes-lab.com/records/arch/big-bang-release.md)

## tensions-with

- [Rollout Complexity](https://banes-lab.com/records/lex/rollout-complexity.md)

## tensions

- [Canary Deployment Rollout Complexity](https://banes-lab.com/records/tension/canary-deployment-rollout-complexity.md)
