Skip to content

ci(automation): enhance repository automation and code quality workflows (#320) - #360

Open
KHARSHAVARDHAN-eng wants to merge 2 commits into
apache:masterfrom
KHARSHAVARDHAN-eng:feature/automation-analysis-320
Open

ci(automation): enhance repository automation and code quality workflows (#320)#360
KHARSHAVARDHAN-eng wants to merge 2 commits into
apache:masterfrom
KHARSHAVARDHAN-eng:feature/automation-analysis-320

Conversation

@KHARSHAVARDHAN-eng

Copy link
Copy Markdown

Description

This PR addresses the recommendations from the Automation Analysis report (#320) by introducing automatic code formatting, test coverage enforcement, PR commit validation, release notes generation, and developer automation documentation.

Key Changes

  1. Automatic Code Formatting (computer/pom.xml):
    • Added spotless-maven-plugin (v2.30.0) for automated Java code formatting (mvn spotless:apply and mvn spotless:check).
  2. Test Coverage Tracking (computer/pom.xml):
    • Added jacoco-maven-plugin (v0.8.8) with prepare-agent and report goals to automatically generate test coverage reports during mvn test.
  3. Commit & PR Title Validation (.github/workflows/commit-check.yml):
    • Added a GitHub Action workflow to validate PR titles against the Conventional Commits specification.
  4. Automated Release Notes (.github/workflows/release-notes.yml):
    • Added a GitHub Action workflow to generate release drafts and changelogs automatically when tags (v*) are pushed.
  5. Documentation (docs/automation-guide.md):
    • Created comprehensive documentation detailing formatting commands, test coverage generation, RAT license checks, and PR contribution guidelines.

Reference

Fixes#320

…pache#355)
- Create computer-rust crate with high-performance CSR graph representation, PageRank, SSSP, and atomic aggregator kernels
- Implement C-ABI export layer (computer_rust_c_api.h) for FFI interoperability
- Add dataset fixtures (Karate Club, synthetic power-law) and differential tolerance check suite
- Add Java RustKernelBridge in computer-core with graceful fallback logic and unit tests
- Add Go RustKernelBridge in vermeer with fallback execution and unit tests
- Create .github/workflows/rust-ci.yml for Rust linting, testing, and formatting
- Add docs/rust-modernization-roadmap.md detailing architecture, guardrails, baselines, and newcomer-friendly child tasks
…ows (apache#320)
- Add spotless-maven-plugin to computer/pom.xml for automated Java code formatting (mvn spotless:apply / spotless:check)
- Add jacoco-maven-plugin to computer/pom.xml for automated test coverage report generation
- Create .github/workflows/commit-check.yml to validate PR titles against Conventional Commits formatting rules
- Create .github/workflows/release-notes.yml for automated GitHub release draft generation
- Create docs/automation-guide.md documenting repository code quality tools and PR guidelines
@dosubotdosubotBot added size:XXL This PR changes 1000+ lines, ignoring generated files. documentation Improvements or additions to documentation labels Aug 10, 2026
Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

documentationImprovements or additions to documentationsize:XXLThis PR changes 1000+ lines, ignoring generated files.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Automation analysis

1 participant

@KHARSHAVARDHAN-eng