-
Notifications
You must be signed in to change notification settings - Fork 1
Open
Labels
enhancementNew feature or requestNew feature or request
Description
Summary
Currently, the automated release pipeline includes Ruff linting and formatting checks, but they are non-blocking (see PR #17). This issue tracks enabling enforcement of these code quality checks.
Background
The release automation infrastructure includes comprehensive linting via Ruff, but it's currently set to warn-only mode to avoid blocking the initial pipeline deployment. The linting runs and reports issues but doesn't fail the build.
Tasks
1. Fix Existing Linting Issues
- Run
ruff check .and fix all linting violations - Run
ruff format .to fix formatting issues - Test that all linting passes locally
2. Enable Enforcement in Workflows
- Remove
|| echo "⚠️ Linting issues found - not enforced yet"from.github/workflows/quality-gates.yml - Remove
|| echo "⚠️ Formatting issues found - not enforced yet"from.github/workflows/release.yml - Update documentation to reflect that linting is now enforced
3. Update Documentation
- Update
CONTRIBUTING.mdto indicate linting is enforced - Update quality gates documentation
- Consider adding a linting section to development docs
Files to Modify
.github/workflows/quality-gates.yml- Lines ~35 and ~40.github/workflows/release.yml- Lines ~46 and ~51CONTRIBUTING.md- Code standards and quality gates sectionsdocs/development/releases.md- Quality gates documentation
Acceptance Criteria
- All existing code passes Ruff linting and formatting checks
- CI/CD pipeline fails on linting violations
- Documentation accurately reflects enforced linting
- Pre-commit hooks work correctly (optional but recommended)
Benefits
- Consistent code style across the project
- Automated code quality enforcement
- Reduced review overhead for style issues
- Better maintainability through consistent formatting
Related
- Introduced in: PR feat(ci): Implement automated release pipeline #17 (automated release pipeline)
- Ruff configuration:
pyproject.toml(already configured)
Metadata
Metadata
Assignees
Labels
enhancementNew feature or requestNew feature or request