diff --git a/.github/workflows/pr_lint.yml b/.github/workflows/pr_lint.yml index 71c502d5b0a..7713616b5bd 100644 --- a/.github/workflows/pr_lint.yml +++ b/.github/workflows/pr_lint.yml @@ -1,3 +1,50 @@ +# ----------------------------------------------------------------------------- +# PR Title Lint Workflow +# +# Purpose: +# Enforces Conventional Commits format for pull request titles to maintain a +# clear, consistent, and machine-readable change history across our repository. +# +# Enforced Commit Message Format (Conventional Commits 1.0.0): +# [optional scope]: +# [optional body] +# [optional footer(s)] +# +# Allowed Types: +# • feat — a new feature (MINOR bump) +# • fix — a bug fix (PATCH bump) +# • docs — documentation only changes +# • style — formatting, missing semi-colons, etc.; no code change +# • refactor — code change that neither fixes a bug nor adds a feature +# • perf — code change that improves performance +# • test — adding missing tests or correcting existing tests +# • build — changes that affect the build system or external dependencies +# • ci — continuous integration/configuration changes +# • chore — other changes that don't modify src or test files +# • revert — reverts a previous commit +# • release — prepare a new release +# +# Allowed Scopes (optional): +# core, cli, langchain, standard-tests, docs, anthropic, chroma, deepseek, +# exa, fireworks, groq, huggingface, mistralai, nomic, ollama, openai, +# perplexity, prompty, qdrant, xai +# +# Rules & Tips for New Committers: +# 1. Subject (type) must start with a lowercase letter and, if possible, be +# followed by a scope wrapped in parenthesis `(scope)` +# 2. Breaking changes: +# – Append "!" after type/scope (e.g., feat!: drop Node 12 support) +# – Or include a footer "BREAKING CHANGE:
" +# 3. Example PR titles: +# feat(core): add multi‐tenant support +# fix(cli): resolve flag parsing error +# docs: update API usage examples +# docs(openai): update API usage examples +# +# Resources: +# • Conventional Commits spec: https://www.conventionalcommits.org/en/v1.0.0/ +# ----------------------------------------------------------------------------- + name: PR Title Lint permissions: @@ -61,4 +108,4 @@ jobs: didn't match the configured pattern. Please ensure that the subject doesn't start with an uppercase character. ignoreLabels: | - ignore-lint-pr-title \ No newline at end of file + ignore-lint-pr-title