{
  "schema": "vedokrok.public-item.v1",
  "release_id": "MHC-RPUB-20260920-75ad787a",
  "url": "/knowledge/give-the-canary-a-fair-comparison-and-a-real-stopping-rule",
  "id": "MHC-D-RESEARCH-0979",
  "version": "0.1.0",
  "title": "Give the canary a fair comparison and a real stopping rule",
  "summary": "Five easy successes can be a very convincing test of the wrong workload.",
  "kind": "checklist",
  "body": "Choose exposure that can reveal the relevant failure, then compare it with an appropriate unchanged control. Define the harmful signals and response before starting. Keep shared infrastructure in view: a bad canary can affect the control and hide the difference you expected to measure.",
  "limits": [
    "A canary still exposes real work to risk. Stateful replay, shared caches and duplicated side effects require isolation, not just a smaller sample."
  ],
  "topics": [
    "work-01-reliable-changes"
  ],
  "intents": [],
  "source_ids": [
    "RS-E781EA1C862F0DE3"
  ],
  "evidence": [
    {
      "claim": "Canary evaluation needs representative exposure, attributable metrics and attention to shared failure domains between canary and control.",
      "source_id": "RS-E781EA1C862F0DE3",
      "role": "supports",
      "note": "The source does not justify a universal safe sample size, duration or rollout percentage.",
      "locator": "Canary population; Metrics Should Be Representative and Attributable"
    }
  ],
  "use_when": [
    "A limited rollout is being used to decide whether a change should reach everyone."
  ],
  "avoid_when": [
    "A canary still exposes real work to risk. Stateful replay, shared caches and duplicated side effects require isolation, not just a smaller sample."
  ],
  "example": "A new batch transformation is tried on representative record types, including exceptions, while the unchanged path supplies a comparison.",
  "check": "The rollout decision states which workloads and observation period were actually covered.",
  "checklist": [
    "Include the important workload types and enough time for delayed effects to appear.",
    "Compare attributable outcome metrics, not just a green deployment status.",
    "Assign a stop or rollback action and the person authorized to trigger it."
  ],
  "sources": [
    {
      "id": "RS-E781EA1C862F0DE3",
      "title": "Canarying Releases",
      "url": "https://sre.google/workbook/canarying-releases/"
    }
  ],
  "relations": [],
  "collections": [
    {
      "id": "RC-8F91DD82E91EA56B",
      "title": "Find the failure without creating a second incident",
      "url": "/collections/find-the-failure-without-creating-a-second-incident"
    }
  ]
}
