Skip to content
Draft
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
37 changes: 37 additions & 0 deletions CONTRIBUTING.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,37 @@
#Contributing to CSH

Hello! We love contributions, members who contribute are the best!

When you start working with any repository, your first step should always be reading that repository's [README.md](README.md) for specific instructions on how to setup and run a service locally so that you can make your super cool awesome changes!

All contributions must follow the contributions policies and CSH [Code of Conduct](https://coc.csh.rit.edu). Please use commit messages that align with both policies. We also recommend (but do not mandate) the use of [Conventional Commits](https://www.conventionalcommits.org/en/v1.0.0/) for commit message syntax.


##Generative AI Policy

Using AI tools to help write your PR is acceptable, but as the author, you are responsible for understanding every change. If you used AI tools in preparing your PR, you must disclose this in the description of your PR. Listing AI tooling as a co-author, co-signing commits using an AI tool, or using the `assisted-by`, `co-developed` or similar commit trailer is not allowed.

Large AI-generated PRs and AI-generated commit messages are not allowed.

Do not leave the first review of AI generated changes to the reviewers. Verify the changes (code review, testing, etc.) before submitting your PR. You are responsible for checking bugs, checking user experience, ensuring no side effects occur, that the code passes linting. Reviewers can and will ask questions about any part of your PR, and if you cannot explain why a change was made, the PR will be closed.

When responding to review comments, you must do so without relying on AI tools. Reviewers want to engage directly with you, not with generated responses. If you do not engage directly with reviewers, the PR will be closed.

We are Computer Science House and one of the main parts of CSH is learning. This policy was created because we want to encourage all learning across the board. Banning generative AI (Gen AI) outright would remove the ability for CSHers to learn about Gen AI, the tooling commonly used in the industry, and workflow practices with the assistance of Gen AI tools. However, being an organization of computer nerds for computer nerds, the majority of our codebases should be written by members of CSH, and all of it should be understood by the member(s) authoring the PR. Gen AI can't sign a CoC, so it can't contribute to House Services.


##Documentation

All contributors are expected to document their software so that future contributors can easily understand what the code does and how to contribute to it.
If you make changes to any services, and those changes make existing documentation outdated, you are expected to update the relevant documentation as part of your changes. This includes setup of the environment for testing and production, e.g. Compose files, environment variables, database configuration, and more.


##Pull Requests

All changes should be submitted in a pull request (PR) to the development branch (should it exist, otherwise the default branch) of the relevant repository. If you make a PR to the wrong branch, you will be asked to change it before it gets reviewed.
Additionally, all repositories have a default PR template that should be filled out when creating the PR. If you do not fill the template out, we will ask you to do so before it gets reviewed.


##Questions

If this document or a README is too confusing, reach out! You can make an issue on the GitHub repository or ask in #opcomm on Slack. #opcomm will probably have faster response time than opening an issue. If you make an issue on GitHub, it never hurts to drop a link in #opcomm as well!