Перейти до вмісту

Огляд Quality Hub

Quality Hub — найпотужніша частина SnakeFlow: понад 85 перевірок паралельно, результати з’являються в сайдбарі після завершення кожної перевірки.

Застарілий послідовний build pipeline (devManager.pipeline.*) прибрано — для lint / typecheck / test / build додайте кастомні перевірки в Quality Hub або використовуйте вбудовані та CLI-провайдери. Ctrl+Alt+F запускає всі увімкнені перевірки Quality Hub.

Профіль та налаштування якості

ПараметрТипЗа замовчуваннямОпис
devManager.quality.profileselectstrictАктивний профіль якості (strict / balanced / vibe): типове увімкнення та суворість перевірок.
devManager.quality.warnAsFailbooleanfalseЧи попередження вважаються невдачами (profile / true / false).
devManager.quality.strictModebooleanfalseДодаткові суворі перевірки, які за замовчуванням вимкнені в кожному профілі.
devManager.quality.autoGateDuplicates.enabledbooleantrueАвтоматично вимикати вбудовану перевірку, якщо виявлено кращий CLI-інструмент для тієї ж задачі (логіка _betterAlternative).
devManager.quality.degradedStrictbooleanfalseМ’якший strict mode: відсутні інструменти → warn замість fail.

Warn as fail

devManager.quality.warnAsFail — чи попередження вважаються невдачами: успадкувати від профілю (profile), завжди (true) або ніколи (false).

Strict mode

devManager.quality.strictMode — додаткові суворі перевірки, які за замовчуванням вимкнені в кожному профілі.

Auto-gate duplicates

devManager.quality.autoGateDuplicates.enabled — автоматично вимикає вбудовану перевірку, якщо виявлено кращий CLI-інструмент для тієї ж задачі (наприклад Gitleaks замість regex secret scanning).

Degraded strict

devManager.quality.degradedStrict — м’якший strict mode: відсутні інструменти → warn замість fail.

Профілі: strict — максимум, warning = fail; balanced — той самий набір, warning лишається warning; vibe — за замовч. лише сильні CLI-інструменти. Секрети: Gitleaks auto-gate Secret Leaks. SnakeFlow: Quality Hub Doctor — які CLI відсутні.

Категорії перевірок

Вбудовані (70+)

Переважно чистий Node.js; частина викликає npx або локальні CLI (tsc, ESLint, Biome, YAMLlint, Spectral…) і дає skip, якщо їх немає. Здоров’я проєкту, розмір коду, безпека, архітектура, TypeScript/React/Next.js, схема ORM і гігієна міграцій (No Manual Migrations, Migrations CI Gate, додаткові правила Squawk) тощо.

CLI (20+)

Зовнішні інструменти (Semgrep, Trivy, Checkov, hadolint…). Якщо бінарника немає — статус skip, не помилка.

Кастомні перевірки

Скрипти проєкту або довільні shell-команди в одній панелі Quality Hub.

Як користуватися

  1. Run (відтворення) у заголовку панелі Quality Hub або Ctrl+Alt+F, або команда палітри SnakeFlow: Run Quality Checks. Для великого репозиторію швидше буває SnakeFlow: Run Quality Checks (changed files only) або Run Changed Files Only на одній перевірці / категорії — провайдери обмежують роботу файлами з git-змін там, де це підтримується.
  2. Під час прогону з’являється Stop — скасувати повний запуск.
  3. Перевірки йдуть паралельно; результати з’являються після готовності кожної.
  4. Сортування: failwarnerrorpassskip.
  5. Розгорніть рядок — деталі та шляхи до файлів.
  6. На рядку результату: Run This Check (перезапустити одну перевірку), Copy Result, Stop This Check (поки виконується).
  7. На заголовку категорії (Built-in, CLI, Custom): Run Category Checks / Stop Category Checks.
  8. Send to Chat — зведений звіт у чат AI редактора (див. Звіт у чат).
  9. Save — зберегти той самий звіт як Markdown у папці .snakeflow/ у корені проєкту (з міткою часу в імені файлу).
  10. У палітрі команд: Refresh Quality Results (оновити дерево) або Clear Quality Results (очистити панель).

У заголовку панелі (коли не йде прогон): Run → Send to Chat → збереження звіту → Configure (відкриває Settings з фільтром devManager.quality) → додати кастомну перевірку → прибрати кастомну.

Виключення директорій

У розширенні понад 70 стандартних виключень: node_modules, dist, build, __pycache__, target, vendor, .venv, .next, .nuxt, .svelte-kit, coverage тощо.

Додайте свої каталоги (лише назви папок, не glob):

"devManager.quality.skipDirs": [
"generated",
"proto-gen",
"legacy",
".output",
"storybook-static"
]

Виключення файлів

devManager.quality.skipFiles — відносні шляхи (слеші /) від кореня проєкту або шаблони: точний файл, *.vsix, **/імʼя.ts тощо. Застосовується до перевірок, що обходять вихідний код, і до агрегації результатів Semgrep.

"devManager.quality.skipFiles": [
"docs/generated/api.md",
"*.vsix",
"**/generated-types.ts"
]

Продуктивність

"devManager.quality.timeout": 30,
"devManager.quality.maxBuffer": 50
ПараметрЗа замовчуваннямОпис
timeout30Максимум хвилин на одну перевірку
maxBuffer50Максимум stdout у МБ

Max buffer

devManager.quality.maxBuffer — максимум stdout на одну перевірку у МБ (за замовчуванням 50).

Звіт у чат

"devManager.quality.chatReport": "onFail",
"devManager.quality.chatPrompt": "Проаналізуй результати та виділи 3 найважливіші проблеми."
Значення chatReportПоведінка
autoПісля кожного прогону відкривати чат зі звітом
onFail (за замовчуванням)Лише якщо є невдачі
manualТільки вручну через Send to Chat
neverНе відправляти в чат

Chat prompt

devManager.quality.chatPrompt — необов’язковий текст на початку звіту.

Посилання