Tell contributors to search open PRs before writing a fix - #9092
Conversation
The backlog is large enough that one bug draws several independent fixes. The lock screen losing password focus after suspend had four open PRs at once, and the Wi-Fi password reveal toggle has two. contributing.md governs submitting a fix upstream but said nothing about looking for one that already exists, so add the searches to run and what to do when an open PR already covers the change. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_019q6kd5nX4D8xS7jy7KJYtP
|
Closing as a duplicate of #8609, and overlapping #6959. Both predate this and both are more complete. #8609 adds a "Check It Isn't Already Known" section to this same file covering issues and PRs via Worth recording for whoever triages #8609 and #6959, since it is direct evidence they are needed: I opened this without searching first, which is precisely the failure it describes. The same session also produced #9089, a fifth duplicate fix for the lock screen password-focus bug that already had four open PRs (#7164, #7592, #8560, #8869). Both are now closed. If either #8609 or #6959 needs a concrete example in its rationale, this thread is one. |
Problem
contributing.mdis the doc that governs submitting a fix upstream, and it ships in theomarchyskill — so it is what an agent on a user's machine reads before contributing. It covers forking, style, atomic commits, and running the tests, but says nothing about checking whether the fix already exists.The backlog is large enough that the omission is expensive. Two clusters found without looking hard:
Lock screen losing password focus after suspend — four open PRs:
securebecomes trueTimerwhile unfocusedonActiveFocusChangedreclaims focusTimer+focus: trueWi-Fi password reveal toggle — two open PRs: #7815 and #8019 add the same toggle.
I hit that lock bug, diagnosed it, wrote a fix and opened #9089 — the fifth PR on it — before finding the other four. I have closed it as a duplicate. Four people each spent real effort on the same twenty lines, and a maintainer now has to read and compare all of them. This is the fix for what actually went wrong.
Change
Adds four sentences and two
ghinvocations to the existing## Submitting a PRsection: search before writing, search twice because one query will not catch a PR that words the same area differently, and when an open PR already covers the change, add to it — confirm the bug on your hardware, review the approach, contribute a missing test — instead of opening a competing one.Docs only, no code or test changes. Hard-wrapped at 78 columns to match the rest of the file.
Opened against
contributing.mdrather thanAGENTS.mdbecause the duplicate gets written before anyone opens the checkout.