diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index 411a8da3f..fadb8091a 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -24,10 +24,62 @@ This project has adopted the [Microsoft Open Source Code of Conduct](https://ope For more information see the [Code of Conduct FAQ](https://opensource.microsoft.com/codeofconduct/faq/) or contact [opencode@microsoft.com](mailto:opencode@microsoft.com) with any additional questions or comments. -## Roadmaps +## Running CI checks locally -To see what we are working on and what we plan to work on, please check our -[Roadmap Issues](https://aka.ms/autogen-roadmap). +It is important to use `uv` when running CI checks locally as it ensures that the correct dependencies and versions are used. + +Please follow the instructions [here](./python/README.md#setup) to get set up. + +For common tasks that are helpful during development and run in CI, see [here](./python/README.md#common-tasks). + +## Roadmap + +We use GitHub issues and milestones to track our roadmap. You can view the upcoming milestones [here]([Roadmap Issues](https://aka.ms/autogen-roadmap). + +## Versioning + +The set of `autogen-*` packages are generally all versioned together. When a change is made to one package, all packages are updated to the same version. This is to ensure that all packages are in sync with each other. + +We will update verion numbers according to the following rules: + +- Increase minor version (0.X.0) upon breaking changes +- Increase patch version (0.0.X) upon new features or bug fixes + +## Release process + +1. Create a PR that updates the version numbers across the codebase ([example](https://github.com/microsoft/autogen/pull/4359)) + 2. The docs CI will fail for the PR, but this is expected and will be resolved in the next step +2. After merging the PR, create and push a tag that corresponds to the new verion. For example, for `0.4.0.dev7`: + - `git tag 0.4.0.dev7 && git push origin 0.4.0.dev7` +3. Restart the docs CI by finding the failed [job corresponding to the `push` event](https://github.com/microsoft/autogen/actions/workflows/docs.yml) and restarting all jobs +4. Run [this](https://github.com/microsoft/autogen/actions/workflows/single-python-package.yml) workflow for each of the packages that need to be released and get an approval for the release for it to run + +## Triage process + +To help ensure the health of the project and community the AutoGen committers have a weekly triage process to ensure that all issues and pull requests are reviewed and addressed in a timely manner. The following documents the responsibilites while on triage duty: + +- Issues + - Review all new issues - these will be tagged with [`needs-triage`](https://github.com/microsoft/autogen/issues?q=is%3Aissue%20state%3Aopen%20label%3Aneeds-triage). + - Apply appropriate labels: + - One of `proj-*` labels based on the project the issue is related to + - `documentation`: related to documentation + - `x-lang`: related to cross language functionality + - `dotnet`: related to .NET + - Add the issue to a relevant milestone if necessary + - If you can resolve the issue or reply to the OP please do. + - If you cannot resolve the issue, assign it to the appropriate person. + - If awaiting a reply add the tag `awaiting-op-response` (this will be auto removed when the OP replies). + - Bonus: there is a backlog of old issues that need to be reviewed - if you have time, review these as well and close or refresh as many as you can. +- PRs + - The UX on GH flags all recently updated PRs. Draft PRs can be ignored, otherwise review all recently updated PRs. + - If a PR is ready for review and you can provide one please go ahead. If you cant, please assign someone. You can quickly spin up a codespace with the PR to test it out. + - If a PR is needing a reply from the op, please tag it `awaiting-op-response`. + - If a PR is approved and passes CI, its ready to merge, please do so. + - If it looks like there is a possibly transient CI failure, re-run failed jobs. +- Discussions + - Look for recently updated discussions and reply as needed or find someone on the team to reply. +- Security + - Look through any securty alerts and file issues or dismiss as needed. ## Becoming a Reviewer diff --git a/README.md b/README.md index c38d5f280..2cb9b266d 100644 --- a/README.md +++ b/README.md @@ -3,7 +3,9 @@