@nitra/cursor 12.7.0 → 12.8.1

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 (208) hide show
  1. package/.pi-template/extensions/n-cursor-adr/docs/index.md +2 -2
  2. package/CHANGELOG.md +21 -5
  3. package/bin/n-cursor.js +1 -1
  4. package/docs/index.md +3 -3
  5. package/docs/stryker.config.md +3 -3
  6. package/lib/docs/index.md +5 -5
  7. package/lib/docs/llm.md +4 -4
  8. package/package.json +2 -2
  9. package/rules/abie/docs/fix.md +8 -8
  10. package/rules/abie/docs/index.md +3 -3
  11. package/rules/abie/js/docs/index.md +6 -6
  12. package/rules/abie/lib/docs/index.md +9 -9
  13. package/rules/bun/docs/fix.md +5 -5
  14. package/rules/bun/docs/index.md +3 -3
  15. package/rules/bun/js/docs/index.md +2 -2
  16. package/rules/capacitor/docs/fix.md +10 -10
  17. package/rules/capacitor/docs/index.md +3 -3
  18. package/rules/capacitor/js/docs/index.md +2 -2
  19. package/rules/changelog/docs/fix.md +11 -11
  20. package/rules/changelog/docs/index.md +3 -3
  21. package/rules/changelog/js/docs/consistency.md +12 -12
  22. package/rules/changelog/js/docs/index.md +2 -2
  23. package/rules/changelog/lib/docs/index.md +2 -2
  24. package/rules/ci4/docs/fix.md +4 -4
  25. package/rules/ci4/docs/index.md +3 -3
  26. package/rules/ci4/js/docs/index.md +2 -2
  27. package/rules/doc-files/docs/index.md +3 -3
  28. package/rules/doc-files/js/docgen-crc.mjs +2 -8
  29. package/rules/doc-files/js/docgen-extract.mjs +5 -3
  30. package/rules/doc-files/js/docgen-files-batch.mjs +18 -3
  31. package/rules/doc-files/js/docgen-gen.mjs +11 -3
  32. package/rules/doc-files/js/docgen-judge-measure.mjs +67 -18
  33. package/rules/doc-files/js/docgen-judge.mjs +8 -1
  34. package/rules/doc-files/js/docgen-scan.mjs +14 -4
  35. package/rules/doc-files/js/docs/docgen-crc.md +25 -14
  36. package/rules/doc-files/js/docs/docgen-extract.md +16 -14
  37. package/rules/doc-files/js/docs/docgen-files-batch.md +11 -11
  38. package/rules/doc-files/js/docs/docgen-gen.md +15 -26
  39. package/rules/doc-files/js/docs/docgen-judge-measure.md +14 -12
  40. package/rules/doc-files/js/docs/docgen-judge.md +13 -11
  41. package/rules/doc-files/js/docs/docgen-scan.md +28 -27
  42. package/rules/doc-files/js/docs/index.md +0 -1
  43. package/rules/docker/docs/fix.md +6 -6
  44. package/rules/docker/docs/index.md +3 -3
  45. package/rules/docker/js/docs/index.md +2 -2
  46. package/rules/docker/lib/docs/docker-hadolint.md +2 -2
  47. package/rules/docker/lib/docs/index.md +5 -5
  48. package/rules/efes/docs/fix.md +8 -8
  49. package/rules/efes/docs/index.md +3 -3
  50. package/rules/feedback/docs/fix.md +5 -5
  51. package/rules/feedback/docs/index.md +3 -3
  52. package/rules/ga/docs/fix.md +5 -5
  53. package/rules/ga/docs/index.md +3 -3
  54. package/rules/ga/js/docs/index.md +3 -3
  55. package/rules/graphql/docs/fix.md +8 -8
  56. package/rules/graphql/docs/index.md +3 -3
  57. package/rules/graphql/docs/main.md +8 -8
  58. package/rules/graphql/js/docs/index.md +2 -2
  59. package/rules/graphql/lib/docs/index.md +2 -2
  60. package/rules/hasura/docs/fix.md +11 -11
  61. package/rules/hasura/docs/index.md +3 -3
  62. package/rules/hasura/js/docs/index.md +2 -2
  63. package/rules/image-avif/docs/fix.md +3 -3
  64. package/rules/image-avif/docs/index.md +3 -3
  65. package/rules/image-avif/js/docs/avif_generation.md +6 -6
  66. package/rules/image-avif/js/docs/index.md +2 -2
  67. package/rules/image-compress/docs/fix.md +2 -2
  68. package/rules/image-compress/docs/index.md +3 -3
  69. package/rules/image-compress/js/docs/index.md +3 -3
  70. package/rules/{js-lint → js}/docs/fix.md +9 -9
  71. package/rules/{js-lint → js}/docs/index.md +3 -3
  72. package/rules/{js-lint → js}/js/docs/check.md +5 -5
  73. package/rules/{js-lint → js}/js/docs/index.md +4 -4
  74. package/rules/js-bun-db/docs/fix.md +5 -5
  75. package/rules/js-bun-db/docs/index.md +3 -3
  76. package/rules/js-bun-db/js/docs/index.md +2 -2
  77. package/rules/js-bun-db/lib/docs/index.md +2 -2
  78. package/rules/js-bun-redis/docs/fix.md +6 -6
  79. package/rules/js-bun-redis/docs/index.md +3 -3
  80. package/rules/js-bun-redis/js/docs/index.md +2 -2
  81. package/rules/js-bun-redis/lib/docs/index.md +2 -2
  82. package/rules/js-lint-ci/docs/fix.md +3 -3
  83. package/rules/js-lint-ci/docs/index.md +3 -3
  84. package/rules/js-lint-ci/js/docs/index.md +2 -2
  85. package/rules/js-mssql/docs/fix.md +5 -5
  86. package/rules/js-mssql/docs/index.md +3 -3
  87. package/rules/js-mssql/js/docs/index.md +2 -2
  88. package/rules/js-mssql/lib/docs/index.md +2 -2
  89. package/rules/js-run/docs/fix.md +8 -8
  90. package/rules/js-run/docs/index.md +3 -3
  91. package/rules/js-run/js/docs/index.md +2 -2
  92. package/rules/js-run/lib/docs/index.md +7 -7
  93. package/rules/k8s/docs/fix.md +4 -4
  94. package/rules/k8s/docs/index.md +3 -3
  95. package/rules/k8s/js/docs/index.md +3 -3
  96. package/rules/nginx-default-tpl/docs/fix.md +7 -7
  97. package/rules/nginx-default-tpl/docs/index.md +3 -3
  98. package/rules/nginx-default-tpl/js/docs/index.md +2 -2
  99. package/rules/nginx-default-tpl/js/docs/template.md +2 -2
  100. package/rules/npm-module/docs/fix.md +8 -8
  101. package/rules/npm-module/docs/index.md +3 -3
  102. package/rules/npm-module/js/docs/header_doc_pointer.md +23 -13
  103. package/rules/npm-module/js/docs/index.md +5 -5
  104. package/rules/npm-module/js/docs/rule_meta.md +6 -6
  105. package/rules/npm-module/js/header_doc_pointer.mjs +1 -3
  106. package/rules/php/docs/fix.md +6 -6
  107. package/rules/php/docs/index.md +3 -3
  108. package/rules/php/js/docs/index.md +3 -3
  109. package/rules/python/docs/fix.md +11 -11
  110. package/rules/python/docs/index.md +3 -3
  111. package/rules/python/docs/main.md +10 -10
  112. package/rules/python/js/docs/index.md +3 -3
  113. package/rules/python/main.mjs +2 -1
  114. package/rules/rego/docs/fix.md +5 -5
  115. package/rules/rego/docs/index.md +3 -3
  116. package/rules/rego/js/docs/index.md +3 -3
  117. package/rules/release/docs/index.md +5 -5
  118. package/rules/release/lib/docs/index.md +4 -4
  119. package/rules/rust/docs/fix.md +4 -4
  120. package/rules/rust/docs/index.md +3 -3
  121. package/rules/rust/docs/main.md +7 -7
  122. package/rules/rust/js/docs/index.md +3 -3
  123. package/rules/rust/lib/docs/index.md +2 -2
  124. package/rules/rust/main.mjs +7 -1
  125. package/rules/security/docs/fix.md +6 -6
  126. package/rules/security/docs/index.md +3 -3
  127. package/rules/security/js/docs/index.md +4 -4
  128. package/rules/style-lint/docs/fix.md +3 -3
  129. package/rules/style-lint/docs/index.md +3 -3
  130. package/rules/style-lint/js/docs/index.md +3 -3
  131. package/rules/tauri/docs/fix.md +11 -11
  132. package/rules/tauri/docs/index.md +3 -3
  133. package/rules/tauri/js/docs/index.md +3 -3
  134. package/rules/test/docs/fix.md +5 -5
  135. package/rules/test/docs/index.md +3 -3
  136. package/rules/test/js/data/stryker_config/docs/index.md +4 -4
  137. package/rules/test/js/data/vitest_config/docs/index.md +2 -2
  138. package/rules/test/js/docs/index.md +7 -7
  139. package/rules/text/docs/fix.md +11 -11
  140. package/rules/text/docs/index.md +3 -3
  141. package/rules/text/docs/main.md +8 -8
  142. package/rules/text/js/cspell-fix.mjs +7 -2
  143. package/rules/text/js/docs/cspell-fix.md +8 -8
  144. package/rules/text/js/docs/index.md +7 -8
  145. package/rules/text/js/docs/run-v8r.md +3 -3
  146. package/rules/text/main.mjs +3 -1
  147. package/rules/tool-surface/docs/index.md +3 -3
  148. package/rules/tool-surface/meta.json +6 -1
  149. package/rules/vue/docs/fix.md +6 -6
  150. package/rules/vue/docs/index.md +3 -3
  151. package/rules/vue/js/docs/index.md +2 -2
  152. package/rules/vue/lib/docs/index.md +2 -2
  153. package/rules/worktree/docs/fix.md +11 -11
  154. package/rules/worktree/docs/index.md +3 -3
  155. package/scripts/coverage-classify/docs/index.md +6 -6
  156. package/scripts/dispatcher/docs/index.md +2 -2
  157. package/scripts/docs/index.md +16 -16
  158. package/scripts/lib/docs/index.md +36 -36
  159. package/scripts/lib/docs/run-lint.md +7 -7
  160. package/scripts/lib/docs/run-standard-lint.md +7 -5
  161. package/scripts/lib/fix/analyze-escalation.mjs +4 -1
  162. package/scripts/lib/fix/docs/analyze-escalation.md +28 -15
  163. package/scripts/lib/fix/docs/index.md +10 -10
  164. package/scripts/lib/fix/docs/orchestrator.md +14 -15
  165. package/scripts/lib/fix/docs/run-conformance-check.md +4 -3
  166. package/scripts/lib/fix/docs/run-fix-check.md +3 -3
  167. package/scripts/lib/fix/docs/t0.md +8 -7
  168. package/scripts/lib/fix/orchestrator.mjs +26 -3
  169. package/scripts/lib/fix/t0.mjs +4 -1
  170. package/scripts/lib/run-lint.mjs +1 -3
  171. package/scripts/utils/docs/index.md +14 -14
  172. package/skills/doc-aggregate/js/docs/index.md +3 -3
  173. package/skills/doc-files/.changes/260612-0002.md +1 -0
  174. package/skills/doc-files/.changes/260612-0006.md +1 -0
  175. package/skills/doc-files/.changes/260612-0008.md +1 -0
  176. package/skills/doc-files/.changes/260612-0012.md +1 -0
  177. package/skills/doc-files/.changes/260612-0031.md +1 -0
  178. package/skills/doc-files/.changes/260612-0036.md +1 -0
  179. package/skills/doc-files/.changes/260612-0114.md +1 -0
  180. package/skills/start-check/js/docs/index.md +2 -2
  181. package/skills/taze/js/docs/index.md +2 -2
  182. package/types/bin/n-cursor.d.ts +1 -1
  183. /package/rules/{js-lint → js}/coverage/coverage.mjs +0 -0
  184. /package/rules/{js-lint → js}/docs/main.md +0 -0
  185. /package/rules/{js-lint → js}/js/check.mjs +0 -0
  186. /package/rules/{js-lint → js}/js/data/tooling/knip-canonical.json +0 -0
  187. /package/rules/{js-lint → js}/js/data/tooling/oxlint-canonical.json +0 -0
  188. /package/rules/{js-lint → js}/js/docs/lint-findings.md +0 -0
  189. /package/rules/{js-lint → js}/js/docs/tooling.md +0 -0
  190. /package/rules/{js-lint → js}/js/docs/utils_imports.md +0 -0
  191. /package/rules/{js-lint → js}/js/lint-findings.mjs +0 -0
  192. /package/rules/{js-lint → js}/js/tooling.mjs +0 -0
  193. /package/rules/{js-lint → js}/js/utils_imports.mjs +0 -0
  194. /package/rules/{js-lint/js-lint.mdc → js/js.mdc} +0 -0
  195. /package/rules/{js-lint → js}/main.mjs +0 -0
  196. /package/rules/{js-lint → js}/meta.json +0 -0
  197. /package/rules/{js-lint → js}/policy/jscpd/jscpd.rego +0 -0
  198. /package/rules/{js-lint → js}/policy/jscpd/target.json +0 -0
  199. /package/rules/{js-lint → js}/policy/jscpd/template/.jscpd.json.snippet.json +0 -0
  200. /package/rules/{js-lint → js}/policy/lint_js_yml/lint_js_yml.rego +0 -0
  201. /package/rules/{js-lint → js}/policy/lint_js_yml/target.json +0 -0
  202. /package/rules/{js-lint → js}/policy/lint_js_yml/template/lint-js.yml.snippet.yml +0 -0
  203. /package/rules/{js-lint → js}/policy/package_json/package_json.rego +0 -0
  204. /package/rules/{js-lint → js}/policy/package_json/target.json +0 -0
  205. /package/rules/{js-lint → js}/policy/package_json/template/package.json.snippet.json +0 -0
  206. /package/rules/{js-lint → js}/policy/vscode_extensions/target.json +0 -0
  207. /package/rules/{js-lint → js}/policy/vscode_extensions/template/extensions.json.snippet.json +0 -0
  208. /package/rules/{js-lint → js}/policy/vscode_extensions/vscode_extensions.rego +0 -0
@@ -6,8 +6,8 @@ resource: npm/rules/release/lib/
6
6
 
7
7
  # npm/rules/release/lib
8
8
 
9
- | Файл | Тип |
10
- |---|---|
11
- | [aggregate.mjs](aggregate.md) | JS Module |
9
+ | Файл | Тип |
10
+ | --------------------------------- | --------- |
11
+ | [aggregate.mjs](aggregate.md) | JS Module |
12
12
  | [change-file.mjs](change-file.md) | JS Module |
13
- | [fallback.mjs](fallback.md) | JS Module |
13
+ | [fallback.mjs](fallback.md) | JS Module |
@@ -13,12 +13,12 @@ docgen:
13
13
  ## Поведінка
14
14
 
15
15
  1. Запуск правила.
16
- * Виклик runStandardRule з контекстом.
17
- * Повернення результату.
16
+ - Виклик runStandardRule з контекстом.
17
+ - Повернення результату.
18
18
 
19
19
  2. Запуск у режимі CLI.
20
- * Виклик runRuleCli з директорією.
21
- * Вихід з процесом залежно від результату.
20
+ - Виклик runRuleCli з директорією.
21
+ - Вихід з процесом залежно від результату.
22
22
 
23
23
  ## Публічний API
24
24
 
@@ -6,7 +6,7 @@ resource: npm/rules/rust/
6
6
 
7
7
  # npm/rules/rust
8
8
 
9
- | Файл | Тип |
10
- |---|---|
11
- | [fix.mjs](fix.md) | JS Module |
9
+ | Файл | Тип |
10
+ | ------------------- | --------- |
11
+ | [fix.mjs](fix.md) | JS Module |
12
12
  | [main.mjs](main.md) | JS Module |
@@ -3,24 +3,24 @@ type: JS Module
3
3
  title: main.mjs
4
4
  resource: npm/rules/rust/main.mjs
5
5
  docgen:
6
- crc: a3060168
6
+ crc: 93c44fd7
7
7
  model: omlx/gemma-4-e4b-it-OptiQ-4bit
8
- score: 90
8
+ score: 100
9
9
  ---
10
10
 
11
11
  ## Огляд
12
12
 
13
- Модуль надає функції для роботи з кодом Rust. Функція `run` виконує повний аналіз коду, включаючи перевірку відповідності політиці MDC. Функція `lint` здійснює статичний аналіз коду. Обидві функції можуть ініціювати форматування та аналіз за допомогою `cargo`.
13
+ Модуль надає інструменти для забезпечення якості коду Rust. Він дозволяє виконати перевірку коду на відповідність заданим Lint-правилам або запустити повну оркестрацію форматування та аналізу коду через `cargo`. Функціонал реалізується через публічні функції `run` та `lint`.
14
14
 
15
15
  ## Поведінка
16
16
 
17
- run виконує перевірку коду Rust, застосовуючи політику та посилання MDC.
18
- lint запускає оркестрацію перевірки Rust, виконуючи `rustfmt` та `clippy` через `cargo`.
17
+ run виконує перевірку коду Rust відповідно до політик.
18
+ lint запускає оркестрацію перевірки коду Rust, використовуючи `cargo` для виконання `rustfmt` та `clippy`.
19
19
 
20
20
  ## Публічний API
21
21
 
22
- run — точка входу для виконання правила, що перевіряє логіку, пов'язану з JS-зацікавленостями, політикою та посиланнями MDC.
23
- lint — точка входу для запуску лінтера Rust-коду.
22
+ run — виконує основну логіку правила, включаючи перевірку аспектів застосування, логіки та посилань.
23
+ lint — забезпечує точку входу для статичного аналізу коду Rust.
24
24
 
25
25
  ## Гарантії поведінки
26
26
 
@@ -6,7 +6,7 @@ resource: npm/rules/rust/js/
6
6
 
7
7
  # npm/rules/rust/js
8
8
 
9
- | Файл | Тип |
10
- |---|---|
9
+ | Файл | Тип |
10
+ | ------------------------- | --------- |
11
11
  | [applies.mjs](applies.md) | JS Module |
12
- | [lint.mjs](lint.md) | JS Module |
12
+ | [lint.mjs](lint.md) | JS Module |
@@ -6,6 +6,6 @@ resource: npm/rules/rust/lib/
6
6
 
7
7
  # npm/rules/rust/lib
8
8
 
9
- | Файл | Тип |
10
- |---|---|
9
+ | Файл | Тип |
10
+ | --------------------------------------- | --------- |
11
11
  | [has-cargo-toml.mjs](has-cargo-toml.md) | JS Module |
@@ -75,7 +75,13 @@ function runRustLint(cwd = process.cwd(), opts = {}) {
75
75
  if (!runCargo('cargo clippy --fix', cargo, fixArgs, pass, fail)) return reporter.getExitCode()
76
76
  }
77
77
 
78
- runCargo('cargo clippy -D warnings', cargo, ['clippy', '--all-targets', '--all-features', '--', '-D', 'warnings'], pass, fail)
78
+ runCargo(
79
+ 'cargo clippy -D warnings',
80
+ cargo,
81
+ ['clippy', '--all-targets', '--all-features', '--', '-D', 'warnings'],
82
+ pass,
83
+ fail
84
+ )
79
85
  return reporter.getExitCode()
80
86
  }
81
87
 
@@ -12,14 +12,14 @@ docgen:
12
12
  ## Поведінка
13
13
 
14
14
  1. Запуск правила.
15
- * Передача контексту прогону.
16
- * Виклик `runStandardRule` з використанням шляху модуля.
15
+ - Передача контексту прогону.
16
+ - Виклик `runStandardRule` з використанням шляху модуля.
17
17
  2. Виконання правила.
18
- * Виклик `runStandardRule` з контекстом.
19
- * Виконання операції `applies → JS-concerns → policy → mdc-refs`.
18
+ - Виклик `runStandardRule` з контекстом.
19
+ - Виконання операції `applies → JS-concerns → policy → mdc-refs`.
20
20
  3. Вихід з CLI.
21
- * Перевірка режиму запуску через `isRunAsCli`.
22
- * Якщо запущено через CLI, повернення коду виходу з `runRuleCli` для встановлення `process.exitCode`.
21
+ - Перевірка режиму запуску через `isRunAsCli`.
22
+ - Якщо запущено через CLI, повернення коду виходу з `runRuleCli` для встановлення `process.exitCode`.
23
23
 
24
24
  ## Публічний API
25
25
 
@@ -6,7 +6,7 @@ resource: npm/rules/security/
6
6
 
7
7
  # npm/rules/security
8
8
 
9
- | Файл | Тип |
10
- |---|---|
11
- | [fix.mjs](fix.md) | JS Module |
9
+ | Файл | Тип |
10
+ | ------------------- | --------- |
11
+ | [fix.mjs](fix.md) | JS Module |
12
12
  | [main.mjs](main.md) | JS Module |
@@ -6,8 +6,8 @@ resource: npm/rules/security/js/
6
6
 
7
7
  # npm/rules/security/js
8
8
 
9
- | Файл | Тип |
10
- |---|---|
11
- | [lint.mjs](lint.md) | JS Module |
9
+ | Файл | Тип |
10
+ | ------------------------------------- | --------- |
11
+ | [lint.mjs](lint.md) | JS Module |
12
12
  | [sample_secret.mjs](sample_secret.md) | JS Module |
13
- | [trufflehog.mjs](trufflehog.md) | JS Module |
13
+ | [trufflehog.mjs](trufflehog.md) | JS Module |
@@ -12,9 +12,9 @@ docgen:
12
12
  ## Поведінка
13
13
 
14
14
  1. Запуск правила.
15
- * Приймає контекст прогону.
16
- * Виконує правило.
17
- * Повертає результат.
15
+ - Приймає контекст прогону.
16
+ - Виконує правило.
17
+ - Повертає результат.
18
18
 
19
19
  ## Публічний API
20
20
 
@@ -6,7 +6,7 @@ resource: npm/rules/style-lint/
6
6
 
7
7
  # npm/rules/style-lint
8
8
 
9
- | Файл | Тип |
10
- |---|---|
11
- | [fix.mjs](fix.md) | JS Module |
9
+ | Файл | Тип |
10
+ | ------------------- | --------- |
11
+ | [fix.mjs](fix.md) | JS Module |
12
12
  | [main.mjs](main.md) | JS Module |
@@ -6,7 +6,7 @@ resource: npm/rules/style-lint/js/
6
6
 
7
7
  # npm/rules/style-lint/js
8
8
 
9
- | Файл | Тип |
10
- |---|---|
11
- | [lint.mjs](lint.md) | JS Module |
9
+ | Файл | Тип |
10
+ | ------------------------- | --------- |
11
+ | [lint.mjs](lint.md) | JS Module |
12
12
  | [tooling.mjs](tooling.md) | JS Module |
@@ -14,18 +14,18 @@ docgen:
14
14
  ## Поведінка
15
15
 
16
16
  1. Запуск правила.
17
- * Приймає контекст прогону.
18
- * Виконує застосування JS-занепокоєних.
19
- * Застосовує політику.
20
- * Генерує посилання MDC.
21
- * Повертає результат прогону.
17
+ - Приймає контекст прогону.
18
+ - Виконує застосування JS-занепокоєних.
19
+ - Застосовує політику.
20
+ - Генерує посилання MDC.
21
+ - Повертає результат прогону.
22
22
  2. Запуск правила у режимі CLI.
23
- * Виконується як повний еквівалент команди `npx @nitra/cursor fix <id>`.
24
- * Виконує завантаження конфігурації.
25
- * Виконує перевірку дозволених записів.
26
- * Генерує зведену інформацію.
27
- * Виконує перевірку.
28
- * Визначає код виходу процесу.
23
+ - Виконується як повний еквівалент команди `npx @nitra/cursor fix <id>`.
24
+ - Виконує завантаження конфігурації.
25
+ - Виконує перевірку дозволених записів.
26
+ - Генерує зведену інформацію.
27
+ - Виконує перевірку.
28
+ - Визначає код виходу процесу.
29
29
 
30
30
  ## Публічний API
31
31
 
@@ -6,7 +6,7 @@ resource: npm/rules/tauri/
6
6
 
7
7
  # npm/rules/tauri
8
8
 
9
- | Файл | Тип |
10
- |---|---|
11
- | [fix.mjs](fix.md) | JS Module |
9
+ | Файл | Тип |
10
+ | ------------------- | --------- |
11
+ | [fix.mjs](fix.md) | JS Module |
12
12
  | [main.mjs](main.md) | JS Module |
@@ -6,7 +6,7 @@ resource: npm/rules/tauri/js/
6
6
 
7
7
  # npm/rules/tauri/js
8
8
 
9
- | Файл | Тип |
10
- |---|---|
9
+ | Файл | Тип |
10
+ | --------------------------------------------------- | --------- |
11
11
  | [cargo_mutants_config.mjs](cargo_mutants_config.md) | JS Module |
12
- | [tooling.mjs](tooling.md) | JS Module |
12
+ | [tooling.mjs](tooling.md) | JS Module |
@@ -12,12 +12,12 @@ docgen:
12
12
  ## Поведінка
13
13
 
14
14
  1. Запуск правила.
15
- * Передача контексту прогону.
16
- * Виклик `runStandardRule` з використанням шляху до модуля.
17
- * Повернення результату.
15
+ - Передача контексту прогону.
16
+ - Виклик `runStandardRule` з використанням шляху до модуля.
17
+ - Повернення результату.
18
18
  2. Запуск у режимі CLI.
19
- * Виклик `runRuleCli` з використанням шляху до модуля.
20
- * Встановлення коду виходу процесу на результат.
19
+ - Виклик `runRuleCli` з використанням шляху до модуля.
20
+ - Встановлення коду виходу процесу на результат.
21
21
 
22
22
  ## Публічний API
23
23
 
@@ -6,7 +6,7 @@ resource: npm/rules/test/
6
6
 
7
7
  # npm/rules/test
8
8
 
9
- | Файл | Тип |
10
- |---|---|
11
- | [fix.mjs](fix.md) | JS Module |
9
+ | Файл | Тип |
10
+ | ------------------- | --------- |
11
+ | [fix.mjs](fix.md) | JS Module |
12
12
  | [main.mjs](main.md) | JS Module |
@@ -6,8 +6,8 @@ resource: npm/rules/test/js/data/stryker_config/
6
6
 
7
7
  # npm/rules/test/js/data/stryker_config
8
8
 
9
- | Файл | Тип |
10
- |---|---|
11
- | [stryker-vue-macros-ignorer.mjs](stryker-vue-macros-ignorer.md) | JS Module |
12
- | [stryker.config.baseline.mjs](stryker.config.baseline.md) | JS Module |
9
+ | Файл | Тип |
10
+ | ----------------------------------------------------------------- | --------- |
11
+ | [stryker-vue-macros-ignorer.mjs](stryker-vue-macros-ignorer.md) | JS Module |
12
+ | [stryker.config.baseline.mjs](stryker.config.baseline.md) | JS Module |
13
13
  | [stryker.config.vue.baseline.mjs](stryker.config.vue.baseline.md) | JS Module |
@@ -6,6 +6,6 @@ resource: npm/rules/test/js/data/vitest_config/
6
6
 
7
7
  # npm/rules/test/js/data/vitest_config
8
8
 
9
- | Файл | Тип |
10
- |---|---|
9
+ | Файл | Тип |
10
+ | ------------------------------------------------------ | --------- |
11
11
  | [vitest.config.baseline.js](vitest.config.baseline.md) | JS Module |
@@ -6,11 +6,11 @@ resource: npm/rules/test/js/
6
6
 
7
7
  # npm/rules/test/js
8
8
 
9
- | Файл | Тип |
10
- |---|---|
11
- | [cargo_mutants_config.mjs](cargo_mutants_config.md) | JS Module |
12
- | [location.mjs](location.md) | JS Module |
13
- | [no-process-chdir.mjs](no-process-chdir.md) | JS Module |
14
- | [no-relative-fs-path.mjs](no-relative-fs-path.md) | JS Module |
15
- | [stryker_config.mjs](stryker_config.md) | JS Module |
9
+ | Файл | Тип |
10
+ | ----------------------------------------------------------- | --------- |
11
+ | [cargo_mutants_config.mjs](cargo_mutants_config.md) | JS Module |
12
+ | [location.mjs](location.md) | JS Module |
13
+ | [no-process-chdir.mjs](no-process-chdir.md) | JS Module |
14
+ | [no-relative-fs-path.mjs](no-relative-fs-path.md) | JS Module |
15
+ | [stryker_config.mjs](stryker_config.md) | JS Module |
16
16
  | [vitest-config-pool-forks.mjs](vitest-config-pool-forks.md) | JS Module |
@@ -12,18 +12,18 @@ docgen:
12
12
  ## Поведінка
13
13
 
14
14
  1. Запуск правила.
15
- * Приймає контекст прогону.
16
- * Виконує застосування JS-занепокоєних.
17
- * Застосовує політику.
18
- * Генерує посилання MDC.
19
- * Повертає результат прогону.
15
+ - Приймає контекст прогону.
16
+ - Виконує застосування JS-занепокоєних.
17
+ - Застосовує політику.
18
+ - Генерує посилання MDC.
19
+ - Повертає результат прогону.
20
20
  2. Виконання у режимі CLI.
21
- * Виконується як автономний скрипт.
22
- * Виконує повний еквівалент команди `npx @nitra/cursor fix <id>`.
23
- * Виконує завантаження конфігурації.
24
- * Виконує перевірку дозволених записів.
25
- * Генерує зведену інформацію.
26
- * Визначає код виходу процесу.
21
+ - Виконується як автономний скрипт.
22
+ - Виконує повний еквівалент команди `npx @nitra/cursor fix <id>`.
23
+ - Виконує завантаження конфігурації.
24
+ - Виконує перевірку дозволених записів.
25
+ - Генерує зведену інформацію.
26
+ - Визначає код виходу процесу.
27
27
 
28
28
  ## Публічний API
29
29
 
@@ -6,7 +6,7 @@ resource: npm/rules/text/
6
6
 
7
7
  # npm/rules/text
8
8
 
9
- | Файл | Тип |
10
- |---|---|
11
- | [fix.mjs](fix.md) | JS Module |
9
+ | Файл | Тип |
10
+ | ------------------- | --------- |
11
+ | [fix.mjs](fix.md) | JS Module |
12
12
  | [main.mjs](main.md) | JS Module |
@@ -3,26 +3,26 @@ type: JS Module
3
3
  title: main.mjs
4
4
  resource: npm/rules/text/main.mjs
5
5
  docgen:
6
- crc: deba6201
6
+ crc: 8a0470de
7
7
  model: omlx/gemma-4-e4b-it-OptiQ-4bit
8
8
  score: 90
9
9
  ---
10
10
 
11
11
  ## Огляд
12
12
 
13
- CLI-обгортка над канонічним `lint-text` (text.mdc) забезпечує послідовний пайплайн перевірок для текстових файлів. Вона автоматично встановлює необхідні інструменти (`shellcheck`, `dotenv-linter`) через `ensureTool` (brew/scoop/GitHub Release per-platform) та перевіряє наявність `patch` для авто-фіксу. Пайплайн послідовно виконує: перевірку правопису (`cspell` з `@nitra/cspell-dict`), синтаксичну перевірку скриптів (`shellcheck` з авто-фіксом), перевірку конфігураційних файлів (`dotenv-linter` з авто-фіксом), форматування Markdown (`markdownlint-cli2` з авто-фіксом) та валідацію схем (`v8r`). Перший ненульовий код, отриманий у ланцюжку, повертається як код виходу, припиняючи подальші кроки. Функціональність експортується як `runLintTextCli` та викликається через `n-cursor lint text` (оркестраторний адаптер `lint`). Конфігурації, на які спирається код: meta.json.
13
+ Цей модуль є CLI-обгорткою над канонічним `lint-text` (text.mdc) та викликається через `n-cursor lint text` (оркестраторний адаптер `lint`). Він автоматично встановлює необхідні інструменти (`shellcheck`, `dotenv-linter`) через `ensureTool` (brew/scoop/GitHub Release per-platform) та перевіряє наявність `patch` (для авто-фіксу shellcheck). Функція `runLintTextCli` послідовно виконує: 1) перевірку правопису з `@nitra/cspell-dict` (`cspell .`); 2) авто-фікс та фінальну перевірку `.sh` файлів (`shellcheck`); 3) авто-фікс та фінальну перевірку `.env*` файлів (`dotenv-linter`); 4) авто-фікс Markdown-документів (`markdownlint-cli2 --fix "**\/*.md" "**\/*.mdc"`); 5) schema-валідацію JSON/YAML/TOML через `v8r`. При першому ненульовому коді з ланцюжка повертається код виходу, і наступні кроки не запускаються. Конфігурації, на які спирається код: meta.json.
14
14
 
15
15
  ## Поведінка
16
16
 
17
- run: Викликається як check-поверхня, виконуючи стандартне правило.
18
- runLintTextCli: Виконує повний ланцюжок перевірок для тексту: `cspell`, `shellcheck`, `dotenv-linter`, `markdownlint-cli2` та валідацію схем через `v8r`. Автоматично встановлює `shellcheck` та `dotenv-linter` при першому прогоні. Повертає код першого кроку, що не пройшов.
19
- lint: Делегує виконання повного ланцюжка перевірок тексту через `runLintTextCli`, дозволяючи вказати режим лише детектування без авто-фіксу.
17
+ run виконує стандартну перевірку, використовуючи контекст прогону.
18
+ runLintTextCli виконує повний ланцюжок перевірок тексту (cspell, shellcheck, dotenv-linter, markdownlint, v8r), автоматично встановлюючи необхідні інструменти, і повертає код першого порушення.
19
+ lint делегує виклик `runLintTextCli` для виконання повного ланцюжка перевірок тексту.
20
20
 
21
21
  ## Публічний API
22
22
 
23
- run — Точка входу правила, що виконує перевірку логіки (JS-занепокложення політика посилання text.mdc).
24
- runLintTextCli — Публічна команда для CLI, яка серіалізує завдання лінтування з блокуванням та усуває дублікати на основі стану репозиторію.
25
- lint — Адаптер, що керує запуском лінтування тексту через `n-cursor lint text`, делегуючи роботу `runLintTextCli`.
23
+ run — Основна точка входу правила, що виконує перевірку логіки (JS-занепокоєння $\rightarrow$ політика $\rightarrow$ маркування повідомлень).
24
+ runLintTextCli — Публічний інтерфейс командного рядка для лінтингу тексту, що серіалізує через блокування та усуває дублікати на основі стану Git.
25
+ lint — Координатор, що передає завдання лінтингу тексту до `runLintTextCli`.
26
26
 
27
27
  ## Гарантії поведінки
28
28
 
@@ -143,12 +143,17 @@ export function runCspellText(cwd = process.cwd(), readOnly = false, llmFix = fa
143
143
  const words = unknownWords(first.out)
144
144
  const batch = words.slice(0, MAX_CLASSIFY_WORDS)
145
145
  if (words.length > MAX_CLASSIFY_WORDS) {
146
- process.stdout.write(`ℹ️ cspell: класифікація перших ${MAX_CLASSIFY_WORDS}/${words.length} слів (решта — наступний прогін)\n`)
146
+ process.stdout.write(
147
+ `ℹ️ cspell: класифікація перших ${MAX_CLASSIFY_WORDS}/${words.length} слів (решта — наступний прогін)\n`
148
+ )
147
149
  }
148
150
 
149
151
  let text
150
152
  try {
151
- text = callLlm([{ role: 'user', content: classifyPrompt(batch) }], model, { caller: 'cspell-classify', maxTokens: 4000 })
153
+ text = callLlm([{ role: 'user', content: classifyPrompt(batch) }], model, {
154
+ caller: 'cspell-classify',
155
+ maxTokens: 4000
156
+ })
152
157
  } catch (error) {
153
158
  process.stdout.write(`⚠️ cspell: omlx-класифікація впала (${error.message}) — без авто-словника\n`)
154
159
  process.stdout.write(first.out)
@@ -3,26 +3,26 @@ type: JS Module
3
3
  title: cspell-fix.mjs
4
4
  resource: npm/rules/text/js/cspell-fix.mjs
5
5
  docgen:
6
- crc: 7b40e8f9
6
+ crc: e00c233e
7
7
  model: omlx/gemma-4-e4b-it-OptiQ-4bit
8
8
  score: 100
9
9
  ---
10
10
 
11
11
  ## Огляд
12
12
 
13
- Виявляє невідомі слова у тексті у ланцюжку lint-text із omlx-класифікацією (спека docs/specs/2026-06-15-opportunistic-llm-fix-tier.md), використовуючи конфігурації .cspell.json та meta.json. Класифікує знахідки за схемою omlx-класифікація, дописуючи валідні терміни до словника .cspell.json. Ймовірні одруки залишаються списком на рев'ю, оскільки fix-режим не переписує файли. Завершує процес повторною перевіркою, щоб визначити, чи залишилися нерозкласифіковані або ймовірні одруки. Перехоплює помилки (fail-safe), не кидаючи винятків назовні.
13
+ Модуль інтегрує cspell у ланцюжку lint-text для класифікації невідомих слів згідно зі схемою docs/specs/2026-06-15-opportunistic-llm-fix-tier.md. Він виявляє невідомі слова, класифікує їх за допомогою LLM у межах omlx-класифікації. Валідні слова автоматично дописуються до `.cspell.json#words` (відповідно до конфігурацій .cspell.json та meta.json). Невалідні знахідки залишаються для ручного рев'ю. Процес є read-only (нуль мутацій), оскільки fix-режим не переписує файли, а лише класифікує знахідки. Після дописування словника виконується re-detect. Гейт-механізм гарантує, що cspell поверне ненульовий код, якщо нерозкласифіковані або потенційні одруки залишилися.
14
14
 
15
15
  ## Поведінка
16
16
 
17
- unknownWords витягує унікальні невідомі слова з виводу cspell.
18
- appendWordsToDict додає класифіковані валідні слова до файлу .cspell.json, оновлюючи його словник.
19
- runCspellText запускає cspell для виявлення невідомих слів, а при увімкненні omlx-класифікації класифікує їх та дописує валідні слова у словник, після чого повторно перевіряє наявність помилок.
17
+ unknownWords витягує унікальні «Unknown word» з виводу cspell.
18
+ appendWordsToDict дописує класифіковані валідні слова у `.cspell.json#words`, сортуючи та усуваючи дублікати.
19
+ runCspellText запускає cspell, класифікує знахідки за допомогою LLM (якщо `llmFix` встановлено), дописує валідні слова у словник та повторно запускає cspell для перевірки, повертаючи код виходу.
20
20
 
21
21
  ## Публічний API
22
22
 
23
- unknownWords — Збирає унікальні слова, які не були знайдені у словнику cspell.
24
- appendWordsToDict — Додає зібрані слова до файлу `.cspell.json#words` у відсортованому та унікальному вигляді для перегляду у Git.
25
- runCspellText — Виконує перевірку тексту за допомогою cspell, класифікуючи слова та оновлюючи словник за новою схемою.
23
+ unknownWords — Збирає унікальні слова, які не були знайдені у cspell.
24
+ appendWordsToDict — Додає зібрані слова до словника `.cspell.json` у відсортованому та унікальному вигляді.
25
+ runCspellText — Виконує перевірку тексту за допомогою cspell для формування словника за новою схемою.
26
26
 
27
27
  ## Гарантії поведінки
28
28
 
@@ -6,12 +6,11 @@ resource: npm/rules/text/js/
6
6
 
7
7
  # npm/rules/text/js
8
8
 
9
- | Файл | Тип |
10
- |---|---|
11
- | [cspell-fix.mjs](cspell-fix.md) | JS Module |
9
+ | Файл | Тип |
10
+ | ----------------------------------------------- | --------- |
11
+ | [cspell-fix.mjs](cspell-fix.md) | JS Module |
12
12
  | [forbidden-prettier.mjs](forbidden-prettier.md) | JS Module |
13
- | [formatting.mjs](formatting.md) | JS Module |
14
- | [lint.mjs](lint.md) | JS Module |
15
- | [run-dotenv-linter.mjs](run-dotenv-linter.md) | JS Module |
16
- | [run-shellcheck.mjs](run-shellcheck.md) | JS Module |
17
- | [run-v8r.mjs](run-v8r.md) | JS Module |
13
+ | [formatting.mjs](formatting.md) | JS Module |
14
+ | [run-dotenv-linter.mjs](run-dotenv-linter.md) | JS Module |
15
+ | [run-shellcheck.mjs](run-shellcheck.md) | JS Module |
16
+ | [run-v8r.mjs](run-v8r.md) | JS Module |
@@ -20,9 +20,9 @@ runV8rWithGlobs — послідовно запускає перевірку к
20
20
 
21
21
  ## Публічний API
22
22
 
23
- * DEFAULT_V8R_GLOBS — Містить стандартні шаблони для пошуку файлів, які обробляє v8r.
24
- * V8R_CATALOG_PATH — Вказує на розташування файлу `v8r-catalog.json` у корені пакета.
25
- * runV8rWithGlobs — Виконує послідовні запуски v8r для файлів, знайдених за шаблонами, повертаючи код завершення.
23
+ - DEFAULT_V8R_GLOBS — Містить стандартні шаблони для пошуку файлів, які обробляє v8r.
24
+ - V8R_CATALOG_PATH — Вказує на розташування файлу `v8r-catalog.json` у корені пакета.
25
+ - runV8rWithGlobs — Виконує послідовні запуски v8r для файлів, знайдених за шаблонами, повертаючи код завершення.
26
26
 
27
27
  ## Гарантії поведінки
28
28
 
@@ -132,7 +132,9 @@ function runLintTextSteps(readOnly = false, llmFix = false) {
132
132
  const dotenvCode = runDotenvLinter(process.cwd(), readOnly)
133
133
  if (dotenvCode !== 0) return dotenvCode
134
134
 
135
- const mdArgs = readOnly ? ['markdownlint-cli2', '**/*.md', '**/*.mdc'] : ['markdownlint-cli2', '--fix', '**/*.md', '**/*.mdc']
135
+ const mdArgs = readOnly
136
+ ? ['markdownlint-cli2', '**/*.md', '**/*.mdc']
137
+ : ['markdownlint-cli2', '--fix', '**/*.md', '**/*.mdc']
136
138
  const markdownlintCode = runLintStep('markdownlint', 'bunx', mdArgs)
137
139
  if (markdownlintCode !== 0) return markdownlintCode
138
140
 
@@ -6,7 +6,7 @@ resource: npm/rules/tool-surface/
6
6
 
7
7
  # npm/rules/tool-surface
8
8
 
9
- | Файл | Тип |
10
- |---|---|
11
- | [fix.mjs](fix.md) | JS Module |
9
+ | Файл | Тип |
10
+ | ------------------- | --------- |
11
+ | [fix.mjs](fix.md) | JS Module |
12
12
  | [main.mjs](main.md) | JS Module |
@@ -1 +1,6 @@
1
- { "auto": { "predicate": "depInAnyPackageJson", "arg": ["vue", "react", "svelte", "@angular/core", "preact", "solid-js", "@tauri-apps/api", "@capacitor/core"] } }
1
+ {
2
+ "auto": {
3
+ "predicate": "depInAnyPackageJson",
4
+ "arg": ["vue", "react", "svelte", "@angular/core", "preact", "solid-js", "@tauri-apps/api", "@capacitor/core"]
5
+ }
6
+ }
@@ -12,13 +12,13 @@ docgen:
12
12
  ## Поведінка
13
13
 
14
14
  1. Запуск правила.
15
- * Приймає контекст прогону.
16
- * Використовує runStandardRule для застосування політики.
17
- * Повертає результат прогону.
15
+ - Приймає контекст прогону.
16
+ - Використовує runStandardRule для застосування політики.
17
+ - Повертає результат прогону.
18
18
  2. Запуск у режимі CLI.
19
- * Викликається через `import + run`.
20
- * Виконує повний еквівалент `npx @nitra/cursor fix <id>`.
21
- * Визначає вихідний код процесу на основі результату.
19
+ - Викликається через `import + run`.
20
+ - Виконує повний еквівалент `npx @nitra/cursor fix <id>`.
21
+ - Визначає вихідний код процесу на основі результату.
22
22
 
23
23
  ## Публічний API
24
24
 
@@ -6,7 +6,7 @@ resource: npm/rules/vue/
6
6
 
7
7
  # npm/rules/vue
8
8
 
9
- | Файл | Тип |
10
- |---|---|
11
- | [fix.mjs](fix.md) | JS Module |
9
+ | Файл | Тип |
10
+ | ------------------- | --------- |
11
+ | [fix.mjs](fix.md) | JS Module |
12
12
  | [main.mjs](main.md) | JS Module |
@@ -6,6 +6,6 @@ resource: npm/rules/vue/js/
6
6
 
7
7
  # npm/rules/vue/js
8
8
 
9
- | Файл | Тип |
10
- |---|---|
9
+ | Файл | Тип |
10
+ | --------------------------- | --------- |
11
11
  | [packages.mjs](packages.md) | JS Module |
@@ -6,6 +6,6 @@ resource: npm/rules/vue/lib/
6
6
 
7
7
  # npm/rules/vue/lib
8
8
 
9
- | Файл | Тип |
10
- |---|---|
9
+ | Файл | Тип |
10
+ | ----------------------------------------------------- | --------- |
11
11
  | [vue-forbidden-imports.mjs](vue-forbidden-imports.md) | JS Module |