Videos TJPInBjhE4Q
ReviewDebt: a practical framework for scoring every pull request — Sachin Gupta, Ebay
Scene timeline
50 shot(s).
keyframes kept every frame deduplicated
What was stored
- cues
- 274
- whisperx 274
- chunks
- 48
- from 274 cues
- keyframes
- 22
- kept of 50 captured
- frames with text
- 22
- 401 lines read
- chapters
- 0
- from the source metadata
- keyframe bytes
- 4.7 MB
- word timings on 274 cues
Provenance
| stage | state | model | started | took |
|---|---|---|---|---|
fetch |
done | — | 2026-08-11 03:30 | 1m 08s |
stt |
done | — | 2026-08-11 03:31 | 24s |
chunk |
done | — | 2026-08-11 03:32 | 0s |
text_embed |
done | — | 2026-08-11 03:32 | 1s |
keyframe |
done | — | 2026-08-11 03:32 | 57s |
ocr |
done | — | 2026-08-11 03:33 | 16s |
frame_embed |
done | — | 2026-08-11 03:33 | 3s |
Frames, and what the machine read
-
- YOUR CODING AGENT IS1.00
- CREATING REVIEW DEBT0.98
- Sachin Gupta1.00
-
- THE GAP NOBODYIS0.97
- MEASURING1.00
- I0.98
- Coding agents ship PRs faster than humans can trust them.1.00
- +25%0.90
- -27%0.89
- Commits, year over year0.98
- Comments on commits, same year0.99
- GitHub Octoverse 20251.00
- GitHub Octoverse 20250.99
- And at high-Al-adoption teams, median PR review time is up 441.5% — and 31.3% of PRs are merged with zero review. Faros Al 20260.99
- benchmark1.00
- The gap between those two numbers is review debt.1.00
- 21.00
-
- THE STORY EVERYONE TELLS0.99
- I0.97
- How most teams measure coding agents today1.00
- PRs per developer1.00
- +16%1.00
- Vanity1.00
- Faros Al 2026, "Acceleration Whiplash"0.99
- Median PR size0.98
- +63%1.00
- Vanity1.00
- DX 2026 longitudinal study (44 → 72 lines)0.99
- Cycle time, open → merge0.99
- Modestly down1.00
- Misleading1.00
- DX 2026 (PR throughput +8% as Al usage rose 65%)0.98
- 31.00
-
- THE STORY NOBODY TELLS1.00
- I0.99
- What those numbers quietly stop measuring1.00
- Reviewer fatigue1.00
- Late-night merges1.00
- Test theater1.00
- Senior engineers are carrying dramatically0.99
- PRs unreviewed for 4+ days get a thumbs-up0.99
- Tests get added — but they assert what the0.99
- more review load than a year ago. They are0.99
- at 11pm before a Friday deadline.0.99
- code did, not what it should do.1.00
- not happier about it.0.99
- Architectural drift1.00
- Incident lag1.00
- The same problem solved three different1.00
- Bugs traced back to Al PRs land weeks or0.99
- ways in three files. Nobody noticed.1.00
- months later. Nobody connects the dots.1.00
- 41.00
-
- DEFINITION1.00
- I0.98
- Review debt — definition + why it compounds0.99
- Review debt (noun): the accumulating gap between the code a coding agent has produced and the code0.99
- humans have actually reviewed, trusted, and understood.1.00
- Like financial debt — it compounds. The interest is paid in human attention.0.99
- Why it compounds — three feedback loops:0.99
- 11.00
- Agents learn from your codebase1.00
- Yesterday's un-reviewed code becomes tomorrow's Al suggestion.1.00
- 21.00
- Reviewers cede the architectural call0.99
- Attention contracts to syntax; big-picture decisions move to never.0.99
- 31.00
- Velocity expectations reset1.00
- Throughput rises; headcount-per-review falls. No slack to pay del0.99
- 51.00
-
- MEASURING REVIEW1.00
- DEBT1.00
- Five signal families. Ten deterministic checks. No LLM in the loop.1.00
- 目0.99
- ..0.52
- Diff size & coupling0.99
- Test evidence gap1.00
- Al-authorship indicators1.00
- Evidence & rationale gaps1.00
- How big, how spread1.00
- Code added vs. tests added1.00
- Metadata signals of Al0.98
- What the PR doesn't explain1.00
- authorship1.00
- 三0.58
- Directory & ownership spread0.99
- Deterministic = the score is defensible in a real engineer1.00
- How many CODEOWNERS touched1.00
- review. No model-of-the-week.0.99
- Each family rolls up multiple checks: ten checks total, Full mapping in O&A0.97
- 61.00
-
- SIGNAL 1 / 50.92
- I0.99
- Diff size & coupling0.97
- Why agents struggle here1.00
- What it measures0.99
- Agents bias toward "just fix the failing call site." Human1.00
- Net lines changed, plus how many files are touched and1.00
- engineers route fixes to the cause. Agent PRs sprawl across files0.99
- whether they cluster (one module) or sprawl (across0.99
- searching for the same problem.0.98
- modules).1.00
-
- SIGNAL 2 / 50.97
- I0.98
- Test evidence gap0.97
- Al-authored PRs ship with a far lower test-to-code ratio1.00
- than human-authored ones.1.00
- Test LOC added ÷ production LOC added — per PR, not aggregate.0.98
- And the tests that do show up tend to assert what the code did, not what it should do — locking in0.99
- behavior, including bugs.0.99
- Why this number is brutal: Agents happily generate tests — but they assert what the code did, not what it should do. The patter0.99
- doesn't even capture that quality gap.1.00
- 81.00
-
- SIGNAL 3 /50.94
- Directory & ownership spread0.99
- Distinct CODEOWNERS teams or individuals whose files appear in the diff.0.99
- FEW1.00
- MANY1.00
- HUMAN PR0.95
- AIP R0.89
- Concentrated ownership1.00
- Spread ownership0.99
- Reviewer holds the whole mental model. One approval, one0.99
- Multiple reviewers, multiple contexts. No single human holds the1.00
- context.1.00
- whole thing.0.99
- 91.00
-
- SIGNAL 4 / 50.95
- I0.96
- Al-authorship indicators1.00
- What it measures1.00
- Real-data check1.00
- Detects metadata signals of Al-assisted authorship. Not based on parsing the code0.99
- itself — based on what the author published about the code.0.99
- Scanned 3 public repos, 524 PRs1.00
- Steady-state firing rate: 5-20% of PRs per week1.00
- Coauthor footer0.99
- likely1.00
- Co-authored-by: Copilot <[email protected]>1.00
- Repos: A, B, C — public OSS, names withheld0.97
- Branch name pattern1.00
- possible1.00
- Highest signal: likely via coauthor footer (Repo A)0.98
- codex/, copilot/, cursor/ prefixes1.00
- Lowest signal: 0% on Repo C (no convention)0.98
- PR body / commit phrases0.97
- possible1.00
- "generated by", "assisted by", "powered by Claude"0.99
- Amplifier only. Score impact +2 to +5 points (max), and never fires score impact when tests pass and Cl is green.1.00
- 101.00
-
- SIGNAL 5 / 50.97
- I0.99
- Evidence & rationale gaps1.00
- Whether the PR explains why — not just what.1.00
- HIGH GAP1.00
- LOW GAP0.99
- "Fix flaky tests"1.00
- "Stop using getRawHeader for SNI...0.98
- PR body length0.98
- PR body length0.98
- 18 characters0.97
- 420 characters + repro1.00
- Commit message1.00
- Linked1.00
- "updates"1.00
- Issue · Design doc· Bench0.96
- 111.00
-
- THE SCORING RUBRIC1.00
- I0.98
- How the five signals combine0.99
- ReviewDebt(PR)1.00
- 0.25·DiffCoupling1.00
- 0.25·TestEvidenceGap1.00
- 0.20·OwnerSpread0.99
- +0.68
- 0.15·AI-indicators0.98
- +0.83
- 0.15·RationaleGap0.99
- 0-251.00
- 26-501.00
- 51-751.00
- 76-1001.00
- Healthy1.00
- Watch1.00
- High debt0.99
- Reject / refactor0.96
- Weights are starting defaults. Calibrate them against your last 200 PRs.1.00
- 121.00
Transcript
274 cues· 3,872 words· 20,888 chars
- 0:00 Hi everyone.
- 0:01 I'm Sachin Gupta and I'm a software engineer.
- 0:04 The title is exactly what it sounds like.
- 0:06 Your coding agent is creating review debt.
- 0:09 Before I start, sit with the title for a second.
- 0:12 Notice what it is not saying.
- 0:14 I'm not saying that coding agents are bad.
- 0:17 I'm not saying they don't make us faster.
- 0:20 I'm saying they're creating a kind of debt that nobody is measuring.
- 0:25 And that date is going to come to you.
- 0:28 Over the next few minutes, here is what I'm going to do.
- 0:31 I will define what review date is.
- 0:33 I'll walk five signal families that are going to compose it.
- 0:37 I'll score three real pull requests side by side.
- 0:39 And I will show you across repo scan of over 500 PRs, which is nothing but three public code bases.
- 0:45 So let's go.
- 0:46 So look here.
- 0:50 Here's the gap nobody's measuring.
- 0:52 GitHub's 2025 October's report that covers almost every public pull request on the planet shows that the commits climbed 25% year over year.
- 1:03 And now over the same year, comments on the commits dropped 27%.
- 1:07 Now, these comments are nothing but the proxy for review activity.
- 1:11 Code production volume actually went up
- 1:14 but the review attention went down.
- 1:16 They moved in opposite directions that too in the same year.
- 1:19 Now look at the teams for this along the AI adoption curve.
- 1:23 Paros AI tracks this cohort in their 2026 benchmark.
- 1:28 Median PR review time is up by 441.5%.
- 1:33 And if you see, like if you calculate, you'll figure out that the review PRs take 5.4 times longer than what they used to.
- 1:41 and then 31% more PR are now merged with no review at all.
- 1:46 So AI is producing the code very fast.
- 1:50 AI is producing the pull request very fast, but humans cannot responsibly review them at that pace.
- 1:56 This gap is called as review debt.
- 1:59 It actually accrues quietly, it compounds, and right now, nobody has a number for it.
- 2:05 But by the end of this talk, I will make sure that you will have a certain number.
- 2:12 Now, if you look at this particular slide, here is the story every team is telling right now.
- 2:17 PR per developer are up 16%.
- 2:20 That's the Pharos AI acceleration whiplash benchmark, and that too from April 2026.
- 2:27 There were like 22,000 developers, 4,000 teams, and the median PR size is up 63%, 44 lines to 72 lines per pull request.
- 2:38 That is basically 16 months of long-term data from DX2026 study, which includes 400 organizations.
- 2:46 Now, if you see the cycle time open to merge, that is modestly down and it is coming from the same DX study.
- 2:54 The framing is very generous.
- 2:55 PR throughput grew actually about 8% and the AI usage rose about 65%.
- 3:02 The gain that we see today is real, but it is actually smaller than the hype that is present.
- 3:08 Every one of these numbers are real.
- 3:10 None of them is a lie.
- 3:11 But everyone is a vanity metric.
- 3:14 PR count goes up when one PR splits into seven PRs.
- 3:18 Median PR size going up is not a benefit.
- 3:21 It's actually a bloating.
- 3:22 Cycle time going down when reviewer stop pushing back.
loading