Skip to content

Commit b7355eb

Browse files
committed
docs: Various updates related to the AI policy (#5116)
I was reminded by Eric Enderton that we should mention and cross reference the recently-added AI policy docs in other places, since it can easily be overlooked now, buried in the docs directory. * Mention it in the pull request template's checklist. * In the CONTRIBUTING guide. * Briefly mention in the main README in the list of important documentation for developers. * A few very minor touch-ups and wordsmithing in other areas, no substantive changes. Also, responding to comments at the OSL TSC meeting this week, I added a brief section explaining that we don't have any specific guidance for how AI tools should or shouldn't be used for "artistically creative" work, since this project repo doesn't really house such things. This is mostly for the benefit of other projects that may use our policy document as inspiration, to warn them that they may have issues that need policy guidance but that we do not address. Signed-off-by: Larry Gritz <lg@larrygritz.com>
1 parent 7df1da2 commit b7355eb

4 files changed

Lines changed: 70 additions & 28 deletions

File tree

.github/PULL_REQUEST_TEMPLATE.md

Lines changed: 18 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -19,16 +19,21 @@
1919

2020
<!-- Put an 'x' in the boxes as you complete the checklist items -->
2121

22-
- [ ] I have read the [contribution guidelines](https://github.com/AcademySoftwareFoundation/OpenImageIO/blob/main/CONTRIBUTING.md).
23-
- [ ] I have updated the documentation, if applicable. (Check if there is no
24-
need to update the documentation, for example if this is a bug fix that
25-
doesn't change the API.)
26-
- [ ] I have ensured that the change is tested somewhere in the testsuite
27-
(adding new test cases if necessary).
28-
- [ ] If I added or modified a C++ API call, I have also amended the
29-
corresponding Python bindings (and if altering ImageBufAlgo functions, also
30-
exposed the new functionality as oiiotool options).
31-
- [ ] My code follows the prevailing code style of this project. If I haven't
32-
already run clang-format before submitting, I definitely will look at the CI
33-
test that runs clang-format and fix anything that it highlights as being
34-
nonconforming.
22+
- [ ] **I have read the guidelines** on [contributions](https://github.com/AcademySoftwareFoundation/OpenImageIO/blob/main/CONTRIBUTING.md) and [code review procedures](https://github.com/AcademySoftwareFoundation/OpenImageIO/blob/main/docs/dev/CodeReview.md).
23+
- [ ] **I have read the [Policy on AI Coding Assistants](https://github.com/AcademySoftwareFoundation/OpenImageIO/blob/main/docs/dev/AI_Policy.md)**
24+
and if I used AI coding assistants, I have an `Assisted-by: TOOL / MODEL`
25+
line in the pull request description above.
26+
- [ ] **I have updated the documentation** if my PR adds features or changes
27+
behavior.
28+
- [ ] **I am sure that this PR's changes are tested in the testsuite**.
29+
- [ ] **I have run and passed the testsuite in CI** *before* submitting the
30+
PR, by pushing the changes to my fork and seeing that the automated CI
31+
passed there. (Exceptions: If most tests pass and you can't figure out why
32+
the remaining ones fail, it's ok to submit the PR and ask for help. Or if
33+
any failures seem entirely unrelated to your change; sometimes things break
34+
on the GitHub runners.)
35+
- [ ] **My code follows the prevailing code style of this project** and I
36+
fixed any problems reported by the clang-format CI test.
37+
- [ ] If I added or modified a public C++ API call, I have also amended the
38+
corresponding Python bindings. If altering ImageBufAlgo functions, I also
39+
exposed the new functionality as oiiotool options.

CONTRIBUTING.md

Lines changed: 31 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,7 @@
1+
<!-- SPDX-License-Identifier: CC-BY-4.0 -->
2+
<!-- Copyright Contributors to the OpenImageIO Project. -->
3+
4+
15
Contributing to OpenImageIO
26
===========================
37

@@ -78,6 +82,26 @@ If confidentiality precludes a public question or issue for any reason, you
7882
may contact us privately at [security@openimageio.org](security@openimageio.org).
7983

8084

85+
Policy on AI Tools
86+
------------------
87+
88+
Please read our [Policy on AI Coding Assistants](docs/dev/AI_Policy.md)
89+
before contributing or particpating in the project in any way mediated by "AI"
90+
assistants.
91+
92+
High-level summary:
93+
- Human must always be in the loop, and is the responsible party for
94+
the contents of a PR (including fully understanding and being able
95+
to explain, defend, and modify it in response to review comments).
96+
- Interact with the project and community yourself, not by agent.
97+
- Disclose what tools you used and how. At a minimum, we require an
98+
"Assisted-by: TOOL/MODEL" line in the commit comments and PR description.
99+
- Don't waste maintainer's time with low quality PRs.
100+
101+
Please do read the whole [Policy on AI Coding Assistants](docs/dev/AI_Policy.md)
102+
for all the details.
103+
104+
81105
Contributor License Agreement (CLA) and Intellectual Property
82106
-------------------------------------------------------------
83107

@@ -238,33 +262,33 @@ repository. The protocol is like this:
238262
your own repository on GitHub, and then clone it to get a repository on your
239263
local machine.
240264

241-
1. Edit, compile, and test your changes. Run clang-format (see the
265+
2. Edit, compile, and test your changes. Run clang-format (see the
242266
instructions on coding style below).
243267

244-
1. Push your changes to your fork (each unrelated pull request to a separate
268+
3. Push your changes to your fork (each unrelated pull request to a separate
245269
"topic branch", please).
246270

247-
1. Make a "pull request" on GitHub for your patch.
271+
4. Make a "pull request" on GitHub for your patch.
248272

249-
2. If your patch will induce a major compatibility break, or has a design
273+
5. If your patch will induce a major compatibility break, or has a design
250274
component that deserves extended discussion or debate among the wider OIIO
251275
community, then it may be prudent to email oiio-dev pointing everybody to
252276
the pull request URL and discussing any issues you think are important.
253277

254-
1. All pull requests automatically launch CI jobs on GitHub Actions to
278+
6. All pull requests automatically launch CI jobs on GitHub Actions to
255279
ensure that the build completes and that the tests suite runs correctly, for
256280
a variety of platform, compiler, library, and flag combinations. The status
257281
of the CI tests for your PR will be displayed on the GitHub PR page. We will
258282
not accept PRs that don't build cleanly or pass the existing testsuite.
259283

260-
1. The reviewer will look over the code and critique on the "comments" area.
284+
7. The reviewer will look over the code and critique on the "comments" area.
261285
Reviewers may ask for changes, explain problems they found, congratulate the
262286
author on a clever solution, etc. But until somebody says "LGTM" (looks good
263287
to me), the code should not be committed. Sometimes this takes a few rounds
264288
of give and take. Please don't take it hard if your first try is not
265289
accepted. It happens to all of us.
266290

267-
1. After approval, one of the senior developers (with commit approval to the
291+
8. After approval, one of the senior developers (with commit approval to the
268292
official main repository) will merge your fixes into the main branch.
269293

270294
Please see the [Code Review](docs/dev/CodeReview.md) document for more

README.md

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -144,6 +144,8 @@ pull request (PR) mechanism.
144144
description of the major classes and their relationships.
145145
* [CONTRIBUTING](CONTRIBUTING.md) has detailed instructions about the
146146
development process.
147+
* [AI Policy](docs/dev/AI_Policy.md) decribes our policies on AI coding
148+
assistance tools.
147149
* [ROADMAP](docs/ROADMAP.md) is a high-level overview of the current
148150
development priorities for the next annual release, expected in September,
149151
2024.

docs/dev/AI_Policy.md

Lines changed: 19 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
1-
Proposed OpenImageIO Policy on AI Coding Assistants
2-
===================================================
1+
Policy on AI Coding Assistants
2+
==============================
33

44
- Initial policy merged 23-Mar-2026
55

@@ -8,11 +8,12 @@ Use of "AI coding assistants" is permitted on this project, with the following
88
guidelines and principles.
99

1010
Summary of our core values:
11-
- Human always in the loop and is the responsible party.
12-
- You're still on the hook for fully understanding and standing behind what
13-
you submit.
11+
- Human must always be in the loop, and is the responsible party for
12+
the contents of a PR (including fully understanding and being able
13+
to explain, defend, and modify it in response to review comments).
1414
- Interact with the project and community yourself, not by agent.
15-
- Disclose what tools you used and how.
15+
- Disclose what tools you used and how. At a minimum, we require an
16+
"Assisted-by: TOOL/MODEL" line in the commit comments and PR description.
1617
- Don't waste maintainer's time with low quality PRs.
1718

1819
The long version:
@@ -147,6 +148,17 @@ This AI tool use policy is not meant to encompass cases such as:
147148
- Reviewing your own code for mistakes prior to submitting a PR (as long as it
148149
isn't making the fixes for you).
149150

151+
### Creative contributions -- out of scope
152+
153+
This project repository contains code for tools, and their documentation. We
154+
don't really directly host any artistically creative work here, so we have not
155+
addressed additional policy issues that might come up in such a context.
156+
157+
If you are representing a different project that is using this document for
158+
guidance or inspiration for your own policies, please be aware that you may
159+
have needs that are not covered by these policies but deserve well-crafted
160+
guidance.
161+
150162
### References and inspiration
151163

152164
Our policy has been informed and inspired by the following efforts in other communities:
@@ -155,5 +167,4 @@ Our policy has been informed and inspired by the following efforts in other comm
155167
- [Linux Foundation policy on Generative AI](https://www.linuxfoundation.org/legal/generative-ai)
156168
- [Rust policy on rejecting burdensome PRs](https://github.com/rust-lang/compiler-team/issues/893)
157169
- The METR paper [Measuring the Impact of Early-2025 AI on Experienced Open-Source Developer Productivity](https://metr.org/blog/2025-07-10-early-2025-ai-experienced-os-dev-study/)
158-
159-
170+
- [GitHub Blog: Rethinking open source mentorship in the AI era](https://github.blog/open-source/maintainers/rethinking-open-source-mentorship-in-the-ai-era/)

0 commit comments

Comments
 (0)