@nitra/cursor 10.3.0 → 11.0.0

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
@@ -1,5 +1,11 @@
1
1
  # Changelog
2
2
 
3
+ ## [11.0.0] - 2026-06-15
4
+
5
+ ### Removed
6
+
7
+ - CLI: прибрано надлишкові точки входу заради мінімальної поверхні. `lint-ci` видалено — це був чистий аліас `lint --read-only --full` (CI лишається тим самим прапор-комбо). Deprecated-аліас `doc-files <sub>` (`scan|check|gen|stamp`) видалено — 0 живих callerів (hook давно на `lint-doc-files`, скіл на `lint-doc-files`/`fix-doc-files`). Заодно полагоджено застарілу документацію точок входу в `bin/n-cursor.js` (мертві згадки `fix`, опис `lint` → data-driven по `meta.json:lint`) і схему `rule-meta.json` (enum `quick|ci` → `per-file|full`, відповідає реальним значенням і `parseRuleLintSpec`).
8
+
3
9
  ## [10.3.0] - 2026-06-15
4
10
 
5
11
  ### Added
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@nitra/cursor",
3
- "version": "10.3.0",
3
+ "version": "11.0.0",
4
4
  "description": "CLI для завантаження cursor-правил (префікс n-) у локальний репозиторій",
5
5
  "keywords": [
6
6
  "cli",
@@ -1,7 +1,8 @@
1
1
  ---
2
2
  docgen:
3
3
  source: npm/rules/doc-files/js/docgen-extract.mjs
4
- crc: e790ff64
4
+ crc: a0680e77
5
+ model: omlx/gemma-4-e4b-it-OptiQ-4bit
5
6
  score: 100
6
7
  ---
7
8
 
@@ -9,31 +10,32 @@ docgen:
9
10
 
10
11
  ## Огляд
11
12
 
12
- Файл витягує факти про конфігурацію та структуру проекту. Визначає мову та заголовок файлу. Витягує публічні експорти та імпорти з різних джерел. Витягує внутрішні та локальні символи. Документація перевіряє наявність операцій запису, обробки помилок, повернення хибних значень при невдачах, мережевих викликів, механізмів кешування та пропуск певних шляхів.
13
+ Витягує структурований факт-лист з вмісту файлів, аналізуючи їх залежно від мови. Для Rust витягує модульний опис, публічні експорти, локальні символи та класифікує імпорти й поведінкові маркери. Для JavaScript/TypeScript/MJS витягує опис, експортовані елементи з JSDoc, класифікує імпорти та визначає поведінкові маркери. При аналізі ігноруються директорії: .github, .git, node_modules, base/, ua/, .firebase. Звертається до мережі та кешує дані протягом одного прогону.
13
14
 
14
15
  ## Поведінка
15
16
 
16
- 1. Витягується факт про файл.
17
- 2. Визначається мова файлу.
18
- 3. Витягується заголовок файлу.
19
- 4. Витягуються публічні експорти.
20
- 5. Витягуються імпорти, класифіковані за джерелом.
21
- 6. Витягуються внутрішні символи, імпортовані з внутрішніх модулів.
22
- 7. Витягуються локальні символи, неекспортовані функції.
23
- 8. Визначаються евристичні маркери.
24
- * readOnly: перевірка на наявність операцій запису.
25
- * catchesErrors: перевірка на наявність обробки помилок.
26
- * returnsFalsyOnFail: перевірка на повернення хибних значень при невдачах.
27
- * network: перевірка на наявність мережевих викликів.
28
- * caches: перевірка на наявність механізмів кешування.
29
- * skips: пропуск шляхів .github, .git, node_modules, base/, ua/, .firebase.
17
+ 1. Витягує факт-лист з вмісту файлу.
18
+ 2. Визначає мову файлу за розширенням.
19
+ 3. Якщо мова — Rust, виконує аналіз Rust-коду:
20
+ а. Витягує модульний опис з `//!`.
21
+ б. Визначає публічні експорти (структури, функції, енуми) на основі `pub` префікса або експозиційних атрибутів.
22
+ в. Визначає локальні (приватні) символи, які не є публічними.
23
+ г. Класифікує імпорти (`std`, зовнішні, внутрішні).
24
+ д. Визначає поведінкові маркери (readOnly, network, caches тощо) на основі специфічних Rust-конструкцій.
25
+ 4. Якщо мова JavaScript/TypeScript/MJS, виконує аналіз JS-коду:
26
+ а. Витягує загальний опис файлу з верхнього блоку коментарів.
27
+ б. Витягує експортовані функції та класи разом із їхніми JSDoc-описами.
28
+ в. Класифікує імпорти на стандартні бібліотеки, NPM-пакети та внутрішні модулі.
29
+ г. Визначає локальні (неекспортовані) функції та класи.
30
+ д. Визначає поведінкові маркери (readOnly, network, caches тощо) на основі евристик.
31
+ 5. При аналізі JS-коду, свідомо ігнорує шляхи: .github, .git, node_modules, base/, ua/, .firebase.
32
+ 6. Повертає структуру фактів, що містить метадані про файл.
30
33
 
31
34
  ## Публічний API
32
35
 
33
- extractFacts — код файлу перетворює на список фактів
36
+ extractFacts — витягує факти з вмісту файлу.
34
37
 
35
38
  ## Гарантії поведінки
36
39
 
37
- - За невдачі повертає значення помилки (`false`/`null`/`Err`) замість генерування винятку чи паніки.
38
40
  - Кешує результати в межах одного прогону.
39
41
  - Свідомо пропускає шляхи: `.github`, `.git`, `node_modules`, `base/`, `ua/`, `.firebase`.
@@ -0,0 +1,30 @@
1
+ ---
2
+ docgen:
3
+ source: npm/rules/doc-files/js/docgen-judge-measure.mjs
4
+ crc: b40b626c
5
+ model: omlx/gemma-4-e4b-it-OptiQ-4bit
6
+ score: 100
7
+ ---
8
+
9
+ # docgen-judge-measure.mjs
10
+
11
+ ## Огляд
12
+
13
+ Файл аналізує вміст визначеного списку файлів, створюючи технічну документацію на основі вихідного коду. Процес спирається на конфігурацію, визначену в report.json. Для кожного файлу відбувається кешування результатів у межах прогону. Якість згенерованої документації оцінюється хмарною моделлю шляхом порівняння з пороговими значеннями, заданими в report.json. Результати аналізу агрегуються, обчислюється відсоток хибнопозитивних спрацювань та зберігаються у report.json.
14
+
15
+ ## Поведінка
16
+
17
+ 1. Зчитує список файлів для аналізу.
18
+ 2. Для кожного файлу зчитує його вміст.
19
+ 3. Генерує технічну документацію для файлу, використовуючи кеш за вмістом вихідного коду.
20
+ 4. Якщо документація згенерована, перевіряє її якість за встановленим порогом.
21
+ 5. Якщо якість документації відповідає порогу, передає вміст вихідного коду та згенеровану документацію для оцінки.
22
+ 6. Оцінює документацію за допомогою сильної хмарної моделі, використовуючи кеш за вмістом вихідного коду та документації.
23
+ 7. Збирає результати для кожного файлу.
24
+ 8. Агрегує результати, обчислюючи відсоток хибнопозитивних спрацювань (false-positive rate) серед документів, які пройшли порогову перевірку та були оцінені.
25
+ 9. Зберігає повний звіт у файл `report.json` у директорії кешу.
26
+ 10. Виводить консольний звіт про результати вимірювання.
27
+
28
+ ## Гарантії поведінки
29
+
30
+ - Кешує результати в межах одного прогону.
@@ -1,7 +1,8 @@
1
1
  ---
2
2
  docgen:
3
3
  source: npm/rules/doc-files/js/docgen-prompts.mjs
4
- crc: 72ac304f
4
+ crc: 28c9e818
5
+ model: omlx/gemma-4-e4b-it-OptiQ-4bit
5
6
  score: 100
6
7
  ---
7
8
 
@@ -9,31 +10,29 @@ docgen:
9
10
 
10
11
  ## Огляд
11
12
 
12
- Файл надає інструкції для створення лаконічної поведінкової документації українською мовою. Він містить інструменти для формування, перевірки та виправлення тексту документації, а також для визначення гарантій щодо роботи файлу
13
+ Генерує технічну документацію на основі коду. Створює компоненти документації, такі як огляд (`overviewMessages`), повідомлення для секцій (`sectionMessages`), повідомлення для критики (`criticMessages`), повідомлення для уточнення (`refineMessages`) та гарантії, отримані з маркерів (`guaranteesFromMarkers`), застосовуючи заданий стиль (`STYLE`).
13
14
 
14
15
  ## Поведінка
15
16
 
16
- Поведінка:
17
- - STYLE: Надає інструкцію для генерації лаконічної поведінкової документації українською мовою.
18
- - sectionMessages: Генерує секційні промпти для різних частин документації.
19
- - overviewMessages: Формує текст для узагальнення ролі та призначення файлу.
20
- - criticMessages: Створює запити для перевірки чорновиків документації на наявність дефектів.
21
- - refineMessages: Переписує та виправляє чорновки документації відповідно до критики.
22
- - guaranteesFromMarkers: Формує список гарантій щодо поведінки файлу на основі маркерів.
23
- - oneShotMessages: Створює універсальний запит для генерації повної документації.
17
+ STYLE: Пише лаконічну поведінкову документацію до коду українською мовою, використовуючи чистий Markdown.
18
+ sectionMessages: Генерує набір промптів для різних секцій документації, використовуючи метадані файлу та вміст коду.
19
+ overviewMessages: Створює узагальнений огляд файлу, базуючись на вже згенерованій секції «Поведінка».
20
+ criticMessages: Перевіряє чорнетку секції на відповідність технічним критеріям, виявляючи дефекти.
21
+ refineMessages: Переписує чорнетку секції, виправляючи дефекти, виявлені критиком.
22
+ guaranteesFromMarkers: Формує список гарантій поведінки, виходячи з машинно-виведених маркерів файлу.
23
+ oneShotMessages: Генерує базовий промпт для генерації повної документації за один виклик.
24
24
 
25
25
  ## Публічний API
26
26
 
27
- STYLE — Формулює стиль файлу.
28
- sectionMessages — Збирає повідомлення з мінімальним контекстом для кожної секції.
29
- overviewMessages — Надає узагальнення поведінки файлу.
30
- criticMessages — Виявляє дефекти в чорнетці секції.
31
- refineMessages — Виправляє чорнетку, усуваючи виявлені дефекти.
32
- guaranteesFromMarkers — Створює детермінований шаблон гарантій поведінки з фактів.
27
+ STYLE — Визначає загальний стиль та намір файлу.
28
+ sectionMessages — Містить мінімально необхідний контекст для кожної секції.
29
+ overviewMessages — Генерує узагальнений огляд на основі вже визначеної поведінки.
30
+ criticMessages — Виявляє конкретні недоліки у чорновому тексті секції, повертаючи список проблем або відсутність проблем.
31
+ refineMessages — Переписує чорновий текст, виправляючи виявлені недоліки.
32
+ guaranteesFromMarkers — Створює чіткий шаблон секції «Гарантії поведінки» на основі фактів.
33
+ oneShotMessages — Надає приклади для порівняння.
33
34
 
34
35
  ## Гарантії поведінки
35
36
 
36
- - Read-only: файл не виконує операцій запису у файлову систему.
37
- - За невдачі повертає значення помилки (`false`/`null`/`Err`) замість генерування винятку чи паніки.
37
+ - Read-only: не виконує операцій запису (ФС/БД).
38
38
  - Кешує результати в межах одного прогону.
39
- - Не звертається до мережі.