Documentation: InvokeAI PR review and merge policy#8795
Conversation
|
Not a comment on what's written specifically, but I wonder if there should be a formal feature lockdown between release candidates and releases so that time is purely treated as fixing bugs. |
Yes agree. Bugfixes and translations only between the RC and the release. This would mean that the Z-Image base PR that @Pfannkuchensack is working on now will not go into the upcoming release. EDIT: Change is added. |
|
Probably a given but won't hurt to mention under Best Practices that if they are referencing some implementation from elsewhere, then add a comment link to that plus any necessary licensing info. Rest of it seems good to me. |
* docs: Add a PR review and merge policy * doc(release): add policy on release candidates * docs(CD/CI): add best practice for external components
Summary
This PR adds a new developer's document that describes the InvokeAI policy on reviewing and merging pull requests. Please use this PR to comment. The policy is pasted below for your convenience:
Review Process
1. Assignment
One of the repository maintainers will assign collaborators to review a pull request. The assigned reviewer(s) will be responsible for conducting the code review.
2. Review and Iteration
The assignee is responsible for:
3. Approval and Notification
Once the assignee is satisfied with the PR:
4. Final Merge
One of the maintainers is responsible for:
Important: Collaborators are strongly discouraged from merging PRs on their own, except in case of emergency (e.g., critical bug fix and no maintainer is available).
5. Release Policy
Once a feature release candidate is published, no feature PRs are to
be merged into main. Only bugfixes are allowed until the final
release.
Best Practices
Clean Commit History
To encourage a clean development log, PR authors are encouraged to use
git rebase -ito suppress trivial commit messages (e.g.,ruffandprettierformatting fixes) after the PR is accepted but before it is merged.Merge Strategy
The maintainer will perform either a 3-way merge or squash merge when merging a PR into the
mainbranch. This approach helps avoid rebase conflict hell and maintains a cleaner project history.Summary
This policy ensures that: