Skip to content

Enable linting enforcement in CI/CD pipeline #18

@dandye

Description

@dandye

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.md to 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 ~51
  • CONTRIBUTING.md - Code standards and quality gates sections
  • docs/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

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or request

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions