Skip to content

fix(ci): зелені StyleLint і rust/check у Lint repo-wide - #31

Merged
vitaliytv merged 2 commits into
mainfrom
fix/ci-lint-style-repo-wide
Aug 14, 2026
Merged

fix(ci): зелені StyleLint і rust/check у Lint repo-wide#31
vitaliytv merged 2 commits into
mainfrom
fix/ci-lint-style-repo-wide

Conversation

@vitaliytv

Copy link
Copy Markdown
Member

Два давно червоні воркфлоу на main (пре-екзистуючі, не привʼязані до жодного окремого коміту).

StyleLint — «could not determine executable to run for package n-rules»

Коміт 3ed8366 додав канонічний крок bunx n-rules lint style --no-fix після старих кроків замість заміни. Другий actions/checkout@v6 виконував git clean робочого дерева і зносив node_modules, встановлені setup-bun-deps, тож bunx не бачив локальний бін n-rules (ставиться з @7n/rules) і намагався тягнути неіснуючий npm-пакет n-rules. Файл приведено до канон-шаблону lint_style_yml: один checkout (SHA-пін збережено) → setup-bun-deps → лінт. Крок npx stylelint --fix у read-only CI прибрано разом із дублем checkout.

Локально: bunx n-rules lint style --no-fix → exit 0.

Lint repo-wide — rust/check (cargo-clippy-violation, код 101)

Це не розбіжність семантики repo-wide vs per-crate, а різниця середовищ воркфлоу: rust/check запускає з кореня ту саму команду, що й зелений lint-rust.yml — cargo clippy --all-targets --all-features -- -D warnings — але lint-repo.yml не ставив ні Rust toolchain, ні системні залежності Tauri (glib/gtk/webkit), без яких clippy не збирає src-tauri (у lint-rust.yml про це прямий коментар). Обрив виводу порушення на 2000 символах ховав реальну помилку збірки — у лозі видно лише початок (cargo fetch). Додано дзеркальні до lint-rust.yml кроки: dtolnay/rust-toolchain@stable (rustfmt, clippy) + Swatinem/rust-cache@v2 + apt-залежності Tauri. Канон lint_repo_yml — deep-subset («Додаткові кроки/поля дозволені»), тож канон не порушено. Назви apt-пакетів додано в словник .cspell.json.

Поза скоупом (лишаються червоними у Lint repo-wide)

  • k8s/manifests (kubescape) — потребує security-рев'ю (docs/open-questions.md), маніфести не чіпав.
  • bun/licensee (licensee-tool-error) — тул-фейл (@npmcli/arborist vs bun-дерево), warning, політичне рішення.

Дельта-лінт по змінених файлах: exit 0.

🤖 Generated with Claude Code

vitaliytv and others added 2 commits August 13, 2026 13:41
Коміт 3ed8366 додав канонічний крок `bunx n-rules lint style --no-fix`
після наявних кроків замість їх заміни: другий actions/checkout@v6
чистив робоче дерево (git clean прибирав node_modules після
setup-bun-deps), тож bunx не знаходив локальний бін n-rules
(@7n/rules) і падав з «could not determine executable to run for
package n-rules». Воркфлоу приведено до канон-шаблону lint_style_yml:
один checkout (SHA-пін збережено) → setup-bun-deps → лінт; крок
`npx stylelint --fix` у read-only CI прибрано.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
…ust/check

`bunx n-rules lint --repo-wide` запускає rust/check (bare
`cargo clippy --all-targets --all-features -- -D warnings` з кореня),
але воркфлоу не ставив ні toolchain, ні glib/gtk/webkit — clippy падав
на збірці src-tauri з кодом 101 (cargo-clippy-violation), тоді як
ідентична команда в lint-rust.yml зелена саме завдяки цим крокам.
Додано dtolnay/rust-toolchain + Swatinem/rust-cache + apt-залежності
Tauri (дзеркально до lint-rust.yml; канон lint_repo_yml — deep-subset,
додаткові кроки дозволені). Назви apt-пакетів — у словник .cspell.json.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
@vitaliytv
vitaliytv merged commit c2698c1 into main Aug 14, 2026
3 of 5 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant