Skip to content

AI-assisted contribution policy

How we expect contributors to use AI tools when contributing to Tessero.

AI coding assistants are useful, and we do not forbid them. But Tessero is a correctness-critical numerical library, and the same bar applies to every contribution regardless of how it was produced. This policy sets out what we expect.

You are accountable for what you submit

When you open a pull request you are asserting that you understand the change, that it is correct, and that you have the right to contribute it. “An AI wrote it” is not an explanation for a bug, a licensing problem, or code you cannot explain. If you cannot stand behind a change, do not submit it.

Disclose substantial AI assistance

If an AI tool generated a substantial part of a contribution (non-trivial code, algorithms, or prose), note that in the pull request description. A short line is enough. This helps reviewers calibrate and keeps the project honest about provenance.

Correctness must be demonstrated, not asserted

  • Numerical code must be verified against the reference implementations (NumPy and SciPy) with tests, on both backends, following the project’s existing testing conventions. This is the bar the core already meets: full verified parity generated from recorded test runs, with an independent BCMath oracle as a second check.
  • Do not submit plausible-looking output as if it were verified. Show the comparison, and show that the FFI package and the native extension return the same numbers.
  • Benchmarks and accuracy claims must be reproducible, with the hardware and thread count stated.

Licensing and provenance

Do not submit code an AI tool reproduced from a source whose license is incompatible with Tessero, or whose provenance you cannot establish. Tessero is released under the BSD-3-Clause license, and contributions must be compatible with it. Where code is ported from or follows another project, that must be declared so it can be credited in the Acknowledgments and third-party notices.

Respect the reference projects’ names

Do not use AI-generated copy that markets Tessero as a port of NumPy or SciPy to PHP. Use accurate, compatible phrasing such as “NumPy- and SciPy-compatible” or “verified against NumPy and SciPy”. Tessero is an independent project and is not affiliated with or endorsed by NumPy, SciPy or NumFOCUS.

Reviews and issues

Do not use AI tools to mass-generate low-quality issues, reviews, or comments. Automated or bulk submissions that create review burden without adding value may be closed.

This policy complements the project’s contribution guide, Code of Conduct and governance.