Skip to content

ci: update release process#27

Merged
yacosta738 merged 5 commits into
mainfrom
ci/release-process
Feb 18, 2026
Merged

ci: update release process#27
yacosta738 merged 5 commits into
mainfrom
ci/release-process

Conversation

@yacosta738
Copy link
Copy Markdown
Contributor

@yacosta738 yacosta738 commented Feb 18, 2026

This pull request introduces significant improvements to the release process, commit message enforcement, and documentation. The main changes expand the Conventional Commits specification for this repository, enhance release automation to support a multi-language/multi-platform project, and update documentation and validation scripts to match the new standards.

Conventional Commits and Commit Message Enforcement:

  • Expanded the allowed Conventional Commit types to include build, ci, release, style, and wip, updated regex patterns, and clarified documentation and PR templates to reflect these changes. This ensures more granular categorization and automation for commit messages and PR titles. [1] [2] [3] [4] [5] [6] [7] [8] [9]
  • Updated the changelog configuration to recognize the new commit types for proper grouping in release notes.

Release Process and Automation Enhancements:

  • Greatly expanded the release skill documentation (release/SKILL.md) to cover multi-language (Gradle/KMP, Rust, npm, Docker) publishing, required secrets, and detailed versioning steps for all targets. [1] [2] [3] [4] [5] [6] [7] [8] [9]
  • Updated the release workflow (_publish.yml) to:
    • Validate versions across all web monorepo packages, Cargo, and npm before publishing.
    • Split native binary builds into a matrix job supporting Linux (x64, arm64), macOS (x64, arm64), and Windows, with correct packaging and artifact handling for each.
    • Aggregate and upload all release artifacts and checksums as GitHub Release assets, using the improved changelog output. [1] [2]

Documentation and Skill Additions:

  • Added a new skill for the Conventional Commits specification to the agent skills listing.
  • Updated references and links to point to the correct repository and workflow documentation.

These changes collectively modernize and standardize the project's release and commit practices, making it easier to maintain, automate, and onboard contributors.

Summary by CodeRabbit

  • New Features

    • Added multi-target release publishing (Gradle/KMP, Rust, npm, Docker, GitHub Releases) and native binary build/upload for Linux, macOS, Windows.
    • Release job now exposes changelog output for cross-job use.
  • Documentation

    • Expanded release guides and checklist to cover multi-ecosystem publishing, new release secrets, and cross-target version sync.
    • Updated contribution and PR templates with broader conventional-commit types and explicit breaking-change syntax.
  • Chores

    • Enhanced version-sync tooling to detect and update additional web and package targets.

@github-actions github-actions Bot added the close|invalid An issue that we don't feel is valid label Feb 18, 2026
@github-actions
Copy link
Copy Markdown
Contributor

It seems you edited the limitation files. These files aren't open for contributions. If you think they should be, feel free to reply here.

@github-actions
Copy link
Copy Markdown
Contributor

Thank you for contributing to this project with this PR, welcome to the community and the amazing world of open source!

@github-actions github-actions Bot closed this Feb 18, 2026
@coderabbitai
Copy link
Copy Markdown
Contributor

coderabbitai Bot commented Feb 18, 2026

Warning

Rate limit exceeded

@yacosta738 has exceeded the limit for the number of commits that can be reviewed per hour. Please wait 14 minutes and 40 seconds before requesting another review.

⌛ How to resolve this issue?

After the wait time has elapsed, a review can be triggered using the @coderabbitai review command as a PR comment. Alternatively, push new commits to this PR.

We recommend that you space out your commits to avoid hitting the rate limit.

🚦 How do rate limits work?

CodeRabbit enforces hourly rate limits for each developer per organization.

Our paid plans have higher rate limits than the trial, open-source and free plans. In all cases, we re-allow further reviews after a brief timeout.

Please see our FAQ for further information.

📝 Walkthrough

Walkthrough

This PR standardizes Conventional Commits patterns, expands release tooling and documentation for multi-target releases (Gradle, Rust, npm, Docker, native binaries, GHCR), updates publish workflows (native build matrix, release-assets job, cross-job outputs), and enhances version-sync and git-hook installation scripts.

Changes

Cohort / File(s) Summary
Conventional Commits & PR templates
.github/CONTRIBUTING.md, .github/PULL_REQUEST_TEMPLATE/1_fix_issue.yml, .github/PULL_REQUEST_TEMPLATE/2_new_feature.yml, .github/PULL_REQUEST_TEMPLATE/3_other_type.yml, .github/pull_request_template.md
Expanded allowed commit/PR types to include build, ci, style, etc.; added optional breaking-change indicator ! after scope; updated regex and examples across templates and contributing guide.
Commit-message validation (hooks & scripts)
.github/workflows/shell/check-commit-msg.sh, gradle/configs/git/hooks/commit-msg.sh
Updated commit validation regex to the expanded type set and optional !; tightened subject constraints (1–100 chars); added early-skip for merge/initial commits and updated guidance URLs/examples.
Publish workflows & release assets
.github/workflows/_publish.yml, .github/workflows/pull-request-limit.yml, .github/config/changelog.json, .github/CODEOWNERS
Added publish job outputs (changelog), new build-native-binaries matrix job, and release-assets job to collect artifacts and generate SHA256 checksums; switched GH Release body to use cross-job output; expanded changelog label mapping; adjusted CODEOWNERS and PR gating condition.
Release docs & agent skill
.agents/AGENTS.md, .agents/skills/release/SKILL.md, clients/web/apps/docs/src/content/docs/en/guides/release.md, clients/web/apps/docs/src/content/docs/es/guides/release.md
Added Conventional Commits skill entry and substantially expanded Release Manager documentation to cover multi-target releases, required secrets (CARGO_REGISTRY_TOKEN, NPM_TOKEN, DOCKERHUB_*), publish targets, branching model, version-sync and publishing steps across ecosystems.
Version sync script & discovery
sync-version-with-tag.sh
Reworked to use BASE_TARGETS/TARGETS, added web package.json discovery, JSON/TOML/props update helpers, write-if-changed, and dynamic diff/commit selection for updated files.
Gradle build logic & git hooks task
gradle/build-logic/src/main/kotlin/com.profiletailors.feature.git-hook.gradle.kts, gradle/configs/git/hooks/commit-msg.sh
Added an installGitHooks Gradle task and a Task.installGitHooks() extension to install/refresh hooks from gradle/configs/git/hooks; commit-msg hook updated as noted above.
Agent metadata
.agents/AGENTS.md
Added Conventional Commits entry row to Available Skills table.

Sequence Diagram

sequenceDiagram
    actor User
    participant GitHub as "GitHub Actions"
    participant Publish as "publish job"
    participant BuildNative as "build-native-binaries (matrix)"
    participant ReleaseAssets as "release-assets job"
    participant GHRelease as "GitHub Release API"

    User->>GitHub: Push release tag
    activate GitHub

    GitHub->>Publish: Trigger publish job
    activate Publish
    Publish->>Publish: Validate versions (Gradle/Rust/npm)
    Publish->>Publish: Publish ecosystem artifacts (Maven/crates.io/npm/Docker)
    Publish-->>GitHub: Expose changelog output
    deactivate Publish

    par Native builds
        GitHub->>BuildNative: Run matrix builds for targets
        activate BuildNative
        BuildNative->>BuildNative: Compile & package per target
        BuildNative-->>GitHub: Upload per-target artifacts
        deactivate BuildNative
    end

    GitHub->>ReleaseAssets: Trigger when needs satisfied
    activate ReleaseAssets
    ReleaseAssets->>ReleaseAssets: Download all artifacts
    ReleaseAssets->>ReleaseAssets: Generate SHA256 checksums
    ReleaseAssets->>GHRelease: Create release with changelog and assets
    deactivate ReleaseAssets
    deactivate GitHub
Loading

Estimated code review effort

🎯 4 (Complex) | ⏱️ ~45 minutes

Possibly related PRs

Suggested labels

codex

✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Post copyable unit tests in a comment
  • Commit unit tests in branch ci/release-process

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

@github-actions
Copy link
Copy Markdown
Contributor

github-actions Bot commented Feb 18, 2026

✅ Contributor Report

User: @yacosta738
Status: Passed (12/13 metrics passed)

Metric Description Value Threshold Status
PR Merge Rate PRs merged vs closed 89% >= 30%
Repo Quality Repos with ≥100 stars 0 >= 0
Positive Reactions Positive reactions received 9 >= 1
Negative Reactions Negative reactions received 0 <= 5
Account Age GitHub account age 3035 days >= 30 days
Activity Consistency Regular activity over time 108% >= 0%
Issue Engagement Issues with community engagement 0 >= 0
Code Reviews Code reviews given to others 361 >= 0
Merger Diversity Unique maintainers who merged PRs 3 >= 0
Repo History Merge Rate Merge rate in this repo 88% >= 0%
Repo History Min PRs Previous PRs in this repo 24 >= 0
Profile Completeness Profile richness (bio, followers) 90 >= 0
Suspicious Patterns Spam-like activity detection 1 N/A

Contributor Report evaluates based on public GitHub activity. Analysis period: 2025-02-18 to 2026-02-18

@yacosta738 yacosta738 reopened this Feb 18, 2026
@github-actions
Copy link
Copy Markdown
Contributor

It seems you edited the limitation files. These files aren't open for contributions. If you think they should be, feel free to reply here.

@github-actions github-actions Bot closed this Feb 18, 2026
@yacosta738 yacosta738 reopened this Feb 18, 2026
@github-actions
Copy link
Copy Markdown
Contributor

It seems you edited the limitation files. These files aren't open for contributions. If you think they should be, feel free to reply here.

@github-actions github-actions Bot closed this Feb 18, 2026
@yacosta738 yacosta738 reopened this Feb 18, 2026
@github-actions
Copy link
Copy Markdown
Contributor

It seems you edited the limitation files. These files aren't open for contributions. If you think they should be, feel free to reply here.

1 similar comment
@github-actions
Copy link
Copy Markdown
Contributor

It seems you edited the limitation files. These files aren't open for contributions. If you think they should be, feel free to reply here.

@github-actions github-actions Bot closed this Feb 18, 2026
@yacosta738 yacosta738 reopened this Feb 18, 2026
@github-actions
Copy link
Copy Markdown
Contributor

It seems you edited the limitation files. These files aren't open for contributions. If you think they should be, feel free to reply here.

@github-actions github-actions Bot closed this Feb 18, 2026
@yacosta738 yacosta738 reopened this Feb 18, 2026
@github-actions
Copy link
Copy Markdown
Contributor

It seems you edited the limitation files. These files aren't open for contributions. If you think they should be, feel free to reply here.

@github-actions github-actions Bot closed this Feb 18, 2026
# Conflicts:
#	.github/CODEOWNERS
@yacosta738 yacosta738 reopened this Feb 18, 2026
@github-actions
Copy link
Copy Markdown
Contributor

It seems you edited the limitation files. These files aren't open for contributions. If you think they should be, feel free to reply here.

1 similar comment
@github-actions
Copy link
Copy Markdown
Contributor

It seems you edited the limitation files. These files aren't open for contributions. If you think they should be, feel free to reply here.

@github-actions github-actions Bot closed this Feb 18, 2026
@yacosta738 yacosta738 reopened this Feb 18, 2026
@yacosta738 yacosta738 merged commit 8b1f006 into main Feb 18, 2026
20 of 25 checks passed
@github-actions
Copy link
Copy Markdown
Contributor

It seems you edited the limitation files. These files aren't open for contributions. If you think they should be, feel free to reply here.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

close|invalid An issue that we don't feel is valid

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant