Skip to main content

qa

QA-верификация задачи против ТЗ/тикета — сверяет каждое требование с реальностью (SSR HTML через view-source, HTTP-коды, sitemap/robots, реальный браузер через Playwright, computed-styles diff с эталоном), выносит вердикт по пунктам (PASS/FAIL/QUESTION), на каждый подтверждённый баг пишет регресс-тест (TDD: сначала красный), и не объявляет «готово» без полного гейта + браузерной проверки. Умеет и проверять чужой QA-отчёт на «бред/не бред». Use when user says "проверь по ТЗ", "приёмка задачи", "проверь QA-отчёт", "верифицируй таску", "qa задачи", "бред или не бред", or types /qa.

インストールへ移動

ソース情報

リポジトリ
1t1sCooL/claude-skills
ソースの最終更新活動
2026年7月30日 11:17
検出された SKILL.md の言語
ロシア語
スター
16
フォーク
0

インストール方法

デフォルトでは、最初にソースを確認する Prompt が選択されています。直接コマンドに切り替えるか、ローカルコピーをダウンロードすることもできます。

ソースファイルを確認

インストールを決める前に、SKILL.md と SkillsMP に表示されている付属ファイルをお読みください。

SKILL.md を表示中

SKILL.md
ソースの指示 · 読み取り専用プレビュー
name
qa
description
QA-верификация задачи против ТЗ/тикета — сверяет каждое требование с реальностью (SSR HTML через view-source, HTTP-коды, sitemap/robots, реальный браузер через Playwright, computed-styles diff с эталоном), выносит вердикт по пунктам (PASS/FAIL/QUESTION), на каждый подтверждённый баг пишет регресс-тест (TDD: сначала красный), и не объявляет «готово» без полного гейта + браузерной проверки. Умеет и проверять чужой QA-отчёт на «бред/не бред». Use when user says "проверь по ТЗ", "приёмка задачи", "проверь QA-отчёт", "верифицируй таску", "qa задачи", "бред или не бред", or types /qa.
# QA-верификация задачи Единый QA-цикл: **требования → факты → вердикт → регресс-тесты → гейт**. Собран из лучших практик skill-каталогов (superpowers/TDD, verification-before-completion, webapp-testing, playwright-pro, vitest-unit-testing) + проектные засады из боевых сессий. Два режима — определяются входом: - **Приёмка задачи**: вход — ТЗ/тикет (+ ветка/стенд) → отчёт-вердикт по пунктам. - **Аудит чужого QA-отчёта** («бред или не бред»): вход — отчёт → перепроверка каждого факта по коду и живому окружению; отчёт судить только по фактам, не по тону. ## Что на входе (`$ARGUMENTS`) - ТЗ: `.docx` (конвертировать: `textutil -convert txt -output <scratchpad>/tz.txt "<file>"`), `.md`, текст тикета или путь к QA-отчёту (`.html` — читать как есть). - Ветка/коммит/MR задачи (по умолчанию — текущая ветка, `git log` по номеру таски). - URL стенда (если есть) — иначе локальный рендер. ## Шаги ### 1. Требования → чек-лист Пронумеровать каждое требование ТЗ (п.1, п.2, …). Из ТЗ вытащить **проверяемые факты**: точные URL, тексты, количества (посчитать самому: страны/ссылки/пункты), placement («перед блоком X»), коды редиректов. Сверить с планом (`.ai-factory/PLAN.md`) и коммитами ветки (`git show --stat`), чтобы знать, что заявлено сделанным. ### 2. Статическая сверка (код — источник правды) - Данные/константы: посчитать реальные количества скриптом (python/grep -c), не на глаз. - Дифф с эталоном: если ТЗ ссылается на образец («как на /euro-cards/») — вычислить точную разницу множеств (что добавлено/потеряно), а не «похоже». - Всё, чего нет в ТЗ, но есть в реализации (и наоборот) — в отдельный список вопросов. ### 3. SSR / HTTP (краулер не кликает и не ждёт JS) **Правило: для SEO-требований проверять серверный HTML (`curl`), НЕ DOM после гидрации.** ```bash curl -s <url> -o page.html grep -c 'href="/target/"' page.html # ссылка есть как <a href> в разметке? curl -sI -o /dev/null -w '%{http_code} %{redirect_url}\n' <url> # именно 301, не 302/307/308 ``` Чек-лист: целевые ссылки в SSR HTML; статусы и коды редиректов; `robots` meta + `X-Robots-Tag` + `robots.txt`; sitemap (URL добавлены/удалены); canonical; заголовки h1-h3 там, где ТЗ их требует. Скрытый контент (`hidden`, CSS) в HTML — ОК для краулера; контент только в JSON-пейлоаде/после клика — НЕ ОК. ### 4. Живой рендер (гейт не ловит всё — например, отсутствие "use client") Поднять свой сервер на **отдельном порту** (`:3000` занят пользователем — не убивать!): ```bash NEXT_DIST_DIR=.next-qa nohup pnpm exec next dev -p 3199 > <scratchpad>/dev.log 2>&1 & # НЕ `pnpm run dev -- -p 3199` — «--» уходит аргументом next и ломает запуск ``` Через Playwright MCP: пройти интерактив из ТЗ (клики/табы/раскрытия), проверить что видима ровно одна панель/состояние, скриншоты блоков. **Замер после клика — отдельным evaluate-вызовом** (React обновляется асинхронно, «после» в том же evaluate = «до»). Визуальная целостность: не полагаться на скриншоты со скроллом (sticky-хедер даёт артефакты) — числовой дифф `getComputedStyle` (font-size/weight/family/margins/цвет) нового кода против эталона (стенд со старым кодом / reference :4444 — там фейковый шрифт, сравнивать layout, не размеры текста). **Уборка после**: `kill <PID>`; `NEXT_DIST_DIR` пачкает репо — `git checkout -- next-env.d.ts tsconfig.json`; удалить `.next-qa`, скриншоты из корня. ### 5. Регресс-тесты на каждый подтверждённый баг На каждый FAIL — тест, который **падает до фикса и зеленеет после** (TDD-петля). Паттерны: Vitest + RTL, селектить по testid/ролям/семантике (css:false — module-классы в тест-DOM исчезают); для SSR-требований — тест на присутствие ссылок в разметке (`container.querySelectorAll('a[href^=…]')`), для скрытости — `closest("[hidden]")`. Именовать тесты по номеру бага/пункта ТЗ, чтобы отчёт ссылался на них. ### 6. Гейт и честный вердикт (verification-before-completion) `pnpm run check` (или гейт проекта) целиком; при чужом WIP в дереве — коммитить точечным `git add` своих файлов, чужое не стейджить. Не писать «готово», пока: гейт зелёный И SSR-проверки пройдены И живой рендер проверен. Если что-то не прогнано — так и написать в отчёте («не проверено: …, нужно …»). ## Выход Markdown-отчёт (в чат; по запросу — файл/HTML): 1. **Вердикт-таблица по пунктам ТЗ**: п.N → PASS / PASS с замечанием / FAIL / QUESTION. 2. **Дефекты** `BUG-NN` с severity (major/minor/low), «Где / Суть / Почему важно / Шаги / Ожидаемо»; честно помечать «не регресс этой задачи», если баг старый. 3. **Вопросы** `UNC-NN` — расхождения ТЗ↔реализация, которые решает автор ТЗ/SEO, а не код. Не чинить их молча. 4. **Не проверено** — что и почему, с командой для ручной проверки. 5. Если чинили: список фиксов + регресс-тестов, результат гейта, что осталось. ## Анти-паттерны - Проверять SEO-требования по DOM после гидрации вместо `curl` серверного HTML. - Верить «редирект работает» без кода ответа (301 ≠ 302/307/308). - Считать количества «на глаз» вместо скрипта. - Скриншот-диффы элементов со sticky-контентом вместо числового computed-styles диффа. - Убивать чужой dev на `:3000`; оставлять `.next-qa`/tsconfig-мусор после себя. - Объявлять «готово» с непрогнанным гейтом или непроверенным живым рендером. - Чинить UNC-вопросы (расхождения с ТЗ) кодом без решения автора ТЗ.
GitHubで見る