@nitra/cursor 1.11.6 → 1.11.7

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/CHANGELOG.md CHANGED
@@ -4,12 +4,23 @@
4
4
 
5
5
  Формат — [Keep a Changelog](https://keepachangelog.com/uk/1.1.0/), нумерація — [SemVer](https://semver.org/lang/uk/).
6
6
 
7
+ ## [1.11.7] - 2026-05-15
8
+
9
+ ### Changed
10
+
11
+ - **`npm/skills/fix/SKILL.md`** (+`.cursor/skills/n-fix/SKILL.md` синк) — `/n-fix` більше **не запускає** `bun run lint` і **не делегує** до `/n-lint`. Крок 6 (`bun run lint` з делегуванням, доданий у 1.11.6) повністю видалено; замість нього на початку SKILL.md додано секцію **«Скоуп»**, де явно зафіксовано: `/n-fix` опікується лише структурою проєкту (правила `.cursor/rules/` + `npx @nitra/cursor check`), а лінт-порушення у самому коді (ESLint/oxlint/jscpd/cspell/knip/sonarjs/stylelint) — поза скоупом і виправляються винятково через `/n-lint`. Кроки 7→6 і 8→7 переномеровано; остаточний пункт 7 додатково нагадує, що лінт-помилки не входять у критерій успіху `/n-fix`. Мета — щоб агент, що виконує `/n-fix`, не плутав свою задачу з `/n-lint` і не запускав важкий `bun run lint` без потреби; те, що діагностує `/n-lint`, виправляється там же, а не дублюється тут.
12
+
13
+ ### Fixed
14
+
15
+ - **`npm/tests/check-rule-fixtures.test.mjs`** — `nginxFixDir` оновлено з `rules/nginx-default-tpl/js/fixtures` на `rules/nginx-default-tpl/js/template/fixtures`. Після phase 2 concern-split фікстура `default.conf.template` переїхала всередину концерну `template/`, тест падав з `ENOENT no such file or directory`.
16
+
7
17
  ## [1.11.6] - 2026-05-15
8
18
 
9
19
  ### Changed
10
20
 
11
21
  - **`npm/rules/npm-module/npm-module.mdc`** — переформульовано вимогу про тести й фікстури. Раніше правило вимагало тримати їх **поза** будь-яким шляхом з `"files"` (канонічно — у `npm/tests/`). Тепер тести/фікстури можуть лежати **поруч з кодом** усередині `"files"`-шляхів, але `"files"` обовʼязково має містити **негативні glob-патерни**, що виключають їх із tarball (`!**/*.test.*`, `!**/*.spec.*`, `!**/test-helpers.*`, `!**/fixtures/**`, `!**/__tests__/**`, опційно `!**/*_test.rego`). Це краще відповідає реальному layout пакета (co-located test-файли у `rules/<id>/js/<concern>/`) і прибирає роз'їзд правила з фактичним `npm/package.json`. Версію `.mdc` піднято до `1.12`.
12
22
  - **`npm/rules/npm-module/js/package_structure/check.mjs::checkNoTestsInPublishedFiles`** — текст fail-повідомлення тепер однозначно радить додати негативний glob у `"files"`, без альтернативи «винеси за межі шляхів з "files"». Логіка перевірки (walk positive ∖ negative + класифікація test-style) не змінилась — пере-кваліфіковано лише підказку для агента й людини.
23
+ - **`npm/skills/fix/SKILL.md`** (+`.cursor/skills/n-fix/SKILL.md` синк), **`npm/rules/style-lint/style-lint.mdc`** — розмежовано ролі скілів: `/n-fix` відповідає за **структуру** проєкту (правила `.cursor/rules/` + `npx @nitra/cursor check`), `/n-lint` — за **чистоту коду** (`bun run lint`). Крок 6 у `n-fix` (перебір `lint-js`/`lint-text`/`lint-style`) замінено на одиничний `bun run lint` з делегуванням до `/n-lint` — лінт-логіку (auto-fix, sonarjs-рефакторинг, заборона паралельних запусків ESLint) `n-fix` більше не дублює. У `style-lint.mdc` cross-reference «повний набір `lint-*` (навичка `n-fix`)» оновлено на «`bun run lint` (навичка `/n-lint`)».
13
24
 
14
25
  ## [1.11.5] - 2026-05-15
15
26
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@nitra/cursor",
3
- "version": "1.11.6",
3
+ "version": "1.11.7",
4
4
  "description": "CLI для завантаження cursor-правил (префікс n-) у локальний репозиторій",
5
5
  "keywords": [
6
6
  "cli",
@@ -6,6 +6,10 @@ description: >-
6
6
 
7
7
  # n-fix — автоматичне виправлення проєкту
8
8
 
9
+ ## Скоуп
10
+
11
+ Цей скіл відповідає **лише за структуру** проєкту: щоб `.cursor/rules/` + `npx @nitra/cursor check` були задоволені (наявність конфігів, залежностей, скриптів, GitHub workflows, відсутність заборонених файлів). **Лінт-порушення у самому коді** (ESLint, oxlint, jscpd, cspell, knip, sonarjs, stylelint тощо) — **поза скоупом**; їх діагностує й виправляє **`/n-lint`** (`bun run lint`). Не запускай `bun run lint` із цього скілу і не намагайся виправляти його порушення тут — це задача `/n-lint`. Якщо `npx @nitra/cursor check` чистий, а `bun run lint` лишився червоним — запусти `/n-lint` окремо.
12
+
9
13
  ## Workflow
10
14
 
11
15
  1. **Діагностика** — запусти перевірку (за замовчуванням лише правила з `AGENTS.md`, для яких є `check-*.mjs`; повний набір — явні аргументи: `npx @nitra/cursor check bun ga …`):
@@ -36,18 +40,10 @@ bun i
36
40
  oxfmt .
37
41
  ```
38
42
 
39
- 6. **Лінт коду** викликай скіл **`/n-lint`** (один канонічний прогон `bun run lint`):
40
-
41
- ```bash
42
- bun run lint
43
- ```
44
-
45
- Лінт-логіку (auto-fix, рефакторинг під `sonarjs/cognitive-complexity`, обмеження `cspell`/`jscpd`/`knip`, заборона паралельних запусків ESLint) **не дублюй** тут — вона повністю у скілі **`/n-lint`**. Цей скіл (`/n-fix`) відповідає лише за **структуру** проєкту (правила `.cursor/rules/` + `npx @nitra/cursor check`); за **чистоту коду** відповідає **`/n-lint`**.
46
-
47
- 7. **Верифікація** — перевір що все виправлено:
43
+ 6. **Верифікація**перевір що все виправлено:
48
44
 
49
45
  ```bash
50
46
  npx @nitra/cursor check
51
47
  ```
52
48
 
53
- 8. **Результат** — всі `❌` мають стати `✅`. Якщо залишились `❌` — повтори кроки 3-7.
49
+ 7. **Результат** — всі `❌` від `npx @nitra/cursor check` мають стати `✅`. Якщо залишились `❌` — повтори кроки 3-6. Лінт-помилки від `bun run lint` тут **не виправляй** — вони на скіл `/n-lint`.