Incident lab · origin shield saturation · correlated cache-miss storm
Synthetic postmortem · na-east weekday primetime broadcast · upstream-driven fan-in

Origin-shield saturation
on a correlated cache-miss storm.

A working postmortem on the na-east weekday primetime broadcast where a correlated upstream cache-miss storm fanned into the CDN origin-shield tier past its pre-provisioned ceiling — origin.replay_origin_origin_fetch_qps climbed to 4.2× within a 90-second window, cdn_shield.origin_segment_cache_miss_fanin lifted from 0.11 to 0.62 as the warm edge POPs' cache layer evicted correlated segments, and cdn_shield.queue_depth_concurrent pegged to 1.00 of the slot ceiling — while cohort.reconnect_storm_ratio read at 0.04 baseline (the cohort is calm — the driver is upstream) and edge.egress_kbps sat at 8214 Kbps, FLAT at the expected rate. The Streamwake agentic ops layer classified it as origin_shield_saturation_under_correlated_cache_miss_storm at 84% confidence with cdn_edge_pop_warmup_under_eviction ruled out by name on warm edge POP segment-leg cache-hit, and remediated with an authorization-tiered policy: Tier 0 autonomous under gate (who can shed traffic), Tier 1 surfaced to humans (who can fail open), Tier 2 surfaced for operator-team approval forward (who can escalate) — recovery verified cohort-side + shield-side on the four staged gates T+30 s → T+15 m, NOT infrastructure-green alone.

Protocol: HLS · CMAF · shield-tier · replay-origin · warm-edge-POP cache layer
Window: correlated upstream cache-miss storm · na-east weekday primetime · cohort calm
Streamwake probes: origin.replay_origin_origin_fetch_qps · cdn_shield.origin_segment_cache_miss_fanin · cache.eviction_posture · cdn_shield.queue_depth_concurrent · cdn_shield.queue_p99_wait_ms · origin.replay_concurrency_ceiling_pct · cohort.cohort_join_stall_ratio · cohort.cohort_rebuffer_ratio · cohort.cohort_startup_time_p95_ms · cohort.reconnect_storm_ratio · edge.egress_kbps.

Book a technical demo for Origin shield saturation · correlated cache-miss storm

Lead magnet
Origin shield saturation · correlated cache-miss storm

Read the postmortem — then bring your own incident to Streamwake.

Two ways to engage on this exact failure pattern: book a 30-minute technical demo where we walk through the probe cascade on your source, or hand us an archived incident and watch the agent diagnose it end-to-end.

Both routes land on the scoping intake form — no SDR gate.

Viewer impact

What the cohort saw

The first things to read on any real correlated upstream cache-miss storm incident are the cohort-level numbers on the affected na-east tier — and crucially, the contrast against a cohort that stays calm: cohort.reconnect_storm_ratio at 0.04 baseline (the cohort is not driving the fan-in) and edge.egress_kbps flat at the expected rate (the cohort IS delivering traffic — the upstream origin-shield is the pinch, NOT the cohort's egress shape). Three numbers did the heavy lifting here: the replay-origin cache-miss fan-in, the shield queue depth, and the warm edge POPs' cache layer eviction posture paired with the cohort's connected-state (calm) signal. The figures below are simulated telemetry — the disclosure above applies to every figure on this page.

Co-affected (na-east affected tier · cohort calm)
Sessions whose join stalled behind the upstream origin-shield queue fan-in — while the cohort itself stayed calm on reconnect-storm + egress shape.
~12% of cohort

Roughly 12% of the na-east weekday primetime cohort — session-level late-join stalled behind the shield queue fan-in on the affected cdn-A/atl01 tier, where origin.replay_origin_origin_fetch_qps climbed to 4.2× the tier's pre-provisioned ceiling and cdn_shield.queue_depth_concurrent pegged at 1.00 of the slot ceiling. The cohort itself was calm — cohort.reconnect_storm_ratio read at 0.04 baseline (NOT 1.00 like the marquee live-event viewer-storm page) and edge.egress_kbps sat at 8214 Kbps, FLAT at the expected rate. The reader couldn't get through the shield's backpressure curve on first join, dragging time-to-first-frame and pushing cohort_join_stall_ratio to 0.094 over a 90-second window before the Tier 0 shed landed.

Duration
Window from first upstream replay-origin fan-in variance to last cohort probe returning to baseline.
~36 minutes

~36 minutes between the first replay-origin cache-miss fan-in at T+0m and the cohort-side close-out probes settling within tolerance at T+22m. The postmortem window goes longer than the natural cohort-side close-out settle because the Tier 1 fail-open posture on the shield's circuit-breaker and the Tier 2 operator-team codification of the new origin-failover policy ship after the close-out probes land — so the postmortem window is two-tier: T+0 m → T+22 m on the cohort-side + shield- side close-out, and shaped forward by the Tier 1 fail-open approval + Tier 2 codification that bound forward to the next weekday primetime broadcast.

Surface area
Where the symptom landed — upstream replay-origin + warm edge POP cache layer (NOT cohort egress).
upstream origin-shield · warm edge POP cohort · calm egress

origin.replay_origin_origin_fetch_qps: 4.2× on shield-NA-3 (na-east affected tier · warm edge POP cohort) — the upstream replay-origin fanned into the shield tier past its pre-provisioned ceiling, with cdn_shield.queue_depth_concurrent → 1.00 and cdn_shield.origin_segment_cache_miss_fanin → 0.62 (vs 0.11 pre-event baseline). The discriminator is that the cohort is calm — cohort.reconnect_storm_ratio: 0.04 (BASELINE), edge.egress_kbps: 8214 (flat). The symbol of failure was the upstream origin-shield queue + cache-miss fan-in, NOT the cohort's egress, NOT a viewer-driven reconnect storm.

Classification

How Streamwake classified this incident

Three ranked hypotheses: the top one filing the timeline as origin_shield_saturation_under_correlated_cache_miss_storm · dominant, the second explicitly tagged cdn_edge_pop_warmup_under_eviction · ruled out by so the warm-edge-POP cache layer lane reads correctly (warm edge POPs' segment-leg cache-hit is GREEN — the eviction posture is the correlated upstream pressure, NOT a fresh-cache warm-up on the warm cohort), and the third filed as an alternate: viewer_driven_reconnect_storm_saturation with a low confidence that captures the cohort-reconnect-storm shape before cohort.reconnect_storm_ratio baseline +edge.egress_kbps flat remove it.

Top hypothesis (failure lane)
What the agent named first — the failure category the timeline is filed under.
origin_shield_saturation_under_correlated_cache_miss_storm · dominant · 0.84

origin_shield_saturation_under_correlated_cache_miss_storm — a correlated upstream cache-miss storm fanned into the origin-shield tier past its pre-provisioned ceiling; the warm edge POPs' cache layer evicted correlated segments (cache.eviction_posture on the warm cohort read fail), the replay-origin took the fan-in uphill, and the shield's queue stopped accepting fan-in. The cohort itself was calm — the discriminator against the marquee live-event viewer-storm page. Four signals line up: origin.replay_origin_origin_fetch_qps 4.2× vs 1.05× pre-event baseline, cdn_shield.origin_segment_cache_miss_fanin 0.62 vs 0.11 pre-event baseline (correlated fan-in), cdn_shield.queue_depth_concurrent 1.00 of slot ceiling vs 0.41 pre-event baseline, cdn_shield.queue_p99_wait_ms 4.21s vs 0.21s baseline (exceeds the 1.5s slot budget by ~3×).

Secondary signal (cause lane — ruled out)
The cdn_edge_pop_warmup_under_eviction lane is ruled out by name — discards the fresh-cache warm-up shape that would have gated any CDN-side warm-up runbook lane on this incident.
cdn_edge_pop_warmup_under_eviction · ruled out by · 0.31

cdn_edge_pop_warmup_under_eviction was the secondary signal ranked at 31% — but it's tagged ruled out by so the warm-edge-POP cache-layer lane reads correctly. The warm edge POPs' cdn_shield.segment_leg_cache_hit reads GREEN at the ladder on the affected cohort; the eviction posture is the correlated upstream pressure on the warm cohort, NOT a fresh-cache warm-up on the warm cohort's ladder itself. The dismissal rule was "rank the cause on the warm-edge-POP segment-leg cache-hit posture, not on the player-visible cache-eviction symptom alone"; the upstream-origin-shield-fan-in nature of the failure is the decisive signal pattern.

Severity, region, status
Severity is computed from the co-affected cohort share; region is the geo of the failing probes.
sev3
  • Region: na-east weekday primetime broadcast (cdn-A/atl01 affected tier · warm edge POP cohort)
  • Status: resolved (window closed; Tier 1 fail-open approved; Tier 2 operator-team codification staged)
  • Opened: 2026-08-20 18:42 UTC
  • Spread: contained to the na-east affected tier — apac and eu-west weekday primetime cohorts unaffected; adjacent non-primetime cohorts on the same vendor reads at baseline; warm edge POPs on the adjacent tiers ship green on segment-leg cache-hit (the eviction posture was CORRELATED to the na-east affected tier only).
Confidence
Top hypothesis share of the three ranked hypotheses; remaining mass is split between the ruled-out cdn_edge_pop_warmup_under_eviction and the alternate viewer_driven_reconnect_storm_saturation.
84 / 100

Above the 80% threshold the agent treats as a confident top-hypothesis filing. cdn_edge_pop_warmup_under_eviction · 0.31 was cleared explicitly because the warm edge POPs' cdn_shield.segment_leg_cache_hit reads GREEN at the ladder on the affected cohort — the warm-edge-POP cache layer lane is healthy at the affected cohort, ruling out a fresh-cache warm-up on the warm cohort. The cohort.reconnect_storm_ratio: 0.04 (baseline) + edge.egress_kbps: 8214 (flat) pairing clears viewer_driven_reconnect_storm_saturation as the alternate — the discriminator against the marquee live-event viewer-storm page on this incident.

Authorization-tiered remediation policy

Who clears the gate

The governed-action policy on this incident is split across three authorization tiers — the agent sheds correlated cache-misses to warm edge POPs autonomously under an explicit gate (Tier 0 — who can shed traffic), surfaces the fail-open posture on the shield's circuit-breaker to on-call + reliability team (Tier 1 — who can fail open), and hands the new origin-failover policy + warm-edge-POP cache-routing logic codification to operator-team sign-off forward (Tier 2 — who can escalate). Each tier has an explicit gate; each gate names the threshold before the action lands, and the lane the action belongs to is what makes the split distinct from a generic postmortem.

Tier 0 · autonomous under gate · who can shed traffic
agent-emitted
Tier 0 acts on its own
Authorization tier 0 — agent may clear the gate and act autonomously. The agent sheds correlated cache-misses to warm edge POPs without a human in the loop.

shed_correlated_cache_misses_to_warm_pops_via_origin_failover autonomous under gate: top_confidence >= 0.80 AND cdn_shield.origin_segment_cache_miss_fanin >= 0.35 AND cohort_demand.in_window_constraint == true on the affected cohort. The agent sheds the correlated cache-miss storm fan-in to a warm edge POP that has the segments cached — origin.replay_origin_origin_fetch_qps drops below 1.0× (within pre-provisioned envelope); the cohort_join_stall_ratio collapses below 0.05 within ten consecutive 30s windows. The cohort itself is untouched — the upstream fan-in is rerouted, the cohort's egress shape is preserved (FLAT at expected rate by definition on this incident).

Tier 1 · surfaced to humans · who can fail open
surfaced
Tier 1 needs shield circuit-breaker operator approval
Authorization tier 1 — surfaces to on-call + reliability team. The fail-open posture on the shield's circuit-breaker requires operator-team-owned config the agent cannot perform.

fail_open_on_shield_ceiling_via_origin_circuit_breaker surfaced to humans: cdn_shield.queue_concurrency_ceiling_pct == 1.00 AND viewer_visible_config_change_required. The fail-open posture on the shield's circuit-breaker is surfaced to on-call + reliability team — the trip thresholds are operator-team-owned config, NOT probe-driven. The agent holds off emitting the fail-open; the operator team code-approves the shield's circuit-breaker posture before the next correlated cache-miss storm window. A misanchor that surfaces on a future primetime isn't masked by a "we reconciled" close-out.

Tier 2 · operator-team sign-off forward · who can escalate
approval forward
Tier 2 codifies the new origin-failover policy
Authorization tier 2 — surfaces for operator-team sign-off forward. Configuration-owner sign-off on the new origin-failover policy + warm-edge-POP cache-routing logic going into the cohort probe fan-in.

escalate_origin_shield_quota_codification_to_playbook surfaced for operator-team approval forward: incident_resolved AND cohort_side close-out signals cleared. This is the learn-loop act — once the lane is closed, the operator team signs off on codifying the new origin-failover policy (correlated cache-miss-storm fan-in handling + origin.replay_origin_origin_fetch_qps ladder ceiling + warm-edge-POP failover policy) into the cohort probe fan-in for future correlated cache-miss storm windows; the new probes are pinned for the next four weekday primetime windows so the false-positive rate can be measured before promotion.

Chronology

Incident timeline

Ten events: detection on the na-east affected tier, classification across three ranked hypotheses (with the cdn_edge_pop_warmup_under_eviction lane tagged ruled out by and theviewer_driven_reconnect_storm_saturation lane tagged alternate), five acts the agent took under the authorization-tiered governed-action gates (Tier 0 autonomous under gate + the four staged verification gates T+30 s → T+15 m), three acts it surfaced to humans (Tier 1 shielded fail-open approved, Tier 2 operator-team sign-off forward, plus the operator ack), and the resolution. The right-hand "act" + "tier" tags are what makes this postmortem distinct from a generic write-up — they pin the split between autonomous agentic ops, the shield's circuit-breaker operator approval, and the operator-team sign-off forward. All times below are simulated telemetry — the disclosure at the top of this page applies to every minute offset on the timeline.

Today

10 events
  • T+0m
    Detection
    by cohort agent · na-east (atl01 shield tier · warm edge POP cohort)
    act · autonomous

    Upstream replay-origin origin_fetch_qps climbing; cdn_shield.origin_segment_cache_miss_fanin lifts; cohort REJECTED as a viewer-storm driver

    origin.replay_origin_origin_fetch_qps climbed to 4.2× the tier's pre-provisioned ceiling within a 90-second window; cdn_shield.origin_segment_cache_miss_fanin read 0.62 vs 0.11 pre-event baseline (correlated fan-in from the warm edge POPs into the replay-origin); cache.eviction_posture on the warm edge POPs read fail (correlated eviction posture across the warm cohort — segment-leg cache-hit failing on the SAME tier the shield is queueing on); cdn_shield.queue_depth_concurrent crossed 0.86 → 1.00 of the slot ceiling; cdn_shield.queue_p99_wait_ms climbed to 4.21s (exceeds the 1.5s slot budget by ~3×); cohort.cohort_join_stall_ratio lifted to 0.094 (vs 0.018 baseline) and cohort.cohort_rebuffer_ratio to 0.062 (vs 0.012 baseline); cohort.cohort_startup_time_p95_ms read 7430ms — BUT: cohort.reconnect_storm_ratio reads at 0.04 baseline AND edge.egress_kbps 8214 Kbps flat at expected rate. The cohort is calm. The driver is upstream.

    Aug 20, 06:42:11 PM
  • T+1m
    Classification
    by Streamwake reliability agent
    act · autonomous

    Ranked: origin_shield_saturation_under_correlated_cache_miss_storm · dominant (0.84) · cdn_edge_pop_warmup_under_eviction · ruled out by (0.31) · viewer_driven_reconnect_storm_saturation · alternate (0.22)

    Top hypothesis reads 84% confidence. cdn_edge_pop_warmup_under_eviction is ruled out because the warm edge POPs on the backend tier read segment-leg cache-hit GREEN on the affected cohort at the ladder — the eviction posture is the correlated upstream pressure, NOT a fresh-cache warm-up on the warm cohort. viewer_driven_reconnect_storm_saturation is the alternate (cohort.reconnect_storm_ratio reads at 0.04 baseline AND edge.egress_kbps is flat at 8214 Kbps — the discriminator against the marquee live-event viewer-storm page on this incident).

    Aug 20, 06:43:11 PM
  • T+2m
    Automated action
    by Streamwake reliability agent
    act · autonomous
    Tier 0

    Governed · Tier 0 autonomous under gate: shed_correlated_cache_misses_to_warm_pops_via_origin_failover (who can shed traffic)

    top_confidence 0.84 ≥ 0.80 gate cleared; cdn_shield.origin_segment_cache_miss_fanin 0.62 ≥ 0.35 gate cleared; cohort.demand.in_window_constraint == true gate cleared (marquee broadcast window shape). The agent sheds correlated cache-misses to warm edge POPs via origin failover — the upstream points the warm cohort to a warm edge POP that has the segments cached, the correlated cache-miss storm fan-in routes around the affected tier, and cdn_shield.origin_segment_cache_miss_fanin clears below 0.18 within 90 seconds.

    Aug 20, 06:44:11 PM
  • T+5m
    Status change
    by Streamwake reliability agent
    act · autonomous

    T+30 s staged gate — edge POP cache-hit re-anchor (NOT a close-out by itself)

    cdn_shield.warm_edge_pop_segment_leg_cache_hit flipped pass on the routed warm edge POP within the first same-length cohort window; cdn_shield.origin_segment_cache_miss_fanin dropped from 0.62 → 0.18 within the same window; cohort.demand.in_window_constraint still true. Edge-side observable is GREEN — but this is the FIRST gated verification, NOT a close-out. The T+2 m shield queue depth collapsed gate is next.

    Aug 20, 06:47:11 PM
  • T+7m
    Status change
    by Streamwake reliability agent
    act · autonomous

    T+2 m staged gate — shield queue depth collapsed (NOT a close-out by itself)

    cdn_shield.queue_depth_concurrent dropped from 1.00 → 0.41 (within pre-event baseline tolerance on the affected tier); cdn_shield.queue_p99_wait_ms cleared to 0.32s (within the 1.5s slot budget); origin.replay_concurrency_ceiling_pct re-anchored at 0.62 (well within ceiling). Shield-side gate cleared — but this is the SECOND gated verification, NOT a close-out. The T+5 m cohort close-out probes are next.

    Aug 20, 06:49:11 PM
  • T+9m
    Surfaced to human
    by agent → on-call + reliability team
    act · surfaced to humans
    Tier 1

    Governed · Tier 1 surfaced to humans: fail_open_on_shield_ceiling_via_origin_circuit_breaker (who can fail open)

    Viewer-visible config change required. The fail-open posture on the shield's circuit-breaker is surfaced to on-call + reliability team — the trip thresholds are operator-team-owned config, NOT probe-driven. The agent holds off emitting the fail-open and the operator team code-approves the shield's circuit-breaker posture before the next correlated cache-miss storm window.

    Aug 20, 06:51:11 PM
  • T+10m
    Automated action
    by Streamwake reliability agent
    act · autonomous

    T+5 m staged gate — cohort join-stall + rebuffer + startup-time within tolerance (PARTIAL close-out)

    cohort.cohort_join_stall_ratio settled at 0.022 (within baseline tolerance 0.05); cohort.cohort_rebuffer_ratio settled at 0.013 (within tolerance); cohort.cohort_startup_time_p95_ms settled at 2010ms (within startup-time baseline tolerance). The cohort side reads GREEN — but this is the THIRD gated verification, a PARTIAL close-out, NOT the full close-out. The T+15 m full cohort re-anchor gate is next; cohort.reconnect_storm_ratio still at 0.04 baseline; edge.egress_kbps still 8214 Kbps flat.

    Aug 20, 06:52:11 PM
  • T+12m
    Surfaced to human
    by on-call
    act · surfaced to humans

    On-call ack; fail-open posture on the shield circuit-breaker approved

    On-call + reliability team acked within 88s; the shield's circuit-breaker posture approved against the next correlated cache-miss storm window; reviewer confirmed the agent's rank and that the Tier 0 shed_correlated_cache_misses_to_warm_pops had already prevented the cohort from doubling into a secondary cohort-side stall before the upstream fan-in dropped.

    Aug 20, 06:54:11 PM
  • T+22m
    Automated action
    by Streamwake reliability agent
    act · autonomous

    T+15 m staged gate — full cohort re-anchor + replay-origin concurrency back to baseline (FULL close-out)

    cohort.cohort_join_stall_ratio, cohort.cohort_rebuffer_ratio, cohort.cohort_startup_time_p95_ms settle within tolerance over the next same-length cohort window; origin.replay_concurrency_ceiling_pct re-anchors at 0.41 (well within ceiling — back to pre-event baseline); origin.replay_origin_origin_fetch_qps re-anchors at 1.05x (within pre-provisioned envelope); cdn_shield.queue_depth_concurrent at 0.41 (within pre-event baseline). Cohort-side + shield-side close-out signals cleared on all four gated verifications — NOT on cdn_shield.queue_depth_concurrent returning to baseline alone.

    Aug 20, 07:04:11 PM
  • T+36m
    Resolution
    by Operator + agent
    act · surfaced to humans
    Tier 2

    Incident resolved; Tier 0 shed landed autonomously; Tier 1 fail-open approved; Tier 2 operator-team codification pass staged

    Cohort-side + shield-side close-out signals cleared on the na-east affected tier (cohort_join_stall_ratio + cohort_rebuffer_ratio + cohort_startup_time_p95_ms + origin.replay_concurrency_ceiling_pct + cdn_shield.queue_depth_concurrent all within tolerance over the next same-length cohort window) — NOT on cdn_shield.queue_depth_concurrent returning to baseline alone, NOT on edge.egress_kbps staying FLAT at expected baseline (cohort is calm by definition on this incident — that's the discriminator, not a close-out). Tier 2 operator-team sign-off forward staged for the next four weekday primetime windows — the learn-loop codification of the correlated cache-miss-storm probe + the new origin-failover policy.

    Aug 20, 07:18:11 PM
Autonomous acts the agent did
Five events the Streamwake reliability agent executed without a human in the loop. Each one was a governed action that cleared the gate — never an override.
  • classify · ranked three hypotheses with confidence in 90 s; cdn_edge_pop_warmup_under_eviction · ruled out by tagged (warm edge POPs' segment-leg cache-hit GREEN at the ladder)
  • Tier 0 shed · shed_correlated_cache_misses_to_warm_pops_via_origin_failover under the top_confidence ≥ 0.80 + cdn_shield.origin_segment_cache_miss_fanin ≥ 0.35 + cohort_demand.in_window_constraint gate (who can shed traffic)
  • T+30 s status · edge POP cache-hit re-anchor observed (NOT close-out — first staged gate)
  • T+2 m status · shield queue depth collapsed (NOT close-out — second staged gate)
  • T+5 m status · cohort close-out probes within tolerance (PARTIAL close-out — third staged gate)
  • T+15 m status · full cohort re-anchor + replay-origin concurrency back to baseline (FULL close-out — fourth staged gate)
Acts the agent surfaced to humans
Three events the agent did not act on its own — each one needed a shield circuit-breaker operator, a reliability-team owner, or an operator-team sign-off forward. The agent held off emitting a shield circuit-breaker trip that would have masked the cohort-side close-out signal.
  • on-call + reliability team · Tier 1 surface — code-approved the fail_open_on_shield_ceiling_via_origin_circuit_breaker posture for the next correlated cache-miss storm window (who can fail open)
  • operator team · Tier 2 surface — sign-off forward on codifying the new origin-failover policy + warm-edge-POP cache-routing logic into the cohort probe fan-in (who can escalate)
  • reliability team · assigned the public postmortem write-up (this page) — the learn-loop section codifies the audit step on this incident
Recovery criteria

What "recovery" actually looks like on this incident

Recovery on this incident is verified across the four staged gates T+30 s → T+15 m on the affected cohort + on the upstream origin-shield tier — NOT on infrastructure-green alone. The cache-layer / warm-edge-POP / shield-lane posture is part of the recovery lens, but it does not by itself prove the cohort is delivering green playback; the cohort-side close-out probes do. The audit step writes the close-out signal into the playbook as a four-gate verification — edge POP cache-hit re-anchor at T+30 s · shield queue depth collapsed at T+2 m · cohort close-out probes within tolerance at T+5 m · full cohort re-anchor + replay-origin concurrency back to baseline at T+15 m.

Close-out signal
Four staged gates — T+30 s · T+2 m · T+5 m · T+15 m
Cohort-side + shield-side close-out signals — what the postmortem declares recovered as a four-gate verification ladder.

Recovery on this incident is verified by a four-gate verification ladder: T+30 s — edge POP cache-hit re-anchor clears the warm-edge-POPs'cdn_shield.segment_leg_cache_hit on the routed warm POP (first staged gate, NOT a close-out by itself); T+2 m — shield queue depth collapsed clears cdn_shield.queue_depth_concurrent below 0.80 AND cdn_shield.queue_p99_wait_ms under 1.5s on the affected tier (second staged gate, NOT a close-out by itself); T+5 m — cohort close-out probes within tolerance (cohort_join_stall_ratio + cohort_rebuffer_ratio + cohort_startup_time_p95_ms) clears below tolerance on the affected cohort (third staged gate, PARTIAL close-out); T+15 m — full cohort re-anchor (origin.replay_concurrency_ceiling_pct re-anchors at 0.41 on the affected tier + origin.replay_origin_origin_fetch_qps re-anchors at 1.05× within pre-provisioned envelope) — full close-out (fourth staged gate).

NOT a close-out signal
Why each gauge is NOT a close-out (and why it isn't)
The shield queue + warm-edge-POP + cohort egress gauges that are NOT a close-out — each requires the cohort-side clear to count as recovered.

cdn_shield.queue_depth_concurrent returning to its pre-event baseline alone is NOT a close-out — the shield queue clears geometrically (the slot has headroom again) without necessarily clearing the cohort's late-join stall. The T+30 s edge POP cache-hit re-anchor is NOT a close-out — the warm-edge-POPs' cache layer clears before the cohort lands downstream. The T+2 m shield queue depth collapsed read is NOT a close-out — the shield side cleared ahead of the cohort side, as expected. The cohort egress staying FLAT at expected baseline is NOT a close-out — the cohort is calm by definition on this incident (calm cohort = upstream driven), but calibration-vs-shape is not the same as calibration-vs-cohort-delivering-green-playback.

Audit step on this incident
'Upstream fan-in cleared' ≠ 'cohort is delivering green playback'
The audit step on this incident writes the close-out signal into the playbook as "verify the four staged gates on the cohort-side + shield-side close-out probes settle within tolerance over the next same-length cohort window" — not 'verify the upstream origin-shield queue returned to baseline', not 'verify the warm-edge-POPs\' cache layer cleared'.

A fix that normalizes origin.replay_origin_origin_fetch_qps + cdn_shield.origin_segment_cache_miss_fanin + cdn_shield.queue_depth_concurrent without clearing the affected cohort's join stall, rebuffer, or startup-time within tolerance is a fix that didn't reach the cohort. The cohort was calm by definition on this incident — meaning the upstream origin-shield fan-in is the pinch, NOT a viewer-side reconnect storm — so a read that declares recovery on the upstream gauges alone is the read that misses the lane forward. The audit step codifies it: cohort-side + shield-side four-gate verification, NOT infrastructure-green alone.

Anatomy

Anatomy of the evidence packet

The two packets on the failing source — an origin-shield probe packet on the na-east affected tier + warm edge POP cohort (with the upstream replay-origin origin_fetch_qps climbing past the tier's pre-provisioned ceiling, the cache-miss fan-in lifting correlated across the warm cohort, and the cohort itself staying CALM on reconnect-storm + edge egress shape — the discriminator against the marquee live-event viewer-storm page), and the agent timeline response with the three ranked hypotheses, the authorization-tiered remediation policy, and the explicit four staged gates T+30 s → T+15 m. The probe packet is what the agent decided on; the timeline response is what the agent emitted.

Origin-shield probe packet (na-east affected tier · warm edge POP cohort, T+0m)
GET /live/event/stream.m3u8 HTTP/1.1
host: cdn.example.com
accept: application/vnd.apple.mpegurl

----- cycle 0 (T+0m, before shed_correlated_cache_misses_to_warm_pops + fail_open_on_shield_ceiling) -----
# manifest returned clean by the shield tier, queue depth climbing — UPSTREAM-driven
HTTP/2 200
content-type: application/vnd.apple.mpegurl
server-timing: manifest-fetch;dur=58
x-cdn: cdn-A/atl01                          ← affected tier (origin-shield target)
x-packager: pkg-prime-04
x-shield-tier: shield-NA-3                  ← the affected replay-origin tier
xo-content-digest: sha256=...

#EXTM3U
#EXT-X-VERSION:9
#EXT-X-TARGETDURATION:6
#EXT-X-MEDIA-SEQUENCE:84217
#EXT-X-MAP:URI="init.mp4"
#EXTINF:6.000,
084217.ts

# origin.replay_origin_origin_fetch_qps:    4.2×  (correlated cache-miss storm uphill into the tier's pre-provisioned ceiling)
# cdn_shield.origin_segment_cache_miss_fanin: 0.62  (vs 0.11 pre-event baseline — correlated fan-in
#                                                       from the warm edge POPs into the replay-origin)
# cache.eviction_posture on warm edge POPs:   fail  (correlated eviction posture across the warm cohort;
#                                                     segment-leg cache-hit failing on the SAME tier the shield is queueing on)
# cdn_shield.queue_depth_concurrent:         1.00  (slot ceiling — vs 0.41 pre-event baseline)
# cdn_shield.queue_p99_wait_ms:              4.21  (vs 0.21s baseline; exceeds the 1.5s slot budget)
# cdn_shield.queue_concurrency_ceiling_pct:   1.00  (the shield has stopped accepting fan-in)
# origin.replay_concurrency_ceiling_pct:     0.94  (replay-origin playing out — JUST UNDER ceiling;
#                                                     upstream is queueing, replay-origin is hot)
# cdn_shield.warm_edge_pop_segment_leg_cache_hit: fail  (warm edge POPs' segment-leg green fails
#                                                            on the same tier — the warm cohort shares the fate)
# edge.egress_kbps:                          8214  (FLAT at expected baseline — cohort IS delivering traffic)
# edge.manifest_route_5xx_ratio:             0.000 (no 5xx; the shield is queueing, not erroring)
# cohort.cohort_join_stall_ratio:            0.094 (vs 0.018 baseline, 90s cohort window — late-join
#                                                     stalled behind the queue tail on the affected tier)
# cohort.cohort_rebuffer_ratio:              0.062 (vs 0.012 baseline — playback stalled on the affected tier)
# cohort.cohort_startup_time_p95_ms:         7430  (vs 1840 baseline — cohort start-up time hitting the 8s threshold)
# cohort.reconnect_storm_ratio:              0.04  ← BASELINE — NOT a viewer-driven storm. The cohort is calm.
# cohort.demand.in_window_constraint:        true  (cohort is in the marquee broadcast window — demand is constrained)
# encoder.bitrate_target_delta_pct:          0.18  (within baseline — encoder profile reads clean)
# origin.replay_orig_egress_kbps:            4211  (stable; origin egress not the pinch — shield queue is)
# cdn_pop.partial_segment_warmup_state:      fail  (warm edge POPs NOT primed on this tier — eviction posture
#                                                     is the correlated upstream pressure)
# cdn_pop.affected_region_pop_id:            cdn-A/atl01
# isp.cell_load.on_affected_region:          pass  (cell-load 0.43 vs 0.51 baseline reference)

----- cycle 1 (T+~3m, after shed_correlated_cache_misses_to_warm_pops_via_origin_failover) -----
HTTP/2 200
content-type: application/vnd.apple.mpegurl
server-timing: manifest-fetch;dur=32
x-cdn: cdn-A/atl01
x-shield-tier: shield-NA-3-shedded          ← correlated fan-in routed to a warm POP
xo-content-digest: sha256=...

#EXTM3U
#EXT-X-VERSION:9
#EXT-X-TARGETDURATION:6
#EXT-X-MEDIA-SEQUENCE:84221
#EXT-X-MAP:URI="init.mp4"
#EXTINF:6.000,
084221.ts

# origin.replay_origin_origin_fetch_qps:    0.91×  (correlated cache-miss storm at bay — fan-in routed
#                                                      to a warm edge POP that has the segments cached)
# cdn_shield.origin_segment_cache_miss_fanin: 0.18  (within pre-event baseline)
# cache.eviction_posture on warm edge POPs:   pass  (correlated eviction posture cleared on the warm cohort)
# cdn_shield.queue_depth_concurrent:         0.41  (within the slot's pre-event baseline)
# cdn_shield.queue_p99_wait_ms:              0.32  (within slot budget)
# origin.replay_concurrency_ceiling_pct:     0.62  (replay-origin playing out — within ceiling)
# cdn_shield.warm_edge_pop_segment_leg_cache_hit: pass  (warm edge POPs' segment-leg green once routed)
# edge.egress_kbps:                          8214  (FLAT at expected baseline — cohort continues to deliver traffic)
# cohort.cohort_join_stall_ratio:            0.022 (within baseline tolerance — within cohort_baseline)
# cohort.cohort_rebuffer_ratio:              0.013 (within baseline tolerance)
# cohort.cohort_startup_time_p95_ms:         2010  (within startup_time baseline tolerance)
# cohort.reconnect_storm_ratio:              0.04  ← STILL BASELINE — the cohort has not changed shape;
#                                                     it was never the driver
# cohort.demand.in_window_constraint:        true  (still in marquee broadcast window)
# governed_action_emitted:                   shed_correlated_cache_misses_to_warm_pops_via_origin_failover,
#                                             fail_open_on_shield_ceiling_via_origin_circuit_breaker,
#                                             surface_origin_shield_quota_codification_to_operator_team
Upstream replay-origin smoking gun (the load-bearing trio)
These are the four signals that, together, file the origin_shield_saturation_under_correlated_cache_miss_storm hypothesis — with the warm-edge-POP segment-leg cache-hit ruling the warmup lane out by name.
  • origin.replay_origin_origin_fetch_qps 4.2× (correlated cache-miss storm uphill into the tier's pre-provisioned ceiling — vs 1.05× pre-event baseline)
  • cdn_shield.origin_segment_cache_miss_fanin 0.62 vs 0.11 pre-event baseline (correlated fan-in across the warm edge POPs into the replay-origin)
  • cdn_shield.queue_depth_concurrent 1.00 of slot ceiling (vs 0.41 pre-event baseline)
  • cdn_shield.queue_p99_wait_ms 4.21 (exceeds 1.5s slot budget by ~3×)
  • cohort.reconnect_storm_ratio → 0.04 (BASELINE) the cohort is calm. edge.egress_kbps → 8214 Kbps, FLAT at expected baseline — the cohort IS delivering traffic. cdn_shield.warm_edge_pop_segment_leg_cache_hit → fail on the SAME tier, but pass at the ladder when routed — ruling out a fresh-cache warm-up on the warm cohort.
Agent timeline response (ranked hypotheses + authorization-tiered remediation policy)
{
  "stream_id": "ckshieldsatcorrcachemiss6185",
  "source": "https://cdn.example.com/live/event/stream.m3u8",
  "protocol": "HLS / CMAF / shield-tier / replay-origin / warm-edge-POP cache layer",
  "checked_at": "2026-08-20T18:42:11Z",
  "ranked_hypotheses": [
    {
      "rank": 1,
      "hypothesis": "origin_shield_saturation_under_correlated_cache_miss_storm",
      "tag": "dominant",
      "confidence": 0.84,
      "evidence_signals": [
        "origin.replay_origin_origin_fetch_qps → fail (4.2× the tier's pre-provisioned ceiling — correlated cache-miss storm fan-in uphill into the replay-origin)",
        "cdn_shield.origin_segment_cache_miss_fanin → fail (0.62 vs 0.11 pre-event baseline — CORRELATED fan-in across the warm edge POPs into the replay-origin)",
        "cache.eviction_posture on warm edge POPs → fail (correlated eviction posture across the warm cohort — segment-leg cache-hit failing on the SAME tier the shield is queueing on)",
        "cdn_shield.queue_depth_concurrent → fail (1.00 of slot ceiling vs 0.41 pre-event baseline — the shield has stopped accepting fan-in)",
        "cdn_shield.queue_p99_wait_ms → fail (4.21s vs 0.21s baseline; exceeds the 1.5s slot budget)",
        "cdn_shield.queue_concurrency_ceiling_pct → fail (1.00 — slot reads at ceiling; origin-failover eligible)",
        "origin.replay_concurrency_ceiling_pct → warn (0.94 — replay-origin playing out — JUST UNDER ceiling; upstream is queueing, replay-origin is hot)",
        "cohort.cohort_join_stall_ratio → fail (0.094 vs 0.018 baseline, 90s cohort window — late-join stalled behind the queue tail)",
        "cohort.cohort_rebuffer_ratio → fail (0.062 vs 0.012 baseline — playback stalled on the affected tier)",
        "cohort.cohort_startup_time_p95_ms → fail (7430ms vs 1840ms baseline — start-up time hitting the 8s threshold)",
        "cohort.reconnect_storm_ratio → pass at 0.04 (BASELINE — discriminator against a viewer-driven reconnect storm; the cohort is calm, the upstream origin is the driver)",
        "edge.egress_kbps → pass at 8214 Kbps (FLAT at expected baseline — discriminator: cohort IS delivering traffic; the upstream origin-shield fan-in is the pinch, NOT the cohort's egress)",
        "edge.manifest_route_5xx_ratio → pass (no 5xx — the shield is queueing, not erroring)",
        "encoder.bitrate_target_delta_pct → pass (0.18 within baseline — encoder profile reads clean; failure is upstream)")
      ]
    },
    {
      "rank": 2,
      "hypothesis": "cdn_edge_pop_warmup_under_eviction",
      "tag": "ruled_out_by",
      "confidence": 0.31,
      "evidence_signals": [
        "warm edge POPs' cdn_shield.segment_leg_cache_hit reads pass AT BASE TIER (the warm cohort has the segments in cache)",
        "correlated eviction posture on the warm edge POPs is a STAGE-shaped signal — but on backend warm edge cohorts, segment_leg cache-hit is GREEN at the ladder, so the failure cannot be a fresh-cache warm-up on the warm cohort's ladder",
        "the segment-leg cache-hit posture on cdn_pop.partial_segment_warmup_state is fail (warm edge POPs NOT primed on this tier — eviction posture is the correlated upstream pressure, NOT a clean cache eviction on the warm cohort)"
      ]
    },
    {
      "rank": 3,
      "hypothesis": "viewer_driven_reconnect_storm_saturation",
      "tag": "alternate",
      "confidence": 0.22,
      "evidence_signals": [
        "cohort.reconnect_storm_ratio reads at 0.04 — BASELINE, NOT 1.00 like the marquee live-event viewer-storm page",
        "edge.egress_kbps reads 8214 Kbps FLAT at expected baseline — the cohort is NOT feeding the queue",
        "if a viewer-driven reconnect storm were stateful, the late-join cohort on the affected tier would also misfire — it is not; the cohort reconnect-storm ratio is at baseline, the cohort_join_stall_ratio is high because of the shield queue tail (NOT a viewer-side reconnect storm)"
      ]
    }
  ],
  "governed_actions": [
    {
      "action":      "shed_correlated_cache_misses_to_warm_pops_via_origin_failover",
      "decision_lane": "autonomous",
      "authorization_tier": "Tier 0",
      "account_name": "who can shed traffic",
      "type":        "governed",
      "gating":      "top_confidence >= 0.80 AND cdn_shield.origin_segment_cache_miss_fanin >= 0.35 AND cohort_demand.in_window_constraint == true",
      "evidence":    "top-hypothesis confidence 0.84; cdn_shield.origin_segment_cache_miss_fanin 0.62; cohort.demand.in_window_constraint == true (marquee broadcast window shape); origin.replay_origin_origin_fetch_qps 4.2x (correlated cache-miss storm uphill into the tier's pre-provisioned ceiling)",
      "expected_effect": "replay_origin_origin_fetch_qps drops below 1.0x (within pre-provisioned envelope); cohort_join_stall_ratio collapses below 0.05 within ten consecutive 30s windows; the correlated cache-miss storm fan-in routes to a warm edge POP that has the segments cached"
    },
    {
      "action":      "fail_open_on_shield_ceiling_via_origin_circuit_breaker",
      "decision_lane": "surfaced_to_humans",
      "authorization_tier": "Tier 1",
      "account_name": "who can fail open",
      "type":        "governed",
      "gating":      "cdn_shield.queue_concurrency_ceiling_pct == 1.00 AND viewer_visible_config_change_required",
      "evidence":    "cdn_shield.queue_concurrency_ceiling_pct pegged at 1.00 on the affected tier; the circuit-breaker trip thresholds are operator-team-owned config, NOT probe-driven; the agent holds off emitting and surfaces the fail-open posture to on-call + reliability team",
      "expected_effect": "on-call + reliability team code-approve the fail-open posture on the shield's circuit-breaker; the shield's queue_concurrency_ceiling_pct re-anchors below 1.00 on the next triggered probe cycle"
    },
    {
      "action":      "escalate_origin_shield_quota_codification_to_playbook",
      "decision_lane": "surfaced_to_humans",
      "authorization_tier": "Tier 2",
      "account_name": "who can escalate",
      "type":        "governed",
      "gating":      "incident_resolved AND cohort_side close-out signals cleared",
      "evidence":    "cohort.cohort_join_stall_ratio + cohort.cohort_rebuffer_ratio + cohort.cohort_startup_time_p95_ms within tolerance over the next same-length cohort window; the operator-team codifies the new origin-failover policy into the playbook after the close-out probe lands; THIS IS THE LEARN-LOOP ACT",
      "expected_effect": "operator-team signs off on pinning the new origin-shield quota policy (correlated cache-miss-storm fan-in handling + replay_origin_origin_fetch_qps ladder ceiling + warm-edge-POP failover policy) into the cohort probe fan-in for future correlated cache-miss storm windows; the false-positive rate is measured over the next four weekday primetime windows before promotion"
    }
  ],
  "verification_window": {
    "close_out_signal": "staged gated verification — T+30 s edge POP cache-hit re-anchor · T+2 m shield queue depth collapsed · T+5 m cohort close-out probes within tolerance · T+15 m full cohort re-anchor + replay-origin concurrency back to baseline",
    "close_out_probes": [
      "cohort.cohort_join_stall_ratio within tolerance over the next same-length cohort window",
      "cohort.cohort_rebuffer_ratio within tolerance",
      "cohort.cohort_startup_time_p95_ms within tolerance",
      "edge.egress_kbps flat at expected baseline (CORRELATED fan-in did NOT alter cohort shape)"
    ],
    "NOT_close_out_signal": [
      "cdn_shield.queue_depth_concurrent returning to baseline alone — PASSES geometrically, does NOT pass cohort-side",
      "origin.replay_concurrency_ceiling_pct returning below 1.00 alone — same caveat",
      "edge.egress_kbps staying FLAT at expected baseline — this discriminator is "what we expected", NOT "what is closing out" (cohort is calm by definition)"
    ],
    "explicit_note": "'replay-origin queue normalized' != 'cohort is delivering green playback'. Recovery is verified cohort-side + shield-side — staged T+30 s → T+15 m. NOT infrastructure-green alone."
  },
  "surfaced_to_humans": [
    {"owner": "on-call",                   "task": "approve the fail_open_on_shield_ceiling_via_origin_circuit_breaker posture before the next correlated cache-miss storm window"},
    {"owner": "reliability team",          "task": "page for the origin-shield saturation root-cause review"},
    {"owner": "operator team",             "task": "codify the new origin-failover policy + warm-edge-POP cache-routing logic into the playbook (Tier 2 · operator-team sign-off forward)"},
    {"owner": "reliability team",          "task": "assign the public postmortem write-up (this page)"}
  ]
}
What the agent emitted (authorization-tiered)
The governed actions ship split across three authorization tiers: Tier 0 autonomous under an explicit gate (who can shed traffic); Tier 1 surfaced because the shield's circuit-breaker is operator-team-owned config (who can fail open); Tier 2 surfaced for operator-team sign-off forward on the new origin-failover policy (who can escalate).
  • Tier 0 shed_correlated_cache_misses_to_warm_pops_via_origin_failover (autonomous under gate: top_confidence ≥ 0.80 + cdn_shield.origin_segment_cache_miss_fanin ≥ 0.35 + cohort_demand.in_window_constraint — who can shed traffic)
  • Tier 1 fail_open_on_shield_ceiling_via_origin_circuit_breaker (surfaced: cdn_shield.queue_concurrency_ceiling_pct == 1.00 + viewer_visible_config_change_required; on-call + reliability team code-approve the shield's circuit-breaker posture — who can fail open)
  • Tier 2 escalate_origin_shield_quota_codification_to_playbook (surfaced for operator-team approval forward: incident_resolved + cohort-side close-out signals cleared; the learn-loop act — who can escalate)
  • surfaced → paged on-call for the origin-shield saturation root-cause review
  • close-out signal → four staged gates on the cohort-side + shield-side: cohort_join_stall_ratio, cohort_rebuffer_ratio, cohort_startup_time_p95_ms, origin.replay_origin_origin_fetch_qpscdn_shield.queue_depth_concurrentcdn_shield.warm_edge_pop_segment_leg_cache_hitsettle within tolerance on the four staged gates T+30 s → T+15 m — NOT cdn_shield.queue_depth_concurrent returning to baseline alone
Timing

Detection, classify, mitigate, recover (simulated telemetry)

Four timing windows on the postmortem timeline, each read off the cohort probe cadence. The figures are simulated telemetry — the disclosure near the top of this page applies to every figure on this list. Note that the close-out window is verified cohort-side + shield-side on the na-east affected tier for the affected window (NOT infrastructure-green alone, NOT cohort egress shape alone).

Detection

~5 s

origin.replay_origin_origin_fetch_qps crossed 1.05× → 4.2× within a 30 s window; the agent surfaced the detector from the upstream replay-origin fan-in at T+5 s on the affected tier.

Time to classify

~1 m

origin_shield_saturation_under_correlated_cache_miss_storm · dominant ranked at 0.84 confidence with three ranked hypotheses at T+1 m — discriminator is cohort.reconnect_storm_ratio at 0.04 baseline + edge.egress_kbps flat at expected rate.

Time to mitigate

~7 m

Tier 0 shed_correlated_cache_misses_to_warm_pops_via_origin_failover queued at T+2 m; cdn_shield.queue_depth_concurrent re-anchored below 0.80 by T+7 m; on-call + reliability team ack on the fail-open posture by T+12 m.

Time to full recovery

~22 m

cohort.cohort_join_stall_ratio + cohort.cohort_rebuffer_ratio + cohort.cohort_startup_time_p95_ms + origin.replay_concurrency_ceiling_pct cleared within tolerance at T+22 m — four staged gates closed cohort-side + shield-side, NOT infrastructure-green alone.

Detect → Classify → Governed Fix

The loop on this incident

Three steps close the lane on a na-east correlated upstream cache-miss storm incident that fans into the origin-shield tier. The fix is split explicitly into the authorization-tiered governed-action branches — Tier 0 acts on its own under the shed-correlated-cache-misses gate (who can shed traffic), Tier 1 surfaces the fail-open posture on the shield's circuit-breaker (who can fail open), Tier 2 surfaces for operator-team sign-off forward on the new origin-failover policy + warm-edge-POP cache-routing logic (who can escalate).

01 · Detect
Upstream replay-origin + warm-edge-POP cache-miss probe fan-in
Upstream replay-origin origin_fetch_qps, cache-miss fan-in across the warm edge POPs, warm-edge-POPs' cache-layer eviction posture, and the cohort's connected- state (calm) signal — so the discriminator against a viewer-driven storm lands.

The probe set fans in across the upstream replay-origin + warm edge POP cohort connected-state lane. The upstream reads origin.replay_origin_origin_fetch_qps → 4.2×, cdn_shield.origin_segment_cache_miss_fanin → 0.62, and cdn_shield.queue_concurrency_ceiling_pct → 1.00; the warm-edge-POPs' cache layer reads cache.eviction_posture → fail on the affected tier; the cohort reads cohort.cohort_join_stall_ratio → 0.094, cohort_rebuffer_ratio → 0.062, and cohort_startup_time_p95_ms → 7430ms. The cohort is CALM: reconnect_storm_ratio: 0.04 (BASELINE), and edge.egress_kbps: 8214 (flat) at expected baseline — the cohort is not driving the fan-in.

02 · Classify
origin_shield_saturation_under_correlated_cache_miss_storm @ 0.84
Ranked with cdn_edge_pop_warmup_under_eviction · ruled out by (0.31) and viewer_driven_reconnect_storm_saturation · alternate (0.22).

The discriminator against the warmup lane is the warm edge POPs' cdn_shield.segment_leg_cache_hit — reads GREEN at the ladder on the affected cohort, so the failure is NOT a fresh-cache warm-up on the warm cohort's ladder. The discriminator against the viewer-driven lane is cohort.reconnect_storm_ratio at 0.04 baseline AND edge.egress_kbps flat at expected baseline — so the cohort is calm and the upstream origin-shield fan-in is the pinch.

03 · Governed Fix
Tier 0 shed (autonomous) · Tier 1 fail-open · Tier 2 codify origin-failover
Three authorization-tiered branches — Tier 0 autonomous under an explicit gate (who can shed traffic); Tier 1 surfaces the fail-open posture on the shield's circuit-breaker (who can fail open); Tier 2 surfaces for operator-team sign-off forward on the new origin-failover policy + warm-edge-POP cache-routing logic (who can escalate).

The Tier 0 autonomous branch sheds correlated cache-misses to warm edge POPs via origin failover — clears the upstream fan-in within T+30 s and the cohort side within T+10 m on the staged gates. The Tier 1 surface branch surfaces the fail-open posture on the shield's circuit-breaker for on-call + reliability team approval before the next correlated cache-miss storm window. The Tier 2 forward branch codifies the new origin-failover policy + warm-edge-POP cache-routing logic into the cohort probe fan-in for future correlated cache-miss storm windows. Recovery is verified cohort-side + shield-side across the four staged gates T+30 s → T+15 m on the na-east affected tier.

Recommended fix (Governed)

Shed to a warm POP — or fail-open on the shield's circuit-breaker.

On a na-east weekday primetime broadcast where a correlated upstream cache-miss storm fans into the origin-shield tier past its pre-provisioned ceiling, the governed fix is a three-arm branch: an autonomous arm that sheds correlated cache-misses to warm POPs under explicit gates (Tier 0 — who can shed traffic), a surfaced-to-humans arm that fails-open on the shield's circuit-breaker (Tier 1 — who can fail open), and a forward-surfaced arm that codifies the new origin-failover policy into the cohort probe fan-in (Tier 2 — who can escalate). The three arms close the lane in the same incident window and forward.

01Streamwake agent — shed to a warm POP (Tier 0 autonomous)
Tier 0 · agent-emitted

Emit shed_correlated_cache_misses_to_warm_pops_via_origin_failover — the upstream origin-shield route the correlated fan-in to a warm edge POP that has the segments cached; the warm-edge-POPs' cache layer clears the fail and the correlated fan-in drops below the origin shield's pre-provisioned ceiling. The fix is Tier 0 autonomous under gate (top_confidence >= 0.80 AND cdn_shield.origin_segment_cache_miss_fanin >= 0.35 AND cohort_demand.in_window_constraint == true on the affected cohort) and surfaced for operator-team sign-off forward outside that gate so the operator team can review the false-positive rate before the shed lands. The cohort itself is untouched — the upstream fan-in is rerouted, the cohort's egress shape is preserved (FLAT at expected rate by definition on this incident).

Verification (cohort-side + shield-side, four staged gates)

cdn_shield.warm_edge_pop_segment_leg_cache_hit clears within the first same-length cohort window (T+30 s staged gate — first gate, NOT close-out); cdn_shield.queue_depth_concurrent settles below 0.80 within ten consecutive 30s windows (T+2 m staged gate — second gate, NOT close-out); cohort.cohort_join_stall_ratio + cohort.cohort_rebuffer_ratio + cohort.cohort_startup_time_p95_ms settle within baseline tolerance on ten consecutive 30s windows (T+5 m staged gate — third gate, PARTIAL close-out); origin.replay_concurrency_ceiling_pct + origin.replay_origin_origin_fetch_qps re-anchor below ceiling / within pre-provisioned envelope on a same-length cohort window (T+15 m — four staged gate, FULL close-out).

NOT a close-out signal: cdn_shield.queue_depth_concurrent returning to its pre-event baseline alone. The shield queue clears geometrically (the slot has headroom again) without necessarily clearing the cohort's late-join stall — recovery is verified cohort-side + shield-side on the four staged gates, NOT shield lane alone.

02Shield operator — fail-open on circuit-breaker (Tier 1 surfaced)
Tier 1 · surfaced to humans

Surface fail_open_on_shield_ceiling_via_origin_circuit_breaker — on-call + reliability team code-approves the fail-open posture on the shield's circuit-breaker before the next correlated cache-miss storm window; the trip thresholds are operator-team-owned config, NOT probe-driven. Surfaced to humans because it requires viewer-visible config change the agent cannot perform — a misanchor that surfaces on a future primetime isn't masked by a "we reconciled" close-out. The Tier 1 surface arms the shield's circuit-breaker posture forward so future correlated cache-miss storms don't peg the queue at ceiling before the upstream fan-in reroutes.

Verification (operator-owned)

cdn_shield.queue_concurrency_ceiling_pct re-anchors below 1.00 on the next triggered probe cycle (≤ 1 m after operator approval on the shield's circuit-breaker posture); the fail-open posture ships configured for the next correlated cache-miss storm window so future storms are absorbed before the shield queue pegs at ceiling; on-call + reliability team gets a single pane-of-glass view of the shield's circuit-breaker posture for the next four weekday primetime windows.

NOT a close-out signal: cohort.cohort_reconnect_storm_ratio reading at 0.04 baseline on this incident. The cohort is calm by definition on a correlated upstream cache-miss storm — that's the discriminator, not the close-out. Reading the cohort's connected-state signal as a close-out misses the lane forward.

Caveat — 'cohort is calm' is a discriminator, not a close-out
'cohort.calm' ≠ 'cohort is delivering green playback'
On a correlated upstream cache-miss storm incident, the cohort is calm by definition — meaning the upstream origin-shield fan-in is the pinch, NOT a viewer-driven reconnect storm. The actual close-out signal is the four staged gates on the cohort-side + shield-side close-out probes clearing tolerance over the next same-length cohort window.

A fix that normalizes origin.replay_origin_origin_fetch_qps + cdn_shield.origin_segment_cache_miss_fanin + cdn_shield.queue_depth_concurrent without clearing the affected cohort's join stall, rebuffer, or startup-time within tolerance is a fix that didn't reach the cohort. The cohort was calm by definition on this incident — meaning the upstream origin-shield fan-in is the pinch, NOT a viewer-side reconnect storm — so a read that declares recovery on the upstream gauges alone is the read that misses the lane forward. The audit step on this incident writes the close-out signal into the playbook as "verify the four staged gates on cohort_join_stall_ratio + cohort_rebuffer_ratio + cohort_startup_time_p95_ms + origin.replay_origin_origin_fetch_qps + cdn_shield.queue_depth_concurrent settle within tolerance over the next same- length cohort window" — not "verify the upstream origin-shield returned to baseline", not "verify the warm-edge-POPs' cache layer cleared", not "verify the cohort egress shape is steady".

Learn-loop note

Codifying the new origin-failover policy + cache-miss probe

The Tier 2 surface for operator-team sign-off forward on this incident codifies three probes + one policy change into the cohort probe fan-in — origin.replay_origin_origin_fetch_qps pinned into the cohort fan-in for the next weekday primetime broadcast window (operator-approved; surfaces on every na-east affected tier hit); cdn_shield.origin_segment_cache_miss_fanin pinned into the cohort fan-in for the next four weekday primetime windows so the false-positive rate can be measured before promotion; cdn_shield.warm_edge_pop_segment_leg_cache_hit pinned into the cohort fan-in to track the warm-edge-POPs' cache-layer posture; and the new origin-failover policy (correlated cache-miss-storm fan-in handling + replay-origin-failover ladder ceiling) operator-team approved forward.

Learn-loop · audit step on this incident
Tier 2 · operator-team sign-off forward
'Verify the four staged gates on cohort-side + shield-side probes settle within tolerance over the next same-length cohort window'
NOT 'verify the upstream origin-shield queue returned to baseline'; NOT 'verify the warm-edge-POPs' cache layer cleared'; NOT 'verify the cohort is calm'; NOT 'verify the cohort egress shape is steady'; NOT 'verify the infrastructure lane cleared'.

The audit step codifies that origin.replay_origin_origin_fetch_qps +cdn_shield.origin_segment_cache_miss_fanin + cdn_shield.queue_depth_concurrent + cdn_shield.warm_edge_pop_segment_leg_cache_hit + cohort.cohort_join_stall_ratio + cohort.cohort_rebuffer_ratio + cohort.cohort_startup_time_p95_ms settle within tolerance over the four staged gates — meaning the upstream fan-in + cohort-side close-out fan-in tracks across every correlated cache-miss storm window, the operator-team sign-off goes on the new origin-failover policy + warm-edge-POP cache-routing logic codification, and the cohort fan-in carries the correlated-cache-miss signal lane forward. The cache-leg / shield / warm-edge-POP / cohort egress readings stay CALM through the entire window — those are geometric, NOT cohort-side close-out signals.

Next step

Want Streamwake to catch this on your upstream origin-shield?

Sign up, register a na-east affected-tier probe, and the same origin.replay_origin_origin_fetch_qps · cdn_shield.origin_segment_cache_miss_fanin · cache.eviction_posture · cohort.cohort_join_stall_ratio · cohort.reconnect_storm_ratio probes that produced the timeline above run on every prime-cohort refresh — and surface in a Slack channel, a webhook, or the streams dashboard.

Synthetic Incident — This scenario uses simulated telemetry constructed from documented streaming behaviors. It does not represent a Streamwake customer outage.

Need Streamwake on one of your incidents?
Would you like Streamwake to analyze one of your historical incidents and show where AI could reduce investigation time? (Filed under: Origin shield saturation · correlated cache-miss storm.)
Incident analysis
  • Pick a recent on-call incident — manifest stall, edge miss, player-side stall, or peer congestion.
  • We replay it through the same reliability-agent probe cascade used on the postmortem above.
  • You walk away with a written what-could-have-been-Automated readout, not a sales deck.
Read the next

Related writeups

The closest siblings cover the player-visible symptom lands and the lower-level failure-mode shapes: the existing /incident-lab/origin-shield-saturation-live-event-spike write-up (the marquee live-event viewer-spike form of the SAME origin-shield failure category — the parallel where the cohort itself IS the driver); the ABR ladder drift postmortem (a multi-CDN apac/teal mid-stream failover where the failure is on the cross-CDN ladder manifest, NOT origin-shield queue); the ISP-vs-CDN recovery criteria entry (cdn_failure · ruled out by name + cohort-side + last-mile close-out); the broader ISP-vs-CDN triage guide at /troubleshooting/isp-congestion-vs-cdn-failure (eight player-visible symptoms, one Streamwake probe pattern per row); the manifest fetch timeout storm at a regional edge POP (a regional edge POP returning manifest- timeouts above baseline during a quiet pre-peak window); and the live-event scale-out buffering postmortem (a marquee broadcast with a viewer-storm beyond the pre-provisioned capacity envelope).