oca-development-standards
// Elite OCA (Odoo Community Association) development and review standards. Use for forking, module scaffolding, PR management, and peer reviews.
$ git log --oneline --stat
stars:3
forks:1
updated:March 4, 2026
SKILL.mdreadonly
SKILL.md Frontmatter
nameoca-development-standards
descriptionElite OCA (Odoo Community Association) development and review standards. Use for forking, module scaffolding, PR management, and peer reviews.
licenseAGPL-3
metadata[object Object]
OCA Development & Review Standards
Adhering to the Odoo Community Association's elite quality and collaboration standards.
1. Module Development Standards
- Manifest: Use strict versioning (
[Odoo Version].[Major].[Minor].[Patch].[Revision]). - Licensing: Default to
AGPL-3unless specified otherwise. - Linting: All modules must pass
Pylint-OdooandFlake8. - Naming: Directory name must match module technical name. Prefix custom modules with
ipai_if applicable, but follow OCA prefixing for community contributions.
2. GitHub & PR Workflow
- Branch Strategy: One branch per feature/bugfix. Target the specific Odoo version branch (e.g.,
18.0,19.0). - Commits: Clear, atomic commits with descriptive messages.
- PR Description: Must contain a clear summary and a test scenario.
- Quality Gates: All automated tests (MQT/Travis/GHA) must be green before requesting review.
3. Review Process (Peer Review)
- Tooling: Use
Runboat(orRunbot) to test the contribution in a live instance. - Testing Databases:
baseonly: To test installation in a clean environment.all modules: To test integration and potential conflicts.
- Review Feedback:
- Approve: Only after manual verification and code audit.
- Request Changes: Provide clear, actionable feedback with code snippets if possible.
- Merge Threshold: 3 positive reviews within 5 days is the gold standard for OCA modules.
4. Quality Assurance (QA)
- Coverage: Aim for 100% test coverage with Odoo unit tests.
- Documentation: Include
README.rstorstatic/description/index.html. - Security: Strict enforcement of
ir.model.access.csvand Record Rules.
Integration Checklist
- Is the license correctly set to AGPL-3?
- Does the version number match the OCA/IPAI standard?
- Has the module been tested on a clean database (
baseonly)? - Are all Pylint-Odoo warnings resolved?