From 101b5ba5b02eae54f6d59fdba1266a1bd3c6606b Mon Sep 17 00:00:00 2001 From: vitaliytv Date: Sun, 30 Aug 2026 13:21:37 +0300 Subject: [PATCH] =?UTF-8?q?fix(rules):=20KNOWN=5FPLUGIN=5FRANGES=20=D0=BD?= =?UTF-8?q?=D0=B0=D0=B7=D0=B4=D0=BE=D0=B3=D0=BD=D0=B0=D0=B2=20=D0=B2=D0=B5?= =?UTF-8?q?=D1=80=D1=81=D1=96=D1=97=20=D0=BF=D0=BB=D0=B0=D0=B3=D1=96=D0=BD?= =?UTF-8?q?=D1=96=D0=B2=20=D0=B2=D0=BE=D1=80=D0=BA=D1=81=D0=BF=D0=B5=D0=B9?= =?UTF-8?q?=D1=81=D1=83?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit lang-js ^0.27→^0.34, lang-python ^0.14→^0.15, lang-rust ^0.17→^0.18, lang-php ^0.4→^0.5. Гейт known-plugin-ranges був червоний на main і відтворювався локально — це не флейк оточення, а реальний дрейф. Наслідок ширший за червоний тест: ensurePluginInstalled обмежує установку first-party плагіна цим range, тобто ставив би версію, старішу за ту, що лежить у воркспейсі. Co-Authored-By: Claude Opus 5 --- npm/.changes/known-plugin-ranges-catch-up.md | 10 ++++++++++ npm/scripts/lib/resolve-plugins.mjs | 8 ++++---- 2 files changed, 14 insertions(+), 4 deletions(-) create mode 100644 npm/.changes/known-plugin-ranges-catch-up.md diff --git a/npm/.changes/known-plugin-ranges-catch-up.md b/npm/.changes/known-plugin-ranges-catch-up.md new file mode 100644 index 000000000..6a4407ae4 --- /dev/null +++ b/npm/.changes/known-plugin-ranges-catch-up.md @@ -0,0 +1,10 @@ +--- +bump: patch +section: Fixed +--- + +`KNOWN_PLUGIN_RANGES` наздогнав версії плагінів воркспейсу: `lang-js` `^0.27`→`^0.34`, `lang-python` `^0.14`→`^0.15`, `lang-rust` `^0.17`→`^0.18`, `lang-php` `^0.4`→`^0.5`. + +Наслідок дрейфу ширший за червоний гейт `known-plugin-ranges`: `ensurePluginInstalled` обмежує установку first-party плагіна саме цим range, тобто ставив би версію, старішу за ту, що вже лежить у воркспейсі. + +Гейт лишається крихким за конструкцією — для `0.x` кожен minor-бамп плагіна ламає його знову, бо range треба піднімати вручну тим самим коммітом. Автоматизація не додається свідомо: `KNOWN_PLUGIN_RANGES` зникає разом із переходом на резолв за lock + OCI reference (робота Д1, `docs/plans/2026-08-29-js-rust-migration-completion-plan.md`). diff --git a/npm/scripts/lib/resolve-plugins.mjs b/npm/scripts/lib/resolve-plugins.mjs index a0e399cab..f2b9f7fbb 100644 --- a/npm/scripts/lib/resolve-plugins.mjs +++ b/npm/scripts/lib/resolve-plugins.mjs @@ -281,10 +281,10 @@ function computePluginList(root, declared, options) { export const KNOWN_PLUGIN_RANGES = Object.freeze({ '@7n/rules-ci-github': '^2', '@7n/rules-ci-azure': '^2', - '@7n/rules-lang-js': '^0.27', - '@7n/rules-lang-python': '^0.14', - '@7n/rules-lang-rust': '^0.17', - '@7n/rules-lang-php': '^0.4' + '@7n/rules-lang-js': '^0.34', + '@7n/rules-lang-python': '^0.15', + '@7n/rules-lang-rust': '^0.18', + '@7n/rules-lang-php': '^0.5' }) /**