mirror of
https://github.com/systemd/systemd.git
synced 2026-06-24 08:47:49 +00:00
The previous policy was primarily written from a standpoint that AI models are not very good and we didn't wanna waste any time reviewing PRs generated by AI. Now that AI models have become actually good and their output is just as good as regular contributions, let's stop requiring the disclosure as its pointless to still have it, it doesn't really matter anymore whether a patch was written with or without AI. It's up to the author to make sure they're not wasting our time by submitting unreviewed, untested code upstream, regardless of whether that code is written by an AI or not. The new policy is inspired by https://github.com/lxc/incus/pull/3506, with various removals to be less adverse to the usage of AI.
1.9 KiB
1.9 KiB
AGENTS.md
This file provides guidance to AI coding agents when working with code in this repository. Only add instructions to this file if you've seen an AI agent mess up that particular bit of logic in practice.
Legal
- Only human beings can ever be credited within commit messages. This means no Co-Developed-By or Co-Authored-By or anything similar that lists an AI model instead of a human being.
Key Documentation
Always consult these files as needed:
docs/ARCHITECTURE.md— code organization and component relationshipsdocs/HACKING.md— development workflow with mkosidocs/CODING_STYLE.md— full style guide (must-read before writing code)docs/CONTRIBUTING.md— contribution guidelines and PR workflow
Running arbitrary commands
- Never use
mkosi boxto wrap commands. You are either already running inside an mkosi box environment or running outside of it — use the tools available in your current environment directly.
Build and Test Commands
- Never compile individual files. Always run
meson compile -C build <target>to build the target you're working on. Meson handles incremental compilation automatically. - Never run
meson compilefollowed bymeson testas separate steps. Always runmeson test -C build -v <TEST-NAME>directly. Meson will automatically rebuild any required targets before running tests. - Never invent your own build commands or try to optimize the build process.
- Never use
head,tail, or pipe (|) the output of build or test commands. Always let the full output display. This is critical for diagnosing build and test failures.
Integration Tests
- Never use
grep -qin pipelines; usegrep >/dev/nullinstead (avoidsSIGPIPE)
Pull Request Review Instructions
- Always check out the PR in a git worktree in
worktrees/, review it locally and remove the worktree when finished.