GitHub: Require PR authors to disclose AI usage#12648
Conversation
There was a problem hiding this comment.
Pull Request Overview
This pull request adds a disclosure question to the PR template so that authors can indicate whether they used AI for finding, testing, or implementing changes.
- Introduced a new question prompting authors to disclose AI usage.
- Updated the PR template file to include checkbox options for both AI usage and non-usage.
|
The problem is if people lie when they use it, how do you catch them. Also giving besides the benefit of doubt, other people might also use this as an attack for newbie/overzealous coders. I understand the idea ,but will it bring a better environment to the GitHub? Even well intentioned I won't be surprised if you don't see difference between AI and people who have various degrees of coding. It's also not uncommon to receive help from multiple people to guide with code and is that also in contention by then? Will it be used as a gotcha like they checked the box did you use it and then they said no on the checkbox but said yes in the comments or got caught in a credible manner. On the other end some legit coders might feel pressured or feel offended on just the implication alone. Though it does remind me of that time when a Hacktober (October month where people could contribute to multiple repos to win a T-shirt or something) was a mess of doing low-effort or troll commits. So in that case is the essence getting rid of bad PRs in general? I do get the frustration, and I'm not totally sure if including this or not will truely help alleviate the workflow bottlenecks so to speak. |
|
i think its a very good idea , but as red has mentioned , we probably have to vigilant if/when people lie |
People are always going to lie, this is not going to fix that. The largest issue I'm trying to prevent is the possibility of wasting my own or other reviewers time trying to figure out if someone knows something I don't while I review their hallucinated code.
I don't understand this point. If a newbie uses AI and discloses it and it looks completely wrong to the reviewer, the solution isn't to attack them. If a reviewer is attacking PR authors, that isn't the fault of this change. If the reviewer holds authority, that is the fault on us (the PCSX2 team) for allowing someone who represents us to attack others. If the reviewer is just a random person, then we would follow the normal moderation procedure against individuals who exhibit toxic behaviour.
This is essentially the original point in different words. People are always going to lie, this is not going to fix that.
Yes. If you check no and then it is found with absolute confidence through interpretation of your code changes, or by your own admission after the fact, that you did use AI, you will be at worst blocked permanently from our GitHub organization. I don't want your (probably wrong) code if you're going to lie to my face.
I'm confident that an intermediate programmer can understand why we have have them check that box. If there happens to be a developer out there who gets offended at it, I don't know what to tell them. They must be one of those "Digital Nomads" who happens live under a rock.
If someone ran the entire codebase through an LLM, asked it to find a bug and propose a PR (this happens), and they see that we require AI disclosure and decide to not PR it out of lack of confidence, that is a win in my eyes. |
|
I 100% agree with this, specially with how a lot of the code used to train those LLMs are probably not very legal. OpenAI and ChatGPT already got on trouble multiple times due to copyright issues. |
should probably be
or
Also, I'd probably put it at the bottom instead. |
sgtm |
|
@F0bes If we do have a checkbox about AI stuff, would it be reasonable to have a second entry to the effect of "If you did use AI, what did you use it for? Select all that apply." And we can have stuff like linting, boilerplate, identifying a bug, identifying the solution to the bug, writing the PR summary, etc. |
|
That was the point of the (please explain briefly) when you check yes. |
|
The most important thing if they use it is that they tested they work and get the logic, but it's the same with electrical bikes (still need to be able to drive well with mechanical). A ton of people use it as they don't feel confident or don't have enough experience. It is that last part that just begets annoyance for seemingly random or even broken changes to code. If it's a nitpicky PR it can still be discussed if it's a bonus for the project of course. I hope that people understand it's just getting rid of well let's just say bad actors and not people who need a guiding hand. I care more about how de facto outcome will improve the situation then just a click and forget thing. But that's something we have to test over the upcoming months and what-ifs don't really help being against or for it. In the end it's a tool ,but with a lot of things you don't use a hammer where you need a screwdriver. If it's just getting an idea or inspiration or pointing to correct location is totally different than saying give me all the code changes and give me the result which won't make you grow either or become a better coder. |
4073b71 to
28a234e
Compare
Thanks for pointing that out. |
|
This is an interesting discussion. Companies are actively pushing devs to use AI code editors to increase throughput. Although I have my own reservations against it, it's hard to articulate the reason why it adds to our problems rather than subtracting from it. |
------------------------------------------------------------------------------------- azahar.mk 7211d2ce55021bcae14e4ecb5d62990d13f05221 # Version: Commits on May 12, 2025 ------------------------------------------------------------------------------------- android: Add aspect ratio setting for single screen layout mode (#913) * android: Add aspect ratio setting for single screen layout mode Co-Authored-By: Morph <39850852+Morph1984@users.noreply.github.com> * Partial rewrite to address issues and improve readability --------- Co-authored-by: Morph <39850852+Morph1984@users.noreply.github.com> Co-authored-by: OpenSauce04 <opensauce04@gmail.com>, ----------------------------------------------------------------------------------- cemu.mk bed5fdb1951814633a3eaea0445bcddb62b63df9 # Version: Commits on May 13, 2025 ----------------------------------------------------------------------------------- UI: Disable Ctrl+Q shortcut on non-macOS platforms to prevent accidental exits during gameplay (#1565), ------------------------------------------------------------------------------------------ dolphin-emu.mk 57dce8bd7c7d1df42e3d02af1af536e55d02057a # Version: Commits on May 12, 2025 ------------------------------------------------------------------------------------------ Merge pull request #13650 from JosJuice/stswx-uncached PowerPC: Correctly handle stswi/stswx to uncached memory, ------------------------------------------------------------------------------------------ duckstation.mk 8382a1ac7b8f4d6655ec87a9009b13633d5863b7 # Version: Commits on May 13, 2025 ------------------------------------------------------------------------------------------ GameDB: Pop'n Tanks! does not support analog mode (#3416) Only supports vibration., ------------------------------------------------------------------------------------- hatari.mk 483dbfc088ad8437fdbe1ae7231976704bdc96fc # Version: Commits on May 12, 2025 ------------------------------------------------------------------------------------- Add option --disable-key-repeat-fast-forward to disable keyboard auto repeat while in fast forward mode, ---------------------------------------------------- pcsx2.mk v2.3.343 # Version: Commits on May 12, 2025 ---------------------------------------------------- - [GitHub: Require PR authors to disclose AI usage](PCSX2/pcsx2#12648) , ------------------------------------------------------------------------------------- ppsspp.mk a87391a56f3cfd4dc09a364f1d9d5d6f1abccb67 # Version: Commits on May 13, 2025 ------------------------------------------------------------------------------------- Merge pull request #20308 from NABN00B/themable-slider-colors Make slider colors themable, ------------------------------------------------------------------------------------ rpcs3.mk fa744121fc936d35b9d880c6bbc587c49aa51b1e # Version: Commits on May 13, 2025 ------------------------------------------------------------------------------------ Fix CallFromMainThread execution condition, --------------------------------------------------------------- ruffle.mk nightly-2025-05-13 # Version: Commits on May 13, 2025 --------------------------------------------------------------- ## What's Changed * ci: Update \current\ Node.js from 23 to 24 by @torokati44 in ruffle-rs/ruffle#20362 * tests: Fix text/br_at_start test by @kjarosh in ruffle-rs/ruffle#20391 * build(deps-dev): bump the npm-minor group across 1 directory with 18 updates by @dependabot in ruffle-rs/ruffle#20400 * build(deps): bump the cargo-minor group with 5 updates by @dependabot in ruffle-rs/ruffle#20401 * chore: Update translations by @RuffleBuild in ruffle-rs/ruffle#20402 * avm2: Make (almost) all class signatures match FP by @Lord-McSweeney in ruffle-rs/ruffle#20233 **Full Changelog**: ruffle-rs/ruffle@nightly-2025-05-12...nightly-2025-05-13, ---------------------------------------------------- ryujinx.mk 1.3.40 # Version: Commits on May 13, 2025 ---------------------------------------------------- # Canary builds: These builds are experimental and may sometimes not work, use [regular builds](https://github.com/Ryubing/Stable-Releases/releases/latest) instead if that sounds like something you don't want to deal with. | Platform | Artifact | |--|--| | Windows 64-bit | [Canary Windows Artifact](https://github.com/Ryubing/Canary-Releases/releases/download/1.3.40/ryujinx-canary-1.3.40-win_x64.zip) | | Windows ARM 64-bit | [Canary Windows ARM Artifact](https://github.com/Ryubing/Canary-Releases/releases/download/1.3.40/ryujinx-canary-1.3.40-win_arm64.zip) | | Linux 64-bit | [Canary Linux Artifact](https://github.com/Ryubing/Canary-Releases/releases/download/1.3.40/ryujinx-canary-1.3.40-linux_x64.tar.gz) | | Linux ARM 64-bit | [Canary Linux ARM Artifact](https://github.com/Ryubing/Canary-Releases/releases/download/1.3.40/ryujinx-canary-1.3.40-linux_arm64.tar.gz) | | macOS | [Canary macOS Artifact](https://github.com/Ryubing/Canary-Releases/releases/download/1.3.40/ryujinx-canary-1.3.40-macos_universal.app.tar.gz) | **[Full Changelog](https://git.ryujinx.app/ryubing/ryujinx/-/compare/Canary-1.3.39...Canary-1.3.40)**, -------------------------------------------------------------------------------------- shadps4.mk 4cd13ea9d8a402d41b68a73b58fe839d91243c3e # Version: Commits on May 13, 2025 -------------------------------------------------------------------------------------- fix: Disable emitting bounds checks until fixed., --------------------------------------------------------------------------------------- thextech.mk 69a6914ed751290b2e537c7e05761bda9aa5bc18 # Version: Commits on May 12, 2025 --------------------------------------------------------------------------------------- Update AudioCodecs, ------------------------------------------------------------------------------------------- xenia-native.mk e85c2392bac49a5ce16d0535c909af5458aa20db # Version: Commits on May 12, 2025 ------------------------------------------------------------------------------------------- [Kernel] Implemented: KeSetPriorityThread, ---------------------------------------------------------------------------------------- rpi-utils.mk af4d521909b92f876ecce3d6a11fbdd420d6cab3 # Version: Commits on May 13, 2025 ---------------------------------------------------------------------------------------- pinctrl: gpiolib: Add the remaining GPIO chips The conversion of gpiolib to a proper library omitted some of the 2712 GPIO chips. BCM2712D0 was worst affected, with Pi 500 only showing the main 40-pin header pins. Add the missing drivers to the library_gpiochips array. Signed-off-by: Phil Elwell <phil@raspberrypi.com>, -------------------------------------------------------------------------------------- plutovg.mk 6987abcd3550d66e56c188e19dd80a697d053a39 # Version: Commits on May 13, 2025 -------------------------------------------------------------------------------------- Fix: Expand clip bounds by 1 pixel to account for rendering overshoot, ------------------------------------------------------------------------------------ box64.mk 4542244c4fff5a5087ff84994d0f5e69826b5bd0 # Version: Commits on May 13, 2025 ------------------------------------------------------------------------------------ [DOCS] improve consistency between documentation and code (#2631) * [fix][Docs] is `XXXX` consistantly * [feat][Docs] add simple validation script that checks consistency between `usage.json` and `env.h` * [DOCS] include `validate.py` in `gen.py`, ------------------------------------------------------------------------------------------- jazz2-native.mk 649a07bf3afe290593dd62e6be5dfdf9e926726f # Version: Commits on May 13, 2025 ------------------------------------------------------------------------------------------- Reworked Debris, multiplayer, music resync, ---------------------------------------------------------------------------------- stk.mk e38f32a8c4681a513ab1afc41f859af859ffea6c # Version: Commits on May 13, 2025 ---------------------------------------------------------------------------------- Account more accurately for scrolling arrows size in dynamic ribbon widgets It ensures that the defined spacing between icons is respected when the scrolling arrows are huge, and when the scrolling arrows are quite small, it frees up some additional space to make icons larger., -------------------------------------------------------------------------------------- evsieve.mk 26cefb8f1ff3b34e589b30c7b0a399ccc1b2ce96 # Version: Commits on May 12, 2025 -------------------------------------------------------------------------------------- Add an example on how --withhold combines with --hook breaks-on., ------------------------------------------------------------------------------------------ openbor7530.mk c4611a1c0b0e3e9fbe9a7cf829f7a7577676b7ef # Version: Commits on May 13, 2025 ------------------------------------------------------------------------------------------ - Offense and defense use LUT in place of macro list to find types and exceptions to ALL. -Fix falls, pains, etc. lists with correctly aligned reaction animations. Previous did not align with e_attack_types enum after more special types (time over, boss lose, etc.) added. - New internal function to handle attack types in text based attack box and recursive damage declaration. Uses LUT and accepts following formats: -- normal<int> -- attack<int> -- <int> Inputs for type now match legacy behavior (i.e. not 0 indexed). Out of bounds entries fail gracefully with warning and fallback to attack type 0 ( ormal\). Fixes #323. Fixes #330., ---------------------------------------------------------------------------------------- retroarch.mk 57acb067b8cc113c86df9b2d45e80d37c9f7f4a2 # Version: Commits on May 13, 2025 ---------------------------------------------------------------------------------------- Merge pull request #17896 from zoltanvb/core_options_reset_v2, -------------------------------------------------------------------------------------- soniccd.mk 7ca2280546326bda89bdaf7e03a68ac5d55afa17 # Version: Commits on May 10, 2025 -------------------------------------------------------------------------------------- Disable high res mode on dev menu F2/F3, ----------------------------------------------------------------------------------- tr1x.mk a991d64976f5268c844f0da477c706edb02c2b2f # Version: Commits on May 13, 2025 ----------------------------------------------------------------------------------- docs: update docs for save crystal animation The save crystal animation was fixed in 85c77aaeb with the merger of Item_GetFrames. This adds a retrospective changelog entry for #1528., ----------------------------------------------------------------------------------- tr2x.mk a991d64976f5268c844f0da477c706edb02c2b2f # Version: Commits on May 13, 2025 ----------------------------------------------------------------------------------- docs: update docs for save crystal animation The save crystal animation was fixed in 85c77aaeb with the merger of Item_GetFrames. This adds a retrospective changelog entry for #1528., --------------------------------------------------------------------------------------------- libretro-fbneo.mk 55dcba62af40c28601a5f1712d923ea028119d22 # Version: Commits on May 13, 2025 --------------------------------------------------------------------------------------------- (libretro) update files, -------------------------------------------------------------------------------------------------- libretro-gearcoleco.mk cf1a75e45872cd4b66632ade661faae399576124 # Version: Commits on May 12, 2025 -------------------------------------------------------------------------------------------------- Improve menu bar behavior when enabling/disabling fullscreen, ------------------------------------------------------------------------------------------------- libretro-geargrafx.mk 5affbb2c07f3ae7343eaf0976f05639ea6438527 # Version: Commits on May 12, 2025 ------------------------------------------------------------------------------------------------- Update README.md, -------------------------------------------------------------------------------------------------- libretro-gearsystem.mk c202db46408320ae52fc2e639d6bfa2f09f8ee70 # Version: Commits on May 12, 2025 -------------------------------------------------------------------------------------------------- Improve menu bar behavior when enabling/disabling fullscreen, ---------------------------------------------------------------------------------------------- libretro-ppsspp.mk a87391a56f3cfd4dc09a364f1d9d5d6f1abccb67 # Version: Commits on May 13, 2025 ---------------------------------------------------------------------------------------------- Merge pull request #20308 from NABN00B/themable-slider-colors Make slider colors themable, -------------------------------------------------------------------------------------------- libretro-puae.mk ce2c7b7b2d65d3211df8782d6c595ef9aa7d099e # Version: Commits on May 13, 2025 -------------------------------------------------------------------------------------------- Fix preset parsing from uae confs, ------------------------------------------------------------------------------------------------ libretro-puae2021.mk 488e8a53d0a9be1de1e10cd7765f1caad0639579 # Version: Commits on May 13, 2025 ------------------------------------------------------------------------------------------------ Fix preset parsing from uae confs, ---------------------------------------------------------------------------------------------- libretro-stella.mk 807b3c8ea104159090973e2840fd98ef933d5f93 # Version: Commits on May 12, 2025 ---------------------------------------------------------------------------------------------- Fix size conversion warning.,
Description of Changes
Add a "Did you use AI blah blah blah" disclosure question for PR authors to answer.
I want this to be a little bit of an RFC. Does anyone else agree / disagree?
Rationale behind Changes
Unfortunately open source seems to be experiencing a increasingly common pattern of AI slop in many forms. Such as bogus CVE reports and pull requests. Avoiding the politics involved with its usage, it's just incredibly time consuming for us when it's used improperly. It would be nice to know when to put on my BS glasses.