@nitra/cursor 12.11.1 → 12.11.3
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 +12 -0
- package/bin/n-cursor.js +0 -15
- package/package.json +1 -1
- package/rules/adr/js/docs/hooks.md +0 -2
- package/rules/bun/docs/index.md +2 -2
- package/rules/bun/docs/main.md +9 -9
- package/rules/bun/js/docs/fix-layout.md +25 -0
- package/rules/bun/js/docs/index.md +3 -2
- package/rules/bun/js/fix-layout.mjs +55 -0
- package/rules/bun/main.json +1 -1
- package/rules/bun/main.mjs +53 -3
- package/rules/changelog/js/docs/fix-consistency.md +27 -0
- package/rules/changelog/js/docs/index.md +1 -0
- package/rules/changelog/js/fix-consistency.mjs +50 -0
- package/rules/ci4/policy/vscode_extensions/docs/fix-vscode_extensions.md +21 -0
- package/rules/ci4/policy/vscode_extensions/docs/index.md +11 -0
- package/rules/ci4/policy/vscode_extensions/fix-vscode_extensions.mjs +1 -0
- package/rules/ga/policy/vscode_extensions/docs/fix-vscode_extensions.md +22 -0
- package/rules/ga/policy/vscode_extensions/docs/index.md +11 -0
- package/rules/ga/policy/vscode_extensions/fix-vscode_extensions.mjs +1 -0
- package/rules/graphql/policy/vscode_extensions/docs/fix-vscode_extensions.md +21 -0
- package/rules/graphql/policy/vscode_extensions/docs/index.md +11 -0
- package/rules/graphql/policy/vscode_extensions/fix-vscode_extensions.mjs +1 -0
- package/rules/js/js/dep-policy.mdc +19 -0
- package/rules/js/js/dep-policy.mjs +14 -6
- package/rules/js/js/docs/dep-policy.md +12 -10
- package/rules/js/js/docs/index.md +5 -5
- package/rules/js/policy/vscode_extensions/docs/fix-vscode_extensions.md +22 -0
- package/rules/js/policy/vscode_extensions/docs/index.md +11 -0
- package/rules/js/policy/vscode_extensions/fix-vscode_extensions.mjs +1 -0
- package/rules/js-run/js/docs/fix-runtime.md +25 -0
- package/rules/js-run/js/docs/index.md +3 -2
- package/rules/js-run/js/fix-runtime.mjs +41 -0
- package/rules/nginx-default-tpl/policy/vscode_extensions/docs/fix-vscode_extensions.md +21 -0
- package/rules/nginx-default-tpl/policy/vscode_extensions/docs/index.md +11 -0
- package/rules/nginx-default-tpl/policy/vscode_extensions/fix-vscode_extensions.mjs +1 -0
- package/rules/python/docs/index.md +2 -2
- package/rules/python/docs/main.md +12 -10
- package/rules/python/main.mjs +1 -0
- package/rules/rego/policy/vscode_extensions/docs/fix-vscode_extensions.md +22 -0
- package/rules/rego/policy/vscode_extensions/docs/index.md +11 -0
- package/rules/rego/policy/vscode_extensions/fix-vscode_extensions.mjs +1 -0
- package/rules/rust/docs/index.md +2 -2
- package/rules/rust/docs/main.md +8 -6
- package/rules/rust/main.mjs +11 -0
- package/rules/rust/policy/vscode_extensions/docs/fix-vscode_extensions.md +22 -0
- package/rules/rust/policy/vscode_extensions/docs/index.md +11 -0
- package/rules/rust/policy/vscode_extensions/fix-vscode_extensions.mjs +1 -0
- package/rules/style/js/docs/fix-tooling.md +29 -0
- package/rules/style/js/docs/index.md +3 -2
- package/rules/style/js/fix-tooling.mjs +46 -0
- package/rules/style/policy/vscode_extensions/docs/fix-vscode_extensions.md +21 -0
- package/rules/style/policy/vscode_extensions/docs/index.md +11 -0
- package/rules/style/policy/vscode_extensions/fix-vscode_extensions.mjs +1 -0
- package/rules/tauri/policy/vscode_extensions/docs/fix-vscode_extensions.md +21 -0
- package/rules/tauri/policy/vscode_extensions/docs/index.md +11 -0
- package/rules/tauri/policy/vscode_extensions/fix-vscode_extensions.mjs +1 -0
- package/rules/text/policy/vscode_extensions/docs/fix-vscode_extensions.md +21 -0
- package/rules/text/policy/vscode_extensions/docs/index.md +11 -0
- package/rules/text/policy/vscode_extensions/fix-vscode_extensions.mjs +1 -0
- package/rules/vue/js/docs/packages.md +0 -2
- package/scripts/docs/index.md +0 -2
- package/scripts/lib/discover-checkable-rules.mjs +1 -0
- package/scripts/lib/docs/discover-checkable-rules.md +13 -155
- package/scripts/lib/docs/index.md +35 -35
- package/scripts/lib/fix/discover-t0-patterns.mjs +83 -0
- package/scripts/lib/fix/docs/discover-t0-patterns.md +37 -0
- package/scripts/lib/fix/docs/index.md +12 -10
- package/scripts/lib/fix/docs/llm-fix-apply.md +12 -10
- package/scripts/lib/fix/docs/llm-worker.md +6 -14
- package/scripts/lib/fix/docs/orchestrator.md +0 -2
- package/scripts/lib/fix/docs/t0.md +11 -10
- package/scripts/lib/fix/docs/vscode-ext-add.md +29 -0
- package/scripts/lib/fix/t0.mjs +8 -234
- package/scripts/lib/fix/vscode-ext-add.mjs +45 -0
- package/skills/doc-aggregate/SKILL.md +8 -18
- package/skills/doc-aggregate/js/docs/index.md +0 -1
- package/rules/test/coverage/coverage.mjs +0 -317
- package/scripts/coverage-classify/apply.mjs +0 -67
- package/scripts/coverage-classify/cache.mjs +0 -77
- package/scripts/coverage-classify/docs/apply.md +0 -206
- package/scripts/coverage-classify/docs/cache.md +0 -207
- package/scripts/coverage-classify/docs/index.md +0 -14
- package/scripts/coverage-classify/docs/prompt.md +0 -136
- package/scripts/coverage-classify/docs/verdict-schema.md +0 -28
- package/scripts/coverage-classify/index.mjs +0 -114
- package/scripts/coverage-classify/prompt.mjs +0 -126
- package/scripts/coverage-classify/verdict-schema.mjs +0 -35
- package/scripts/coverage-fix-extract.mjs +0 -122
- package/scripts/coverage-fix.mjs +0 -119
- package/scripts/docs/coverage-fix-extract.md +0 -36
- package/scripts/docs/coverage-fix.md +0 -181
- package/skills/coverage-fix/SKILL.md +0 -131
- package/skills/coverage-fix/main.json +0 -1
- package/skills/doc-aggregate/js/docgen-scan.mjs +0 -195
- package/skills/doc-aggregate/js/docs/docgen-scan.md +0 -76
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
---
|
|
2
|
+
type: Directory Index
|
|
3
|
+
title: npm/rules/js/policy/vscode_extensions
|
|
4
|
+
resource: npm/rules/js/policy/vscode_extensions/
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
# npm/rules/js/policy/vscode_extensions
|
|
8
|
+
|
|
9
|
+
| Файл | Тип |
|
|
10
|
+
| ----------------------------------------------------- | --------- |
|
|
11
|
+
| [fix-vscode_extensions.mjs](fix-vscode_extensions.md) | JS Module |
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export { patterns } from '../../../../scripts/lib/fix/vscode-ext-add.mjs'
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
---
|
|
2
|
+
type: JS Module
|
|
3
|
+
title: fix-runtime.mjs
|
|
4
|
+
resource: npm/rules/js-run/js/fix-runtime.mjs
|
|
5
|
+
docgen:
|
|
6
|
+
crc: d3b1824f
|
|
7
|
+
model: omlx/gemma-4-e4b-it-OptiQ-4bit
|
|
8
|
+
score: 100
|
|
9
|
+
---
|
|
10
|
+
|
|
11
|
+
## Огляд
|
|
12
|
+
|
|
13
|
+
Детерміновано створює канонічний `jsconfig.json` у каталогах `src/` бекенд-пакетів, якщо він відсутній. Конфігурація береться з `jsconfig.json.snippet.json` (єдине джерело істини) і застосовується через публічні функції `patterns`.
|
|
14
|
+
|
|
15
|
+
## Поведінка
|
|
16
|
+
|
|
17
|
+
1. `patterns` надає набір правил для автоматичного виправлення.
|
|
18
|
+
2. Кожне правило перевіряє, чи відсутній `jsconfig.json` у каталогах `src/` бекенд-пакетів, якщо вони існують.
|
|
19
|
+
3. Якщо правило спрацьовує, воно зчитує канонічне вміст `jsconfig.json` з `policy/jsconfig/template/jsconfig.json.snippet.json`.
|
|
20
|
+
4. Для кожного знайденого каталогу `src/`, якщо `jsconfig.json` відсутній, він створюється з канонічним вмістом.
|
|
21
|
+
5. `patterns` повертає результат, що вказує на успішне створення файлів або на відсутність необхідних змін.
|
|
22
|
+
|
|
23
|
+
## Гарантії поведінки
|
|
24
|
+
|
|
25
|
+
- (специфічних машинно-виведених гарантій немає)
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* T0-autofix для `js-run/js/runtime.mjs` — детерміноване створення канонічного
|
|
3
|
+
* `jsconfig.json` у backend-пакетах із `src/` де він відсутній. Канон читається
|
|
4
|
+
* з `policy/jsconfig/template/jsconfig.json.snippet.json` (єдине джерело істини).
|
|
5
|
+
*/
|
|
6
|
+
import { existsSync, readFileSync, writeFileSync } from 'node:fs'
|
|
7
|
+
import { join } from 'node:path'
|
|
8
|
+
import { fileURLToPath } from 'node:url'
|
|
9
|
+
|
|
10
|
+
const JSCONFIG_MISSING_RE = /є каталог src\/, але немає jsconfig\.json/
|
|
11
|
+
const JSCONFIG_MISSING_MATCH_ALL_RE = /\[([^\]]+)\] є каталог src\/, але немає jsconfig\.json/gu
|
|
12
|
+
|
|
13
|
+
const JSCONFIG_CONTENT =
|
|
14
|
+
readFileSync(
|
|
15
|
+
fileURLToPath(new URL('../policy/jsconfig/template/jsconfig.json.snippet.json', import.meta.url)),
|
|
16
|
+
'utf8'
|
|
17
|
+
).trimEnd() + '\n'
|
|
18
|
+
|
|
19
|
+
/** @type {import('../../../scripts/lib/fix/discover-t0-patterns.mjs').T0Pattern[]} */
|
|
20
|
+
export const patterns = [
|
|
21
|
+
{
|
|
22
|
+
id: 'js-run-jsconfig-create',
|
|
23
|
+
test: out => JSCONFIG_MISSING_RE.test(out),
|
|
24
|
+
apply: (out, cwd) => {
|
|
25
|
+
const matches = [...out.matchAll(JSCONFIG_MISSING_MATCH_ALL_RE)]
|
|
26
|
+
if (matches.length === 0) return { ok: false, action: 'no match' }
|
|
27
|
+
|
|
28
|
+
const created = []
|
|
29
|
+
for (const m of matches) {
|
|
30
|
+
const ws = m[1]
|
|
31
|
+
const target = join(cwd, ws, 'jsconfig.json')
|
|
32
|
+
if (!existsSync(target)) {
|
|
33
|
+
writeFileSync(target, JSCONFIG_CONTENT, 'utf8')
|
|
34
|
+
created.push(ws)
|
|
35
|
+
}
|
|
36
|
+
}
|
|
37
|
+
if (created.length === 0) return { ok: false, action: 'jsconfig.json вже існує в усіх воркспейсах' }
|
|
38
|
+
return { ok: true, action: `створено jsconfig.json: ${created.join(', ')}` }
|
|
39
|
+
}
|
|
40
|
+
}
|
|
41
|
+
]
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
---
|
|
2
|
+
type: JS Module
|
|
3
|
+
title: fix-vscode_extensions.mjs
|
|
4
|
+
resource: npm/rules/nginx-default-tpl/policy/vscode_extensions/fix-vscode_extensions.mjs
|
|
5
|
+
docgen:
|
|
6
|
+
crc: 319883fc
|
|
7
|
+
model: omlx/gemma-4-e4b-it-OptiQ-4bit
|
|
8
|
+
score: 100
|
|
9
|
+
---
|
|
10
|
+
|
|
11
|
+
## Огляд
|
|
12
|
+
|
|
13
|
+
Цей файл імпортує шаблони, необхідні для функціонування розширення VS Code.
|
|
14
|
+
|
|
15
|
+
## Поведінка
|
|
16
|
+
|
|
17
|
+
1. Імпортує шаблони для виправлення розширень VS Code з іншого скрипта.
|
|
18
|
+
|
|
19
|
+
## Гарантії поведінки
|
|
20
|
+
|
|
21
|
+
- Read-only: не виконує операцій запису (ФС/БД).
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
---
|
|
2
|
+
type: Directory Index
|
|
3
|
+
title: npm/rules/nginx-default-tpl/policy/vscode_extensions
|
|
4
|
+
resource: npm/rules/nginx-default-tpl/policy/vscode_extensions/
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
# npm/rules/nginx-default-tpl/policy/vscode_extensions
|
|
8
|
+
|
|
9
|
+
| Файл | Тип |
|
|
10
|
+
| ----------------------------------------------------- | --------- |
|
|
11
|
+
| [fix-vscode_extensions.mjs](fix-vscode_extensions.md) | JS Module |
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export { patterns } from '../../../../scripts/lib/fix/vscode-ext-add.mjs'
|
|
@@ -3,26 +3,28 @@ type: JS Module
|
|
|
3
3
|
title: main.mjs
|
|
4
4
|
resource: npm/rules/python/main.mjs
|
|
5
5
|
docgen:
|
|
6
|
-
crc:
|
|
6
|
+
crc: 7021a379
|
|
7
7
|
model: omlx/gemma-4-e4b-it-OptiQ-4bit
|
|
8
8
|
score: 90
|
|
9
9
|
---
|
|
10
10
|
|
|
11
|
-
|
|
11
|
+
## Огляд
|
|
12
|
+
|
|
13
|
+
Запускає `lint-python` за правилом `python.mdc` на базі [uv](https://docs.astral.sh/uv/). Якщо `pyproject.toml` відсутній у корені, вихід дорівнює 0 без запуску інструментів. Якщо `pyproject.toml` присутній, але `uv` не знайдено в PATH, це помилка (використовується лише `uv`, без Poetry). Обов'язково виконує `uv lock --check` для перевірки актуальності lock-файлу та `uv sync --frozen` для збірки середовища. Опціональні лінтери (`ruff`, `mypy`) запускаються лише якщо доступні через `uv run`. `ruff` виконується в режимі автоматичного виправлення (`ruff check --fix .`, `ruff format .`) та перевірки коду (`mypy .`). Це відповідає канону патерну `lint-*` (серіалізація через `runStandardLint`, без прямого `withLock`).
|
|
12
14
|
|
|
13
15
|
## Поведінка
|
|
14
16
|
|
|
15
|
-
run виконує стандартну перевірку для
|
|
16
|
-
runLintPythonSteps виконує послідовність кроків лінтування Python,
|
|
17
|
-
runLintPython запускає послідовність кроків лінтування Python,
|
|
18
|
-
lint
|
|
17
|
+
run виконує стандартну перевірку для правила.
|
|
18
|
+
runLintPythonSteps виконує послідовність кроків лінтування Python, включаючи перевірку `pyproject.toml`, виконання `uv lock --check` та `uv sync --frozen`, а також запуск опціональних лінтерів (`ruff`, `mypy`, `liccheck`) через `uv run` за умови їх доступності.
|
|
19
|
+
runLintPython запускає послідовність кроків лінтування Python, використовуючи механізм стандартного лінтування.
|
|
20
|
+
lint оркеструє запуск `runLintPython` для виконання лінтування Python.
|
|
19
21
|
|
|
20
22
|
## Публічний API
|
|
21
23
|
|
|
22
|
-
run — Основна точка входу для виконання правил, яка перевіряє
|
|
23
|
-
runLintPythonSteps — Виконує внутрішні етапи
|
|
24
|
-
runLintPython — Публічний інтерфейс для запуску
|
|
25
|
-
lint —
|
|
24
|
+
run — Основна точка входу для виконання правил, яка перевіряє аспекти застосування (JS-занепокложення $\rightarrow$ політика $\rightarrow$ mdc-посилання) та виконує лінтинг.
|
|
25
|
+
runLintPythonSteps — Виконує внутрішні етапи лінтингу Python без збереження логів.
|
|
26
|
+
runLintPython — Публічний інтерфейс командного рядка для запуску лінтингу Python, який синхронізується з станом Git-дерева.
|
|
27
|
+
lint — Координатор, що викликає публічний інтерфейс для лінтингу Python.
|
|
26
28
|
|
|
27
29
|
## Гарантії поведінки
|
|
28
30
|
|
package/rules/python/main.mjs
CHANGED
|
@@ -118,6 +118,7 @@ export function runLintPythonSteps(cwd = process.cwd(), opts = {}) {
|
|
|
118
118
|
if (!runOptionalUvTool('ruff', readOnly ? 'ruff format --check' : 'ruff format', ruffFormat))
|
|
119
119
|
return reporter.getExitCode()
|
|
120
120
|
if (!runOptionalUvTool('mypy', 'mypy', ['.'])) return reporter.getExitCode()
|
|
121
|
+
if (!runOptionalUvTool('liccheck', 'liccheck', [])) return reporter.getExitCode()
|
|
121
122
|
|
|
122
123
|
return reporter.getExitCode()
|
|
123
124
|
}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
---
|
|
2
|
+
type: JS Module
|
|
3
|
+
title: fix-vscode_extensions.mjs
|
|
4
|
+
resource: npm/rules/rego/policy/vscode_extensions/fix-vscode_extensions.mjs
|
|
5
|
+
docgen:
|
|
6
|
+
crc: 319883fc
|
|
7
|
+
model: omlx/gemma-4-e4b-it-OptiQ-4bit
|
|
8
|
+
score: 100
|
|
9
|
+
---
|
|
10
|
+
|
|
11
|
+
## Огляд
|
|
12
|
+
|
|
13
|
+
Цей файл імпортує визначення шаблонів з іншого модуля. Це забезпечує доступ до необхідних шаблонів для роботи системних компонентів.
|
|
14
|
+
|
|
15
|
+
## Поведінка
|
|
16
|
+
|
|
17
|
+
1. Імпортує визначення шаблонів з іншого модуля.
|
|
18
|
+
2. Надає доступ до цих шаблонів для використання в системі.
|
|
19
|
+
|
|
20
|
+
## Гарантії поведінки
|
|
21
|
+
|
|
22
|
+
- Read-only: не виконує операцій запису (ФС/БД).
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
---
|
|
2
|
+
type: Directory Index
|
|
3
|
+
title: npm/rules/rego/policy/vscode_extensions
|
|
4
|
+
resource: npm/rules/rego/policy/vscode_extensions/
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
# npm/rules/rego/policy/vscode_extensions
|
|
8
|
+
|
|
9
|
+
| Файл | Тип |
|
|
10
|
+
| ----------------------------------------------------- | --------- |
|
|
11
|
+
| [fix-vscode_extensions.mjs](fix-vscode_extensions.md) | JS Module |
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export { patterns } from '../../../../scripts/lib/fix/vscode-ext-add.mjs'
|
package/rules/rust/docs/index.md
CHANGED
package/rules/rust/docs/main.md
CHANGED
|
@@ -3,22 +3,24 @@ type: JS Module
|
|
|
3
3
|
title: main.mjs
|
|
4
4
|
resource: npm/rules/rust/main.mjs
|
|
5
5
|
docgen:
|
|
6
|
-
crc:
|
|
6
|
+
crc: cbe9e650
|
|
7
7
|
model: omlx/gemma-4-e4b-it-OptiQ-4bit
|
|
8
8
|
score: 100
|
|
9
9
|
---
|
|
10
10
|
|
|
11
|
-
|
|
11
|
+
## Огляд
|
|
12
|
+
|
|
13
|
+
Модуль забезпечує виконання перевірки коду Rust на відповідність встановленим правилам. Він також надає функціонал для запуску повного процесу лінтингу, що включає форматування та аналіз коду.
|
|
12
14
|
|
|
13
15
|
## Поведінка
|
|
14
16
|
|
|
15
|
-
run виконує перевірку коду Rust
|
|
16
|
-
lint запускає
|
|
17
|
+
run виконує перевірку коду Rust, застосовуючи політику, визначену в документації.
|
|
18
|
+
lint запускає повний процес лінтингу Rust, включаючи форматування та аналіз, і повертає код виходу.
|
|
17
19
|
|
|
18
20
|
## Публічний API
|
|
19
21
|
|
|
20
|
-
run —
|
|
21
|
-
lint —
|
|
22
|
+
run — точка входу для виконання правила, що перевіряє логіку, пов'язану з JS-зацікавленостями, політикою та посиланнями MDC.
|
|
23
|
+
lint — точка входу для запуску лінтера Rust-коду.
|
|
22
24
|
|
|
23
25
|
## Гарантії поведінки
|
|
24
26
|
|
package/rules/rust/main.mjs
CHANGED
|
@@ -82,6 +82,17 @@ function runRustLint(cwd = process.cwd(), opts = {}) {
|
|
|
82
82
|
pass,
|
|
83
83
|
fail
|
|
84
84
|
)
|
|
85
|
+
|
|
86
|
+
// cargo deny check licenses (opt-in): потрібен deny.toml + cargo-deny у PATH
|
|
87
|
+
if (existsSync(join(cwd, 'deny.toml'))) {
|
|
88
|
+
const hasDeny = spawnSync(cargo, ['deny', '--version'], { stdio: 'ignore', shell: false }).status === 0
|
|
89
|
+
if (hasDeny) {
|
|
90
|
+
runCargo('cargo deny check licenses', cargo, ['deny', 'check', 'licenses'], pass, fail)
|
|
91
|
+
} else {
|
|
92
|
+
pass('lint-rust: cargo deny — не встановлений (cargo install cargo-deny), перевірку ліцензій пропущено')
|
|
93
|
+
}
|
|
94
|
+
}
|
|
95
|
+
|
|
85
96
|
return reporter.getExitCode()
|
|
86
97
|
}
|
|
87
98
|
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
---
|
|
2
|
+
type: JS Module
|
|
3
|
+
title: fix-vscode_extensions.mjs
|
|
4
|
+
resource: npm/rules/rust/policy/vscode_extensions/fix-vscode_extensions.mjs
|
|
5
|
+
docgen:
|
|
6
|
+
crc: 319883fc
|
|
7
|
+
model: omlx/gemma-4-e4b-it-OptiQ-4bit
|
|
8
|
+
score: 100
|
|
9
|
+
---
|
|
10
|
+
|
|
11
|
+
## Огляд
|
|
12
|
+
|
|
13
|
+
Цей файл імпортує визначені шаблони з іншого скрипта та надає їх для використання в інших компонентах системи.
|
|
14
|
+
|
|
15
|
+
## Поведінка
|
|
16
|
+
|
|
17
|
+
1. Імпортує шаблони з іншого скрипта.
|
|
18
|
+
2. Експортує ці шаблони.
|
|
19
|
+
|
|
20
|
+
## Гарантії поведінки
|
|
21
|
+
|
|
22
|
+
- Read-only: не виконує операцій запису (ФС/БД).
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
---
|
|
2
|
+
type: Directory Index
|
|
3
|
+
title: npm/rules/rust/policy/vscode_extensions
|
|
4
|
+
resource: npm/rules/rust/policy/vscode_extensions/
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
# npm/rules/rust/policy/vscode_extensions
|
|
8
|
+
|
|
9
|
+
| Файл | Тип |
|
|
10
|
+
| ----------------------------------------------------- | --------- |
|
|
11
|
+
| [fix-vscode_extensions.mjs](fix-vscode_extensions.md) | JS Module |
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export { patterns } from '../../../../scripts/lib/fix/vscode-ext-add.mjs'
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
---
|
|
2
|
+
type: JS Module
|
|
3
|
+
title: fix-tooling.mjs
|
|
4
|
+
resource: npm/rules/style/js/fix-tooling.mjs
|
|
5
|
+
docgen:
|
|
6
|
+
crc: d9c7a757
|
|
7
|
+
model: omlx/gemma-4-e4b-it-OptiQ-4bit
|
|
8
|
+
score: 100
|
|
9
|
+
---
|
|
10
|
+
|
|
11
|
+
## Огляд
|
|
12
|
+
|
|
13
|
+
Модуль T0-autofix впроваджує детерміновані виправлення файлової системи для `style/js/tooling.mjs`. Він створює або доповнює `.stylelintignore` для ігнорування директорії `dist/` та додає `stylelint` до `package.json`, спираючись на `package.json`.
|
|
14
|
+
|
|
15
|
+
## Поведінка
|
|
16
|
+
|
|
17
|
+
Поведінка
|
|
18
|
+
|
|
19
|
+
1. `patterns` виконує детерміновані виправлення файлової системи для конфігурації стилізації.
|
|
20
|
+
2. Перший елемент у `patterns` створює файл `.stylelintignore` у корені робочого каталогу, якщо він не існує. Це робиться для ігнорування директорії `dist/` у процесі стилізації.
|
|
21
|
+
3. Другий елемент у `patterns` додає рядок `dist/` до файлу `.stylelintignore`, якщо він вже існує, але не містить цього шляху. Це забезпечує ігнорування директорії `dist/`.
|
|
22
|
+
4. Третій елемент у `patterns` перевіряє, чи містить конфігурація `package.json` запис про `stylelint`.
|
|
23
|
+
5. Якщо `package.json` не знайдено або є невалідним JSON, виправлення не виконується.
|
|
24
|
+
6. Якщо `stylelint` вже присутній у `package.json`, виправлення не виконується.
|
|
25
|
+
7. Якщо `stylelint` відсутній, він додається до `package.json` із конфігурацією, що посилається на `@nitra/stylelint-config`.
|
|
26
|
+
|
|
27
|
+
## Гарантії поведінки
|
|
28
|
+
|
|
29
|
+
- Перехоплює помилки і не пропускає винятків назовні (fail-safe).
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* T0-autofix паттерни для `style/js/tooling.mjs` — детерміновані FS-виправлення:
|
|
3
|
+
* створення або доповнення `.stylelintignore` та додавання `stylelint` до `package.json`.
|
|
4
|
+
*/
|
|
5
|
+
import { appendFileSync, existsSync, readFileSync, writeFileSync } from 'node:fs'
|
|
6
|
+
import { join } from 'node:path'
|
|
7
|
+
|
|
8
|
+
/** @type {import('../../../scripts/lib/fix/discover-t0-patterns.mjs').T0Pattern[]} */
|
|
9
|
+
export const patterns = [
|
|
10
|
+
{
|
|
11
|
+
id: 'style-stylelintignore-create',
|
|
12
|
+
test: out => /\.stylelintignore не існує/.test(out),
|
|
13
|
+
apply: (_out, cwd) => {
|
|
14
|
+
writeFileSync(join(cwd, '.stylelintignore'), 'dist/\n', 'utf8')
|
|
15
|
+
return { ok: true, action: 'створено .stylelintignore' }
|
|
16
|
+
}
|
|
17
|
+
},
|
|
18
|
+
|
|
19
|
+
{
|
|
20
|
+
id: 'style-stylelintignore-dist-add',
|
|
21
|
+
test: out => /\.stylelintignore не містить рядка dist\//.test(out),
|
|
22
|
+
apply: (_out, cwd) => {
|
|
23
|
+
appendFileSync(join(cwd, '.stylelintignore'), '\ndist/\n', 'utf8')
|
|
24
|
+
return { ok: true, action: 'додано dist/ до .stylelintignore' }
|
|
25
|
+
}
|
|
26
|
+
},
|
|
27
|
+
|
|
28
|
+
{
|
|
29
|
+
id: 'style-pkg-stylelint-add',
|
|
30
|
+
test: out => /Немає конфігу stylelint/.test(out),
|
|
31
|
+
apply: (_out, cwd) => {
|
|
32
|
+
const pkgPath = join(cwd, 'package.json')
|
|
33
|
+
if (!existsSync(pkgPath)) return { ok: false, action: 'package.json не знайдено' }
|
|
34
|
+
let pkg
|
|
35
|
+
try {
|
|
36
|
+
pkg = JSON.parse(readFileSync(pkgPath, 'utf8'))
|
|
37
|
+
} catch {
|
|
38
|
+
return { ok: false, action: 'package.json: невалідний JSON' }
|
|
39
|
+
}
|
|
40
|
+
if (pkg.stylelint) return { ok: false, action: 'stylelint вже є в package.json' }
|
|
41
|
+
pkg.stylelint = { extends: '@nitra/stylelint-config' }
|
|
42
|
+
writeFileSync(pkgPath, JSON.stringify(pkg, null, 2) + '\n', 'utf8')
|
|
43
|
+
return { ok: true, action: 'додано stylelint до package.json' }
|
|
44
|
+
}
|
|
45
|
+
}
|
|
46
|
+
]
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
---
|
|
2
|
+
type: JS Module
|
|
3
|
+
title: fix-vscode_extensions.mjs
|
|
4
|
+
resource: npm/rules/style/policy/vscode_extensions/fix-vscode_extensions.mjs
|
|
5
|
+
docgen:
|
|
6
|
+
crc: 319883fc
|
|
7
|
+
model: omlx/gemma-4-e4b-it-OptiQ-4bit
|
|
8
|
+
score: 100
|
|
9
|
+
---
|
|
10
|
+
|
|
11
|
+
## Огляд
|
|
12
|
+
|
|
13
|
+
Завантажує шаблони для виправлення розширень VS Code.
|
|
14
|
+
|
|
15
|
+
## Поведінка
|
|
16
|
+
|
|
17
|
+
1. Імпортує шаблони для виправлення розширень VS Code з файлу `../../../../scripts/lib/fix/vscode-ext-add.mjs`.
|
|
18
|
+
|
|
19
|
+
## Гарантії поведінки
|
|
20
|
+
|
|
21
|
+
- Read-only: не виконує операцій запису (ФС/БД).
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
---
|
|
2
|
+
type: Directory Index
|
|
3
|
+
title: npm/rules/style/policy/vscode_extensions
|
|
4
|
+
resource: npm/rules/style/policy/vscode_extensions/
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
# npm/rules/style/policy/vscode_extensions
|
|
8
|
+
|
|
9
|
+
| Файл | Тип |
|
|
10
|
+
| ----------------------------------------------------- | --------- |
|
|
11
|
+
| [fix-vscode_extensions.mjs](fix-vscode_extensions.md) | JS Module |
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export { patterns } from '../../../../scripts/lib/fix/vscode-ext-add.mjs'
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
---
|
|
2
|
+
type: JS Module
|
|
3
|
+
title: fix-vscode_extensions.mjs
|
|
4
|
+
resource: npm/rules/tauri/policy/vscode_extensions/fix-vscode_extensions.mjs
|
|
5
|
+
docgen:
|
|
6
|
+
crc: 319883fc
|
|
7
|
+
model: omlx/gemma-4-e4b-it-OptiQ-4bit
|
|
8
|
+
score: 100
|
|
9
|
+
---
|
|
10
|
+
|
|
11
|
+
## Огляд
|
|
12
|
+
|
|
13
|
+
Цей файл імпортує шаблони, необхідні для модифікації розширень VS Code. Він надає механізм для застосування визначених змін до розширень VS Code.
|
|
14
|
+
|
|
15
|
+
## Поведінка
|
|
16
|
+
|
|
17
|
+
1. Імпортує шаблони для виправлення розширень VS Code з файлу `../../../../scripts/lib/fix/vscode-ext-add.mjs`.
|
|
18
|
+
|
|
19
|
+
## Гарантії поведінки
|
|
20
|
+
|
|
21
|
+
- Read-only: не виконує операцій запису (ФС/БД).
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
---
|
|
2
|
+
type: Directory Index
|
|
3
|
+
title: npm/rules/tauri/policy/vscode_extensions
|
|
4
|
+
resource: npm/rules/tauri/policy/vscode_extensions/
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
# npm/rules/tauri/policy/vscode_extensions
|
|
8
|
+
|
|
9
|
+
| Файл | Тип |
|
|
10
|
+
| ----------------------------------------------------- | --------- |
|
|
11
|
+
| [fix-vscode_extensions.mjs](fix-vscode_extensions.md) | JS Module |
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export { patterns } from '../../../../scripts/lib/fix/vscode-ext-add.mjs'
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
---
|
|
2
|
+
type: JS Module
|
|
3
|
+
title: fix-vscode_extensions.mjs
|
|
4
|
+
resource: npm/rules/text/policy/vscode_extensions/fix-vscode_extensions.mjs
|
|
5
|
+
docgen:
|
|
6
|
+
crc: 319883fc
|
|
7
|
+
model: omlx/gemma-4-e4b-it-OptiQ-4bit
|
|
8
|
+
score: 100
|
|
9
|
+
---
|
|
10
|
+
|
|
11
|
+
## Огляд
|
|
12
|
+
|
|
13
|
+
Файл імпортує шаблони для виправлення розширень VS Code. Ці шаблони використовуються для корекції розширень.
|
|
14
|
+
|
|
15
|
+
## Поведінка
|
|
16
|
+
|
|
17
|
+
1. Імпортує шаблони для виправлення розширень VS Code з файлу `../../../../scripts/lib/fix/vscode-ext-add.mjs`.
|
|
18
|
+
|
|
19
|
+
## Гарантії поведінки
|
|
20
|
+
|
|
21
|
+
- Read-only: не виконує операцій запису (ФС/БД).
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
---
|
|
2
|
+
type: Directory Index
|
|
3
|
+
title: npm/rules/text/policy/vscode_extensions
|
|
4
|
+
resource: npm/rules/text/policy/vscode_extensions/
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
# npm/rules/text/policy/vscode_extensions
|
|
8
|
+
|
|
9
|
+
| Файл | Тип |
|
|
10
|
+
| ----------------------------------------------------- | --------- |
|
|
11
|
+
| [fix-vscode_extensions.mjs](fix-vscode_extensions.md) | JS Module |
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export { patterns } from '../../../../scripts/lib/fix/vscode-ext-add.mjs'
|
|
@@ -8,8 +8,6 @@ docgen:
|
|
|
8
8
|
score: 100
|
|
9
9
|
---
|
|
10
10
|
|
|
11
|
-
## Огляд
|
|
12
|
-
|
|
13
11
|
Модуль визначає, чи є пакет бібліотекою компонентів Vue, виходячи з даних у `package.json`, `jsconfig.json`, `package-lock.json`, `extensions.json`. Він також перевіряє відповідність усіх пакетів, що залежать від `vue`, критеріям, описаним у `vue.mdc`, і повертає код виходу.
|
|
14
12
|
|
|
15
13
|
## Поведінка
|
package/scripts/docs/index.md
CHANGED
|
@@ -12,8 +12,6 @@ resource: npm/scripts/
|
|
|
12
12
|
| [auto-skills.mjs](auto-skills.md) | JS Module |
|
|
13
13
|
| [build-agents-commands.mjs](build-agents-commands.md) | JS Module |
|
|
14
14
|
| [cli-entry.mjs](cli-entry.md) | JS Module |
|
|
15
|
-
| [coverage-fix-extract.mjs](coverage-fix-extract.md) | JS Module |
|
|
16
|
-
| [coverage-fix.mjs](coverage-fix.md) | JS Module |
|
|
17
15
|
| [ensure-nitra-cursor-dev-dependencies.mjs](ensure-nitra-cursor-dev-dependencies.md) | JS Module |
|
|
18
16
|
| [hook.mjs](hook.md) | JS Module |
|
|
19
17
|
| [post-tool-use-check.mjs](post-tool-use-check.md) | JS Module |
|
|
@@ -51,6 +51,7 @@ async function listJsConcerns(jsDir) {
|
|
|
51
51
|
if (!entry.isFile()) continue
|
|
52
52
|
if (!entry.name.endsWith('.mjs')) continue
|
|
53
53
|
if (entry.name.endsWith('.test.mjs')) continue
|
|
54
|
+
if (entry.name.startsWith('fix-')) continue
|
|
54
55
|
if (entry.name.startsWith('_')) continue
|
|
55
56
|
if (entry.name.startsWith('.')) continue
|
|
56
57
|
const name = entry.name.slice(0, -'.mjs'.length)
|