We're looking for new contributors to help improve our codebase by adding insightful questions and feedback comments. This exercise will not only help you familiarize yourself with the project structure but also contribute to making the codebase more accessible for future contributors.
Task
As a new contributor, your task is to go through the codebase following the order recommended in CONTRIBUTING.md and add two types of comments:
QUESTION[@<your-github-handle>] ...: For any parts of the code that you find confusing or need clarification on.
FEEDBACK[@<your-github-handle>] ...: For any suggestions or improvements you think could be made.
Steps
Fork the repository and clone it to your local machine.
Set up the development environment as described in CONTRIBUTING.md.
Start exploring the codebase in the following order (as recommended in CONTRIBUTING.md):
a. Read the main README.md
b. Explore the docs/ directory
c. Examine docker-compose.yml in the root directory
d. Review the deploy/ directory
e. Explore the typespec/ directory:
Start with the common/ folder
Review main.tsp
Examine each module sequentially
f. Dive into the agents-api/ directory:
Review its README.md
Examine routers/ for API endpoints
Look into models/ for data models
g. Review database-related files:
Check agents-api/README.md for database schema
Explore agents-api/models/ for database queries
h. Explore workflow management:
Look at agents-api/activities/ for individual workflow steps
Review agents-api/workflows/task_execution/ for main workflow logic
i. Examine agents-api/tests/ for test cases
j. Explore other service directories (integrations-service/, embedding-service/, etc.)
As you go through each file, add your QUESTION and FEEDBACK comments where appropriate.
Commit your changes with a clear commit message.
Push your changes to your fork and create a pull request.
Guidelines
There are no stupid questions, but please make an effort to understand the code before adding a QUESTION comment.
FEEDBACK comments should be constructive and aimed at improving the codebase.
Be specific in your comments. Vague questions or feedback are less helpful.
If you see existing QUESTION or FEEDBACK comments, feel free to add your thoughts to them.
Pay special attention to files like agents-api/agents_api/workflows/task_execution/__init__.py, which contain core functionality.
# Import necessary modules and types
# QUESTION[@new-contributor] Why is the imports_passed_through() used here?
with workflow.unsafe.imports_passed_through():
from ...activities import task_steps
from ...activities.execute_integration import execute_integration
# FEEDBACK[@new-contributor] Consider simplifying this import structure for better readability
from ...autogen.openapi_model import (
EmbedStep,
ErrorWorkflowStep,
# ...
Expectations
We expect you to spend at least a few hours exploring the codebase.
Don't worry if you don't understand everything – that's part of the learning process!
Your pull request should include changes across multiple files in different directories.
Be prepared to discuss your questions and feedback in the pull request comments.
Next Steps
Once you've submitted your pull request:
Our team will review your comments and may ask for clarifications.
We'll provide answers to your questions and discuss your feedback.
If your contribution meets our guidelines, we'll merge it into the main branch.
This is a great opportunity to get familiar with our codebase and contribute to its improvement. We look forward to your insights and questions!
Description
We're looking for new contributors to help improve our codebase by adding insightful questions and feedback comments. This exercise will not only help you familiarize yourself with the project structure but also contribute to making the codebase more accessible for future contributors.
Task
As a new contributor, your task is to go through the codebase following the order recommended in CONTRIBUTING.md and add two types of comments:
QUESTION[@<your-github-handle>] ...
: For any parts of the code that you find confusing or need clarification on.FEEDBACK[@<your-github-handle>] ...
: For any suggestions or improvements you think could be made.Steps
Fork the repository and clone it to your local machine.
Set up the development environment as described in CONTRIBUTING.md.
Start exploring the codebase in the following order (as recommended in CONTRIBUTING.md): a. Read the main README.md b. Explore the
docs/
directory c. Examinedocker-compose.yml
in the root directory d. Review thedeploy/
directory e. Explore thetypespec/
directory:common/
foldermain.tsp
agents-api/
directory:routers/
for API endpointsmodels/
for data models g. Review database-related files:agents-api/README.md
for database schemaagents-api/models/
for database queries h. Explore workflow management:agents-api/activities/
for individual workflow stepsagents-api/workflows/task_execution/
for main workflow logic i. Examineagents-api/tests/
for test cases j. Explore other service directories (integrations-service/
,embedding-service/
, etc.)As you go through each file, add your QUESTION and FEEDBACK comments where appropriate.
Commit your changes with a clear commit message.
Push your changes to your fork and create a pull request.
Guidelines
agents-api/agents_api/workflows/task_execution/__init__.py
, which contain core functionality.Example
Here's an example of how you might add comments:
In the file
agents-api/agents_api/workflows/task_execution/__init__.py
on line 10, one could add this:Expectations
Next Steps
Once you've submitted your pull request:
This is a great opportunity to get familiar with our codebase and contribute to its improvement. We look forward to your insights and questions!
Resources
If you have any questions about this task, feel free to ask in the comments below. Good luck, and happy coding!