From 5a08159f5741963ad70ebec9cff89f233b23dfa9 Mon Sep 17 00:00:00 2001 From: Yuriy Andamasov Date: Wed, 5 Aug 2026 01:55:47 +0300 Subject: T9164: accept NOS-/VD- Jira keys in task-id check; pin NOS in coderabbit MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit VD tracker project renamed to NOS (2026-07) - PR titles and commit headlines using the new NOS- key must stop being flagged invalid-task-id; legacy VD- keys stay accepted, and CodeRabbit now resolves NOS alongside VD. Fleet replication of canary vyos/vyos-1x#5379, whose adversarial review tightened the regexes to ASCII [0-9] + literal-space separators. 🤖 Generated by [robots](https://vyos.io) --- .coderabbit.yaml | 1 + .github/mergify.yml | 26 ++++++++++++++------------ 2 files changed, 15 insertions(+), 12 deletions(-) diff --git a/.coderabbit.yaml b/.coderabbit.yaml index 2b9a02a4..c7c465d6 100644 --- a/.coderabbit.yaml +++ b/.coderabbit.yaml @@ -201,4 +201,5 @@ knowledge_base: # public vyos source it self-disables. usage: auto project_keys: + - NOS - VD diff --git a/.github/mergify.yml b/.github/mergify.yml index 43353ea4..1cb5bb73 100644 --- a/.github/mergify.yml +++ b/.github/mergify.yml @@ -7,16 +7,18 @@ pull_request_rules: - name: Flag product T-ID format violation in PR title or commit messages description: > Product-repo convention: the PR title AND every commit's first line must - match `T: ` (optional `scope: ` prefix). The title is always - checked; the per-commit check is exempted when a maintainer applies the - `legacy` label — an escape hatch for grandfathered PRs whose commit history - cannot be rewritten (repos that squash-merge AND block force-push, e.g. - vyos.vyos enforces `non_fast_forward` on ~ALL branches with zero bypass). - New PRs are still nudged toward the convention; `legacy` is the deliberate, - maintainer-controlled opt-out. Relocated from the central config (T8966) - so the convention is opt-in per product repo. Name is intentionally - distinct from any central rule name so this stays additive (not an - `extends:` override). Legacy-label escape added 2026-06-08 (T8966). + match a `T:`, `NOS-:` or legacy `VD-:` task key + followed by text (optional `scope: ` prefix). NOS is the renamed VD Jira + project (2026-07). The title is always checked; the per-commit check is + exempted when a maintainer applies the `legacy` label — an escape hatch for + grandfathered PRs whose commit history cannot be rewritten (repos that + squash-merge AND block force-push, e.g. vyos.vyos enforces + `non_fast_forward` on ~ALL branches with zero bypass). New PRs are still + nudged toward the convention; `legacy` is the deliberate, + maintainer-controlled opt-out. Relocated from the central config (T8966) so + the convention is opt-in per product repo. Name is intentionally distinct + from any central rule name so this stays additive (not an `extends:` + override). Legacy-label escape added 2026-06-08 (T8966). conditions: - '-closed' - '-merged' @@ -24,10 +26,10 @@ pull_request_rules: - 'author!=copilot-swe-agent' - 'author!=vyosbot' - or: - - '-title~=^(([a-zA-Z0-9\-_.]+:\s)?)T\d+:\s+[^\s]+.*' + - '-title~=^(([a-zA-Z0-9\-_.]+:[ ])?)(T[0-9]+|NOS-[0-9]+|VD-[0-9]+):[ ]+[^\s]+.*' - and: - 'label!=legacy' - - 'commits[*].commit_message~=^(?!(([a-zA-Z0-9\-_.]+:\s)?)T\d+:\s+[^\s]+).*' + - 'commits[*].commit_message~=^(?!(([a-zA-Z0-9\-_.]+:[ ])?)(T[0-9]+|NOS-[0-9]+|VD-[0-9]+):[ ]+[^\s]+).*' actions: label: toggle: -- cgit v1.2.3