|
| 1 | +# Agent Requirements |
| 2 | + |
| 3 | +All agents must follow these rules: |
| 4 | + |
| 5 | +1) Fully test your changes before submitting a PR (run the full suite or all relevant tests). |
| 6 | +2) PR titles must be descriptive and follow Conventional Commits-style prefixes: |
| 7 | + - Common: `feat:`, `fix:`, `chore:`, `refactor:`, `docs:`, `test:`, `perf:` |
| 8 | + - Support titles: `fix(docs):`, `fix(benchmarks):`, `fix(cicd):` |
| 9 | +3) Commit messages must follow the same Conventional Commits-style prefixes and include a short functional description plus a user-facing value proposition. |
| 10 | +4) PR descriptions must include Summary, Rationale, and Details sections. |
| 11 | +5) Run relevant Python tests for changes (pytest/unittest or the repo's configured runner). |
| 12 | +6) Follow formatting/linting configured in pyproject.toml, setup.cfg, tox.ini, or ruff.toml. |
| 13 | +7) Update dependency lockfiles when adding or removing Python dependencies. |
| 14 | +8) If the repo uses mypyc, verify tests run against compiled extensions (not interpreted Python) and note how you confirmed. |
| 15 | +9) Maximize the use of caching in GitHub workflow files to minimize run duration. |
| 16 | +10) Use one of `paths` or `paths-ignore` in every workflow file to make sure workflows only run when required. |
| 17 | +11) All mypy configuration (flags, overrides, per-module ignores, and file targets) should go in pyproject.toml. Do not split config across CLI args, mypy.ini, setup.cfg, or workflow steps. |
| 18 | +12) Centralize pytest settings (flags, markers, ignore patterns, and targets) in pyproject.toml, pytest.ini, setup.cfg, or tox.ini; workflows/hooks should call pytest without inline args. |
| 19 | +13) Keep base image tags pinned. |
| 20 | + |
| 21 | +Reference: https://www.conventionalcommits.org/en/v1.0.0/ |
0 commit comments