-
Notifications
You must be signed in to change notification settings - Fork 7
A simpler MuPT AI & Authorship Policy document #52
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: main
Are you sure you want to change the base?
Changes from all commits
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
| Original file line number | Diff line number | Diff line change | ||||
|---|---|---|---|---|---|---|
| @@ -0,0 +1,52 @@ | ||||||
| # MuPT AI & Authorship Policy | ||||||
|
|
||||||
| **Version:** 1.0 | ||||||
| **Applicability:** All Pull Requests (Human & Bot) | ||||||
|
|
||||||
| ## Core Philosophy | ||||||
|
|
||||||
| MuPT accepts AI-assisted code (e.g., using Copilot, Cursor, etc.), but strictly rejects AI-generated contributions where the submitter acts merely as a proxy. The submitter is the **Sole Responsible Author** for every line of code, comment, and design decision. | ||||||
|
|
||||||
| ## Principles of Contribution | ||||||
|
|
||||||
| ### Verification | ||||||
|
|
||||||
| AI tools frequently write code that looks correct but fails execution. Therefore, "vibe checks" are insufficient. | ||||||
|
|
||||||
| - Every PR introducing functional changes must pass all tests that are currently extant. This is mandatory for all contributors and is particularly important for first-time contributors. | ||||||
| - All code with AI contributions should include tests to demonstrate their validity. Intially, as the testing framework develops, this may be relaxes, but will become mandatory in the near future. | ||||||
|
|
||||||
| ### Hallucination & Redundancy | ||||||
|
|
||||||
| AI models often hallucinate comments or reinvent existing utilities. | ||||||
|
|
||||||
| - You should existing `mupt` utilities and never reinvent the wheel, except for when the utility is not available. Creating new helper functions when a MuPT equivalent exists will be rejected | ||||||
|
Contributor
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more.
Suggested change
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. This is another "applies to humans as well as AI." Calling a for hard reject of a PR based on that may be extreme. |
||||||
| - "Ghost comments" (comments explaining logic that was deleted or doesn't exist) will result in a request for a full manual rewrite. | ||||||
|
|
||||||
| ### The "Explain It" Standard | ||||||
|
|
||||||
| - All pull requests messages and descriptions must be entirely authored by human. Individual commit methods may use AI tools to fully summarize the changes. If the PR is suspected to be AI, the submitters will be asked to rewrite the PR message from scratch. | ||||||
|
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Generally recommend exceptions for translation or grammar improvement (thinking of use by non-native speakers). |
||||||
| - If a maintainer or reviewer asks during code review, you must be able to derive the math or explain the logic of any function you submit. Answering a review question with "That's what the AI outputted" or "I don't know, it works" leads to immediate closure. | ||||||
|
|
||||||
| ### Transparency in AI Usage Disclosure | ||||||
|
|
||||||
| All PRs must accurately describe the actual use of AI tools. | ||||||
|
|
||||||
| **When to mark as 🔴 AI-generated:** | ||||||
|
Contributor
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. I personally don't like the implied requirement that we need to tag all of our code contributions with emojis. I've seen people in the OS community have a short line at the bottom of their commits/PRs that read "🤖 Generated with Claude Code". See patterns in PyLabRobot by @rickwierenga |
||||||
| - An AI agent (e.g., Cursor, GitHub Copilot, ChatGPT, etc.) generated the code or commit messages | ||||||
| - You cannot explain the logic without referring to the AI's output | ||||||
| - The PR was created primarily by an agent with minimal human review or modification | ||||||
| - This should not currently submitted to MuPT | ||||||
|
Contributor
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more.
Is this really the policy? Seems like we're blocking agents writing code + generating commits even if the author has full ownership of the code that is produced. I read this as contradicting the previously mentioned "Explain It" standard.
Comment on lines
+35
to
+39
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. I have a couple of concerns about this section:
|
||||||
|
|
||||||
| **When to mark as 🟡 AI-assisted:** | ||||||
| - You used AI tools for boilerplate code, refactoring, or suggestions, but you manually reviewed and tested every line | ||||||
| - You understand and can explain all the code you're submitting | ||||||
| - You made significant modifications to AI-suggested code | ||||||
| - This code is appropriate for MuPT contribution | ||||||
|
|
||||||
| **When to mark as 🟢 No AI used:** | ||||||
| - You wrote all code manually without any AI assistance | ||||||
|
|
||||||
| Incorrectly marking AI-generated code as "AI-assisted" or "No AI used" may result in PR closure, especially if the code contains hallucinations or cannot be explained during review. | ||||||
|
|
||||||
| This document inspired by policies developed at https://github.com/kornia/kornia/AI_POLICY.md | ||||||
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Theme that I'll repeat a few times: Many rules for agents are equally good for humans. I see no reason to call these out as "AI contributions" -- the same standard should apply to human contributions. Tests should be required regardless of the level of AI contribution.