Documentation Index
Fetch the complete documentation index at: https://docs.cirron.com/llms.txt
Use this file to discover all available pages before exploring further.
cirron lint
Comprehensive project validation and code quality checking for ML projects. The lint command analyzes your project structure, configuration, dependencies, and code to ensure best practices and identify potential issues.Usage
Options
| Option | Description | Default |
|---|---|---|
--config | Lint project configuration (cirron.yaml) | false |
--structure | Check project structure and files | false |
--dependencies | Validate dependencies (requirements.txt) | false |
--code | Run code quality checks | false |
--all | Run all linting checks | true |
--fix | Automatically fix fixable issues | false |
--verbose | Show detailed suggestions | false |
--json | Output results in JSON format | false |
--strict | Treat warnings as errors | false |
Linting Categories
Configuration Linting
cirron.yaml:
- Required Fields: name, version, template
- Framework Configuration: Framework-specific requirements
- Environment Setup: Deployment environment configurations
- Version Format: Semantic versioning compliance
- JSON Syntax: Valid JSON structure
Required Configuration Fields
Framework-Specific Validation
- PyTorch: Python version specification
- TensorFlow: GPU requirements consideration
- Scikit-learn: Basic configuration validation
Project Structure Linting
Required Files
src/model.py- Model definitionrequirements.txt- Python dependenciesDockerfile- Container configuration
Optional Files
src/inference.py- Inference pipelinesrc/data_loader.py- Data loading utilitiestests/- Test directory
ML-Specific Directories
models/- Model artifactsdata/- Dataset storagecheckpoints/- Training checkpointslogs/- Training logs
Configuration Files
.cirronignore- File exclusion patterns
Dependency Linting
requirements.txt:
- File Existence: requirements.txt presence
- ML Dependencies: Common ML library detection
- Version Pinning: Dependency version constraints
- Dependency Count: Total dependency tracking
Common ML Dependencies
Version Pinning Best Practices
Code Quality Linting
TypeScript/JavaScript
- ESLint Integration: Runs
npm run lint - Syntax Validation: TypeScript compilation checks
- Style Guidelines: Code formatting standards
- Best Practices: Common patterns and anti-patterns
Python Code
- Syntax Validation: Python compilation checks
- Import Analysis: Module import validation
- Code Structure: Function and class organization
- ML-Specific Patterns: Model definition validation
Automatic Fixes
Fixable Issues
- Missing Directories: Creates ML-specific directories
- Configuration Files: Generates
.cirronignore - Code Formatting: ESLint auto-fix for TypeScript
- Structure Issues: Directory creation and organization
Generated Files
.cirronignore Template
Examples
Basic Linting
Verbose Output
JSON Output
Fixing Issues
Error Severity Levels
Error (Critical)
- Missing required files (
src/model.py,requirements.txt) - Invalid JSON in configuration files
- Python syntax errors
- Missing required configuration fields
Warning (Important)
- Missing optional directories (
models/,data/) - Unpinned dependency versions
- Missing
.cirronignorefile - Framework-specific configuration issues
Info (Informational)
- Valid configuration files
- Successful code quality checks
- Dependency count information
- Optional file presence
Integration
CI/CD Pipeline
Pre-commit Hook
Development Workflow
Configuration
ESLint Integration
Python Linting
Troubleshooting
Common Issues
Missing ESLint Configuration
Python Syntax Errors
Missing Dependencies
Performance Optimization
Selective Linting
Ignore Patterns
Best Practices
Project Structure
Configuration Management
- Use semantic versioning for project versions
- Specify Python version for framework compatibility
- Configure environments for different deployment stages
- Pin dependency versions for reproducible builds
Code Quality
- Follow framework-specific best practices
- Use type hints in Python code
- Implement proper error handling
- Write comprehensive tests
- Document complex model logic