framework/skills/tool-usage/vanessa/vanessa-diagnostics/SKILL.md
MUST use WHEN feature-сценарий не прошёл, артефакты не создались или нужно классифицировать сбой после запуска. Provides алгоритм разбора артефактов прогона и классификации типа ошибки.
npx skillsauth add steelmorgan/1c-agent-based-dev-framework vanessa-diagnosticsInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
Запуск Vanessa делается через v8-runner test va (см. навык v8-runner → references/testing.md). Этот навык — про то, как разобрать упавший прогон.
Слоя два — не путать:
| Слой | Что пишет | Где лежит |
|------|-----------|-----------|
| Артефакты Vanessa | сам VA-плеер (va-status.json, vanessa-execution.log, отчёты junit/junit.xml, cucumber/CucumberJson.json) | по путям из активного профиля tests.va / va-params, обычно project-local (<project_root>/vanessa-tests/reports/…, .../logs/…) |
| Run-артефакты v8-runner | сам v8-runner (внутренние логи запуска, stdout/stderr 1cv8c, метаданные run-id) | workPath/temp/<runner-id>/runs/<run-id>/ (workPath берётся из v8project.yaml) |
При падении прогона не очищать обе локации до завершения диагностики. Точные пути Vanessa-отчётов читать из активного профиля.
Для длительных операций v8-runner test va (обычно несколько минут) используй инструмент Monitor вместо слепого опроса файлов:
Bash run_in_background: true, перенаправь stdout в файл лога (например v8-runner test va 2>&1 | tee /tmp/va-stdout.log).ERROR:|\\[artifact\\]|passed|Failed: — каждая совпавшая строка придёт как уведомление.va-status.log появился в каталоге прогона (создаётся при успехе И при ошибке — в отличие от va-status.json);1cv8c.*vanessa-automation завершился;ERROR: (например ERROR: runtime error: test run reported failures).va-status.json как единственное условие выхода. Он создаётся только при штатном завершении сценария; при раннем падении (ошибка шага, краш клиента) файл отсутствует и ожидание по его наличию зависнет навечно.После завершения прогона переходи к порядку диагностики ниже.
| Триггер | Действие |
|---------|----------|
| va-status.json не создан | Считать запуск аварийным, идти в диагностику |
| va-status.json != 0 | Читать артефакты и классифицировать падение |
| vanessa-execution.log содержит ошибку | Определить класс ошибки |
| Подозрение на блокировку GUI | Визуальная диагностика |
| Прогон «зелёный», но 0 шагов выполнено / шаги undefined/skipped | Ложный успех — классифицировать как step_resolution_error/scenario_error |
va-status.json.vanessa-execution.log.event-log: сначала последние Error; если пусто — без фильтра уровня.gui-control / screenshot.tech-log-analysis.Предупреждение безопасностиЕсли в event-log запись о Предупреждение безопасности для bddRunner.epf или плагинов:
| Класс | Когда ставить |
|-------|---------------|
| scenario_error | Сценарий неверно сформулирован или использует неподходящий поток |
| step_resolution_error | Нужный шаг не найден или не резолвится |
| assertion_error | Шаги выполнились, проверка результата не совпала |
| test_data_error | Зависит от отсутствующих/неподходящих данных |
| environment_error | Проблема в X11, окружении, runner, запуске клиента |
| product_ui_error | Ошибка видимого поведения формы или UI-потока |
| product_logic_error | Бизнес-логика даёт неверный результат при корректном сценарии |
| Сигнал | Класс |
|--------|-------|
| Нет va-status.json, GTK/X11 error | environment_error |
| Не найден шаг | step_resolution_error |
| Форма открылась, ожидание не совпало | assertion_error / product_ui_error |
| Ошибка из бизнес-модуля в ЖР | product_logic_error |
| Документ/объект не найден | test_data_error |
Агент должен сообщить: класс ошибки, главный источник сигнала, следующий контур действий.
failure_type = test_data_error
main_signal = document not found in event log / form flow
next_action = choose another fixture or prepare stable test data
depends_on:
testing
MUST use BEFORE making a judgment about the cause of a conflict, a test failure, or an artifact dispute. Defines the end-to-end verification method L1→L6 and the classification of the first broken link.
development
MUST use AFTER a work cycle with ≥2 iterations (wrote → error → fixed → success). Provides the retrospective procedure and the format for recording practice/anti-patterns in references/learned-patterns.md or {project}/.context/learned-patterns.md.
tools
MUST use WHEN you are writing reusable knowledge into RLM (pattern / architectural decision / stable domain fact) OR reading it before a non-trivial task/solution in the domain. Provides the breakdown of native-push vs RLM-pull, tools for writing and reading RLM, H-MEM levels, and hygiene.
testing
MUST use WHEN the task is classified as simple (< 20 lines, 1 file, no new metadata objects, no architectural decisions). Provides a short cycle of 3 steps with a guard on the self path and mandatory verify.