Principle:Cypress io Cypress Contribution Workflow
| Knowledge Sources | |
|---|---|
| Domains | Development, Process |
| Last Updated | 2026-02-12 00:00 GMT |
Overview
A structured code contribution process that uses conventional commits, pull request templates, and CI validation to maintain code quality in an open-source monorepo.
Description
The Cypress contribution workflow enforces quality through multiple gates: conventional commit messages (feat:, fix:, breaking:) that drive automatic versioning, a PR template that requires linking to issues and describing test steps, lint-staged pre-commit hooks for code formatting, and comprehensive CI validation (type checking, linting, unit tests, system tests).
The develop branch serves as the main integration branch, and all PRs require at least 2 approvals before merging via squash-and-merge strategy.
Usage
Use this principle when contributing code changes to the Cypress repository. It defines the process from local development through PR creation to merge.
Theoretical Basis
Contribution Flow:
1. Create feature branch from develop
2. Make changes with conventional commit messages
3. Pre-commit hook: lint-staged → eslint --fix
4. Push and create PR using template
5. CI runs: lint, type-check, unit tests, system tests
6. Minimum 2 reviewer approvals
7. Squash and merge to develop
8. Semantic release processes commits for next version