navidrome/CONTRIBUTING.md

Ignoring revisions in .git-blame-ignore-revs. Click here to bypass and see the normal blame view.

66 lines
7.5 KiB
Markdown
Raw Permalink Normal View History

# Navidrome Contribution Guide
docs: update contribution policy and PR/Issues templates (#6417) * docs(contributing): propose updated contribution policy Draft proposal for maintainer review. Rewrite the contribution guide around prior scope agreement, personal review, AI disclosure and maintainability, while keeping the commit conventions and DCO sign-off. Add AI use and review items to the PR template, keeping its headings. Simplify the bug form so only what happened, the version and the Code of Conduct are required, and it no longer asks for an upgrade or a duplicate-search attestation. Update the selector text and point README feature requests to Discussions. Keep the pull-requests anchor because the stale workflow links to it. Signed-off-by: Deluan <deluan@navidrome.org> * docs(contributing): allow AI-assisted PR text and review replies Let contributors use AI tools to draft, edit, or translate PR explanations and review replies, as long as they review the final text, agree with it, and take responsibility for it. The PR template description hint now says the same instead of asking for the contributor's own words. Signed-off-by: Deluan <deluan@navidrome.org> * docs(contributing): route closed-issue regressions and no-agreement PRs The bug form told reporters to add details to a matching report, but the lock workflow locks inactive issues and asks for a new issue instead. It now says to use a matching open report, or open a new one that links a closed issue. The PR template and guide only offered the small-change exception when prior agreement isn't needed, which doesn't fit translation updates. Both now ask contributors to explain why agreement isn't needed. Signed-off-by: Deluan <deluan@navidrome.org> * docs(contributing): ask contributors to be mindful of the maintainer's time Add the request to the end of the communication paragraph in the guide and to the PR template's description hint. Signed-off-by: Deluan <deluan@navidrome.org> * docs(issues): require reproducing bugs on the latest release Restore a required checkbox in the bug form, placed before the version field: "I'm using the latest Navidrome release and can reproduce the issue on it." Drop the version help sentence that said upgrading isn't required, since it now contradicts the checkbox. Signed-off-by: Deluan <deluan@navidrome.org> * docs(issues): turn the bug form search guidance into a checkbox The long intro paragraph was easy to skip. It now only thanks the reporter and links private security reporting. A required checkbox, grouped with the latest-release one at the top, confirms the reporter searched open and closed issues. The "What happened" help asks reporters to link a matching closed issue. The steps help now says "If it happens only sometimes" instead of mentioning problems that can't be reproduced, so it no longer conflicts with the required reproduction checkbox. Signed-off-by: Deluan <deluan@navidrome.org> * docs(pr-template): ask for AI use with Yes and No checkboxes Replace the free-text "Yes / No" line with two checkboxes. Contributors tick exactly one, so empty boxes clearly mean the question wasn't answered. Signed-off-by: Deluan <deluan@navidrome.org> --------- Signed-off-by: Deluan <deluan@navidrome.org>
2026-11-08 13:20:09 -05:00
Navidrome has one maintainer and limited review capacity. We welcome contributions that fit the project and remain practical to maintain. A smaller number of focused, well-understood contributions is more useful than a large volume of code that needs extensive rework.
docs: update contribution policy and PR/Issues templates (#6417) * docs(contributing): propose updated contribution policy Draft proposal for maintainer review. Rewrite the contribution guide around prior scope agreement, personal review, AI disclosure and maintainability, while keeping the commit conventions and DCO sign-off. Add AI use and review items to the PR template, keeping its headings. Simplify the bug form so only what happened, the version and the Code of Conduct are required, and it no longer asks for an upgrade or a duplicate-search attestation. Update the selector text and point README feature requests to Discussions. Keep the pull-requests anchor because the stale workflow links to it. Signed-off-by: Deluan <deluan@navidrome.org> * docs(contributing): allow AI-assisted PR text and review replies Let contributors use AI tools to draft, edit, or translate PR explanations and review replies, as long as they review the final text, agree with it, and take responsibility for it. The PR template description hint now says the same instead of asking for the contributor's own words. Signed-off-by: Deluan <deluan@navidrome.org> * docs(contributing): route closed-issue regressions and no-agreement PRs The bug form told reporters to add details to a matching report, but the lock workflow locks inactive issues and asks for a new issue instead. It now says to use a matching open report, or open a new one that links a closed issue. The PR template and guide only offered the small-change exception when prior agreement isn't needed, which doesn't fit translation updates. Both now ask contributors to explain why agreement isn't needed. Signed-off-by: Deluan <deluan@navidrome.org> * docs(contributing): ask contributors to be mindful of the maintainer's time Add the request to the end of the communication paragraph in the guide and to the PR template's description hint. Signed-off-by: Deluan <deluan@navidrome.org> * docs(issues): require reproducing bugs on the latest release Restore a required checkbox in the bug form, placed before the version field: "I'm using the latest Navidrome release and can reproduce the issue on it." Drop the version help sentence that said upgrading isn't required, since it now contradicts the checkbox. Signed-off-by: Deluan <deluan@navidrome.org> * docs(issues): turn the bug form search guidance into a checkbox The long intro paragraph was easy to skip. It now only thanks the reporter and links private security reporting. A required checkbox, grouped with the latest-release one at the top, confirms the reporter searched open and closed issues. The "What happened" help asks reporters to link a matching closed issue. The steps help now says "If it happens only sometimes" instead of mentioning problems that can't be reproduced, so it no longer conflicts with the required reproduction checkbox. Signed-off-by: Deluan <deluan@navidrome.org> * docs(pr-template): ask for AI use with Yes and No checkboxes Replace the free-text "Yes / No" line with two checkboxes. Contributors tick exactly one, so empty boxes clearly mean the question wasn't answered. Signed-off-by: Deluan <deluan@navidrome.org> --------- Signed-off-by: Deluan <deluan@navidrome.org>
2026-11-08 13:20:09 -05:00
## Support and conduct
docs: update contribution policy and PR/Issues templates (#6417) * docs(contributing): propose updated contribution policy Draft proposal for maintainer review. Rewrite the contribution guide around prior scope agreement, personal review, AI disclosure and maintainability, while keeping the commit conventions and DCO sign-off. Add AI use and review items to the PR template, keeping its headings. Simplify the bug form so only what happened, the version and the Code of Conduct are required, and it no longer asks for an upgrade or a duplicate-search attestation. Update the selector text and point README feature requests to Discussions. Keep the pull-requests anchor because the stale workflow links to it. Signed-off-by: Deluan <deluan@navidrome.org> * docs(contributing): allow AI-assisted PR text and review replies Let contributors use AI tools to draft, edit, or translate PR explanations and review replies, as long as they review the final text, agree with it, and take responsibility for it. The PR template description hint now says the same instead of asking for the contributor's own words. Signed-off-by: Deluan <deluan@navidrome.org> * docs(contributing): route closed-issue regressions and no-agreement PRs The bug form told reporters to add details to a matching report, but the lock workflow locks inactive issues and asks for a new issue instead. It now says to use a matching open report, or open a new one that links a closed issue. The PR template and guide only offered the small-change exception when prior agreement isn't needed, which doesn't fit translation updates. Both now ask contributors to explain why agreement isn't needed. Signed-off-by: Deluan <deluan@navidrome.org> * docs(contributing): ask contributors to be mindful of the maintainer's time Add the request to the end of the communication paragraph in the guide and to the PR template's description hint. Signed-off-by: Deluan <deluan@navidrome.org> * docs(issues): require reproducing bugs on the latest release Restore a required checkbox in the bug form, placed before the version field: "I'm using the latest Navidrome release and can reproduce the issue on it." Drop the version help sentence that said upgrading isn't required, since it now contradicts the checkbox. Signed-off-by: Deluan <deluan@navidrome.org> * docs(issues): turn the bug form search guidance into a checkbox The long intro paragraph was easy to skip. It now only thanks the reporter and links private security reporting. A required checkbox, grouped with the latest-release one at the top, confirms the reporter searched open and closed issues. The "What happened" help asks reporters to link a matching closed issue. The steps help now says "If it happens only sometimes" instead of mentioning problems that can't be reproduced, so it no longer conflicts with the required reproduction checkbox. Signed-off-by: Deluan <deluan@navidrome.org> * docs(pr-template): ask for AI use with Yes and No checkboxes Replace the free-text "Yes / No" line with two checkboxes. Contributors tick exactly one, so empty boxes clearly mean the question wasn't answered. Signed-off-by: Deluan <deluan@navidrome.org> --------- Signed-off-by: Deluan <deluan@navidrome.org>
2026-11-08 13:20:09 -05:00
Use [Discussions → Q&A](https://github.com/navidrome/navidrome/discussions/categories/q-a) for support. Please follow the [Code of Conduct](CODE_OF_CONDUCT.md).
docs: update contribution policy and PR/Issues templates (#6417) * docs(contributing): propose updated contribution policy Draft proposal for maintainer review. Rewrite the contribution guide around prior scope agreement, personal review, AI disclosure and maintainability, while keeping the commit conventions and DCO sign-off. Add AI use and review items to the PR template, keeping its headings. Simplify the bug form so only what happened, the version and the Code of Conduct are required, and it no longer asks for an upgrade or a duplicate-search attestation. Update the selector text and point README feature requests to Discussions. Keep the pull-requests anchor because the stale workflow links to it. Signed-off-by: Deluan <deluan@navidrome.org> * docs(contributing): allow AI-assisted PR text and review replies Let contributors use AI tools to draft, edit, or translate PR explanations and review replies, as long as they review the final text, agree with it, and take responsibility for it. The PR template description hint now says the same instead of asking for the contributor's own words. Signed-off-by: Deluan <deluan@navidrome.org> * docs(contributing): route closed-issue regressions and no-agreement PRs The bug form told reporters to add details to a matching report, but the lock workflow locks inactive issues and asks for a new issue instead. It now says to use a matching open report, or open a new one that links a closed issue. The PR template and guide only offered the small-change exception when prior agreement isn't needed, which doesn't fit translation updates. Both now ask contributors to explain why agreement isn't needed. Signed-off-by: Deluan <deluan@navidrome.org> * docs(contributing): ask contributors to be mindful of the maintainer's time Add the request to the end of the communication paragraph in the guide and to the PR template's description hint. Signed-off-by: Deluan <deluan@navidrome.org> * docs(issues): require reproducing bugs on the latest release Restore a required checkbox in the bug form, placed before the version field: "I'm using the latest Navidrome release and can reproduce the issue on it." Drop the version help sentence that said upgrading isn't required, since it now contradicts the checkbox. Signed-off-by: Deluan <deluan@navidrome.org> * docs(issues): turn the bug form search guidance into a checkbox The long intro paragraph was easy to skip. It now only thanks the reporter and links private security reporting. A required checkbox, grouped with the latest-release one at the top, confirms the reporter searched open and closed issues. The "What happened" help asks reporters to link a matching closed issue. The steps help now says "If it happens only sometimes" instead of mentioning problems that can't be reproduced, so it no longer conflicts with the required reproduction checkbox. Signed-off-by: Deluan <deluan@navidrome.org> * docs(pr-template): ask for AI use with Yes and No checkboxes Replace the free-text "Yes / No" line with two checkboxes. Contributors tick exactly one, so empty boxes clearly mean the question wasn't answered. Signed-off-by: Deluan <deluan@navidrome.org> --------- Signed-off-by: Deluan <deluan@navidrome.org>
2026-11-08 13:20:09 -05:00
## Issues and ideas
2023-03-06 20:01:42 -05:00
docs: update contribution policy and PR/Issues templates (#6417) * docs(contributing): propose updated contribution policy Draft proposal for maintainer review. Rewrite the contribution guide around prior scope agreement, personal review, AI disclosure and maintainability, while keeping the commit conventions and DCO sign-off. Add AI use and review items to the PR template, keeping its headings. Simplify the bug form so only what happened, the version and the Code of Conduct are required, and it no longer asks for an upgrade or a duplicate-search attestation. Update the selector text and point README feature requests to Discussions. Keep the pull-requests anchor because the stale workflow links to it. Signed-off-by: Deluan <deluan@navidrome.org> * docs(contributing): allow AI-assisted PR text and review replies Let contributors use AI tools to draft, edit, or translate PR explanations and review replies, as long as they review the final text, agree with it, and take responsibility for it. The PR template description hint now says the same instead of asking for the contributor's own words. Signed-off-by: Deluan <deluan@navidrome.org> * docs(contributing): route closed-issue regressions and no-agreement PRs The bug form told reporters to add details to a matching report, but the lock workflow locks inactive issues and asks for a new issue instead. It now says to use a matching open report, or open a new one that links a closed issue. The PR template and guide only offered the small-change exception when prior agreement isn't needed, which doesn't fit translation updates. Both now ask contributors to explain why agreement isn't needed. Signed-off-by: Deluan <deluan@navidrome.org> * docs(contributing): ask contributors to be mindful of the maintainer's time Add the request to the end of the communication paragraph in the guide and to the PR template's description hint. Signed-off-by: Deluan <deluan@navidrome.org> * docs(issues): require reproducing bugs on the latest release Restore a required checkbox in the bug form, placed before the version field: "I'm using the latest Navidrome release and can reproduce the issue on it." Drop the version help sentence that said upgrading isn't required, since it now contradicts the checkbox. Signed-off-by: Deluan <deluan@navidrome.org> * docs(issues): turn the bug form search guidance into a checkbox The long intro paragraph was easy to skip. It now only thanks the reporter and links private security reporting. A required checkbox, grouped with the latest-release one at the top, confirms the reporter searched open and closed issues. The "What happened" help asks reporters to link a matching closed issue. The steps help now says "If it happens only sometimes" instead of mentioning problems that can't be reproduced, so it no longer conflicts with the required reproduction checkbox. Signed-off-by: Deluan <deluan@navidrome.org> * docs(pr-template): ask for AI use with Yes and No checkboxes Replace the free-text "Yes / No" line with two checkboxes. Contributors tick exactly one, so empty boxes clearly mean the question wasn't answered. Signed-off-by: Deluan <deluan@navidrome.org> --------- Signed-off-by: Deluan <deluan@navidrome.org>
2026-11-08 13:20:09 -05:00
Anyone may report a suspected bug. Search existing [open and closed issues](https://github.com/navidrome/navidrome/issues?q=is%3Aissue) and [discussions](https://github.com/navidrome/navidrome/discussions), and check the [documentation](https://www.navidrome.org/docs/) and [FAQ](https://www.navidrome.org/docs/faq/) first. Use the [bug report form](https://github.com/navidrome/navidrome/issues/new?template=bug_report.yml) for suspected defects and [Discussions → Ideas](https://github.com/navidrome/navidrome/discussions/categories/ideas) for new features or changes to intended behavior.
docs: update contribution policy and PR/Issues templates (#6417) * docs(contributing): propose updated contribution policy Draft proposal for maintainer review. Rewrite the contribution guide around prior scope agreement, personal review, AI disclosure and maintainability, while keeping the commit conventions and DCO sign-off. Add AI use and review items to the PR template, keeping its headings. Simplify the bug form so only what happened, the version and the Code of Conduct are required, and it no longer asks for an upgrade or a duplicate-search attestation. Update the selector text and point README feature requests to Discussions. Keep the pull-requests anchor because the stale workflow links to it. Signed-off-by: Deluan <deluan@navidrome.org> * docs(contributing): allow AI-assisted PR text and review replies Let contributors use AI tools to draft, edit, or translate PR explanations and review replies, as long as they review the final text, agree with it, and take responsibility for it. The PR template description hint now says the same instead of asking for the contributor's own words. Signed-off-by: Deluan <deluan@navidrome.org> * docs(contributing): route closed-issue regressions and no-agreement PRs The bug form told reporters to add details to a matching report, but the lock workflow locks inactive issues and asks for a new issue instead. It now says to use a matching open report, or open a new one that links a closed issue. The PR template and guide only offered the small-change exception when prior agreement isn't needed, which doesn't fit translation updates. Both now ask contributors to explain why agreement isn't needed. Signed-off-by: Deluan <deluan@navidrome.org> * docs(contributing): ask contributors to be mindful of the maintainer's time Add the request to the end of the communication paragraph in the guide and to the PR template's description hint. Signed-off-by: Deluan <deluan@navidrome.org> * docs(issues): require reproducing bugs on the latest release Restore a required checkbox in the bug form, placed before the version field: "I'm using the latest Navidrome release and can reproduce the issue on it." Drop the version help sentence that said upgrading isn't required, since it now contradicts the checkbox. Signed-off-by: Deluan <deluan@navidrome.org> * docs(issues): turn the bug form search guidance into a checkbox The long intro paragraph was easy to skip. It now only thanks the reporter and links private security reporting. A required checkbox, grouped with the latest-release one at the top, confirms the reporter searched open and closed issues. The "What happened" help asks reporters to link a matching closed issue. The steps help now says "If it happens only sometimes" instead of mentioning problems that can't be reproduced, so it no longer conflicts with the required reproduction checkbox. Signed-off-by: Deluan <deluan@navidrome.org> * docs(pr-template): ask for AI use with Yes and No checkboxes Replace the free-text "Yes / No" line with two checkboxes. Contributors tick exactly one, so empty boxes clearly mean the question wasn't answered. Signed-off-by: Deluan <deluan@navidrome.org> --------- Signed-off-by: Deluan <deluan@navidrome.org>
2026-11-08 13:20:09 -05:00
Describe what happened, what you expected, and why that expectation should hold. Include reproduction steps where possible, with a reference to documentation, an applicable API contract, or a previously working version. If the problem is intermittent, explain what you observed and tried. Remove credentials and private information from logs and configuration.
docs: update contribution policy and PR/Issues templates (#6417) * docs(contributing): propose updated contribution policy Draft proposal for maintainer review. Rewrite the contribution guide around prior scope agreement, personal review, AI disclosure and maintainability, while keeping the commit conventions and DCO sign-off. Add AI use and review items to the PR template, keeping its headings. Simplify the bug form so only what happened, the version and the Code of Conduct are required, and it no longer asks for an upgrade or a duplicate-search attestation. Update the selector text and point README feature requests to Discussions. Keep the pull-requests anchor because the stale workflow links to it. Signed-off-by: Deluan <deluan@navidrome.org> * docs(contributing): allow AI-assisted PR text and review replies Let contributors use AI tools to draft, edit, or translate PR explanations and review replies, as long as they review the final text, agree with it, and take responsibility for it. The PR template description hint now says the same instead of asking for the contributor's own words. Signed-off-by: Deluan <deluan@navidrome.org> * docs(contributing): route closed-issue regressions and no-agreement PRs The bug form told reporters to add details to a matching report, but the lock workflow locks inactive issues and asks for a new issue instead. It now says to use a matching open report, or open a new one that links a closed issue. The PR template and guide only offered the small-change exception when prior agreement isn't needed, which doesn't fit translation updates. Both now ask contributors to explain why agreement isn't needed. Signed-off-by: Deluan <deluan@navidrome.org> * docs(contributing): ask contributors to be mindful of the maintainer's time Add the request to the end of the communication paragraph in the guide and to the PR template's description hint. Signed-off-by: Deluan <deluan@navidrome.org> * docs(issues): require reproducing bugs on the latest release Restore a required checkbox in the bug form, placed before the version field: "I'm using the latest Navidrome release and can reproduce the issue on it." Drop the version help sentence that said upgrading isn't required, since it now contradicts the checkbox. Signed-off-by: Deluan <deluan@navidrome.org> * docs(issues): turn the bug form search guidance into a checkbox The long intro paragraph was easy to skip. It now only thanks the reporter and links private security reporting. A required checkbox, grouped with the latest-release one at the top, confirms the reporter searched open and closed issues. The "What happened" help asks reporters to link a matching closed issue. The steps help now says "If it happens only sometimes" instead of mentioning problems that can't be reproduced, so it no longer conflicts with the required reproduction checkbox. Signed-off-by: Deluan <deluan@navidrome.org> * docs(pr-template): ask for AI use with Yes and No checkboxes Replace the free-text "Yes / No" line with two checkboxes. Contributors tick exactly one, so empty boxes clearly mean the question wasn't answered. Signed-off-by: Deluan <deluan@navidrome.org> --------- Signed-off-by: Deluan <deluan@navidrome.org>
2026-11-08 13:20:09 -05:00
A reported problem may involve intended behavior, configuration, or a product decision. An open issue or a label does not establish that a change has been accepted. Report security vulnerabilities [privately through GitHub](https://github.com/navidrome/navidrome/security/advisories/new).
docs: update contribution policy and PR/Issues templates (#6417) * docs(contributing): propose updated contribution policy Draft proposal for maintainer review. Rewrite the contribution guide around prior scope agreement, personal review, AI disclosure and maintainability, while keeping the commit conventions and DCO sign-off. Add AI use and review items to the PR template, keeping its headings. Simplify the bug form so only what happened, the version and the Code of Conduct are required, and it no longer asks for an upgrade or a duplicate-search attestation. Update the selector text and point README feature requests to Discussions. Keep the pull-requests anchor because the stale workflow links to it. Signed-off-by: Deluan <deluan@navidrome.org> * docs(contributing): allow AI-assisted PR text and review replies Let contributors use AI tools to draft, edit, or translate PR explanations and review replies, as long as they review the final text, agree with it, and take responsibility for it. The PR template description hint now says the same instead of asking for the contributor's own words. Signed-off-by: Deluan <deluan@navidrome.org> * docs(contributing): route closed-issue regressions and no-agreement PRs The bug form told reporters to add details to a matching report, but the lock workflow locks inactive issues and asks for a new issue instead. It now says to use a matching open report, or open a new one that links a closed issue. The PR template and guide only offered the small-change exception when prior agreement isn't needed, which doesn't fit translation updates. Both now ask contributors to explain why agreement isn't needed. Signed-off-by: Deluan <deluan@navidrome.org> * docs(contributing): ask contributors to be mindful of the maintainer's time Add the request to the end of the communication paragraph in the guide and to the PR template's description hint. Signed-off-by: Deluan <deluan@navidrome.org> * docs(issues): require reproducing bugs on the latest release Restore a required checkbox in the bug form, placed before the version field: "I'm using the latest Navidrome release and can reproduce the issue on it." Drop the version help sentence that said upgrading isn't required, since it now contradicts the checkbox. Signed-off-by: Deluan <deluan@navidrome.org> * docs(issues): turn the bug form search guidance into a checkbox The long intro paragraph was easy to skip. It now only thanks the reporter and links private security reporting. A required checkbox, grouped with the latest-release one at the top, confirms the reporter searched open and closed issues. The "What happened" help asks reporters to link a matching closed issue. The steps help now says "If it happens only sometimes" instead of mentioning problems that can't be reproduced, so it no longer conflicts with the required reproduction checkbox. Signed-off-by: Deluan <deluan@navidrome.org> * docs(pr-template): ask for AI use with Yes and No checkboxes Replace the free-text "Yes / No" line with two checkboxes. Contributors tick exactly one, so empty boxes clearly mean the question wasn't answered. Signed-off-by: Deluan <deluan@navidrome.org> --------- Signed-off-by: Deluan <deluan@navidrome.org>
2026-11-08 13:20:09 -05:00
## Agree on the change before implementation
docs: update contribution policy and PR/Issues templates (#6417) * docs(contributing): propose updated contribution policy Draft proposal for maintainer review. Rewrite the contribution guide around prior scope agreement, personal review, AI disclosure and maintainability, while keeping the commit conventions and DCO sign-off. Add AI use and review items to the PR template, keeping its headings. Simplify the bug form so only what happened, the version and the Code of Conduct are required, and it no longer asks for an upgrade or a duplicate-search attestation. Update the selector text and point README feature requests to Discussions. Keep the pull-requests anchor because the stale workflow links to it. Signed-off-by: Deluan <deluan@navidrome.org> * docs(contributing): allow AI-assisted PR text and review replies Let contributors use AI tools to draft, edit, or translate PR explanations and review replies, as long as they review the final text, agree with it, and take responsibility for it. The PR template description hint now says the same instead of asking for the contributor's own words. Signed-off-by: Deluan <deluan@navidrome.org> * docs(contributing): route closed-issue regressions and no-agreement PRs The bug form told reporters to add details to a matching report, but the lock workflow locks inactive issues and asks for a new issue instead. It now says to use a matching open report, or open a new one that links a closed issue. The PR template and guide only offered the small-change exception when prior agreement isn't needed, which doesn't fit translation updates. Both now ask contributors to explain why agreement isn't needed. Signed-off-by: Deluan <deluan@navidrome.org> * docs(contributing): ask contributors to be mindful of the maintainer's time Add the request to the end of the communication paragraph in the guide and to the PR template's description hint. Signed-off-by: Deluan <deluan@navidrome.org> * docs(issues): require reproducing bugs on the latest release Restore a required checkbox in the bug form, placed before the version field: "I'm using the latest Navidrome release and can reproduce the issue on it." Drop the version help sentence that said upgrading isn't required, since it now contradicts the checkbox. Signed-off-by: Deluan <deluan@navidrome.org> * docs(issues): turn the bug form search guidance into a checkbox The long intro paragraph was easy to skip. It now only thanks the reporter and links private security reporting. A required checkbox, grouped with the latest-release one at the top, confirms the reporter searched open and closed issues. The "What happened" help asks reporters to link a matching closed issue. The steps help now says "If it happens only sometimes" instead of mentioning problems that can't be reproduced, so it no longer conflicts with the required reproduction checkbox. Signed-off-by: Deluan <deluan@navidrome.org> * docs(pr-template): ask for AI use with Yes and No checkboxes Replace the free-text "Yes / No" line with two checkboxes. Contributors tick exactly one, so empty boxes clearly mean the question wasn't answered. Signed-off-by: Deluan <deluan@navidrome.org> --------- Signed-off-by: Deluan <deluan@navidrome.org>
2026-11-08 13:20:09 -05:00
For code contributions beyond the small exceptions below, explain the problem, intended behavior, and smallest proposed scope in an existing issue or discussion. Wait for an explicit maintainer comment agreeing that the change should be pursued. Keep the discussion in one place. Silence, community support, and previous merged contributions do not replace that agreement.
docs: update contribution policy and PR/Issues templates (#6417) * docs(contributing): propose updated contribution policy Draft proposal for maintainer review. Rewrite the contribution guide around prior scope agreement, personal review, AI disclosure and maintainability, while keeping the commit conventions and DCO sign-off. Add AI use and review items to the PR template, keeping its headings. Simplify the bug form so only what happened, the version and the Code of Conduct are required, and it no longer asks for an upgrade or a duplicate-search attestation. Update the selector text and point README feature requests to Discussions. Keep the pull-requests anchor because the stale workflow links to it. Signed-off-by: Deluan <deluan@navidrome.org> * docs(contributing): allow AI-assisted PR text and review replies Let contributors use AI tools to draft, edit, or translate PR explanations and review replies, as long as they review the final text, agree with it, and take responsibility for it. The PR template description hint now says the same instead of asking for the contributor's own words. Signed-off-by: Deluan <deluan@navidrome.org> * docs(contributing): route closed-issue regressions and no-agreement PRs The bug form told reporters to add details to a matching report, but the lock workflow locks inactive issues and asks for a new issue instead. It now says to use a matching open report, or open a new one that links a closed issue. The PR template and guide only offered the small-change exception when prior agreement isn't needed, which doesn't fit translation updates. Both now ask contributors to explain why agreement isn't needed. Signed-off-by: Deluan <deluan@navidrome.org> * docs(contributing): ask contributors to be mindful of the maintainer's time Add the request to the end of the communication paragraph in the guide and to the PR template's description hint. Signed-off-by: Deluan <deluan@navidrome.org> * docs(issues): require reproducing bugs on the latest release Restore a required checkbox in the bug form, placed before the version field: "I'm using the latest Navidrome release and can reproduce the issue on it." Drop the version help sentence that said upgrading isn't required, since it now contradicts the checkbox. Signed-off-by: Deluan <deluan@navidrome.org> * docs(issues): turn the bug form search guidance into a checkbox The long intro paragraph was easy to skip. It now only thanks the reporter and links private security reporting. A required checkbox, grouped with the latest-release one at the top, confirms the reporter searched open and closed issues. The "What happened" help asks reporters to link a matching closed issue. The steps help now says "If it happens only sometimes" instead of mentioning problems that can't be reproduced, so it no longer conflicts with the required reproduction checkbox. Signed-off-by: Deluan <deluan@navidrome.org> * docs(pr-template): ask for AI use with Yes and No checkboxes Replace the free-text "Yes / No" line with two checkboxes. Contributors tick exactly one, so empty boxes clearly mean the question wasn't answered. Signed-off-by: Deluan <deluan@navidrome.org> --------- Signed-off-by: Deluan <deluan@navidrome.org>
2026-11-08 13:20:09 -05:00
Small documentation corrections and small, unambiguous fixes that restore established behavior may be submitted directly. Provide evidence of the defect. These exceptions do not cover disputed behavior, new product choices, dependencies, or broader refactoring. If the intended behavior is unclear, discuss it first.
docs: update contribution policy and PR/Issues templates (#6417) * docs(contributing): propose updated contribution policy Draft proposal for maintainer review. Rewrite the contribution guide around prior scope agreement, personal review, AI disclosure and maintainability, while keeping the commit conventions and DCO sign-off. Add AI use and review items to the PR template, keeping its headings. Simplify the bug form so only what happened, the version and the Code of Conduct are required, and it no longer asks for an upgrade or a duplicate-search attestation. Update the selector text and point README feature requests to Discussions. Keep the pull-requests anchor because the stale workflow links to it. Signed-off-by: Deluan <deluan@navidrome.org> * docs(contributing): allow AI-assisted PR text and review replies Let contributors use AI tools to draft, edit, or translate PR explanations and review replies, as long as they review the final text, agree with it, and take responsibility for it. The PR template description hint now says the same instead of asking for the contributor's own words. Signed-off-by: Deluan <deluan@navidrome.org> * docs(contributing): route closed-issue regressions and no-agreement PRs The bug form told reporters to add details to a matching report, but the lock workflow locks inactive issues and asks for a new issue instead. It now says to use a matching open report, or open a new one that links a closed issue. The PR template and guide only offered the small-change exception when prior agreement isn't needed, which doesn't fit translation updates. Both now ask contributors to explain why agreement isn't needed. Signed-off-by: Deluan <deluan@navidrome.org> * docs(contributing): ask contributors to be mindful of the maintainer's time Add the request to the end of the communication paragraph in the guide and to the PR template's description hint. Signed-off-by: Deluan <deluan@navidrome.org> * docs(issues): require reproducing bugs on the latest release Restore a required checkbox in the bug form, placed before the version field: "I'm using the latest Navidrome release and can reproduce the issue on it." Drop the version help sentence that said upgrading isn't required, since it now contradicts the checkbox. Signed-off-by: Deluan <deluan@navidrome.org> * docs(issues): turn the bug form search guidance into a checkbox The long intro paragraph was easy to skip. It now only thanks the reporter and links private security reporting. A required checkbox, grouped with the latest-release one at the top, confirms the reporter searched open and closed issues. The "What happened" help asks reporters to link a matching closed issue. The steps help now says "If it happens only sometimes" instead of mentioning problems that can't be reproduced, so it no longer conflicts with the required reproduction checkbox. Signed-off-by: Deluan <deluan@navidrome.org> * docs(pr-template): ask for AI use with Yes and No checkboxes Replace the free-text "Yes / No" line with two checkboxes. Contributors tick exactly one, so empty boxes clearly mean the question wasn't answered. Signed-off-by: Deluan <deluan@navidrome.org> --------- Signed-off-by: Deluan <deluan@navidrome.org>
2026-11-08 13:20:09 -05:00
For large or cross-cutting changes, agree on the design and a sequence of small, reviewable phases before implementation. Explain why the change belongs in the core, what new complexity or dependencies it introduces, and which simpler alternatives you considered. Consider existing configuration, APIs, plugins, or external tools where appropriate. Splitting a change into PRs does not remove the need to agree on the overall design and scope.
docs: update contribution policy and PR/Issues templates (#6417) * docs(contributing): propose updated contribution policy Draft proposal for maintainer review. Rewrite the contribution guide around prior scope agreement, personal review, AI disclosure and maintainability, while keeping the commit conventions and DCO sign-off. Add AI use and review items to the PR template, keeping its headings. Simplify the bug form so only what happened, the version and the Code of Conduct are required, and it no longer asks for an upgrade or a duplicate-search attestation. Update the selector text and point README feature requests to Discussions. Keep the pull-requests anchor because the stale workflow links to it. Signed-off-by: Deluan <deluan@navidrome.org> * docs(contributing): allow AI-assisted PR text and review replies Let contributors use AI tools to draft, edit, or translate PR explanations and review replies, as long as they review the final text, agree with it, and take responsibility for it. The PR template description hint now says the same instead of asking for the contributor's own words. Signed-off-by: Deluan <deluan@navidrome.org> * docs(contributing): route closed-issue regressions and no-agreement PRs The bug form told reporters to add details to a matching report, but the lock workflow locks inactive issues and asks for a new issue instead. It now says to use a matching open report, or open a new one that links a closed issue. The PR template and guide only offered the small-change exception when prior agreement isn't needed, which doesn't fit translation updates. Both now ask contributors to explain why agreement isn't needed. Signed-off-by: Deluan <deluan@navidrome.org> * docs(contributing): ask contributors to be mindful of the maintainer's time Add the request to the end of the communication paragraph in the guide and to the PR template's description hint. Signed-off-by: Deluan <deluan@navidrome.org> * docs(issues): require reproducing bugs on the latest release Restore a required checkbox in the bug form, placed before the version field: "I'm using the latest Navidrome release and can reproduce the issue on it." Drop the version help sentence that said upgrading isn't required, since it now contradicts the checkbox. Signed-off-by: Deluan <deluan@navidrome.org> * docs(issues): turn the bug form search guidance into a checkbox The long intro paragraph was easy to skip. It now only thanks the reporter and links private security reporting. A required checkbox, grouped with the latest-release one at the top, confirms the reporter searched open and closed issues. The "What happened" help asks reporters to link a matching closed issue. The steps help now says "If it happens only sometimes" instead of mentioning problems that can't be reproduced, so it no longer conflicts with the required reproduction checkbox. Signed-off-by: Deluan <deluan@navidrome.org> * docs(pr-template): ask for AI use with Yes and No checkboxes Replace the free-text "Yes / No" line with two checkboxes. Contributors tick exactly one, so empty boxes clearly mean the question wasn't answered. Signed-off-by: Deluan <deluan@navidrome.org> --------- Signed-off-by: Deluan <deluan@navidrome.org>
2026-11-08 13:20:09 -05:00
## Review your work before opening a PR
docs: update contribution policy and PR/Issues templates (#6417) * docs(contributing): propose updated contribution policy Draft proposal for maintainer review. Rewrite the contribution guide around prior scope agreement, personal review, AI disclosure and maintainability, while keeping the commit conventions and DCO sign-off. Add AI use and review items to the PR template, keeping its headings. Simplify the bug form so only what happened, the version and the Code of Conduct are required, and it no longer asks for an upgrade or a duplicate-search attestation. Update the selector text and point README feature requests to Discussions. Keep the pull-requests anchor because the stale workflow links to it. Signed-off-by: Deluan <deluan@navidrome.org> * docs(contributing): allow AI-assisted PR text and review replies Let contributors use AI tools to draft, edit, or translate PR explanations and review replies, as long as they review the final text, agree with it, and take responsibility for it. The PR template description hint now says the same instead of asking for the contributor's own words. Signed-off-by: Deluan <deluan@navidrome.org> * docs(contributing): route closed-issue regressions and no-agreement PRs The bug form told reporters to add details to a matching report, but the lock workflow locks inactive issues and asks for a new issue instead. It now says to use a matching open report, or open a new one that links a closed issue. The PR template and guide only offered the small-change exception when prior agreement isn't needed, which doesn't fit translation updates. Both now ask contributors to explain why agreement isn't needed. Signed-off-by: Deluan <deluan@navidrome.org> * docs(contributing): ask contributors to be mindful of the maintainer's time Add the request to the end of the communication paragraph in the guide and to the PR template's description hint. Signed-off-by: Deluan <deluan@navidrome.org> * docs(issues): require reproducing bugs on the latest release Restore a required checkbox in the bug form, placed before the version field: "I'm using the latest Navidrome release and can reproduce the issue on it." Drop the version help sentence that said upgrading isn't required, since it now contradicts the checkbox. Signed-off-by: Deluan <deluan@navidrome.org> * docs(issues): turn the bug form search guidance into a checkbox The long intro paragraph was easy to skip. It now only thanks the reporter and links private security reporting. A required checkbox, grouped with the latest-release one at the top, confirms the reporter searched open and closed issues. The "What happened" help asks reporters to link a matching closed issue. The steps help now says "If it happens only sometimes" instead of mentioning problems that can't be reproduced, so it no longer conflicts with the required reproduction checkbox. Signed-off-by: Deluan <deluan@navidrome.org> * docs(pr-template): ask for AI use with Yes and No checkboxes Replace the free-text "Yes / No" line with two checkboxes. Contributors tick exactly one, so empty boxes clearly mean the question wasn't answered. Signed-off-by: Deluan <deluan@navidrome.org> --------- Signed-off-by: Deluan <deluan@navidrome.org>
2026-11-08 13:20:09 -05:00
Before opening any pull request, including a draft, you must personally read and review the entire diff and the relevant surrounding code, understand the implementation, and verify the affected behavior. This applies when an AI agent writes the code or creates the PR for you. An agent's summary or review does not satisfy this requirement. Personally review each subsequent update and verify its effects before pushing it or asking an agent to push it.
docs: update contribution policy and PR/Issues templates (#6417) * docs(contributing): propose updated contribution policy Draft proposal for maintainer review. Rewrite the contribution guide around prior scope agreement, personal review, AI disclosure and maintainability, while keeping the commit conventions and DCO sign-off. Add AI use and review items to the PR template, keeping its headings. Simplify the bug form so only what happened, the version and the Code of Conduct are required, and it no longer asks for an upgrade or a duplicate-search attestation. Update the selector text and point README feature requests to Discussions. Keep the pull-requests anchor because the stale workflow links to it. Signed-off-by: Deluan <deluan@navidrome.org> * docs(contributing): allow AI-assisted PR text and review replies Let contributors use AI tools to draft, edit, or translate PR explanations and review replies, as long as they review the final text, agree with it, and take responsibility for it. The PR template description hint now says the same instead of asking for the contributor's own words. Signed-off-by: Deluan <deluan@navidrome.org> * docs(contributing): route closed-issue regressions and no-agreement PRs The bug form told reporters to add details to a matching report, but the lock workflow locks inactive issues and asks for a new issue instead. It now says to use a matching open report, or open a new one that links a closed issue. The PR template and guide only offered the small-change exception when prior agreement isn't needed, which doesn't fit translation updates. Both now ask contributors to explain why agreement isn't needed. Signed-off-by: Deluan <deluan@navidrome.org> * docs(contributing): ask contributors to be mindful of the maintainer's time Add the request to the end of the communication paragraph in the guide and to the PR template's description hint. Signed-off-by: Deluan <deluan@navidrome.org> * docs(issues): require reproducing bugs on the latest release Restore a required checkbox in the bug form, placed before the version field: "I'm using the latest Navidrome release and can reproduce the issue on it." Drop the version help sentence that said upgrading isn't required, since it now contradicts the checkbox. Signed-off-by: Deluan <deluan@navidrome.org> * docs(issues): turn the bug form search guidance into a checkbox The long intro paragraph was easy to skip. It now only thanks the reporter and links private security reporting. A required checkbox, grouped with the latest-release one at the top, confirms the reporter searched open and closed issues. The "What happened" help asks reporters to link a matching closed issue. The steps help now says "If it happens only sometimes" instead of mentioning problems that can't be reproduced, so it no longer conflicts with the required reproduction checkbox. Signed-off-by: Deluan <deluan@navidrome.org> * docs(pr-template): ask for AI use with Yes and No checkboxes Replace the free-text "Yes / No" line with two checkboxes. Contributors tick exactly one, so empty boxes clearly mean the question wasn't answered. Signed-off-by: Deluan <deluan@navidrome.org> --------- Signed-off-by: Deluan <deluan@navidrome.org>
2026-11-08 13:20:09 -05:00
Check the assumptions behind the change. Explain the implementation and important tradeoffs in your own words. For code changes, personally test the affected functionality, add regression tests where practical, and report the commands run and results actually observed. Identify failures, untested cases, and limitations. If an automated test is impractical, explain why and provide manual verification steps.
docs: update contribution policy and PR/Issues templates (#6417) * docs(contributing): propose updated contribution policy Draft proposal for maintainer review. Rewrite the contribution guide around prior scope agreement, personal review, AI disclosure and maintainability, while keeping the commit conventions and DCO sign-off. Add AI use and review items to the PR template, keeping its headings. Simplify the bug form so only what happened, the version and the Code of Conduct are required, and it no longer asks for an upgrade or a duplicate-search attestation. Update the selector text and point README feature requests to Discussions. Keep the pull-requests anchor because the stale workflow links to it. Signed-off-by: Deluan <deluan@navidrome.org> * docs(contributing): allow AI-assisted PR text and review replies Let contributors use AI tools to draft, edit, or translate PR explanations and review replies, as long as they review the final text, agree with it, and take responsibility for it. The PR template description hint now says the same instead of asking for the contributor's own words. Signed-off-by: Deluan <deluan@navidrome.org> * docs(contributing): route closed-issue regressions and no-agreement PRs The bug form told reporters to add details to a matching report, but the lock workflow locks inactive issues and asks for a new issue instead. It now says to use a matching open report, or open a new one that links a closed issue. The PR template and guide only offered the small-change exception when prior agreement isn't needed, which doesn't fit translation updates. Both now ask contributors to explain why agreement isn't needed. Signed-off-by: Deluan <deluan@navidrome.org> * docs(contributing): ask contributors to be mindful of the maintainer's time Add the request to the end of the communication paragraph in the guide and to the PR template's description hint. Signed-off-by: Deluan <deluan@navidrome.org> * docs(issues): require reproducing bugs on the latest release Restore a required checkbox in the bug form, placed before the version field: "I'm using the latest Navidrome release and can reproduce the issue on it." Drop the version help sentence that said upgrading isn't required, since it now contradicts the checkbox. Signed-off-by: Deluan <deluan@navidrome.org> * docs(issues): turn the bug form search guidance into a checkbox The long intro paragraph was easy to skip. It now only thanks the reporter and links private security reporting. A required checkbox, grouped with the latest-release one at the top, confirms the reporter searched open and closed issues. The "What happened" help asks reporters to link a matching closed issue. The steps help now says "If it happens only sometimes" instead of mentioning problems that can't be reproduced, so it no longer conflicts with the required reproduction checkbox. Signed-off-by: Deluan <deluan@navidrome.org> * docs(pr-template): ask for AI use with Yes and No checkboxes Replace the free-text "Yes / No" line with two checkboxes. Contributors tick exactly one, so empty boxes clearly mean the question wasn't answered. Signed-off-by: Deluan <deluan@navidrome.org> --------- Signed-off-by: Deluan <deluan@navidrome.org>
2026-11-08 13:20:09 -05:00
Stay involved during review: answer questions, investigate feedback, and revise the work. If you need more time or cannot continue, say so. The maintainer is not committing to finish an abandoned implementation.
docs: update contribution policy and PR/Issues templates (#6417) * docs(contributing): propose updated contribution policy Draft proposal for maintainer review. Rewrite the contribution guide around prior scope agreement, personal review, AI disclosure and maintainability, while keeping the commit conventions and DCO sign-off. Add AI use and review items to the PR template, keeping its headings. Simplify the bug form so only what happened, the version and the Code of Conduct are required, and it no longer asks for an upgrade or a duplicate-search attestation. Update the selector text and point README feature requests to Discussions. Keep the pull-requests anchor because the stale workflow links to it. Signed-off-by: Deluan <deluan@navidrome.org> * docs(contributing): allow AI-assisted PR text and review replies Let contributors use AI tools to draft, edit, or translate PR explanations and review replies, as long as they review the final text, agree with it, and take responsibility for it. The PR template description hint now says the same instead of asking for the contributor's own words. Signed-off-by: Deluan <deluan@navidrome.org> * docs(contributing): route closed-issue regressions and no-agreement PRs The bug form told reporters to add details to a matching report, but the lock workflow locks inactive issues and asks for a new issue instead. It now says to use a matching open report, or open a new one that links a closed issue. The PR template and guide only offered the small-change exception when prior agreement isn't needed, which doesn't fit translation updates. Both now ask contributors to explain why agreement isn't needed. Signed-off-by: Deluan <deluan@navidrome.org> * docs(contributing): ask contributors to be mindful of the maintainer's time Add the request to the end of the communication paragraph in the guide and to the PR template's description hint. Signed-off-by: Deluan <deluan@navidrome.org> * docs(issues): require reproducing bugs on the latest release Restore a required checkbox in the bug form, placed before the version field: "I'm using the latest Navidrome release and can reproduce the issue on it." Drop the version help sentence that said upgrading isn't required, since it now contradicts the checkbox. Signed-off-by: Deluan <deluan@navidrome.org> * docs(issues): turn the bug form search guidance into a checkbox The long intro paragraph was easy to skip. It now only thanks the reporter and links private security reporting. A required checkbox, grouped with the latest-release one at the top, confirms the reporter searched open and closed issues. The "What happened" help asks reporters to link a matching closed issue. The steps help now says "If it happens only sometimes" instead of mentioning problems that can't be reproduced, so it no longer conflicts with the required reproduction checkbox. Signed-off-by: Deluan <deluan@navidrome.org> * docs(pr-template): ask for AI use with Yes and No checkboxes Replace the free-text "Yes / No" line with two checkboxes. Contributors tick exactly one, so empty boxes clearly mean the question wasn't answered. Signed-off-by: Deluan <deluan@navidrome.org> --------- Signed-off-by: Deluan <deluan@navidrome.org>
2026-11-08 13:20:09 -05:00
## AI Disclosure
docs: update contribution policy and PR/Issues templates (#6417) * docs(contributing): propose updated contribution policy Draft proposal for maintainer review. Rewrite the contribution guide around prior scope agreement, personal review, AI disclosure and maintainability, while keeping the commit conventions and DCO sign-off. Add AI use and review items to the PR template, keeping its headings. Simplify the bug form so only what happened, the version and the Code of Conduct are required, and it no longer asks for an upgrade or a duplicate-search attestation. Update the selector text and point README feature requests to Discussions. Keep the pull-requests anchor because the stale workflow links to it. Signed-off-by: Deluan <deluan@navidrome.org> * docs(contributing): allow AI-assisted PR text and review replies Let contributors use AI tools to draft, edit, or translate PR explanations and review replies, as long as they review the final text, agree with it, and take responsibility for it. The PR template description hint now says the same instead of asking for the contributor's own words. Signed-off-by: Deluan <deluan@navidrome.org> * docs(contributing): route closed-issue regressions and no-agreement PRs The bug form told reporters to add details to a matching report, but the lock workflow locks inactive issues and asks for a new issue instead. It now says to use a matching open report, or open a new one that links a closed issue. The PR template and guide only offered the small-change exception when prior agreement isn't needed, which doesn't fit translation updates. Both now ask contributors to explain why agreement isn't needed. Signed-off-by: Deluan <deluan@navidrome.org> * docs(contributing): ask contributors to be mindful of the maintainer's time Add the request to the end of the communication paragraph in the guide and to the PR template's description hint. Signed-off-by: Deluan <deluan@navidrome.org> * docs(issues): require reproducing bugs on the latest release Restore a required checkbox in the bug form, placed before the version field: "I'm using the latest Navidrome release and can reproduce the issue on it." Drop the version help sentence that said upgrading isn't required, since it now contradicts the checkbox. Signed-off-by: Deluan <deluan@navidrome.org> * docs(issues): turn the bug form search guidance into a checkbox The long intro paragraph was easy to skip. It now only thanks the reporter and links private security reporting. A required checkbox, grouped with the latest-release one at the top, confirms the reporter searched open and closed issues. The "What happened" help asks reporters to link a matching closed issue. The steps help now says "If it happens only sometimes" instead of mentioning problems that can't be reproduced, so it no longer conflicts with the required reproduction checkbox. Signed-off-by: Deluan <deluan@navidrome.org> * docs(pr-template): ask for AI use with Yes and No checkboxes Replace the free-text "Yes / No" line with two checkboxes. Contributors tick exactly one, so empty boxes clearly mean the question wasn't answered. Signed-off-by: Deluan <deluan@navidrome.org> --------- Signed-off-by: Deluan <deluan@navidrome.org>
2026-11-08 13:20:09 -05:00
AI tools may assist professional and hobbyist contributors. All code contributors must be able to personally understand, review, test, and maintain their changes, including security and performance implications; no diploma, job title, or employment is required. If you cannot assess the code yourself, report the problem instead of submitting AI-generated code. Bug reports, documentation improvements, and translations remain welcome.
docs: update contribution policy and PR/Issues templates (#6417) * docs(contributing): propose updated contribution policy Draft proposal for maintainer review. Rewrite the contribution guide around prior scope agreement, personal review, AI disclosure and maintainability, while keeping the commit conventions and DCO sign-off. Add AI use and review items to the PR template, keeping its headings. Simplify the bug form so only what happened, the version and the Code of Conduct are required, and it no longer asks for an upgrade or a duplicate-search attestation. Update the selector text and point README feature requests to Discussions. Keep the pull-requests anchor because the stale workflow links to it. Signed-off-by: Deluan <deluan@navidrome.org> * docs(contributing): allow AI-assisted PR text and review replies Let contributors use AI tools to draft, edit, or translate PR explanations and review replies, as long as they review the final text, agree with it, and take responsibility for it. The PR template description hint now says the same instead of asking for the contributor's own words. Signed-off-by: Deluan <deluan@navidrome.org> * docs(contributing): route closed-issue regressions and no-agreement PRs The bug form told reporters to add details to a matching report, but the lock workflow locks inactive issues and asks for a new issue instead. It now says to use a matching open report, or open a new one that links a closed issue. The PR template and guide only offered the small-change exception when prior agreement isn't needed, which doesn't fit translation updates. Both now ask contributors to explain why agreement isn't needed. Signed-off-by: Deluan <deluan@navidrome.org> * docs(contributing): ask contributors to be mindful of the maintainer's time Add the request to the end of the communication paragraph in the guide and to the PR template's description hint. Signed-off-by: Deluan <deluan@navidrome.org> * docs(issues): require reproducing bugs on the latest release Restore a required checkbox in the bug form, placed before the version field: "I'm using the latest Navidrome release and can reproduce the issue on it." Drop the version help sentence that said upgrading isn't required, since it now contradicts the checkbox. Signed-off-by: Deluan <deluan@navidrome.org> * docs(issues): turn the bug form search guidance into a checkbox The long intro paragraph was easy to skip. It now only thanks the reporter and links private security reporting. A required checkbox, grouped with the latest-release one at the top, confirms the reporter searched open and closed issues. The "What happened" help asks reporters to link a matching closed issue. The steps help now says "If it happens only sometimes" instead of mentioning problems that can't be reproduced, so it no longer conflicts with the required reproduction checkbox. Signed-off-by: Deluan <deluan@navidrome.org> * docs(pr-template): ask for AI use with Yes and No checkboxes Replace the free-text "Yes / No" line with two checkboxes. Contributors tick exactly one, so empty boxes clearly mean the question wasn't answered. Signed-off-by: Deluan <deluan@navidrome.org> --------- Signed-off-by: Deluan <deluan@navidrome.org>
2026-11-08 13:20:09 -05:00
AI-assisted work must meet the personal full-diff review and functional testing requirements above before any PR is opened, including drafts or agent-created PRs. You remain responsible for explaining the implementation, addressing feedback, and correcting the code.
docs: update contribution policy and PR/Issues templates (#6417) * docs(contributing): propose updated contribution policy Draft proposal for maintainer review. Rewrite the contribution guide around prior scope agreement, personal review, AI disclosure and maintainability, while keeping the commit conventions and DCO sign-off. Add AI use and review items to the PR template, keeping its headings. Simplify the bug form so only what happened, the version and the Code of Conduct are required, and it no longer asks for an upgrade or a duplicate-search attestation. Update the selector text and point README feature requests to Discussions. Keep the pull-requests anchor because the stale workflow links to it. Signed-off-by: Deluan <deluan@navidrome.org> * docs(contributing): allow AI-assisted PR text and review replies Let contributors use AI tools to draft, edit, or translate PR explanations and review replies, as long as they review the final text, agree with it, and take responsibility for it. The PR template description hint now says the same instead of asking for the contributor's own words. Signed-off-by: Deluan <deluan@navidrome.org> * docs(contributing): route closed-issue regressions and no-agreement PRs The bug form told reporters to add details to a matching report, but the lock workflow locks inactive issues and asks for a new issue instead. It now says to use a matching open report, or open a new one that links a closed issue. The PR template and guide only offered the small-change exception when prior agreement isn't needed, which doesn't fit translation updates. Both now ask contributors to explain why agreement isn't needed. Signed-off-by: Deluan <deluan@navidrome.org> * docs(contributing): ask contributors to be mindful of the maintainer's time Add the request to the end of the communication paragraph in the guide and to the PR template's description hint. Signed-off-by: Deluan <deluan@navidrome.org> * docs(issues): require reproducing bugs on the latest release Restore a required checkbox in the bug form, placed before the version field: "I'm using the latest Navidrome release and can reproduce the issue on it." Drop the version help sentence that said upgrading isn't required, since it now contradicts the checkbox. Signed-off-by: Deluan <deluan@navidrome.org> * docs(issues): turn the bug form search guidance into a checkbox The long intro paragraph was easy to skip. It now only thanks the reporter and links private security reporting. A required checkbox, grouped with the latest-release one at the top, confirms the reporter searched open and closed issues. The "What happened" help asks reporters to link a matching closed issue. The steps help now says "If it happens only sometimes" instead of mentioning problems that can't be reproduced, so it no longer conflicts with the required reproduction checkbox. Signed-off-by: Deluan <deluan@navidrome.org> * docs(pr-template): ask for AI use with Yes and No checkboxes Replace the free-text "Yes / No" line with two checkboxes. Contributors tick exactly one, so empty boxes clearly mean the question wasn't answered. Signed-off-by: Deluan <deluan@navidrome.org> --------- Signed-off-by: Deluan <deluan@navidrome.org>
2026-11-08 13:20:09 -05:00
Declare whether AI was used to generate or modify submitted code or tests, draft substantive PR text, or create the PR. A simple Yes or No in the PR description is enough. Tool names, prompts, and transcripts are not required.
docs: update contribution policy and PR/Issues templates (#6417) * docs(contributing): propose updated contribution policy Draft proposal for maintainer review. Rewrite the contribution guide around prior scope agreement, personal review, AI disclosure and maintainability, while keeping the commit conventions and DCO sign-off. Add AI use and review items to the PR template, keeping its headings. Simplify the bug form so only what happened, the version and the Code of Conduct are required, and it no longer asks for an upgrade or a duplicate-search attestation. Update the selector text and point README feature requests to Discussions. Keep the pull-requests anchor because the stale workflow links to it. Signed-off-by: Deluan <deluan@navidrome.org> * docs(contributing): allow AI-assisted PR text and review replies Let contributors use AI tools to draft, edit, or translate PR explanations and review replies, as long as they review the final text, agree with it, and take responsibility for it. The PR template description hint now says the same instead of asking for the contributor's own words. Signed-off-by: Deluan <deluan@navidrome.org> * docs(contributing): route closed-issue regressions and no-agreement PRs The bug form told reporters to add details to a matching report, but the lock workflow locks inactive issues and asks for a new issue instead. It now says to use a matching open report, or open a new one that links a closed issue. The PR template and guide only offered the small-change exception when prior agreement isn't needed, which doesn't fit translation updates. Both now ask contributors to explain why agreement isn't needed. Signed-off-by: Deluan <deluan@navidrome.org> * docs(contributing): ask contributors to be mindful of the maintainer's time Add the request to the end of the communication paragraph in the guide and to the PR template's description hint. Signed-off-by: Deluan <deluan@navidrome.org> * docs(issues): require reproducing bugs on the latest release Restore a required checkbox in the bug form, placed before the version field: "I'm using the latest Navidrome release and can reproduce the issue on it." Drop the version help sentence that said upgrading isn't required, since it now contradicts the checkbox. Signed-off-by: Deluan <deluan@navidrome.org> * docs(issues): turn the bug form search guidance into a checkbox The long intro paragraph was easy to skip. It now only thanks the reporter and links private security reporting. A required checkbox, grouped with the latest-release one at the top, confirms the reporter searched open and closed issues. The "What happened" help asks reporters to link a matching closed issue. The steps help now says "If it happens only sometimes" instead of mentioning problems that can't be reproduced, so it no longer conflicts with the required reproduction checkbox. Signed-off-by: Deluan <deluan@navidrome.org> * docs(pr-template): ask for AI use with Yes and No checkboxes Replace the free-text "Yes / No" line with two checkboxes. Contributors tick exactly one, so empty boxes clearly mean the question wasn't answered. Signed-off-by: Deluan <deluan@navidrome.org> --------- Signed-off-by: Deluan <deluan@navidrome.org>
2026-11-08 13:20:09 -05:00
AI tools may help you draft, edit, or translate PR explanations and review replies. Review the final text before you send it, make sure you agree with it, and take responsibility for it. Do not send AI-generated text that you have not reviewed to maintainers or other contributors. Please be mindful of the maintainer's time.
docs: update contribution policy and PR/Issues templates (#6417) * docs(contributing): propose updated contribution policy Draft proposal for maintainer review. Rewrite the contribution guide around prior scope agreement, personal review, AI disclosure and maintainability, while keeping the commit conventions and DCO sign-off. Add AI use and review items to the PR template, keeping its headings. Simplify the bug form so only what happened, the version and the Code of Conduct are required, and it no longer asks for an upgrade or a duplicate-search attestation. Update the selector text and point README feature requests to Discussions. Keep the pull-requests anchor because the stale workflow links to it. Signed-off-by: Deluan <deluan@navidrome.org> * docs(contributing): allow AI-assisted PR text and review replies Let contributors use AI tools to draft, edit, or translate PR explanations and review replies, as long as they review the final text, agree with it, and take responsibility for it. The PR template description hint now says the same instead of asking for the contributor's own words. Signed-off-by: Deluan <deluan@navidrome.org> * docs(contributing): route closed-issue regressions and no-agreement PRs The bug form told reporters to add details to a matching report, but the lock workflow locks inactive issues and asks for a new issue instead. It now says to use a matching open report, or open a new one that links a closed issue. The PR template and guide only offered the small-change exception when prior agreement isn't needed, which doesn't fit translation updates. Both now ask contributors to explain why agreement isn't needed. Signed-off-by: Deluan <deluan@navidrome.org> * docs(contributing): ask contributors to be mindful of the maintainer's time Add the request to the end of the communication paragraph in the guide and to the PR template's description hint. Signed-off-by: Deluan <deluan@navidrome.org> * docs(issues): require reproducing bugs on the latest release Restore a required checkbox in the bug form, placed before the version field: "I'm using the latest Navidrome release and can reproduce the issue on it." Drop the version help sentence that said upgrading isn't required, since it now contradicts the checkbox. Signed-off-by: Deluan <deluan@navidrome.org> * docs(issues): turn the bug form search guidance into a checkbox The long intro paragraph was easy to skip. It now only thanks the reporter and links private security reporting. A required checkbox, grouped with the latest-release one at the top, confirms the reporter searched open and closed issues. The "What happened" help asks reporters to link a matching closed issue. The steps help now says "If it happens only sometimes" instead of mentioning problems that can't be reproduced, so it no longer conflicts with the required reproduction checkbox. Signed-off-by: Deluan <deluan@navidrome.org> * docs(pr-template): ask for AI use with Yes and No checkboxes Replace the free-text "Yes / No" line with two checkboxes. Contributors tick exactly one, so empty boxes clearly mean the question wasn't answered. Signed-off-by: Deluan <deluan@navidrome.org> --------- Signed-off-by: Deluan <deluan@navidrome.org>
2026-11-08 13:20:09 -05:00
## Keep the result maintainable
docs: update contribution policy and PR/Issues templates (#6417) * docs(contributing): propose updated contribution policy Draft proposal for maintainer review. Rewrite the contribution guide around prior scope agreement, personal review, AI disclosure and maintainability, while keeping the commit conventions and DCO sign-off. Add AI use and review items to the PR template, keeping its headings. Simplify the bug form so only what happened, the version and the Code of Conduct are required, and it no longer asks for an upgrade or a duplicate-search attestation. Update the selector text and point README feature requests to Discussions. Keep the pull-requests anchor because the stale workflow links to it. Signed-off-by: Deluan <deluan@navidrome.org> * docs(contributing): allow AI-assisted PR text and review replies Let contributors use AI tools to draft, edit, or translate PR explanations and review replies, as long as they review the final text, agree with it, and take responsibility for it. The PR template description hint now says the same instead of asking for the contributor's own words. Signed-off-by: Deluan <deluan@navidrome.org> * docs(contributing): route closed-issue regressions and no-agreement PRs The bug form told reporters to add details to a matching report, but the lock workflow locks inactive issues and asks for a new issue instead. It now says to use a matching open report, or open a new one that links a closed issue. The PR template and guide only offered the small-change exception when prior agreement isn't needed, which doesn't fit translation updates. Both now ask contributors to explain why agreement isn't needed. Signed-off-by: Deluan <deluan@navidrome.org> * docs(contributing): ask contributors to be mindful of the maintainer's time Add the request to the end of the communication paragraph in the guide and to the PR template's description hint. Signed-off-by: Deluan <deluan@navidrome.org> * docs(issues): require reproducing bugs on the latest release Restore a required checkbox in the bug form, placed before the version field: "I'm using the latest Navidrome release and can reproduce the issue on it." Drop the version help sentence that said upgrading isn't required, since it now contradicts the checkbox. Signed-off-by: Deluan <deluan@navidrome.org> * docs(issues): turn the bug form search guidance into a checkbox The long intro paragraph was easy to skip. It now only thanks the reporter and links private security reporting. A required checkbox, grouped with the latest-release one at the top, confirms the reporter searched open and closed issues. The "What happened" help asks reporters to link a matching closed issue. The steps help now says "If it happens only sometimes" instead of mentioning problems that can't be reproduced, so it no longer conflicts with the required reproduction checkbox. Signed-off-by: Deluan <deluan@navidrome.org> * docs(pr-template): ask for AI use with Yes and No checkboxes Replace the free-text "Yes / No" line with two checkboxes. Contributors tick exactly one, so empty boxes clearly mean the question wasn't answered. Signed-off-by: Deluan <deluan@navidrome.org> --------- Signed-off-by: Deluan <deluan@navidrome.org>
2026-11-08 13:20:09 -05:00
Prefer existing patterns and the smallest clear solution. Justify new abstractions, dependencies, configuration, and compatibility obligations. Include the documentation and tests needed to understand the behavior and change it safely later.
docs: update contribution policy and PR/Issues templates (#6417) * docs(contributing): propose updated contribution policy Draft proposal for maintainer review. Rewrite the contribution guide around prior scope agreement, personal review, AI disclosure and maintainability, while keeping the commit conventions and DCO sign-off. Add AI use and review items to the PR template, keeping its headings. Simplify the bug form so only what happened, the version and the Code of Conduct are required, and it no longer asks for an upgrade or a duplicate-search attestation. Update the selector text and point README feature requests to Discussions. Keep the pull-requests anchor because the stale workflow links to it. Signed-off-by: Deluan <deluan@navidrome.org> * docs(contributing): allow AI-assisted PR text and review replies Let contributors use AI tools to draft, edit, or translate PR explanations and review replies, as long as they review the final text, agree with it, and take responsibility for it. The PR template description hint now says the same instead of asking for the contributor's own words. Signed-off-by: Deluan <deluan@navidrome.org> * docs(contributing): route closed-issue regressions and no-agreement PRs The bug form told reporters to add details to a matching report, but the lock workflow locks inactive issues and asks for a new issue instead. It now says to use a matching open report, or open a new one that links a closed issue. The PR template and guide only offered the small-change exception when prior agreement isn't needed, which doesn't fit translation updates. Both now ask contributors to explain why agreement isn't needed. Signed-off-by: Deluan <deluan@navidrome.org> * docs(contributing): ask contributors to be mindful of the maintainer's time Add the request to the end of the communication paragraph in the guide and to the PR template's description hint. Signed-off-by: Deluan <deluan@navidrome.org> * docs(issues): require reproducing bugs on the latest release Restore a required checkbox in the bug form, placed before the version field: "I'm using the latest Navidrome release and can reproduce the issue on it." Drop the version help sentence that said upgrading isn't required, since it now contradicts the checkbox. Signed-off-by: Deluan <deluan@navidrome.org> * docs(issues): turn the bug form search guidance into a checkbox The long intro paragraph was easy to skip. It now only thanks the reporter and links private security reporting. A required checkbox, grouped with the latest-release one at the top, confirms the reporter searched open and closed issues. The "What happened" help asks reporters to link a matching closed issue. The steps help now says "If it happens only sometimes" instead of mentioning problems that can't be reproduced, so it no longer conflicts with the required reproduction checkbox. Signed-off-by: Deluan <deluan@navidrome.org> * docs(pr-template): ask for AI use with Yes and No checkboxes Replace the free-text "Yes / No" line with two checkboxes. Contributors tick exactly one, so empty boxes clearly mean the question wasn't answered. Signed-off-by: Deluan <deluan@navidrome.org> --------- Signed-off-by: Deluan <deluan@navidrome.org>
2026-11-08 13:20:09 -05:00
The maintainer must be able to understand and maintain the result without depending on your future availability. An offer to provide ongoing support does not replace this requirement. A working implementation may still be declined if its benefit does not justify its complexity or maintenance cost.
<a id="pull-requests"></a>
## Submitting and review
- Check existing [open and closed PRs](https://github.com/navidrome/navidrome/pulls?q=is%3Apr) to avoid duplicate work. If the issue author or another contributor has offered to submit a fix, ask in the issue before you start.
docs: update contribution policy and PR/Issues templates (#6417) * docs(contributing): propose updated contribution policy Draft proposal for maintainer review. Rewrite the contribution guide around prior scope agreement, personal review, AI disclosure and maintainability, while keeping the commit conventions and DCO sign-off. Add AI use and review items to the PR template, keeping its headings. Simplify the bug form so only what happened, the version and the Code of Conduct are required, and it no longer asks for an upgrade or a duplicate-search attestation. Update the selector text and point README feature requests to Discussions. Keep the pull-requests anchor because the stale workflow links to it. Signed-off-by: Deluan <deluan@navidrome.org> * docs(contributing): allow AI-assisted PR text and review replies Let contributors use AI tools to draft, edit, or translate PR explanations and review replies, as long as they review the final text, agree with it, and take responsibility for it. The PR template description hint now says the same instead of asking for the contributor's own words. Signed-off-by: Deluan <deluan@navidrome.org> * docs(contributing): route closed-issue regressions and no-agreement PRs The bug form told reporters to add details to a matching report, but the lock workflow locks inactive issues and asks for a new issue instead. It now says to use a matching open report, or open a new one that links a closed issue. The PR template and guide only offered the small-change exception when prior agreement isn't needed, which doesn't fit translation updates. Both now ask contributors to explain why agreement isn't needed. Signed-off-by: Deluan <deluan@navidrome.org> * docs(contributing): ask contributors to be mindful of the maintainer's time Add the request to the end of the communication paragraph in the guide and to the PR template's description hint. Signed-off-by: Deluan <deluan@navidrome.org> * docs(issues): require reproducing bugs on the latest release Restore a required checkbox in the bug form, placed before the version field: "I'm using the latest Navidrome release and can reproduce the issue on it." Drop the version help sentence that said upgrading isn't required, since it now contradicts the checkbox. Signed-off-by: Deluan <deluan@navidrome.org> * docs(issues): turn the bug form search guidance into a checkbox The long intro paragraph was easy to skip. It now only thanks the reporter and links private security reporting. A required checkbox, grouped with the latest-release one at the top, confirms the reporter searched open and closed issues. The "What happened" help asks reporters to link a matching closed issue. The steps help now says "If it happens only sometimes" instead of mentioning problems that can't be reproduced, so it no longer conflicts with the required reproduction checkbox. Signed-off-by: Deluan <deluan@navidrome.org> * docs(pr-template): ask for AI use with Yes and No checkboxes Replace the free-text "Yes / No" line with two checkboxes. Contributors tick exactly one, so empty boxes clearly mean the question wasn't answered. Signed-off-by: Deluan <deluan@navidrome.org> --------- Signed-off-by: Deluan <deluan@navidrome.org>
2026-11-08 13:20:09 -05:00
- Use the [development environment instructions](https://www.navidrome.org/docs/developers/dev-environment/). Work on a branch in your fork.
- Complete the [PR template](.github/pull_request_template.md) with the scope agreement or why agreement is not needed, verification evidence, and maintenance implications. Keep each PR focused.
- Follow the [commit conventions and DCO requirements](#commit-conventions-and-dco) below.
Review and merge are discretionary. Proposals may be declined, simplified, split, or deferred. PRs that do not fit Navidrome's direction, the agreed scope, or the maintainer's capacity to maintain them may be closed without detailed code review or prolonged discussion. PRs lacking evidence or left with unresolved questions may also be closed. Agreement to pursue work does not guarantee review or merge. Please do not tag the maintainer, send private messages, or post status requests to obtain faster review.
## Commit conventions and DCO
Use this commit format: `<type>(scope): <description>`, with an optional body.
Allowed types: `feat`, `fix`, `sec`, `docs`, `style`, `refactor`, `perf`, `test`, `build`, `revert`, `chore`.
Use a relevant file or folder as the scope and a concise description. Reference the related issue when one exists, and include `BREAKING CHANGE` in the body for breaking changes. Sign off every commit using `git commit --signoff`. These requirements apply equally to AI-assisted work.