@nitra/cursor 12.8.9 → 12.9.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.
Files changed (130) hide show
  1. package/CHANGELOG.md +8 -1
  2. package/bin/n-cursor.js +18 -10
  3. package/package.json +5 -5
  4. package/rules/abie/docs/index.md +0 -1
  5. package/rules/abie/lib/docs/http-route.md +11 -12
  6. package/rules/abie/lib/http-route.mjs +3 -0
  7. package/rules/abie/policy/health_check_policy/health_check_policy.mdc +3 -1
  8. package/rules/abie/policy/health_check_policy/health_check_policy.rego +27 -0
  9. package/rules/adr/docs/index.md +0 -1
  10. package/rules/adr/js/madr_format.mdc +13 -1
  11. package/rules/bun/docs/index.md +0 -1
  12. package/rules/bun/policy/package_json/package_json.rego +12 -0
  13. package/rules/capacitor/docs/index.md +0 -1
  14. package/rules/changelog/docs/index.md +0 -1
  15. package/rules/ci4/docs/index.md +0 -1
  16. package/rules/doc-files/docs/index.md +0 -1
  17. package/rules/doc-files/docs/main.md +7 -9
  18. package/rules/doc-files/main.mjs +2 -3
  19. package/rules/docker/docs/index.md +0 -1
  20. package/rules/efes/docs/index.md +0 -1
  21. package/rules/feedback/docs/index.md +0 -1
  22. package/rules/ga/docs/index.md +0 -1
  23. package/rules/graphql/docs/index.md +0 -1
  24. package/rules/hasura/docs/index.md +0 -1
  25. package/rules/hasura/js/docs/index.md +3 -2
  26. package/rules/hasura/js/docs/migrations.md +30 -0
  27. package/rules/hasura/js/migrations.mjs +47 -0
  28. package/rules/image-avif/docs/index.md +0 -1
  29. package/rules/image-compress/docs/index.md +0 -1
  30. package/rules/js/docs/index.md +0 -1
  31. package/rules/js/js/dep-policy.mjs +87 -0
  32. package/rules/js/js/docs/dep-policy.md +36 -0
  33. package/rules/js/js/docs/index.md +1 -0
  34. package/rules/js/policy/package_json/package_json.rego +16 -0
  35. package/rules/js-bun-db/docs/index.md +0 -1
  36. package/rules/js-bun-redis/docs/index.md +0 -1
  37. package/rules/js-mssql/docs/index.md +0 -1
  38. package/rules/js-run/docs/index.md +0 -1
  39. package/rules/k8s/docs/index.md +0 -1
  40. package/rules/nginx-default-tpl/docs/index.md +0 -1
  41. package/rules/npm-module/docs/index.md +0 -1
  42. package/rules/php/docs/index.md +0 -1
  43. package/rules/python/docs/index.md +0 -1
  44. package/rules/rego/docs/index.md +0 -1
  45. package/rules/rego/js/docs/index.md +3 -3
  46. package/rules/rego/js/docs/tooling.md +28 -0
  47. package/rules/rego/js/tooling.mjs +24 -0
  48. package/rules/rego/policy/package_json/package_json.rego +21 -0
  49. package/rules/rego/policy/package_json/target.json +4 -0
  50. package/rules/release/docs/index.md +0 -1
  51. package/rules/rust/docs/index.md +0 -1
  52. package/rules/rust/policy/lint_rust_yml/lint_rust_yml.rego +24 -0
  53. package/rules/rust/policy/package_json/package_json.rego +20 -0
  54. package/rules/rust/policy/package_json/target.json +4 -0
  55. package/rules/security/docs/index.md +0 -1
  56. package/rules/style/docs/index.md +0 -1
  57. package/rules/style/js/docs/index.md +2 -3
  58. package/rules/style/js/docs/tooling.md +14 -10
  59. package/rules/style/js/tooling.mjs +8 -2
  60. package/rules/style/policy/lint_style_yml/lint_style_yml.rego +5 -0
  61. package/rules/tauri/docs/index.md +0 -1
  62. package/rules/test/docs/index.md +0 -1
  63. package/rules/test/js/docs/index.md +2 -0
  64. package/rules/test/js/docs/no-console-store-restore.md +32 -0
  65. package/rules/test/js/docs/sandbox-aware-test.md +32 -0
  66. package/rules/test/js/no-console-store-restore.mjs +88 -0
  67. package/rules/test/js/sandbox-aware-test.mjs +89 -0
  68. package/rules/text/docs/index.md +0 -1
  69. package/rules/tool-surface/docs/index.md +0 -1
  70. package/rules/vue/docs/index.md +0 -1
  71. package/rules/worktree/docs/index.md +0 -1
  72. package/scripts/docs/hook.md +29 -0
  73. package/scripts/docs/index.md +1 -2
  74. package/scripts/hook.mjs +72 -0
  75. package/scripts/lib/docs/index.md +0 -1
  76. package/scripts/lib/docs/run-lint.md +9 -8
  77. package/scripts/lib/docs/run-rule.md +7 -7
  78. package/scripts/lib/fix/docs/index.md +0 -1
  79. package/scripts/lib/run-lint.mjs +15 -2
  80. package/scripts/lib/run-rule.mjs +1 -2
  81. package/skills/adr-normalize/SKILL.md +1 -0
  82. package/skills/coverage-fix/SKILL.md +1 -0
  83. package/skills/doc-aggregate/SKILL.md +1 -0
  84. package/skills/doc-files/SKILL.md +1 -0
  85. package/skills/lint/SKILL.md +24 -19
  86. package/skills/llm-patch/SKILL.md +1 -0
  87. package/skills/publish-telegram/SKILL.md +1 -0
  88. package/skills/start-check/SKILL.md +1 -0
  89. package/skills/taze/SKILL.md +3 -2
  90. package/types/bin/n-cursor.d.ts +1 -1
  91. package/rules/abie/docs/fix.md +0 -37
  92. package/rules/adr/docs/fix.md +0 -37
  93. package/rules/bun/docs/fix.md +0 -30
  94. package/rules/capacitor/docs/fix.md +0 -36
  95. package/rules/changelog/docs/fix.md +0 -37
  96. package/rules/ci4/docs/fix.md +0 -32
  97. package/rules/doc-files/docs/fix.md +0 -29
  98. package/rules/docker/docs/fix.md +0 -35
  99. package/rules/efes/docs/fix.md +0 -37
  100. package/rules/feedback/docs/fix.md +0 -30
  101. package/rules/ga/docs/fix.md +0 -30
  102. package/rules/graphql/docs/fix.md +0 -37
  103. package/rules/hasura/docs/fix.md +0 -39
  104. package/rules/image-avif/docs/fix.md +0 -28
  105. package/rules/image-compress/docs/fix.md +0 -27
  106. package/rules/js/docs/fix.md +0 -37
  107. package/rules/js-bun-db/docs/fix.md +0 -30
  108. package/rules/js-bun-redis/docs/fix.md +0 -32
  109. package/rules/js-mssql/docs/fix.md +0 -30
  110. package/rules/js-run/docs/fix.md +0 -36
  111. package/rules/k8s/docs/fix.md +0 -31
  112. package/rules/nginx-default-tpl/docs/fix.md +0 -35
  113. package/rules/npm-module/docs/fix.md +0 -34
  114. package/rules/php/docs/fix.md +0 -35
  115. package/rules/python/docs/fix.md +0 -38
  116. package/rules/rego/docs/fix.md +0 -31
  117. package/rules/release/docs/fix.md +0 -28
  118. package/rules/rust/docs/fix.md +0 -32
  119. package/rules/security/docs/fix.md +0 -33
  120. package/rules/style/docs/fix.md +0 -28
  121. package/rules/tauri/docs/fix.md +0 -39
  122. package/rules/test/docs/fix.md +0 -31
  123. package/rules/text/docs/fix.md +0 -37
  124. package/rules/tool-surface/docs/fix.md +0 -32
  125. package/rules/vue/docs/fix.md +0 -32
  126. package/rules/worktree/docs/fix.md +0 -40
  127. package/scripts/docs/post-tool-use-fix.md +0 -32
  128. package/scripts/docs/worktree-cli.md +0 -27
  129. package/scripts/lib/docs/worktree.md +0 -42
  130. package/scripts/lib/fix/docs/run-fix-check.md +0 -33
@@ -1,42 +0,0 @@
1
- ---
2
- type: JS Module
3
- title: worktree.mjs
4
- resource: npm/scripts/lib/worktree.mjs
5
- docgen:
6
- crc: ffcdbca5
7
- ---
8
-
9
- Файл містить детерміновану логіку для обробки гілок у `worktree-tool`, забезпечуючи безпечне перетворення імен гілок та створення описових файлів для `worktree`. Він використовується для генерації структури `.worktrees/` та ідентифікації неактивних описових файлів, що необхідно для операцій з видаленням. Це ключовий компонент для забезпечення консистентності та зручності роботи з `worktree-tool` безпосередньо з файловою системою.
10
-
11
- ## Поведінка
12
-
13
- sanitizeBranch: Перетворює ім’я git-гілки на безпечне ім’я каталогу/файла для `.worktrees/`, замінюючи небезпечні символи на дефіс.
14
- firstFreeBranch: Знаходить першу вільну назву гілки, починаючи з заданої, і повертає її.
15
- worktreePaths: Створює абсолютні шляхи до checkout і файла-опису для заданої гілки.
16
- buildDescription: Генерує markdown-вміст файла-опису `.worktrees/<name>.md` на основі наданих параметрів.
17
- buildDirtyNotice: Створює повідомлення про незакомічені зміни основного дерева, якщо їх є, обмежуючи кількість відображених файлів.
18
- findOrphanDescFiles: Знаходить `.md`-описи, які не мають відповідного зареєстрованого worktree-checkout.
19
-
20
- ## Публічний API
21
-
22
- - sanitizeBranch — Перетворює ім'я гілки на безпечне ім'я для каталогу/файлу.
23
- - firstFreeBranch — Знаходить першу вільну назву гілки, використовуючи суфікси `base`, `base2`, `base3` тощо.
24
- - worktreePaths — Визначає шляхи для checkout гілки та файлу опису.
25
- - buildDescription — Генерує текст опису для файлу опису worktree.
26
- - buildDirtyNotice — Виводить повідомлення про незакомічені зміни, які не включені у worktree.
27
- - findOrphanDescFiles — Знаходить `.md`-описи, що не мають відповідного worktree-checkout.
28
-
29
- ## Гарантії поведінки
30
-
31
- - `sanitizeBranch` повертає строку, безпечну для використання в шляхах файлової системи.
32
- - `sanitizeBranch` не змінює вхідну строку.
33
- - `worktreePaths` повертає масив з двох строк, що представляють шлях до checkout та файлу опису.
34
- - `worktreePaths` гарантує, що обидва шляхи є дійсними.
35
- - `buildDescription` повертає строку, що відповідає конвенції `worktree.mdc`.
36
- - `buildDescription` не змінює вхідну строку.
37
- - `findOrphanDescFiles` повертає масив з рядків, що представляють шляхи до файлів опису.
38
- - `findOrphanDescFiles` гарантує, що всі рядки в масиві є дійсними шляхами файлів.
39
- - Функції не викликають жодних побічних ефектів, що впливають на стан файлової системи.
40
- - Функції не взаємодіють з Git або будь-якими іншими системами контролю версій.
41
- - Результат роботи функцій не залежить від будь-яких зовнішніх факторів.
42
- - Функції не використовують жодного кешу.
@@ -1,33 +0,0 @@
1
- ---
2
- type: JS Module
3
- title: run-fix-check.mjs
4
- resource: npm/scripts/lib/fix/run-fix-check.mjs
5
- docgen:
6
- crc: 76874730
7
- model: omlx/gemma-4-e4b-it-OptiQ-4bit
8
- score: 100
9
- ---
10
-
11
- Викликає конформність-фазу `lint` (read-only), движок (`orchestrator.mjs`, `t0.mjs`) та PostToolUse-хук. Перевірка конформності виконується як пряма функція, без зовнішньої обгортки через `subprocess`. Ізоляція на рівні кожного правила зберігається: кожен файл `rules/<id>/fix.mjs` все ще запускається окремим процесом `bun` (crash-isolation). Селекція активних правил — єдине джерело: `resolveCheckRuleIds` за `.n-cursor.json`; per-rule whitelist у спавнених процесах прибрано як дубль.
12
-
13
- ## Поведінка
14
-
15
- 1. Визначається наявність інструменту `conftest`.
16
- 2. Отримується список усіх доступних ідентифікаторів правил з каталогу правил.
17
- 3. Визначається список ідентифікаторів правил для прогону (`resolveCheckRuleIds`), де `.n-cursor.json` — єдине джерело правди:
18
- а. Якщо надано явний список правил — він валідується проти доступних і звужується до активних (вимкнене правило не вмикається навіть на явний запит).
19
- б. Якщо явного списку нема й конфіг є — беруться активні правила конфіга (`available ∩ enabled`); `.cursor/rules/*.mdc` ігнорується (фікс дрейфу «enabled, але .mdc нема»).
20
- в. Якщо конфіга нема (open-by-default debug) — fallback на скан `.cursor/rules/*.mdc`.
21
- 4. Якщо визначено ідентифікатори правил для прогону, для кожного ідентифікатора запускається окремий процес `bun` з файлом `fix.mjs` відповідного правила.
22
- 5. Захоплюється вивід кожного процесу.
23
- 6. Підраховується загальна кількість правил, що не пройшли перевірку.
24
- 7. Повертається результат, що містить загальну кількість перевірених правил, кількість невдалих перевірок та детальний список результатів для кожного правила.
25
-
26
- ## Публічний API
27
-
28
- runFixCheck — Визначає відповідність коду заданим правилам, виконуючи перевірку без внесення змін.
29
-
30
- ## Гарантії поведінки
31
-
32
- - Read-only: файл не виконує операцій запису у файлову систему.
33
- - Не звертається до мережі.