本文へ移動
cccskills
無料GitHub で公開

specialist-test-healer

Classifies one failing E2E test from its artifacts, applies at most one allowed repair from the test-healing catalog, proves it with three sequential reruns and an unchanged assertion set, and returns a verdict with a route. Use per failure inside test-loop; never for production code changes.

インストール方法を見る

含まれるファイル(2)

  • SKILL.md3.7 KB
  • evals/evals.json3.5 KB

SKILL.md(原文)

インストールする前に、エージェントに与えられる指示の中身を確認できます。

Specialist: Test Healer

Priority: P0 (CRITICAL)

Role

For one failing test, decide SELECTOR_DRIFT | TIMING_SYNC | DATA_ENV | INFRA | REAL_REGRESSION from evidence, apply one repair the catalog allows, and prove it, per quality-engineering-test-healing.

Budget

  • One failing test per invocation; at most 15 tool calls.
  • Read: the failing run's trace, screenshot, DOM or hierarchy dump, console or device log, the test file, and the diff of the product since the last green run.
  • Write: only the test file, its page object, or its fixture; one repair per invocation.
  • Rerun: the single test, sequentially, in the foreground, 3 consecutive times after the repair; HEALED requires 3/3 green.
  • Retry without a change only for INFRA, once.
  • Never touch production code, weaken an assertion, widen a matcher, inflate a timeout past 2x, add test.skip/fixme, or run --update-snapshots.
  • No Git, no sub-agents.
  • Return BLOCKED (no evidence artifact) when no trace, screenshot, or log exists to classify from, or BLOCKED (no stable locator target) with ROUTE: testid-inserter.

Steps

  1. Load the failure artifact and the product diff since the last green; refuse to classify from the error message alone.
  2. Classify using the signal table in quality-engineering-test-healing failure taxonomy; a screenshot assertion failure is VISUAL_DIFF and is judged by quality-engineering-visual-baseline before it can be anything but REAL_REGRESSION.
  3. REAL_REGRESSION: stop, no repair; verdict REAL_BUG_DO_NOT_HEAL, route dev-fix, attach the evidence.
  4. Otherwise apply exactly one repair from the repair catalog: move the locator up the ladder, replace a sleep with a state wait, fix the seed or fixture; a missing stable id is VERDICT: BLOCKED with ROUTE: testid-inserter, never a CSS fallback.
  5. Rerun 3 consecutive sequential foreground runs; compute ASSERTION_DELTA by comparing assertion count and matcher strength before and after; anything but none is not a heal. Fewer than 3/3: revert the repair; 1-2/3 green is QUARANTINE_CANDIDATE; 0/3 reclassifies once from the post-repair artifact.
  6. Intermittent across the reruns with no code change: verdict QUARANTINE_CANDIDATE, route flaky-triage with the rerun tally.

Output

TEST: [id or title]
CLASS: SELECTOR_DRIFT | TIMING_SYNC | DATA_ENV | INFRA | REAL_REGRESSION
REPAIR: [one line, or none]
RERUNS: [n]/3 green
ASSERTION_DELTA: none | [what changed]
VERDICT: HEALED | REAL_BUG_DO_NOT_HEAL | QUARANTINE_CANDIDATE | BLOCKED
ROUTE: dev-fix | flaky-triage | testid-inserter | none
EVIDENCE: [artifact paths]
BLOCKED: [reason, if any]

Red Flags

"the assertion was too strict anyway" · "product changed, update the expected value" · "just add retries" · "bump the timeout to 60s" — each is REAL_BUG_DO_NOT_HEAL or QUARANTINE_CANDIDATE wearing a repair. Stop and reclassify from the artifact.

Anti-Patterns

  • Classifying from the error string without opening the artifact.
  • Two repairs in one invocation: the second hides which one worked.
  • Calling one green rerun HEALED: three consecutive, or it is not healed.
  • Editing the product to make the test pass: that is dev-fix's job and a REAL_REGRESSION signal.

レビュー

まだレビューはありません。使ってみた感想をお寄せください。

同じリポジトリのスキル

概要と使いどころ

Upgrade an Android project to Android Gradle Plugin (AGP) 9. Use when migrating to AGP 9, updating Gradle build files, migrating to built-in Kotlin, or adopting the new AGP DSL.

日本語の概要は準備中です。原文の説明を表示しています。

HoangNguyen0403/agent-skills-standard5732026年10月12日 更新

Apply Clean Architecture layering, modularization, and Unidirectional Data Flow in Android projects. Use when setting up project structure, placing code in layers, configuring feature/core modules, or implementing UDF patterns; defer Compose state and ViewModel/StateFlow implementation to their specific skills.

日本語の概要は準備中です。原文の説明を表示しています。

HoangNguyen0403/agent-skills-standard5732026年10月12日 更新

Implement WorkManager and background processing correctly on Android. Use when creating Worker classes, scheduling tasks, choosing between WorkManager and Foreground Services, or setting up Hilt in workers; defer FCM and notification delivery to android-notifications.

日本語の概要は準備中です。原文の説明を表示しています。

HoangNguyen0403/agent-skills-standard5732026年10月12日 更新

Build high-performance declarative UI with Jetpack Compose. Use when writing Composable functions, optimizing recomposition, hoisting state, or working with LazyColumn and side effects; defer deep-link and navigation routing to android-navigation.

日本語の概要は準備中です。原文の説明を表示しています。

HoangNguyen0403/agent-skills-standard5732026年10月12日 更新

Migrate an Android XML View to Jetpack Compose following a structured 10-step workflow. Use when converting XML layouts to Compose, setting up Compose in an existing View-based project, or incrementally adopting Compose.

日本語の概要は準備中です。原文の説明を表示しています。

HoangNguyen0403/agent-skills-standard5732026年10月12日 更新

Write correct coroutine scopes, lifecycle collection, and dispatcher injection in Android production code. Use for suspend functions, coroutine scopes, and dispatcher mechanics; defer ViewModel StateFlow/LiveData architecture, Fragment lifecycle recipes, persistence/notifications, and unit-test recipes to their specific skills.

日本語の概要は準備中です。原文の説明を表示しています。

HoangNguyen0403/agent-skills-standard5732026年10月12日 更新

HoangNguyen0403 のスキルをすべて見る

このスキルの問題を報告する