---
name: rerun-carried-jobs-dedupe-executions
description: "Partial reruns copy untouched jobs into the new attempt with their ORIGINAL started_at — count executions by (run, box, started_at), never attempt rows"
metadata: 
  node_type: memory
  type: project
  originSessionId: 2f3777dc-c8aa-4f97-9970-8e5761283e1b
  modified: 2026-08-04T19:38:29.959Z
---

A GitHub partial rerun (`--failed` / `--job`) copies every untouched job into the new attempt as a row with its ORIGINAL `started_at` and carried conclusion. Listing jobs with `filter=all` therefore shows rows that never executed again: counting rows inflates BOTH numerator and denominator of any red-rate, and a carried `failure` reads as a fresh observation when it is the same single measurement (usher150-r2 attempt 2 showed Linux "failure" carried from attempt 1 — still exactly one Linux observation of that victim at that sha).

**Why:** rate claims (leg-red rate, flake rate) drove the USHER #150 milestone decision; an attempt-row count would have been confidently wrong in both directions. Measured by deployah 2026-08-04 over 15 golden runs: dedupe on (run, box, started_at) → Windows 13 red/21 executions (62%), Linux 2/19 (11%).

**How to apply:** when computing any per-leg rate or citing a rerun leg's conclusion, dedupe jobs on (run id, box, started_at); treat a carried conclusion as the SAME observation, not a repeat. A leg-red rate is still not a test-victim rate — classify each red job by FAIL-row presence before calling it a flake rate ([[failed-job-is-not-a-test-victim]]). Kin: [[gh-run-status-freezes]] (the run-level `status` field freezes too).
