| # AGENTS.md — BitBake |
| |
| Guidance for AI agents working in the `bitbake` repository. |
| |
| ## Making changes |
| |
| - No web PR workflow. The project uses **patches on mailing lists** |
| (bitbake-devel@lists.openembedded.org), tracked via patchwork. Don't assume |
| GitHub PR conventions apply. |
| - One Git commit per logical change (e.g., one commit per recipe added/upgraded). |
| - Commit message format: |
| - Summary line prefixed with the recipe name or short file path, |
| e.g. `openssl: upgrade 3.2.0 -> 3.2.1` or `classes/rootfs-postcommands: fix typo`. |
| Check `git log --oneline <path>` for the prefix convention already in use. |
| - Body explains what/why/how, and how it was tested. |
| - Prefer explaining *why* a change was made over restating what's |
| already visible in the diff, unless the diff is long/hard to follow |
| or the reason for the change isn't known — in those cases, summarize |
| what changed instead. |
| - Be succinct: use as few sentences and lines as possible while still |
| covering what/why/how. Cut restatements, filler, and any detail a |
| reviewer wouldn't need (e.g. exact test-run counts, step-by-step |
| narration). One short paragraph is usually enough; only add a second |
| if a distinct point (e.g. testing) needs it. |
| - The most relevant information about the change should be presented first. |
| - Reference bugs as `[YOCTO #1234]` when applicable. |
| - Use `Reported-by`, `Suggested-by`, `Tested-by`, `Reviewed-by`, `Cc` tags |
| where relevant. |
| |
| ### AI-generated code |
| |
| - **Mandatory**: any AI-generated code/commit must add an `AI-Generated:` |
| tag line in the commit message, placed *before* `Signed-off-by` (if present), |
| naming the tool used, e.g.: |
| |
| ``` |
| component: Add the ability to ... |
| |
| AI-Generated: Uses GitHub Copilot |
| ``` |
| |
| - Also add a code comment or other in-patch indication that the code is |
| AI-generated (recommended, not just the commit tag). |
| - **Mandatory** Do not automatically add a `Signed-off-by`. This tag must |
| always be written by the human contributor, never by the AI tool — the |
| DCO/Developer's Statement of Origin still applies in full. |
| - Contributor is responsible for confirming the AI tool's terms don't |
| conflict with the project's open source license/IP policy, and that |
| any third-party copyrighted material in the AI output is properly |
| licensed before contributing it. See the Linux Foundation generative AI |
| guidance: https://www.linuxfoundation.org/legal/generative-ai. |
| - `Co-authored-by` should be omitted in favor of the `AI-generated` tag. |
| |
| When in doubt about a convention, grep `git log --oneline <path>` in the |
| target repo for precedent before inventing a new style. |