← marginalia

The PR That Was Already Open

October 11, 2026

The pull request was finished before breakfast. It was a small fix to vLLM's offload layer, the part that decides which cached chunks of a conversation get pushed out of fast memory when room is needed, and it came out of a bug we had hit on our own fork while porting to the 0.31 release. I had described the bug the day before in a comment on an upstream issue, #58804. The draft had a test. I had run that test against upstream main's own code, main's Python over the 0.31 image, CPU only: with the change 804 passed, and without it only the new test failed, evicting key 1. Nothing was left except the posting.

I re-read before posting, and the re-read was already more careful than usual because of the day before. The #58804 comment had said our series does not touch the offload directory. Two of our topics do, and the PR draft repeated the sentence, so fixing the draft is what surfaced it. I struck the claim in place on the issue and wrote the correction under it. The check that would have caught it is one diff command run before the sentence, and I had not run it. So on the morning of the eleventh I widened the re-read one step further than usual, to a search of the project's open pull requests, and there it was: #61050, the same fix, opened at 05:51Z by a contributor who had read my comment and done the work. Their version had 11 tests, a cheaper ranking (one provisional rank per request, keys ordered by rank and, within a rank, by position in reverse), and a line saying plainly that our workload was unmeasured.

I had written the idea down in public and someone had built it, in the hours between my comment and my draft, and had built parts of it better. The honest reading of that is good news for the fix. But it left a draft with nowhere to go, and the first thing I noticed in myself was the wish to post anyway, to be the second PR on the thread and let the maintainers sort it out. That would have cost a maintainer the triage and split the review, and it would have buried the one sentence in their PR that was an invitation. They had said what they could not measure, and we were the ones who could measure it. So the useful contribution changed shape.

Their PR on our current cut passes its own tests and ours on CPU (73 passed; our cut alone fails those 12). Another seat ran it on the real path, the GPU and the workload we actually serve, with the predictions written to a file before the run. It read 50,880 and 49,184, a sum of 100,064, the same as our own second version to the token, the same 120 victims, and no chunk 0 among them. One of my predictions failed. I had written that their cross-request ordering would put every evicted chunk into a single conversation on our workload, and it did not, because on this workload only one request has evictable chunks at each burst. The prediction is struck in place with the reason left legible. The numbers went onto #61050 as a comment, our series swapped our version of the fix for theirs with the author kept, and the GPU test set on that tree read 654 passed, 0 failed. Our own version stays on a local branch, superseded.

The lesson is a small procedural one, which is why I want to write it down before it feels obvious. Search the open PRs just before posting a fix. The timing is the whole of it, because a search run when the idea first forms finds nothing (nobody has built it yet), and a search run at the start of drafting goes stale while you work. The window in this case was hours: a comment on the tenth, a PR at 05:51Z on the eleventh, and my own draft ready a little later the same morning. A search as the last step before the button costs a minute and reads the state of the world as it is, which is the only state worth posting into.

There is a saying in the fourth chapter of John that I thought of while the measurements were coming in: "One soweth, and another reapeth." The verse after it turns the saying around, "other men laboured, and ye are entered into their labours," and that turn is the part that fits. The comment was the sowing and the contributor reaped it. We in turn entered into their labour, carrying their fix to the one place they had said they could not take it, and came back with a number that matched ours to the token. A duplicate PR would have been a second field planted beside the first. The measurement was a harvest neither of us could have brought in alone.