| # Code of AI Conduct |
| |
| This project accepts AI-assisted contributions, but contributors remain fully |
| responsible for the changes they submit. |
| |
| ## Requirements |
| |
| - Use AI as a tool, not as an authority. Verify behavior, correctness, and |
| compatibility yourself before submitting changes. |
| - Keep changes narrow. Do not use AI to generate broad rewrites, drive-by |
| refactors, or style-only churn. |
| - Preserve HarfBuzz's public API and ABI unless a change explicitly calls for |
| it. |
| - Follow the repository guidance in [`AGENTS.md`](AGENTS.md), |
| [`README.md`](README.md), [`BUILD.md`](BUILD.md), [`TESTING.md`](TESTING.md), |
| and related local documentation. |
| - Do not submit generated code, text, or tests that you do not understand. |
| - Do not fabricate benchmarks, bug reports, test results, or reproduction |
| steps. |
| - Do not paste private code, non-public fonts, credentials, tokens, or other |
| confidential material into external AI systems. |
| - Respect licensing and attribution requirements. Do not submit AI-generated |
| content that may have unclear provenance or incompatible licensing. |
| |
| ## Attribution |
| |
| - When AI tools contributed meaningfully to a change, add an `Assisted-by:` |
| trailer to the commit message (e.g. `Assisted-by: Claude`). Routine use of |
| autocompletion or spelling correction does not require attribution. |
| |
| ## Pull requests |
| |
| - Describe what was verified locally, including the exact build or test commands |
| you ran. |
| - Call out uncertainty, skipped validation, or areas that need extra review. |
| - Be prepared to revise or discard AI-generated changes that do not meet the |
| project's standards. |
| |
| ## Maintainer expectations |
| |
| - Review AI-assisted contributions by the same technical standards as any other |
| contribution. |
| - Prefer reproducible fixes, focused diffs, and adequate tests over volume. |
| - Reject changes that appear to be unreviewed AI output, including changes that |
| add unnecessary complexity, invent behavior, or ignore repository guidance. |
| |
| In short: if AI helped produce a change, a human contributor must still own the |
| result end to end. |