Validation¶
Code validation ensures quality, consistency, and correctness before submitting contributions.
This guide defines language-neutral validation expectations. For Python command wrappers and toolchain specifics, see the Python validation guide.
Validation Outcomes¶
Project validation should cover the following outcomes:
Code Quality: Linting and static quality checks pass.
Static Analysis: Type and semantic checks pass where configured.
Automated Tests: Fast local tests and comprehensive suites both pass.
Documentation Quality: Documentation builds cleanly, including configured link and doctest checks.
Packaging/Distribution: Build and packaging steps pass for projects that publish artifacts.
Workflow¶
During Development: Run the fastest test and lint checks available for quick feedback loops.
Before Committing: Run language-specific quality and type checks.
Before Pull Requests: Run the project’s comprehensive validation suite, including packaging and documentation checks where applicable.
Language-Specific Overlays¶
Python validation guide - Python validation commands and workflow.
All required validation commands must pass before contributions can be accepted. If Git pre-commit and pre-push hooks are installed for a project, they should automatically enforce a portion of this workflow.