# 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-python.md). ## 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 1. **During Development**: Run the fastest test and lint checks available for quick feedback loops. 2. **Before Committing**: Run language-specific quality and type checks. 3. **Before Pull Requests**: Run the project's comprehensive validation suite, including packaging and documentation checks where applicable. ## Language-Specific Overlays - [Python validation guide](validation-python.md) - 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.