Development Workflow¶
This guide covers the step-by-step development process for contributing to the CLOE Toolbox.
Branch Strategy¶
We follow a feature branch workflow optimized for Azure DevOps:
graph LR
    A[main] --> B[feature/add-new-tool]
    B --> C[Initial setup]
    C --> D[Add core functionality]
    D --> E[Add tests]
    E --> F[Update docs]
    F --> G[merge to main]
    G --> H[Released v1.1.0]Repository Setup Process¶
- 
Plan Your Contribution - Create a feature/user story in Azure DevOps board
- Define clear acceptance criteria and scope
 
- 
Repository Setup (for new packages) - Contact Product Management for repository creation
- Repository will be pre-configured with:- CI/CD Azure Pipelines
- SonarCloud integration
- Branch protection policies
- Required PR settings
 
 
- 
Local Development Setup 
- 
Use Package Templates - Refer to Building Blocks for available templates
- Templates include:- Project structure
- CI/CD configurations
- Testing frameworks
- Documentation templates
 
 
Step-by-Step Development Process¶
- 
Create Feature Branch 
- 
Develop Your Feature - Follow the coding standards and guidelines in our Python guide
- Use appropriate building blocks to avoid redundant development
- Implement features incrementally with regular commits
 
- 
Write Comprehensive Tests - Use pytestfor Python projects
- Aim for >80% code coverage
- Include unit, integration, and end-to-end tests
- Place tests in the tests/folder
 
- Use 
- 
Update Documentation - Document new features in the docs/folder
- Update API documentation
- Add usage examples and tutorials
- Follow our documentation guide
 
- Document new features in the 
- 
Commit Changes with Conventional Commits We use Conventional Commits for clear commit history: # Feature commits git commit -m "feat: add user authentication module #1234" # Bug fixes git commit -m "fix: resolve memory leak in data processor #1234" # Documentation git commit -m "docs: add API reference for new endpoints #1234"Work Item Linking Always include the Azure DevOps work item ID (e.g., #1234) to automatically link commits to your user story or task.
- 
Create Pull Request - Push your branch to Azure DevOps
- Create a detailed PR description including:- Summary of changes
- Testing performed
- Breaking changes (if any)
- Screenshots/demos (if applicable)
 
 
- 
Code Review & Deployment - Address reviewer feedback promptly
- Ensure CI/CD pipeline passes
- Once approved, PR will be merged automatically
- Monitor deployment to ensure successful release